/*
Theme Name: گلخانه بهار
Author: Bahaar Greenhouse
Description: پوسته اختصاصی، فارسی و راست‌چین گلخانه بهار برای وب‌سایت محتوایی و آموزشی.
Version: 1.2.0
Requires at least: 6.6
Requires PHP: 8.1
Text Domain: bahaar
*/

@font-face {
  font-family: "IRANSans";
  src: url("assets/fonts/IRANSansWeb.woff2") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "IRANSans";
  src: url("assets/fonts/IRANSansWeb_Medium.woff2") format("woff2");
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}

@font-face {
  font-family: "IRANSans";
  src: url("assets/fonts/IRANSansWeb_Bold.woff2") format("woff2");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

:root {
  --bahaar-forest: #103c2c;
  --bahaar-leaf: #226a45;
  --bahaar-sprout: #75956b;
  --bahaar-mint: #e8f0e7;
  --bahaar-lime: #d5dc99;
  --bahaar-paper: #f7f6f0;
  --bahaar-earth: #a96f48;
  --bahaar-earth-soft: #efe4da;
  --bahaar-ink: #17231d;
  --bahaar-muted: #626e66;
  --bahaar-line: #d9dfd8;
  --bahaar-white: #ffffff;
  --bahaar-shadow: 0 18px 50px rgba(18, 61, 43, 0.1);
  --bahaar-shadow-soft: 0 10px 30px rgba(18, 61, 43, 0.08);
  --bahaar-radius-sm: 12px;
  --bahaar-radius-md: 18px;
  --bahaar-radius: 24px;
  --bahaar-radius-lg: 34px;
  --bahaar-container: 1180px;
  --bahaar-font: "IRANSans", Tahoma, Arial, sans-serif;
  --bahaar-type-xs: clamp(0.75rem, 0.73rem + 0.08vw, 0.8rem);
  --bahaar-type-sm: clamp(0.84rem, 0.81rem + 0.12vw, 0.91rem);
  --bahaar-type-base: clamp(0.96rem, 0.93rem + 0.14vw, 1.04rem);
  --bahaar-type-lg: clamp(1.06rem, 1rem + 0.22vw, 1.18rem);
  --bahaar-heading-sm: clamp(1.15rem, 1.06rem + 0.35vw, 1.34rem);
  --bahaar-heading-md: clamp(1.85rem, 1.42rem + 1.8vw, 3rem);
  --bahaar-heading-lg: clamp(2.45rem, 1.65rem + 3.4vw, 4.75rem);
  --bahaar-leading-body: 2;
  --bahaar-section-space: clamp(4.25rem, 3.2rem + 3.2vw, 6rem);
  --bahaar-section-space-tight: clamp(3.25rem, 2.6rem + 2vw, 4.5rem);
  --bahaar-z-bottom-nav: 900;
  --bahaar-z-floating: 920;
  --bahaar-z-header: 1000;
  --bahaar-z-overlay: 1200;
}

* { box-sizing: border-box; }

html {
  scroll-behavior: smooth;
  overflow-x: clip;
}

body {
  margin: 0;
  direction: rtl;
  background: var(--bahaar-paper);
  color: var(--bahaar-ink);
  font-family: var(--bahaar-font);
  font-size: var(--bahaar-type-base);
  line-height: var(--bahaar-leading-body);
  font-synthesis: none;
  overflow-x: clip;
  text-rendering: optimizeLegibility;
}

body.menu-open {
  width: 100%;
  position: fixed;
  overflow: hidden;
}

body.search-open { overflow: hidden; }

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

a {
  color: inherit;
  text-decoration: none;
}

button,
input,
textarea,
select {
  font: inherit;
  font-family: var(--bahaar-font);
}

button,
a { -webkit-tap-highlight-color: transparent; }

:focus-visible {
  outline: 3px solid var(--bahaar-lime);
  outline-offset: 3px;
}

::selection {
  color: var(--bahaar-white);
  background: var(--bahaar-leaf);
}

.container,
.bahaar-container {
  width: min(calc(100% - 40px), var(--bahaar-container));
  margin-inline: auto;
}

.screen-reader-text {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* Header */
.top-note {
  color: #dcebe0;
  background: var(--bahaar-forest);
  font-size: var(--bahaar-type-xs);
}

.top-note__inner {
  min-height: 38px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}

.top-note p { margin: 0; }
.top-note a { color: var(--bahaar-lime); }

.site-header {
  position: sticky;
  z-index: var(--bahaar-z-header);
  top: 0;
  border-bottom: 1px solid rgba(18, 61, 43, 0.08);
  background: rgba(247, 250, 246, 0.94);
  backdrop-filter: blur(18px);
}

.admin-bar .site-header { top: 32px; }

.site-header__inner {
  min-height: 86px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 36px;
}

.site-brand {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  flex-shrink: 0;
}

.site-brand__mark {
  width: 44px;
  height: 52px;
  display: grid;
  place-items: center;
  color: var(--bahaar-lime);
  border-radius: 22px 22px 10px 10px;
  background: var(--bahaar-forest);
}

.site-brand__mark svg { width: 25px; }

.site-brand__text strong {
  display: block;
  color: var(--bahaar-forest);
  font-size: var(--bahaar-heading-sm);
  line-height: 1.4;
}

.site-brand__text small {
  display: block;
  color: var(--bahaar-muted);
  font-size: 0.68rem;
  letter-spacing: 0.02em;
}

.desktop-nav ul,
.footer-menu,
.mobile-nav ul {
  padding: 0;
  margin: 0;
  list-style: none;
}

.desktop-nav > ul {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 3px;
}

.desktop-nav a {
  display: flex;
  align-items: center;
  position: relative;
  padding: 9px 12px;
  color: #34483b;
  border-radius: 10px;
  font-size: var(--bahaar-type-sm);
  font-weight: 500;
  transition: 180ms ease;
}

.desktop-nav a:hover {
  color: var(--bahaar-forest);
  background: var(--bahaar-mint);
}
.desktop-nav .current-menu-item > a,
.desktop-nav .current_page_item > a,
.desktop-nav .current-menu-ancestor > a,
.desktop-nav .current_page_ancestor > a {
  color: var(--bahaar-forest);
  background: transparent;
}

.desktop-nav .current-menu-item > a::after,
.desktop-nav .current_page_item > a::after,
.desktop-nav .current-menu-ancestor > a::after,
.desktop-nav .current_page_ancestor > a::after {
  width: 18px;
  height: 2px;
  position: absolute;
  right: 50%;
  bottom: 3px;
  border-radius: 999px;
  background: var(--bahaar-leaf);
  content: "";
  opacity: .72;
  transform: translateX(50%);
}

.header-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}

.bahaar-button,
.elementor-button,
.wp-element-button {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 11px 22px;
  color: var(--bahaar-white) !important;
  border: 0;
  border-radius: 14px;
  background: var(--bahaar-leaf);
  box-shadow: 0 9px 25px rgba(40, 122, 75, 0.2);
  cursor: pointer;
  font-weight: 700;
  transition: transform 180ms ease, background 180ms ease, box-shadow 180ms ease;
}

.bahaar-button:hover,
.elementor-button:hover,
.wp-element-button:hover {
  color: var(--bahaar-white);
  background: var(--bahaar-forest);
  transform: translateY(-2px);
  box-shadow: 0 14px 30px rgba(18, 61, 43, 0.22);
}
.bahaar-button:active,
.elementor-button:active,
.wp-element-button:active { transform: translateY(0); box-shadow: 0 6px 16px rgba(18,61,43,.16); }
.bahaar-button:disabled,
.elementor-button:disabled,
.wp-element-button:disabled,
.bahaar-button[aria-disabled="true"] { cursor: not-allowed; opacity: .5; transform: none; box-shadow: none; }

.bahaar-button--ghost {
  color: var(--bahaar-forest) !important;
  border: 1px solid var(--bahaar-line);
  background: transparent;
  box-shadow: none;
}

.bahaar-button--ghost:hover { background: var(--bahaar-white); }

.mobile-toggle {
  width: 48px;
  height: 48px;
  display: none;
  place-items: center;
  padding: 0;
  color: var(--bahaar-forest);
  border: 1px solid var(--bahaar-line);
  border-radius: 14px;
  background: var(--bahaar-white);
  cursor: pointer;
}

.mobile-toggle .bahaar-icon { width: 23px; height: 23px; }

.mobile-drawer {
  position: fixed;
  z-index: var(--bahaar-z-overlay);
  inset: 0;
  display: block;
  direction: rtl;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  transition: visibility 240ms ease, opacity 240ms ease;
}

.mobile-drawer.is-open {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}

.mobile-drawer__overlay {
  position: absolute;
  inset: 0;
  border: 0;
  background: rgba(9, 31, 21, 0.55);
  backdrop-filter: blur(3px);
  opacity: 0;
  transition: opacity 240ms ease;
}

.mobile-drawer.is-open .mobile-drawer__overlay { opacity: 1; }

.mobile-drawer__panel {
  width: min(88vw, 360px);
  height: 100%;
  display: flex;
  flex-direction: column;
  position: absolute;
  inset: 0 0 0 auto;
  margin: 0;
  padding: 22px;
  direction: rtl;
  text-align: right;
  background: var(--bahaar-paper);
  box-shadow: -20px 0 70px rgba(18, 61, 43, 0.2);
  transform: translateX(100%);
  transition: transform 240ms cubic-bezier(.22, .72, .2, 1);
  overflow-y: auto;
  overscroll-behavior: contain;
}

.mobile-drawer.is-open .mobile-drawer__panel { transform: translateX(0); }

.mobile-drawer__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--bahaar-line);
}

.mobile-close {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border: 1px solid var(--bahaar-line);
  border-radius: 13px;
  background: white;
  cursor: pointer;
}
.mobile-close .bahaar-icon { width: 21px; height: 21px; }

.mobile-nav { padding: 24px 0; }
.mobile-nav li + li { margin-top: 4px; }
.mobile-nav a {
  min-height: 52px;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 11px 12px;
  border-radius: 12px;
  font-size: var(--bahaar-type-base);
  font-weight: 700;
}
.mobile-nav a:hover { background: rgba(232,240,231,.72); }
.mobile-nav .current-menu-item > a,
.mobile-nav .current_page_item > a { color: var(--bahaar-forest); background: var(--bahaar-mint); box-shadow: inset -3px 0 var(--bahaar-leaf); }
.mobile-nav .sub-menu { padding: 0 16px 8px 0; }
.mobile-nav .sub-menu li { border-top: 1px dashed var(--bahaar-line); }
.mobile-nav .sub-menu a { min-height: 46px; color: var(--bahaar-muted); font-size: var(--bahaar-type-sm); }

.mobile-contact {
  margin-top: auto;
  padding: 20px;
  border-radius: 18px;
  background: var(--bahaar-mint);
}

.mobile-contact small { display: block; color: var(--bahaar-muted); }
.mobile-contact a { color: var(--bahaar-forest); font-weight: 700; }

/* Elementor and page sections */
.elementor { direction: rtl; }
.elementor-kit-6,
.elementor-kit-6 h1,
.elementor-kit-6 h2,
.elementor-kit-6 h3,
.elementor-kit-6 h4,
.elementor-kit-6 h5,
.elementor-kit-6 h6,
.elementor-widget-text-editor,
.elementor-widget-heading .elementor-heading-title,
.elementor-button,
.elementor-field,
.elementor-kit-6 button,
.elementor-kit-6 input,
.elementor-kit-6 select,
.elementor-kit-6 textarea {
  font-family: var(--bahaar-font) !important;
}
.elementor-widget-text-editor p:last-child { margin-bottom: 0; }
.elementor-element.e-con { --container-max-width: var(--bahaar-container); }

.bahaar-section {
  padding-block: var(--bahaar-section-space);
}

.bahaar-section--tight { padding-block: var(--bahaar-section-space-tight); }
.bahaar-section--white { background: var(--bahaar-white); }
.bahaar-section--mint { background: var(--bahaar-mint); }
.bahaar-section--forest { color: var(--bahaar-white); background: var(--bahaar-forest); }

.bahaar-eyebrow,
.archive-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: var(--bahaar-leaf);
  font-size: var(--bahaar-type-xs);
  font-weight: 700;
}

.bahaar-eyebrow::before,
.archive-eyebrow::before {
  width: 22px;
  height: 2px;
  display: block;
  background: currentColor;
  content: "";
}

.bahaar-heading h1,
.bahaar-heading h2,
.bahaar-heading h3,
.entry-title,
.archive-title {
  margin: 0;
  color: var(--bahaar-forest);
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: -0.035em;
}

