/*
 Theme Name:   Woodmart Child
 Description:  Woodmart Child Theme
 Author:       XTemos
 Author URI:   http://xtemos.com
 Template:     woodmart
 Version:      1.0.0
 Text Domain:  woodmart
*/

/* Main Event visual polish - 2026-09 */
:root {
  --me-site-width: 1250px;
  --me-ink: #2b140f;
  --me-muted: #79685f;
  --me-line: #e7ddd6;
  --me-accent: #823126;
}

body { color: var(--me-ink); }
body .main-page-wrapper,
body .website-wrapper { background: #fff; }

.whb-main-header .wd-nav > li > a,
.whb-header .wd-nav > li > a,
.whb-header .wd-tools-element > a {
  letter-spacing: .08em;
  text-transform: uppercase;
  font-weight: 600;
}

.me-home-services,
.me-home-info,
.me-home-events,
.me-home-contact {
  width: min(var(--me-site-width), calc(100% - 48px));
  margin-left: auto !important;
  margin-right: auto !important;
  color: var(--me-ink);
}

.me-home-services { padding: 0 !important; overflow: hidden; }
.me-home-services-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0 !important;
  min-height: clamp(430px, 46vw, 590px);
}
.me-home-service-card {
  position: relative;
  display: flex !important;
  align-items: flex-end !important;
  min-height: clamp(430px, 46vw, 590px);
  padding: clamp(22px, 3vw, 34px) !important;
  overflow: hidden;
  background-size: cover !important;
  background-position: center center !important;
}
.me-home-service-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,0) 32%, rgba(0,0,0,.66) 100%);
  transition: background .25s ease;
}
.me-home-service-card:hover::after {
  background: linear-gradient(180deg, rgba(0,0,0,.08) 18%, rgba(0,0,0,.74) 100%);
}
.me-home-service-overlay { display: none !important; }
.me-home-service-title {
  position: relative;
  z-index: 2;
  width: auto !important;
  max-width: 92%;
  color: #fff !important;
  font-size: clamp(22px, 2.2vw, 34px) !important;
  line-height: 1.08 !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  text-shadow: 0 2px 18px rgba(0,0,0,.35);
}

.me-home-info,
.me-home-events,
.me-home-contact {
  padding-top: clamp(54px, 6vw, 78px) !important;
  padding-bottom: clamp(54px, 6vw, 78px) !important;
  border-top: 1px solid var(--me-line);
  background: #fff !important;
}
.me-home-info-inner,
.me-home-events-head {
  display: grid !important;
  grid-template-columns: minmax(270px, .42fr) minmax(0, .58fr);
  gap: clamp(28px, 5vw, 64px);
  align-items: start;
  width: 100%;
}
.me-home-kicker,
.me-home-info .me-home-kicker,
.me-home-events .me-home-kicker {
  color: var(--me-muted) !important;
  font-size: 13px !important;
  line-height: 1.3 !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
  font-weight: 700 !important;
  margin-bottom: 18px !important;
}
.me-home-info h2,
.me-home-events h2,
.me-home-contact h2,
.me-about-page h1,
.me-about-page h2,
.me-light-page h1,
.me-light-page h2,
.me-sound-page h1,
.me-sound-page h2 {
  color: var(--me-ink) !important;
  font-family: var(--wd-title-font, Arial, sans-serif) !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.04 !important;
}
.me-home-info h2,
.me-home-events h2,
.me-home-contact h2 {
  font-size: clamp(38px, 5vw, 68px) !important;
  margin-bottom: 0 !important;
}
.me-home-lead,
.me-home-info p,
.me-home-events p,
.me-home-contact p,
.me-about-page p,
.me-light-page p,
.me-sound-page p {
  color: var(--me-muted) !important;
  font-size: clamp(17px, 1.45vw, 21px) !important;
  line-height: 1.72 !important;
}

.me-home-why-list,
.me-home-event-list {
  list-style: none !important;
  padding-left: 0 !important;
  margin-left: 0 !important;
}
.me-home-why-list {
  counter-reset: meWhy;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
  border-top: 1px solid var(--me-line);
  border-left: 1px solid var(--me-line);
}
.me-home-why-list li {
  counter-increment: meWhy;
  position: relative;
  min-height: 112px;
  padding: 26px 26px 24px 72px !important;
  border-right: 1px solid var(--me-line);
  border-bottom: 1px solid var(--me-line);
  color: var(--me-ink) !important;
  font-size: clamp(17px, 1.35vw, 20px) !important;
  line-height: 1.45 !important;
  font-weight: 600 !important;
  background: #fff;
}
.me-home-why-list li::before {
  content: counter(meWhy);
  position: absolute;
  top: 24px;
  left: 24px;
  width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--me-ink);
  color: #fff;
  font-size: 13px;
  font-weight: 700;
}

