/* FoodRegime: jade, warm white and restrained gold. */
:root {
  --fr-primary: #08786d;
  --fr-primary-dark: #07594f;
  --fr-accent: #d99a32;
  --fr-ink: #183e37;
  --fr-muted: #536c66;
  --fr-border: #dce8e1;
  --fr-bg: #f6f8f4;
  --fr-surface: #fff;
  --link-color: #08786d;
}
.container-header { background: #fff !important; border-bottom-color: #dce8e1; }
.container-header .brand-logo { gap: 14px !important; }
.container-header .brand-logo > span {
  font-family: "VazirFoodRegime", Tahoma, sans-serif !important;
  font-size: 36px !important;
  font-weight: 900 !important;
  line-height: 1.55;
  color: #183e37 !important;
  white-space: nowrap;
}
.container-header .brand-logo::before {
  width: 32px !important;
  height: 38px !important;
  border: 0 !important;
  border-radius: 24px 4px 24px 4px !important;
  background: linear-gradient(145deg, #278d74, #07594f);
  box-shadow: inset -3px -3px 0 rgba(255,255,255,.18);
  transform: rotate(-12deg);
  flex-shrink: 0;
}
.container-header .site-description { font-size: 13px; color: #536c66; margin-top: 2px; }
.fr-home-hero { background: linear-gradient(120deg, #fff 45%, #edf5ed) !important; }
.fr-home-hero__panel a { background: #fff !important; border-color: #dce8e1 !important; }
.fr-topic-card, .fr-product-card, .fr-article-card { background: #fff; }
.fr-button--primary { background: #08786d !important; color: #fff !important; }
.container-header .mod-menu a:hover { background: #edf5ef; color: #07594f; }
body.site :focus-visible { outline: 3px solid #ad761c; outline-offset: 3px; }
@media (max-width: 767px) {
  .container-header .brand-logo > span { font-size: 28px !important; }
  .container-header .brand-logo::before { width: 26px !important; height: 31px !important; }
  .container-header .brand-logo { gap: 10px !important; }
}

/* Shared inner-page visual language */
body.site .site-grid,
body.site main,
body.site .container-component {
  min-width: 0;
}
body.site .container-component {
  padding-block: clamp(18px, 3vw, 40px);
}
body.site .com-content-category-blog,
body.site .com-content-article,
body.site .blog,
body.site .item-page,
body.site .com-users-login,
body.site .com-users-profile,
body.site .com-contact-contact,
body.site .com-search,
body.site .com-finder {
  color: var(--fr-ink);
}
body.site .page-header h1,
body.site .page-header h2,
body.site .item-title,
body.site .componentheading {
  color: var(--fr-ink);
  font-weight: 900;
  letter-spacing: -.025em;
}
body.site .blog-item,
body.site .item-content,
body.site .com-content-article,
body.site .card,
body.site .well {
  border-color: var(--fr-border);
  border-radius: 20px;
}
body.site .blog-item {
  overflow: hidden;
  background: var(--fr-surface);
  box-shadow: 0 9px 28px rgba(24,62,55,.07);
}
body.site .blog-item .item-content { padding: clamp(18px, 3vw, 28px); }
body.site .blog-item img,
body.site .com-content-article img {
  max-width: 100%;
  height: auto;
  border-radius: 14px;
}
body.site .article-info,
body.site .article-info dd,
body.site .text-muted { color: var(--fr-muted) !important; }
body.site .pagination { gap: 6px; justify-content: center; flex-wrap: wrap; }
body.site .pagination .page-link {
  min-width: 42px;
  min-height: 42px;
  display: grid;
  place-items: center;
  border-color: var(--fr-border);
  border-radius: 10px !important;
  color: var(--fr-primary-dark);
  background: #fff;
}
body.site .pagination .active .page-link {
  border-color: var(--fr-primary);
  background: var(--fr-primary);
  color: #fff;
}
body.site input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
body.site select,
body.site textarea {
  max-width: 100%;
  border: 1px solid #bfd4cd;
  border-radius: 11px;
  background: #fff;
  color: var(--fr-ink);
}
body.site input:focus,
body.site select:focus,
body.site textarea:focus {
  border-color: var(--fr-primary);
  box-shadow: 0 0 0 3px rgba(8,120,109,.14);
}
body.site .btn-primary,
body.site button.btn-primary,
body.site input[type="submit"] {
  border-color: var(--fr-primary);
  border-radius: 11px;
  background: var(--fr-primary);
  color: #fff;
  font-weight: 800;
}
body.site .btn-primary:hover,
body.site button.btn-primary:hover,
body.site input[type="submit"]:hover {
  border-color: var(--fr-primary-dark);
  background: var(--fr-primary-dark);
}
body.site .btn-outline-primary {
  border-color: var(--fr-primary);
  color: var(--fr-primary-dark);
  border-radius: 11px;
}
body.site table { width: 100%; border-color: var(--fr-border); }
body.site thead { background: #edf5ef; color: var(--fr-primary-dark); }
body.site .alert-info { border-color: #bcd9d1; background: #edf7f4; color: var(--fr-ink); }
body.site .breadcrumb { color: var(--fr-muted); background: transparent; }

@media (max-width: 767px) {
  body.site { font-size: 15px; line-height: 1.85; }
  body.site .container-component { padding-block: 14px 28px; }
  body.site .page-header h1,
  body.site .page-header h2 { font-size: clamp(1.45rem, 7vw, 2rem); }
  body.site .blog-item .item-content { padding: 16px; }
  body.site table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }
  body.site .btn,
  body.site button,
  body.site input[type="submit"] { min-height: 44px; }
}