.bahaar-heading h2 { font-size: var(--bahaar-heading-md); }
.bahaar-heading h3 { font-size: var(--bahaar-heading-sm); }
.bahaar-copy { color: var(--bahaar-muted); font-size: var(--bahaar-type-base); line-height: 2.05; }

.bahaar-hero {
  min-height: 560px;
  padding-block: 64px 72px;
  position: relative;
  background:
    linear-gradient(90deg, transparent 0 74%, rgba(112, 168, 107, 0.08) 74% 74.15%, transparent 74.15%),
    var(--bahaar-paper);
}

.bahaar-hero::before {
  width: 360px;
  height: 360px;
  position: absolute;
  inset: 70px auto auto -180px;
  border: 1px solid var(--bahaar-line);
  border-radius: 50%;
  content: "";
}

.hero-grid { align-items: center !important; gap: clamp(38px, 6vw, 84px) !important; }
.hero-copy { flex: 0 1 48% !important; }
.hero-visual { flex: 0 1 52% !important; position: relative; }
.elementor-page .bahaar-hero .hero-copy:only-child { flex: 0 1 820px !important; width: min(100%,820px) !important; max-width: 820px; }

.hero-title h1 {
  max-width: 620px;
  margin: 18px 0 22px;
  color: var(--bahaar-forest);
  font-size: clamp(2.35rem, 1.8rem + 2.7vw, 4.35rem);
  line-height: 1.3;
  letter-spacing: -0.055em;
}

.hero-title h1 em {
  color: var(--bahaar-leaf);
  font-style: normal;
  position: relative;
}

.hero-lead { max-width: 590px; color: var(--bahaar-muted); font-size: var(--bahaar-type-lg); line-height: 2; }
.hero-actions { display: flex !important; flex-direction: row !important; flex-wrap: wrap; gap: 12px !important; margin-top: 28px; }

.hero-image img {
  width: 100%;
  min-height: 560px;
  object-fit: cover;
  border-radius: 180px 180px 28px 28px;
  box-shadow: var(--bahaar-shadow);
}

.hero-badge {
  width: 176px !important;
  position: absolute !important;
  inset: auto -28px 38px auto !important;
  padding: 18px !important;
  color: var(--bahaar-white);
  border: 7px solid var(--bahaar-paper);
  border-radius: 22px;
  background: var(--bahaar-forest);
  box-shadow: var(--bahaar-shadow);
}

.hero-badge strong { display: block; color: var(--bahaar-lime); font-size: clamp(1.35rem, 1.2rem + .5vw, 1.65rem); }
.hero-badge span { font-size: var(--bahaar-type-xs); line-height: 1.8; }

.section-head {
  max-width: 680px;
  margin-inline: auto;
  margin-bottom: 46px;
  text-align: center;
}

.section-head .bahaar-eyebrow { justify-content: center; }
.section-head .bahaar-heading { margin-block: 12px 14px; }

.intro-grid { align-items: center !important; gap: clamp(36px, 7vw, 86px) !important; }
.intro-image { position: relative; }
.intro-image img { width: 100%; aspect-ratio: 4 / 4.6; object-fit: cover; border-radius: 30px 110px 30px 30px; }
.intro-image::after {
  width: 48%;
  height: 46%;
  position: absolute;
  z-index: -1;
  inset: auto auto -24px -24px;
  border-radius: 22px;
  background: var(--bahaar-lime);
  content: "";
}

.feature-list { margin-top: 24px; }
.feature-list > .e-con-inner { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px !important; }
.feature-item { padding: 15px 17px !important; border: 1px solid var(--bahaar-line); border-radius: 15px; background: var(--bahaar-white); }
.feature-item strong { color: var(--bahaar-forest); font-size: var(--bahaar-type-sm); }

.service-grid > .e-con-inner,
.team-grid > .e-con-inner { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px !important; }

.service-grid > .e-con-inner > .elementor-widget,
.team-grid > .e-con-inner > .team-card { min-width: 0; height: 100%; }

.service-card {
  min-height: 270px;
  height: 100%;
  padding: 28px !important;
  position: relative;
  overflow: hidden;
  border: 1px solid var(--bahaar-line);
  border-radius: var(--bahaar-radius);
  background: var(--bahaar-white);
  transition: transform 200ms ease, box-shadow 200ms ease, border-color 200ms ease;
}

.service-card::before {
  width: 70px;
  height: 70px;
  display: grid;
  place-items: center;
  margin-bottom: 45px;
  color: var(--bahaar-forest);
  border-radius: 20px 20px 8px 20px;
  background: var(--bahaar-mint);
  content: attr(data-icon);
  font-size: 28px;
}

