/*
Theme Name: Kadence Child
Template: kadence
Author: Darija Center
Purpose: Clean, responsive layout + typography (optimized for LCP stability)
*/

/* =========================================================
   GOOGLE FONTS (KEEP SIMPLE - NO IMPORT FOR PERFORMANCE)
========================================================= */
/* ⚠️ Removed @import for performance (was blocking render) */


/* =========================================================
   GLOBAL VARIABLES
========================================================= */
:root {
  --green: #3b7551;
  --text-dark: #1f2a23;
  --radius-btn: 8px;
  --radius-card: 20px;
}

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

body {
  margin: 0;
  font-family: 'Poppins', sans-serif;
  color: var(--text-dark);
  line-height: 1.55;

  /* small performance improvement */
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeSpeed;
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}


/* =========================================================
   KADENCE ADVANCED HEADINGS (STABILIZED FOR LCP)
========================================================= */
/* ⚠️ removed contain/layout hacks that hurt render timing */

.wp-block-kadence-advancedheading {
  will-change: auto;
}


/* =========================================================
   PREVENT WORDPRESS / KADENCE CONSTRAINED SNAP
========================================================= */
.wp-site-blocks > * { max-width: 100%; }

.alignfull .is-layout-constrained,
.alignfull.wp-block-group.is-layout-constrained {
  max-width: 100% !important;
}

.is-layout-constrained > * {
  margin-left: unset;
  margin-right: unset;
}


/* =========================================================
   FONT UTILITIES
========================================================= */
.font-poppins, .font-poppins * { font-family: 'Poppins', sans-serif !important; }
.font-cinzel, .font-cinzel * { font-family: 'Cinzel', serif !important; }
.font-kaushan, .font-kaushan * {
  font-family: 'Kaushan Script', cursive !important;
  letter-spacing: 0.03em;
}


/* =========================================================
   HEADING WRAP PROTECTION
========================================================= */
h1, h2, h3, h4, h5 {
  word-break: keep-all;
  overflow-wrap: normal;
  white-space: normal;
  hyphens: none;
  max-width: 100%;
}


/* =========================================================
   HEADER / LOGO
========================================================= */
.site-header img.custom-logo {
  width: 70px;
  height: auto;
  max-width: none;
}


/* =========================
   BUTTON SYSTEM
========================= */
.wp-block-buttons {
  margin-top: 2rem;
}

.wp-block-button__link {
  display: inline-block;
  width: auto;
  font-family: 'Kaushan Script', cursive;
  background-color: var(--green) !important;
  color: #fff !important;
  border-radius: var(--radius-btn);
  padding: 0.75em 1.75em;
  font-size: 1rem;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
}


/* =========================================================
   COVER BLOCK
========================================================= */
.wp-block-cover__inner-container {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  text-align: center;
}

.wp-block-cover__inner-container h3 {
  margin: 0;
}

.wp-block-cover__inner-container .wp-block-kadence-advancedbtn {
  margin-top: auto;
  margin-bottom: auto;
}


/* =========================================================
   COLUMNS
========================================================= */
.wp-block-column {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start;
  width: 100%;
}


/* =========================================================
   INFO BOXES
========================================================= */
.info-box {
  display: flex;
  flex-direction: column;
  max-width: 400px;
  margin: 1rem auto;
  border: 2px solid var(--green);
  border-top-left-radius: var(--radius-card);
  border-bottom-right-radius: var(--radius-card);
  overflow: hidden;
}

.info-box .left-side,
.info-box .right-side {
  display: flex;
  justify-content: center;
  align-items: center;
  flex: 1 1 50%;
  padding: 0.25rem;
  text-align: center;
}

.info-box .left-side {
  background-color: var(--green);
  color: #fff;
}

.info-box .right-side {
  background-color: #fff;
  color: var(--green);
}


/* =========================================================
   RESPONSIVE TYPOGRAPHY
========================================================= */
@media (max-width: 767px) {
  h1 { font-size: clamp(2rem, 6vw, 2.7rem); }
  h2 { font-size: 2.2rem; }
  h3 { font-size: 1.8rem; }
}

@media (max-width: 360px) {
  h1 {
    font-size: clamp(1.3rem, 6.2vw, 2.3rem);
    line-height: 1.12;
  }
}


/* =========================================================
   VERTICAL RHYTHM
========================================================= */
section,
.wp-block-group,
.wp-block-rowlayout {
  margin-bottom: 4rem;
}


/* =========================================================
   UTILITY
========================================================= */
.text-center {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}


/* =========================================================
   FOOTER LANGUAGE PICKER
========================================================= */
.footer-widget4 .footer-widget-area-inner {
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
}

.footer-widget4 .menu-language-picker-container ul.menu {
  display: flex;
  gap: 0.5rem;
  padding: 0;
  margin: 0;
  list-style: none;
}

.footer-widget4 .menu-language-picker-container img {
  width: 16px;
  height: 11px;
}


/* =========================================================
   COOKIE BANNER
========================================================= */
#cookie-banner {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background: rgba(59, 117, 81, 0.7);
  color: #fff;
  padding: 15px 20px;
  display: flex;
  justify-content: center;
  gap: 10px;
  z-index: 9999;
}

#cookie-banner #accept-cookies {
  background: #fff;
  color: var(--green);
  border-radius: 5px;
  padding: 8px 16px;
  font-family: 'Kaushan Script', cursive;
  font-size: 1.1rem;
  cursor: pointer;
}
#cookie-banner a {
    color: #fff;
    text-decoration: underline;
}