.me-home-event-list {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0 !important;
  margin-top: 34px !important;
  border-top: 1px solid var(--me-line);
  border-left: 1px solid var(--me-line);
}
.me-home-event-list li {
  min-height: 96px;
  display: flex;
  align-items: center;
  padding: 22px 26px !important;
  border-right: 1px solid var(--me-line);
  border-bottom: 1px solid var(--me-line);
  font-size: clamp(18px, 1.6vw, 24px) !important;
  line-height: 1.18 !important;
  font-weight: 500 !important;
  color: var(--me-ink) !important;
}

.me-home-contact-wrap {
  display: grid !important;
  grid-template-columns: minmax(310px, .42fr) minmax(0, .58fr);
  gap: clamp(34px, 5vw, 58px);
  align-items: stretch;
  width: 100%;
}
.me-home-contact-panel,
.me-home-form-box {
  width: 100% !important;
  background: #fff !important;
}
.me-home-contact-panel { padding: clamp(8px, 1.5vw, 18px) 0 !important; }
.me-home-contact-logo {
  width: min(250px, 72%) !important;
  height: auto !important;
  margin-bottom: 30px !important;
}
.me-home-contact-links {
  display: grid !important;
  gap: 14px !important;
  margin-top: 30px !important;
}
.me-home-contact-links a,
.me-home-contact-links span:not(.me-home-contact-icon) {
  color: var(--me-ink) !important;
  font-size: clamp(17px, 1.4vw, 20px) !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}
.me-home-contact-icon {
  width: 40px !important;
  height: 40px !important;
  min-width: 40px !important;
  border-radius: 50% !important;
  background: var(--me-ink) !important;
  color: #fff !important;
  font-size: 12px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-right: 12px !important;
}
.me-home-form-box {
  border: 1px solid var(--me-line) !important;
  padding: clamp(26px, 4vw, 44px) !important;
  box-shadow: 0 18px 48px rgba(43,20,15,.05);
}
.me-home-form-box h3,
.me-home-form-box h2 {
  color: var(--me-ink) !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
}
.me-home-form-box input,
.me-home-form-box textarea,
.me-home-form-box select,
.wpcf7 input,
.wpcf7 textarea,
.wpcf7 select {
  min-height: 52px !important;
  border: 1px solid #d8cdc5 !important;
  background: #fff !important;
  color: var(--me-ink) !important;
  font-size: 16px !important;
  box-shadow: none !important;
}
.me-home-form-box textarea,
.wpcf7 textarea { min-height: 120px !important; }
.me-home-form-box label,
.wpcf7 label {
  color: var(--me-ink) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}
.me-home-form-box .wpcf7-submit,
.wpcf7-submit,
.me-home-contact .btn,
.me-home-contact button,
.me-home-contact input[type="submit"] {
  min-height: 54px !important;
  background: var(--me-accent) !important;
  border-color: var(--me-accent) !important;
  color: #fff !important;
  font-weight: 600 !important;
  letter-spacing: .04em !important;
  text-transform: none !important;
}
.me-home-form-box .wpcf7-submit:hover,
.wpcf7-submit:hover {
  background: var(--me-ink) !important;
  border-color: var(--me-ink) !important;
}

.me-light-page .me-light-plan-grid,
.me-sound-page .me-sound-plan-grid,
.me-about-page .me-about-stats {
  gap: 24px !important;
}
.me-light-page [class*="card"],
.me-sound-page [class*="card"] {
  border-color: var(--me-line) !important;
}

.wd-footer,
.footer-container {
  background: #fff !important;
  border-top: 1px solid var(--me-line) !important;
}
.footer-container .container,
.wd-footer .container { max-width: var(--me-site-width) !important; }
.wd-footer p,
.wd-footer li,
.wd-footer a,
.footer-container p,
.footer-container li,
.footer-container a {
  font-size: 14px !important;
  line-height: 1.55 !important;
}
.wd-footer .widget,
.footer-container .widget { margin-bottom: 18px !important; }
.scrollToTop,
.wd-scroll {
  right: 22px !important;
  bottom: 22px !important;
}

@media (max-width: 1024px) {
  .me-home-info-inner,
  .me-home-events-head,
  .me-home-contact-wrap { grid-template-columns: 1fr; gap: 30px; }
  .me-home-services-grid { min-height: auto; }
  .me-home-service-card { min-height: 430px; }
}
@media (max-width: 768px) {
  .me-home-services,
  .me-home-info,
  .me-home-events,
  .me-home-contact { width: min(100% - 28px, var(--me-site-width)); }
  .me-home-services-grid,
  .me-home-why-list,
  .me-home-event-list { grid-template-columns: 1fr !important; }
  .me-home-service-card { min-height: 320px; }
  .me-home-info,
  .me-home-events,
  .me-home-contact { padding-top: 44px !important; padding-bottom: 44px !important; }
  .me-home-info h2,
  .me-home-events h2,
  .me-home-contact h2 { font-size: clamp(34px, 10vw, 46px) !important; }
  .me-home-form-box { padding: 24px !important; }
}
@media (max-width: 430px) {
  .me-home-service-title { font-size: 25px !important; }
  .me-home-why-list li { min-height: auto; padding: 22px 20px 22px 66px !important; }
  .me-home-event-list li { min-height: 74px; padding: 18px 20px !important; }
}