.service-card:hover { transform: translateY(-7px); border-color: #b7cfbc; box-shadow: var(--bahaar-shadow); }
.service-card h3 { margin: 0 0 8px; color: var(--bahaar-forest); font-size: var(--bahaar-heading-sm); }
.service-card p { margin: 0; color: var(--bahaar-muted); font-size: var(--bahaar-type-sm); }

.team-card {
  overflow: hidden;
  border: 1px solid var(--bahaar-line);
  border-radius: 90px 90px 22px 22px;
  background: var(--bahaar-white);
  transition: transform 200ms ease;
}

.team-card > .e-con-inner { display: flex !important; flex-direction: column !important; }

.team-card:hover { transform: translateY(-6px); }
.team-card .elementor-widget-image { margin: 0; }
.team-card img { width: 100%; aspect-ratio: 1 / 1.08; object-fit: cover; filter: saturate(.85); }
.team-card__body { padding: 20px 20px 24px !important; }
.team-card h3 { margin: 0; color: var(--bahaar-forest); font-size: var(--bahaar-heading-sm); }
.team-card .team-role { margin: 3px 0 11px; color: var(--bahaar-leaf); font-size: var(--bahaar-type-xs); font-weight: 700; }
.team-card p { margin: 0; color: var(--bahaar-muted); font-size: var(--bahaar-type-sm); line-height: 1.9; }

.instagram-wrap { overflow: hidden; border-radius: 36px; background: var(--bahaar-forest); }
.instagram-copy { padding: clamp(34px, 5vw, 64px) !important; color: #dbeade; }
.instagram-copy h2 { color: var(--bahaar-white); }
.instagram-copy .bahaar-eyebrow { color: var(--bahaar-lime); }
.instagram-wrap > .e-con-inner { display: flex !important; flex-direction: row !important; align-items: stretch !important; }
.instagram-copy,
.instagram-gallery { width: 50% !important; }
.instagram-gallery { padding: 6px !important; }
.instagram-gallery > .e-con-inner { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px !important; }
.instagram-gallery img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; transition: filter 180ms ease, transform 280ms ease; }
.instagram-gallery .elementor-widget-image { overflow: hidden; }
.instagram-gallery .elementor-widget-image:hover img { transform: scale(1.04); filter: saturate(1.2); }

.cta-panel {
  padding: clamp(40px, 6vw, 76px) !important;
  overflow: hidden;
  position: relative;
  color: var(--bahaar-white);
  border-radius: 34px;
  background: var(--bahaar-leaf);
}

.cta-panel::after {
  width: 350px;
  height: 350px;
  position: absolute;
  inset: -170px auto auto -80px;
  border: 55px solid rgba(255,255,255,.08);
  border-radius: 50%;
  content: "";
}

.cta-panel h2 { color: var(--bahaar-white); }

/* Blog cards and archives */
.posts-grid,
.related-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.post-card {
  height: 100%;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid var(--bahaar-line);
  border-radius: 24px;
  background: var(--bahaar-white);
  transition: transform 200ms ease, box-shadow 200ms ease;
}

.post-card:hover { transform: translateY(-6px); box-shadow: var(--bahaar-shadow); }
.post-card__media { aspect-ratio: 19 / 13; display: block; flex: 0 0 auto; overflow: hidden; position: relative; background: var(--bahaar-mint); }
.post-card__media img { width: 100%; height: 100%; position: absolute; inset: 0; object-fit: cover; object-position: center; transition: transform 400ms ease; }
.post-card:hover .post-card__media img { transform: scale(1.035); }
.post-card__category { position: absolute; inset: 14px 14px auto auto; padding: 5px 10px; color: var(--bahaar-forest); border: 1px solid rgba(16,60,44,.08); border-radius: 999px; background: rgba(230,237,166,.92); font-size: .69rem; font-weight: 700; backdrop-filter: blur(6px); }
.post-card__body { height: 100%; display: flex; flex-direction: column; padding: 22px; }
.post-card__meta { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 12px; color: var(--bahaar-muted); font-size: var(--bahaar-type-xs); }
.post-card__title { margin: 10px 0 9px; color: var(--bahaar-forest); font-size: var(--bahaar-heading-sm); line-height: 1.75; }
.post-card__excerpt { display: -webkit-box; margin: 0; color: var(--bahaar-muted); font-size: var(--bahaar-type-sm); line-height: 1.95; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; }
.post-card__link { min-height: 44px; display: inline-flex; align-items: center; margin-top: auto; padding-top: 10px; color: var(--bahaar-leaf); font-size: var(--bahaar-type-sm); font-weight: 700; }

.archive-hero { padding: 80px 0 58px; border-bottom: 1px solid var(--bahaar-line); background: var(--bahaar-mint); }
.archive-title { margin-top: 10px; font-size: clamp(2.35rem, 1.75rem + 2.6vw, 4rem); }
.archive-description { max-width: 650px; margin: 12px 0 0; color: var(--bahaar-muted); }
.archive-content { padding: 70px 0 100px; }

.category-filter { display: flex; flex-wrap: wrap; gap: 8px; padding: 0; margin: 0 0 30px; list-style: none; }
.category-filter a { min-height: 44px; display: inline-flex; align-items: center; padding: 8px 14px; border: 1px solid var(--bahaar-line); border-radius: 12px; background: var(--bahaar-white); font-size: var(--bahaar-type-xs); }
.category-filter a:hover { border-color: var(--bahaar-leaf); color: var(--bahaar-leaf); }

.pagination { margin-top: 46px; }
.nav-links { display: flex; justify-content: center; gap: 8px; }
.page-numbers { min-width: 42px; height: 42px; display: grid; place-items: center; border: 1px solid var(--bahaar-line); border-radius: 11px; background: white; }
.page-numbers.current { color: white; border-color: var(--bahaar-leaf); background: var(--bahaar-leaf); }

/* Single */
.single-article { padding-bottom: 100px; }
.single-hero { padding: 72px 0 44px; text-align: center; }
.single-hero__cats { display: flex; justify-content: center; gap: 8px; }
.single-hero__cats a { color: var(--bahaar-leaf); font-size: var(--bahaar-type-xs); font-weight: 700; }
.entry-title { max-width: 920px; margin: 14px auto 20px; font-size: clamp(2.2rem, 1.6rem + 2.8vw, 4.15rem); }
.single-meta { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 10px 18px; color: var(--bahaar-muted); font-size: var(--bahaar-type-xs); }
.single-featured { width: min(calc(100% - 40px), 1260px); margin: 0 auto 54px; }
.single-featured img { width: 100%; max-height: 680px; object-fit: cover; border-radius: 36px; }
.article-layout { display: grid; grid-template-columns: minmax(0, 760px) 240px; justify-content: center; gap: 70px; }
.entry-content { font-size: var(--bahaar-type-lg); line-height: 2.15; }
.entry-content h2,
.entry-content h3 { margin: 2em 0 .7em; color: var(--bahaar-forest); line-height: 1.6; }
.entry-content h2 { font-size: clamp(1.55rem, 1.35rem + .8vw, 1.9rem); }
.entry-content h3 { font-size: clamp(1.25rem, 1.12rem + .5vw, 1.5rem); }
.entry-content p { margin: 0 0 1.4em; }
.entry-content img { border-radius: 24px; }
.entry-content blockquote { margin: 2em 0; padding: 22px 26px; color: var(--bahaar-forest); border-right: 4px solid var(--bahaar-leaf); border-radius: 14px 0 0 14px; background: var(--bahaar-mint); }
.article-aside { align-self: start; position: sticky; top: 130px; }
.article-aside__box { padding: 22px; border: 1px solid var(--bahaar-line); border-radius: 20px; background: white; }
.article-aside__box strong { display: block; margin-bottom: 8px; color: var(--bahaar-forest); }
.article-aside__box p { margin: 0; color: var(--bahaar-muted); font-size: var(--bahaar-type-xs); }
.related-posts { padding-top: 70px; margin-top: 70px; border-top: 1px solid var(--bahaar-line); }
.related-posts h2 { margin: 0 0 26px; color: var(--bahaar-forest); }

/* Forms */
.bahaar-form-wrap { padding: clamp(26px, 4vw, 45px); border: 1px solid var(--bahaar-line); border-radius: 28px; background: var(--bahaar-white); box-shadow: var(--bahaar-shadow); }
.bahaar-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.bahaar-field { display: flex; flex-direction: column; gap: 7px; }
.bahaar-field--full { grid-column: 1 / -1; }
.bahaar-field label { color: var(--bahaar-forest); font-size: var(--bahaar-type-sm); font-weight: 700; }
.bahaar-field input,
.bahaar-field textarea,
.bahaar-field select {
  width: 100%;
  min-height: 52px;
  padding: 12px 15px;
  color: var(--bahaar-ink);
  border: 1px solid var(--bahaar-line);
  border-radius: 13px;
  outline: 0;
  background: #fbfdfb;
  transition: border-color 160ms ease, box-shadow 160ms ease;
}
.bahaar-field textarea { min-height: 145px; resize: vertical; }
.bahaar-field input:focus,
.bahaar-field textarea:focus,
.bahaar-field select:focus { border-color: var(--bahaar-leaf); box-shadow: 0 0 0 4px rgba(40, 122, 75, .1); }
.bahaar-field input:user-invalid,
.bahaar-field textarea:user-invalid,
.comment-form input:user-invalid,
.comment-form textarea:user-invalid { border-color: #b8644d; box-shadow: 0 0 0 3px rgba(184,100,77,.1); }
.bahaar-form .bahaar-button { justify-self: start; }
.form-notice { margin-bottom: 18px; padding: 14px 17px; color: var(--bahaar-forest); border: 1px solid #cbdacd; border-radius: 13px; background: var(--bahaar-mint); font-size: var(--bahaar-type-sm); }
.form-notice--success { border-color: #b6d2bd; background: #e7f2e9; }
.form-notice--error { color: #6e3428; border-color: #e4c2b7; background: #f7eae5; }
.contact-cards > .e-con-inner { display: grid !important; grid-template-columns: repeat(3, 1fr); gap: 16px !important; }
.contact-card { padding: 25px !important; border: 1px solid var(--bahaar-line); border-radius: 20px; background: white; }
.contact-card strong { display: block; color: var(--bahaar-forest); }
.contact-card span { color: var(--bahaar-muted); font-size: var(--bahaar-type-sm); }

/* Footer */
.site-footer { color: #c7d8cb; background: #0e3022; }
.footer-cta { padding: 44px 0; border-bottom: 1px solid rgba(255,255,255,.1); }
.footer-cta__inner { display: flex; align-items: center; justify-content: space-between; gap: 30px; }
.footer-cta h2 { margin: 0; color: white; font-size: clamp(1.55rem, 1.25rem + 1.2vw, 2.25rem); }
.footer-cta p { margin: 5px 0 0; color: #a9c0af; }
.footer-main { display: grid; grid-template-columns: 1.5fr 1fr 1fr 1fr; gap: 55px; padding: 68px 0 54px; }
.footer-brand__name strong { color: var(--bahaar-white); }
.footer-brand__name small { color: #9db2a3; }
.footer-brand p { max-width: 340px; margin: 18px 0; font-size: var(--bahaar-type-sm); line-height: 2; }
.footer-title { margin: 0 0 18px; color: var(--bahaar-white); font-size: var(--bahaar-type-base); }
.footer-menu li + li { margin-top: 3px; }
.footer-menu a { min-height: 42px; display: inline-flex; align-items: center; color: #b8cbbd; font-size: var(--bahaar-type-sm); }
.footer-menu a:hover { color: var(--bahaar-lime); }
.footer-contact { min-width: 0; font-size: var(--bahaar-type-sm); }
.footer-contact p { margin: 0 0 10px; }
.footer-contact a { overflow-wrap: anywhere; }
.footer-email { direction: ltr; unicode-bidi: isolate; }
.social-links { display: flex; gap: 8px; margin-top: 18px; }
.social-links a { width: 46px; height: 46px; display: grid; place-items: center; color: #dce9df; border: 1px solid rgba(255,255,255,.16); border-radius: var(--bahaar-radius-sm); }
.social-links svg { width: 22px; height: 22px; }
.social-links a:hover { color: var(--bahaar-forest); background: var(--bahaar-lime); }
.social-links a:focus-visible { color: var(--bahaar-forest); background: var(--bahaar-lime); }
.footer-bottom { display: flex; justify-content: space-between; gap: 20px; padding: 20px 0; border-top: 1px solid rgba(255,255,255,.1); color: #8ea496; font-size: var(--bahaar-type-xs); }

.empty-state { padding: 60px; text-align: center; border: 1px dashed var(--bahaar-line); border-radius: 24px; background: white; }
.not-found-section { padding-block: clamp(4rem,8vw,7.5rem); }
.not-found-panel { min-height: 420px; display: grid; grid-template-columns: minmax(0,1fr) 280px; align-items: center; gap: clamp(36px,7vw,90px); padding: clamp(32px,6vw,72px); border: 1px solid var(--bahaar-line); border-radius: 28px; background: var(--bahaar-white); box-shadow: var(--bahaar-shadow-soft); }
.not-found-panel__copy p { max-width: 58ch; color: var(--bahaar-muted); }
.not-found-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; margin-top: 24px; }
.not-found-panel__mark { min-height: 230px; display: grid; place-items: center; position: relative; color: var(--bahaar-leaf); border-radius: 140px 140px 22px 22px; background: var(--bahaar-mint); }
.not-found-panel__mark span { color: rgba(16,60,44,.14); font-size: 5.5rem; font-weight: 700; }
.not-found-panel__mark .bahaar-icon { width: 54px; height: 54px; position: absolute; }

@media (max-width: 1024px) {
  .top-note { display: none; }
  .desktop-nav, .header-cta { display: none; }
  .mobile-toggle { display: grid; }
  .site-header__inner { grid-template-columns: 1fr auto; min-height: 76px; }
  .header-actions { grid-column: 2; grid-row: 1; }
  .service-grid > .e-con-inner, .team-grid > .e-con-inner { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .posts-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .article-layout { grid-template-columns: minmax(0, 720px); }
  .article-aside { display: none; }
  .footer-main { grid-template-columns: 1.4fr 1fr; gap: 44px; }
  .footer-brand { grid-row: span 2; }
}

@media (max-width: 900px) {
  .bahaar-hero { min-height: auto; }
  .hero-grid, .intro-grid { flex-direction: column !important; gap: 48px !important; }
  .hero-copy, .hero-visual, .intro-image, .intro-copy { flex: 1 1 100% !important; width: 100% !important; }
  .hero-copy { max-width: 700px; }
  .hero-image img { min-height: 520px; }
  .intro-image { max-width: 680px; margin-inline: auto; }
  .intro-image img { aspect-ratio: 4 / 3.5; }
}

@media (max-width: 767px) {
  :root {
    --bahaar-section-space: 4.25rem;
    --bahaar-section-space-tight: 3.25rem;
  }
  .container, .bahaar-container { width: min(calc(100% - 28px), var(--bahaar-container)); }
  .admin-bar .site-header { top: 46px; }
  .top-note__inner { justify-content: center; text-align: center; min-height: 34px; }
  .top-note__contact { display: none; }
  .site-brand__mark { width: 39px; height: 46px; }
  .site-brand__text small { font-size: 0.64rem; }
  .bahaar-hero { min-height: auto; padding-block: 2.75rem 4.1rem; }
  .elementor-page .bahaar-hero { padding-block: 2.5rem 3.25rem; }
  .elementor-page .bahaar-hero .hero-copy:only-child { flex: 0 1 auto !important; width: 100% !important; }
  .elementor-page .hero-title h1 { font-size: clamp(2.3rem,10vw,3rem); }
  .hero-grid, .intro-grid { gap: 2.5rem !important; }
  .hero-copy, .hero-visual { flex: 1 1 100% !important; width: 100% !important; }
  .hero-title h1 { margin-top: 12px; }
  .hero-actions { width: 100%; }
  .hero-actions .elementor-widget-button { flex: 1 1 calc(50% - 6px); }
  .hero-actions .elementor-button { width: 100%; min-height: 50px; padding-inline: 14px; font-size: var(--bahaar-type-sm); }
  .hero-image img { min-height: 0; aspect-ratio: 4 / 5; border-radius: 96px 96px 22px 22px; }
  .hero-badge { width: 148px !important; inset: auto -3px 18px auto !important; border-width: 5px; }
  .section-head { margin-bottom: 2rem; }
  .feature-list > .e-con-inner { grid-template-columns: 1fr; }
  .service-grid > .e-con-inner, .posts-grid, .related-grid, .contact-cards > .e-con-inner { grid-template-columns: 1fr; }
  .service-grid > .e-con-inner { gap: 14px !important; }
  .service-card { min-height: auto; padding: 24px !important; }
  .service-card::before { width: 60px; height: 60px; margin-bottom: 22px; }
  .team-grid > .e-con-inner { grid-template-columns: 1fr; gap: 12px !important; }
  .team-card { border-radius: var(--bahaar-radius-md); }
  .team-card > .e-con-inner { display: grid !important; grid-template-columns: 104px minmax(0, 1fr); align-items: center !important; }
  .team-card img { height: 100%; min-height: 132px; aspect-ratio: 1 / 1.12; border-radius: 0 var(--bahaar-radius-md) var(--bahaar-radius-md) 0; }
  .team-card__body { padding: 16px 18px !important; }
  .team-card .team-role { margin-bottom: 6px; }
  .team-card p { display: block; font-size: var(--bahaar-type-xs); line-height: 1.8; }
  .instagram-wrap { border-radius: 24px; }
  .instagram-wrap > .e-con-inner { flex-direction: column !important; }
  .instagram-copy, .instagram-gallery { width: 100% !important; }
  .instagram-copy { padding: 36px 24px !important; }
  .cta-panel { border-radius: 24px; }
  .archive-hero { padding: 3.5rem 0 2.6rem; }
  .archive-content { padding: 3rem 0 4.75rem; }
  .single-hero { padding: 3.25rem 0 2rem; }
  .single-featured { width: calc(100% - 28px); margin-bottom: 36px; }
  .single-featured img { border-radius: 22px; }
  .entry-content { line-height: 2.1; }
  .post-card__body { padding: 20px; }
  .bahaar-form { grid-template-columns: 1fr; }
  .bahaar-field--full { grid-column: auto; }
  .bahaar-form .bahaar-button { width: 100%; }
  .bahaar-form-wrap { padding: 24px 18px; border-radius: var(--bahaar-radius-md); }
  .footer-cta__inner { flex-direction: column; align-items: flex-start; }
  .footer-cta { padding: 38px 0; }
  .footer-cta__inner .bahaar-button { width: 100%; }
  .footer-main { grid-template-columns: 1fr 1fr; gap: 0 28px; padding: 48px 0 36px; }
  .footer-brand { grid-column: 1 / -1; grid-row: auto; padding-bottom: 32px; margin-bottom: 10px; border-bottom: 1px solid rgba(255,255,255,.1); }
  .footer-column:not(.footer-brand) { padding-block: 26px; }
  .footer-title { margin-bottom: 10px; }
  .footer-bottom { flex-direction: column; text-align: center; }
  .not-found-section { padding-block: 3rem; }
  .not-found-panel { min-height: 0; grid-template-columns: 1fr; padding: 30px 22px; border-radius: 22px; }
  .not-found-panel__mark { min-height: 150px; grid-row: 1; border-radius: 90px 90px 18px 18px; }
  .not-found-panel__mark span { font-size: 4rem; }
  .not-found-actions { align-items: stretch; flex-direction: column; }
  .not-found-actions .bahaar-button { width: 100%; }
}

@media (max-width: 640px) {
  .footer-main { display: grid; }
  .footer-column:not(.footer-brand) { padding-block: 24px; }
  .footer-brand { padding-bottom: 32px; }
  .footer-menu a { width: 100%; min-height: 44px; }
  .footer-contact p { margin-bottom: 13px; }
  .social-links { margin-top: 20px; }
}

@media (max-width: 480px) {
  .header-actions { gap: 5px; }
  .mobile-toggle { width: 44px; height: 44px; }
  .mobile-drawer__panel { width: min(90vw, 360px); padding: 18px; }
  .top-note { font-size: 0.7rem; }
  .empty-state { padding: 40px 20px; }
}

@media (max-width: 374px) {
  .container, .bahaar-container { width: min(calc(100% - 24px), var(--bahaar-container)); }
  .site-brand { gap: 8px; }
  .site-brand__mark { width: 36px; height: 42px; }
  .site-brand__text small { display: none; }
  .hero-actions .elementor-widget-button { flex-basis: 100%; }
  .hero-image img { aspect-ratio: 1 / 1.2; }
  .hero-badge { width: 136px !important; }
  .team-card > .e-con-inner { grid-template-columns: 88px minmax(0, 1fr); }
  .team-card__body { padding: 14px !important; }
  .team-card p { display: none; }
  .instagram-gallery > .e-con-inner { grid-template-columns: 1fr 1fr; }
}

/* Product-level polish: shared tokens and interaction architecture. */
:root {
  --bahaar-earth: #a7643f;
  --bahaar-earth-soft: #efe3d8;
  --bahaar-surface-raised: #fff;
  --bahaar-space-1: .375rem;
  --bahaar-space-2: .625rem;
  --bahaar-space-3: .875rem;
  --bahaar-space-4: 1.125rem;
  --bahaar-space-5: 1.5rem;
  --bahaar-space-6: 2rem;
  --bahaar-space-7: 3rem;
  --bahaar-control-height: 46px;
  --bahaar-icon-size: 1.25rem;
  --bahaar-motion-fast: 160ms;
  --bahaar-motion-base: 240ms;
  --bahaar-ease: cubic-bezier(.2,.8,.2,1);
  --bahaar-header-height: 72px;
  --bahaar-mobile-nav-height: 70px;
}

.bahaar-icon { width: var(--bahaar-icon-size); height: var(--bahaar-icon-size); display: inline-block; flex: 0 0 auto; vertical-align: middle; overflow: visible; }
.icon-button { width: var(--bahaar-control-height); height: var(--bahaar-control-height); display: inline-grid; place-items: center; padding: 0; color: var(--bahaar-forest); border: 1px solid var(--bahaar-line); border-radius: 14px; background: var(--bahaar-white); cursor: pointer; transition: color var(--bahaar-motion-fast), border-color var(--bahaar-motion-fast), background var(--bahaar-motion-fast), transform var(--bahaar-motion-fast); }
.icon-button:hover { color: var(--bahaar-white); border-color: var(--bahaar-leaf); background: var(--bahaar-leaf); transform: translateY(-1px); }
.icon-button:active { transform: none; }
.bahaar-button .bahaar-icon { width: 1.15rem; height: 1.15rem; }

/* Header controls share one optical height, independent of the global body leading. */
.header-cta {
  min-height: var(--bahaar-control-height);
  padding-block: 0;
  line-height: 1.5;
}
.mobile-toggle { width: var(--bahaar-control-height); height: var(--bahaar-control-height); }

/* Compact sticky header keeps a balanced vertical rhythm in every state. */
.site-header { min-height: var(--bahaar-header-height); transition: background var(--bahaar-motion-base), box-shadow var(--bahaar-motion-base), border-color var(--bahaar-motion-base); }
.site-header__inner { min-height: var(--bahaar-header-height); padding-block: 8px; transition: min-height var(--bahaar-motion-base) var(--bahaar-ease); }
.site-header .site-brand__mark { width: 39px; height: 45px; border-radius: 19px 19px 9px 9px; transition: transform var(--bahaar-motion-base); }
.site-header .site-brand__text strong { font-size: 1.12rem; }
.site-header.is-scrolled { border-color: rgba(18,61,43,.12); background: rgba(255,255,255,.94); box-shadow: 0 8px 28px rgba(18,61,43,.09); }
.site-header.is-scrolled .site-header__inner { min-height: 62px; }
.site-header.is-scrolled .site-brand__mark { transform: scale(.92); }
.desktop-nav a { min-height: 44px; }
.header-search-toggle .bahaar-icon { width: 20px; height: 20px; }
.header-actions { padding-inline-start: 4px; }

/* Search sheet. */
.search-dialog { width: min(760px, calc(100% - 32px)); max-height: min(760px, calc(100dvh - 40px)); padding: 0; color: var(--bahaar-ink); border: 1px solid rgba(18,61,43,.14); border-radius: 28px; background: var(--bahaar-paper); box-shadow: 0 30px 100px rgba(6,32,21,.3); overflow: hidden; }
.search-dialog::backdrop, .gallery-dialog::backdrop { background: rgba(7,29,19,.7); backdrop-filter: blur(5px); }
.search-dialog[open] { animation: bahaar-dialog-in var(--bahaar-motion-base) var(--bahaar-ease); }
.search-dialog__head { display: flex; justify-content: space-between; gap: 24px; padding: 26px 28px 20px; border-bottom: 1px solid var(--bahaar-line); background: var(--bahaar-white); }
.search-dialog__head span { color: var(--bahaar-leaf); font-size: var(--bahaar-type-xs); font-weight: 700; }
.search-dialog__head h2 { margin: 3px 0 0; color: var(--bahaar-forest); font-size: clamp(1.35rem,1.1rem + 1vw,1.85rem); }
.live-search { padding: 24px 28px 28px; }
.live-search__field { position: relative; }
.live-search__field > .bahaar-icon { position: absolute; top: 50%; right: 17px; color: var(--bahaar-leaf); transform: translateY(-50%); }
.live-search__field input { width: 100%; height: 58px; padding: 12px 50px 12px 48px; color: var(--bahaar-ink); border: 1px solid var(--bahaar-line); border-radius: 17px; background: var(--bahaar-white); outline: 0; }
.live-search__field input:focus { border-color: var(--bahaar-leaf); box-shadow: 0 0 0 4px rgba(40,122,75,.1); }
.live-search__spinner { display: none; position: absolute; top: 50%; left: 16px; color: var(--bahaar-leaf); transform: translateY(-50%); }
.search-dialog.is-loading .live-search__spinner { display: block; animation: bahaar-spin .8s linear infinite; }
.live-search__results { max-height: min(490px, 55dvh); margin-top: 16px; overflow: auto; overscroll-behavior: contain; }
.live-search__results section + section { margin-top: 20px; }
.live-search__results h3 { margin: 0 0 8px; color: var(--bahaar-muted); font-size: var(--bahaar-type-xs); }
.live-search__item { min-height: 74px; display: grid; grid-template-columns: 56px minmax(0,1fr) auto; align-items: center; gap: 13px; padding: 9px; border-radius: 15px; transition: background var(--bahaar-motion-fast); }
.live-search__item:hover, .live-search__item:focus-visible, .live-search__item.is-selected { background: var(--bahaar-mint); }
.live-search__item img, .live-search__placeholder { width: 56px; aspect-ratio: 1; object-fit: cover; border-radius: 12px; background: var(--bahaar-mint); }
.live-search__item strong, .live-search__item small { display: block; }
.live-search__item strong { color: var(--bahaar-forest); font-size: var(--bahaar-type-sm); }
.live-search__item small { max-width: 48ch; margin-top: 2px; color: var(--bahaar-muted); font-size: .7rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.live-search__item em { color: var(--bahaar-earth); font-size: .68rem; font-style: normal; }
.live-search__hint, .live-search__error, .live-search__empty { padding: 28px; margin: 0; text-align: center; color: var(--bahaar-muted); border: 1px dashed var(--bahaar-line); border-radius: 16px; background: rgba(255,255,255,.6); }
.live-search__empty strong { display: block; margin-bottom: 4px; color: var(--bahaar-forest); }
.live-search__empty p { margin: 0; }
.live-search__field input::-webkit-search-cancel-button { display: none; }

/* Floating actions and mobile application navigation. */
.floating-tools { height: 56px; position: fixed; z-index: var(--bahaar-z-floating); right: 20px; bottom: 22px; left: 20px; pointer-events: none; }
.scroll-top, .social-fab__trigger { width: 56px; height: 56px; display: grid; place-items: center; padding: 0; border: 1px solid rgba(18,61,43,.14); cursor: pointer; }
.scroll-top .bahaar-icon { width: 22px; height: 22px; }
.scroll-top { visibility: hidden; position: absolute; bottom: 0; left: 0; color: var(--bahaar-forest); border-color: rgba(255,255,255,.72); border-radius: 18px; background: linear-gradient(145deg,rgba(255,255,255,.82),rgba(239,246,240,.58)); box-shadow: 0 12px 32px rgba(18,61,43,.16), inset 0 1px 0 rgba(255,255,255,.9); opacity: 0; pointer-events: auto; transform: translateY(10px); backdrop-filter: blur(16px) saturate(135%); -webkit-backdrop-filter: blur(16px) saturate(135%); transition: color var(--bahaar-motion-fast), border-color var(--bahaar-motion-fast), background var(--bahaar-motion-fast), opacity var(--bahaar-motion-base), transform var(--bahaar-motion-base), visibility var(--bahaar-motion-base); }
.scroll-top.is-visible { visibility: visible; opacity: 1; transform: none; }
.scroll-top.is-visible:hover { color: var(--bahaar-white); border-color: rgba(255,255,255,.45); background: rgba(34,106,69,.88); transform: translateY(-2px); }
.social-fab { position: absolute; right: 0; bottom: 0; pointer-events: auto; }
.social-fab__trigger { position: relative; color: var(--bahaar-white); border-color: rgba(213,220,153,.72); border-radius: 21px 21px 9px 21px; background: linear-gradient(145deg,#318257 0%,var(--bahaar-leaf) 46%,var(--bahaar-forest) 100%); box-shadow: 0 14px 34px rgba(16,60,44,.28), 0 0 0 4px rgba(117,149,107,.12), inset 0 1px 0 rgba(255,255,255,.22); animation: bahaar-share-breathe 3.4s ease-in-out infinite; transition: border-radius var(--bahaar-motion-base), transform var(--bahaar-motion-base), background var(--bahaar-motion-fast), box-shadow var(--bahaar-motion-fast); }
.social-fab__trigger .bahaar-icon { width: 24px; height: 24px; transition: transform var(--bahaar-motion-base) var(--bahaar-ease); }
.social-fab__trigger:hover { background: linear-gradient(145deg,#3a9162 0%,#226a45 46%,#0b2d20 100%); box-shadow: 0 18px 38px rgba(16,60,44,.34), 0 0 0 5px rgba(117,149,107,.16), inset 0 1px 0 rgba(255,255,255,.25); transform: translateY(-2px) scale(1.02); }
.social-fab.is-open .social-fab__trigger { border-radius: 18px; background: var(--bahaar-forest); box-shadow: 0 12px 28px rgba(16,60,44,.3); animation: none; transform: scale(.97); }
.social-fab.is-open .social-fab__trigger .bahaar-icon { transform: rotate(45deg); }
.social-fab__menu { visibility: hidden; position: absolute; right: 0; bottom: 68px; display: flex; flex-direction: column-reverse; gap: 8px; opacity: 0; transform: translateY(8px); transition: opacity var(--bahaar-motion-base), transform var(--bahaar-motion-base), visibility var(--bahaar-motion-base); }
.social-fab.is-open .social-fab__menu { visibility: visible; opacity: 1; transform: none; }
.social-fab__menu > a, .social-fab__menu > span { width: 168px; height: 48px; display: flex; align-items: center; justify-content: flex-start; gap: 9px; padding: 0 13px; direction: rtl; color: var(--bahaar-forest); border: 1px solid rgba(255,255,255,.75); border-radius: 15px; background: rgba(255,255,255,.88); box-shadow: 0 10px 28px rgba(18,61,43,.15); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); white-space: nowrap; }
.social-fab__menu > span[aria-disabled="true"] { color: var(--bahaar-muted); background: rgba(247,246,240,.98); cursor: default; }
.social-fab__menu .bahaar-icon--instagram, .social-fab__menu .bahaar-icon--telegram, .social-fab__menu .bahaar-icon--whatsapp { width: 19px; height: 19px; }
.social-fab__menu span span, .social-fab__menu a span { max-width: 0; overflow: hidden; font-size: .7rem; transition: max-width var(--bahaar-motion-base); }
.social-fab.is-open .social-fab__menu span span, .social-fab.is-open .social-fab__menu a span { max-width: 150px; }
.mobile-bottom-nav { display: none; }
.mobile-nav a { display: flex; align-items: center; gap: 10px; }
.mobile-nav a .bahaar-icon { width: 19px; height: 19px; color: var(--bahaar-leaf); }

/* Encyclopedia workbench. */
.archive-hero--plants { position: relative; overflow: hidden; background: #e8efe6; }
.archive-hero--plants::after { width: 370px; height: 370px; position: absolute; bottom: -250px; left: 7%; border: 50px solid rgba(112,168,107,.11); border-radius: 50%; content: ""; pointer-events: none; }
.archive-hero__grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(320px,.65fr); align-items: end; gap: 60px; }
.encyclopedia-search { min-height: 76px; display: flex; align-items: center; gap: 15px; padding: 14px 18px; text-align: right; color: var(--bahaar-forest); border: 1px solid rgba(18,61,43,.14); border-radius: 20px; background: rgba(255,255,255,.7); cursor: pointer; box-shadow: 0 14px 36px rgba(18,61,43,.07); }
.encyclopedia-search > .bahaar-icon { width: 28px; height: 28px; color: var(--bahaar-leaf); }
.encyclopedia-search small, .encyclopedia-search strong { display: block; }
.encyclopedia-search small { color: var(--bahaar-muted); font-size: .68rem; }
.encyclopedia-search strong { font-size: var(--bahaar-type-sm); }
.plant-type-tabs { display: flex; gap: 8px; padding-bottom: 18px; margin: -28px 0 28px; position: relative; overflow-x: auto; scrollbar-width: none; }
.plant-type-tabs::-webkit-scrollbar { display: none; }
.plant-type-tabs a { min-width: max-content; min-height: 52px; display: inline-flex; align-items: center; gap: 8px; padding: 9px 15px; color: var(--bahaar-muted); border: 1px solid var(--bahaar-line); border-radius: 15px; background: var(--bahaar-white); font-size: var(--bahaar-type-sm); box-shadow: 0 6px 20px rgba(18,61,43,.04); }
.plant-type-tabs a.is-active, .plant-type-tabs a:hover { color: var(--bahaar-white); border-color: var(--bahaar-forest); background: var(--bahaar-forest); }
.encyclopedia-workbench { padding: 18px; border: 1px solid var(--bahaar-line); border-radius: 24px; background: rgba(255,255,255,.5); }
.encyclopedia-toolbar { min-height: 58px; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 0 4px 16px; }
.encyclopedia-toolbar > div { display: flex; align-items: center; gap: 10px; }
.result-count { color: var(--bahaar-muted); font-size: var(--bahaar-type-sm); }
.result-count strong { color: var(--bahaar-forest); }
.filter-toggle { display: none; }
.view-switcher { padding: 3px; border: 1px solid var(--bahaar-line); border-radius: 12px; background: var(--bahaar-white); }
.view-switcher button { width: 40px; height: 38px; display: grid; place-items: center; padding: 0; color: var(--bahaar-muted); border: 0; border-radius: 9px; background: transparent; cursor: pointer; }
.view-switcher button[aria-pressed="true"] { color: var(--bahaar-white); background: var(--bahaar-leaf); }
.encyclopedia-layout { display: grid; grid-template-columns: 230px minmax(0,1fr); gap: 20px; }
.filter-panel { align-self: start; padding: 20px; border: 1px solid var(--bahaar-line); border-radius: 18px; background: var(--bahaar-white); }
.filter-panel__head { display: flex; align-items: center; justify-content: space-between; color: var(--bahaar-forest); }
.filter-panel__close { display: none; }
.plant-filters { display: grid; gap: 14px; margin-top: 18px; }
.plant-filters label { display: grid; gap: 6px; color: var(--bahaar-muted); font-size: .72rem; font-weight: 700; }
.plant-filters select, .comment-form input, .comment-form select, .comment-form textarea { width: 100%; min-height: 48px; padding: 10px 12px; color: var(--bahaar-ink); border: 1px solid var(--bahaar-line); border-radius: 12px; background: #fbfdfb; outline: 0; }
.plant-filters select:focus, .comment-form input:focus, .comment-form select:focus, .comment-form textarea:focus { border-color: var(--bahaar-leaf); box-shadow: 0 0 0 4px rgba(40,122,75,.09); }
.filter-panel__actions { display: grid; gap: 8px; margin-top: 5px; }
.filter-panel__actions .bahaar-button { width: 100%; padding-inline: 12px; }
.filter-panel__actions a { min-height: 40px; display: grid; place-items: center; color: var(--bahaar-muted); font-size: .72rem; }
.family-browser { padding-top: 20px; margin-top: 20px; border-top: 1px solid var(--bahaar-line); }
.family-browser > strong { display: flex; align-items: center; gap: 7px; color: var(--bahaar-forest); font-size: .75rem; }
.family-browser > div { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 12px; }
.family-browser a { min-height: 34px; display: inline-flex; align-items: center; gap: 6px; padding: 5px 9px; color: var(--bahaar-muted); border-radius: 9px; background: var(--bahaar-paper); font-size: .67rem; }
.family-browser a span { color: var(--bahaar-leaf); }
.encyclopedia-results { min-width: 0; position: relative; }
.active-filters { display: flex; flex-wrap: wrap; gap: 7px; margin: 0 0 12px; }
.active-filters[hidden] { display: none; }
.active-filters button { min-height: 36px; display: inline-flex; align-items: center; gap: 8px; padding: 6px 10px; color: var(--bahaar-forest); border: 1px solid #cddacf; border-radius: 999px; background: var(--bahaar-mint); cursor: pointer; font-size: .7rem; }
.active-filters button > span:last-child { width: 18px; height: 18px; display: grid; place-items: center; border-radius: 50%; background: rgba(16,60,44,.1); font-size: .9rem; line-height: 1; }
.encyclopedia-archive.is-loading .encyclopedia-results { opacity: .58; pointer-events: none; }
.encyclopedia-archive .catalog-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.catalog-card { min-width: 0; overflow: hidden; border: 1px solid var(--bahaar-line); border-radius: 20px; background: var(--bahaar-white); transition: transform var(--bahaar-motion-base) var(--bahaar-ease), box-shadow var(--bahaar-motion-base), border-color var(--bahaar-motion-base); }
.catalog-card:hover { border-color: rgba(40,122,75,.35); transform: translateY(-3px); box-shadow: var(--bahaar-shadow-soft); }
.catalog-card__media { display: block; overflow: hidden; position: relative; background: var(--bahaar-mint); }
.catalog-card__media::before { position: absolute; inset: 0; background-color: var(--bahaar-mint); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2370a86b' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 20A7 7 0 0 1 9.8 6.1C15.5 5 20 2 20 2c0 7-2 12-6.4 14.1'/%3E%3Cpath d='M2 21c0-3 1.85-5.36 5.08-6.94C9.4 12.92 12.5 12 16 12'/%3E%3C/svg%3E"); background-position: center; background-repeat: no-repeat; background-size: 34px; content: ""; opacity: .62; }
.catalog-card__media img { width: 100%; aspect-ratio: 1.35; position: relative; z-index: 1; object-fit: cover; transition: transform 400ms var(--bahaar-ease); }
.catalog-card:hover .catalog-card__media img { transform: scale(1.025); }
.catalog-card__body { padding: 15px; }
.catalog-card__type { display: inline-flex; align-items: center; gap: 5px; color: var(--bahaar-leaf); font-size: .67rem; font-weight: 700; }
.catalog-card__type .bahaar-icon { width: 14px; height: 14px; }
.catalog-card h2 { margin: 5px 0 0; color: var(--bahaar-forest); font-size: clamp(1rem,.94rem + .25vw,1.18rem); line-height: 1.65; }
.catalog-card__scientific { margin: 0; color: var(--bahaar-muted); font-family: Georgia,serif; font-size: .72rem; line-height: 1.5; }
.catalog-card__care { display: flex; gap: 8px; margin: 12px 0 2px; }
.catalog-card__care div { min-width: 0; display: flex; align-items: center; gap: 4px; padding: 5px 7px; border-radius: 8px; background: var(--bahaar-paper); }
.catalog-card__care dt { display: flex; color: var(--bahaar-earth); }
.catalog-card__care .bahaar-icon { width: 14px; height: 14px; }
.catalog-card__care dd { margin: 0; color: var(--bahaar-muted); font-size: .62rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.catalog-card .text-link { min-height: 40px; display: inline-flex; align-items: center; margin-top: 8px; font-size: .7rem; }
.encyclopedia-archive[data-view="list"] .catalog-grid { grid-template-columns: 1fr; }
.encyclopedia-archive[data-view="list"] .catalog-card { display: grid; grid-template-columns: 180px minmax(0,1fr); }
.encyclopedia-archive[data-view="list"] .catalog-card__media img { height: 100%; aspect-ratio: 1.2; }
.encyclopedia-archive[data-view="visual"] .catalog-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
.encyclopedia-archive[data-view="visual"] .catalog-card__media img { aspect-ratio: 1.35; }
.load-more-wrap { display: flex; justify-content: center; margin-top: 30px; }
.load-more { min-height: 48px; display: inline-flex; align-items: center; gap: 9px; padding: 10px 20px; color: var(--bahaar-forest); border: 1px solid var(--bahaar-line); border-radius: 14px; background: var(--bahaar-white); cursor: pointer; }
.load-more .icon-loader { display: none; }
.load-more.is-loading .icon-loader, .encyclopedia-archive.is-loading .load-more .icon-loader { display: block; animation: bahaar-spin .8s linear infinite; }
.pagination--fallback { margin-top: 24px; }
.js .pagination--fallback { position: absolute; width: 1px; height: 1px; clip: rect(0 0 0 0); overflow: hidden; }

/* Editorial plant profile and gallery. */
.profile-breadcrumb { display: flex; align-items: center; gap: 6px; margin-bottom: 20px; color: var(--bahaar-muted); font-size: .78rem; }
.profile-breadcrumb__separator { width: 16px; height: 16px; display: inline-grid; place-items: center; color: #8b9890; }
.profile-breadcrumb__separator .bahaar-icon { width: 14px; height: 14px; }
.profile-hero .section-kicker { display: inline-flex; align-items: center; gap: 6px; }
.plant-gallery { min-width: 0; }
.plant-gallery__main { width: 100%; display: block; position: relative; padding: 0; overflow: hidden; border: 0; border-radius: 180px 180px 24px 24px; background: var(--bahaar-mint); cursor: zoom-in; }
.plant-gallery__main img { width: 100%; aspect-ratio: 1; object-fit: cover; transition: transform 420ms var(--bahaar-ease); }
.plant-gallery__main:hover img { transform: scale(1.02); }
.plant-gallery__main > span { position: absolute; bottom: 14px; left: 14px; min-height: 38px; display: flex; align-items: center; gap: 7px; padding: 6px 11px; color: var(--bahaar-white); border-radius: 11px; background: rgba(12,45,31,.82); backdrop-filter: blur(8px); font-size: .72rem; }
.plant-gallery__thumbs { display: flex; gap: 8px; margin-top: 10px; overflow-x: auto; scroll-snap-type: x proximity; }
.plant-gallery__thumbs button { width: 70px; height: 58px; flex: 0 0 auto; padding: 0; overflow: hidden; border: 2px solid transparent; border-radius: 11px; background: transparent; cursor: pointer; scroll-snap-align: start; }
.plant-gallery__thumbs button:hover, .plant-gallery__thumbs button:focus-visible { border-color: var(--bahaar-leaf); }
.plant-gallery__thumbs img { width: 100%; height: 100%; object-fit: cover; }
.plant-quick-summary { padding-block: 35px; border-block: 1px solid var(--bahaar-line); background: var(--bahaar-white); }
.plant-quick-summary__head { margin-bottom: 20px; }
.plant-quick-summary__head span { color: var(--bahaar-leaf); font-size: .7rem; font-weight: 700; }
.plant-quick-summary__head h2 { margin: 1px 0 0; color: var(--bahaar-forest); font-size: 1.35rem; }
.plant-quick-summary .plant-facts__grid { grid-template-columns: repeat(5,minmax(0,1fr)); gap: 1px; border: 1px solid var(--bahaar-line); border-radius: 18px; background: var(--bahaar-line); overflow: hidden; }
.plant-quick-summary .plant-fact { min-width: 0; padding: 15px; border: 0; background: var(--bahaar-white); }
.plant-fact dt { display: flex; align-items: center; gap: 7px; color: var(--bahaar-muted); font-size: .68rem; }
.plant-fact dt .bahaar-icon { color: var(--bahaar-earth); }
.plant-fact dd { margin: 6px 0 0; color: var(--bahaar-forest); font-size: .78rem; font-weight: 700; line-height: 1.75; overflow-wrap: anywhere; }
.profile-layout { grid-template-columns: minmax(0,820px) 280px; align-items: start; gap: 52px; }
.profile-introduction { margin-bottom: 44px !important; }
.plant-care-sections { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); column-gap: 34px; row-gap: 0; }
.profile-content,
.plant-care-sections,
.profile-section,
.profile-section > div { min-width: 0; }
.profile-content :where(p, li, a, dd) { overflow-wrap: anywhere; }
.profile-section { padding: 0 0 34px; border-bottom: 1px solid var(--bahaar-line); }
.profile-section + .profile-section { padding-top: 34px; }
.profile-section h2 { display: flex; align-items: center; gap: 9px; }
.profile-section h2 .bahaar-icon { color: var(--bahaar-earth); }
.profile-aside__card { padding: 24px; border: 1px solid var(--bahaar-line); border-radius: 18px; background: var(--bahaar-white); }
.profile-reviewed { display: flex; gap: 6px; }
.profile-aside__help { background: var(--bahaar-mint); }
.gallery-dialog { width: 100%; max-width: none; height: 100%; max-height: none; margin: 0; padding: 0; color: white; border: 0; background: rgba(6,24,16,.96); }
.gallery-dialog__bar { height: 68px; display: flex; align-items: center; justify-content: space-between; padding-inline: 22px; }
.gallery-dialog__bar .icon-button { color: white; border-color: rgba(255,255,255,.25); background: transparent; }
.gallery-dialog__stage { height: calc(100dvh - 68px); display: grid; grid-template-columns: 54px minmax(0,1fr) 54px; align-items: center; gap: 14px; padding: 16px; }
.gallery-dialog__stage > button { width: 50px; height: 50px; display: grid; place-items: center; color: white; border: 1px solid rgba(255,255,255,.22); border-radius: 50%; background: rgba(255,255,255,.08); cursor: pointer; }
.gallery-dialog figure { min-width: 0; margin: 0; text-align: center; }
.gallery-dialog figure img { max-width: 100%; max-height: calc(100dvh - 150px); margin: auto; object-fit: contain; }
.gallery-dialog figcaption { margin-top: 10px; color: #bfd0c4; font-size: .75rem; }

/* Educational community experiences. */
.plant-experiences { padding-block: 80px 100px; border-top: 1px solid var(--bahaar-line); background: #edf2e9; }
.experiences-grid { display: grid; grid-template-columns: minmax(0,1fr) 390px; align-items: start; gap: 60px; }
.experiences-list h2 { margin: 8px 0 25px; color: var(--bahaar-forest); font-size: clamp(1.5rem,1.25rem + 1vw,2.1rem); }
.comment-list { display: grid; gap: 12px; padding: 0; margin: 0; list-style: none; }
.experience-card { padding: 20px; border: 1px solid var(--bahaar-line); border-radius: 17px; background: var(--bahaar-white); }
.experience-card header { display: flex; align-items: center; gap: 11px; }
.experience-card .avatar { border-radius: 50%; }
.experience-card header strong, .experience-card header time { display: block; }
.experience-card header time { color: var(--bahaar-muted); font-size: .68rem; }
.experience-card header > span { margin-right: auto; padding: 4px 8px; color: var(--bahaar-leaf); border-radius: 8px; background: var(--bahaar-mint); font-size: .65rem; }
.comment-content { margin-top: 14px; color: #45564a; font-size: var(--bahaar-type-sm); line-height: 2; }
.comment-content p { margin: 0; }
.experiences-empty { display: flex; align-items: center; gap: 12px; padding: 22px; color: var(--bahaar-muted); border: 1px dashed var(--bahaar-line); border-radius: 17px; background: rgba(255,255,255,.55); }
.experiences-empty .bahaar-icon { width: 28px; height: 28px; color: var(--bahaar-leaf); }
.experiences-empty p { margin: 0; }
.experience-form { padding: 26px; border: 1px solid var(--bahaar-line); border-radius: 22px; background: var(--bahaar-white); box-shadow: var(--bahaar-shadow-soft); }
.experience-form h3 { margin: 0 0 4px; color: var(--bahaar-forest); font-size: 1.35rem; }
.comment-form { display: grid; gap: 13px; }
.comment-form p { margin: 0; }
.comment-form label { display: block; margin-bottom: 5px; color: var(--bahaar-forest); font-size: .72rem; font-weight: 700; }
.comment-form textarea { min-height: 130px; resize: vertical; }
.comment-form .comment-form-cookies-consent { display: grid; grid-template-columns: 22px minmax(0,1fr); align-items: start; gap: 9px; }
.comment-form .comment-form-cookies-consent input[type="checkbox"] { width: 22px; height: 22px; min-height: 22px; margin: 2px 0 0; padding: 0; accent-color: var(--bahaar-leaf); }
.comment-form .comment-form-cookies-consent label { margin: 0; color: var(--bahaar-muted); font-size: .67rem; font-weight: 400; line-height: 1.8; }
.comment-form .submit { min-height: 48px; padding: 10px 20px; color: white; border: 0; border-radius: 13px; background: var(--bahaar-leaf); cursor: pointer; font-weight: 700; }
.bahaar-honeypot { position: absolute; right: -10000px; }

/* Intentional footer and lightweight location preview. */
.site-footer { overflow: hidden; background: #0b2d20; }
.footer-cta__copy > span, .footer-kicker { color: var(--bahaar-lime); font-size: .7rem; font-weight: 700; }
.footer-cta__copy h2 { max-width: 720px; margin-top: 4px; }
.footer-map-layout { padding-top: 52px; }
.footer-location { display: grid; grid-template-columns: minmax(320px,.8fr) 1fr; min-height: 300px; overflow: hidden; border: 1px solid rgba(255,255,255,.11); border-radius: 28px; background: rgba(255,255,255,.035); }
.footer-location__preview { min-height: 300px; position: relative; overflow: hidden; background: #dfe7dc; }
.footer-location__preview::before { position: absolute; inset: 0; opacity: .34; background-image: linear-gradient(30deg, transparent 45%, #9fb3a4 46%, #9fb3a4 49%, transparent 50%), linear-gradient(-20deg, transparent 65%, #b6c5b9 66%, #b6c5b9 69%, transparent 70%); background-size: 110px 90px, 160px 120px; content: ""; }
.footer-location__road { height: 16px; position: absolute; right: -10%; left: -10%; border-block: 1px solid rgba(18,61,43,.18); background: rgba(255,255,255,.65); transform: rotate(-14deg); }
.footer-location__road--one { top: 40%; }
.footer-location__road--two { top: 65%; transform: rotate(19deg); }
.footer-location__pin { width: 58px; height: 58px; display: grid; place-items: center; position: absolute; top: 48%; right: 50%; color: white; border: 6px solid rgba(255,255,255,.85); border-radius: 50% 50% 50% 8px; background: var(--bahaar-leaf); box-shadow: 0 12px 30px rgba(18,61,43,.28); transform: translate(50%,-50%) rotate(-45deg); }
.footer-location__pin .bahaar-icon { width: 24px; height: 24px; transform: rotate(45deg); }
.footer-location__preview small { position: absolute; right: 16px; bottom: 15px; padding: 5px 9px; color: var(--bahaar-forest); border-radius: 8px; background: rgba(255,255,255,.85); font-size: .64rem; }
.footer-location__copy { align-self: center; padding: clamp(28px,5vw,60px); }
.footer-location__copy h2 { margin: 5px 0 10px; color: white; font-size: clamp(1.55rem,1.25rem + 1.2vw,2.25rem); }
.footer-location__copy p { max-width: 55ch; margin: 0; color: #a9bdb0; font-size: var(--bahaar-type-sm); }
.route-buttons { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; }
.route-buttons a, .route-buttons > span { min-height: 44px; display: inline-flex; align-items: center; gap: 7px; padding: 8px 12px; color: white; border: 1px solid rgba(255,255,255,.15); border-radius: 12px; background: rgba(255,255,255,.06); font-size: .7rem; }
.route-buttons > span[aria-disabled="true"] { opacity: .43; }
.route-note { min-height: 44px; display: inline-flex; align-items: center; gap: 8px; padding: 9px 12px; margin-top: 18px !important; color: #c1d1c6 !important; border: 1px solid rgba(255,255,255,.12); border-radius: 12px; background: rgba(255,255,255,.045); }
.route-note .bahaar-icon { width: 18px; height: 18px; color: var(--bahaar-lime); }
.footer-main { grid-template-columns: 1.45fr 1fr 1fr 1.1fr; gap: 38px; }
.footer-title { display: flex; align-items: center; gap: 9px; line-height: 1.6; }
.footer-title__icon { width: 30px; height: 30px; display: inline-grid; flex: 0 0 auto; place-items: center; color: var(--bahaar-lime); border: 1px solid rgba(213,220,153,.22); border-radius: 10px 10px 5px 5px; background: rgba(213,220,153,.07); }
.footer-title__icon .bahaar-icon { width: 17px; height: 17px; }
.footer-menu a { gap: 7px; }
.footer-menu .bahaar-icon, .footer-contact .bahaar-icon { width: 16px; height: 16px; color: var(--bahaar-lime); }
.footer-menu--botanical .bahaar-icon { opacity: .85; }
.footer-contact p { display: flex; gap: 7px; }

.post-card__meta span { display: inline-flex; align-items: center; gap: 4px; }
.post-card__meta .bahaar-icon { width: 14px; height: 14px; color: var(--bahaar-earth); }
.home-plant-preview .catalog-grid { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 16px; }
.service-ledger article > span { display: inline-flex; align-items: center; gap: 6px; }
.service-ledger article > span .bahaar-icon { width: 17px; height: 17px; }

@keyframes bahaar-dialog-in { from { opacity: 0; transform: translateY(12px) scale(.985); } to { opacity: 1; transform: none; } }
@keyframes bahaar-spin { to { transform: rotate(1turn); } }
@keyframes bahaar-share-breathe { 0%,100% { box-shadow: 0 14px 34px rgba(16,60,44,.28), 0 0 0 4px rgba(117,149,107,.1), inset 0 1px 0 rgba(255,255,255,.22); } 50% { box-shadow: 0 16px 38px rgba(16,60,44,.32), 0 0 0 8px rgba(117,149,107,.04), inset 0 1px 0 rgba(255,255,255,.22); } }

@media (max-width: 1100px) {
  .encyclopedia-archive .catalog-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .plant-quick-summary .plant-facts__grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .footer-main { grid-template-columns: 1.3fr 1fr; gap: 36px 48px; }
  .footer-brand { grid-row: auto; }
  .home-plant-preview .catalog-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 900px) {
  .archive-hero__grid { grid-template-columns: 1fr; gap: 30px; }
  .encyclopedia-layout { grid-template-columns: 1fr; }
  .filter-toggle { min-height: 44px; display: inline-flex; align-items: center; gap: 7px; padding: 7px 12px; color: var(--bahaar-forest); border: 1px solid var(--bahaar-line); border-radius: 11px; background: var(--bahaar-white); }
  .filter-panel { visibility: hidden; width: min(380px, 92vw); height: 100dvh; position: fixed; z-index: var(--bahaar-z-overlay); top: 0; right: 0; padding: 20px 22px 28px; border-radius: 0; overflow: auto; opacity: 0; transform: translateX(105%); transition: visibility var(--bahaar-motion-base), opacity var(--bahaar-motion-base), transform var(--bahaar-motion-base) var(--bahaar-ease); }
  .filter-panel.is-open { visibility: visible; opacity: 1; transform: none; box-shadow: -20px 0 80px rgba(6,32,21,.25); }
  .filter-panel__head { min-height: 56px; position: sticky; z-index: 2; top: -20px; margin: -20px -22px 8px; padding: 10px 22px; border-bottom: 1px solid var(--bahaar-line); background: rgba(255,255,255,.96); backdrop-filter: blur(12px); }
  .filter-panel__close { width: 44px; height: 44px; display: grid; place-items: center; padding: 0; color: var(--bahaar-forest); border: 1px solid var(--bahaar-line); border-radius: 12px; background: white; }
  body.filters-open::after { position: fixed; z-index: calc(var(--bahaar-z-overlay) - 10); inset: 0; background: rgba(7,29,19,.58); content: ""; }
  .experiences-grid { grid-template-columns: 1fr; gap: 36px; }
  .footer-location { grid-template-columns: 1fr; }
  .footer-location__preview { min-height: 230px; }
}

@media (max-width: 767px) {
  :root { --bahaar-header-height: 64px; --bahaar-control-height: 44px; }
  body { padding-bottom: calc(var(--bahaar-mobile-nav-height) + env(safe-area-inset-bottom)); }
  .site-header { top: 0; margin-top: 0; }
  .admin-bar .site-header { top: 46px; }
  .site-header__inner, .site-header.is-scrolled .site-header__inner { min-height: var(--bahaar-header-height); }
  .site-header .site-brand__mark { width: 35px; height: 41px; }
  .site-header .site-brand__text strong { font-size: 1rem; }
  .site-header .site-brand__text small { display: none; }
  .header-actions { gap: 7px; }
  .mobile-toggle { width: 44px; height: 44px; }
  .search-dialog { width: 100vw; max-width: none; height: 100dvh; max-height: 100dvh; inset: 0; margin: 0; border: 0; border-radius: 0; }
  .search-dialog[open] { display: flex; flex-direction: column; animation: none; }
  .search-dialog__head { flex: 0 0 auto; padding: calc(14px + env(safe-area-inset-top)) 18px 14px; }
  .search-dialog__head h2 { font-size: 1.35rem; }
  .live-search { min-height: 0; display: flex; flex: 1 1 auto; flex-direction: column; padding: 16px 18px calc(18px + env(safe-area-inset-bottom)); overflow: hidden; }
  .live-search__results { max-height: none; min-height: 0; flex: 1 1 auto; padding-bottom: 12px; overflow-y: auto; }
  .live-search__item { grid-template-columns: 50px minmax(0,1fr); }
  .live-search__item em { display: none; }
  .mobile-bottom-nav { height: calc(var(--bahaar-mobile-nav-height) + env(safe-area-inset-bottom)); display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); align-items: start; position: fixed; z-index: var(--bahaar-z-bottom-nav); right: 0; bottom: 0; left: 0; padding: 5px 6px env(safe-area-inset-bottom); border-top: 1px solid rgba(18,61,43,.1); background: rgba(255,255,255,.94); box-shadow: 0 -8px 28px rgba(18,61,43,.07); backdrop-filter: blur(16px); }
  .mobile-bottom-nav a { min-width: 0; min-height: 58px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; position: relative; color: var(--bahaar-muted); border-radius: 10px; font-size: clamp(.6rem,2.6vw,.69rem); line-height: 1.35; }
  .mobile-bottom-nav a .bahaar-icon { width: 21px; height: 21px; stroke-width: 1.9; }
  .mobile-bottom-nav a[aria-current="page"] { color: var(--bahaar-leaf); background: transparent; font-weight: 700; }
  .mobile-bottom-nav a[aria-current="page"]::after { width: 26px; height: 3px; position: absolute; bottom: 1px; border-radius: 999px; background: var(--bahaar-leaf); content: ""; }
  .mobile-bottom-nav__contact .bahaar-icon { width: 25px !important; height: 25px !important; }
  .floating-tools { right: max(14px, env(safe-area-inset-right)); bottom: calc(var(--bahaar-mobile-nav-height) + env(safe-area-inset-bottom) + 14px); left: max(14px, env(safe-area-inset-left)); }
  .scroll-top, .social-fab__trigger { width: 56px; height: 56px; }
  .archive-hero--plants { padding: 2.8rem 0 3.5rem; }
  .archive-hero__grid { gap: 22px; }
  .encyclopedia-search { min-height: 64px; }
  .plant-type-tabs { margin-top: -26px; margin-inline: -20px; padding-inline: 20px; }
  .plant-type-tabs a { min-height: 48px; }
  .encyclopedia-workbench { margin-inline: -5px; padding: 10px; border-radius: 18px; }
  .encyclopedia-toolbar { min-height: 64px; padding: 4px 2px 12px; }
  .encyclopedia-archive .catalog-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; }
  .catalog-card { border-radius: 15px; }
  .catalog-card__body { padding: 12px; }
  .catalog-card__media img { aspect-ratio: 1; }
  .catalog-card h2 { font-size: .96rem; line-height: 1.6; }
  .catalog-card__scientific { font-size: .67rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .catalog-card__care { display: grid; gap: 4px; margin-top: 8px; }
  .catalog-card__care div { min-height: 28px; }
  .catalog-card .text-link { width: 100%; justify-content: space-between; font-size: .65rem; }
  .encyclopedia-archive[data-view="list"] .catalog-card { grid-template-columns: 112px minmax(0,1fr); }
  .encyclopedia-archive[data-view="visual"] .catalog-grid { grid-template-columns: 1fr; }
  .profile-hero { padding-block: 2.4rem 3rem; }
  .profile-hero h1 { font-size: clamp(2.15rem,10vw,3rem); }
  .plant-gallery__main { border-radius: 100px 100px 18px 18px; }
  .plant-quick-summary { padding-block: 28px; }
  .plant-quick-summary .plant-facts__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .plant-quick-summary .plant-fact { padding: 13px 11px; }
  .plant-care-sections { grid-template-columns: minmax(0,1fr); }
  .profile-section { padding-bottom: 28px; }
  .profile-section + .profile-section { padding-top: 28px; }
  .profile-content p { font-size: 1rem; line-height: 2.05; }
  .plant-experiences { padding-block: 58px; }
  .experience-form { padding: 20px 16px; }
  .gallery-dialog__stage { grid-template-columns: 1fr; padding: 8px; }
  .gallery-dialog__stage > button { position: absolute; z-index: 2; top: 50%; }
  .gallery-dialog__stage > button:first-child { right: 10px; }
  .gallery-dialog__stage > button:last-child { left: 10px; }
  .footer-cta { padding: 30px 0; }
  .footer-map-layout { padding-top: 28px; }
  .footer-location { border-radius: 20px; }
  .footer-location__copy { padding: 26px 20px; }
  .route-buttons { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); }
  .route-buttons a, .route-buttons > span { justify-content: center; padding-inline: 6px; }
  .footer-main { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 24px; padding: 38px 0 28px; }
  .footer-brand { grid-column: 1 / -1; padding-bottom: 26px; }
  .footer-contact { grid-column: 1 / -1; padding-top: 24px; border-top: 1px solid rgba(255,255,255,.1); }
  .footer-column:not(.footer-brand) { padding-bottom: 18px; }
  .footer-title { min-height: 40px; margin-bottom: 8px; }
  .footer-title__icon { width: 28px; height: 28px; }
  .footer-menu a { min-height: 40px; }
  .footer-bottom { flex-direction: column; padding-bottom: 24px; }
}

@media (max-width: 340px) {
  .encyclopedia-archive .catalog-grid { grid-template-columns: 1fr; }
  .home-plant-preview .catalog-grid { grid-template-columns: 1fr; }
  .mobile-bottom-nav a { font-size: .55rem; }
  .mobile-bottom-nav__contact span { max-width: 60px; text-align: center; }
}

@media (min-width: 341px) and (max-width: 430px) {
  .catalog-card__care div:nth-child(n+2) { display: none; }
  .catalog-card__care dd { font-size: .65rem; }
  .catalog-card .text-link { font-size: .68rem; }
}

@keyframes bahaar-sheet-in { from { opacity: 0; transform: translateY(100%); } to { opacity: 1; transform: none; } }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* Brand platform — 2026 identity system */
.section-shell { padding-block: clamp(4.5rem, 7vw, 7.5rem); }
.section-kicker { display: inline-flex; align-items: center; gap: 10px; color: var(--bahaar-leaf); font-size: var(--bahaar-type-xs); font-weight: 700; }
.section-kicker::before { width: 26px; height: 1px; background: currentColor; content: ""; }
.section-kicker--light { color: var(--bahaar-lime); }
.section-heading { display: flex; align-items: end; justify-content: space-between; gap: 36px; margin-bottom: clamp(2rem, 4vw, 3.5rem); }
.section-heading h2,
.statement-grid h2,
.tea-panel h2,
.knowledge-copy h2,
.ai-panel h2,
.organization-panel h2,
.final-contact h2,
.inner-hero h1,
.history-ready h2 { margin: 10px 0 0; color: var(--bahaar-forest); font-size: var(--bahaar-heading-md); line-height: 1.55; letter-spacing: -.035em; }
.section-heading > p { max-width: 460px; margin: 0; color: var(--bahaar-muted); }
.text-link { min-height: 44px; display: inline-flex; align-items: center; gap: 8px; color: var(--bahaar-leaf); font-size: var(--bahaar-type-sm); font-weight: 700; }
.text-link span { transition: transform 180ms ease; }
.text-link:hover span { transform: translateX(-4px); }
.bahaar-button--ghost { color: var(--bahaar-forest); border-color: var(--bahaar-line); background: transparent; }
.bahaar-button--ghost:hover { color: var(--bahaar-forest); border-color: var(--bahaar-leaf); background: var(--bahaar-mint); }
.bahaar-button--light { color: var(--bahaar-forest); background: var(--bahaar-lime); }
.button-row { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }

.brand-hero { min-height: 720px; padding-block: clamp(3rem, 6vw, 6.5rem); overflow: hidden; position: relative; background: #f3f2e9; }
.brand-hero::after { width: 56vw; height: 100%; position: absolute; z-index: 0; inset: 0 auto 0 0; opacity: .45; background: repeating-linear-gradient(90deg, transparent 0 74px, rgba(16,60,44,.065) 74px 75px); content: ""; pointer-events: none; }
.brand-hero__grid { display: grid; grid-template-columns: minmax(0, .92fr) minmax(420px, 1.08fr); align-items: center; gap: clamp(42px, 6vw, 86px); position: relative; z-index: 1; }
.brand-hero__copy h1 { margin: 14px 0 20px; color: var(--bahaar-forest); font-size: clamp(2.8rem, 2rem + 3.5vw, 5.5rem); line-height: 1.25; letter-spacing: -.065em; }
.brand-hero__copy h1 em { color: var(--bahaar-earth); font-style: normal; }
.brand-hero__copy > p { max-width: 620px; margin: 0; color: var(--bahaar-muted); font-size: var(--bahaar-type-lg); line-height: 2.1; }
.brand-hero__visual { min-width: 0; position: relative; }
.brand-hero__image { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; border-radius: 220px 220px 26px 26px; box-shadow: 0 28px 70px rgba(16,60,44,.16); }
.greenhouse-stamp { width: 180px; min-height: 180px; display: grid; align-content: center; position: absolute; inset: auto auto 24px -34px; padding: 22px; color: #fff; border: 8px solid #f3f2e9; border-radius: 50%; background: var(--bahaar-forest); text-align: center; }
.greenhouse-stamp span { color: var(--bahaar-lime); font-size: .7rem; }
.greenhouse-stamp strong { margin-top: 4px; font-size: 1rem; line-height: 1.75; }
.hero-facts { display: flex; flex-wrap: wrap; gap: 8px 24px; padding: 24px 0 0; margin: 30px 0 0; border-top: 1px solid var(--bahaar-line); list-style: none; }
.hero-facts li { display: flex; align-items: center; gap: 8px; color: var(--bahaar-muted); font-size: var(--bahaar-type-xs); font-weight: 700; }
.hero-facts li::before { width: 7px; height: 7px; border-radius: 50%; background: var(--bahaar-sprout); content: ""; }

.brand-intro { background: var(--bahaar-white); }
.statement-grid { display: grid; grid-template-columns: minmax(280px, .8fr) minmax(0, 1.2fr); gap: clamp(45px, 9vw, 140px); }
.statement-grid p { margin: 0 0 18px; color: var(--bahaar-muted); font-size: var(--bahaar-type-lg); line-height: 2.15; }
.tea-section { background: var(--bahaar-paper); }
.tea-panel { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(320px, .92fr); overflow: hidden; border: 1px solid #d8d7cc; border-radius: 34px; background: #f0ecdf; }
.tea-panel__image img { width: 100%; height: 100%; min-height: 560px; object-fit: cover; }
.tea-panel__copy { align-self: center; padding: clamp(36px, 6vw, 78px); }
.tea-panel__copy p { margin: 0 0 16px; color: #59635d; line-height: 2.15; }
.tea-panel__copy .bahaar-button { margin-top: 14px; }

.services-section { background: var(--bahaar-white); }
.service-ledger { border-top: 1px solid var(--bahaar-line); }
.service-ledger article { display: grid; grid-template-columns: 150px minmax(210px,.75fr) minmax(300px,1fr) auto; align-items: center; gap: 28px; padding: 32px 0; border-bottom: 1px solid var(--bahaar-line); transition: padding 180ms ease, background 180ms ease; }
.service-ledger article:hover { padding-inline: 18px; background: #fafbf8; }
.service-ledger span { color: var(--bahaar-earth); font-size: var(--bahaar-type-xs); font-weight: 700; }
.service-ledger h3 { margin: 0; color: var(--bahaar-forest); font-size: var(--bahaar-heading-sm); }
.service-ledger p { margin: 0; color: var(--bahaar-muted); font-size: var(--bahaar-type-sm); }
.service-ledger a { min-height: 44px; display: inline-flex; align-items: center; color: var(--bahaar-leaf); font-size: var(--bahaar-type-xs); font-weight: 700; }

.knowledge-section { color: #d7e4da; background: var(--bahaar-forest); }
.knowledge-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(320px,.85fr); align-items: center; gap: clamp(50px, 9vw, 130px); }
.knowledge-copy h2 { color: white; }
.knowledge-copy p { max-width: 650px; margin: 18px 0 28px; color: #bfd0c4; font-size: var(--bahaar-type-lg); }
.knowledge-map { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); position: relative; border: 1px solid rgba(255,255,255,.16); border-radius: 180px 180px 20px 20px; }
.knowledge-map::before { width: 1px; position: absolute; inset: 0 50% 0 auto; background: rgba(255,255,255,.13); content: ""; }
.knowledge-map span { min-height: 112px; display: grid; place-items: center; padding: 20px; border-bottom: 1px solid rgba(255,255,255,.13); color: #e7eee8; font-size: var(--bahaar-type-sm); text-align: center; }
.knowledge-map span:nth-last-child(-n+2) { border-bottom: 0; }

.ai-section { background: var(--bahaar-paper); }
.ai-panel { display: grid; grid-template-columns: 280px minmax(0,1fr); align-items: center; gap: clamp(36px, 7vw, 94px); padding: clamp(36px, 6vw, 74px); border: 1px solid #cddbd2; border-radius: 30px; background: linear-gradient(135deg,#edf3ee,#fff 70%); }
.ai-panel > div:last-child { max-width: 760px; }
.ai-panel p { color: var(--bahaar-muted); font-size: var(--bahaar-type-lg); }
.ai-orbit { width: 230px; aspect-ratio: 1; display: grid; place-items: center; position: relative; margin-inline: auto; border: 1px solid #a9c1b2; border-radius: 50%; }
.ai-orbit::before, .ai-orbit::after { position: absolute; border: 1px solid #c3d4c9; border-radius: 50%; content: ""; }
.ai-orbit::before { width: 72%; height: 72%; }
.ai-orbit::after { width: 118%; height: 40%; }
.ai-orbit span { width: 9px; height: 9px; position: absolute; inset: 12% 18% auto auto; border-radius: 50%; background: var(--bahaar-earth); box-shadow: 0 0 0 6px var(--bahaar-earth-soft); }
.ai-orbit svg { width: 74px; fill: none; stroke: var(--bahaar-leaf); stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }

.projects-preview { background: var(--bahaar-white); }
.catalog-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
.catalog-card__placeholder { min-height: 260px; display: grid; place-items: center; color: var(--bahaar-sprout); background: repeating-linear-gradient(90deg,transparent 0 52px,rgba(16,60,44,.04) 52px 53px),var(--bahaar-mint); }
.catalog-card__placeholder svg { width: 70px; fill: none; stroke: currentColor; stroke-width: 1.5; }
.editorial-empty { padding: clamp(36px,6vw,68px); border: 1px dashed #aebfaf; border-radius: 24px; background: var(--bahaar-mint); text-align: center; }
.editorial-empty strong { display: block; color: var(--bahaar-forest); font-size: var(--bahaar-heading-sm); }
.editorial-empty p { max-width: 650px; margin: 12px auto; color: var(--bahaar-muted); }
.editorial-empty a { color: var(--bahaar-leaf); font-weight: 700; }
.magazine-preview { background: var(--bahaar-paper); }

.organization-panel { display: grid; grid-template-columns: .85fr 1.15fr; gap: clamp(40px,8vw,120px); padding: clamp(40px,6vw,72px); border-radius: 30px; background: var(--bahaar-earth-soft); }
.organization-panel p { margin: 0 0 24px; color: #625a52; font-size: var(--bahaar-type-lg); }
.future-story { background: white; }
.instagram-section { padding-top: 0; background: white; }
.instagram-panel { display: grid; grid-template-columns: .85fr 1.15fr; align-items: center; gap: 50px; padding: clamp(36px,5vw,62px); color: #cbdad0; border-radius: 30px; background: #173d2f; }
.instagram-panel h2 { margin: 10px 0; color: white; font-size: var(--bahaar-heading-md); line-height: 1.5; }
.instagram-panel p { color: #b5c7bb; }
.instagram-mosaic { display: grid; grid-template-columns: repeat(4,1fr); gap: 7px; }
.instagram-mosaic img { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: 12px; }
.final-contact { color: white; background: var(--bahaar-leaf); text-align: center; }
.final-contact__inner { max-width: 900px; }
.final-contact span { color: var(--bahaar-lime); font-size: var(--bahaar-type-sm); }
.final-contact h2 { margin: 12px auto 28px; color: white; }
.final-contact .bahaar-button { color: var(--bahaar-forest); background: white; }

.footer-slogan { color: var(--bahaar-lime); font-weight: 700; }
.inner-hero { padding-block: clamp(3.5rem,7vw,7rem); background: #f0eee4; }
.inner-hero__grid { display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; gap: clamp(40px,8vw,110px); }
.inner-hero h1 { font-size: clamp(2.5rem,1.8rem + 3vw,4.8rem); }
.inner-hero p { color: var(--bahaar-muted); font-size: var(--bahaar-type-lg); }
.inner-hero img { width: 100%; aspect-ratio: 4/3.5; object-fit: cover; border-radius: 160px 160px 24px 24px; }
.value-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; }
.value-grid article { padding: 30px; border-top: 3px solid var(--bahaar-sprout); background: white; box-shadow: var(--bahaar-shadow-soft); }
.value-grid h3 { margin: 0 0 10px; color: var(--bahaar-forest); }
.value-grid p { margin: 0; color: var(--bahaar-muted); }
.history-ready { color: #c9dad0; background: var(--bahaar-forest); }
.history-ready h2 { color: white; }
.history-ready > .container > p { max-width: 820px; color: #bdcec3; font-size: var(--bahaar-type-lg); }
.history-slots { display: grid; grid-template-columns: repeat(4,1fr); gap: 10px; margin-top: 34px; }
.history-slots span { min-height: 100px; display: grid; place-items: center; padding: 18px; border: 1px solid rgba(255,255,255,.15); border-radius: 16px; text-align: center; }

.archive-hero--projects { background: var(--bahaar-earth-soft); }
.taxonomy-filter { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 32px; }
.taxonomy-filter a { min-height: 44px; display: inline-flex; align-items: center; padding: 8px 15px; border: 1px solid var(--bahaar-line); border-radius: 999px; background: white; font-size: var(--bahaar-type-xs); }
.profile-hero { padding-block: clamp(3rem,5.8vw,5.5rem); background: #edf2e9; }
.profile-hero__grid { display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; gap: clamp(40px,8vw,110px); }
.profile-hero h1, .project-hero h1 { margin: 12px 0; color: var(--bahaar-forest); font-size: clamp(2.5rem,1.9rem + 2.6vw,4.45rem); line-height: 1.35; }
.scientific-name { margin: 0 0 18px; color: var(--bahaar-earth); font-family: Georgia,serif; font-size: 1.25rem; text-align: right; }
.profile-summary { color: var(--bahaar-muted); font-size: var(--bahaar-type-lg); }
.profile-hero__links { display: flex; align-items: center; gap: 20px; margin-top: 25px; }
.profile-hero__media img { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: 180px 180px 24px 24px; }
.plant-facts { border-block: 1px solid var(--bahaar-line); background: white; }
.plant-facts__grid { display: grid; grid-template-columns: repeat(5,1fr); }
.plant-facts__grid div { padding: 28px 20px; border-left: 1px solid var(--bahaar-line); }
.plant-facts__grid div:last-child { border-left: 0; }
.plant-facts span { display: block; color: var(--bahaar-muted); font-size: var(--bahaar-type-xs); }
.plant-facts strong { display: block; margin-top: 5px; color: var(--bahaar-forest); font-size: var(--bahaar-type-sm); }
.profile-layout { display: grid; grid-template-columns: minmax(0,820px) 280px; justify-content: center; gap: 52px; padding-block: 62px 90px; }
.profile-content h2 { margin: 0 0 12px; color: var(--bahaar-forest); font-size: clamp(1.3rem,1.18rem + .58vw,1.7rem); }
.profile-content section { margin-bottom: 0; }
.profile-content p, .profile-content .entry-content { color: #4e5c54; font-size: var(--bahaar-type-lg); line-height: 2.15; }
.profile-aside { align-self: start; display: grid; gap: 14px; position: sticky; top: 126px; }
.profile-aside > div { padding: 24px; border: 1px solid var(--bahaar-line); border-radius: 18px; background: white; }
.profile-aside strong { color: var(--bahaar-forest); }
.profile-aside dl { margin: 15px 0; }
.profile-aside dt { color: var(--bahaar-muted); font-size: .72rem; }
.profile-aside dd { margin: 0 0 12px; color: var(--bahaar-forest); font-size: var(--bahaar-type-sm); font-weight: 700; }
.profile-aside p { color: var(--bahaar-muted); font-size: var(--bahaar-type-xs); }
.profile-reviewed { padding-top: 12px; border-top: 1px solid var(--bahaar-line); }
.project-hero { padding: 70px 0 42px; text-align: center; }
.project-meta { display: flex; justify-content: center; flex-wrap: wrap; gap: 10px 25px; color: var(--bahaar-muted); font-size: var(--bahaar-type-sm); }
.project-layout { display: grid; grid-template-columns: minmax(0,760px) 260px; justify-content: center; gap: 70px; padding-bottom: 100px; }

@media (max-width: 1024px) {
  .brand-hero__grid, .inner-hero__grid, .profile-hero__grid { grid-template-columns: 1fr 1fr; gap: 40px; }
  .service-ledger article { grid-template-columns: 100px 1fr 1.2fr; }
  .service-ledger article a { grid-column: 2 / -1; }
  .catalog-grid { grid-template-columns: repeat(2,1fr); }
  .profile-layout, .project-layout { grid-template-columns: minmax(0,760px); }
  .profile-aside { position: static; grid-template-columns: repeat(2,1fr); }
}

@media (max-width: 767px) {
  .section-shell { padding-block: 4.25rem; }
  .section-heading { display: block; }
  .section-heading > p, .section-heading > .text-link { margin-top: 14px; }
  .brand-hero { min-height: 0; padding-block: 2.75rem 4.5rem; }
  .brand-hero::after { width: 100%; height: 44%; inset: auto 0 0; }
  .brand-hero__grid, .inner-hero__grid, .profile-hero__grid { grid-template-columns: 1fr; }
  .brand-hero__copy h1 { font-size: clamp(2.55rem,12vw,4rem); }
  .brand-hero__visual { grid-row: 1; }
  .brand-hero__image { aspect-ratio: 4/4.35; border-radius: 120px 120px 20px 20px; }
  .greenhouse-stamp { width: 140px; min-height: 140px; inset: auto auto 12px -4px; border-width: 5px; padding: 14px; }
  .greenhouse-stamp strong { font-size: .82rem; }
  .button-row .bahaar-button { flex: 1 1 100%; }
  .hero-facts { gap: 8px 18px; }
  .statement-grid { grid-template-columns: 1fr; gap: 26px; }
  .tea-panel { grid-template-columns: 1fr; border-radius: 24px; }
  .tea-panel__image img { min-height: 0; aspect-ratio: 4/3; }
  .tea-panel__copy { padding: 30px 22px 34px; }
  .tea-panel__copy .bahaar-button { width: 100%; }
  .service-ledger article { display: block; padding: 26px 0; }
  .service-ledger h3 { margin: 8px 0; }
  .service-ledger a { margin-top: 10px; }
  .knowledge-grid { grid-template-columns: 1fr; }
  .knowledge-map span { min-height: 88px; padding: 14px; }
  .ai-panel { grid-template-columns: 1fr; padding: 32px 22px; }
  .ai-orbit { width: 170px; }
  .catalog-grid { grid-template-columns: 1fr; }
  .organization-panel, .instagram-panel { grid-template-columns: 1fr; padding: 32px 22px; }
  .instagram-mosaic { grid-template-columns: repeat(2,1fr); }
  .inner-hero { padding-block: 3rem 4rem; }
  .inner-hero h1 { font-size: clamp(2.15rem,9.5vw,2.8rem); }
  .inner-hero > .container > div:last-child { grid-row: 1; }
  .inner-hero img { border-radius: 100px 100px 18px 18px; }
  .value-grid { grid-template-columns: 1fr; }
  .history-slots { grid-template-columns: repeat(2,1fr); }
  .plant-facts__grid { grid-template-columns: repeat(2,1fr); }
  .plant-facts__grid div { border-bottom: 1px solid var(--bahaar-line); }
  .profile-layout, .project-layout { padding-block: 48px 70px; }
  .profile-aside { grid-template-columns: 1fr; }
  .profile-hero__links { align-items: stretch; flex-direction: column; gap: 8px; }
  .profile-hero__links .bahaar-button { width: 100%; }
}

@media (max-width: 374px) {
  .brand-hero__copy h1 { font-size: 2.35rem; }
  .greenhouse-stamp { width: 124px; min-height: 124px; }
  .history-slots { grid-template-columns: 1fr; }
  .plant-facts__grid { grid-template-columns: 1fr; }
}