/* Main Event layout fine tuning */
.me-home-services {
  width: 100% !important;
  max-width: var(--me-site-width) !important;
  margin: 0 auto !important;
}
.me-home-services-grid { width: 100% !important; }
@media (max-width: 768px) {
  .me-home-services { width: 100% !important; }
}

/* Main Event anti-overlap typography tuning */
.me-home-info h2,
.me-home-events h2,
.me-home-contact h2,
.me-about-page h1,
.me-about-page h2,
.me-light-page h1,
.me-light-page h2,
.me-sound-page h1,
.me-sound-page h2,
.me-dj-page h1,
.me-dj-page h2 {
  line-height: 1.14 !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}
.me-about-page h1,
.me-light-page h1,
.me-sound-page h1,
.me-dj-page h1 {
  font-size: clamp(44px, 5.4vw, 72px) !important;
  max-width: 980px;
}
.me-about-page h2,
.me-light-page h2,
.me-sound-page h2,
.me-dj-page h2 {
  font-size: clamp(36px, 4vw, 54px) !important;
}
.me-home-info h2,
.me-home-events h2,
.me-home-contact h2 {
  font-size: clamp(36px, 4.4vw, 58px) !important;
}
.me-about-page p,
.me-light-page p,
.me-sound-page p,
.me-dj-page p {
  font-size: clamp(16px, 1.15vw, 18px) !important;
  line-height: 1.72 !important;
}
.me-light-page h3,
.me-sound-page h3,
.me-about-page h3,
.me-dj-page h3 {
  line-height: 1.22 !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}
.me-light-page [class*="card"],
.me-sound-page [class*="card"],
.me-about-page [class*="card"],
.me-dj-page [class*="card"] {
  overflow-wrap: normal !important;
  word-break: normal !important;
}
@media (max-width: 1024px) {
  .me-about-page h1,
  .me-light-page h1,
  .me-sound-page h1,
  .me-dj-page h1 { font-size: clamp(40px, 6.5vw, 58px) !important; }
  .me-about-page h2,
  .me-light-page h2,
  .me-sound-page h2,
  .me-dj-page h2 { font-size: clamp(32px, 5vw, 44px) !important; }
}
@media (max-width: 768px) {
  .me-home-info h2,
  .me-home-events h2,
  .me-home-contact h2,
  .me-about-page h1,
  .me-about-page h2,
  .me-light-page h1,
  .me-light-page h2,
  .me-sound-page h1,
  .me-sound-page h2,
  .me-dj-page h1,
  .me-dj-page h2 {
    line-height: 1.18 !important;
  }
  .me-about-page h1,
  .me-light-page h1,
  .me-sound-page h1,
  .me-dj-page h1 { font-size: clamp(34px, 9vw, 42px) !important; }
  .me-about-page h2,
  .me-light-page h2,
  .me-sound-page h2,
  .me-dj-page h2 { font-size: clamp(28px, 8vw, 34px) !important; }
  .me-home-info h2,
  .me-home-events h2,
  .me-home-contact h2 { font-size: clamp(30px, 8vw, 38px) !important; }
  .me-about-page p,
  .me-light-page p,
  .me-sound-page p,
  .me-dj-page p { font-size: 16px !important; line-height: 1.68 !important; }
}
@media (max-width: 430px) {
  .me-about-page h1,
  .me-light-page h1,
  .me-sound-page h1,
  .me-dj-page h1 { font-size: 34px !important; }
  .me-about-page h2,
  .me-light-page h2,
  .me-sound-page h2,
  .me-dj-page h2 { font-size: 29px !important; }
  .me-home-info h2,
  .me-home-events h2,
  .me-home-contact h2 { font-size: 30px !important; }
}


/* Main Event nested heading safety */
.me-home-contact-panel h1,
.me-home-contact-panel h2,
.me-home-contact-panel h3,
.me-home-form-box h1,
.me-home-form-box h2,
.me-home-form-box h3,
.me-home-info-inner h1,
.me-home-info-inner h2,
.me-home-info-inner h3,
.me-home-events-head h1,
.me-home-events-head h2,
.me-home-events-head h3 {
  line-height: 1.16 !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}
@media (max-width: 768px) {
  .me-home-contact-panel h1,
  .me-home-contact-panel h2,
  .me-home-contact-panel h3,
  .me-home-form-box h1,
  .me-home-form-box h2,
  .me-home-form-box h3,
  .me-home-info-inner h1,
  .me-home-info-inner h2,
  .me-home-info-inner h3,
  .me-home-events-head h1,
  .me-home-events-head h2,
  .me-home-events-head h3 {
    line-height: 1.2 !important;
  }
}


/* Main Event late inline CSS override */
body .main-page-wrapper .me-home-info h2,
body .main-page-wrapper .me-home-events h2,
body .main-page-wrapper .me-home-contact h2,
body .main-page-wrapper .me-home-contact-panel h2,
body .main-page-wrapper .me-home-form-box h2 {
  line-height: 1.16 !important;
}
@media (max-width: 768px) {
  body .main-page-wrapper .me-home-info h2,
  body .main-page-wrapper .me-home-events h2,
  body .main-page-wrapper .me-home-contact h2,
  body .main-page-wrapper .me-home-contact-panel h2,
  body .main-page-wrapper .me-home-form-box h2 {
    line-height: 1.2 !important;
  }
}


/* Main Event hero contrast restore - 2026-09 */
.me-about-page .me-about-hero,
.me-about-page .me-about-hero__content,
.me-light-page .me-light-hero,
.me-light-page .me-light-hero__content,
.me-sound-page .me-sound-hero,
.me-sound-page .me-sound-hero__content,
.me-dj-page .me-dj-hero,
.me-dj-page .me-dj-hero__content,
.me-service-page .me-service-hero,
.me-service-page .me-service-hero__content {
  color: #fff !important;
}

.me-about-page .me-about-hero h1,
.me-about-page .me-about-hero h2,
.me-about-page .me-about-hero h3,
.me-about-page .me-about-hero p,
.me-about-page .me-about-hero .me-about-kicker,
.me-light-page .me-light-hero h1,
.me-light-page .me-light-hero h2,
.me-light-page .me-light-hero h3,
.me-light-page .me-light-hero p,
.me-light-page .me-light-hero .me-light-kicker,
.me-sound-page .me-sound-hero h1,
.me-sound-page .me-sound-hero h2,
.me-sound-page .me-sound-hero h3,
.me-sound-page .me-sound-hero p,
.me-sound-page .me-sound-hero .me-sound-kicker,
.me-dj-page .me-dj-hero h1,
.me-dj-page .me-dj-hero h2,
.me-dj-page .me-dj-hero h3,
.me-dj-page .me-dj-hero p,
.me-service-page .me-service-hero h1,
.me-service-page .me-service-hero h2,
.me-service-page .me-service-hero h3,
.me-service-page .me-service-hero p {
  color: #fff !important;
  text-shadow: 0 2px 18px rgba(0, 0, 0, .56);
}

.me-about-page .me-about-hero [class*="kicker"],
.me-light-page .me-light-hero [class*="kicker"],
.me-sound-page .me-sound-hero [class*="kicker"],
.me-dj-page .me-dj-hero [class*="kicker"],
.me-service-page .me-service-hero [class*="kicker"] {
  color: rgba(255, 255, 255, .82) !important;
}

.me-about-page .me-about-hero .me-about-stats,
.me-about-page .me-about-hero .me-about-stats *,
.me-light-page .me-light-hero .me-light-stats,
.me-light-page .me-light-hero .me-light-stats *,
.me-sound-page .me-sound-hero .me-sound-stats,
.me-sound-page .me-sound-hero .me-sound-stats * {
  color: #fff !important;
}
/* End Main Event hero contrast restore - 2026-09 */

/* End Main Event visual polish - 2026-09 */



/* Main Event language footer and sound hero fixes */
html[lang="cs-CZ"] .me-footer-locale:not(.mef-cs),
html[lang="ru-RU"] .me-footer-locale:not(.mef-ru),
html[lang="uk"] .me-footer-locale:not(.mef-ua),
html[lang="en-GB"] .me-footer-locale:not(.mef-en) {
  display: none !important;
}
html[lang="cs-CZ"] .me-footer-locale.mef-cs,
html[lang="ru-RU"] .me-footer-locale.mef-ru,
html[lang="uk"] .me-footer-locale.mef-ua,
html[lang="en-GB"] .me-footer-locale.mef-en {
  display: block !important;
}

.me-sound-page .me-sound-hero,
.me-sound-page .me-sound-hero__content,
.me-sound-page .me-sound-hero h1,
.me-sound-page .me-sound-hero p,
.me-sound-page .me-sound-hero .me-sound-eyebrow,
.me-sound-page .me-sound-hero .me-sound-stat,
.me-sound-page .me-sound-hero .me-sound-stat * {
  color: #2d140f !important;
  text-shadow: none !important;
}
.me-sound-page .me-sound-hero .me-sound-eyebrow {
  color: #7f3025 !important;
}
