@import url(https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,700;1,400&family=Inter:wght@300;400;500;600;700&display=swap);:root,:host,.sl-theme-light{color-scheme:light;--sl-color-gray-50:hsl(0 0% 97.5%);--sl-color-gray-100:hsl(240 4.8% 95.9%);--sl-color-gray-200:hsl(240 5.9% 90%);--sl-color-gray-300:hsl(240 4.9% 83.9%);--sl-color-gray-400:hsl(240 5% 64.9%);--sl-color-gray-500:hsl(240 3.8% 46.1%);--sl-color-gray-600:hsl(240 5.2% 33.9%);--sl-color-gray-700:hsl(240 5.3% 26.1%);--sl-color-gray-800:hsl(240 3.7% 15.9%);--sl-color-gray-900:hsl(240 5.9% 10%);--sl-color-gray-950:hsl(240 7.3% 8%);--sl-color-red-50:hsl(0 85.7% 97.3%);--sl-color-red-100:hsl(0 93.3% 94.1%);--sl-color-red-200:hsl(0 96.3% 89.4%);--sl-color-red-300:hsl(0 93.5% 81.8%);--sl-color-red-400:hsl(0 90.6% 70.8%);--sl-color-red-500:hsl(0 84.2% 60.2%);--sl-color-red-600:hsl(0 72.2% 50.6%);--sl-color-red-700:hsl(0 73.7% 41.8%);--sl-color-red-800:hsl(0 70% 35.3%);--sl-color-red-900:hsl(0 62.8% 30.6%);--sl-color-red-950:hsl(0 60% 19.6%);--sl-color-orange-50:hsl(33.3 100% 96.5%);--sl-color-orange-100:hsl(34.3 100% 91.8%);--sl-color-orange-200:hsl(32.1 97.7% 83.1%);--sl-color-orange-300:hsl(30.7 97.2% 72.4%);--sl-color-orange-400:hsl(27 96% 61%);--sl-color-orange-500:hsl(24.6 95% 53.1%);--sl-color-orange-600:hsl(20.5 90.2% 48.2%);--sl-color-orange-700:hsl(17.5 88.3% 40.4%);--sl-color-orange-800:hsl(15 79.1% 33.7%);--sl-color-orange-900:hsl(15.3 74.6% 27.8%);--sl-color-orange-950:hsl(15.2 69.1% 19%);--sl-color-amber-50:hsl(48 100% 96.1%);--sl-color-amber-100:hsl(48 96.5% 88.8%);--sl-color-amber-200:hsl(48 96.6% 76.7%);--sl-color-amber-300:hsl(45.9 96.7% 64.5%);--sl-color-amber-400:hsl(43.3 96.4% 56.3%);--sl-color-amber-500:hsl(37.7 92.1% 50.2%);--sl-color-amber-600:hsl(32.1 94.6% 43.7%);--sl-color-amber-700:hsl(26 90.5% 37.1%);--sl-color-amber-800:hsl(22.7 82.5% 31.4%);--sl-color-amber-900:hsl(21.7 77.8% 26.5%);--sl-color-amber-950:hsl(22.9 74.1% 16.7%);--sl-color-yellow-50:hsl(54.5 91.7% 95.3%);--sl-color-yellow-100:hsl(54.9 96.7% 88%);--sl-color-yellow-200:hsl(52.8 98.3% 76.9%);--sl-color-yellow-300:hsl(50.4 97.8% 63.5%);--sl-color-yellow-400:hsl(47.9 95.8% 53.1%);--sl-color-yellow-500:hsl(45.4 93.4% 47.5%);--sl-color-yellow-600:hsl(40.6 96.1% 40.4%);--sl-color-yellow-700:hsl(35.5 91.7% 32.9%);--sl-color-yellow-800:hsl(31.8 81% 28.8%);--sl-color-yellow-900:hsl(28.4 72.5% 25.7%);--sl-color-yellow-950:hsl(33.1 69% 13.9%);--sl-color-lime-50:hsl(78.3 92% 95.1%);--sl-color-lime-100:hsl(79.6 89.1% 89.2%);--sl-color-lime-200:hsl(80.9 88.5% 79.6%);--sl-color-lime-300:hsl(82 84.5% 67.1%);--sl-color-lime-400:hsl(82.7 78% 55.5%);--sl-color-lime-500:hsl(83.7 80.5% 44.3%);--sl-color-lime-600:hsl(84.8 85.2% 34.5%);--sl-color-lime-700:hsl(85.9 78.4% 27.3%);--sl-color-lime-800:hsl(86.3 69% 22.7%);--sl-color-lime-900:hsl(87.6 61.2% 20.2%);--sl-color-lime-950:hsl(86.5 60.6% 13.9%);--sl-color-green-50:hsl(138.5 76.5% 96.7%);--sl-color-green-100:hsl(140.6 84.2% 92.5%);--sl-color-green-200:hsl(141 78.9% 85.1%);--sl-color-green-300:hsl(141.7 76.6% 73.1%);--sl-color-green-400:hsl(141.9 69.2% 58%);--sl-color-green-500:hsl(142.1 70.6% 45.3%);--sl-color-green-600:hsl(142.1 76.2% 36.3%);--sl-color-green-700:hsl(142.4 71.8% 29.2%);--sl-color-green-800:hsl(142.8 64.2% 24.1%);--sl-color-green-900:hsl(143.8 61.2% 20.2%);--sl-color-green-950:hsl(144.3 60.7% 12%);--sl-color-emerald-50:hsl(151.8 81% 95.9%);--sl-color-emerald-100:hsl(149.3 80.4% 90%);--sl-color-emerald-200:hsl(152.4 76% 80.4%);--sl-color-emerald-300:hsl(156.2 71.6% 66.9%);--sl-color-emerald-400:hsl(158.1 64.4% 51.6%);--sl-color-emerald-500:hsl(160.1 84.1% 39.4%);--sl-color-emerald-600:hsl(161.4 93.5% 30.4%);--sl-color-emerald-700:hsl(162.9 93.5% 24.3%);--sl-color-emerald-800:hsl(163.1 88.1% 19.8%);--sl-color-emerald-900:hsl(164.2 85.7% 16.5%);--sl-color-emerald-950:hsl(164.3 87.5% 9.4%);--sl-color-teal-50:hsl(166.2 76.5% 96.7%);--sl-color-teal-100:hsl(167.2 85.5% 89.2%);--sl-color-teal-200:hsl(168.4 83.8% 78.2%);--sl-color-teal-300:hsl(170.6 76.9% 64.3%);--sl-color-teal-400:hsl(172.5 66% 50.4%);--sl-color-teal-500:hsl(173.4 80.4% 40%);--sl-color-teal-600:hsl(174.7 83.9% 31.6%);--sl-color-teal-700:hsl(175.3 77.4% 26.1%);--sl-color-teal-800:hsl(176.1 69.4% 21.8%);--sl-color-teal-900:hsl(175.9 60.8% 19%);--sl-color-teal-950:hsl(176.5 58.6% 11.4%);--sl-color-cyan-50:hsl(183.2 100% 96.3%);--sl-color-cyan-100:hsl(185.1 95.9% 90.4%);--sl-color-cyan-200:hsl(186.2 93.5% 81.8%);--sl-color-cyan-300:hsl(187 92.4% 69%);--sl-color-cyan-400:hsl(187.9 85.7% 53.3%);--sl-color-cyan-500:hsl(188.7 94.5% 42.7%);--sl-color-cyan-600:hsl(191.6 91.4% 36.5%);--sl-color-cyan-700:hsl(192.9 82.3% 31%);--sl-color-cyan-800:hsl(194.4 69.6% 27.1%);--sl-color-cyan-900:hsl(196.4 63.6% 23.7%);--sl-color-cyan-950:hsl(196.8 61% 16.1%);--sl-color-sky-50:hsl(204 100% 97.1%);--sl-color-sky-100:hsl(204 93.8% 93.7%);--sl-color-sky-200:hsl(200.6 94.4% 86.1%);--sl-color-sky-300:hsl(199.4 95.5% 73.9%);--sl-color-sky-400:hsl(198.4 93.2% 59.6%);--sl-color-sky-500:hsl(198.6 88.7% 48.4%);--sl-color-sky-600:hsl(200.4 98% 39.4%);--sl-color-sky-700:hsl(201.3 96.3% 32.2%);--sl-color-sky-800:hsl(201 90% 27.5%);--sl-color-sky-900:hsl(202 80.3% 23.9%);--sl-color-sky-950:hsl(202.3 73.8% 16.5%);--sl-color-blue-50:hsl(213.8 100% 96.9%);--sl-color-blue-100:hsl(214.3 94.6% 92.7%);--sl-color-blue-200:hsl(213.3 96.9% 87.3%);--sl-color-blue-300:hsl(211.7 96.4% 78.4%);--sl-color-blue-400:hsl(213.1 93.9% 67.8%);--sl-color-blue-500:hsl(217.2 91.2% 59.8%);--sl-color-blue-600:hsl(221.2 83.2% 53.3%);--sl-color-blue-700:hsl(224.3 76.3% 48%);--sl-color-blue-800:hsl(225.9 70.7% 40.2%);--sl-color-blue-900:hsl(224.4 64.3% 32.9%);--sl-color-blue-950:hsl(226.2 55.3% 18.4%);--sl-color-indigo-50:hsl(225.9 100% 96.7%);--sl-color-indigo-100:hsl(226.5 100% 93.9%);--sl-color-indigo-200:hsl(228 96.5% 88.8%);--sl-color-indigo-300:hsl(229.7 93.5% 81.8%);--sl-color-indigo-400:hsl(234.5 89.5% 73.9%);--sl-color-indigo-500:hsl(238.7 83.5% 66.7%);--sl-color-indigo-600:hsl(243.4 75.4% 58.6%);--sl-color-indigo-700:hsl(244.5 57.9% 50.6%);--sl-color-indigo-800:hsl(243.7 54.5% 41.4%);--sl-color-indigo-900:hsl(242.2 47.4% 34.3%);--sl-color-indigo-950:hsl(243.5 43.6% 22.9%);--sl-color-violet-50:hsl(250 100% 97.6%);--sl-color-violet-100:hsl(251.4 91.3% 95.5%);--sl-color-violet-200:hsl(250.5 95.2% 91.8%);--sl-color-violet-300:hsl(252.5 94.7% 85.1%);--sl-color-violet-400:hsl(255.1 91.7% 76.3%);--sl-color-violet-500:hsl(258.3 89.5% 66.3%);--sl-color-violet-600:hsl(262.1 83.3% 57.8%);--sl-color-violet-700:hsl(263.4 70% 50.4%);--sl-color-violet-800:hsl(263.4 69.3% 42.2%);--sl-color-violet-900:hsl(263.5 67.4% 34.9%);--sl-color-violet-950:hsl(265.1 61.5% 21.4%);--sl-color-purple-50:hsl(270 100% 98%);--sl-color-purple-100:hsl(268.7 100% 95.5%);--sl-color-purple-200:hsl(268.6 100% 91.8%);--sl-color-purple-300:hsl(269.2 97.4% 85.1%);--sl-color-purple-400:hsl(270 95.2% 75.3%);--sl-color-purple-500:hsl(270.7 91% 65.1%);--sl-color-purple-600:hsl(271.5 81.3% 55.9%);--sl-color-purple-700:hsl(272.1 71.7% 47.1%);--sl-color-purple-800:hsl(272.9 67.2% 39.4%);--sl-color-purple-900:hsl(273.6 65.6% 32%);--sl-color-purple-950:hsl(276 59.5% 16.5%);--sl-color-fuchsia-50:hsl(289.1 100% 97.8%);--sl-color-fuchsia-100:hsl(287 100% 95.5%);--sl-color-fuchsia-200:hsl(288.3 95.8% 90.6%);--sl-color-fuchsia-300:hsl(291.1 93.1% 82.9%);--sl-color-fuchsia-400:hsl(292 91.4% 72.5%);--sl-color-fuchsia-500:hsl(292.2 84.1% 60.6%);--sl-color-fuchsia-600:hsl(293.4 69.5% 48.8%);--sl-color-fuchsia-700:hsl(294.7 72.4% 39.8%);--sl-color-fuchsia-800:hsl(295.4 70.2% 32.9%);--sl-color-fuchsia-900:hsl(296.7 63.6% 28%);--sl-color-fuchsia-950:hsl(297.1 56.8% 14.5%);--sl-color-pink-50:hsl(327.3 73.3% 97.1%);--sl-color-pink-100:hsl(325.7 77.8% 94.7%);--sl-color-pink-200:hsl(325.9 84.6% 89.8%);--sl-color-pink-300:hsl(327.4 87.1% 81.8%);--sl-color-pink-400:hsl(328.6 85.5% 70.2%);--sl-color-pink-500:hsl(330.4 81.2% 60.4%);--sl-color-pink-600:hsl(333.3 71.4% 50.6%);--sl-color-pink-700:hsl(335.1 77.6% 42%);--sl-color-pink-800:hsl(335.8 74.4% 35.3%);--sl-color-pink-900:hsl(335.9 69% 30.4%);--sl-color-pink-950:hsl(336.2 65.4% 15.9%);--sl-color-rose-50:hsl(355.7 100% 97.3%);--sl-color-rose-100:hsl(355.6 100% 94.7%);--sl-color-rose-200:hsl(352.7 96.1% 90%);--sl-color-rose-300:hsl(352.6 95.7% 81.8%);--sl-color-rose-400:hsl(351.3 94.5% 71.4%);--sl-color-rose-500:hsl(349.7 89.2% 60.2%);--sl-color-rose-600:hsl(346.8 77.2% 49.8%);--sl-color-rose-700:hsl(345.3 82.7% 40.8%);--sl-color-rose-800:hsl(343.4 79.7% 34.7%);--sl-color-rose-900:hsl(341.5 75.5% 30.4%);--sl-color-rose-950:hsl(341.3 70.1% 17.1%);--sl-color-primary-50:var(--sl-color-sky-50);--sl-color-primary-100:var(--sl-color-sky-100);--sl-color-primary-200:var(--sl-color-sky-200);--sl-color-primary-300:var(--sl-color-sky-300);--sl-color-primary-400:var(--sl-color-sky-400);--sl-color-primary-500:var(--sl-color-sky-500);--sl-color-primary-600:var(--sl-color-sky-600);--sl-color-primary-700:var(--sl-color-sky-700);--sl-color-primary-800:var(--sl-color-sky-800);--sl-color-primary-900:var(--sl-color-sky-900);--sl-color-primary-950:var(--sl-color-sky-950);--sl-color-success-50:var(--sl-color-green-50);--sl-color-success-100:var(--sl-color-green-100);--sl-color-success-200:var(--sl-color-green-200);--sl-color-success-300:var(--sl-color-green-300);--sl-color-success-400:var(--sl-color-green-400);--sl-color-success-500:var(--sl-color-green-500);--sl-color-success-600:var(--sl-color-green-600);--sl-color-success-700:var(--sl-color-green-700);--sl-color-success-800:var(--sl-color-green-800);--sl-color-success-900:var(--sl-color-green-900);--sl-color-success-950:var(--sl-color-green-950);--sl-color-warning-50:var(--sl-color-amber-50);--sl-color-warning-100:var(--sl-color-amber-100);--sl-color-warning-200:var(--sl-color-amber-200);--sl-color-warning-300:var(--sl-color-amber-300);--sl-color-warning-400:var(--sl-color-amber-400);--sl-color-warning-500:var(--sl-color-amber-500);--sl-color-warning-600:var(--sl-color-amber-600);--sl-color-warning-700:var(--sl-color-amber-700);--sl-color-warning-800:var(--sl-color-amber-800);--sl-color-warning-900:var(--sl-color-amber-900);--sl-color-warning-950:var(--sl-color-amber-950);--sl-color-danger-50:var(--sl-color-red-50);--sl-color-danger-100:var(--sl-color-red-100);--sl-color-danger-200:var(--sl-color-red-200);--sl-color-danger-300:var(--sl-color-red-300);--sl-color-danger-400:var(--sl-color-red-400);--sl-color-danger-500:var(--sl-color-red-500);--sl-color-danger-600:var(--sl-color-red-600);--sl-color-danger-700:var(--sl-color-red-700);--sl-color-danger-800:var(--sl-color-red-800);--sl-color-danger-900:var(--sl-color-red-900);--sl-color-danger-950:var(--sl-color-red-950);--sl-color-neutral-50:var(--sl-color-gray-50);--sl-color-neutral-100:var(--sl-color-gray-100);--sl-color-neutral-200:var(--sl-color-gray-200);--sl-color-neutral-300:var(--sl-color-gray-300);--sl-color-neutral-400:var(--sl-color-gray-400);--sl-color-neutral-500:var(--sl-color-gray-500);--sl-color-neutral-600:var(--sl-color-gray-600);--sl-color-neutral-700:var(--sl-color-gray-700);--sl-color-neutral-800:var(--sl-color-gray-800);--sl-color-neutral-900:var(--sl-color-gray-900);--sl-color-neutral-950:var(--sl-color-gray-950);--sl-color-neutral-0:hsl(0, 0%, 100%);--sl-color-neutral-1000:hsl(0, 0%, 0%);--sl-border-radius-small:0.1875rem;--sl-border-radius-medium:0.25rem;--sl-border-radius-large:0.5rem;--sl-border-radius-x-large:1rem;--sl-border-radius-circle:50%;--sl-border-radius-pill:9999px;--sl-shadow-x-small:0 1px 2px hsl(240 3.8% 46.1% / 6%);--sl-shadow-small:0 1px 2px hsl(240 3.8% 46.1% / 12%);--sl-shadow-medium:0 2px 4px hsl(240 3.8% 46.1% / 12%);--sl-shadow-large:0 2px 8px hsl(240 3.8% 46.1% / 12%);--sl-shadow-x-large:0 4px 16px hsl(240 3.8% 46.1% / 12%);--sl-spacing-3x-small:0.125rem;--sl-spacing-2x-small:0.25rem;--sl-spacing-x-small:0.5rem;--sl-spacing-small:0.75rem;--sl-spacing-medium:1rem;--sl-spacing-large:1.25rem;--sl-spacing-x-large:1.75rem;--sl-spacing-2x-large:2.25rem;--sl-spacing-3x-large:3rem;--sl-spacing-4x-large:4.5rem;--sl-transition-x-slow:1000ms;--sl-transition-slow:500ms;--sl-transition-medium:250ms;--sl-transition-fast:150ms;--sl-transition-x-fast:50ms;--sl-font-mono:SFMono-Regular, Consolas, "Liberation Mono", Menlo, monospace;--sl-font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
    Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji",
    "Segoe UI Symbol";--sl-font-serif:Georgia, "Times New Roman", serif;--sl-font-size-2x-small:0.625rem;--sl-font-size-x-small:0.75rem;--sl-font-size-small:0.875rem;--sl-font-size-medium:1rem;--sl-font-size-large:1.25rem;--sl-font-size-x-large:1.5rem;--sl-font-size-2x-large:2.25rem;--sl-font-size-3x-large:3rem;--sl-font-size-4x-large:4.5rem;--sl-font-weight-light:300;--sl-font-weight-normal:400;--sl-font-weight-semibold:500;--sl-font-weight-bold:700;--sl-letter-spacing-denser:-0.03em;--sl-letter-spacing-dense:-0.015em;--sl-letter-spacing-normal:normal;--sl-letter-spacing-loose:0.075em;--sl-letter-spacing-looser:0.15em;--sl-line-height-denser:1;--sl-line-height-dense:1.4;--sl-line-height-normal:1.8;--sl-line-height-loose:2.2;--sl-line-height-looser:2.6;--sl-focus-ring-color:var(--sl-color-primary-600);--sl-focus-ring-style:solid;--sl-focus-ring-width:3px;--sl-focus-ring:var(--sl-focus-ring-style) var(--sl-focus-ring-width)
    var(--sl-focus-ring-color);--sl-focus-ring-offset:1px;--sl-button-font-size-small:var(--sl-font-size-x-small);--sl-button-font-size-medium:var(--sl-font-size-small);--sl-button-font-size-large:var(--sl-font-size-medium);--sl-input-height-small:1.875rem;--sl-input-height-medium:2.5rem;--sl-input-height-large:3.125rem;--sl-input-background-color:var(--sl-color-neutral-0);--sl-input-background-color-hover:var(--sl-input-background-color);--sl-input-background-color-focus:var(--sl-input-background-color);--sl-input-background-color-disabled:var(--sl-color-neutral-100);--sl-input-border-color:var(--sl-color-neutral-300);--sl-input-border-color-hover:var(--sl-color-neutral-400);--sl-input-border-color-focus:var(--sl-color-primary-500);--sl-input-border-color-disabled:var(--sl-color-neutral-300);--sl-input-border-width:1px;--sl-input-required-content:"*";--sl-input-required-content-offset:-2px;--sl-input-required-content-color:var(--sl-input-label-color);--sl-input-border-radius-small:var(--sl-border-radius-medium);--sl-input-border-radius-medium:var(--sl-border-radius-medium);--sl-input-border-radius-large:var(--sl-border-radius-medium);--sl-input-font-family:var(--sl-font-sans);--sl-input-font-weight:var(--sl-font-weight-normal);--sl-input-font-size-small:var(--sl-font-size-small);--sl-input-font-size-medium:var(--sl-font-size-medium);--sl-input-font-size-large:var(--sl-font-size-large);--sl-input-letter-spacing:var(--sl-letter-spacing-normal);--sl-input-color:var(--sl-color-neutral-700);--sl-input-color-hover:var(--sl-color-neutral-700);--sl-input-color-focus:var(--sl-color-neutral-700);--sl-input-color-disabled:var(--sl-color-neutral-900);--sl-input-icon-color:var(--sl-color-neutral-500);--sl-input-icon-color-hover:var(--sl-color-neutral-600);--sl-input-icon-color-focus:var(--sl-color-neutral-600);--sl-input-placeholder-color:var(--sl-color-neutral-500);--sl-input-placeholder-color-disabled:var(--sl-color-neutral-600);--sl-input-spacing-small:var(--sl-spacing-small);--sl-input-spacing-medium:var(--sl-spacing-medium);--sl-input-spacing-large:var(--sl-spacing-large);--sl-input-focus-ring-color:hsl(198.6 88.7% 48.4% / 40%);--sl-input-focus-ring-offset:0;--sl-input-filled-background-color:var(--sl-color-neutral-100);--sl-input-filled-background-color-hover:var(--sl-color-neutral-100);--sl-input-filled-background-color-focus:var(--sl-color-neutral-100);--sl-input-filled-background-color-disabled:var(--sl-color-neutral-100);--sl-input-filled-color:var(--sl-color-neutral-800);--sl-input-filled-color-hover:var(--sl-color-neutral-800);--sl-input-filled-color-focus:var(--sl-color-neutral-700);--sl-input-filled-color-disabled:var(--sl-color-neutral-800);--sl-input-label-font-size-small:var(--sl-font-size-small);--sl-input-label-font-size-medium:var(--sl-font-size-medium);--sl-input-label-font-size-large:var(--sl-font-size-large);--sl-input-label-color:inherit;--sl-input-help-text-font-size-small:var(--sl-font-size-x-small);--sl-input-help-text-font-size-medium:var(--sl-font-size-small);--sl-input-help-text-font-size-large:var(--sl-font-size-medium);--sl-input-help-text-color:var(--sl-color-neutral-500);--sl-toggle-size-small:0.875rem;--sl-toggle-size-medium:1.125rem;--sl-toggle-size-large:1.375rem;--sl-overlay-background-color:hsl(240 3.8% 46.1% / 33%);--sl-panel-background-color:var(--sl-color-neutral-0);--sl-panel-border-color:var(--sl-color-neutral-200);--sl-panel-border-width:1px;--sl-tooltip-border-radius:var(--sl-border-radius-medium);--sl-tooltip-background-color:var(--sl-color-neutral-800);--sl-tooltip-color:var(--sl-color-neutral-0);--sl-tooltip-font-family:var(--sl-font-sans);--sl-tooltip-font-weight:var(--sl-font-weight-normal);--sl-tooltip-font-size:var(--sl-font-size-small);--sl-tooltip-line-height:var(--sl-line-height-dense);--sl-tooltip-padding:var(--sl-spacing-2x-small) var(--sl-spacing-x-small);--sl-tooltip-arrow-size:6px;--sl-z-index-drawer:700;--sl-z-index-dialog:800;--sl-z-index-dropdown:900;--sl-z-index-toast:950;--sl-z-index-tooltip:1000}@supports (scrollbar-gutter:stable){.sl-scroll-lock{scrollbar-gutter:var(--sl-scroll-lock-gutter)!important}.sl-scroll-lock body{overflow:hidden!important}}@supports not (scrollbar-gutter:stable){.sl-scroll-lock body{padding-right:var(--sl-scroll-lock-size)!important;overflow:hidden!important}}.sl-toast-stack{position:fixed;top:0;inset-inline-end:0;z-index:var(--sl-z-index-toast);width:28rem;max-width:100%;max-height:100%;overflow:auto}.sl-toast-stack sl-alert{margin:var(--sl-spacing-medium)}.sl-toast-stack sl-alert::part(base){box-shadow:var(--sl-shadow-large)}img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px}:root{--wp-block-synced-color:#7a00df;--wp-block-synced-color--rgb:122,0,223;--wp-bound-block-color:var(--wp-block-synced-color);--wp-editor-canvas-background:#ddd;--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,160.5;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.wp-element-button{cursor:pointer}:root .has-very-light-gray-background-color{background-color:#eee}:root .has-very-dark-gray-background-color{background-color:#313131}:root .has-very-light-gray-color{color:#eee}:root .has-very-dark-gray-color{color:#313131}:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background{background:linear-gradient(135deg,#00d084,#0693e3)}:root .has-purple-crush-gradient-background{background:linear-gradient(135deg,#34e2e4,#4721fb 50%,#ab1dfe)}:root .has-hazy-dawn-gradient-background{background:linear-gradient(135deg,#faaca8,#dad0ec)}:root .has-subdued-olive-gradient-background{background:linear-gradient(135deg,#fafae1,#67a671)}:root .has-atomic-cream-gradient-background{background:linear-gradient(135deg,#fdd79a,#004a59)}:root .has-nightshade-gradient-background{background:linear-gradient(135deg,#330968,#31cdcf)}:root .has-midnight-gradient-background{background:linear-gradient(135deg,#020381,#2874fc)}:root{--wp--preset--font-size--normal:16px;--wp--preset--font-size--huge:42px}.has-regular-font-size{font-size:1em}.has-larger-font-size{font-size:2.625em}.has-normal-font-size{font-size:var(--wp--preset--font-size--normal)}.has-huge-font-size{font-size:var(--wp--preset--font-size--huge)}:root .has-text-align-center{text-align:center}:root .has-text-align-left{text-align:left}:root .has-text-align-right{text-align:right}.has-fit-text{white-space:nowrap!important}#end-resizable-editor-section{display:none}.aligncenter{clear:both}.items-justified-left{justify-content:flex-start}.items-justified-center{justify-content:center}.items-justified-right{justify-content:flex-end}.items-justified-space-between{justify-content:space-between}.screen-reader-text{word-wrap:normal!important;border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.screen-reader-text:focus{background-color:#ddd;clip-path:none;color:#444;display:block;font-size:1em;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}html :where(.has-border-color){border-style:solid}html :where([style*=border-color]){border-style:solid}html :where([style*=border-top-color]){border-top-style:solid}html :where([style*=border-right-color]){border-right-style:solid}html :where([style*=border-bottom-color]){border-bottom-style:solid}html :where([style*=border-left-color]){border-left-style:solid}html :where([style*=border-width]){border-style:solid}html :where([style*=border-top-width]){border-top-style:solid}html :where([style*=border-right-width]){border-right-style:solid}html :where([style*=border-bottom-width]){border-bottom-style:solid}html :where([style*=border-left-width]){border-left-style:solid}html :where(img[class*=wp-image-]){height:auto;max-width:100%}:where(figure){margin:0 0 1em}html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:var(--wp-admin--admin-bar--height,0px)}@media screen and (max-width:600px){html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:0px}}
/*! This file is auto-generated */
.wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none}:root{--wp-internal-comment:"Placeholder for wp_hoist_late_printed_styles() to replace with the block styles printed at wp_footer."}.rmp-results-widget p:empty:before,.rmp-widgets-container p:empty:before,.widget_rate-my-post-top-rated-widget p:empty:before{display:none}@font-face{ font-family:ratemypost;src:url(/wp-content/plugins/rate-my-post/public/css/fonts/ratemypost.eot);src:url(/wp-content/plugins/rate-my-post/public/css/fonts/ratemypost.eot#iefix)format("embedded-opentype"),url(/wp-content/plugins/rate-my-post/public/css/fonts/ratemypost.ttf)format("truetype"),url(/wp-content/plugins/rate-my-post/public/css/fonts/ratemypost.woff)format("woff"),url(/wp-content/plugins/rate-my-post/public/css/fonts/ratemypost.svg#ratemypost)format("svg");font-weight:400;font-style:normal;font-display:swap; }[class*=\ rmp-icon--],[class^=rmp-icon--]{speak:none;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-style:normal;font-weight:400;line-height:1;font-family:ratemypost!important}.rmp-widgets-container.rmp-wp-plugin.rmp-main-container{text-align:center;margin:1rem 0}.rmp-widgets-container.rmp-wp-plugin.rmp-main-container p{margin:0}.rmp-widgets-container.rmp-wp-plugin.rmp-main-container .rmp-rating-widget--hidden{display:none}.rmp-widgets-container.rmp-wp-plugin.rmp-main-container .rmp-rating-widget__icons{margin:0 0 .4rem}.rmp-widgets-container.rmp-wp-plugin.rmp-main-container .rmp-rating-widget__icons-list{margin:0;padding:0;list-style-type:none}.rmp-widgets-container.rmp-wp-plugin.rmp-main-container .rmp-rating-widget__icons-list:before{content:""}.rmp-widgets-container.rmp-wp-plugin.rmp-main-container .rmp-rating-widget__icons-list__icon{margin:0;display:inline-block}.rmp-widgets-container.rmp-wp-plugin.rmp-main-container .rmp-rating-widget__hover-text{margin:0 0 .4rem}.rmp-widgets-container.rmp-wp-plugin.rmp-main-container .rmp-rating-widget__submit-btn{display:none}.rmp-widgets-container.rmp-wp-plugin.rmp-main-container .rmp-rating-widget__submit-btn--visible{display:inline-block}.rmp-widgets-container.rmp-wp-plugin.rmp-main-container .rmp-rating-widget__results{margin:0 0 .4rem}.rmp-widgets-container.rmp-wp-plugin.rmp-main-container .rmp-rating-widget__results--hidden{margin:0;display:none}.rmp-widgets-container.rmp-wp-plugin.rmp-main-container .rmp-rating-widget__not-rated{margin:0 0 .4rem}.rmp-widgets-container.rmp-wp-plugin.rmp-main-container .rmp-rating-widget__not-rated--hidden{margin:0;display:none}.rmp-widgets-container.rmp-wp-plugin.rmp-main-container .rmp-rating-widget__msg{margin:.4rem 0}.rmp-widgets-container.rmp-wp-plugin.rmp-main-container .rmp-rating-widget__msg--alert{color:#dc3545}.rmp-widgets-container.rmp-wp-plugin.rmp-main-container .rmp-feedback-widget{display:none}.rmp-widgets-container.rmp-wp-plugin.rmp-main-container .rmp-feedback-widget--visible{display:block}.rmp-widgets-container.rmp-wp-plugin.rmp-main-container .rmp-feedback-widget__text{margin:0 0 .4rem}.rmp-widgets-container.rmp-wp-plugin.rmp-main-container .rmp-feedback-widget__input{min-width:250px;max-width:630px;margin-bottom:.4rem;margin-left:auto;margin-right:auto;display:block}.rmp-widgets-container.rmp-wp-plugin.rmp-main-container .rmp-feedback-widget__msg--alert{color:#dc3545}.rmp-widgets-container.rmp-wp-plugin.rmp-main-container .rmp-feedback-widget__loader{width:80px;height:40px;display:none;position:relative;left:50%;transform:translate(-50%)}.rmp-widgets-container.rmp-wp-plugin.rmp-main-container .rmp-feedback-widget__loader--visible{display:block}.rmp-widgets-container.rmp-wp-plugin.rmp-main-container .rmp-feedback-widget__loader div{background:#ffcc36;width:16px;animation:1.2s cubic-bezier(0,.5,.5,1) infinite rmp-feedback-widget__loader;display:inline-block;position:absolute;left:8px}.rmp-widgets-container.rmp-wp-plugin.rmp-main-container .rmp-feedback-widget__loader div:first-child{animation-delay:-.24s;left:8px}.rmp-widgets-container.rmp-wp-plugin.rmp-main-container .rmp-feedback-widget__loader div:nth-child(2){animation-delay:-.12s;left:32px}.rmp-widgets-container.rmp-wp-plugin.rmp-main-container .rmp-feedback-widget__loader div:nth-child(3){animation-delay:0;left:56px}.rmp-widgets-container.rmp-wp-plugin.rmp-main-container .rmp-social-widget{display:none}.rmp-widgets-container.rmp-wp-plugin.rmp-main-container .rmp-social-widget--visible{display:block}.rmp-widgets-container.rmp-wp-plugin.rmp-main-container .rmp-social-widget a{color:#fff}.rmp-tr-posts-widget__post{margin-top:6px}.rmp-tr-posts-widget__post p{margin-bottom:1.5rem!important}.rmp-tr-posts-widget__star-rating{font-size:14px}.rmp-tr-posts-widget__star-rating p{margin:0;padding:0}.rmp-tr-posts-widget__img{-o-object-fit:cover;object-fit:cover;width:150px;height:150px;display:block}.rmp-tr-posts-widget__link{box-shadow:none;text-decoration:none;display:block}.rmp-icon--star:before{content:""}.rmp-icon--heart:before{content:""}.rmp-icon--trophy:before{content:""}.rmp-icon--smile-o:before{content:""}.rmp-icon--thumbs-up:before{content:""}.rmp-icon--twitter{color:#fff;background:#55acee}.rmp-icon--twitter:before{content:""}.rmp-icon--facebook{color:#fff;background:#3b5998}.rmp-icon--facebook:before,.rmp-icon--facebook-f:before{content:""}.rmp-icon--pinterest{color:#fff;background:#cb2027}.rmp-icon--pinterest:before{content:""}.rmp-icon--linkedin{color:#fff;background:#007bb5}.rmp-icon--linkedin:before{content:""}.rmp-icon--youtube-square{color:#fff;background:#b00}.rmp-icon--youtube-square:before{content:""}.rmp-icon--instagram{color:#fff;background:#125688}.rmp-icon--instagram:before{content:""}.rmp-icon--flickr{color:#fff;background:#f40083}.rmp-icon--flickr:before{content:""}.rmp-icon--reddit{color:#fff;background:#ff5700}.rmp-icon--reddit:before{content:""}.rmp-icon--ratings{color:#ccc;font-size:1rem}.rmp-rating-widget .rmp-icon--ratings{font-size:2.5rem}.rmp-icon--full-highlight{color:#ff912c}.rmp-rating-widget .rmp-icon--full-highlight{color:#ffe699}.rmp-icon--half-highlight{background:linear-gradient(90deg,#ff912c 50%,#ccc 50%);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.rmp-rating-widget .rmp-icon--half-highlight{background:linear-gradient(90deg,#ffe699 50%,#ccc 50%);-webkit-text-fill-color:transparent;-webkit-background-clip:text}@media (hover:hover){.rmp-rating-widget .rmp-icon--hovered{color:#ffcc36;-webkit-background-clip:initial;-webkit-text-fill-color:initial;background:0 0;transition:color .1s ease-in}}.rmp-rating-widget .rmp-icon--processing-rating{color:#ff912c;-webkit-background-clip:initial;-webkit-text-fill-color:initial;background:0 0}.rmp-social-widget .rmp-icon--social{text-align:center;width:70px;box-shadow:none;border-radius:50%;margin:5px 2px;padding:20px;font-family:ratemypost;font-size:30px;text-decoration:none;transition-property:none;display:inline-block}.rmp-social-widget .rmp-icon--social:hover{filter:contrast(140%);color:#fff;box-shadow:none;text-decoration:none;transition-property:none}.rmp-heading{margin:0 0 .4rem}.rmp-heading--title{font-size:1.625rem;font-weight:400}.rmp-widgets-container.rmp-wp-plugin.rmp-main-container .rmp-heading{margin:0 0 .4rem}.rmp-btn{color:#fff;background-color:#ffcc36;border:none;margin-bottom:.4rem;padding:.5rem;font-size:1rem;text-decoration:none}.rmp-btn:focus,.rmp-btn:hover{background:initial;color:#fff;cursor:pointer;background-color:#ffd966;border:none;margin-bottom:.4rem;padding:.5rem;font-size:1rem;text-decoration:none}.rmp-btn--large,.rmp-btn--large:focus,.rmp-btn--large:hover{padding:.8rem}.rmp-results-widget__visual-rating{margin-right:.3rem;display:inline-block;position:relative}.rmp-results-widget__avg-rating,.rmp-results-widget__vote-count{display:inline-block}.rmp-archive-results-widget{vertical-align:top;margin-left:.4rem;font-size:.9rem;display:inline-block;position:relative}.rmp-archive-results-widget--excluded-post{display:none}.rmp-archive-results-widget .rmp-icon{font-size:.9rem}@keyframes rmp-feedback-widget__loader{0%{height:32px;top:4px}to,50%{height:16px;top:12px}}.rmp-amp-results-widget .rmp-amp-results-widget__stars{display:inline}.rmp-amp-results-widget .rmp-amp-results-widget__average-rating,.rmp-amp-results-widget .rmp-amp-results-widget__vote-count{display:inline-block;position:relative;bottom:4px}.rmp-amp-results-widget .rmp-icon:before{content:"★";color:#ccc;margin:-2px;font-size:26px}.rmp-amp-results-widget .rmp-icon{font-size:26px;font-style:normal;line-height:26px}.rmp-amp-results-widget .rmp-icon--full-highlight:before{color:#ff912c}.rmp-amp-results-widget .rmp-icon--half-highlight:before{background:linear-gradient(90deg,#ff912c 50%,#ccc 50%);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.rmp-amp-rating-widget{text-align:center}#rmp-amp-rating-widget__title{margin-bottom:.5rem;font-size:1.8rem}.rmp-amp-rating-widget .rmp-amp-rating-widget__subtitle{margin-bottom:0}#rmp-amp-action,#rmp-amp-post-id{display:none}.rmp-amp-centered-fieldset{max-width:100%;margin-left:auto;margin-right:auto}.rmp-amp-rating-widget__fieldset{--star-size:3;-webkit-user-select:none;user-select:none;font-size:3em;font-size:calc(var(--star-size) * 1em);cursor:pointer;-webkit-tap-highlight-color:#0000;-webkit-tap-highlight-color:transparent;direction:rtl;unicode-bidi:bidi-override;border:none;margin-bottom:16px;padding:0;line-height:normal}.rmp-amp-rating-widget__fieldset>label{width:1.1em;width:calc(var(--star-size) / 3 * 1.1em);display:inline-block;position:relative}.rmp-amp-rating-widget__fieldset:not(:hover)>input:checked~label,.rmp-amp-rating-widget__fieldset>:hover,.rmp-amp-rating-widget__fieldset>:hover~label{color:#0000;cursor:inherit}.rmp-amp-rating-widget__fieldset:not(:hover)>input:checked~label:before,.rmp-amp-rating-widget__fieldset>:hover:before,.rmp-amp-rating-widget__fieldset>:hover~label:before{content:"★";color:gold;position:absolute}.rmp-amp-rating-widget__fieldset>input{transform:scale(3);transform:scale(var(--star-size));top:-.5em;top:calc(var(--star-size) / 6 * -1em);margin-left:-2.5em;margin-left:calc(var(--star-size) / 6 * -5em);z-index:2;opacity:0;font-size:initial;position:relative}form.amp-form-submit-error [submit-error]{color:red}.rmp-amp-rating-widget__not-rated--hidden,.rmp-amp-rating-widget__results--hidden,label#rmp-amp-post-nonce{display:none}:root{--wp-internal-comment:"Placeholder for wp_hoist_late_printed_styles() to replace with the global-styles printed at wp_footer."}#ez-toc-container{background:#F9F9F9;border:1px solid #AAA;border-radius:4px;-webkit-box-shadow:0 1px 1px rgb(0 0 0 / .05);box-shadow:0 1px 1px rgb(0 0 0 / .05);display:table;margin-bottom:1em;padding-top:10px;padding-right:20px;padding-bottom:10px;padding-left:10px;position:relative;width:auto}div.ez-toc-widget-container{padding:0;position:relative}#ez-toc-container.ez-toc-light-blue{background:#EDF6FF}#ez-toc-container.ez-toc-white{background:#FFF}#ez-toc-container.ez-toc-black{background:#000}#ez-toc-container.ez-toc-transparent{background:none #fff0}div.ez-toc-widget-container ul{display:block}div.ez-toc-widget-container li{border:none;padding:0}div.ez-toc-widget-container ul.ez-toc-list{padding:10px}#ez-toc-container ul ul,.ez-toc div.ez-toc-widget-container ul ul{margin-left:1.5em}#ez-toc-container ul,#ez-toc-container li{margin:0;padding:0}#ez-toc-container ul,#ez-toc-container li,#ez-toc-container ul li,div.ez-toc-widget-container,div.ez-toc-widget-container li{background:none;list-style:none none;line-height:1.6;margin:0;overflow:hidden;z-index:1}#ez-toc-container .ez-toc-title{text-align:left;line-height:1.45;margin:0;padding:0}.ez-toc-title-container{display:table;width:100%}.ez-toc-title,.ez-toc-title-toggle{display:inline;text-align:left;vertical-align:middle}#ez-toc-container.ez-toc-black p.ez-toc-title{color:#FFF}#ez-toc-container div.ez-toc-title-container+ul.ez-toc-list{margin-top:1em}.ez-toc-wrap-left{margin:0 auto 1em 0px!important}.ez-toc-wrap-left-text{float:left}.ez-toc-wrap-right{margin:0 0 1em auto!important}.ez-toc-wrap-right-text{float:right}#ez-toc-container a{color:#444;box-shadow:none;text-decoration:none;text-shadow:none;display:inline-flex;align-items:stretch;flex-wrap:nowrap}#ez-toc-container a:visited{color:#9f9f9f}#ez-toc-container a:hover{text-decoration:underline}#ez-toc-container.ez-toc-black a{color:#FFF}#ez-toc-container.ez-toc-black a:visited{color:#FFF}#ez-toc-container a.ez-toc-toggle{display:flex;align-items:center;color:#444}.ez-toc-widget-container ul.ez-toc-list li::before{content:' ';position:absolute;left:0;right:0;height:30px;line-height:30px;z-index:-1}.ez-toc-widget-container ul.ez-toc-list li.active{background-color:#EDEDED}.ez-toc-widget-container li.active>a{font-weight:900}.ez-toc-btn{display:inline-block;padding:6px 12px;margin-bottom:0;font-size:14px;font-weight:400;line-height:1.428571429;text-align:center;white-space:nowrap;vertical-align:middle;cursor:pointer;background-image:none;border:1px solid #fff0;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none}.ez-toc-btn:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ez-toc-btn:hover,.ez-toc-btn:focus{color:#333;text-decoration:none}.ez-toc-btn:active,.ez-toc-btn.active{background-image:none;outline:0;-webkit-box-shadow:inset 0 3px 5px rgb(0 0 0 / .125);box-shadow:inset 0 3px 5px rgb(0 0 0 / .125)}.ez-toc-btn-default{color:#333;background-color:#fff;border-color:#ccc}.ez-toc-btn-default:hover,.ez-toc-btn-default:focus,.ez-toc-btn-default:active,.ez-toc-btn-default.active{color:#333;background-color:#ebebeb;border-color:#adadad}.ez-toc-btn-default:active,.ez-toc-btn-default.active{background-image:none}.ez-toc-btn-sm,.ez-toc-btn-xs{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.ez-toc-btn-xs{padding:1px 5px}.ez-toc-btn-default{text-shadow:0 -1px 0 rgb(0 0 0 / .2);-webkit-box-shadow:inset 0 1px 0 rgb(255 255 255 / .15),0 1px 1px rgb(0 0 0 / .075);box-shadow:inset 0 1px 0 rgb(255 255 255 / .15),0 1px 1px rgb(0 0 0 / .075)}.ez-toc-btn-default:active{-webkit-box-shadow:inset 0 3px 5px rgb(0 0 0 / .125);box-shadow:inset 0 3px 5px rgb(0 0 0 / .125)}.ez-toc-btn:active,.btn.active{background-image:none}.ez-toc-btn-default{text-shadow:0 1px 0 #fff;background-image:-webkit-gradient(linear,left 0,left 100%,from(#fff),to(#e0e0e0));background-image:-webkit-linear-gradient(top,#fff 0,#e0e0e0 100%);background-image:-moz-linear-gradient(top,#fff 0,#e0e0e0 100%);background-image:linear-gradient(to bottom,#fff 0,#e0e0e0 100%);background-repeat:repeat-x;border-color:#dbdbdb;border-color:#ccc;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffe0e0e0',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.ez-toc-btn-default:hover,.ez-toc-btn-default:focus{background-color:#e0e0e0;background-position:0 -15px}.ez-toc-btn-default:active,.ez-toc-btn-default.active{background-color:#e0e0e0;border-color:#dbdbdb}.ez-toc-pull-right{float:right!important;margin-left:10px}#ez-toc-container label.cssicon,#ez-toc-widget-container label.cssicon{height:30px}.ez-toc-glyphicon{position:relative;top:1px;display:inline-block;font-family:'Glyphicons Halflings';-webkit-font-smoothing:antialiased;font-style:normal;font-weight:400;line-height:1;-moz-osx-font-smoothing:grayscale}.ez-toc-glyphicon:empty{width:1em}.ez-toc-toggle i.ez-toc-glyphicon{font-size:16px;margin-left:2px}#ez-toc-container input{position:absolute;left:-999em}#ez-toc-container input[type="checkbox"]:checked+nav,#ez-toc-widget-container input[type="checkbox"]:checked+nav{opacity:0;max-height:0;border:none;display:none}#ez-toc-container label{position:relative;cursor:pointer;display:initial}#ez-toc-container .ez-toc-js-icon-con{position:relative;cursor:pointer;display:initial}#ez-toc-container .ez-toc-toggle label{float:right;position:relative;font-size:16px;padding:0;border:1px solid #999191;border-radius:5px;cursor:pointer;left:10px;width:35px}#ez-toc-container .ez-toc-js-icon-con{float:right;position:relative;font-size:16px;padding:0;border:1px solid #999191;border-radius:5px;cursor:pointer;left:10px;width:35px}div#ez-toc-container .ez-toc-title{display:initial}.ez-toc-wrap-center{margin:0 auto 1em auto!important}#ez-toc-container a.ez-toc-toggle{color:#444;background:inherit;border:inherit}.ez-toc-toggle #item{position:absolute;left:-999em}label.cssicon .ez-toc-glyphicon:empty{font-size:16px;margin-left:2px}label.cssiconcheckbox{display:none}.ez-toc-widget-container ul li a{padding-left:10px;display:inline-flex;align-items:stretch;flex-wrap:nowrap}.ez-toc-widget-container ul.ez-toc-list li{height:auto!important}.ez-toc-cssicon{float:right;position:relative;font-size:16px;padding:0;border:1px solid #999191;border-radius:5px;cursor:pointer;left:10px;width:35px}.ez-toc-icon-toggle-span{display:flex;align-items:center;width:35px;height:30px;justify-content:center;direction:ltr}#ez-toc-container .eztoc-toggle-hide-by-default{display:none}.eztoc_no_heading_found{background-color:#ff0;padding-left:10px}.eztoc-hide{display:none}.term-description .ez-toc-title-container p:nth-child(2){width:50px;float:right;margin:0}.ez-toc-list.ez-toc-columns-2{column-count:2;column-gap:20px;column-fill:balance}.ez-toc-list.ez-toc-columns-2>li{display:block;break-inside:avoid;margin-bottom:8px;page-break-inside:avoid}.ez-toc-list.ez-toc-columns-3{column-count:3;column-gap:20px;column-fill:balance}.ez-toc-list.ez-toc-columns-3>li{display:block;break-inside:avoid;margin-bottom:8px;page-break-inside:avoid}.ez-toc-list.ez-toc-columns-4{column-count:4;column-gap:20px;column-fill:balance}.ez-toc-list.ez-toc-columns-4>li{display:block;break-inside:avoid;margin-bottom:8px;page-break-inside:avoid}.ez-toc-list.ez-toc-columns-optimized{column-fill:balance;orphans:2;widows:2}.ez-toc-list.ez-toc-columns-optimized>li{display:block;break-inside:avoid;page-break-inside:avoid}@media (max-width:768px){.ez-toc-list.ez-toc-columns-2,.ez-toc-list.ez-toc-columns-3,.ez-toc-list.ez-toc-columns-4{column-count:1;column-gap:0}}@media (max-width:1024px) and (min-width:769px){.ez-toc-list.ez-toc-columns-4{column-count:2}.ez-toc-list.ez-toc-columns-3{column-count:2}}.fusion-footer #ez-toc-container{display:none}div#ez-toc-container .ez-toc-title{font-size:120%}div#ez-toc-container .ez-toc-title{font-weight:500}div#ez-toc-container ul li,div#ez-toc-container ul li a{font-size:95%}div#ez-toc-container ul li,div#ez-toc-container ul li a{font-weight:500}div#ez-toc-container nav ul ul li{font-size:90%}.ez-toc-box-title{font-weight:700;margin-bottom:10px;text-align:center;text-transform:uppercase;letter-spacing:1px;color:#666;padding-bottom:5px;position:absolute;top:-4%;left:5%;background-color:inherit;transition:top 0.3s ease}.ez-toc-box-title.toc-closed{top:-25%}.ez-toc-container-direction{direction:ltr}.ez-toc-counter ul{direction:ltr;counter-reset:item}.ez-toc-counter nav ul li a::before{content:counter(item,numeric) '. ';margin-right:.2em;counter-increment:item;flex-grow:0;flex-shrink:0;float:left}.ez-toc-widget-direction{direction:ltr}.ez-toc-widget-container ul{direction:ltr;counter-reset:item}.ez-toc-widget-container nav ul li a::before{content:counter(item,numeric) '. ';margin-right:.2em;counter-increment:item;flex-grow:0;flex-shrink:0;float:left}body{--glsr-white:#fff;--glsr-gray-100:#f5f5f5;--glsr-gray-200:#e5e5e5;--glsr-gray-300:#d4d4d4;--glsr-gray-400:#a3a3a3;--glsr-gray-500:#737373;--glsr-gray-600:#525252;--glsr-gray-700:#404040;--glsr-gray-800:#262626;--glsr-gray-900:#171717;--glsr-black:#000;--glsr-blue:#1c64f2;--glsr-green:#057a55;--glsr-red:#e02424;--glsr-yellow:#faca15;--glsr-duration-slow:0.3s;--glsr-duration-fast:0.15s;--glsr-gap-xs:0.25em;--glsr-gap-sm:0.5em;--glsr-gap-md:0.75em;--glsr-gap-lg:1em;--glsr-gap-xl:2em;--glsr-leading:1.5;--glsr-px:1.25em;--glsr-py:1.25em;--glsr-radius:3px;--glsr-text-base:1em;--glsr-text-sm:0.875em;--glsr-text-md:1em;--glsr-text-lg:1.25em;--glsr-review-col-gap:var(--glsr-gap-xl);--glsr-review-row-gap:var(--glsr-gap-xl);--glsr-review-star:1.25em;--glsr-review-verified:var(--glsr-green);--glsr-tag-label-weight:600;--glsr-bar-bg:var(--glsr-yellow);--glsr-bar-opacity:0.1;--glsr-bar-radius:0px;--glsr-bar-size:var(--glsr-text-md);--glsr-bar-gap:.5em;--glsr-max-w:48ch;--glsr-summary-align:start;--glsr-summary-star:1.5em;--glsr-summary-text:var(--glsr-text-sm);--glsr-description-text:var(--glsr-text-sm);--glsr-form-col-gap:var(--glsr-gap-sm);--glsr-form-error:var(--glsr-red);--glsr-form-row-gap:var(--glsr-gap-md);--glsr-form-star:2em;--glsr-form-success:var(--glsr-green);--glsr-input-b:var(--glsr-input-border-width) var(--glsr-input-border-style) var(--glsr-input-border-color);--glsr-input-bg:var(--glsr-white);--glsr-input-border-color:var(--glsr-gray-400);--glsr-input-border-style:solid;--glsr-input-border-width:1px;--glsr-input-color:var(--glsr-gray-900);--glsr-input-pb:0.5em;--glsr-input-pt:0.5em;--glsr-input-pl:0.75em;--glsr-input-pr:0.75em;--glsr-input-radius:3px;--glsr-input-transition:border-color var(--glsr-duration-fast) ease-in-out;--glsr-label-color:currentColor;--glsr-label-text:var(--glsr-text-sm);--glsr-label-weight:600;--glsr-subgroup-gap:0px;--glsr-range-size:1em;--glsr-choice-color:currentColor;--glsr-choice-size:1em;--glsr-toggle-bg:currentColor;--glsr-toggle-color:var(--glsr-white);--glsr-toggle-opacity:0.2;--glsr-toggle-radius:1em;--glsr-toggle-shadow-color:rgba(0,0,0,.1);--glsr-toggle-size:1em;--glsr-toggled-bg:currentColor;--glsr-toggled-opacity:1;--glsr-modal-bg:var(--wp--preset--color--base,var(--glsr-white));--glsr-modal-radius:3px;--glsr-modal-padding:1.5em;--glsr-tooltip-border-radius:4px;--glsr-tooltip-font-size:0.875rem;--glsr-tooltip-font-weight:400;--glsr-tooltip-line-height:1;--glsr-tooltip-margin:12px;--glsr-tooltip-padding:.5em 1em;--glsr-tooltip-size:6px}@keyframes gl-fadeIn{0%{opacity:0}to{opacity:1}}@keyframes gl-fadeOut{0%{opacity:1}to{opacity:0}}@keyframes gl-spin{0%{transform:rotate(0deg) translateZ(0)}to{transform:rotate(1turn) translateZ(0)}}@keyframes gl-zoomIn{0%{transform:scale(.95)}to{transform:scale(1)}}@keyframes gl-zoomOut{0%{transform:scale(1)}to{transform:scale(.95)}}.glsr *+*{box-sizing:border-box}.glsr{width:100%}.glsr,.glsr-modal{border-width:0;font-size:var(--glsr-text-base)}.glsr .screen-reader-text,.glsr-modal .screen-reader-text{word-wrap:normal!important;border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.glsr-captcha-holder iframe{margin:0!important}.glsr-captcha-holder[data-size=invisible]:not([data-badge=inline]){bottom:0;position:absolute}.glsr-captcha-holder>div:not([data-type=procaptcha]){display:flex}.glsr-fade-out{opacity:0!important;transition:visibility 0s cubic-bezier(0,0,.2,1) var(--glsr-duration-slow),opacity var(--glsr-duration-slow)!important;visibility:hidden!important}.glsr-reviews,.glsr-reviews-wrap{grid-row-gap:var(--glsr-review-row-gap);display:grid;row-gap:var(--glsr-review-row-gap)}.glsr-default .glsr-loading,.glsr-default form.glsr-form .glsr-loading{display:inline-flex;flex-grow:0;flex-shrink:0;height:1em;position:relative;width:1em}.glsr-default .glsr-loading:not(.does-not-exist):not(does-not-exist):after,.glsr-default .glsr-loading:not(.does-not-exist):not(does-not-exist):before,.glsr-default form.glsr-form .glsr-loading:after,.glsr-default form.glsr-form .glsr-loading:before{animation:gl-spin .5s linear infinite;border:.2em solid;border-radius:100%;box-sizing:border-box;content:"";display:block;height:100%;left:0;margin:0;position:absolute;top:0;width:100%}.glsr-default .glsr-loading:not(.does-not-exist):not(does-not-exist):before,.glsr-default form.glsr-form .glsr-loading:before{border-top-color:#fff0;opacity:.5}.glsr-default .glsr-loading:not(.does-not-exist):not(does-not-exist):after,.glsr-default form.glsr-form .glsr-loading:after{border-color:currentColor #fff0 #fff0}.glsr-default .glsr-spinner{animation:gl-spin .5s linear infinite;border-radius:50%;height:24px;position:relative;width:24px}.glsr-default .glsr-spinner:after,.glsr-default .glsr-spinner:before{background:currentColor;border-radius:50%;content:"";height:8px;position:absolute;width:8px}.glsr-default .glsr-spinner:before{left:0;top:0}.glsr-default .glsr-spinner:after{bottom:0;right:0}.glsr-default .glsr-pagination{position:relative}.glsr-default .glsr-pagination:not(.glsr-ajax-loadmore){align-items:center;display:flex;justify-content:center}.glsr-default .glsr-pagination .glsr-spinner{position:absolute}.glsr-default .glsr-pagination .pagination{flex-basis:100%;margin-bottom:0;margin-top:0;opacity:1;transition:opacity var(--glsr-duration-slow)}.glsr-default.glsr-hide .glsr-pagination .pagination{opacity:0!important}.glsr-star-rating{align-items:center;display:flex;position:relative}.glsr-stars{justify-content:center}.glsr-star{background-size:var(--glsr-review-star);flex-shrink:0;font-size:inherit;height:var(--glsr-review-star);width:var(--glsr-review-star)}.glsr-summary .glsr-star{background-size:var(--glsr-summary-star);height:var(--glsr-summary-star);width:var(--glsr-summary-star)}.glsr-star-empty{background-image:var(--glsr-star-empty)}.glsr-star-full{background-image:var(--glsr-star-full)}.glsr-star-half{background-image:var(--glsr-star-half)}.glsr-review{quotes:"“" "”";word-break:break-word}.glsr-review,.glsr-reviews>p{opacity:1;transition:opacity .5s}.glsr-hide .glsr-review,.glsr-hide .glsr-reviews>p{opacity:.25!important}.glsr-review p:first-of-type{margin-top:0!important}.glsr-review [data-expanded=false] p.glsr-hidden-text,.glsr-review p:last-of-type{margin-bottom:0!important}.glsr-review-date{white-space:nowrap}.glsr-review-rating{align-items:center;display:inline-flex;gap:.5em;justify-content:center}.glsr-review-response{padding:var(--glsr-py) var(--glsr-px);position:relative;width:100%}.glsr-review-response:before{border-bottom:calc(var(--glsr-text-md)*1.5) solid;border-left:0 solid #fff0;border-right:calc(var(--glsr-text-md)*2) solid #fff0;border-top:0 solid;content:"";height:0;opacity:.1;position:absolute;right:calc(var(--glsr-text-md)*1.5);top:calc((var(--glsr-text-md)*1.5)*-1);top:calc(var(--glsr-text-md)*1.5*-1);width:0}.glsr-review-response:after{background-color:currentColor;border-radius:var(--glsr-radius);content:"";height:100%;left:0;opacity:.1;position:absolute;top:0;width:100%}.glsr-rtl .glsr-review-response:before{border-left-width:calc(var(--glsr-text-md)*2);border-right-width:0;left:calc(var(--glsr-text-md)*1.5);right:auto}.glsr-review-type a,.glsr-review-type svg{display:block}.glsr-review-response-inner{position:relative;z-index:1}.glsr-default .glsr-review{display:flex;flex-wrap:wrap;gap:var(--glsr-gap-md)}.glsr-default .glsr-review p{margin-bottom:var(--glsr-text-md);margin-top:0;padding:0}.glsr-default .glsr-tag-label{font-weight:var(--glsr-tag-label-weight)}.glsr-default .glsr-review-assigned_links,.glsr-default .glsr-review-assigned_posts,.glsr-default .glsr-review-assigned_terms,.glsr-default .glsr-review-assigned_users{width:100%}.glsr-default .glsr-review-author{align-items:center;display:inline-flex;gap:.5ex}.glsr-default .glsr-review-avatar{flex:0 0}.glsr-default .glsr-review-avatar img{border-width:0;display:flex;margin:0;max-height:none;max-width:none;-o-object-fit:cover;object-fit:cover}.glsr-default .glsr-review-content{width:100%}.glsr-default .glsr-review-date{align-items:center;display:inline-flex;flex:1 0;font-style:italic;white-space:nowrap}.glsr-default .glsr-review-location{align-items:center;display:inline-flex;font-size:var(--glsr-text-sm);white-space:nowrap}.glsr-default .glsr-review-location .glsr-tag-value{align-items:center;display:flex;gap:.5ex}.glsr-default .glsr-review-rating{align-items:center;display:inline-flex;flex-shrink:0;gap:.5em}.glsr-default .glsr-review-response,.glsr-default .glsr-review-title{width:100%}.glsr-default .glsr-review-title h3,.glsr-default .glsr-review-title h4,.glsr-default .glsr-review-title h5{margin-bottom:0;margin-top:0}.glsr-default .glsr-review-verified{align-items:center;color:var(--glsr-review-verified);display:flex;font-size:var(--glsr-text-sm);gap:.5ex}.glsr-default .glsr-tag-value ol,.glsr-default .glsr-tag-value ul{display:flex;flex-direction:column;gap:1ex;margin:0 0 0 2em;padding:0}.glsr-default .glsr-tag-value ol{list-style-type:decimal}.glsr-default .glsr-tag-value ul{list-style-type:disc}.glsr-default .glsr-tag-value li{margin:0}.glsr-default .glsr-read-more{white-space:nowrap}.glsr-default .glsr-read-more:before{content:"";margin-left:0;margin-right:.5em}.glsr-default.glsr-rtl .glsr-read-more:before{margin-left:.5em;margin-right:0}.glsr-default [data-expanded=false] .glsr-read-more:before{content:"\2026"}.glsr-default [data-expanded=false] .glsr-hidden{display:none}.glsr-default .glsr-flag{--aspect-ratio:4/3;--background-image:none;--border-radius:0;--border-width:0;aspect-ratio:var(--aspect-ratio);border-radius:var(--border-radius);box-sizing:border-box;display:inline-flex;height:1em;overflow:hidden;position:relative}.glsr-default .glsr-flag:before{background-image:var(--background-image);border-color:rgb(0 0 0 / .5);border-radius:var(--border-radius);border-style:solid;border-width:var(--border-width);box-sizing:border-box;content:"";display:block;height:100%;mix-blend-mode:overlay;position:absolute;width:100%}.glsr-default .glsr-flag img{display:block;height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.glsr-default .glsr-flag[data-border="1"]{--border-width:1px}.glsr-default .glsr-flag[data-radius="1"]{--border-radius:0.1em}.glsr-default .glsr-flag[data-shape=circle]{--aspect-ratio:1/1;--border-radius:1em}.glsr-default .glsr-flag[data-shape=square]{--aspect-ratio:1/1}.glsr-default .glsr-flag[data-gradient=circular]{--background-image:radial-gradient(107.48% 114.58% at 50% 14.58%,hsla(0,0%,100%,.3) 0%,rgba(0,0,0,.24) 28.93%,rgba(0,0,0,.55) 46.3%,hsla(0,0%,100%,.26) 60.57%,rgba(0,0,0,.17) 72.67%,hsla(0,0%,100%,.3) 100%)}.glsr-default .glsr-flag[data-gradient=diagonal]{--background-image:linear-gradient(45deg,rgba(0,0,0,.2),rgba(39,39,39,.22) 11%,hsla(0,0%,100%,.3) 27%,rgba(0,0,0,.24) 41%,rgba(0,0,0,.55) 52%,hsla(0,0%,100%,.26) 63%,rgba(0,0,0,.27) 74%,hsla(0,0%,100%,.3))}.glsr-default .glsr-flag[data-gradient=linear]{--background-image:linear-gradient(0deg,rgba(0,0,0,.3) 2%,hsla(0,0%,100%,.7))}.glsr-summary{align-items:center;-moz-column-gap:var(--glsr-gap-sm);column-gap:var(--glsr-gap-sm);display:flex;flex-wrap:wrap;justify-content:var(--glsr-summary-align);max-width:var(--glsr-max-w);position:relative;width:100%}.glsr-summary-rating{display:flex;font-size:var(--glsr-text-lg);font-weight:700;line-height:1;white-space:nowrap}.glsr-summary-stars{display:flex}.glsr-summary-text{flex:auto;text-align:var(--glsr-summary-align)}.glsr-summary-percentages{grid-column-gap:var(--glsr-bar-gap);grid-row-gap:var(--glsr-bar-gap);-moz-column-gap:var(--glsr-bar-gap);column-gap:var(--glsr-bar-gap);display:grid;grid-template-columns:auto 1fr auto;line-height:1;row-gap:var(--glsr-bar-gap);width:100%}.glsr-summary>div+.glsr-summary-percentages{margin-top:var(--glsr-gap-sm)}.glsr-summary-bar{grid-gap:var(--glsr-gap-sm);align-items:center;display:grid;gap:var(--glsr-gap-sm);grid-column:span 3;grid-template-columns:subgrid}.glsr-summary-bar-label{align-items:center;display:flex;font-size:var(--glsr-summary-text);justify-content:start;white-space:nowrap}.glsr-summary-bar-background{border-radius:var(--glsr-bar-radius);display:flex;height:var(--glsr-bar-size);overflow:hidden;position:relative;white-space:nowrap}.glsr-summary-bar-background:before{background-color:currentColor;content:"";height:100%;opacity:var(--glsr-bar-opacity);position:absolute;width:100%}.glsr-summary-bar-background:after{background-color:var(--glsr-bar-bg);content:"";height:100%;position:relative;width:var(--glsr-bar-percent)}.glsr-summary-bar-percent{align-items:center;display:flex;font-size:var(--glsr-summary-text);justify-content:end;white-space:nowrap}.glsr-summary-bar-percent:before{content:attr(data-percent)}.glsr-default form.glsr-hide-form{max-height:0!important;opacity:0;overflow:hidden}.glsr-default form.glsr-form{grid-column-gap:var(--glsr-form-col-gap);grid-row-gap:var(--glsr-form-row-gap);-moz-column-gap:var(--glsr-form-col-gap);column-gap:var(--glsr-form-col-gap);display:grid;grid-template-columns:1fr;margin-bottom:0;position:relative;row-gap:var(--glsr-form-row-gap)}.glsr-default .glsr-field{position:relative}.glsr-default form.glsr-form .glsr-description dl,.glsr-default form.glsr-form .glsr-description ol,.glsr-default form.glsr-form .glsr-description ul{margin:0;padding-bottom:0;padding-left:2em;padding-top:0}.glsr-default .glsr-form textarea.glsr-textarea{field-sizing:content}.glsr-default .glsr-field.glsr-hidden{display:none!important}.glsr-default .glsr-field:not(.glsr-field-is-invalid) .glsr-field-error,.glsr-default .glsr-form-message:not(.glsr-form-failed):not(.glsr-form-success){display:none}.glsr-default .glsr-field-error{color:var(--glsr-form-error);font-size:var(--glsr-text-sm)}.glsr-default .glsr-form-failed{color:var(--glsr-form-error)}.glsr-default .glsr-form-success{color:var(--glsr-form-success)}.glsr-default .glsr-is-invalid{border-color:var(--glsr-form-error)!important}.glsr-default form.glsr-form label.glsr-label{display:block;float:none;hyphens:none;margin:0}.glsr-default form.glsr-form .glsr-description{display:block;font-weight:400;text-transform:none}.glsr-default form.glsr-form input.glsr-input:not(.wp-block-search__input),.glsr-default form.glsr-form select.glsr-select,.glsr-default form.glsr-form textarea.glsr-textarea{box-sizing:border-box;display:block;float:none;margin:0;max-height:none;max-width:none;min-height:auto;min-width:auto;width:100%}.glsr-default form.glsr-form textarea.glsr-textarea{resize:vertical}.glsr-default form.glsr-form .glsr-field-subgroup{gap:var(--glsr-subgroup-gap)}.glsr-default form.glsr-form .glsr-field-checkbox,.glsr-default form.glsr-form .glsr-field-radio{align-items:start;display:flex;gap:var(--glsr-gap-sm)}.glsr-default form.glsr-form .glsr-field-checkbox>span:not(.glsr-checkbox),.glsr-default form.glsr-form .glsr-field-radio>span:not(.glsr-radio){align-items:center;display:flex;flex-shrink:0;height:1.5em}.glsr-default form.glsr-form .glsr-checkbox,.glsr-default form.glsr-form .glsr-radio{display:grid;font-size:var(--glsr-choice-size);height:1em!important;width:1em!important}.glsr-default form.glsr-form .glsr-checkbox input,.glsr-default form.glsr-form .glsr-radio input{box-sizing:border-box;display:block;left:0;margin:0;outline:none;padding:0;position:relative;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.glsr-default form.glsr-form .glsr-checkbox label,.glsr-default form.glsr-form .glsr-radio label{display:flex;flex-direction:column;margin:0}.glsr-default form.glsr-form .glsr-field-toggle{--toggle-h:calc(0.75em + var(--toggle-p)*2);--toggle-p:.125em;--toggle-w:calc(1.5em + var(--toggle-p)*2);--transition-timing-fn:cubic-bezier(.4,0,.2,1);align-items:start;display:flex;gap:var(--glsr-gap-sm)}.glsr-default form.glsr-form .glsr-field-toggle>span:not(.glsr-toggle){align-items:center;display:flex;flex-shrink:0;height:1.5em}.glsr-default form.glsr-form .glsr-toggle{display:grid;font-size:var(--glsr-toggle-size);height:var(--toggle-h);position:relative;width:var(--toggle-w)}.glsr-default form.glsr-form .glsr-toggle input{all:unset!important;-webkit-appearance:none!important;-moz-appearance:none!important;appearance:none!important;bottom:0!important;left:0!important;position:absolute!important;right:0!important;top:0!important;z-index:0!important}.glsr-default form.glsr-form .glsr-toggle input:after,.glsr-default form.glsr-form .glsr-toggle input:before{display:none!important}.glsr-default form.glsr-form .glsr-toggle-track{bottom:0;padding:var(--toggle-p);pointer-events:none;right:0}.glsr-default form.glsr-form .glsr-toggle-track,.glsr-default form.glsr-form .glsr-toggle-track:before{border-radius:var(--glsr-toggle-radius);box-sizing:border-box;left:0;position:absolute;top:0;width:100%}.glsr-default form.glsr-form .glsr-toggle-track:before{background-color:var(--glsr-toggle-bg);content:"";display:block;height:100%;opacity:var(--glsr-toggle-opacity);transition-duration:var(--glsr-duration-fast);transition-property:background-color,opacity;transition-timing-function:var(--transition-timing-fn)}.glsr-default form.glsr-form .glsr-toggle-track:after{background-color:var(--glsr-toggle-color);border-radius:calc(var(--glsr-toggle-radius) - var(--toggle-p));box-shadow:0 .05em .1em var(--glsr-toggle-shadow-color),0 .05em .15em var(--glsr-toggle-shadow-color);box-sizing:border-box;content:"";display:block;height:.75em;pointer-events:none;position:relative;transition:transform var(--glsr-duration-fast) var(--transition-timing-fn);width:.75em;z-index:1}.glsr-default form.glsr-form input:checked+.glsr-toggle-track:before{background-color:var(--glsr-toggled-bg);opacity:var(--glsr-toggled-opacity);transition-duration:var(--glsr-duration-fast);transition-property:background-color,opacity;transition-timing-function:var(--transition-timing-fn)}.glsr-default form.glsr-form input:checked+.glsr-toggle-track:after{transform:translateX(.75em)}.glsr-default.glsr-rtl form.glsr-form input:checked+.glsr-toggle-track:after{transform:translateX(-.75em)}.glsr-default form.glsr-form .glsr-range-labels{display:grid;font-size:var(--glsr-text-sm);grid-template-columns:repeat(auto-fit,minmax(50px,1fr));line-height:1.5;text-align:center}.glsr-default form.glsr-form .glsr-range-labels :first-child{text-align:left}.glsr-default form.glsr-form .glsr-range-labels :last-child{text-align:right}.glsr-default form.glsr-form .glsr-range-options{align-items:center;display:flex;font-size:var(--glsr-text-base);gap:var(--glsr-gap-lg);justify-content:space-between;margin-bottom:calc(var(--glsr-text-sm)*1.5);padding-bottom:var(--glsr-gap-xs);padding-top:var(--glsr-gap-xs);position:relative}.glsr-default form.glsr-form .glsr-range-options:before{background-color:var(--glsr-input-border-color);content:"";display:block;height:var(--glsr-input-border-width);min-height:1px;position:absolute;width:100%}.glsr-default form.glsr-form .glsr-range-options:has(.glsr-is-invalid):before{background-color:var(--glsr-form-error)}.glsr-default form.glsr-form .glsr-field-range{display:flex;position:static;z-index:1}.glsr-default form.glsr-form .glsr-range-options label{display:none}.glsr-default form.glsr-form .glsr-range{display:grid;font-size:var(--glsr-range-size);height:1.25em;width:1.25em}.glsr-default form.glsr-form .glsr-range input{box-sizing:border-box;display:block;left:0;margin:0;outline:none;padding:0;position:relative;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.glsr-default form.glsr-form .glsr-field-range:has(input:checked) label,.glsr-default form.glsr-form .glsr-range-options:not(:has(input:checked)):after{display:flex;font-size:var(--glsr-text-sm);justify-content:start;left:0;line-height:1.5;margin:0;padding:0;position:absolute;top:100%;width:100%}.glsr-default form.glsr-form .glsr-range-options:not(:has(input:checked)):after{content:attr(data-placeholder)}form.glsr-form .glsr-star-rating:not([data-star-rating]) .glsr-star-rating--stars{display:none!important}form.glsr-form .glsr-star-rating>select{clip-path:inset(50%);height:1px!important;margin:0!important;opacity:0!important;overflow:hidden!important;padding:0!important;position:absolute!important;top:0!important;visibility:visible!important;white-space:nowrap!important;width:1px!important}form.glsr-form .glsr-star-rating>select:after,form.glsr-form .glsr-star-rating>select:before{display:none!important}form.glsr-form .glsr-star-rating>select:focus+.glsr-star-rating--stars:before{box-shadow:0 0 0 3px -moz-mac-focusring;box-shadow:0 0 0 3px -webkit-focus-ring-color;box-shadow:0 0 0 3px Highlight;content:"";display:block;height:100%;outline:1px solid #fff0;pointer-events:none;position:absolute;width:100%}form.glsr-form .glsr-star-rating--ltr>select{left:0!important}form.glsr-form .glsr-star-rating--rtl>select{right:0!important}form.glsr-form .glsr-star-rating--stars{align-items:center;cursor:pointer;display:flex;position:relative}form.glsr-form select[disabled]+.glsr-star-rating--stars{cursor:default}form.glsr-form .glsr-star-rating span[data-value]{display:flex;font-size:var(--glsr-form-star);height:1em;line-height:1;margin:0;width:1em}form.glsr-form .glsr-star-rating--stars[class*=" s"]>span{background-image:var(--glsr-star-empty);background-position:50%;background-repeat:no-repeat;background-size:contain}form.glsr-form .glsr-field-is-invalid .glsr-star-rating--stars[class*=" s"]>span{background-image:var(--glsr-star-error)}form.glsr-form .glsr-star-rating--stars[class*=" s"]>span.gl-active,form.glsr-form .glsr-star-rating--stars[class*=" s"]>span.gl-active.gl-selected{background-image:var(--glsr-star-full)}form.glsr-form .glsr-has-rating-labels .glsr-star-rating--stars[aria-label]{margin-bottom:calc(var(--glsr-text-sm)*1.5);padding-bottom:var(--glsr-gap-xs)}form.glsr-form .glsr-has-rating-labels .glsr-star-rating--stars[aria-label]:after{content:attr(aria-label);display:flex;font-size:var(--glsr-text-sm);left:0;line-height:1.5;position:absolute;top:100%}.glsr-default button.glsr-button{align-items:center!important;cursor:pointer;display:inline-flex!important;white-space:nowrap}.glsr-default button.glsr-button:not(.wp-block-search__button){margin:0}.glsr-default button.glsr-button[aria-busy=true]{gap:var(--glsr-gap-sm)}.glsr-default .wp-block-button{margin:0}html.glsr-modal-open{overflow:hidden;scrollbar-gutter:stable}html.glsr-modal-open body{overflow:hidden;overscroll-behavior:contain}.glsr-modal{--timing-function:cubic-bezier(0,0,0.2,1);--timing-function-2:cubic-bezier(0.25,0.46,0.45,0.94);display:none;font-size:var(--wp--preset--font-size--normal,1rem);pointer-events:none;position:fixed;z-index:-1}.glsr-modal.is-open{display:block;pointer-events:auto;z-index:99999}.glsr-modal__overlay{align-items:center;background:rgb(0 0 0 / .6);bottom:0;display:flex;height:100vh;justify-content:center;left:0;position:fixed;right:0;top:0;width:100vw}.glsr-modal__dialog{background-color:var(--glsr-modal-bg);border-radius:var(--glsr-modal-radius);box-shadow:0 20px 25px -5px rgb(0 0 0 / .1),0 8px 10px -6px rgb(0 0 0 / .1);box-sizing:border-box;display:flex;flex-direction:column;height:auto;max-height:min(1024px,calc(100vh - 2em));max-width:min(768px,calc(100vw - 2em));min-height:160px;min-width:320px;overflow:hidden;position:relative;width:100vw}.glsr-modal-small .glsr-modal__dialog{min-height:auto;width:480px}.glsr-modal-fullscreen .glsr-modal__dialog{height:100vh;max-height:calc(100vh - 2em);max-width:calc(100vw - 2em);width:100vw}[aria-hidden=false] .glsr-modal__dialog{animation:gl-zoomIn var(--glsr-duration-slow) var(--timing-function)}[aria-hidden=true] .glsr-modal__dialog{animation:gl-zoomOut var(--glsr-duration-fast) var(--timing-function)}.glsr-modal__header{font-weight:600}.glsr-modal__footer,.glsr-modal__header{align-items:center;box-shadow:0 0 1px 0 color-mix(in srgb,currentColor 10%,transparent),0 0 1em 0 rgb(0 0 0 / .1);display:flex;flex-shrink:0;gap:var(--glsr-gap-md);padding:0 var(--glsr-modal-padding);position:relative;z-index:1}.glsr-modal__footer>div,.glsr-modal__header>div{align-items:center;display:flex;flex:1;gap:var(--glsr-gap-md);padding:.75em 0}.glsr-modal__body{-webkit-overflow-scrolling:touch;display:grid;grid-template-rows:1fr;overflow-y:auto;overscroll-behavior:contain;transition:grid-template-rows var(--glsr-duration-slow) var(--timing-function)}.glsr-modal.is-loading:not(.is-changing) .glsr-modal__body{grid-template-rows:0fr}.glsr-modal__inner{display:grid;grid-template-rows:1fr;min-height:calc(var(--glsr-modal-padding)*2);opacity:1;position:relative;transition:opacity var(--glsr-duration-slow) var(--timing-function)}.glsr-modal.is-loading:not(.is-changing) .glsr-modal__inner{opacity:0}.glsr-modal__content{padding:var(--glsr-modal-padding)}.glsr-modal button.glsr-modal__close,.glsr-modal button.glsr-modal__close:focus,.glsr-modal button.glsr-modal__close:hover{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent!important;border:0;box-shadow:none;color:currentColor!important;cursor:pointer;display:flex;font-size:1em;height:1.5em;justify-content:center;line-height:1;margin:.75em 1em;outline-offset:0;padding:0;position:absolute;right:0;top:0;transform:scale(1);transition:transform var(--glsr-duration-fast) ease-in;width:1.5em;z-index:10}.glsr-modal button.glsr-modal__close:hover{transform:scale(1.1)}.glsr-modal button.glsr-modal__close:before{all:revert;content:"\2715";font-family:arial;font-size:1.5em;font-weight:700;line-height:1}.glsr-modal button.glsr-modal__close:after,.glsr-modal[aria-hidden=true] .glsr-modal__close{display:none!important}.glsr-modal .glsr-modal__overlay{animation-timing-function:var(--timing-function)}.glsr-modal[aria-hidden=false] .glsr-modal__overlay{animation-duration:var(--glsr-duration-slow);animation-name:gl-fadeIn}.glsr-modal[aria-hidden=true] .glsr-modal__overlay{animation-duration:var(--glsr-duration-fast);animation-name:gl-fadeOut}.glsr-modal-error .glsr-modal__content,.glsr-modal-success .glsr-modal__content{display:flex;gap:var(--glsr-gap-md)}.glsr-modal-error .glsr-modal__content:before,.glsr-modal-success .glsr-modal__content:before{content:"";display:block;flex-shrink:0;height:2em;margin-top:-.25em;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;opacity:.75;width:2em}.glsr-modal-error .glsr-modal__content:before{background-color:var(--glsr-red);-webkit-mask:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10 2a8 8 0 1 1 0 16 8 8 0 1 1 0-16zm1.13 9.38.35-6.46H8.52l.35 6.46h2.26zm-.09 3.36c.24-.23.37-.55.37-.96 0-.42-.12-.74-.36-.97s-.59-.35-1.06-.35-.82.12-1.07.35-.37.55-.37.97c0 .41.13.73.38.96.26.23.61.34 1.06.34s.8-.11 1.05-.34z'/%3E%3C/svg%3E");mask:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10 2a8 8 0 1 1 0 16 8 8 0 1 1 0-16zm1.13 9.38.35-6.46H8.52l.35 6.46h2.26zm-.09 3.36c.24-.23.37-.55.37-.96 0-.42-.12-.74-.36-.97s-.59-.35-1.06-.35-.82.12-1.07.35-.37.55-.37.97c0 .41.13.73.38.96.26.23.61.34 1.06.34s.8-.11 1.05-.34z'/%3E%3C/svg%3E")}.glsr-modal-success .glsr-modal__content:before{background-color:var(--glsr-green);-webkit-mask:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10 2a8 8 0 1 0 0 16 8 8 0 1 0 0-16zm-.615 12.66h-1.34l-3.24-4.54 1.341-1.25 2.569 2.4 5.141-5.931 1.34.94-5.811 8.381z'/%3E%3C/svg%3E");mask:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10 2a8 8 0 1 0 0 16 8 8 0 1 0 0-16zm-.615 12.66h-1.34l-3.24-4.54 1.341-1.25 2.569 2.4 5.141-5.931 1.34.94-5.811 8.381z'/%3E%3C/svg%3E")}#glsr-modal-review .glsr-read-more{display:none!important}#glsr-modal-verified .glsr-modal__footer{box-shadow:inset 0 .5px 0 var(--glsr-review-verified);color:var(--glsr-review-verified)}#glsr-modal-verified .glsr-modal__footer:after{background:currentColor;content:"";height:100%;left:0;opacity:.125;position:absolute;top:0;width:100%;z-index:-1}.glsr-debug{position:relative}.glsr-debug:before{background-color:currentColor;content:"";height:100%;left:0;opacity:.15;overflow:hidden;position:absolute;top:0;width:100%}.glsr-debug pre{font-family:Fira Code,Consolas,Monaco,monospace;font-size:12px;line-height:1.25;padding:10px;position:relative;z-index:1}.glsr-default{--glsr-toggled-bg:var(--glsr-blue)}.glsr-default form.glsr-form{font-size:var(--glsr-text-md);line-height:var(--glsr-leading)}.glsr-default form.glsr-form label.glsr-label{font-size:var(--glsr-label-text);font-weight:var(--glsr-label-weight);line-height:var(--glsr-leading);margin-bottom:var(--glsr-gap-xs);padding:0}.glsr-default form.glsr-form .glsr-label+.glsr-description{margin-bottom:var(--glsr-gap-xs)}.glsr-default form.glsr-form .glsr-description{font-size:var(--glsr-description-text);opacity:.75}.glsr-default form.glsr-form .glsr-description>*{margin-bottom:0!important;padding-bottom:0!important}.glsr-default form.glsr-form input.glsr-input,.glsr-default form.glsr-form select.glsr-select,.glsr-default form.glsr-form textarea.glsr-textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-clip:padding-box;background-color:var(--glsr-input-bg);border:var(--glsr-input-b);border-radius:var(--glsr-input-radius);color:var(--glsr-input-color);font-family:inherit;font-size:var(--glsr-text-md);line-height:var(--glsr-leading);min-height:auto!important;padding:var(--glsr-input-pt) var(--glsr-input-pr) var(--glsr-input-pb) var(--glsr-input-pl)!important;transition:var(--glsr-input-transition)}.glsr-default form.glsr-form input.glsr-input:focus,.glsr-default form.glsr-form select.glsr-select:focus,.glsr-default form.glsr-form textarea.glsr-textarea:focus{background-color:var(--glsr-input-bg);box-shadow:0 0 0 3px -moz-mac-focusring;box-shadow:0 0 0 3px -webkit-focus-ring-color;box-shadow:0 0 0 3px Highlight;outline:1px solid #fff0}.glsr-default form.glsr-form select.glsr-select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='m7 7 3-3 3 3m0 6-3 3-3-3' stroke='%239fa6b2' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right .5em center;background-repeat:no-repeat;background-size:1.5em 1.5em;height:auto;padding-right:3em;-webkit-print-color-adjust:exact;print-color-adjust:exact}.glsr-default form.glsr-form input.glsr-input-radio[type=radio],.glsr-default form.glsr-form input.glsr-input-range[type=radio],.glsr-default form.glsr-form input[type=checkbox].glsr-input-checkbox{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--glsr-white);background-origin:border-box;border:1px solid var(--glsr-gray-400);color:var(--glsr-blue);font-size:var(--glsr-text-md);height:var(--glsr-choice-h);min-height:auto;min-width:auto;-webkit-print-color-adjust:exact;print-color-adjust:exact;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:var(--glsr-choice-w)}.glsr-default form.glsr-form input.glsr-input-checkbox[type=checkbox]:after,.glsr-default form.glsr-form input.glsr-input-checkbox[type=checkbox]:before,.glsr-default form.glsr-form input.glsr-input-radio[type=radio]:after,.glsr-default form.glsr-form input.glsr-input-radio[type=radio]:before,.glsr-default form.glsr-form input.glsr-input-range[type=radio]:after,.glsr-default form.glsr-form input.glsr-input-range[type=radio]:before{display:none!important}.glsr-default form.glsr-form input.glsr-input-checkbox[type=checkbox]:checked,.glsr-default form.glsr-form input.glsr-input-radio[type=radio]:checked,.glsr-default form.glsr-form input.glsr-input-range[type=radio]:checked{background-color:currentColor;background-position:50%;background-repeat:no-repeat;background-size:100% 100%;border-color:#fff0}.glsr-default form.glsr-form input.glsr-input-checkbox[type=checkbox]:focus,.glsr-default form.glsr-form input.glsr-input-radio[type=radio]:focus,.glsr-default form.glsr-form input.glsr-input-range[type=radio]:focus{box-shadow:0 0 0 3px -moz-mac-focusring;box-shadow:0 0 0 3px -webkit-focus-ring-color;box-shadow:0 0 0 3px Highlight;outline:1px solid #fff0}.glsr-default form.glsr-form input.glsr-input-checkbox[type=checkbox]:checked:focus,.glsr-default form.glsr-form input.glsr-input-radio[type=radio]:checked:focus,.glsr-default form.glsr-form input.glsr-input-range[type=radio]:checked:focus{border-color:#fff0}.glsr-default form.glsr-form input[type=checkbox].glsr-input-checkbox{border-radius:var(--glsr-input-radius)}.glsr-default form.glsr-form input.glsr-input-checkbox[type=checkbox]:checked{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 16 16' fill='%23fff' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.707 7.293a1 1 0 0 0-1.414 1.414l2 2a1 1 0 0 0 1.414 0l4-4a1 1 0 0 0-1.414-1.414L7 8.586 5.707 7.293z'/%3E%3C/svg%3E")}.glsr-default form.glsr-form input.glsr-input-radio[type=radio],.glsr-default form.glsr-form input.glsr-input-range[type=radio]{border-radius:100%}.glsr-default form.glsr-form input.glsr-input-radio[type=radio]:checked,.glsr-default form.glsr-form input.glsr-input-range[type=radio]:checked{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 16 16' fill='%23fff' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='8' cy='8' r='3'/%3E%3C/svg%3E")}.glsr-default form.glsr-form .glsr-toggle label{font-size:var(--glsr-text-md);line-height:var(--glsr-leading);padding:0}.glsr-default form.glsr-form .glsr-toggle input[type=checkbox]:focus{outline:none}.glsr-default form.glsr-form .glsr-toggle input[type=checkbox]:focus+.glsr-toggle-track{box-shadow:0 0 0 3px Highlight;box-shadow:0 0 0 3px -moz-mac-focusring;box-shadow:0 0 0 3px -webkit-focus-ring-color;outline:1px solid #fff0}.glsr-default form.glsr-form .glsr-field-error{font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif;line-height:var(--glsr-leading)}.theme-twentytwentytwo .glsr-default .glsr-button{border:none}.theme-twentytwentytwo .glsr-default .glsr-button:hover{color:var(--glsr-white)}:root{--glsr-star-empty:url(https://iamchef.pro/wp-content/plugins/site-reviews/assets/images/stars/default/star-empty.svg);--glsr-star-error:url(https://iamchef.pro/wp-content/plugins/site-reviews/assets/images/stars/default/star-error.svg);--glsr-star-full:url(https://iamchef.pro/wp-content/plugins/site-reviews/assets/images/stars/default/star-full.svg);--glsr-star-half:url(https://iamchef.pro/wp-content/plugins/site-reviews/assets/images/stars/default/star-half.svg)}:root{--f-spinner-width:36px;--f-spinner-height:36px;--f-spinner-color-1:rgba(0, 0, 0, 0.1);--f-spinner-color-2:rgba(17, 24, 28, 0.8);--f-spinner-stroke:2.75}.f-spinner{margin:auto;padding:0;width:var(--f-spinner-width);height:var(--f-spinner-height)}.f-spinner svg{width:100%;height:100%;vertical-align:top;animation:f-spinner-rotate 2s linear infinite}.f-spinner svg *{stroke-width:var(--f-spinner-stroke);fill:none}.f-spinner svg *:first-child{stroke:var(--f-spinner-color-1)}.f-spinner svg *:last-child{stroke:var(--f-spinner-color-2);animation:f-spinner-dash 2s ease-in-out infinite}@keyframes f-spinner-rotate{100%{transform:rotate(360deg)}}@keyframes f-spinner-dash{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}100%{stroke-dasharray:90,150;stroke-dashoffset:-124}}.f-throwOutUp{animation:var(--f-throw-out-duration,0.175s) ease-out both f-throwOutUp}.f-throwOutDown{animation:var(--f-throw-out-duration,0.175s) ease-out both f-throwOutDown}@keyframes f-throwOutUp{to{transform:translate3d(0,calc(var(--f-throw-out-distance, 150px) * -1),0);opacity:0}}@keyframes f-throwOutDown{to{transform:translate3d(0,var(--f-throw-out-distance,150px),0);opacity:0}}.f-zoomInUp{animation:var(--f-transition-duration,0.2s) ease .1s both f-zoomInUp}.f-zoomOutDown{animation:var(--f-transition-duration,0.2s) ease both f-zoomOutDown}@keyframes f-zoomInUp{from{transform:scale(.975) translate3d(0,16px,0);opacity:0}to{transform:scale(1) translate3d(0,0,0);opacity:1}}@keyframes f-zoomOutDown{to{transform:scale(.975) translate3d(0,16px,0);opacity:0}}.f-fadeIn{animation:var(--f-transition-duration,0.2s) var(--f-transition-easing,ease) var(--f-transition-delay,0s) both f-fadeIn;z-index:2}.f-fadeOut{animation:var(--f-transition-duration,0.2s) var(--f-transition-easing,ease) var(--f-transition-delay,0s) both f-fadeOut;z-index:1}@keyframes f-fadeIn{0%{opacity:0}100%{opacity:1}}@keyframes f-fadeOut{100%{opacity:0}}.f-fadeFastIn{animation:var(--f-transition-duration,0.2s) ease-out both f-fadeFastIn;z-index:2}.f-fadeFastOut{animation:var(--f-transition-duration,0.1s) ease-out both f-fadeFastOut;z-index:2}@keyframes f-fadeFastIn{0%{opacity:.75}100%{opacity:1}}@keyframes f-fadeFastOut{100%{opacity:0}}.f-fadeSlowIn{animation:var(--f-transition-duration,0.5s) ease both f-fadeSlowIn;z-index:2}.f-fadeSlowOut{animation:var(--f-transition-duration,0.5s) ease both f-fadeSlowOut;z-index:1}@keyframes f-fadeSlowIn{0%{opacity:0}100%{opacity:1}}@keyframes f-fadeSlowOut{100%{opacity:0}}.f-crossfadeIn{animation:var(--f-transition-duration,0.2s) ease-out both f-crossfadeIn;z-index:2}.f-crossfadeOut{animation:calc(var(--f-transition-duration, 0.2s)*.5) linear .1s both f-crossfadeOut;z-index:1}@keyframes f-crossfadeIn{0%{opacity:0}100%{opacity:1}}@keyframes f-crossfadeOut{100%{opacity:0}}.f-slideIn.from-next{animation:var(--f-transition-duration,0.85s) cubic-bezier(.16,1,.3,1) f-slideInNext}.f-slideIn.from-prev{animation:var(--f-transition-duration,0.85s) cubic-bezier(.16,1,.3,1) f-slideInPrev}.f-slideOut.to-next{animation:var(--f-transition-duration,0.85s) cubic-bezier(.16,1,.3,1) f-slideOutNext}.f-slideOut.to-prev{animation:var(--f-transition-duration,0.85s) cubic-bezier(.16,1,.3,1) f-slideOutPrev}@keyframes f-slideInPrev{0%{transform:translateX(100%)}100%{transform:translate3d(0,0,0)}}@keyframes f-slideInNext{0%{transform:translateX(-100%)}100%{transform:translate3d(0,0,0)}}@keyframes f-slideOutNext{100%{transform:translateX(-100%)}}@keyframes f-slideOutPrev{100%{transform:translateX(100%)}}.f-classicIn.from-next{animation:var(--f-transition-duration,0.85s) cubic-bezier(.16,1,.3,1) f-classicInNext;z-index:2}.f-classicIn.from-prev{animation:var(--f-transition-duration,0.85s) cubic-bezier(.16,1,.3,1) f-classicInPrev;z-index:2}.f-classicOut.to-next{animation:var(--f-transition-duration,0.85s) cubic-bezier(.16,1,.3,1) f-classicOutNext;z-index:1}.f-classicOut.to-prev{animation:var(--f-transition-duration,0.85s) cubic-bezier(.16,1,.3,1) f-classicOutPrev;z-index:1}@keyframes f-classicInNext{0%{transform:translateX(-75px);opacity:0}100%{transform:translate3d(0,0,0);opacity:1}}@keyframes f-classicInPrev{0%{transform:translateX(75px);opacity:0}100%{transform:translate3d(0,0,0);opacity:1}}@keyframes f-classicOutNext{100%{transform:translateX(-75px);opacity:0}}@keyframes f-classicOutPrev{100%{transform:translateX(75px);opacity:0}}:root{--f-button-width:40px;--f-button-height:40px;--f-button-border:0;--f-button-border-radius:0;--f-button-color:#374151;--f-button-bg:#f8f8f8;--f-button-hover-bg:#e0e0e0;--f-button-active-bg:#d0d0d0;--f-button-shadow:none;--f-button-transition:all 0.15s ease;--f-button-transform:none;--f-button-svg-width:20px;--f-button-svg-height:20px;--f-button-svg-stroke-width:1.5;--f-button-svg-fill:none;--f-button-svg-filter:none;--f-button-svg-disabled-opacity:0.65}.f-button{display:flex;justify-content:center;align-items:center;box-sizing:content-box;position:relative;margin:0;padding:0;width:var(--f-button-width);height:var(--f-button-height);border:var(--f-button-border);border-radius:var(--f-button-border-radius);color:var(--f-button-color);background:var(--f-button-bg);box-shadow:var(--f-button-shadow);pointer-events:all;cursor:pointer;transition:var(--f-button-transition)}@media(hover:hover){.f-button:hover:not([disabled]){color:var(--f-button-hover-color);background-color:var(--f-button-hover-bg)}}.f-button:active:not([disabled]){background-color:var(--f-button-active-bg)}.f-button:focus:not(:focus-visible){outline:none}.f-button:focus-visible{outline:none;box-shadow:inset 0 0 0 var(--f-button-outline,2px) var(--f-button-outline-color,var(--f-button-color))}.f-button svg{width:var(--f-button-svg-width);height:var(--f-button-svg-height);fill:var(--f-button-svg-fill);stroke:currentColor;stroke-width:var(--f-button-svg-stroke-width);stroke-linecap:round;stroke-linejoin:round;transition:opacity .15s ease;transform:var(--f-button-transform);filter:var(--f-button-svg-filter);pointer-events:none}.f-button[disabled]{cursor:default}.f-button[disabled] svg{opacity:var(--f-button-svg-disabled-opacity)}.f-carousel__nav .f-button.is-prev,.f-carousel__nav .f-button.is-next,.fancybox__nav .f-button.is-prev,.fancybox__nav .f-button.is-next{position:absolute;z-index:1}.is-horizontal .f-carousel__nav .f-button.is-prev,.is-horizontal .f-carousel__nav .f-button.is-next,.is-horizontal .fancybox__nav .f-button.is-prev,.is-horizontal .fancybox__nav .f-button.is-next{top:50%;transform:translateY(-50%)}.is-horizontal .f-carousel__nav .f-button.is-prev,.is-horizontal .fancybox__nav .f-button.is-prev{left:var(--f-button-prev-pos)}.is-horizontal .f-carousel__nav .f-button.is-next,.is-horizontal .fancybox__nav .f-button.is-next{right:var(--f-button-next-pos)}.is-horizontal.is-rtl .f-carousel__nav .f-button.is-prev,.is-horizontal.is-rtl .fancybox__nav .f-button.is-prev{left:auto;right:var(--f-button-next-pos)}.is-horizontal.is-rtl .f-carousel__nav .f-button.is-next,.is-horizontal.is-rtl .fancybox__nav .f-button.is-next{right:auto;left:var(--f-button-prev-pos)}.is-vertical .f-carousel__nav .f-button.is-prev,.is-vertical .f-carousel__nav .f-button.is-next,.is-vertical .fancybox__nav .f-button.is-prev,.is-vertical .fancybox__nav .f-button.is-next{top:auto;left:50%;transform:translateX(-50%)}.is-vertical .f-carousel__nav .f-button.is-prev,.is-vertical .fancybox__nav .f-button.is-prev{top:var(--f-button-next-pos)}.is-vertical .f-carousel__nav .f-button.is-next,.is-vertical .fancybox__nav .f-button.is-next{bottom:var(--f-button-next-pos)}.is-vertical .f-carousel__nav .f-button.is-prev svg,.is-vertical .f-carousel__nav .f-button.is-next svg,.is-vertical .fancybox__nav .f-button.is-prev svg,.is-vertical .fancybox__nav .f-button.is-next svg{transform:rotate(90deg)}.f-carousel__nav .f-button:disabled,.fancybox__nav .f-button:disabled{pointer-events:none}html.with-fancybox{width:auto;overflow:visible;scroll-behavior:auto}html.with-fancybox body{touch-action:none}html.with-fancybox body.hide-scrollbar{width:auto;margin-right:calc(var(--fancybox-body-margin, 0px) + var(--fancybox-scrollbar-compensate, 0px));overflow:hidden!important;overscroll-behavior-y:none}.fancybox__container{--fancybox-color:#dbdbdb;--fancybox-hover-color:#fff;--fancybox-bg:rgba(24, 24, 27, 0.98);--fancybox-slide-gap:10px;--f-spinner-width:50px;--f-spinner-height:50px;--f-spinner-color-1:rgba(255, 255, 255, 0.1);--f-spinner-color-2:#bbb;--f-spinner-stroke:3.65;position:fixed;top:0;left:0;bottom:0;right:0;direction:ltr;display:flex;flex-direction:column;box-sizing:border-box;margin:0;padding:0;color:#f8f8f8;-webkit-tap-highlight-color:#fff0;overflow:visible;z-index:var(--fancybox-zIndex,1050);outline:none;transform-origin:top left;-webkit-text-size-adjust:100%;-moz-text-size-adjust:none;-ms-text-size-adjust:100%;text-size-adjust:100%;overscroll-behavior-y:contain}.fancybox__container *,.fancybox__container *::before,.fancybox__container *::after{box-sizing:inherit}.fancybox__container::backdrop{background-color:#fff0}.fancybox__backdrop{position:fixed;top:0;left:0;bottom:0;right:0;z-index:-1;background:var(--fancybox-bg);opacity:var(--fancybox-opacity,1);will-change:opacity}.fancybox__carousel{position:relative;box-sizing:border-box;flex:1;min-height:0;z-index:10;overflow-y:visible;overflow-x:clip}.fancybox__viewport{width:100%;height:100%}.fancybox__viewport.is-draggable{cursor:move;cursor:grab}.fancybox__viewport.is-dragging{cursor:move;cursor:grabbing}.fancybox__track{display:flex;margin:0 auto;height:100%}.fancybox__slide{flex:0 0 auto;position:relative;display:flex;flex-direction:column;align-items:center;width:100%;height:100%;margin:0 var(--fancybox-slide-gap) 0 0;padding:4px;overflow:auto;overscroll-behavior:contain;transform:translate3d(0,0,0);backface-visibility:hidden}.fancybox__container:not(.is-compact) .fancybox__slide.has-close-btn{padding-top:40px}.fancybox__slide.has-iframe,.fancybox__slide.has-video,.fancybox__slide.has-html5video{overflow:hidden}.fancybox__slide.has-image{overflow:hidden}.fancybox__slide.has-image.is-animating,.fancybox__slide.has-image.is-selected{overflow:visible}.fancybox__slide::before,.fancybox__slide::after{content:"";flex:0 0 0%;margin:auto}.fancybox__backdrop:empty,.fancybox__viewport:empty,.fancybox__track:empty,.fancybox__slide:empty{display:block}.fancybox__content{align-self:center;display:flex;flex-direction:column;position:relative;margin:0;padding:2rem;max-width:100%;color:var(--fancybox-content-color,#374151);background:var(--fancybox-content-bg,#fff);cursor:default;border-radius:0;z-index:20}.is-loading .fancybox__content{opacity:0}.is-draggable .fancybox__content{cursor:move;cursor:grab}.can-zoom_in .fancybox__content{cursor:zoom-in}.can-zoom_out .fancybox__content{cursor:zoom-out}.is-dragging .fancybox__content{cursor:move;cursor:grabbing}.fancybox__content [data-selectable],.fancybox__content [contenteditable]{cursor:auto}.fancybox__slide.has-image>.fancybox__content{padding:0;background:#fff0;min-height:1px;background-repeat:no-repeat;background-size:contain;background-position:center center;transition:none;transform:translate3d(0,0,0);backface-visibility:hidden}.fancybox__slide.has-image>.fancybox__content>picture>img{width:100%;height:auto;max-height:100%}.is-animating .fancybox__content,.is-dragging .fancybox__content{will-change:transform,width,height}.fancybox-image{margin:auto;display:block;width:100%;height:100%;min-height:0;object-fit:contain;user-select:none;filter:blur(0)}.fancybox__caption{align-self:center;max-width:100%;flex-shrink:0;margin:0;padding:14px 0 4px 0;overflow-wrap:anywhere;line-height:1.375;color:var(--fancybox-color,currentColor);opacity:var(--fancybox-opacity,1);cursor:auto;visibility:visible}.is-loading .fancybox__caption,.is-closing .fancybox__caption{opacity:0;visibility:hidden}.is-compact .fancybox__caption{padding-bottom:0}.f-button.is-close-btn{--f-button-svg-stroke-width:2;position:absolute;top:0;right:8px;z-index:40}.fancybox__content>.f-button.is-close-btn{--f-button-width:34px;--f-button-height:34px;--f-button-border-radius:4px;--f-button-color:var(--fancybox-color, #fff);--f-button-hover-color:var(--fancybox-color, #fff);--f-button-bg:transparent;--f-button-hover-bg:transparent;--f-button-active-bg:transparent;--f-button-svg-width:22px;--f-button-svg-height:22px;position:absolute;top:-38px;right:0;opacity:.75}.is-loading .fancybox__content>.f-button.is-close-btn{visibility:hidden}.is-zooming-out .fancybox__content>.f-button.is-close-btn{visibility:hidden}.fancybox__content>.f-button.is-close-btn:hover{opacity:1}.fancybox__footer{padding:0;margin:0;position:relative}.fancybox__footer .fancybox__caption{width:100%;padding:24px;opacity:var(--fancybox-opacity,1);transition:all .25s ease}.is-compact .fancybox__footer{position:absolute;bottom:0;left:0;right:0;z-index:20;background:rgb(24 24 27 / .5)}.is-compact .fancybox__footer .fancybox__caption{padding:12px}.is-compact .fancybox__content>.f-button.is-close-btn{--f-button-border-radius:50%;--f-button-color:#fff;--f-button-hover-color:#fff;--f-button-outline-color:#000;--f-button-bg:rgba(0, 0, 0, 0.6);--f-button-active-bg:rgba(0, 0, 0, 0.6);--f-button-hover-bg:rgba(0, 0, 0, 0.6);--f-button-svg-width:18px;--f-button-svg-height:18px;--f-button-svg-filter:none;top:5px;right:5px}.fancybox__nav{--f-button-width:50px;--f-button-height:50px;--f-button-border:0;--f-button-border-radius:50%;--f-button-color:var(--fancybox-color);--f-button-hover-color:var(--fancybox-hover-color);--f-button-bg:transparent;--f-button-hover-bg:rgba(24, 24, 27, 0.3);--f-button-active-bg:rgba(24, 24, 27, 0.5);--f-button-shadow:none;--f-button-transition:all 0.15s ease;--f-button-transform:none;--f-button-svg-width:26px;--f-button-svg-height:26px;--f-button-svg-stroke-width:2.5;--f-button-svg-fill:none;--f-button-svg-filter:drop-shadow(1px 1px 1px rgba(24, 24, 27, 0.5));--f-button-svg-disabled-opacity:0.65;--f-button-next-pos:1rem;--f-button-prev-pos:1rem;opacity:var(--fancybox-opacity,1)}.fancybox__nav .f-button:before{position:absolute;content:"";top:-30px;right:-20px;left:-20px;bottom:-30px;z-index:1}.is-idle .fancybox__nav{animation:.15s ease-out both f-fadeOut}.is-idle.is-compact .fancybox__footer{pointer-events:none;animation:.15s ease-out both f-fadeOut}.fancybox__slide>.f-spinner{position:absolute;top:50%;left:50%;margin:var(--f-spinner-top,calc(var(--f-spinner-width) * -0.5)) 0 0 var(--f-spinner-left,calc(var(--f-spinner-height) * -0.5));z-index:30;cursor:pointer}.fancybox-protected{position:absolute;top:0;left:0;right:0;bottom:0;z-index:40;user-select:none}.fancybox-ghost{position:absolute;top:0;left:0;width:100%;height:100%;min-height:0;object-fit:contain;z-index:40;user-select:none;pointer-events:none}.fancybox-focus-guard{outline:none;opacity:0;position:fixed;pointer-events:none}.fancybox__container:not([aria-hidden]){opacity:0}.fancybox__container.is-animated[aria-hidden=false]>*:not(.fancybox__backdrop,.fancybox__carousel),.fancybox__container.is-animated[aria-hidden=false] .fancybox__carousel>*:not(.fancybox__viewport),.fancybox__container.is-animated[aria-hidden=false] .fancybox__slide>*:not(.fancybox__content){animation:var(--f-interface-enter-duration,0.25s) ease .1s backwards f-fadeIn}.fancybox__container.is-animated[aria-hidden=false] .fancybox__backdrop{animation:var(--f-backdrop-enter-duration,0.35s) ease backwards f-fadeIn}.fancybox__container.is-animated[aria-hidden=true]>*:not(.fancybox__backdrop,.fancybox__carousel),.fancybox__container.is-animated[aria-hidden=true] .fancybox__carousel>*:not(.fancybox__viewport),.fancybox__container.is-animated[aria-hidden=true] .fancybox__slide>*:not(.fancybox__content){animation:var(--f-interface-exit-duration,0.15s) ease forwards f-fadeOut}.fancybox__container.is-animated[aria-hidden=true] .fancybox__backdrop{animation:var(--f-backdrop-exit-duration,0.35s) ease forwards f-fadeOut}.has-iframe .fancybox__content,.has-map .fancybox__content,.has-pdf .fancybox__content,.has-youtube .fancybox__content,.has-vimeo .fancybox__content,.has-html5video .fancybox__content{max-width:100%;flex-shrink:1;min-height:1px;overflow:visible}.has-iframe .fancybox__content,.has-map .fancybox__content,.has-pdf .fancybox__content{width:calc(100% - 120px);height:90%}.fancybox__container.is-compact .has-iframe .fancybox__content,.fancybox__container.is-compact .has-map .fancybox__content,.fancybox__container.is-compact .has-pdf .fancybox__content{width:100%;height:100%}.has-youtube .fancybox__content,.has-vimeo .fancybox__content,.has-html5video .fancybox__content{width:960px;height:540px;max-width:100%;max-height:100%}.has-map .fancybox__content,.has-pdf .fancybox__content,.has-youtube .fancybox__content,.has-vimeo .fancybox__content,.has-html5video .fancybox__content{padding:0;background:rgb(24 24 27 / .9);color:#fff}.has-map .fancybox__content{background:#e5e3df}.fancybox__html5video,.fancybox__iframe{border:0;display:block;height:100%;width:100%;background:#fff0}.fancybox-placeholder{border:0!important;clip:rect(1px,1px,1px,1px)!important;-webkit-clip-path:inset(50%)!important;clip-path:inset(50%)!important;height:1px!important;margin:-1px!important;overflow:hidden!important;padding:0!important;position:absolute!important;width:1px!important;white-space:nowrap!important}.f-carousel__thumbs{--f-thumb-width:96px;--f-thumb-height:72px;--f-thumb-outline:0;--f-thumb-outline-color:#5eb0ef;--f-thumb-opacity:1;--f-thumb-hover-opacity:1;--f-thumb-selected-opacity:1;--f-thumb-border-radius:2px;--f-thumb-offset:0px;--f-button-next-pos:0;--f-button-prev-pos:0}.f-carousel__thumbs.is-classic{--f-thumb-gap:8px;--f-thumb-opacity:0.5;--f-thumb-hover-opacity:1;--f-thumb-selected-opacity:1}.f-carousel__thumbs.is-modern{--f-thumb-gap:4px;--f-thumb-extra-gap:16px;--f-thumb-clip-width:46px}.f-thumbs{position:relative;flex:0 0 auto;margin:0;overflow:hidden;-webkit-tap-highlight-color:#fff0;user-select:none;perspective:1000px;transform:translateZ(0)}.f-thumbs .f-spinner{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:2px;background-image:linear-gradient(#ebeff2,#e2e8f0);z-index:-1}.f-thumbs .f-spinner svg{display:none}.f-thumbs.is-vertical{height:100%}.f-thumbs__viewport{width:100%;height:auto;overflow:hidden;transform:translate3d(0,0,0)}.f-thumbs__track{display:flex}.f-thumbs__slide{position:relative;flex:0 0 auto;box-sizing:content-box;display:flex;align-items:center;justify-content:center;padding:0;margin:0;width:var(--f-thumb-width);height:var(--f-thumb-height);overflow:visible;cursor:pointer}.f-thumbs__slide.is-loading img{opacity:0}.is-classic .f-thumbs__viewport{height:100%}.is-modern .f-thumbs__track{width:max-content}.is-modern .f-thumbs__track::before{content:"";position:absolute;top:0;bottom:0;left:calc((var(--f-thumb-clip-width, 0))*-0.5);width:calc(var(--width, 0)*1px + var(--f-thumb-clip-width, 0));cursor:pointer}.is-modern .f-thumbs__slide{width:var(--f-thumb-clip-width);transform:translate3d(calc(var(--shift, 0) * -1px),0,0);transition:none;pointer-events:none}.is-modern.is-resting .f-thumbs__slide{transition:transform .33s ease}.is-modern.is-resting .f-thumbs__slide__button{transition:clip-path .33s ease}.is-using-tab .is-modern .f-thumbs__slide:focus-within{filter:drop-shadow(-1px 0 0 var(--f-thumb-outline-color)) drop-shadow(2px 0 0 var(--f-thumb-outline-color)) drop-shadow(0 -1px 0 var(--f-thumb-outline-color)) drop-shadow(0 2px 0 var(--f-thumb-outline-color))}.f-thumbs__slide__button{appearance:none;width:var(--f-thumb-width);height:100%;margin:0 -100% 0 -100%;padding:0;border:0;position:relative;border-radius:var(--f-thumb-border-radius);overflow:hidden;background:#fff0;outline:none;cursor:pointer;pointer-events:auto;touch-action:manipulation;opacity:var(--f-thumb-opacity);transition:opacity .2s ease}.f-thumbs__slide__button:hover{opacity:var(--f-thumb-hover-opacity)}.f-thumbs__slide__button:focus:not(:focus-visible){outline:none}.f-thumbs__slide__button:focus-visible{outline:none;opacity:var(--f-thumb-selected-opacity)}.is-modern .f-thumbs__slide__button{--clip-path:inset( 0 calc( ((var(--f-thumb-width, 0) - var(--f-thumb-clip-width, 0))) * (1 - var(--progress, 0)) * 0.5 ) round var(--f-thumb-border-radius, 0) );clip-path:var(--clip-path)}.is-classic .is-nav-selected .f-thumbs__slide__button{opacity:var(--f-thumb-selected-opacity)}.is-classic .is-nav-selected .f-thumbs__slide__button::after{content:"";position:absolute;top:0;left:0;right:0;height:auto;bottom:0;border:var(--f-thumb-outline,0) solid var(--f-thumb-outline-color,transparent);border-radius:var(--f-thumb-border-radius);animation:f-fadeIn .2s ease-out;z-index:10}.f-thumbs__slide__img{overflow:hidden;position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;padding:var(--f-thumb-offset);box-sizing:border-box;pointer-events:none;object-fit:cover;border-radius:var(--f-thumb-border-radius)}.f-thumbs.is-horizontal .f-thumbs__track{padding:8px 0 12px 0}.f-thumbs.is-horizontal .f-thumbs__slide{margin:0 var(--f-thumb-gap) 0 0}.f-thumbs.is-vertical .f-thumbs__track{flex-wrap:wrap;padding:0 8px}.f-thumbs.is-vertical .f-thumbs__slide{margin:0 0 var(--f-thumb-gap) 0}.fancybox__thumbs{--f-thumb-width:96px;--f-thumb-height:72px;--f-thumb-border-radius:2px;--f-thumb-outline:2px;--f-thumb-outline-color:#ededed;position:relative;opacity:var(--fancybox-opacity,1);transition:max-height .35s cubic-bezier(.23,1,.32,1)}.fancybox__thumbs.is-classic{--f-thumb-gap:8px;--f-thumb-opacity:0.5;--f-thumb-hover-opacity:1}.fancybox__thumbs.is-classic .f-spinner{background-image:linear-gradient(rgb(255 255 255 / .1),rgb(255 255 255 / .05))}.fancybox__thumbs.is-modern{--f-thumb-gap:4px;--f-thumb-extra-gap:16px;--f-thumb-clip-width:46px;--f-thumb-opacity:1;--f-thumb-hover-opacity:1}.fancybox__thumbs.is-modern .f-spinner{background-image:linear-gradient(rgb(255 255 255 / .1),rgb(255 255 255 / .05))}.fancybox__thumbs.is-horizontal{padding:0 var(--f-thumb-gap)}.fancybox__thumbs.is-vertical{padding:var(--f-thumb-gap) 0}.is-compact .fancybox__thumbs{--f-thumb-width:64px;--f-thumb-clip-width:32px;--f-thumb-height:48px;--f-thumb-extra-gap:10px}.fancybox__thumbs.is-masked{max-height:0px!important}.is-closing .fancybox__thumbs{transition:none!important}.fancybox__toolbar{--f-progress-color:var(--fancybox-color, rgba(255, 255, 255, 0.94));--f-button-width:46px;--f-button-height:46px;--f-button-color:var(--fancybox-color);--f-button-hover-color:var(--fancybox-hover-color);--f-button-bg:rgba(24, 24, 27, 0.65);--f-button-hover-bg:rgba(70, 70, 73, 0.65);--f-button-active-bg:rgba(90, 90, 93, 0.65);--f-button-border-radius:0;--f-button-svg-width:24px;--f-button-svg-height:24px;--f-button-svg-stroke-width:1.5;--f-button-svg-filter:drop-shadow(1px 1px 1px rgba(24, 24, 27, 0.15));--f-button-svg-fill:none;--f-button-svg-disabled-opacity:0.65;display:flex;flex-direction:row;justify-content:space-between;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI Adjusted","Segoe UI","Liberation Sans",sans-serif;color:var(--fancybox-color,currentColor);opacity:var(--fancybox-opacity,1);text-shadow:var(--fancybox-toolbar-text-shadow,1px 1px 1px rgb(0 0 0 / .5));pointer-events:none;z-index:20}.fancybox__toolbar :focus-visible{z-index:1}.fancybox__toolbar.is-absolute,.is-compact .fancybox__toolbar{position:absolute;top:0;left:0;right:0}.is-idle .fancybox__toolbar{pointer-events:none;animation:.15s ease-out both f-fadeOut}.fancybox__toolbar__column{display:flex;flex-direction:row;flex-wrap:wrap;align-content:flex-start}.fancybox__toolbar__column.is-left,.fancybox__toolbar__column.is-right{flex-grow:1;flex-basis:0%}.fancybox__toolbar__column.is-right{display:flex;justify-content:flex-end;flex-wrap:nowrap}.fancybox__infobar{padding:0 5px;line-height:var(--f-button-height);text-align:center;font-size:17px;font-variant-numeric:tabular-nums;-webkit-font-smoothing:subpixel-antialiased;cursor:default;user-select:none}.fancybox__infobar span{padding:0 5px}.fancybox__infobar:not(:first-child):not(:last-child){background:var(--f-button-bg)}[data-fancybox-toggle-slideshow]{position:relative}[data-fancybox-toggle-slideshow] .f-progress{height:100%;opacity:.3}[data-fancybox-toggle-slideshow] svg g:first-child{display:flex}[data-fancybox-toggle-slideshow] svg g:last-child{display:none}.has-slideshow [data-fancybox-toggle-slideshow] svg g:first-child{display:none}.has-slideshow [data-fancybox-toggle-slideshow] svg g:last-child{display:flex}[data-fancybox-toggle-fullscreen] svg g:first-child{display:flex}[data-fancybox-toggle-fullscreen] svg g:last-child{display:none}:fullscreen [data-fancybox-toggle-fullscreen] svg g:first-child{display:none}:fullscreen [data-fancybox-toggle-fullscreen] svg g:last-child{display:flex}.f-progress{position:absolute;top:0;left:0;right:0;height:3px;transform:scaleX(0);transform-origin:0;transition-property:transform;transition-timing-function:linear;background:var(--f-progress-color,var(--f-carousel-theme-color,#0091ff));z-index:30;user-select:none;pointer-events:none}
/* ================== Normalize =================== */
:root {
  /* ШРИФТИ */
  --font-family-main: "Inter", sans-serif;
  --font-family-secondary: "Inter", sans-serif;
  --font-body: "Inter", sans-serif;
  --font-header: "Playfair Display", sans-serif;
  /* РОЗМІРИ ШРИФТІВ (Typography Scale) */
  --fs-xs: 0.75rem;
  /* 12px */
  --fs-sm: 0.875rem;
  /* 14px */
  --fs-base: 1rem;
  /* 16px - Основний текст */
  --fs-md: 1.125rem;
  /* 18px */
  --fs-lg: 1.25rem;
  /* 20px */
  --fs-xl: 1.5rem;
  /* 24px */
  --fs-2xl: 1.875rem;
  /* 30px */
  --fs-3xl: 2.25rem;
  /* 36px */
  --fs-4xl: 3rem;
  /* 48px */
  /* ОСНОВНА БАЗА */
  --color-bg: #ffffff;
  /* ТИПОГРАФІКА */
  --color-text-main: rgb(26, 24, 20);
  --color-text-secondary: #5D6848;
  --color-text-muted: #3c3c3c;
  --color-text-light: rgba(0, 0, 0, 0.2);
  /* АКЦЕНТИ ТА ГРАФІКА */
  --color-accent: #E07A5F;
  --color-divider: #E8E2D8;
  /* ДОДАТКОВІ КОЛЬОРИ */
  --color-nature: rgb(132, 134, 113);
  --color-surface: rgb(242, 240, 235);
  --color-contrast: rgb(28, 25, 23);
  --color-danger: rgb(153, 101, 94);
  --color-danger-hover: rgb(130, 80, 75);
  /* ДОДАТКОВІ ТОКЕНИ КОЛЬОРІВ */
  --color-dark: rgb(26, 24, 20);
  --color-warm-dark: #3a352d;
  --color-text-muted-alt: #737373;
  --color-danger-alt: #c84131;
  --color-nature-dark: #6b723d;
  --color-accent-orange: #f25922;
  --color-bg-light: #f5f5f5;
  --color-bg-warm: #fbfaf7;
  --color-bg-cream: #faf6f1;
  --color-brown-black: #1a1814;
  --color-yellow: #ffcc00;
  --color-border-light: #e5e7eb;
  --color-bg-dark: #111827;
  --color-bg-gray: #f3f4f6;
  --color-gray-dark: #2d2d2d;
  /* AUTOMATICALLY GENERATED VARIABLES (STANDARDIZED & MERGED) */
  --color-brand-facebook: #0088cc;
  --color-brand-instagram: #e1306c;
  --color-calories: #b45309;
  --color-calories-bg: #fef3c7;
  --color-carbs: #385723;
  --color-carbs-bg: #e2f0d9;
  --color-fats: #be185d;
  --color-fats-bg: #fce7f3;
  --color-info-blue: #2563eb;
  --color-protein: #1d4ed8;
  --color-protein-bg: #dbeafe;
  --color-rgba-0-0-0-0-05: rgba(0, 0, 0, 0.05);
  --color-rgba-0-0-0-0-15: rgba(0, 0, 0, 0.15);
  --color-rgba-0-0-0-0-25: rgba(0, 0, 0, 0.25);
  --color-rgba-0-0-0-0-5: rgba(0, 0, 0, 0.5);
  --color-rgba-0-0-0-0-85: rgba(0, 0, 0, 0.85);
  --color-rgba-255-255-255-0-1: rgba(255, 255, 255, 0.1);
  --color-rgba-255-255-255-0-2: rgba(255, 255, 255, 0.2);
  --color-rgba-255-255-255-0-5: rgba(255, 255, 255, 0.5);
  --color-rgba-255-255-255-0-8: rgba(255, 255, 255, 0.8);
  --color-success-green: #2e7d32;
}

:root {
  /* =====================================================
      BRAND COLORS
      Фірмові кольори IamChef
   ====================================================== */
  --color-sage: rgb(93, 104, 72);
  /* Основний бренд. Кнопки, активні елементи, акценти */
  --color-sage-hover: rgb(76, 86, 59);
  /* Hover для основних кнопок */
  --color-terracotta: rgb(201, 134, 103);
  /* Другорядний акцент. Badge, категорії, іконки */
  --color-terracotta-hover: rgb(177, 111, 81);
  /* Hover акцентного кольору */
  --color-champagne: rgb(216, 199, 161);
  /* Premium, золоті акценти, статистика */
  --color-cream: rgb(252, 250, 246);
  /* Основний кремовий фон */
  --color-dusty-olive: rgb(141, 149, 117);
  /* Додаткові бренд-елементи */
  --color-espresso: rgb(43, 37, 33);
  /* Найтемніший бренд-колір */
  /* =====================================================
      BACKGROUNDS
      Фони
   ====================================================== */
  --color-bg-main: rgb(252, 250, 247);
  /* Основний фон сайту */
  --color-bg-section: rgb(246, 241, 232);
  /* Альтернативний фон секцій */
  --color-bg-card: rgb(255, 255, 255);
  /* Фон карток */
  --color-bg-card-hover: rgb(255, 252, 248);
  /* Hover карток */
  --color-bg-dark: rgb(31, 28, 24);
  /* Footer, темні блоки */
  /* =====================================================
      TEXT
      Текст
   ====================================================== */
  --color-heading: rgb(44, 38, 34);
  /* Заголовки */
  --color-body: rgb(111, 103, 95);
  /* Основний текст */
  --color-caption: rgb(157, 148, 139);
  /* Підписи, другорядний текст */
  --color-text-inverse: rgb(255, 255, 255);
  --color-text-gray: #7C746D;
  /* Текст на темному фоні */
  /* =====================================================
      BORDERS
      Межі
   ====================================================== */
  --color-border: #e9e2d8;
  /* Межі карток, input, таблиць */
  --color-divider: #efe8de;
  /* Роздільники між секціями */
  /* =====================================================
      FEEDBACK
      Стани
   ====================================================== */
  --color-success: rgb(138, 174, 122);
  /* Success, підтвердження, корисно */
  --color-warning: rgb(205, 185, 143);
  /* Warning, попередження */
  --color-danger: rgb(201, 123, 103);
  /* Danger, помилки, небезпека */
  --color-info: rgb(141, 167, 165);
  /* Information, підказки */
  /* =====================================================
      CATEGORY COLORS
      Категорії
   ====================================================== */
  --color-category-food: rgb(216, 226, 207);
  /* Продукти */
  --color-category-health: rgb(247, 221, 213);
  /* Здоров'я */
  --color-category-meal-plan: rgb(231, 228, 214);
  /* Раціони */
  --color-category-psychology: rgb(221, 231, 230);
  /* Психологія */
  --color-category-vitamins: rgb(247, 232, 184);
  /* Вітаміни */
  --color-category-sport: rgb(216, 230, 235);
  /* Спорт */
  --color-category-tips: rgb(239, 228, 212);
  /* Поради */
  /* =====================================================
      LINKS
   ====================================================== */
  --color-link: rgb(93, 104, 72);
  /* Колір посилань */
  --color-link-hover: rgb(123, 139, 92);
  /* Hover посилань */
  /* =====================================================
      COMPONENTS
      Компоненти
   ====================================================== */
  --color-rating: rgb(230, 185, 92);
  /* Зірочки рейтингу */
  --color-overlay: rgba(31, 28, 24, .55);
  /* Overlay модальних вікон */
  --color-disabled: rgb(199, 199, 199);
  /* Disabled елементи */
  --color-shadow: rgba(44, 38, 34, .08);
  /* Стандартна тінь */
  --color-focus: rgb(93, 104, 72);
  /* Focus для input та кнопок */
  --color-selection: rgb(216, 199, 161);
  /* Виділення тексту */
}

* {
  box-sizing: border-box;
}

body,
html {
  min-height: 100%;
}

body {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
  display: block;
}

input,
textarea {
  padding: 0;
  margin: 0;
  outline: none;
  line-height: 1;
}

input:focus,
input:active {
  outline: none;
  outline: 0;
  outline-offset: 0;
}

button {
  border: none;
  background: transparent;
  text-decoration: none;
  line-height: 1;
  padding: 0;
  outline: none;
  box-shadow: none;
}
button:focus {
  outline: none;
  box-shadow: none;
}

a {
  text-decoration: none;
  line-height: 1;
}

p {
  padding: 0;
  margin: 0;
}

/* ================== Layout =================== */
.tac {
  text-align: center;
}

.t-bm {
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  .t-bm {
    margin-bottom: 40px;
  }
}

.t-mb-small {
  margin-bottom: 30px;
}

.im-b {
  position: relative;
  overflow: hidden;
}
.im-b img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

html {
  padding: 0 !important;
  margin: 0 !important;
}

body {
  min-width: 360px;
  font-size: 16px;
  line-height: 1.44;
  color: var(--color-text-main);
  background-color: #fcfaf6;
  background: #fff;
  font-weight: 400;
  position: relative;
  font-family: var(--font-family-main);
}
@media (max-width: 1199px) {
  body.admin-bar {
    margin-top: 0 !important;
  }
}
body.body-hidden {
  overflow: hidden;
}

/* ================== General =================== */
.main {
  width: 100%;
  height: auto;
  position: relative;
  min-height: calc(100vh - 311px);
  overflow: hidden;
  padding-top: 85px;
}
@media (max-width: 1199px) {
  .main {
    padding-top: 60px;
  }
}

@media (max-width: 1199px) {
  #wpadminbar {
    display: none !important;
  }
}

.tl-wid ul {
  list-style: none;
  padding-left: 0 !important;
}
.tl-wid ul li {
  padding-left: 0 !important;
}
.tl-wid ul li::before {
  display: none;
}

.overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--color-text-light);
  backdrop-filter: blur(4px);
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
  z-index: 150;
}
.overlay.active {
  opacity: 1;
  visibility: visible;
}

.container {
  width: 100%;
  max-width: 1440px;
  padding: 0 20px;
  margin: 0 auto;
  height: auto;
  position: relative;
}
@media (max-width: 767px) {
  .container {
    padding: 0 12px;
  }
}

.container-medium {
  max-width: 1360px;
}

.container-small {
  max-width: 1250px;
}

section {
  position: relative;
  width: 100%;
  height: auto;
  overflow-x: hidden;
  padding: 3rem 0;
}

.filter-header {
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 32px;
}

.section-divider {
  width: 190px;
  margin: 64px auto;
  display: block;
  opacity: 0.5;
}

.scrollbar::-webkit-scrollbar {
  width: 9px;
  border-radius: 40px;
}
.scrollbar::-webkit-scrollbar-track {
  background-color: var(--color-surface);
  border-radius: 40px;
}
.scrollbar::-webkit-scrollbar-thumb {
  background: -webkit-gradient(linear, left top, right top, from(var(--color-text-muted)), to(var(--color-text-muted-alt)));
  border-radius: 40px;
  cursor: pointer;
}
.scrollbar::-webkit-scrollbar-thumb:hover {
  background-color: var(--color-contrast);
}

.modal {
  display: none;
  width: 100%;
  max-width: 600px;
}
@media (max-width: 767px) {
  .modal {
    height: 100%;
  }
}

a {
  color: var(--color-text-main);
}

.spt-0 {
  padding-top: 0;
}

.spb-64 {
  padding-bottom: 4rem;
}

.stickyElements {
  position: sticky;
  top: 100px;
}

.home-title {
  margin-bottom: 30px;
}

.br-bottom {
  border-bottom: 1px solid var(--color-divider);
}

.titleAndCount {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 20px;
}
.titleAndCount .title {
  line-height: 1;
  display: flex;
  align-items: flex-end;
}
.titleAndCount .title span {
  font-size: 50%;
  color: var(--color-text-muted);
  padding-bottom: 3px;
  display: block;
  margin-left: 5px;
}

.titleAndFilter {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 20px;
}
.titleAndFilter_right {
  display: flex;
  align-items: center;
}
.titleAndFilter .recipes-count {
  display: flex;
  align-items: center;
  font-size: 12px;
  color: var(--color-text-main);
  line-height: 1.2;
  margin-top: 4px;
}
.titleAndFilter .recipes-count p {
  font-size: 14px;
  color: var(--color-text-main);
  line-height: 1.2;
  margin-left: 3px;
  margin-right: 2px;
}
.titleAndFilter .title {
  font-weight: 700;
  line-height: 1;
  display: flex;
  align-items: flex-end;
}
.titleAndFilter .title span {
  font-size: 50%;
  opacity: 0.75;
  padding-bottom: 3px;
  display: block;
  margin-left: 5px;
}
.titleAndFilter.center {
  margin-bottom: 30px;
}
.titleAndFilter.center .titleAndFilter_left {
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media (max-width: 767px) {
  .titleAndFilter.center .titleAndFilter_left {
    align-items: flex-start;
    margin: 0;
  }
}

.block-head {
  position: relative;
  padding: 12px 0;
  background-color: var(--color-rgba-0-0-0-0-05);
}
.block-head-title {
  text-align: center;
  font-size: 22px;
}

.countAndSorting {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1.25rem;
  border-bottom: 1px solid var(--color-divider);
  padding: 16px 0;
}
.countAndSorting .numberPosts {
  font-size: 14px;
  font-weight: 400;
  display: flex;
  align-items: flex-end;
  line-height: 1;
  gap: 4px;
}
.countAndSorting .numberPosts p {
  font-size: 11px;
  display: block;
  line-height: 1;
}
.countAndSorting__col {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.postThumbnail {
  position: relative;
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  overflow: hidden;
  margin-bottom: 24px;
  overflow: hidden;
}
@media (max-width: 767px) {
  .postThumbnail {
    margin-top: 0px;
    aspect-ratio: 16/9;
    width: calc(100% + 32px);
    left: -16px;
  }
}

.recipes-views {
  display: none;
  align-items: center;
  font-size: 12px;
  color: var(--color-text-main);
  line-height: 1.2;
}
.recipes-views p {
  font-size: 12px;
  font-weight: 500;
  color: var(--color-text-main);
  line-height: 1.2;
  margin-left: 3px;
}

.admin-bar .recipes-views {
  display: flex;
}

.development {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 50px;
}
.development img {
  display: block;
  width: 100%;
  max-width: 500px;
  margin-bottom: 30px;
}

.s-recipes {
  position: relative;
  padding: 3rem 0;
  border-top: 1px solid var(--color-divider, rgba(17, 17, 17, 0.05));
  overflow: hidden;
}
@media (max-width: 767px) {
  .s-recipes {
    padding: 2rem 0;
  }
}
.s-recipes__header {
  margin-bottom: 2rem;
}
.s-recipes__tag {
  font-size: 11px;
  font-weight: 700;
  color: var(--color-text-secondary);
  letter-spacing: 1.5px;
  text-transform: uppercase;
  margin-bottom: 6px;
  display: block;
}
.s-recipes__title-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 1.5rem;
}
.s-recipes__title {
  font-family: var(--font-family-secondary);
  font-size: 28px;
  font-weight: 800;
  color: var(--color-text-main);
  margin: 0;
  line-height: 1.2;
}
.s-recipes__title span {
  color: var(--color-text-secondary);
  font-style: italic;
  font-weight: 400;
}
.s-recipes__nav {
  display: flex;
  gap: 8px;
}
@media (max-width: 767px) {
  .s-recipes__nav {
    display: none;
  }
}
.s-recipes__nav-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 1px solid var(--color-divider, rgba(17, 17, 17, 0.15));
  background: var(--color-surface, #fff);
  color: var(--color-text-main);
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.s-recipes__nav-btn:hover {
  background: var(--color-accent, #c4622d);
  border-color: var(--color-text-secondary);
  color: var(--color-bg);
  transform: translateY(-1px);
}
.s-recipes__nav-btn:active {
  transform: translateY(0);
}
.s-recipes__nav-btn svg {
  width: 16px;
  height: 16px;
}
.s-recipes__slider {
  overflow: visible;
  padding-bottom: 1rem;
}
.s-recipes .swiper-slide {
  width: 280px;
  height: auto;
}
@media (max-width: 767px) {
  .s-recipes .swiper-slide {
    width: 200px;
  }
}

.recommend-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  background-color: var(--color-bg);
  border: 1px solid var(--color-divider, rgba(17, 17, 17, 0.06));
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 4px 12px var(--color-rgba-0-0-0-0-05);
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.recommend-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 32px var(--color-rgba-0-0-0-0-05);
  border-color: var(--color-accent);
}
.recommend-card:hover .recommend-card__img {
  transform: scale(1.04);
}
.recommend-card__image-wrapper {
  position: relative;
  width: 100%;
  aspect-ratio: 16/10;
  overflow: hidden;
  background: var(--color-bg-cream);
}
.recommend-card__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}
.recommend-card__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, var(--color-rgba-0-0-0-0-05), transparent);
  pointer-events: none;
}
.recommend-card__info {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  padding: 16px 20px 20px 20px;
}
@media (max-width: 767px) {
  .recommend-card__info {
    padding: 12px 14px 14px 14px;
  }
}
.recommend-card__title {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-text-main, #111111);
  line-height: 1.35;
  margin: 0 0 12px 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  min-height: 2.7em;
  transition: color 0.3s ease;
}
@media (max-width: 767px) {
  .recommend-card__title {
    font-size: 14px;
    margin-bottom: 8px;
  }
}
.recommend-card:hover .recommend-card__title {
  color: var(--color-text-secondary);
}
.recommend-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: auto;
  border-top: 1px solid var(--color-divider, rgba(17, 17, 17, 0.06));
  padding-top: 12px;
}
.recommend-card__meta-item {
  display: flex;
  align-items: center;
  font-size: 11px;
  font-weight: 500;
  color: var(--color-text-muted, #7c7a76);
}
@media (max-width: 767px) {
  .recommend-card__meta-item {
    font-size: 10px;
  }
}
.recommend-card__meta-item svg {
  width: 13px;
  height: 13px;
  margin-right: 4px;
  stroke: currentColor;
}
.recommend-card__meta-item svg.meta-kcal-icon {
  fill: none;
}

.h-scrollbar::-webkit-scrollbar {
  height: 0px;
}
.h-scrollbar::-webkit-scrollbar-track {
  background: transparent;
}
.h-scrollbar::-webkit-scrollbar-thumb {
  background: transparent;
}
.h-scrollbar::-webkit-scrollbar-thumb:hover {
  background: transparent;
}

.privacy .container {
  max-width: 900px;
}

.contacts .container {
  max-width: 900px;
}
.contacts .wrap {
  margin-top: 30px;
}

#load-more {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 30px auto 0;
  border-radius: 40px;
  height: 36px;
  padding: 0 20px;
  border: 1px solid var(--color-text-main);
  text-transform: uppercase;
  font-weight: 500;
  cursor: pointer;
  transition: 0.3s ease;
  font-weight: 700;
  font-size: 12px;
}

.article-content {
  width: 100%;
  position: relative;
}

.article-sidebar {
  min-width: 440px;
  max-width: 440px;
  padding: 0 20px;
  margin-left: 20px;
}
@media (max-width: 1199px) {
  .article-sidebar {
    display: none;
  }
}

.mobile-v {
  display: none;
}
@media (max-width: 1199px) {
  .mobile-v {
    display: block;
  }
}

.scrollTable {
  overflow-x: auto;
}

.table {
  width: 100%;
  border-collapse: collapse;
  border-top: 1px solid var(--color-divider);
  border-left: 1px solid var(--color-divider);
}
.table tbody tr:nth-child(even) td,
.table tbody tr:nth-child(even) th {
  background: var(--color-bg-gray);
}
.table tr {
  position: relative;
}
.table td {
  padding: 8px 10px 6px;
  border-right: 1px solid var(--color-divider);
  border-bottom: 1px solid var(--color-divider);
  overflow-wrap: break-word;
  word-break: break-word;
  word-wrap: break-word;
  font-size: 14px;
}

.mb-block {
  margin-bottom: 50px;
}

.aboutUs .title.fz_h1 {
  margin-bottom: 30px;
}

.p-16 {
  padding: 16px;
}

.titleSubLink {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 24px;
}
.titleSubLink__col {
  display: grid;
  gap: 6px;
}
@media (max-width: 767px) {
  .titleSubLink .short-desc {
    max-width: 320px;
  }
}
@media (max-width: 767px) {
  .titleSubLink .link-with {
    display: none;
  }
}

.link-with {
  display: flex;
  align-items: center;
  font-size: 13px;
  font-weight: 500;
  text-transform: uppercase;
  transition: 0.3s ease;
}
.link-with-icon {
  width: 6px;
  height: 6px;
  transform: rotate(45deg);
  margin-left: 3px;
  transition: 0.3s ease;
  display: block;
}

.my-adsense {
  overflow: hidden;
  position: relative;
  margin: 16px 0;
}
.my-adsense #mys-content {
  width: 100% !important;
  height: auto !important;
  display: block;
}

/* ================== MEDIA =================== */
@media (max-width: 767px) {
  .sp {
    padding: 40px 0;
  }
  .swiper-pagination {
    margin-top: 0;
  }
}
.sLogin {
  padding: 80px 0;
}
@media (max-width: 767px) {
  .sLogin {
    padding: 48px 0 80px;
  }
}
.sLogin .wrap {
  display: flex;
  align-items: center;
  max-width: 900px;
  margin: 0 auto;
}
@media (max-width: 767px) {
  .sLogin .wrap {
    flex-direction: column;
    align-items: flex-start;
  }
}
.sLogin-title {
  margin-bottom: 8px;
  font-weight: 400;
}
.sLogin-desc {
  margin-bottom: 32px;
  font-size: 13px;
  opacity: 0.75;
  font-weight: 300;
}
.sLogin__content {
  width: 100%;
  padding: 48px 48px 48px 0;
}
@media (max-width: 767px) {
  .sLogin__content {
    padding: 36px 0 0 0;
  }
}
.sLogin__form {
  width: 100%;
  padding: 48px 0 48px 48px;
  border-left: 1px solid var(--color-divider);
}
@media (max-width: 767px) {
  .sLogin__form {
    padding: 0 0 36px 0;
    border-left: none;
    border-bottom: 1px solid var(--color-divider);
    order: -1;
  }
}

.nutri-box {
  background: var(--color-bg-gray);
  background: var(--color-bg-cream);
  border-radius: 12px;
  padding: 20px;
  margin-top: 30px;
  font-size: 16px;
}
.nutri-box svg {
  position: absolute;
  width: 100%;
  height: auto;
  bottom: 0;
  left: 0;
}

.nutri-list {
  display: grid;
  gap: 10px;
  position: relative;
  z-index: 2;
}

.nutri-box h3 {
  font-weight: 700;
  font-size: 22px;
  margin-bottom: 15px;
  display: flex;
  align-items: center;
}

.nutri-box .tip {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  margin-bottom: 10px;
}

.seo-editor {
  position: relative;
}
.seo-editor .container {
  display: grid;
}
.seo-editor .seo-row.status-empty {
  order: -1;
}

.button-actions {
  position: absolute;
  left: 8px;
  bottom: 8px;
  display: flex;
  overflow: hidden;
  gap: 12px;
}
@media (max-width: 767px) {
  .button-actions {
    left: auto;
    right: 8px;
  }
}
.button-actions .btn-action {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0px 16px;
  height: 40px;
  background-color: var(--color-rgba-255-255-255-0-8);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border: 1px solid var(--color-rgba-255-255-255-0-2);
  border-radius: 40px;
  cursor: pointer;
  box-shadow: 0 4px 20px var(--color-rgba-0-0-0-0-05);
}
.button-actions .btn-action span {
  white-space: nowrap;
  font-size: 13px;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.2px;
  display: none;
}
.button-actions .btn-action svg {
  width: 15px;
  height: 15px;
}

.fancybox__content {
  padding: 0;
}

.articleStyles {
  font-size: 18px;
  font-weight: 300;
  line-height: 1.8;
  color: var(--color-text-main);
  position: relative;
  overflow: hidden;
}
@media (max-width: 767px) {
  .articleStyles {
    font-size: 17px;
  }
}
.articleStyles strong,
.articleStyles b {
  font-weight: 600;
}
.articleStyles h1,
.articleStyles h2,
.articleStyles h3,
.articleStyles h4,
.articleStyles h5 {
  display: block;
  line-height: 1.4;
  position: relative;
  font-weight: 500;
  letter-spacing: 0.2px;
  font-family: var(--font-header);
  text-transform: uppercase;
}
.articleStyles h2 {
  font-size: 32px;
  margin: 52px 0 24px;
  font-weight: 800;
}
.articleStyles h2 strong,
.articleStyles h2 b {
  font-weight: 800;
}
@media (max-width: 767px) {
  .articleStyles h2 {
    font-size: 24px;
  }
}
.articleStyles h3 {
  font-size: 22px;
  margin: 30px 0 18px;
  text-transform: none;
  font-weight: 600;
}
.articleStyles h3 strong,
.articleStyles h3 b {
  font-weight: 600;
}
.articleStyles ol {
  margin: 0 0 12px;
  padding-left: 0;
  list-style: none;
  position: relative;
  margin-top: -12px;
  counter-reset: my-awesome-counter;
}
.articleStyles ol > li {
  padding: 8px 0 8px 32px;
  position: relative;
  counter-increment: my-awesome-counter;
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
}
.articleStyles ol > li:before {
  content: counter(my-awesome-counter, decimal-leading-zero);
  position: absolute;
  left: 0;
  top: 12px;
  font-size: 0.85rem;
  font-family: var(--font-header);
  font-weight: 800;
  color: var(--color-danger);
  letter-spacing: 0.05em;
}
.articleStyles ol ol,
.articleStyles ol ul {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 16px;
}
.articleStyles ul {
  margin: 0 0 32px;
  padding-left: 0;
  list-style: none;
}
.articleStyles ul > li {
  padding: 8px 0 8px 32px;
  position: relative;
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
}
.articleStyles ul > li::before {
  content: "";
  width: 16px;
  height: 1.5px;
  left: 0;
  top: 26px;
  position: absolute;
  background-color: var(--color-danger);
}
.articleStyles ul ol,
.articleStyles ul ul {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 16px;
}
.articleStyles iframe {
  width: 100%;
}
.articleStyles.bArticle__desc > p:first-of-type::first-letter {
  float: left;
  font-size: 4.2rem;
  line-height: 0.8;
  padding: 8px 12px 0 0;
  color: var(--color-danger, #c84131);
  font-weight: 700;
  text-transform: uppercase;
}
@media (max-width: 767px) {
  .articleStyles.bArticle__desc > p:first-of-type::first-letter {
    font-size: 3.8rem;
  }
}
.articleStyles p {
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  margin: 0 0 20px;
}
.articleStyles p.is-style-paragraph-margin-16 {
  margin-bottom: 16px;
}
.articleStyles p.is-style-paragraph-margin-8 {
  margin-bottom: 8px;
}
@media (max-width: 767px) {
  .articleStyles .wp-block-group {
    flex-direction: column;
  }
}
.articleStyles .wp-block-columns {
  display: flex;
  flex-wrap: nowrap;
  gap: 24px;
  margin: 12px 0 28px;
}
@media (max-width: 767px) {
  .articleStyles .wp-block-columns {
    flex-direction: column;
    gap: 12px;
    margin: 0 !important;
  }
}
.articleStyles .wp-block-columns .wp-block-image {
  margin: 0;
}
@media (max-width: 767px) {
  .articleStyles .wp-block-columns .wp-block-image {
    margin: 10px 0;
  }
}
@media (max-width: 767px) {
  .articleStyles .wp-block-columns .order-1 {
    order: -1;
  }
}
.articleStyles .wp-block-column {
  flex: 1 1 0;
  min-width: 0;
}
.articleStyles .wp-block-image {
  display: block;
  position: relative;
  margin: 30px 0;
}
.articleStyles .wp-block-image figure {
  margin: 0;
}
.articleStyles .wp-block-image img {
  width: 100%;
  height: auto;
  max-width: 100%;
  display: flex;
}
@media (max-width: 767px) {
  .articleStyles .wp-block-image img {
    aspect-ratio: auto !important;
  }
}
.articleStyles blockquote {
  padding: 8px 0 8px 24px;
  margin: 40px 0;
  border-left: 3px solid var(--color-text-secondary);
  background: transparent;
  border-radius: 0;
  display: block;
  position: relative;
  box-sizing: border-box;
}
.articleStyles blockquote p {
  color: var(--color-text-main);
  font-size: 17px;
  margin-bottom: 20px;
  font-style: italic;
}
.articleStyles blockquote p:last-child {
  margin-bottom: 0;
}
.articleStyles blockquote cite {
  display: block;
  font-size: 15px;
  font-style: normal;
  color: var(--color-text-muted, #737373);
  font-weight: 500;
  margin-top: 16px;
}
.articleStyles blockquote cite strong,
.articleStyles blockquote cite b {
  color: var(--color-text-main, #111);
  font-weight: 700;
  margin-right: 6px;
}
@media (max-width: 767px) {
  .articleStyles blockquote {
    padding: 6px 0 6px 20px;
    margin: 32px 0;
  }
  .articleStyles blockquote p {
    font-size: 19px;
  }
  .articleStyles blockquote cite {
    font-size: 14px;
  }
}
.articleStyles blockquote:before {
  display: none;
}
.articleStyles a {
  text-decoration: underline;
  text-decoration-thickness: 1.5px;
  text-underline-offset: 3px;
  cursor: pointer;
}
.articleStyles a:hover {
  text-decoration: none;
}
.articleStyles .wp-block-details {
  margin-bottom: 32px;
  border-radius: 16px;
  background-color: var(--color-bg, #fff);
}
.articleStyles .wp-block-details summary {
  margin-bottom: 0;
  padding: 18px 24px;
  cursor: pointer;
  list-style: none;
  position: relative;
  font-family: var(--font-header);
  font-size: 20px;
  line-height: 1.35;
  font-weight: 600;
  transition: background-color 0.3s ease;
  background-color: var(--color-bg-cream);
  border-radius: 16px;
}
.articleStyles .wp-block-details summary::-webkit-details-marker {
  display: none;
}
.articleStyles .wp-block-details summary::after {
  content: "";
  width: 10px;
  height: 10px;
  border-right: 2px solid var(--color-text-main);
  border-bottom: 2px solid var(--color-text-main);
  transform: rotate(45deg);
  position: absolute;
  right: 24px;
  top: 50%;
  margin-top: -8px;
  transition: transform 0.3s ease, margin-top 0.3s ease;
}
.articleStyles .wp-block-details summary:hover {
  background-color: var(--color-text-secondary);
}
@media (max-width: 767px) {
  .articleStyles .wp-block-details summary {
    font-size: 18px;
    padding: 16px 20px;
  }
  .articleStyles .wp-block-details summary::after {
    right: 20px;
  }
}
.articleStyles .wp-block-details[open] summary {
  margin-bottom: 20px;
}
.articleStyles .wp-block-details[open] summary::after {
  transform: rotate(225deg);
  margin-top: -2px;
}
.articleStyles .wp-block-details > :not(summary) {
  padding: 0 !important;
}
.articleStyles .wp-block-details p:last-child {
  margin-bottom: 0;
}
.articleStyles .wp-block-table {
  position: relative;
  margin-bottom: 40px;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  width: 100%;
  max-width: 100%;
  display: block;
  box-sizing: border-box;
}
@media (max-width: 767px) {
  .articleStyles .wp-block-table {
    width: calc(100vw - 32px);
    max-width: calc(100vw - 32px);
  }
}
.articleStyles .wp-block-table table {
  width: max-content;
  min-width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  text-align: left;
  background: transparent;
  width: 100%;
  border: 1.5px solid var(--color-rgba-0-0-0-0-05);
  border-radius: 8px;
  overflow: hidden;
}
@media (max-width: 767px) {
  .articleStyles .wp-block-table table {
    position: relative;
  }
}
.articleStyles .wp-block-table table thead th {
  font-family: var(--font-family-main, "Inter", sans-serif);
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--color-nature);
  background-color: var(--color-carbs-bg);
  border-bottom: 1.5px solid var(--color-rgba-0-0-0-0-05);
  border-right: 1.5px solid var(--color-rgba-0-0-0-0-05);
  padding: 16px 24px;
  vertical-align: middle;
}
.articleStyles .wp-block-table table thead th:last-child {
  border-right: none;
}
@media (max-width: 767px) {
  .articleStyles .wp-block-table table thead th {
    font-size: 9px;
    padding: 12px 14px;
  }
}
.articleStyles .wp-block-table table tbody tr {
  transition: background-color 0.2s ease;
}
.articleStyles .wp-block-table table tbody tr:nth-child(odd) {
  background-color: var(--color-bg);
}
.articleStyles .wp-block-table table tbody tr:nth-child(even) {
  background-color: var(--color-bg-warm);
}
.articleStyles .wp-block-table table tbody tr:hover {
  background-color: var(--color-rgba-0-0-0-0-05);
}
.articleStyles .wp-block-table table tbody tr:last-child td {
  border-bottom: none;
}
.articleStyles .wp-block-table table tbody td {
  border-bottom: 1.5px solid var(--color-rgba-0-0-0-0-05);
  border-right: 1.5px solid var(--color-rgba-0-0-0-0-05);
  font-family: var(--font-family-main, "Inter", sans-serif);
  font-size: 14.5px;
  line-height: 1.55;
  padding: 18px 24px;
  vertical-align: middle;
  color: var(--color-text-main, #111111);
  min-width: 100px;
}
.articleStyles .wp-block-table table tbody td:last-child {
  border-right: none;
}
@media (max-width: 767px) {
  .articleStyles .wp-block-table table tbody td {
    font-size: 13px;
    padding: 14px 14px;
  }
  .articleStyles .wp-block-table table tbody td:nth-child(4) {
    font-size: 12.5px;
  }
}
.articleStyles .wp-block-table figcaption {
  font-size: 13px;
  font-style: italic;
  color: var(--color-text-muted);
  text-align: right;
  padding-top: 8px;
  margin: 0;
}
@media (max-width: 767px) {
  .articleStyles .wp-block-table figcaption {
    font-size: 12px;
  }
}
.articleStyles .wp-block-separator {
  border-color: var(--color-divider);
  margin: 36px 0;
  opacity: 0.2;
}
.articleStyles .wp-element-caption {
  font-size: 12px;
  text-align: right;
  position: absolute;
  bottom: 6px;
  right: 8px;
  z-index: 2;
  padding: 3px 8px;
  border-radius: 999px;
  background-color: var(--color-rgba-0-0-0-0-5);
  color: var(--color-bg);
}
@media (max-width: 767px) {
  .articleStyles .wp-element-caption {
    font-size: 10px;
  }
}
.articleStyles .mb0 {
  margin-bottom: 10px;
}

.medical-advice {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  margin: 40px 0;
  padding: 24px 28px;
  background: var(--color-bg-warm);
  border-left: 3px solid var(--color-danger, #c84131);
  border-radius: 0 8px 8px 0;
}
@media (max-width: 767px) {
  .medical-advice {
    padding: 20px 18px;
    gap: 12px;
  }
}
.medical-advice__icon {
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--color-rgba-0-0-0-0-05);
  color: var(--color-danger, #c84131);
}
.medical-advice__icon svg {
  display: block;
}
.medical-advice__body {
  flex: 1;
  min-width: 0;
}
.medical-advice__title {
  display: block;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--color-danger, #c84131);
  margin-bottom: 6px;
}
.medical-advice__text {
  margin: 0;
  font-size: 14px;
  line-height: 1.65;
  color: var(--color-text-muted, #555);
  font-weight: 400;
}

#ez-toc-container {
  width: 100%;
  position: relative;
  background: transparent;
  padding: 0px 0 40px 60px;
  margin: 40px 0;
  border: none;
  border-radius: 0;
  position: relative;
}
@media (max-width: 991px) {
  #ez-toc-container {
    padding: 0px 0 40px 50px;
  }
}
#ez-toc-container::before {
  content: var(--contents-text, "Contents");
  position: absolute;
  width: 200px;
  text-align: center;
  left: -80px;
  top: calc(50% - 20px);
  transform: translateY(-50%) rotate(-90deg);
  font-size: 11px;
  letter-spacing: 0.3em;
  color: var(--color-text-light);
  text-transform: uppercase;
  font-weight: 600;
}
@media (max-width: 991px) {
  #ez-toc-container::before {
    left: -90px;
  }
}
#ez-toc-container::after {
  content: "";
  position: absolute;
  left: 45px;
  top: 0;
  bottom: 0;
  width: 1px;
  height: calc(100% - 40px);
  background-color: var(--color-divider);
}
@media (max-width: 991px) {
  #ez-toc-container::after {
    left: 30px;
  }
}
#ez-toc-container .ez-toc-title-container {
  display: none;
}
#ez-toc-container nav {
  margin: 0;
}
#ez-toc-container ul {
  list-style: none;
  margin: 0;
  padding-left: 0;
  counter-reset: toc-counter;
  display: flex;
  flex-direction: column;
}
#ez-toc-container ul ul {
  list-style: none;
  margin-top: 0;
  padding-left: 20px;
  border-top: none;
}
#ez-toc-container ul li {
  position: relative;
  border-bottom: 1px solid var(--color-rgba-0-0-0-0-05);
  counter-increment: toc-counter;
}
#ez-toc-container ul li:last-child {
  border-bottom: 1px solid transparent;
}
#ez-toc-container .ez-toc-section {
  display: none !important;
}
#ez-toc-container ul li::before {
  display: none;
}
#ez-toc-container nav li a {
  text-decoration: none;
  color: var(--color-text-muted);
  font-size: 16px !important;
  line-height: 1.5;
  font-weight: 500;
  transition: all 0.2s ease;
  display: flex;
  align-items: flex-start;
  padding: 16px 24px;
  padding: 12px 0;
  border-radius: 0;
  background: transparent;
}
#ez-toc-container nav li a::before {
  content: counter(toc-counter, decimal-leading-zero) ".";
  color: var(--color-text-light);
  font-style: italic;
  font-weight: 400;
  margin-right: 8px;
  min-width: 24px;
  font-size: 15px;
  transition: color 0.2s ease;
}
#ez-toc-container nav li a:hover {
  color: var(--color-text-main);
}
#ez-toc-container nav li a:focus-visible {
  outline: 2px solid var(--color-accent);
  outline-offset: -1px;
}
#ez-toc-container nav li.active > a,
#ez-toc-container nav li a.ez-toc-link.active,
#ez-toc-container nav li a[aria-current=true] {
  color: var(--color-text-main);
  font-weight: 800;
  background: transparent;
  text-transform: uppercase;
}
#ez-toc-container nav li.active > a::before,
#ez-toc-container nav li a.ez-toc-link.active::before,
#ez-toc-container nav li a[aria-current=true]::before {
  color: var(--color-accent);
}

.nutrients-block {
  margin: 40px 0;
  width: 100%;
}

.nutrients-list {
  display: flex;
  flex-direction: column;
}

.nutrient-item {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 16px 0;
  border-bottom: 1px solid var(--color-rgba-0-0-0-0-05);
}
.nutrient-item:first-child {
  padding-top: 0;
}
.nutrient-item:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.nutrient-info {
  flex: 1;
  padding-right: 16px;
}

.nutrient-title {
  font-family: var(--font-header);
  font-weight: 800;
  font-size: 14px;
  text-transform: uppercase;
  color: var(--color-text-main);
  letter-spacing: 0.05em;
  margin-bottom: 4px;
}

.nutrient-desc {
  font-size: 13px;
  color: var(--color-text-muted);
  line-height: 1.5;
  margin-bottom: 0 !important;
}

.nutrient-amount {
  text-align: right;
  min-width: 90px;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

.nutrient-values {
  display: flex;
  align-items: baseline;
  gap: 0;
}

.nutrient-value {
  font-family: var(--font-header);
  font-weight: 700;
  font-size: 18px;
  color: var(--color-text-main);
  margin-bottom: 4px;
  white-space: nowrap;
  min-width: 80px;
  text-align: right;
}

.nutrient-value-cooked {
  font-family: var(--font-header);
  font-weight: 500;
  font-size: 15px;
  color: var(--color-text-muted);
  white-space: nowrap;
  min-width: 64px;
  text-align: right;
  padding-left: 8px;
  border-left: 1px solid var(--color-rgba-0-0-0-0-05);
  margin-left: 10px;
}

.nutrient-value-labels {
  display: flex;
  gap: 0;
  margin-bottom: 4px;
}
.nutrient-value-labels span {
  font-size: 10px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--color-text-light);
  text-align: right;
}
.nutrient-value-labels span:first-child {
  min-width: 80px;
}
.nutrient-value-labels span:last-child {
  min-width: 64px;
  padding-left: 8px;
  margin-left: 10px;
}

.nutrient-percent {
  font-size: 11px;
  color: var(--color-text-light);
  text-transform: uppercase;
  font-weight: 500;
  letter-spacing: 0.02em;
}

.numbered-heading-block {
  display: flex;
  align-items: center;
  margin-bottom: 16px;
  margin-top: 40px;
}
.numbered-heading-block.nh-theme-benefit .nh-number {
  color: var(--color-carbs-bg);
}
.numbered-heading-block.nh-theme-harm .nh-number {
  color: var(--color-calories-bg);
}

.nh-number {
  font-family: "Playfair Display", serif;
  font-style: italic;
  font-size: 72px;
  line-height: 1;
  color: var(--color-rgba-0-0-0-0-05);
  margin-right: 30px;
  font-weight: 400;
  transform: translateY(-18%);
  display: grid;
}
@media (max-width: 767px) {
  .nh-number {
    font-size: 60px;
    margin-right: 20px;
  }
}

.nh-content {
  flex: 1;
}

.nh-heading {
  font-family: var(--font-header);
  font-weight: 800 !important;
  text-transform: uppercase;
  color: var(--color-text-main) !important;
  margin: 0 0 10px 0 !important;
  line-height: 1.1 !important;
  letter-spacing: -0.02em;
}
@media (max-width: 767px) {
  .nh-heading {
    margin: 0 0 5px 0 !important;
  }
}

.bRecommendations {
  margin: 48px 0;
  width: 100%;
}
.bRecommendations__list {
  display: flex;
  flex-direction: column;
}
.bRecommendations__item {
  display: flex;
  align-items: flex-start;
  padding: 32px 0;
  border-top: 1px solid var(--color-rgba-0-0-0-0-05);
}
.bRecommendations__item:first-child {
  border-top: 1px solid transparent;
}
@media (max-width: 991px) {
  .bRecommendations__item {
    display: grid;
    grid-template-columns: 70px 1fr;
    column-gap: 16px;
    row-gap: 20px;
    padding: 20px 0;
  }
}
.bRecommendations__col-num {
  width: 110px;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
}
@media (max-width: 991px) {
  .bRecommendations__col-num {
    width: 100%;
    align-items: flex-start;
    margin-bottom: 0;
  }
}
.bRecommendations__number {
  font-size: 68px;
  line-height: 1;
  color: var(--color-nature);
  font-weight: 400;
}
@media (max-width: 991px) {
  .bRecommendations__number {
    font-size: 48px;
    margin-right: 0;
  }
}
.bRecommendations__label {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  color: var(--color-text-muted, #737373);
  margin-top: 8px;
}
.bRecommendations__col-main {
  flex: 1;
  padding-right: 48px;
}
@media (max-width: 991px) {
  .bRecommendations__col-main {
    padding-right: 0;
    margin-bottom: 0;
    width: 100%;
  }
}
.bRecommendations__group {
  font-size: 26px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  color: var(--color-text-main) !important;
  margin: 0 0 8px 0 !important;
  text-transform: none !important;
  display: block;
}
@media (max-width: 767px) {
  .bRecommendations__group {
    font-size: 24px !important;
  }
}
.bRecommendations__examples {
  font-size: 17px;
  margin-bottom: 12px;
  line-height: 1.45;
  font-weight: 500;
}
@media (max-width: 767px) {
  .bRecommendations__examples {
    font-size: 16px;
  }
}
.bRecommendations__arrow {
  color: var(--color-text-muted);
  opacity: 0.5;
  margin-right: 4px;
  font-style: normal;
}
.bRecommendations__reason {
  font-size: 16px;
  line-height: 1.6;
  color: var(--color-text-main, #111);
}
.bRecommendations__reason p {
  margin-bottom: 12px;
  font-size: 16px;
  line-height: 1.6;
}
.bRecommendations__reason p:last-child {
  margin-bottom: 0;
}
.bRecommendations__reason strong,
.bRecommendations__reason b {
  font-weight: 700;
  color: var(--color-text-main);
}
.bRecommendations__col-right {
  width: 180px;
  flex-shrink: 0;
  border-left: 1px solid var(--color-rgba-0-0-0-0-05);
  padding-left: 20px;
}
@media (max-width: 991px) {
  .bRecommendations__col-right {
    grid-column: 2;
    width: 100%;
    border-left: none;
    border-top: 1px solid var(--color-rgba-0-0-0-0-05);
    padding-left: 0;
    padding-top: 16px;
  }
}
.bRecommendations__portion-label {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  color: var(--color-text-muted, #737373);
  margin-bottom: 8px;
}
.bRecommendations__portion-val {
  font-family: var(--font-header);
  font-size: 24px;
  font-weight: 800;
  color: var(--color-text-main, #111);
  line-height: 1.2;
  margin-bottom: 8px;
}
@media (max-width: 991px) {
  .bRecommendations__portion-val {
    font-size: 20px;
  }
}
.bRecommendations__note {
  font-style: italic;
  font-size: 14px;
  color: var(--color-text-muted, #737373);
  line-height: 1.45;
}

.bLimitations {
  margin: 48px 0;
  width: 100%;
}
.bLimitations__list {
  display: flex;
  flex-direction: column;
}
.bLimitations__item {
  display: flex;
  align-items: flex-start;
  padding: 32px 0;
  border-top: 1px solid var(--color-rgba-0-0-0-0-05);
}
.bLimitations__item:first-child {
  border-top: 1px solid transparent;
}
@media (max-width: 991px) {
  .bLimitations__item {
    display: grid;
    grid-template-columns: 70px 1fr;
    column-gap: 16px;
    row-gap: 20px;
    padding: 20px 0;
  }
}
.bLimitations__col-num {
  width: 110px;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
}
@media (max-width: 991px) {
  .bLimitations__col-num {
    width: 100%;
    align-items: flex-start;
    margin-bottom: 0;
  }
}
.bLimitations__number {
  font-size: 68px;
  line-height: 1;
  font-weight: 400;
}
@media (max-width: 991px) {
  .bLimitations__number {
    font-size: 48px;
    margin-right: 0;
  }
}
.bLimitations__label {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  margin-top: 8px;
}
.bLimitations__item.is-limit .bLimitations__number {
  color: var(--color-accent);
}
.bLimitations__item.is-limit .bLimitations__label {
  color: var(--color-accent);
}
.bLimitations__item.is-avoid .bLimitations__number {
  color: var(--color-danger-alt);
}
.bLimitations__item.is-avoid .bLimitations__label {
  color: var(--color-danger-alt);
}
.bLimitations__col-main {
  flex: 1;
  padding-right: 48px;
}
@media (max-width: 991px) {
  .bLimitations__col-main {
    padding-right: 0;
    width: 100%;
  }
}
.bLimitations__top-text {
  font-style: italic;
  font-size: 14px;
  color: var(--color-text-muted, #737373);
  margin-bottom: 12px;
  display: flex;
  align-items: center;
}
.bLimitations__top-text .bLimitations__dash {
  margin-right: 6px;
}
.bLimitations__group {
  font-size: 26px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  color: var(--color-text-main) !important;
  margin: 0 0 8px 0 !important;
  text-transform: none !important;
  display: block;
}
@media (max-width: 767px) {
  .bLimitations__group {
    font-size: 24px !important;
  }
}
.bLimitations__examples {
  font-size: 17px;
  margin-bottom: 12px;
  line-height: 1.45;
  font-weight: 500;
}
@media (max-width: 767px) {
  .bLimitations__examples {
    font-size: 16px;
  }
}
.bLimitations__arrow {
  color: var(--color-text-muted);
  opacity: 0.5;
  margin-right: 4px;
  font-style: normal;
}
.bLimitations__reason {
  font-size: 16px;
  line-height: 1.6;
  color: var(--color-text-main, #111);
}
.bLimitations__reason p {
  margin-bottom: 12px;
  font-size: 16px;
  line-height: 1.6;
}
.bLimitations__reason p:last-child {
  margin-bottom: 0;
}
.bLimitations__reason strong,
.bLimitations__reason b {
  font-weight: 700;
  color: var(--color-text-main);
}
.bLimitations__col-right {
  width: 180px;
  flex-shrink: 0;
  border-left: 1px solid var(--color-rgba-0-0-0-0-05);
  padding-left: 24px;
}
@media (max-width: 991px) {
  .bLimitations__col-right {
    grid-column: 2;
    width: 100%;
    border-left: none;
    border-top: 1px solid var(--color-rgba-0-0-0-0-05);
    padding-left: 0;
    padding-top: 16px;
  }
}
.bLimitations__alt-label {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  color: var(--color-text-muted, #737373);
  margin-bottom: 8px;
}
.bLimitations__alt-title {
  font-family: var(--font-header);
  font-size: 24px;
  font-weight: 800;
  color: var(--color-text-main, #111);
  line-height: 1.2;
  margin-bottom: 8px;
}
.bLimitations__alt-desc {
  font-style: italic;
  font-size: 16px;
  color: var(--color-text-muted, #737373);
  line-height: 1.45;
}

.bCompareLists {
  margin: 60px 0;
  width: 100%;
}
.bCompareLists__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
}
@media (max-width: 991px) {
  .bCompareLists__grid {
    grid-template-columns: 1fr;
    gap: 56px;
  }
}
.bCompareLists__col {
  display: flex;
  flex-direction: column;
}
.bCompareLists__col--good .bCompareLists__icon {
  color: var(--color-nature);
}
.bCompareLists__col--good .bCompareLists__title em {
  color: var(--color-nature);
}
.bCompareLists__col--good .bCompareLists__num {
  color: var(--color-nature);
}
.bCompareLists__col--bad .bCompareLists__icon {
  color: var(--color-danger-alt);
}
.bCompareLists__col--bad .bCompareLists__title em {
  color: var(--color-danger-alt);
}
.bCompareLists__col--bad .bCompareLists__num {
  color: var(--color-danger-alt);
}
.bCompareLists__header {
  border-bottom: 1px solid var(--color-text-light);
  padding-bottom: 24px;
  margin-bottom: 24px;
}
.bCompareLists__icon-row {
  display: flex;
  align-items: flex-start;
  margin-bottom: 12px;
}
.bCompareLists__icon {
  width: 40px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  margin-top: -2px;
}
.bCompareLists__icon svg {
  width: 28px;
  height: 28px;
}
.bCompareLists__meta {
  flex: 1;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  color: var(--color-text-muted, #737373);
}
.bCompareLists__badge {
  color: var(--color-text-main, #111);
}
.bCompareLists__title {
  padding-left: 40px;
  font-family: var(--font-header);
  font-size: 32px;
  font-weight: 800;
  line-height: 1.1;
  margin: 0;
  color: var(--color-text-main, #111);
}
.bCompareLists__title em {
  font-family: "Playfair Display", serif;
  font-style: italic;
  font-weight: 400;
  display: block;
  margin-top: 4px;
}
@media (max-width: 767px) {
  .bCompareLists__title {
    font-size: 28px;
  }
}
.bCompareLists__list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.bCompareLists__item {
  display: flex;
  align-items: flex-start;
  padding: 24px 0;
  border-bottom: 1px dashed var(--color-text-light);
}
.bCompareLists__item:last-child {
  border-bottom: none;
}
@media (max-width: 767px) {
  .bCompareLists__item {
    padding: 20px 0;
  }
}
.bCompareLists__num {
  width: 48px;
  flex-shrink: 0;
  font-family: "Playfair Display", serif;
  font-size: 28px;
  font-style: italic;
  line-height: 1.2;
}
@media (max-width: 767px) {
  .bCompareLists__num {
    font-size: 24px;
    width: 40px;
  }
}
.bCompareLists__content {
  flex: 1;
}
.bCompareLists__item-title {
  font-size: 18px;
  font-weight: 700;
  color: var(--color-text-main, #111);
  margin-bottom: 6px;
  line-height: 1.3;
}
.bCompareLists__item-desc {
  font-family: "Playfair Display", serif;
  font-style: italic;
  font-size: 15px;
  color: var(--color-text-muted, #737373);
  line-height: 1.5;
}
.bCompareLists__item-desc p {
  margin-bottom: 8px;
}
.bCompareLists__item-desc p:last-child {
  margin-bottom: 0;
}
.bCompareLists__item-desc strong,
.bCompareLists__item-desc b {
  font-family: var(--font-body, sans-serif);
  font-style: normal;
  font-weight: 600;
  color: var(--color-text-main, #111);
  font-size: 13px;
}

.nh-label {
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 600;
  text-transform: uppercase;
  color: var(--color-text-muted);
  letter-spacing: 0.04em;
  line-height: 1.2;
  color: var(--color-carbs-bg);
}

.side-heading-block {
  position: relative;
  margin: 60px 0 24px;
  display: flex;
  flex-direction: column;
}
.side-heading-block.pos-left {
  align-items: flex-start;
  text-align: left;
}
.side-heading-block.pos-left .sh-bg-number {
  left: 0;
}
.side-heading-block.pos-right {
  align-items: flex-end;
  text-align: right;
}
.side-heading-block.pos-right .sh-bg-number {
  right: 0;
}

.sh-bg-number {
  position: absolute;
  top: 0px;
  font-family: var(--font-header), sans-serif;
  font-size: 130px;
  font-weight: 800;
  line-height: 1;
  color: var(--color-rgba-0-0-0-0-05);
  z-index: -1;
  user-select: none;
  letter-spacing: -0.05em;
}
@media (max-width: 767px) {
  .sh-bg-number {
    font-size: 110px;
  }
}

.sh-content {
  position: relative;
  z-index: 1;
}

.sh-heading {
  font-family: var(--font-header);
  font-size: 28px !important;
  font-weight: 800 !important;
  text-transform: uppercase;
  color: var(--color-text-main) !important;
  margin: 0 0 6px 0 !important;
  line-height: 1.2 !important;
}
@media (max-width: 767px) {
  .sh-heading {
    font-size: 24px !important;
  }
}

.sh-subtitle {
  font-family: var(--font-body);
  font-size: 13px;
  font-weight: 600;
  color: var(--color-nature);
  letter-spacing: 0.15em;
  font-style: italic;
}

.nutrients-typography-block {
  margin: 40px 0;
  width: 100%;
  max-width: 600px;
  background: var(--color-bg);
}

.nt-badge {
  display: inline-block;
  background: var(--color-bg-gray);
  color: var(--color-info-blue);
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 6px 12px;
  border-radius: 6px;
  margin-bottom: 24px;
}

.nt-divider {
  width: 100%;
  height: 2px;
  background-color: var(--color-text-main);
  margin-bottom: 16px;
}

.nt-list {
  display: flex;
  flex-direction: column;
}

.nt-item {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 16px 0;
  border-bottom: 1px solid var(--color-rgba-0-0-0-0-05);
}
.nt-item:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.nt-info {
  flex: 1;
  padding-right: 16px;
}

.nt-title {
  font-family: var(--font-header);
  font-weight: 800;
  font-size: 14px;
  text-transform: uppercase;
  color: var(--color-text-main);
  letter-spacing: 0.05em;
  margin-bottom: 4px;
}

.nt-desc {
  font-size: 13px;
  color: var(--color-text-muted);
  line-height: 1.5;
  margin-bottom: 0 !important;
}

.nt-amount {
  text-align: right;
  min-width: 90px;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

.nt-value {
  font-family: var(--font-header);
  font-weight: 700;
  font-size: 18px;
  color: var(--color-text-main);
  margin-bottom: 4px;
  white-space: nowrap;
}

.nt-percent {
  font-size: 11px;
  color: var(--color-text-light);
  text-transform: uppercase;
  font-weight: 500;
  letter-spacing: 0.02em;
}

/* ====================================
   Product Comparison Block
   ==================================== */
.block-product-comparison {
  margin: 40px 0;
  width: 100%;
}
.block-product-comparison .pc-header {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr;
  gap: 20px;
  border-top: 1px solid var(--color-divider);
  border-bottom: 1px solid var(--color-divider);
  padding: 16px 0;
  margin-bottom: 24px;
  align-items: center;
}
@media (max-width: 767px) {
  .block-product-comparison .pc-header {
    display: none;
  }
}
.block-product-comparison .pc-header-title,
.block-product-comparison .pc-product-name {
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  color: var(--color-text-muted);
}
.block-product-comparison .pc-product-name {
  display: flex;
  justify-content: center;
  align-items: center;
}
.block-product-comparison .pc-body {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media (max-width: 767px) {
  .block-product-comparison .pc-body {
    gap: 16px;
  }
}
.block-product-comparison .pc-row {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr;
  gap: 20px;
  padding-bottom: 24px;
  border-bottom: 1px solid var(--color-divider);
  align-items: center;
}
.block-product-comparison .pc-row:last-child {
  border-bottom: none;
}
@media (max-width: 767px) {
  .block-product-comparison .pc-row {
    grid-template-columns: 1fr;
    gap: 6px;
    padding-bottom: 16px;
  }
  .block-product-comparison .pc-row .pc-col--label {
    margin-bottom: 4px;
  }
  .block-product-comparison .pc-row .pc-col--product {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .block-product-comparison .pc-row .pc-col--product::before {
    content: attr(data-product);
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    color: var(--color-text-muted);
  }
}
.block-product-comparison .pc-col--product {
  display: flex;
  justify-content: center;
  position: relative;
}
.block-product-comparison .pc-col--product:not(:last-child)::after {
  content: "";
  position: absolute;
  right: -10px;
  top: 50%;
  transform: translateY(-50%);
  height: 20px;
  width: 1px;
  background-color: var(--color-divider);
}
@media (max-width: 767px) {
  .block-product-comparison .pc-col--product:not(:last-child)::after {
    display: none;
  }
}
.block-product-comparison .pc-metric-name {
  font-size: 15px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--color-text-main);
  margin-bottom: 4px;
}
.block-product-comparison .pc-metric-desc {
  font-size: 14px;
  color: var(--color-text-muted);
  font-style: italic;
}
.block-product-comparison .pc-value {
  display: flex;
  align-items: baseline;
  gap: 4px;
}
.block-product-comparison .pc-value .pc-val {
  font-size: 28px;
  font-weight: 900;
  font-family: var(--font-header);
}
@media (max-width: 767px) {
  .block-product-comparison .pc-value .pc-val {
    font-size: 20px;
  }
}
.block-product-comparison .pc-value .pc-text-val {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.4;
}
@media (max-width: 767px) {
  .block-product-comparison .pc-value .pc-text-val {
    font-size: 14px;
    text-align: right;
  }
}
.block-product-comparison .pc-value .pc-unit {
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
}
@media (max-width: 767px) {
  .block-product-comparison .pc-value .pc-unit {
    font-size: 10px;
  }
}
.block-product-comparison .pc-value.is-loser {
  color: var(--color-text-muted, #737373);
  color: var(--color-divider);
}
.block-product-comparison .pc-value.is-winner {
  color: var(--color-text-main, #111);
}

/* ====================================
   Info Box Block (Expert Advice / Lifehack)
   ==================================== */
.block-info-box {
  margin: 40px 0;
  padding: 40px 48px;
  border-radius: 8px;
}
@media (max-width: 767px) {
  .block-info-box {
    padding: 32px 24px;
  }
}
.block-info-box .ib-label {
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  margin-bottom: 20px;
  font-family: var(--font-header);
}
.block-info-box .ib-title {
  font-size: 28px;
  font-weight: 800;
  color: var(--color-dark);
  margin-top: 0;
  margin-bottom: 20px;
  line-height: 1.3;
  letter-spacing: -0.01em;
}
@media (max-width: 767px) {
  .block-info-box .ib-title {
    font-size: 24px;
  }
}
.block-info-box .ib-text {
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-warm-dark);
}
.block-info-box .ib-text p {
  margin-bottom: 16px;
}
.block-info-box .ib-text p:last-child {
  margin-bottom: 0;
}
@media (max-width: 767px) {
  .block-info-box .ib-text {
    font-size: 17px;
  }
}
.block-info-box {
  /* Themes */
}
.block-info-box.theme-orange {
  background-color: var(--color-carbs-bg);
}
.block-info-box.theme-orange .ib-label {
  color: var(--color-danger, #c84131);
}
.block-info-box.theme-green {
  background-color: var(--color-divider);
}
.block-info-box.theme-green .ib-label {
  color: var(--color-text-main);
}

.bArticle-content .bProductsList {
  margin: 40px 0;
}
.bArticle-content .bProductsList__list {
  list-style: none !important;
  margin: 0;
  padding: 0;
  counter-reset: product-counter;
}
.bArticle-content .bProductsList__item {
  position: relative;
  padding: 24px 0 24px 64px !important;
  border-bottom: 1px solid var(--color-rgba-0-0-0-0-05);
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 32px;
  counter-increment: product-counter !important;
}
.bArticle-content .bProductsList__item:last-child {
  border-bottom: none;
}
.bArticle-content .bProductsList__item::before {
  content: counter(product-counter, decimal-leading-zero) !important;
  display: block !important;
  position: absolute;
  left: 0;
  top: 24px;
  font-size: 36px;
  line-height: 1;
  font-family: var(--font-family-secondary, serif);
  color: var(--color-rgba-0-0-0-0-05);
  font-weight: 400;
}
@media (max-width: 767px) {
  .bArticle-content .bProductsList__item {
    flex-direction: column;
    gap: 16px;
    padding: 20px 0 20px 48px !important;
  }
  .bArticle-content .bProductsList__item::before {
    font-size: 28px;
    top: 20px;
  }
}
.bArticle-content .bProductsList__item-content {
  flex: 1;
  min-width: 250px;
}
.bArticle-content .bProductsList__item-title {
  margin: 0 0 6px !important;
  font-size: 20px;
  line-height: 1.3;
  font-weight: 600;
  color: var(--color-text-main, #111);
  font-family: inherit;
}
.bArticle-content .bProductsList__item-subtitle {
  font-size: 11px;
  line-height: 1.4;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-danger, #c84131);
}
.bArticle-content .bProductsList__item-desc {
  flex: 1;
  max-width: 45%;
  text-align: right;
  font-style: italic;
  font-family: var(--font-family-secondary, serif);
  font-size: 16px;
  line-height: 1.5;
  color: var(--color-text-muted, #555);
  margin: 0;
}
@media (max-width: 767px) {
  .bArticle-content .bProductsList__item-desc {
    max-width: 100%;
    text-align: left;
    font-size: 15px;
  }
}
.bArticle-content .bProductsList__item-desc p {
  margin: 0 !important;
}

.swiper-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
}
.swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  background: var(--color-divider);
  margin: 0 10px !important;
  cursor: pointer;
  transition: 0.3s;
  opacity: 1;
  z-index: 10;
  display: block;
}
.swiper-pagination-bullet:hover {
  background: var(--color-text-main);
}
.swiper-pagination-bullet-active {
  background: var(--color-text-main);
}

/* ================== Text =================== */
.title {
  position: relative;
  font-family: var(--font-header);
  font-weight: 600;
  line-height: 1.1;
}
.title em {
  color: var(--color-text-secondary);
  font-style: italic;
}

.fz-h1 {
  font-size: 72px;
  font-weight: 600;
  line-height: 0.8;
}
@media (max-width: 767px) {
  .fz-h1 {
    font-size: 48px;
  }
}

.fz-h2 {
  font-size: 48px;
  font-weight: 700;
}
@media (max-width: 767px) {
  .fz-h2 {
    font-size: 30px;
  }
}

.fz-h3 {
  font-size: 28px;
  font-weight: 700;
}
@media (max-width: 767px) {
  .fz-h3 {
    font-size: 24px;
  }
}

.fz-h4 {
  font-size: 22px;
  font-weight: 500;
}
@media (max-width: 767px) {
  .fz-h4 {
    font-size: 20px;
  }
}

p {
  line-height: 1.6;
  font-size: 16px;
  font-weight: 400;
}

ol {
  padding: 0;
  margin: 0;
}
ol li {
  padding: 0;
  list-style: none;
}

ul {
  padding: 0;
  margin: 0;
}
ul li {
  padding: 0;
  list-style: none;
}

.c-title {
  font-size: 18px;
  font-weight: 500;
  display: block;
}

.ta-center {
  text-align: center;
}

.ttu {
  text-transform: uppercase;
}

a {
  color: var(--color-text-main);
}

.message {
  font-size: 18px;
  font-weight: 400;
  color: var(--color-surface);
  display: block;
  text-align: center;
}

.section__header {
  margin-bottom: 20px;
}
@media (max-width: 767px) {
  .section__header {
    margin-bottom: 20px;
  }
}
.section__header .title {
  font-weight: 500;
  position: relative;
  margin-bottom: 4px !important;
  font-size: 24px;
}
@media (max-width: 767px) {
  .section__header .title {
    margin-bottom: 0;
  }
}
.section__header .subtitle {
  font-size: 16px;
  color: var(--color-surface);
}
@media (max-width: 767px) {
  .section__header .subtitle {
    font-size: 14px;
  }
}
.section__header.center .title {
  text-align: center;
}
.section__header.center .subtitle {
  text-align: center;
  display: block;
}

.short-desc {
  margin: 0;
  font-size: 16px;
  line-height: 1.6;
  color: var(--color-text-gray);
  font-weight: 300;
}
@media (max-width: 767px) {
  .short-desc {
    font-size: 15px;
  }
}
.short-desc p {
  font-size: inherit;
  font-weight: inherit;
  color: inherit;
  line-height: inherit;
}

.pretitle {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.3px;
  color: var(--color-text-secondary);
  text-transform: uppercase;
  margin-bottom: 8px;
}

.ttu {
  text-transform: uppercase;
}

.btn {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 44px;
  font-size: 14px;
  line-height: 1;
  transition: 0.3s ease;
  padding: 0px 24px;
  width: fit-content;
  cursor: pointer;
  gap: 8px;
  text-transform: uppercase;
  font-family: var(--font-family-main);
  color: var(--color-text-main);
  font-weight: 600;
  letter-spacing: 0.1em;
}
.btn svg {
  width: 16px;
  height: auto;
}
.btn.btn-small {
  height: 36px;
  font-size: 14px;
  padding: 0px 16px;
  gap: 8px;
}
.btn.btn-small svg {
  width: 14px;
}
.btn.btn-large {
  height: 56px;
}
.btn-primary {
  background-color: var(--color-accent, #c4622d);
  color: var(--color-bg);
}
@media (hover: hover) {
  .btn-primary:hover {
    background-color: var(--color-brown-black, #1a1814);
  }
}
.btn-border {
  background: transparent;
  border: 1px solid var(--color-divider);
}
@media (min-width: 1025px) {
  .btn-border:hover {
    border: 1px solid var(--color-accent);
    color: var(--color-accent);
  }
}
.btn-border-primary {
  background: transparent;
}
@media (min-width: 1025px) {
  .btn-border-primary:hover {
    opacity: 0.75;
  }
}
.btn-second {
  background-color: var(--color-text-main);
  color: var(--color-bg);
}
@media (max-width: 767px) {
  .btn {
    font-size: 14px;
    padding: 0 24px;
  }
}

.btn-vitamins {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  color: var(--color-text-muted);
  padding: 4px 0;
  margin-top: 16px;
  line-height: 1;
  background: transparent;
  gap: 6px;
  cursor: pointer;
  width: 100%;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.btn-vitamins svg {
  width: 12px;
  height: auto;
}

.filter-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  border: 1px solid var(--color-divider);
  width: auto;
  height: 34px;
  padding: 0 12px;
  width: auto;
  border-radius: 40px;
  font-size: 14px;
  font-weight: 400;
  line-height: 1;
  gap: 6px;
}
.filter-btn svg {
  width: 15px;
  height: auto;
}

.btn-load-more {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid var(--color-contrast);
  padding: 14px 32px;
  font-size: 15px;
  font-weight: 600;
  border-radius: 99px;
  cursor: pointer;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  outline: none;
  color: var(--color-text-main);
}
.btn-load-more-icon {
  transition: transform 0.2s ease;
  display: block;
}
.btn-load-more-icon polyline {
  stroke: var(--color-text-main);
  transition: transform 0.2s ease;
}
@media (min-width: 1025px) {
  .btn-load-more:hover {
    background-color: var(--color-contrast);
    color: #fff;
  }
  .btn-load-more:hover .btn-load-more-icon {
    transform: translateY(2px);
  }
  .btn-load-more:hover .btn-load-more-icon polyline {
    stroke: var(--color-bg);
  }
}

.error404 {
  background-color: var(--color-bg-main, var(--color-bg));
}
.error404__hero {
  padding: 64px 0 48px;
  background-color: var(--color-bg-main, var(--color-surface));
}
.error404__hero-inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 48px;
}
@media (max-width: 991px) {
  .error404__hero-inner {
    grid-template-columns: 1fr;
    text-align: center;
  }
}
.error404__content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
}
@media (max-width: 991px) {
  .error404__content {
    align-items: center;
    order: 2;
  }
}
.error404__number {
  font-family: var(--font-header);
  font-size: clamp(100px, 16vw, 180px);
  font-weight: 700;
  line-height: 1;
  color: var(--color-espresso, var(--color-contrast));
  letter-spacing: -0.03em;
  position: relative;
}
.error404__number::after {
  content: "";
  display: inline-block;
  width: 44px;
  height: 44px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235D6848' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 20A7 7 0 0 1 9.8 6.1C15.5 5 17 4.48 19 2c1 2 2 4.18 2 8 0 5.5-4.78 10-10 10z'/%3E%3Cpath d='M2 21c0-3 1.85-5.36 5.08-6C9.5 14.52 12 13 13 12'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 16px;
  right: -20px;
  opacity: 0.85;
}
.error404__title {
  font-family: var(--font-header);
  font-size: var(--fs-2xl);
  font-weight: 600;
  color: var(--color-heading, var(--color-text-main));
  line-height: 1.25;
  margin: 0;
}
.error404__desc {
  font-family: var(--font-body);
  font-size: var(--fs-base);
  color: var(--color-body, var(--color-text-muted));
  line-height: 1.65;
  margin: 0;
}
.error404__btn {
  margin-top: 8px;
  border-radius: 8px;
  background-color: var(--color-sage, var(--color-accent));
  color: var(--color-text-inverse, #fff);
  font-size: var(--fs-sm);
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: none;
  transition: background-color 0.25s ease;
}
.error404__btn svg {
  transition: transform 0.25s ease;
}
@media (hover: hover) {
  .error404__btn:hover {
    background-color: var(--color-sage-hover, var(--color-brown-black));
  }
  .error404__btn:hover svg {
    transform: translateX(4px);
  }
}
.error404__image-wrap {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (max-width: 991px) {
  .error404__image-wrap {
    order: 1;
    max-width: 480px;
    margin: 0 auto;
  }
}
.error404__image {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}
.error404__links-section {
  padding: 64px 0 56px;
  background-color: var(--color-bg-section, var(--color-surface));
  border-top: 1px solid var(--color-divider);
}
.error404__links-title {
  font-family: var(--font-header);
  font-size: var(--fs-xl);
  font-weight: 600;
  color: var(--color-heading, var(--color-text-main));
  text-align: center;
  margin: 0 0 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}
.error404__leaf-icon {
  display: inline-flex;
  align-items: center;
  color: var(--color-sage, var(--color-text-secondary));
  opacity: 0.8;
}
.error404__cards {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
@media (max-width: 991px) {
  .error404__cards {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 575px) {
  .error404__cards {
    grid-template-columns: 1fr;
  }
}
.error404__card {
  background-color: var(--color-bg-card, #fff);
  border: 1px solid var(--color-border, var(--color-divider));
  border-radius: 14px;
  padding: 28px 22px 22px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  transition: box-shadow 0.25s ease, transform 0.25s ease, border-color 0.25s ease;
  cursor: pointer;
}
@media (hover: hover) {
  .error404__card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 32px var(--color-shadow, rgba(44, 38, 34, 0.1));
    border-color: var(--color-sage, var(--color-accent));
  }
  .error404__card:hover .error404__card-link {
    color: var(--color-sage, var(--color-accent));
  }
}
.error404__card-icon {
  width: 52px;
  height: 52px;
  border-radius: 12px;
  background-color: var(--color-bg-section, var(--color-surface));
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-sage, var(--color-text-secondary));
  flex-shrink: 0;
  margin-bottom: 4px;
}
.error404__card-title {
  font-family: var(--font-header);
  font-size: var(--fs-md);
  font-weight: 600;
  color: var(--color-heading, var(--color-text-main));
  line-height: 1.2;
  margin: 0;
}
.error404__card-desc {
  font-family: var(--font-body);
  font-size: var(--fs-sm);
  color: var(--color-body, var(--color-text-muted));
  line-height: 1.55;
  margin: 0;
  flex: 1;
}
.error404__card-link {
  font-family: var(--font-body);
  font-size: var(--fs-sm);
  font-weight: 600;
  color: var(--color-caption, var(--color-text-muted));
  transition: color 0.2s ease;
  margin-top: 4px;
}
.error404__search-section {
  padding: 56px 0 72px;
  background-color: var(--color-bg-main, var(--color-bg));
}
.error404__search-inner {
  background-color: var(--color-bg-section, var(--color-surface));
  border-radius: 20px;
  padding: 48px 56px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 40px;
  position: relative;
  overflow: hidden;
}
@media (max-width: 767px) {
  .error404__search-inner {
    grid-template-columns: 1fr;
    padding: 32px 24px;
  }
}
.error404__search-text {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.error404__search-title {
  font-family: var(--font-header);
  font-size: var(--fs-xl);
  font-weight: 600;
  color: var(--color-heading, var(--color-text-main));
  margin: 0;
  line-height: 1.25;
}
.error404__search-desc {
  font-family: var(--font-body);
  font-size: var(--fs-base);
  color: var(--color-body, var(--color-text-muted));
  line-height: 1.65;
  margin: 0;
}
.error404__search-form {
  display: flex;
  align-items: center;
  gap: 0;
  margin-top: 8px;
  border: 1.5px solid var(--color-border, var(--color-divider));
  border-radius: 10px;
  overflow: hidden;
  background-color: var(--color-bg-card, #fff);
  transition: border-color 0.2s ease;
}
.error404__search-form:focus-within {
  border-color: var(--color-sage, var(--color-accent));
}
.error404__search-input {
  flex: 1;
  border: none;
  background: transparent;
  font-family: var(--font-body);
  font-size: var(--fs-sm);
  color: var(--color-heading, var(--color-text-main));
  padding: 12px 16px;
  line-height: 1;
  outline: none;
}
.error404__search-input::placeholder {
  color: var(--color-caption, var(--color-text-muted-alt));
}
.error404__search-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  background-color: var(--color-sage, var(--color-accent));
  color: #fff;
  border: none;
  cursor: pointer;
  transition: background-color 0.2s ease;
  flex-shrink: 0;
}
@media (hover: hover) {
  .error404__search-btn:hover {
    background-color: var(--color-sage-hover, var(--color-brown-black));
  }
}

.filters {
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  position: relative;
}
.filters__groups {
  display: flex;
  flex-direction: column;
  width: 100%;
  gap: 3rem;
}
.filters__top {
  display: none;
  padding: 12px;
  background-color: var(--color-bg);
  height: 50px;
}
.filters__top .title {
  font-weight: 400;
}
@media (max-width: 1199px) {
  .filters__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid var(--color-divider);
  }
}

.filter-group {
  position: relative;
  width: 100%;
}
@media (max-width: 1199px) {
  .filter-group {
    margin-right: 0;
    width: 100%;
  }
}
.filter-group.active .custom-filter-btn {
  background: var(--color-bg-light);
}
@media (max-width: 1199px) {
  .filter-group.active .custom-filter-btn {
    background-color: transparent;
  }
}

.custom-filter-btn {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  cursor: pointer;
  text-align: left;
  transition: 0.3s ease;
  padding: 0;
}
@media (max-width: 1199px) {
  .custom-filter-btn {
    border: none;
  }
}
.custom-filter-btn.active .custom-filter-btn-icon:before {
  display: none;
}
.custom-filter-btn-title {
  font-size: 20px;
  display: flex;
  align-items: center;
  font-family: var(--font-family-secondary);
  color: var(--color-text-main);
  margin-bottom: 1rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid var(--color-divider);
  width: 100%;
}
@media (max-width: 1199px) {
  .custom-filter-btn-title {
    font-size: 22px;
  }
}
.custom-filter-btn-icon {
  position: relative;
  display: block;
  width: 16px;
  height: 16px;
}
.custom-filter-btn-icon::after {
  content: " ";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 9px;
  height: 1px;
  background-color: var(--color-text-main);
}
.custom-filter-btn-icon:before {
  content: " ";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 1px;
  height: 9px;
  background-color: var(--color-text-main);
}
.filter-options {
  width: 100%;
  height: auto;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.filter-options__item {
  line-height: 40px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  position: relative;
  white-space: nowrap;
  font-weight: 400;
  border: 1px solid var(--color-divider);
  padding: 0 10px;
}
.filter-options__item:first-child {
  margin-top: 0;
}
.filter-options__item.parent-cat {
  position: relative;
}
.filter-options__item_text {
  display: flex;
  align-items: center;
  font-size: 14px;
}
.filter-options__item_text span {
  color: var(--color-text-muted);
  margin-left: 4px;
  font-size: 11px;
  line-height: 1;
  margin-top: 2px;
}
.filter-options__item-icon {
  display: block;
  min-width: 16px;
  max-width: 16px;
  height: 16px;
  margin: 0px 0px 0px 8px;
  border: 1px solid var(--color-divider);
  display: flex;
  align-items: center;
  justify-content: center;
}
.filter-options__item-icon i {
  font-size: 10px;
  opacity: 0;
}
.filter-options__item.active {
  background: var(--color-contrast);
  border: 1px solid var(--color-contrast);
  color: var(--color-bg);
}
.filter-options__item.active .filter-options__item_text span {
  color: var(--color-bg);
  opacity: 0.5;
}
@media (min-width: 1025px) {
  .filter-options__item:not(.active):hover {
    border: 1px solid var(--color-accent);
    background: var(--color-surface);
  }
  .filter-options__item:not(.active):hover .filter-options__item_text span {
    color: var(--color-text-main);
  }
}

.filter-group-sort {
  position: relative;
}

.filter-sort {
  position: relative;
}
.filter-sort-btn {
  display: flex;
  align-items: center;
  padding: 0;
}
.filter-sort-btn span {
  display: flex;
  align-items: center;
}
.filter-sort-btn span p {
  font-size: 13px;
  font-weight: 500;
  margin-left: 5px;
  cursor: pointer;
}
.filter-sort-btn svg {
  position: relative;
}
.filter-sort-options {
  display: none;
  position: absolute;
  right: 0;
  top: 22px;
  background-color: var(--color-bg);
  padding: 10px;
  z-index: 1000;
  border: 1px solid var(--color-divider);
  border-radius: 4px;
}
.filter-sort-options div {
  cursor: pointer;
  padding: 5px;
  font-size: 14px;
}
.filter-sort-options.show {
  display: block;
}

.filters-overlay {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: var(--color-rgba-255-255-255-0-5);
  z-index: 10;
  display: none;
}

.load-more-wrapper {
  margin: 48px auto 0;
  display: flex;
  flex-direction: column;
  align-items: center;
}

#remaining-posts {
  text-align: center;
  display: block;
  margin-top: 6px;
  font-size: 11px;
  color: var(--color-text-muted);
}

.selected_categories {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding-bottom: 5px;
  display: none;
}
.selected_categories.is-active {
  display: flex;
}
.selected_categories:empty {
  display: none;
}

.selected-category {
  padding: 2px 8px;
  height: 24px;
  font-size: 12px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  transition: 0.3s ease;
  background-color: var(--color-accent);
  color: var(--color-bg);
}
.selected-category:hover {
  opacity: 0.75;
}
.selected-category::after {
  content: "×";
  margin-left: 8px;
  font-size: 16px;
  cursor: pointer;
}

/* =============================================================
   CATALOG SIDEBAR FILTERS (Shared Sidebar & Form Elements)
   ============================================================= */
.catalog-sidebar {
  width: 300px;
  flex-shrink: 0;
  border: 1px solid var(--color-divider, #efe8de);
  border-radius: 20px;
  padding: 24px;
  background-color: #FCFAF6;
}
@media (max-width: 1199px) {
  .catalog-sidebar {
    position: fixed;
    top: 0;
    left: 0;
    width: 320px;
    height: 100vh;
    z-index: 10001;
    border: none;
    border-radius: 0;
    box-shadow: 4px 0 24px rgba(0, 0, 0, 0.15);
    transform: translateX(-105%);
    transition: transform 0.3s ease-in-out;
    display: flex;
    flex-direction: column;
  }
  .catalog-sidebar.is-open {
    transform: translateX(0);
  }
  .catalog-sidebar form {
    flex-grow: 1;
    overflow-y: auto;
    padding-right: 4px;
  }
}
.catalog-sidebar .sidebar-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 24px;
  border-bottom: 1px solid var(--color-divider);
  padding-bottom: 16px;
}
.catalog-sidebar .sidebar-header h3 {
  font-family: var(--font-header);
  font-size: 20px;
  font-weight: 700;
  color: var(--color-dark, #2c2622);
  margin: 0;
}
.catalog-sidebar .sidebar-header .sidebar-close-btn {
  display: none;
  background: none;
  border: none;
  padding: 4px;
  cursor: pointer;
  color: var(--color-text-main);
  transition: color 0.2s ease;
  align-items: center;
  justify-content: center;
}
.catalog-sidebar .sidebar-header .sidebar-close-btn:hover {
  color: var(--color-accent);
}
@media (max-width: 1199px) {
  .catalog-sidebar .sidebar-header .sidebar-close-btn {
    display: flex;
  }
}
.catalog-sidebar .sidebar-header .clear-filters-link {
  background: none;
  border: none;
  font-size: 13px;
  font-weight: 600;
  color: var(--color-text-muted, #9d948b);
  cursor: pointer;
  text-decoration: underline;
  padding: 0;
  transition: color 0.2s ease;
}
.catalog-sidebar .sidebar-header .clear-filters-link:hover {
  color: var(--color-accent);
}
.catalog-sidebar {
  /* Form Groups */
}
.catalog-sidebar .sidebar-filter-group {
  margin-bottom: 28px;
}
.catalog-sidebar .sidebar-filter-group:not(:last-child) {
  border-bottom: 1px solid var(--color-divider);
  padding-bottom: 24px;
}
.catalog-sidebar .sidebar-filter-group--search {
  margin-bottom: 20px;
}
.catalog-sidebar .sidebar-filter-group__title {
  font-family: var(--font-header);
  font-size: 15px;
  font-weight: 700;
  color: var(--color-dark, #2c2622);
  margin: 0 0 14px;
}
.catalog-sidebar .sidebar-filter-group__list {
  display: flex;
  flex-direction: column;
  padding-right: 6px;
}
.catalog-sidebar .sidebar-filter-group__extra {
  display: none;
}
.catalog-sidebar .sidebar-filter-group__show-more {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: none;
  border: none;
  padding: 6px 0 0;
  font-size: 13px;
  font-weight: 600;
  color: var(--color-text-muted, #9d948b);
  cursor: pointer;
  transition: color 0.2s ease;
  margin-top: 8px;
}
.catalog-sidebar .sidebar-filter-group__show-more svg {
  transition: transform 0.25s ease;
}
.catalog-sidebar .sidebar-filter-group__show-more:hover {
  color: var(--color-accent);
}
.catalog-sidebar .sidebar-filter-group__show-more.is-open svg {
  transform: rotate(180deg);
}
.catalog-sidebar {
  /* Search Wrap */
}
.catalog-sidebar .sidebar-search-wrap {
  position: relative;
  width: 100%;
}
.catalog-sidebar .sidebar-search-wrap input {
  width: 100%;
  height: 40px;
  border-radius: 10px;
  border: 1px solid var(--color-divider);
  padding: 0 16px 0 36px;
  font-family: inherit;
  font-size: 13px;
  color: var(--color-text-main);
  background-color: var(--color-bg);
  transition: all 0.25s ease;
}
.catalog-sidebar .sidebar-search-wrap input:focus {
  border-color: var(--color-accent);
  background-color: var(--color-surface);
  outline: none;
}
.catalog-sidebar .sidebar-search-wrap .search-icon {
  position: absolute;
  left: 12px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--color-text-muted);
  pointer-events: none;
}
.catalog-sidebar {
  /* Custom Checkbox Design */
}
.catalog-sidebar .sidebar-filter-checkbox {
  display: flex;
  align-items: center;
  cursor: pointer;
  font-size: 14px;
  user-select: none;
  width: 100%;
  margin-bottom: 12px;
}
.catalog-sidebar .sidebar-filter-checkbox:last-child {
  margin-bottom: 0;
}
.catalog-sidebar .sidebar-filter-checkbox input {
  display: none;
}
.catalog-sidebar .sidebar-filter-checkbox .checkbox-box {
  width: 18px;
  height: 18px;
  border-radius: 5px;
  border: 1px solid var(--color-divider);
  background-color: var(--color-bg);
  margin-right: 10px;
  position: relative;
  transition: all 0.2s ease;
  flex-shrink: 0;
}
.catalog-sidebar .sidebar-filter-checkbox .checkbox-box::after {
  content: "";
  position: absolute;
  left: 5px;
  top: 1px;
  width: 4px;
  height: 9px;
  border: solid white;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg) scale(0);
  transition: transform 0.2s ease;
}
.catalog-sidebar .sidebar-filter-checkbox .checkbox-label {
  color: var(--color-text-main);
  transition: color 0.2s ease;
  flex-grow: 1;
}
.catalog-sidebar .sidebar-filter-checkbox .checkbox-count {
  font-size: 12px;
  color: var(--color-text-muted);
  margin-left: 8px;
}
.catalog-sidebar .sidebar-filter-checkbox:hover .checkbox-box {
  border-color: var(--color-sage);
}
.catalog-sidebar .sidebar-filter-checkbox:hover .checkbox-label {
  color: var(--color-dark);
}
.catalog-sidebar .sidebar-filter-checkbox input:checked + .checkbox-box {
  background-color: var(--color-sage);
  border-color: var(--color-sage);
}
.catalog-sidebar .sidebar-filter-checkbox input:checked + .checkbox-box::after {
  transform: rotate(45deg) scale(1);
}
.catalog-sidebar {
  /* Toggle Buttons */
}
.catalog-sidebar .sidebar-filter-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.catalog-sidebar .filter-toggle-btn {
  background-color: var(--color-surface);
  border: 1px solid var(--color-divider);
  border-radius: 10px;
  padding: 8px 12px;
  font-family: inherit;
  font-size: 13px;
  font-weight: 600;
  color: var(--color-text-main);
  cursor: pointer;
  transition: all 0.25s ease;
}
.catalog-sidebar .filter-toggle-btn:hover {
  border-color: var(--color-accent);
  color: var(--color-dark);
}
.catalog-sidebar .filter-toggle-btn.is-active {
  background-color: var(--color-accent);
  color: var(--color-surface);
  border-color: var(--color-accent);
}
.catalog-sidebar {
  /* Bottom Actions */
}
.catalog-sidebar .sidebar-bottom-action {
  margin-top: 8px;
}
.catalog-sidebar {
  /* Calories range slider styling (used in weekly menu) */
}
.catalog-sidebar .calories-slider-container {
  padding: 10px 0 0;
}
.catalog-sidebar .calories-slider-track-wrap {
  position: relative;
  height: 4px;
  background-color: var(--color-divider);
  border-radius: 99px;
  margin: 16px 0 24px;
}
.catalog-sidebar .slider-track-bar {
  position: absolute;
  height: 100%;
  background-color: var(--color-accent);
  border-radius: 99px;
}
.catalog-sidebar .range-thumb {
  position: absolute;
  width: 100%;
  background: none;
  pointer-events: none;
  -webkit-appearance: none;
  appearance: none;
  top: 50%;
  transform: translateY(-50%);
  height: 20px;
  margin: 0;
  left: 0;
}
.catalog-sidebar .range-thumb::-webkit-slider-thumb {
  height: 16px;
  width: 16px;
  border-radius: 50%;
  background: #ffffff;
  border: 2px solid var(--color-accent);
  cursor: pointer;
  pointer-events: auto;
  -webkit-appearance: none;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15);
  transition: transform 0.1s ease;
}
.catalog-sidebar .range-thumb::-webkit-slider-thumb:hover {
  transform: scale(1.15);
}
.catalog-sidebar .range-thumb::-moz-range-thumb {
  height: 16px;
  width: 16px;
  border-radius: 50%;
  background: #ffffff;
  border: 2px solid var(--color-accent);
  cursor: pointer;
  pointer-events: auto;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15);
  transition: transform 0.1s ease;
}
.catalog-sidebar .range-thumb::-moz-range-thumb:hover {
  transform: scale(1.15);
}
.catalog-sidebar .calories-slider-labels {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 13px;
}
.catalog-sidebar .calories-slider-labels .calories-label-text {
  color: var(--color-text-main);
}
.catalog-sidebar .calories-slider-labels .calories-label-text strong {
  color: var(--color-dark);
  font-weight: 700;
}

/* catalog-sidebar overlay and mobile button styles */
.catalog-sidebar-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.4);
  z-index: 10000;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease-in-out;
}
.catalog-sidebar-overlay.is-visible {
  opacity: 1;
  pointer-events: auto;
}

.catalog-filters-toggle-btn {
  display: none;
}
@media (max-width: 1199px) {
  .catalog-filters-toggle-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    height: 40px;
    padding: 0 16px;
    border-radius: 10px;
    border: 1px solid var(--color-divider, #efe8de);
    background-color: var(--color-surface, #ffffff);
    color: var(--color-dark, #2c2622);
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
  }
  .catalog-filters-toggle-btn svg {
    color: var(--color-text-muted);
    transition: color 0.2s ease;
  }
  .catalog-filters-toggle-btn:hover {
    border-color: var(--color-accent);
    color: var(--color-accent);
  }
  .catalog-filters-toggle-btn:hover svg {
    color: var(--color-accent);
  }
}

.meta-row-left-wrap {
  display: flex;
  align-items: center;
  gap: 16px;
}
@media (max-width: 575px) {
  .meta-row-left-wrap {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    width: 100%;
  }
}

body.no-scroll {
  overflow: hidden !important;
}

/* ================== Components =================== */
.author-badge {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 0;
}
.author-badge__photo {
  width: 42px;
  height: 42px;
  overflow: hidden;
  position: relative;
  border-radius: 50%;
  flex-shrink: 0;
}
.author-badge__photo img {
  position: relative;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.author-badge__photo-placeholder {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background-color: var(--color-text-secondary);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-bg);
  font-weight: 700;
  font-size: 16px;
  text-transform: uppercase;
  flex-shrink: 0;
}
.author-badge__photo-placeholder span {
  display: block;
  line-height: 1;
}
.author-badge__content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
}
.author-badge__label {
  color: var(--color-text-muted, #7c7a76);
  font-size: 9px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  line-height: 1;
}
.author-badge__name {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-text-main, #111111);
  text-decoration: none;
  line-height: 1.2;
  text-transform: none;
  cursor: pointer;
}
.author-badge__name:hover {
  color: var(--color-text-secondary);
  text-decoration: none;
}

.author-badge-blog {
  position: relative;
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-bottom: 2rem;
}
.author-badge-blog__content {
  display: flex;
  gap: 6px;
}
.author-badge-blog__label {
  font-size: 16px;
  font-weight: 400;
}
.author-badge-blog__name {
  cursor: pointer;
  font-size: 16px;
  font-weight: 400;
  display: flex;
  align-items: center;
  text-decoration: underline;
}

#breadcrumbs,
#breadcrumbs > span {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  font-size: 10px;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 2px;
  color: var(--color-carbs-bg);
  margin: 0;
  padding: 0;
}

#breadcrumbs {
  display: none;
}
#breadcrumbs a {
  color: var(--color-nature);
  text-decoration: none;
  transition: color 0.2s ease;
  white-space: nowrap;
}
#breadcrumbs a:hover {
  color: var(--color-text-main);
  text-decoration: none;
}
#breadcrumbs a span {
  color: inherit;
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  text-transform: inherit;
}
#breadcrumbs span {
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  text-transform: inherit;
}
#breadcrumbs .breadcrumb_last {
  font-weight: 700;
  color: var(--color-text-main);
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
}
#breadcrumbs .separator {
  display: none !important;
}

.bookmark {
  padding-bottom: 80px;
}

.recipes-saved-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(5, 1fr);
}
@media (max-width: 767px) {
  .recipes-saved-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

.bookmark-btn {
  margin: 0;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 1px solid var(--color-divider);
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.3s ease;
  background-color: transparent;
  cursor: pointer;
  outline: none;
  position: relative;
  transition: 0.2s ease;
}
.bookmark-btn__text, .bookmark-btn__count {
  display: none !important;
}
.bookmark-btn__icon {
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.bookmark-btn__icon svg {
  width: 16px;
  height: 16px;
  color: var(--color-gray-dark);
  transition: 0.3s ease;
  transition: 0.2s ease;
}
.bookmark-btn__icon svg.bookmark-btn__icon--saved {
  display: none;
}
.bookmark-btn__icon svg.bookmark-btn__icon--saved path {
  fill: currentColor;
}
.bookmark-btn.is-active {
  background-color: var(--color-brown-black);
  border: 1px solid var(--color-brown-black);
}
.bookmark-btn.is-active .bookmark-btn__icon--add {
  display: none;
}
.bookmark-btn.is-active .bookmark-btn__icon--saved {
  display: inline;
}
.bookmark-btn.is-active .bookmark-btn__icon svg {
  color: var(--color-bg);
}
.bookmark-btn:hover {
  background-color: var(--color-brown-black);
  border: 1px solid var(--color-brown-black);
}
.bookmark-btn:hover .bookmark-btn__icon svg {
  color: var(--color-bg);
}
.bookmark-btn .share-tooltip {
  position: absolute;
  right: calc(100% + 10px);
  top: 50%;
  transform: translateY(-50%);
  background: var(--color-brown-black);
  color: var(--color-bg);
  padding: 6px 12px;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 500;
  white-space: nowrap;
  opacity: 0;
  visibility: hidden;
  transition: 0.3s ease;
  pointer-events: none;
}
.bookmark-btn .share-tooltip::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -4px;
  transform: translateY(-50%);
  border-width: 5px 0 5px 5px;
  border-style: solid;
  border-color: transparent transparent transparent var(--color-brown-black);
}
.bookmark-btn.is-copied .share-tooltip {
  opacity: 1;
  visibility: visible;
}

.card {
  position: relative;
  display: flex;
  flex-direction: column;
  text-decoration: none;
  background-color: #ffffff;
  border-radius: 24px;
  overflow: hidden;
  box-shadow: 0 4px 10px rgba(61, 50, 41, 0.05);
  border: 1px solid var(--color-border);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
  box-sizing: border-box;
  color: inherit;
}
.card__thumb {
  position: relative;
  width: 100%;
  aspect-ratio: 16/11;
  overflow: hidden;
  border-radius: 20px 20px 0 0;
  background-color: #FAF6F0;
  margin-bottom: 0;
}
.card__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.card__bookmark-btn-wrapper {
  position: absolute;
  z-index: 2;
  right: 6px;
  top: 6px;
}
.card__bookmark-btn-wrapper .bookmark-btn {
  background-color: #fff;
}
.card__body {
  padding: 16px 16px 24px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  flex-grow: 1;
  box-sizing: border-box;
  position: relative;
  z-index: 2;
}
@media (max-width: 767px) {
  .card__body {
    padding: 18px;
  }
}
.card__body__top {
  position: relative;
}
.card__body .card__meta {
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #8C7E74;
  margin-bottom: 8px;
  display: flex;
  align-items: center;
  gap: 6px;
}
@media (max-width: 767px) {
  .card__body .card__meta {
    font-size: 10px;
    margin-bottom: 6px;
  }
}
.card__body .card__meta-date {
  display: inline-block;
}
.card__row {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 16px;
  margin-top: -26px;
}
.card__author {
  display: flex;
  align-items: flex-end;
  gap: 12px;
}
.card__author-avatar {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  overflow: hidden;
  border: 1.5px solid rgba(61, 50, 41, 0.06);
  background-color: #FAF6F0;
  flex-shrink: 0;
}
.card__author-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.card__author .name {
  font-family: var(--font-header);
  font-size: 13px;
  font-weight: 700;
  color: #3D3229;
  line-height: 1.2;
}
.card__author .verified-badge {
  width: 13px;
  height: 13px;
  border-radius: 50%;
  background-color: #5A7A52;
  color: #ffffff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 8px;
  flex-shrink: 0;
}
.card__author .verified-badge svg {
  stroke-width: 4;
}
.card__author .position {
  font-family: var(--font-body);
  font-size: 11px;
  color: #8C7E74;
  margin-top: 2px;
  line-height: 1.1;
}
.card__author-meta {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.card__author-name-row {
  display: flex;
  align-items: center;
  gap: 6px;
}
.card .meta-rating-col {
  display: flex;
  align-items: center;
  gap: 8px;
}
.card .meta-rating-col .star-icon {
  color: #D4622A;
  font-size: 20px;
  line-height: 1;
}
.card .meta-rating-col .rating-info {
  display: flex;
  align-items: center;
  gap: 3px;
}
.card .meta-rating-col .rating-info strong {
  font-size: 13px;
  font-weight: 700;
  color: #3D3229;
  line-height: 1.2;
}
.card .meta-rating-col .rating-info span {
  font-size: 13px;
  color: #8C7E74;
}
.card__title {
  font-family: var(--font-header);
  font-size: 22px;
  font-weight: 600;
  line-height: 1.2;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: color 0.2s ease;
}
@media (max-width: 767px) {
  .card__title {
    font-size: 20px;
  }
}
.card__excerpt {
  font-size: 14px;
  font-weight: 400;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: color 0.2s ease;
  color: var(--color-caption);
  margin: 12px 0 0 0;
}
.card:hover {
  transform: translateY(-4px);
}
.card:hover .card__thumb img {
  transform: scale(1.03);
}

.card__stats-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 20px;
  gap: 6px;
  border-top: 1px solid rgba(61, 50, 41, 0.06);
  padding-top: 12px;
}
.card__stats-bar .stat-col {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex: 1;
  text-align: center;
}
.card__stats-bar .stat-col .val {
  font-family: "Playfair Display", serif;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.2;
  display: flex;
  align-items: center;
  gap: 4px;
  height: 19px;
  overflow: hidden;
}
.card__stats-bar .stat-col .lbl {
  font-family: var(--font-body);
  font-size: 10px;
  color: var(--color-text-gray);
  line-height: 1;
  margin-top: 2px;
  white-space: nowrap;
}
.card__stats-bar .stat-divider {
  width: 1px;
  height: 24px;
  background-color: rgba(61, 50, 41, 0.06);
  flex-shrink: 0;
}

.commentsForm {
  display: flex;
  flex-direction: column;
  position: relative;
  width: 100%;
  margin: 0 auto;
  padding: 48px 0 60px;
  border-top: 1px solid var(--color-divider);
}
.commentsForm__header {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  margin-bottom: 28px;
}
.commentsForm__title {
  display: flex;
  align-items: baseline;
  gap: 10px;
}
.commentsForm__count {
  font-family: var(--font-family-secondary, serif);
  font-weight: 400;
  font-size: 22px;
  color: var(--color-text-muted, #999);
}
@media (max-width: 767px) {
  .commentsForm__count {
    font-size: 18px;
  }
}
.commentsForm__reviewsOnly {
  position: relative;
  width: 100%;
  margin-bottom: 8px;
}
.commentsForm .glsr-star-rating {
  display: none !important;
}
.commentsForm .glsr-label {
  display: none !important;
}
.commentsForm .glsr-default form.glsr-form {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}
@media (max-width: 767px) {
  .commentsForm .glsr-default form.glsr-form {
    flex-direction: column;
  }
}
.commentsForm .glsr-field {
  width: 100%;
  flex: 1;
}
.commentsForm .glsr-default form.glsr-form input.glsr-input,
.commentsForm .glsr-default form.glsr-form select.glsr-select,
.commentsForm .glsr-default form.glsr-form textarea.glsr-textarea {
  background: transparent !important;
  width: 100% !important;
  min-height: 48px;
  border: 1px solid var(--color-divider, #e5e5e5) !important;
  outline: none !important;
  margin: 0 !important;
  padding: 12px 20px !important;
  font-size: 15px !important;
  font-family: inherit !important;
  border-radius: 24px !important;
  appearance: none !important;
  resize: none !important;
  box-shadow: none !important;
  line-height: 1.4 !important;
  overflow-y: hidden;
  transition: min-height 0.2s ease, border-color 0.2s ease;
}
@media (max-width: 767px) {
  .commentsForm .glsr-default form.glsr-form input.glsr-input,
  .commentsForm .glsr-default form.glsr-form select.glsr-select,
  .commentsForm .glsr-default form.glsr-form textarea.glsr-textarea {
    border-radius: 16px !important;
    font-size: 14px !important;
  }
}
.commentsForm .glsr-default form.glsr-form input.glsr-input::placeholder,
.commentsForm .glsr-default form.glsr-form select.glsr-select::placeholder,
.commentsForm .glsr-default form.glsr-form textarea.glsr-textarea::placeholder {
  font-size: 15px !important;
  color: var(--color-text-light, #b0b0b0) !important;
}
.commentsForm .glsr-default form.glsr-form input.glsr-input:focus, .commentsForm .glsr-default form.glsr-form input.glsr-input:active,
.commentsForm .glsr-default form.glsr-form select.glsr-select:focus,
.commentsForm .glsr-default form.glsr-form select.glsr-select:active,
.commentsForm .glsr-default form.glsr-form textarea.glsr-textarea:focus,
.commentsForm .glsr-default form.glsr-form textarea.glsr-textarea:active {
  border-color: var(--color-text-muted, #999) !important;
  box-shadow: none !important;
}
.commentsForm [data-field=submit-button] {
  margin: 0;
  flex-shrink: 0;
}
.commentsForm .wp-block-button {
  display: flex;
  justify-content: flex-end;
}
.commentsForm .wp-block-button__link {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-bg);
  height: 48px;
  font-size: 15px !important;
  font-weight: 600 !important;
  padding: 0 28px !important;
  border-radius: 24px !important;
  min-width: 120px;
  transition: 0.2s ease;
  border: none;
  box-shadow: none;
  outline: none;
  cursor: pointer;
  width: fit-content;
  margin: 0;
  background: var(--color-text-main, #111) !important;
}
.commentsForm .wp-block-button__link:hover {
  opacity: 0.85;
}
@media (max-width: 767px) {
  .commentsForm .wp-block-button__link {
    width: 100%;
    font-size: 14px !important;
    border-radius: 16px !important;
    height: 44px;
  }
}
.commentsForm .glsr-reviews-wrap {
  display: flex;
  flex-direction: column;
  gap: 0 !important;
}
.commentsForm .glsr-reviews,
.commentsForm .glsr-reviews-wrap {
  gap: 0 !important;
}
.commentsForm .commentsForm__reviews {
  position: relative;
}
.commentsForm .commentsForm__reviews .glsr-review {
  padding: 20px 0;
  border-top: none;
  border-bottom: 1px solid var(--color-rgba-0-0-0-0-05);
}
.commentsForm .commentsForm__reviews .glsr-review:last-child {
  border-bottom: none;
}
.commentsForm .commentsForm__reviews .glsr-review .glsr-review-rating {
  display: none !important;
}
.commentsForm .commentsForm__reviews .glsr-review__wrap {
  display: flex;
  align-items: flex-start;
  gap: 16px;
}
.commentsForm .commentsForm__reviews .glsr-review .glsr-review-avatar {
  min-width: 48px;
  max-width: 48px;
  height: 48px;
  border-radius: 50%;
  position: relative;
  overflow: hidden;
  flex-shrink: 0;
  background: var(--color-surface);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-nature);
  font-weight: 600;
  font-size: 16px;
}
.commentsForm .commentsForm__reviews .glsr-review .glsr-review-avatar img,
.commentsForm .commentsForm__reviews .glsr-review .glsr-review-avatar picture {
  position: absolute;
  left: 0;
  top: 0;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
}
@media (max-width: 767px) {
  .commentsForm .commentsForm__reviews .glsr-review .glsr-review-avatar {
    min-width: 40px;
    max-width: 40px;
    height: 40px;
  }
}
.commentsForm .commentsForm__reviews .glsr-review__content {
  flex: 1;
  min-width: 0;
}
.commentsForm .commentsForm__reviews .glsr-review__row {
  display: flex;
  align-items: baseline;
  gap: 12px;
  margin-bottom: 8px;
  flex-wrap: wrap;
}
.commentsForm .commentsForm__reviews .glsr-review .glsr-review-author .glsr-tag-value {
  font-size: 16px;
  font-weight: 600;
  color: var(--color-text-main, #111);
}
.commentsForm .commentsForm__reviews .glsr-review .glsr-review-date .glsr-tag-value {
  font-size: 12px;
  color: var(--color-text-light, #999);
  font-weight: 400;
}
.commentsForm .commentsForm__reviews .glsr-review .glsr-review-content {
  margin-bottom: 12px;
}
.commentsForm .commentsForm__reviews .glsr-review .glsr-review-content p {
  font-size: 15px;
  font-weight: 300;
  line-height: 1.6;
  color: var(--color-text-main, #3a352d);
  margin: 0;
}
.commentsForm .glsr-no-margins {
  text-align: center;
  font-size: 14px;
  padding: 24px 16px;
  color: var(--color-text-muted);
}

.commentBtn {
  position: relative;
  display: flex;
  align-items: center;
}
.commentBtn__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 40px;
  padding: 0;
  height: 32px;
  width: 32px;
  transition: 0.2s ease;
  cursor: pointer;
  margin-right: 4px;
}
.commentBtn__icon svg {
  display: block;
  width: 16px;
  height: auto;
  color: var(--color-text-light, #b0b0b0);
}
.commentBtn__icon:hover svg {
  color: var(--color-danger, #c84131);
}
.commentBtn__count {
  margin: 0;
  color: var(--color-text-muted, #999);
  font-size: 13px;
  font-weight: 500;
}

sl-drawer::part(overlay),
.fancybox__backdrop {
  background: rgba(24, 24, 27, 0.6) !important;
  backdrop-filter: none !important;
}

sl-drawer::part(title) {
  font-family: var(--font-family-secondary);
}

sl-drawer::part(header-actions) {
  padding: 0;
}

sl-drawer::part(header) {
  border-bottom: 1px solid var(--color-divider);
}

sl-drawer::part(body) {
  padding-top: 32px;
  padding-bottom: 64px;
}

#drawer-products::part(body) {
  padding-bottom: 0;
}

sl-drawer:not(:defined) {
  display: none;
}

#drawer-left {
  --size: 300px;
}
@media (max-width: 1199px) {
  #drawer-left {
    --size: 500px;
  }
}

@media (max-width: 1199px) {
  #drawer-right,
  #drawer-filter,
  #drawer-products {
    --size: 500px;
  }
}

.user-menu-drawer {
  --size: 400px;
  z-index: 2147483649;
  position: relative;
}
.user-menu-drawer::part(body) {
  padding: 0;
}
@media (max-width: 767px) {
  .user-menu-drawer {
    --size: 100vw;
  }
}

.adsbygoogle {
  z-index: 99 !important;
}

.left-menu .menu li {
  margin-bottom: 24px;
}
.left-menu .menu li a {
  display: flex;
  align-items: center;
  transition: 0.3s ease;
  text-decoration: none;
  color: var(--color-text-main);
  font-size: 18px;
  font-family: var(--font-family-secondary);
  transition: color 0.3s ease;
  line-height: 1.34;
}

.meta {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-text-muted);
  margin-bottom: 8px;
  font-size: 12px;
  font-weight: 400;
}
@media (max-width: 767px) {
  .meta {
    flex-direction: column;
    align-items: center;
  }
}
.meta__break {
  display: flex;
  align-items: center;
}
.meta-divider {
  display: block;
  margin: 0 8px;
  width: 1px;
  height: 10px;
  background: var(--color-divider);
}
.meta__date {
  font-size: inherit;
  color: inherit;
  letter-spacing: inherit;
  font-weight: inherit;
  line-height: 1;
}
.meta__views {
  display: flex;
  align-items: center;
  color: inherit;
  line-height: 1;
}
.meta__views span {
  margin-right: 5px;
  display: block;
}
.meta__comments {
  display: flex;
  align-items: center;
  color: inherit;
  line-height: 1;
}
.meta__comments span {
  margin-left: 4px;
  display: block;
}
.meta__comments svg {
  width: 13px;
  height: 13px;
  fill: var(--color-text-muted);
}

.rate-and-save {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  flex-wrap: wrap;
}

.rateMyPost {
  display: flex;
  flex-direction: column;
  align-items: center;
  border-top: 1px solid var(--color-divider, rgba(17, 17, 17, 0.08));
  margin: 48px auto 32px;
  padding: 3rem 0;
  width: 100%;
  position: relative;
}
.rateMyPost h3.title {
  margin-bottom: 8px;
  text-align: center;
}
.rateMyPost .short-desc {
  display: block;
  text-align: center;
  margin-bottom: 24px;
  max-width: 500px;
  margin: 0 auto 24px;
  font-size: 15px;
  color: var(--color-text-muted);
  line-height: 1.5;
}
.rateMyPost .rmp-heading {
  display: none !important;
}
.rateMyPost .rmp-rating-widget {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  width: 100%;
}
.rateMyPost .rmp-widgets-container.rmp-wp-plugin.rmp-main-container {
  margin: 0 !important;
}
.rateMyPost .rmp-rating-widget__icons {
  display: flex;
  justify-content: center;
  margin-bottom: 0;
  margin: 0 !important;
}
.rateMyPost .rmp-rating-widget__icons-list {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  list-style: none;
  padding: 0;
  margin: 0;
}
.rateMyPost .rmp-rating-widget__icons-list__icon {
  display: flex;
  padding: 0;
  cursor: pointer !important;
  transition: transform 0.2s ease;
}
.rateMyPost .rmp-rating-widget__icons-list__icon:hover {
  transform: scale(1.15);
}
.rateMyPost .rmp-icon--ratings {
  font-size: 36px !important;
  color: var(--color-divider) !important;
  transition: color 0.15s ease;
  cursor: pointer !important;
}
.rateMyPost .rmp-icon--ratings.rmp-icon--full-highlight, .rateMyPost .rmp-icon--ratings.rmp-icon--processing-rating {
  color: var(--color-accent) !important;
}
.rateMyPost .rmp-icon--ratings.rmp-icon--hovered {
  color: var(--color-accent) !important;
}
.rateMyPost .rmp-rating-widget__hover-text {
  font-size: 12px;
  font-weight: 600;
  color: var(--color-text-secondary);
  min-height: 18px;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin: 4px 0 0 0 !important;
}
.rateMyPost .rmp-rating-widget__hover-text:empty {
  display: none !important;
}
.rateMyPost .rmp-btn.rmp-rating-widget__submit-btn {
  background-color: var(--color-contrast);
  color: var(--color-bg);
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 12px 28px;
  border: 1px solid var(--color-contrast);
  border-radius: 99px;
  cursor: pointer !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
  margin-top: 8px;
}
.rateMyPost .rmp-btn.rmp-rating-widget__submit-btn:hover {
  background-color: var(--color-accent, #c4622d);
  border-color: var(--color-accent, #c4622d);
  transform: translateY(-1px);
  box-shadow: 0 4px 12px var(--color-rgba-0-0-0-0-05);
}
.rateMyPost .rmp-btn.rmp-rating-widget__submit-btn:active {
  transform: translateY(0);
}
.rateMyPost .rmp-rating-widget__results {
  font-size: 11px !important;
  font-weight: 500 !important;
  color: var(--color-text-muted, #7c7a76) !important;
  text-align: center;
  margin: 4px 0 !important;
  text-transform: none !important;
}
.rateMyPost .rmp-rating-widget__results .rmp-rating-widget__results__rating,
.rateMyPost .rmp-rating-widget__results .rmp-rating-widget__results__votes {
  font-weight: 700;
  color: var(--color-text-main, #111111);
}
.rateMyPost .rmp-rating-widget__not-rated {
  font-size: 11px !important;
  color: var(--color-text-muted, #7c7a76) !important;
  text-align: center;
  margin: 4px 0 !important;
}
.rateMyPost .rmp-rating-widget__msg {
  font-size: 12px !important;
  font-weight: 600 !important;
  color: var(--color-success-green) !important;
  text-align: center;
  margin: 4px 0 !important;
}

.single .rmp-results-widget {
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}
.single .rmp-results-widget .rmp-icon--half-highlight {
  position: relative;
  -webkit-background-clip: text;
}
.single .rmp-results-widget .rmp-icon--ratings {
  color: var(--color-divider);
}
.single .rmp-results-widget .rmp-icon--full-highlight {
  color: var(--color-accent);
}
.single .rmp-results-widget .rmp-results-widget__avg-rating {
  order: 2;
  font-size: 15px;
  font-weight: 600;
  font-family: var(--font-header);
}
.single .rmp-results-widget .rmp-results-widget__visual-rating {
  margin: 0;
  order: 1;
}
.single .rmp-results-widget .rmp-results-widget__vote-count {
  order: 3;
  font-size: 15px;
  font-weight: 400;
  color: var(--color-text-muted);
  font-family: var(--font-header);
}
.single .rmp-results-widget .rmp-icon--ratings {
  margin: 0 3px !important;
  font-size: var(--fs-base);
}

/* ================== Shared Rating Row (Articles & Rations) =================== */
.post-rating-row, .article__rating-row, .ration-head__rating {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}
.post-rating-row .rmp-results-widget, .article__rating-row .rmp-results-widget, .ration-head__rating .rmp-results-widget {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 0 !important;
}
.post-rating-row .rmp-results-widget__visual-rating, .article__rating-row .rmp-results-widget__visual-rating, .ration-head__rating .rmp-results-widget__visual-rating {
  order: -1 !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 3px !important;
}
.post-rating-row .rmp-results-widget__visual-rating i, .article__rating-row .rmp-results-widget__visual-rating i, .ration-head__rating .rmp-results-widget__visual-rating i,
.post-rating-row .rmp-results-widget__visual-rating svg,
.article__rating-row .rmp-results-widget__visual-rating svg,
.ration-head__rating .rmp-results-widget__visual-rating svg {
  font-size: 15px !important;
  color: var(--color-divider) !important;
}
.post-rating-row .rmp-results-widget__visual-rating i.rmp-icon--full, .article__rating-row .rmp-results-widget__visual-rating i.rmp-icon--full, .ration-head__rating .rmp-results-widget__visual-rating i.rmp-icon--full, .post-rating-row .rmp-results-widget__visual-rating i.is-active, .article__rating-row .rmp-results-widget__visual-rating i.is-active, .ration-head__rating .rmp-results-widget__visual-rating i.is-active, .post-rating-row .rmp-results-widget__visual-rating i.active, .article__rating-row .rmp-results-widget__visual-rating i.active, .ration-head__rating .rmp-results-widget__visual-rating i.active, .post-rating-row .rmp-results-widget__visual-rating i.rmp-icon--ratings, .article__rating-row .rmp-results-widget__visual-rating i.rmp-icon--ratings, .ration-head__rating .rmp-results-widget__visual-rating i.rmp-icon--ratings,
.post-rating-row .rmp-results-widget__visual-rating svg.rmp-icon--full,
.article__rating-row .rmp-results-widget__visual-rating svg.rmp-icon--full,
.ration-head__rating .rmp-results-widget__visual-rating svg.rmp-icon--full,
.post-rating-row .rmp-results-widget__visual-rating svg.is-active,
.article__rating-row .rmp-results-widget__visual-rating svg.is-active,
.ration-head__rating .rmp-results-widget__visual-rating svg.is-active,
.post-rating-row .rmp-results-widget__visual-rating svg.active,
.article__rating-row .rmp-results-widget__visual-rating svg.active,
.ration-head__rating .rmp-results-widget__visual-rating svg.active,
.post-rating-row .rmp-results-widget__visual-rating svg.rmp-icon--ratings,
.article__rating-row .rmp-results-widget__visual-rating svg.rmp-icon--ratings,
.ration-head__rating .rmp-results-widget__visual-rating svg.rmp-icon--ratings {
  color: var(--color-accent) !important;
}
.post-rating-row .rmp-results-widget__avg-rating, .article__rating-row .rmp-results-widget__avg-rating, .ration-head__rating .rmp-results-widget__avg-rating {
  order: 0 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: var(--color-text-main, #111111) !important;
}
.post-rating-row .rmp-results-widget__vote-count, .article__rating-row .rmp-results-widget__vote-count, .ration-head__rating .rmp-results-widget__vote-count {
  font-size: 12px !important;
  color: var(--color-text-muted, #7c7a76) !important;
  font-weight: 500 !important;
}

.search-input {
  position: relative;
  position: relative;
  display: inline-flex;
  align-items: center;
  width: 100%;
}
.search-input__field {
  width: 100%;
  padding-left: 2rem;
}
.search-input__icon {
  position: absolute;
  left: 0px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--color-text-muted);
  pointer-events: none;
}
.search-input input {
  width: 100%;
  height: 40px;
  border: none;
  border-bottom: 1px solid var(--color-divider);
  font-family: var(--font-family-secondary);
  color: var(--color-text-main);
  font-size: 1rem;
  border-radius: 0px;
  margin: 0 auto;
  display: flex;
  background-color: transparent;
  padding-left: 2rem;
}
.search-input input::placeholder {
  color: var(--color-text-muted);
}

.shareBlock {
  position: relative;
  margin-bottom: 48px;
}
.shareBlock-title {
  margin-bottom: 12px;
  display: inline-block;
}
.shareBlock__list {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.shareBlock__item {
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  width: auto;
  height: 42px;
  border: 1px solid var(--color-divider);
  border-radius: 100%;
  padding: 8px 16px;
  border-radius: 2px;
  gap: 10px;
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.3px;
  font-weight: 600;
  transition: 0.3s ease;
}
.shareBlock__item .url-link {
  display: none;
}
.shareBlock__item svg {
  width: 20px;
  height: 20px;
  transition: 0.3s ease;
}
.shareBlock__item svg path {
  transition: 0.3s ease;
}
.shareBlock__item:hover {
  color: var(--color-accent);
  border: 1px solid var(--color-accent);
}
.shareBlock__item:hover svg path {
  fill: var(--color-accent);
}
.shareBlock__item:hover svg path.st0 {
  fill: var(--color-bg);
}

.shareModal-info {
  position: fixed;
  left: 10px;
  bottom: 10px;
  transform: translateY(200%);
  transition: 0.5s;
  background-color: var(--color-contrast);
  color: var(--color-bg);
  border-radius: 2px;
  z-index: 100000;
  padding: 15px 20px;
  font-size: 14px;
}
.shareModal-info.active {
  transform: translateY(0%);
}

.tabs {
  position: relative;
  display: grid;
}
.tabs__nav {
  display: flex;
  gap: 32px;
  border-bottom: 1px solid var(--color-divider);
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
  width: 100%;
  padding: 0;
  background: transparent;
  box-shadow: none;
  border-radius: 0;
}
.tabs__nav::-webkit-scrollbar {
  display: none;
}
@media (max-width: 991px) {
  .tabs__nav {
    margin: 0;
  }
}
@media (max-width: 767px) {
  .tabs__nav {
    gap: 20px;
    margin-bottom: 24px;
    width: calc(100% + 24px);
    padding: 0 24px 0 0;
  }
}
.tabs__nav-item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 4px 16px;
  border: none;
  background: transparent;
  cursor: pointer;
  font-size: 16px;
  font-weight: 500;
  color: var(--color-text-muted);
  position: relative;
  white-space: nowrap;
  transition: all 0.2s ease;
  outline: none;
  opacity: 1;
  border-radius: 0;
}
.tabs__nav-item svg {
  width: 18px;
  height: 18px;
  color: var(--color-text-muted-alt);
  transition: color 0.2s ease;
}
.tabs__nav-item:hover {
  color: var(--color-text-main);
  opacity: 1;
}
.tabs__nav-item:hover svg {
  color: var(--color-text-main);
}
.tabs__nav-item.active {
  color: var(--color-text-main);
  background: transparent;
  font-weight: 700;
}
.tabs__nav-item.active svg {
  color: var(--color-text-main);
}
.tabs__nav-item.active::after {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  right: 0;
  height: 2px;
  background-color: var(--color-text-main);
}
.tabs__nav-item p,
.tabs__nav-item .tabs__nav-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 20px;
  height: 20px;
  padding: 0 6px;
  border-radius: 10px;
  background-color: var(--color-surface);
  font-size: 11px;
  font-weight: 700;
  color: var(--color-text-muted-alt);
  margin-left: 2px;
  transition: all 0.2s ease;
  position: relative;
  bottom: 0;
  margin-bottom: 0;
}
.active .tabs__nav-item p,
.active .tabs__nav-item .tabs__nav-count {
  background-color: var(--color-carbs-bg);
  color: var(--color-accent);
}
.tabs__nav-item.desktop-hide {
  display: none;
}
@media (max-width: 1199px) {
  .tabs__nav-item.desktop-hide {
    display: inline-flex;
  }
}
.tabs__content {
  position: relative;
}
.tabs__pane {
  display: none;
}
.tabs__pane.active {
  display: block;
}

.rTags {
  position: relative;
  margin-bottom: 2.5rem;
}
.rTags-title {
  margin-bottom: 12px;
  display: inline-block;
}
.rTags__list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.rTags__item {
  display: inline-block;
  position: relative;
  font-size: 12px;
  text-transform: uppercase;
  color: var(--color-text-muted);
  transition: 0.3s all ease-in-out;
  border: 1px solid var(--color-divider);
  padding: 6px 12px;
}
.rTags__item:hover {
  color: var(--color-accent);
  border: 1px solid var(--color-accent);
}

.form-style_row {
  margin-bottom: 12px;
  display: flex;
  align-items: center;
  width: 100%;
}
.form-style_col {
  width: 100%;
}
.form-style-devide {
  position: relative;
  margin: 2rem 0;
  width: 100%;
  height: 1px;
}
.form-style-title {
  display: block;
  margin-bottom: 1rem;
}
.form-style-tip {
  font-size: 10px;
  color: var(--color-surface);
  margin-top: 2px;
  line-height: 1.1;
  display: block;
}

.wp-theme-chefie .form-style input[type=text],
.wp-theme-chefie .form-style input[type=password],
.wp-theme-chefie .form-style input[type=email],
.wp-theme-chefie .form-style input[type=number],
.wp-theme-chefie .form-style input[type=url],
.wp-theme-chefie .updateUserForm input[type=text],
.wp-theme-chefie .updateUserForm input[type=password],
.wp-theme-chefie .updateUserForm input[type=email],
.wp-theme-chefie .updateUserForm input[type=number],
.wp-theme-chefie .updateUserForm input[type=url],
.wp-theme-chefie .myDietHead input[type=text],
.wp-theme-chefie .myDietHead input[type=password],
.wp-theme-chefie .myDietHead input[type=email],
.wp-theme-chefie .myDietHead input[type=number],
.wp-theme-chefie .myDietHead input[type=url] {
  max-height: none !important;
  font-weight: 300 !important;
  box-shadow: none;
  padding-left: 12px !important;
  appearance: none;
  height: 44px;
  font-size: 16px;
  background: transparent;
  border-radius: 0;
  box-sizing: border-box;
  transition: border-color 0.2s;
  border: none;
  border-bottom: 1px solid transparent;
  font-family: var(--font-family-main);
  border: 1px solid var(--color-divider);
  color: var(--color-text-main);
  border-radius: 4px;
  width: 100%;
}
.wp-theme-chefie .form-style input[type=text]:focus, .wp-theme-chefie .form-style input[type=text]:active,
.wp-theme-chefie .form-style input[type=password]:focus,
.wp-theme-chefie .form-style input[type=password]:active,
.wp-theme-chefie .form-style input[type=email]:focus,
.wp-theme-chefie .form-style input[type=email]:active,
.wp-theme-chefie .form-style input[type=number]:focus,
.wp-theme-chefie .form-style input[type=number]:active,
.wp-theme-chefie .form-style input[type=url]:focus,
.wp-theme-chefie .form-style input[type=url]:active,
.wp-theme-chefie .updateUserForm input[type=text]:focus,
.wp-theme-chefie .updateUserForm input[type=text]:active,
.wp-theme-chefie .updateUserForm input[type=password]:focus,
.wp-theme-chefie .updateUserForm input[type=password]:active,
.wp-theme-chefie .updateUserForm input[type=email]:focus,
.wp-theme-chefie .updateUserForm input[type=email]:active,
.wp-theme-chefie .updateUserForm input[type=number]:focus,
.wp-theme-chefie .updateUserForm input[type=number]:active,
.wp-theme-chefie .updateUserForm input[type=url]:focus,
.wp-theme-chefie .updateUserForm input[type=url]:active,
.wp-theme-chefie .myDietHead input[type=text]:focus,
.wp-theme-chefie .myDietHead input[type=text]:active,
.wp-theme-chefie .myDietHead input[type=password]:focus,
.wp-theme-chefie .myDietHead input[type=password]:active,
.wp-theme-chefie .myDietHead input[type=email]:focus,
.wp-theme-chefie .myDietHead input[type=email]:active,
.wp-theme-chefie .myDietHead input[type=number]:focus,
.wp-theme-chefie .myDietHead input[type=number]:active,
.wp-theme-chefie .myDietHead input[type=url]:focus,
.wp-theme-chefie .myDietHead input[type=url]:active {
  font-size: inherit !important;
}
.wp-theme-chefie .form-style input[type=text]::placeholder,
.wp-theme-chefie .form-style input[type=password]::placeholder,
.wp-theme-chefie .form-style input[type=email]::placeholder,
.wp-theme-chefie .form-style input[type=number]::placeholder,
.wp-theme-chefie .form-style input[type=url]::placeholder,
.wp-theme-chefie .updateUserForm input[type=text]::placeholder,
.wp-theme-chefie .updateUserForm input[type=password]::placeholder,
.wp-theme-chefie .updateUserForm input[type=email]::placeholder,
.wp-theme-chefie .updateUserForm input[type=number]::placeholder,
.wp-theme-chefie .updateUserForm input[type=url]::placeholder,
.wp-theme-chefie .myDietHead input[type=text]::placeholder,
.wp-theme-chefie .myDietHead input[type=password]::placeholder,
.wp-theme-chefie .myDietHead input[type=email]::placeholder,
.wp-theme-chefie .myDietHead input[type=number]::placeholder,
.wp-theme-chefie .myDietHead input[type=url]::placeholder {
  font-size: inherit !important;
  font-weight: 300 !important;
}
.wp-theme-chefie .form-style input[type=text]:-webkit-autofill,
.wp-theme-chefie .form-style input[type=password]:-webkit-autofill,
.wp-theme-chefie .form-style input[type=email]:-webkit-autofill,
.wp-theme-chefie .form-style input[type=number]:-webkit-autofill,
.wp-theme-chefie .form-style input[type=url]:-webkit-autofill,
.wp-theme-chefie .updateUserForm input[type=text]:-webkit-autofill,
.wp-theme-chefie .updateUserForm input[type=password]:-webkit-autofill,
.wp-theme-chefie .updateUserForm input[type=email]:-webkit-autofill,
.wp-theme-chefie .updateUserForm input[type=number]:-webkit-autofill,
.wp-theme-chefie .updateUserForm input[type=url]:-webkit-autofill,
.wp-theme-chefie .myDietHead input[type=text]:-webkit-autofill,
.wp-theme-chefie .myDietHead input[type=password]:-webkit-autofill,
.wp-theme-chefie .myDietHead input[type=email]:-webkit-autofill,
.wp-theme-chefie .myDietHead input[type=number]:-webkit-autofill,
.wp-theme-chefie .myDietHead input[type=url]:-webkit-autofill {
  background-color: transparent !important;
  -webkit-box-shadow: 0 0 0px 1000px var(--color-bg-warm) inset !important;
  transition: background-color 5000s ease-in-out 0s;
  font-size: inherit !important;
}
.wp-theme-chefie .form-style textarea,
.wp-theme-chefie .updateUserForm textarea,
.wp-theme-chefie .myDietHead textarea {
  min-height: 114px;
  width: 100%;
  font-weight: 300;
  box-shadow: none;
  padding: 16px;
  border-bottom: 1px solid transparent;
  font-family: var(--font-family-main);
  background: var(--color-surface);
  color: var(--color-text-main);
  font-size: 16px;
  border-radius: 4px;
  border: none;
}
.wp-theme-chefie .form-style textarea::placeholder,
.wp-theme-chefie .updateUserForm textarea::placeholder,
.wp-theme-chefie .myDietHead textarea::placeholder {
  font-weight: 300 !important;
}
.wp-theme-chefie .form-style input[type=submit],
.wp-theme-chefie .form-style button[type=submit],
.wp-theme-chefie .form-style .ur-submit-button,
.wp-theme-chefie .updateUserForm input[type=submit],
.wp-theme-chefie .updateUserForm button[type=submit],
.wp-theme-chefie .updateUserForm .ur-submit-button,
.wp-theme-chefie .myDietHead input[type=submit],
.wp-theme-chefie .myDietHead button[type=submit],
.wp-theme-chefie .myDietHead .ur-submit-button {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-bg);
  height: 44px !important;
  padding: 0 16px !important;
  min-width: 140px;
  width: 100% !important;
  transition: 0.3s ease;
  box-shadow: none;
  outline: none;
  cursor: pointer;
  font-size: 16px !important;
  text-transform: uppercase;
  font-weight: 500 !important;
  border: none !important;
  background-color: var(--color-contrast);
}
.wp-theme-chefie .form-style input[type=checkbox],
.wp-theme-chefie .updateUserForm input[type=checkbox],
.wp-theme-chefie .myDietHead input[type=checkbox] {
  position: relative;
  width: 16px;
  height: 16px;
}
.wp-theme-chefie .form-style .user-registration,
.wp-theme-chefie .updateUserForm .user-registration,
.wp-theme-chefie .myDietHead .user-registration {
  position: relative;
  max-width: 540px;
  margin: 0 auto !important;
  border: none;
  box-shadow: none !important;
  box-shadow: none !important;
  padding: 0 !important;
}
.wp-theme-chefie .form-style .user-registration .user-registration-error,
.wp-theme-chefie .updateUserForm .user-registration .user-registration-error,
.wp-theme-chefie .myDietHead .user-registration .user-registration-error {
  color: var(--color-brand-instagram) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  position: absolute !important;
  font-size: 10px !important;
  right: 0 !important;
  left: auto;
  display: flex;
  justify-content: flex-end;
}
.wp-theme-chefie .form-style .user-registration .ur-lost-password-content-container,
.wp-theme-chefie .updateUserForm .user-registration .ur-lost-password-content-container,
.wp-theme-chefie .myDietHead .user-registration .ur-lost-password-content-container {
  display: none !important;
}
.wp-theme-chefie .form-style .user-registration .user-registration-ResetPassword .user-registration-form-row,
.wp-theme-chefie .updateUserForm .user-registration .user-registration-ResetPassword .user-registration-form-row,
.wp-theme-chefie .myDietHead .user-registration .user-registration-ResetPassword .user-registration-form-row {
  margin-bottom: 0 !important;
}
.wp-theme-chefie .form-style .user-registration .user-registration-form__label-for-checkbox span,
.wp-theme-chefie .updateUserForm .user-registration .user-registration-form__label-for-checkbox span,
.wp-theme-chefie .myDietHead .user-registration .user-registration-form__label-for-checkbox span {
  font-size: 12px;
}
.wp-theme-chefie .form-style .user-registration .user-registration-form__input-checkbox,
.wp-theme-chefie .updateUserForm .user-registration .user-registration-form__input-checkbox,
.wp-theme-chefie .myDietHead .user-registration .user-registration-form__input-checkbox {
  width: 12px !important;
  height: 12px;
}
.wp-theme-chefie .form-style .user-registration .ur-input-with-icon,
.wp-theme-chefie .updateUserForm .user-registration .ur-input-with-icon,
.wp-theme-chefie .myDietHead .user-registration .ur-input-with-icon {
  width: 100% !important;
  margin-bottom: 20px;
}
.wp-theme-chefie .form-style .user-registration .ur-input-with-icon svg,
.wp-theme-chefie .updateUserForm .user-registration .ur-input-with-icon svg,
.wp-theme-chefie .myDietHead .user-registration .ur-input-with-icon svg {
  display: none;
}
.wp-theme-chefie .form-style .user-registration .ur-field-item,
.wp-theme-chefie .updateUserForm .user-registration .ur-field-item,
.wp-theme-chefie .myDietHead .user-registration .ur-field-item {
  margin-bottom: 20px;
}
.wp-theme-chefie .form-style .user-registration input,
.wp-theme-chefie .updateUserForm .user-registration input,
.wp-theme-chefie .myDietHead .user-registration input {
  margin-bottom: 0 !important;
}
.wp-theme-chefie .form-style .user-registration #ur-frontend-form,
.wp-theme-chefie .updateUserForm .user-registration #ur-frontend-form,
.wp-theme-chefie .myDietHead .user-registration #ur-frontend-form {
  border: none !important;
}
.wp-theme-chefie .form-style .user-registration .user-registration-form-row,
.wp-theme-chefie .updateUserForm .user-registration .user-registration-form-row,
.wp-theme-chefie .myDietHead .user-registration .user-registration-form-row {
  margin-bottom: 16px !important;
}
.wp-theme-chefie .form-style .user-registration .user-registration-form-row:last-child,
.wp-theme-chefie .updateUserForm .user-registration .user-registration-form-row:last-child,
.wp-theme-chefie .myDietHead .user-registration .user-registration-form-row:last-child {
  margin-bottom: 0 !important;
}
.wp-theme-chefie .form-style .user-registration .user-registration-form-row label,
.wp-theme-chefie .updateUserForm .user-registration .user-registration-form-row label,
.wp-theme-chefie .myDietHead .user-registration .user-registration-form-row label {
  margin: 0 0 4px !important;
  display: inline-block;
  font-size: 11px !important;
  line-height: 16px !important;
  font-weight: 300 !important;
}
.wp-theme-chefie .form-style .user-registration .ur-label,
.wp-theme-chefie .updateUserForm .user-registration .ur-label,
.wp-theme-chefie .myDietHead .user-registration .ur-label {
  margin: 0 0 4px !important;
  display: inline-block;
  font-size: 11px !important;
  line-height: 16px !important;
  font-weight: 300 !important;
}
@media (max-width: 767px) {
  .wp-theme-chefie .form-style .user-registration .ur-label,
  .wp-theme-chefie .updateUserForm .user-registration .ur-label,
  .wp-theme-chefie .myDietHead .user-registration .ur-label {
    font-size: 11px;
    margin: 0 0 2px !important;
  }
}
.wp-theme-chefie .form-style .user-registration .user-registration-Button,
.wp-theme-chefie .updateUserForm .user-registration .user-registration-Button,
.wp-theme-chefie .myDietHead .user-registration .user-registration-Button {
  margin: 0px auto 0;
}
.wp-theme-chefie .form-style .user-registration .ur-button-container,
.wp-theme-chefie .updateUserForm .user-registration .ur-button-container,
.wp-theme-chefie .myDietHead .user-registration .ur-button-container {
  padding: 0 !important;
  margin-top: 0 !important;
  width: 100% !important;
}
.wp-theme-chefie .form-style .user-registration .ur-submit-button,
.wp-theme-chefie .updateUserForm .user-registration .ur-submit-button,
.wp-theme-chefie .myDietHead .user-registration .ur-submit-button {
  margin: 0 !important;
}
.wp-theme-chefie .form-style .user-registration .user_registration_ajax_login_submit,
.wp-theme-chefie .updateUserForm .user-registration .user_registration_ajax_login_submit,
.wp-theme-chefie .myDietHead .user-registration .user_registration_ajax_login_submit {
  margin-top: 0 !important;
}
.wp-theme-chefie .form-style .user-registration .user-registration-LostPassword a:hover,
.wp-theme-chefie .updateUserForm .user-registration .user-registration-LostPassword a:hover,
.wp-theme-chefie .myDietHead .user-registration .user-registration-LostPassword a:hover {
  text-decoration: underline;
}
.wp-theme-chefie .form-style .user-registration .user-registration-form__label-for-checkbox,
.wp-theme-chefie .updateUserForm .user-registration .user-registration-form__label-for-checkbox,
.wp-theme-chefie .myDietHead .user-registration .user-registration-form__label-for-checkbox {
  align-items: center;
  cursor: pointer;
  width: fit-content;
}
.wp-theme-chefie .form-style .user-registration .ur-frontend-form.login,
.wp-theme-chefie .form-style .user-registration .ur-form-grid,
.wp-theme-chefie .updateUserForm .user-registration .ur-frontend-form.login,
.wp-theme-chefie .updateUserForm .user-registration .ur-form-grid,
.wp-theme-chefie .myDietHead .user-registration .ur-frontend-form.login,
.wp-theme-chefie .myDietHead .user-registration .ur-form-grid {
  padding: 0 !important;
}
.wp-theme-chefie .form-style .user-registration .ur-form-grid,
.wp-theme-chefie .updateUserForm .user-registration .ur-form-grid,
.wp-theme-chefie .myDietHead .user-registration .ur-form-grid {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
}
.wp-theme-chefie .form-style .user-registration .ur-form-grid > div,
.wp-theme-chefie .updateUserForm .user-registration .ur-form-grid > div,
.wp-theme-chefie .myDietHead .user-registration .ur-form-grid > div {
  margin-top: 0 !important;
  width: 100%;
}
.wp-theme-chefie .form-style .user-registration .user-registration-form-row,
.wp-theme-chefie .form-style .user-registration .ur-field-item,
.wp-theme-chefie .updateUserForm .user-registration .user-registration-form-row,
.wp-theme-chefie .updateUserForm .user-registration .ur-field-item,
.wp-theme-chefie .myDietHead .user-registration .user-registration-form-row,
.wp-theme-chefie .myDietHead .user-registration .ur-field-item {
  width: 100%;
}
.wp-theme-chefie .form-style .user-registration .user-registration-login-title,
.wp-theme-chefie .updateUserForm .user-registration .user-registration-login-title,
.wp-theme-chefie .myDietHead .user-registration .user-registration-login-title {
  text-align: center;
  font-weight: 500;
  line-height: 1.125;
  position: relative;
  font-size: clamp(24px, 2.5vw, 40px);
  text-align: center;
  margin-bottom: 20px;
}
.wp-theme-chefie .form-style .user-registration .lost_password a,
.wp-theme-chefie .updateUserForm .user-registration .lost_password a,
.wp-theme-chefie .myDietHead .user-registration .lost_password a {
  font-size: 12px;
  text-decoration: none !important;
  transition: 0.3s ease;
}
.wp-theme-chefie .form-style .user-registration .lost_password a:hover,
.wp-theme-chefie .updateUserForm .user-registration .lost_password a:hover,
.wp-theme-chefie .myDietHead .user-registration .lost_password a:hover {
  opacity: 0.75;
}
.wp-theme-chefie .form-style .user-registration .user-registration-before-login-btn,
.wp-theme-chefie .updateUserForm .user-registration .user-registration-before-login-btn,
.wp-theme-chefie .myDietHead .user-registration .user-registration-before-login-btn {
  width: 100%;
  justify-content: space-between;
  padding-bottom: 30px;
}
.wp-theme-chefie .form-style .user-registration .user-registration-error li strong,
.wp-theme-chefie .updateUserForm .user-registration .user-registration-error li strong,
.wp-theme-chefie .myDietHead .user-registration .user-registration-error li strong {
  display: none !important;
}
.wp-theme-chefie .form-style select,
.wp-theme-chefie .updateUserForm select,
.wp-theme-chefie .myDietHead select {
  height: 44px;
  width: 100%;
  border-radius: 0;
  background: var(--color-bg-gray);
  font-size: 16px;
  font-weight: 300;
  box-shadow: none;
  padding-left: 16px;
  border: transparent;
  border: 1px solid var(--color-surface);
  box-shadow: none;
  outline: none;
}
.wp-theme-chefie .form-style select:focus, .wp-theme-chefie .form-style select:focus-visible, .wp-theme-chefie .form-style select:active,
.wp-theme-chefie .updateUserForm select:focus,
.wp-theme-chefie .updateUserForm select:focus-visible,
.wp-theme-chefie .updateUserForm select:active,
.wp-theme-chefie .myDietHead select:focus,
.wp-theme-chefie .myDietHead select:focus-visible,
.wp-theme-chefie .myDietHead select:active {
  border: 1px solid var(--color-text-muted);
}
.wp-theme-chefie .form-style .ur-frontend-form,
.wp-theme-chefie .updateUserForm .ur-frontend-form,
.wp-theme-chefie .myDietHead .ur-frontend-form {
  background-color: transparent !important;
  box-shadow: none !important;
}
.wp-theme-chefie .form-style .ur-frontend-form .ur-form-row .ur-form-grid label,
.wp-theme-chefie .form-style .ur-frontend-form .ur-form-row .ur-form-grid legend,
.wp-theme-chefie .updateUserForm .ur-frontend-form .ur-form-row .ur-form-grid label,
.wp-theme-chefie .updateUserForm .ur-frontend-form .ur-form-row .ur-form-grid legend,
.wp-theme-chefie .myDietHead .ur-frontend-form .ur-form-row .ur-form-grid label,
.wp-theme-chefie .myDietHead .ur-frontend-form .ur-form-row .ur-form-grid legend {
  margin: 0 !important;
}

.custom-file-upload {
  position: relative;
  width: 100%;
  height: 100%;
  margin-bottom: 12px;
}
.custom-file-upload_top {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.custom-file-upload svg {
  width: 26px;
  height: 26px;
  margin-bottom: 4px;
}
.custom-file-upload input[type=file] {
  position: absolute;
  opacity: 0;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  cursor: pointer;
}
.custom-file-upload label {
  width: 100%;
  max-width: 100%;
  padding: 8px 12px;
  text-align: center;
  font-size: 16px;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.3s ease;
  padding: 30px 16px;
}
.custom-file-upload label:hover {
  background-color: var(--color-success-green);
  border-color: var(--color-success-green);
}
.custom-file-upload label:active {
  background-color: var(--color-success-green);
  border-color: var(--color-success-green);
}
.custom-file-upload input[type=file]:focus + label {
  outline: 2px solid var(--color-info-blue);
  outline-offset: 2px;
}
.custom-file-upload .file-info {
  width: 100%;
  overflow: hidden;
  align-items: center;
  justify-content: center;
}
.custom-file-upload .file-info_wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.custom-file-upload .file-info p {
  line-height: 1.2;
  font-size: 9px;
  overflow: hidden;
  text-align: center;
}
.custom-file-upload .file-info img {
  width: 100%;
  max-width: 60px;
  height: auto;
  display: block;
  margin-bottom: 4px;
}

/* Стили для випадаючого меню */
.dropdown {
  position: relative;
  display: inline-block;
  width: 100%;
}
.dropdown-button {
  display: flex;
  align-items: center;
  height: 44px;
  width: 100%;
  background-color: transparent;
  font-size: 16px;
  font-weight: 300;
  box-shadow: none;
  padding-left: 16px;
  border-radius: 0;
  text-align: left;
  position: relative;
  cursor: pointer;
}
.dropdown-button span {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 22px;
}
.dropdown-content {
  display: none;
  position: absolute;
  height: auto;
  max-height: 220px;
  width: 100%;
  background-color: transparent;
  background: var(--color-bg);
  font-size: 16px;
  font-weight: 300;
  box-shadow: none;
  padding-left: 16px;
  overflow-y: auto;
  margin-top: 2px;
  padding-left: 0;
  box-shadow: 0 2px 8px 0 var(--color-rgba-255-255-255-0-5);
  border: 1px solid var(--color-surface);
  z-index: 10;
}
.dropdown-item {
  padding: 8px 12px;
  color: var(--color-gray-dark);
  cursor: pointer;
  transition: 0.3s ease;
  font-size: 16px;
  border-bottom: 1px solid var(--color-surface);
  display: flex;
  align-items: center;
  width: 100%;
}
.dropdown-item:hover {
  background: var(--color-bg-gray);
}
.dropdown-item input {
  margin-right: 8px;
}
.dropdown.show .dropdown-content {
  display: block;
}

.selected-categories {
  font-size: 12px;
  color: var(--color-surface);
  margin-left: 5px;
  line-height: 1.1;
}

.modalFilters-overlay {
  position: fixed;
  left: 0;
  top: 0;
  background-color: var(--color-text-light);
  z-index: 1001;
  width: 100%;
  height: 100%;
  display: none;
  cursor: pointer;
}

.modalFilters {
  position: fixed;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 1001;
  width: 98%;
  max-width: 524px;
  padding: 0 10px 10px 16px;
  background-color: var(--color-bg);
  border-radius: 12px;
  max-height: 500px;
  display: none;
}
@media (max-width: 767px) {
  .modalFilters {
    max-height: 100%;
    height: 100%;
    width: 100%;
    border-radius: 0;
  }
}
.modalFilters-close {
  display: flex;
  align-items: center;
  cursor: pointer;
  transition: 0.3s ease;
  padding: 0;
}
.modalFilters-close-title {
  font-size: 16px;
}
@media (min-width: 1025px) {
  .modalFilters-close:hover:hover {
    opacity: 0.8;
  }
}
.modalFilters-close svg {
  width: auto;
  height: 16px;
  margin-right: 10px;
}
.modalFilters__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 0;
  border-bottom: 1px solid var(--color-divider);
}
.modalFilters .wrap {
  overflow-y: auto;
  height: 400px;
  padding-right: 10px;
  padding-top: 16px;
}
@media (max-width: 767px) {
  .modalFilters .wrap {
    height: calc(100% - 50px);
  }
}
.modalFilters .filter-group {
  padding: 10px;
  margin-bottom: 10px;
}
.modalFilters .filter-group-check {
  width: 6px;
  height: 12px;
  position: absolute;
  right: 14px;
  top: 4px;
  transform: rotate(45deg);
  display: none;
}
.modalFilters .filter-group h4 {
  margin-bottom: 15px;
}
.modalFilters .filter-group label {
  width: 100%;
  display: flex;
  margin-bottom: 15px;
  position: relative;
  cursor: pointer;
  transition: 0.3s ease;
}
.modalFilters .filter-group label:last-child {
  margin-bottom: 0;
}
.modalFilters .filter-group label input {
  display: none;
}
.modalFilters .filter-group label input:checked + .filter-group-check {
  display: block;
}

.sorting {
  position: relative;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
}
.sorting #sort-form {
  display: flex;
  align-items: center;
}
.sorting label {
  height: 32px;
  padding: 0 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  font-weight: 500;
  margin-right: 12px;
  border-radius: 4px;
  cursor: pointer;
  transition: background 0.3s ease;
  box-shadow: none;
  outline: none;
}
.sorting label:active, .sorting label:focus {
  box-shadow: none;
  outline: none;
}
.sorting label.active {
  color: var(--color-bg);
}
@media (min-width: 1025px) {
  .sorting label.active:hover {
    color: var(--color-bg);
  }
}
.sorting label input {
  display: none;
}
.navigation {
  position: fixed;
  height: 64px;
  background: var(--color-text-main);
  border-top: 1px solid var(--color-contrast);
  left: 0;
  bottom: 0;
  width: 100%;
  z-index: 100;
  display: none;
}
.navigation__list {
  display: flex;
  height: 100%;
  width: 100%;
  margin-right: -2px;
}
.navigation__item {
  flex-basis: calc(20% - 2px);
  margin-right: 2px;
}
.navigation__link {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  width: 100%;
}
.navigation__link svg {
  fill: var(--color-bg);
  height: 20px;
  width: auto;
}
.navigation__link span {
  font-size: 8px;
  color: var(--color-bg);
  display: inline-block;
  margin-top: 8px;
  text-transform: uppercase;
  letter-spacing: 0.3px;
  font-weight: 500;
}

.mainMenu {
  position: fixed;
  height: 100vh;
  left: 0;
  top: 0;
  width: 100%;
  z-index: 1000;
  background: var(--color-text-main);
  padding: 0px 24px 48px;
  display: none;
  overflow-y: auto;
}
.mainMenu__top {
  display: flex;
  align-items: center;
  padding: 16px 0;
  margin-bottom: 20px;
  border-bottom: 1px solid var(--color-rgba-255-255-255-0-2);
  opacity: 0.75;
}
.mainMenu__top svg {
  width: auto;
  height: 22px;
}
.mainMenu__top svg path {
  fill: var(--color-bg);
}
.mainMenu__top span {
  font-size: 16px;
  color: var(--color-bg);
  line-height: 1;
}
.mainMenu-title {
  font-size: 14px;
  margin-bottom: 5px;
  color: var(--color-bg);
  display: inline-block;
  font-weight: 500;
  opacity: 0.75;
}
.mainMenu .wrap {
  display: flex;
  flex-direction: column;
  margin-bottom: 30px;
  margin-right: -5px;
}
.mainMenu .menu {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
.mainMenu .menu li {
  flex-basis: calc(50% - 5px);
  margin-right: 5px;
  margin-bottom: 5px;
}
.mainMenu .menu li a {
  height: 44px;
  display: flex;
  align-items: center;
  font-size: 14px;
  padding: 8px 12px;
  background: var(--color-contrast);
  color: var(--color-bg);
  border-radius: 4px;
  font-family: var(--font-header);
}
.mainMenu .menu li a img {
  filter: invert(1);
  width: 18px !important;
  padding: 0 !important;
}
.mainMenu #menu-small-menu li a {
  color: var(--color-carbs-bg);
}
.mainMenu-description {
  color: var(--color-carbs-bg);
  font-size: 14px;
  margin-top: 20px;
}

.submitDiet {
  padding: 32px 0 36px;
}

.submitRecipe {
  padding: 32px 0 100px;
}
.submitRecipe #tab_create .wrap {
  display: flex;
  gap: 40px;
  align-items: flex-start;
  max-width: 1100px;
  margin: 0 auto;
}
@media (max-width: 991px) {
  .submitRecipe #tab_create .wrap {
    flex-direction: column;
    align-items: stretch;
    gap: 30px;
  }
}
.submitRecipe #tab_create .create__content {
  flex: 1;
  min-width: 0;
}
.submitRecipe #tab_create .create__sidebar {
  width: 280px;
  display: flex;
  flex-direction: column;
  gap: 20px;
  flex-shrink: 0;
  position: sticky;
  top: 24px;
}
@media (max-width: 991px) {
  .submitRecipe #tab_create .create__sidebar {
    width: 100%;
    position: static;
    flex-direction: row;
    flex-wrap: wrap;
  }
}
@media (max-width: 600px) {
  .submitRecipe #tab_create .create__sidebar {
    flex-direction: column;
  }
}

/* Sidebar Cards inside Create Recipe */
.sidebar-card {
  background-color: #FAF8F5;
  border: 1px solid rgba(61, 50, 41, 0.06);
  border-radius: 20px;
  padding: 24px;
  text-align: center;
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: center;
  box-sizing: border-box;
  box-shadow: 0 2px 12px rgba(61, 50, 41, 0.01);
  width: 100%;
}
@media (max-width: 991px) {
  .sidebar-card {
    flex: 1 1 200px;
  }
}
.sidebar-card__title {
  font-family: var(--font-header);
  font-size: 15px;
  font-weight: 800;
  color: #3D3229;
  margin-bottom: 14px;
  margin-top: 0;
  line-height: 1.2;
}
.sidebar-card__desc {
  font-family: var(--font-body);
  font-size: 12px;
  color: #8C7E74;
  line-height: 1.5;
  margin: 14px 0 0;
}
.sidebar-card {
  /* Progress Circle */
}
.sidebar-card .progress-circle-wrapper {
  margin: 10px 0;
}
.sidebar-card .progress-circle {
  position: relative;
  width: 80px;
  height: 80px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: radial-gradient(closest-side, #FAF8F5 79%, transparent 80% 100%), conic-gradient(#5A7A52 var(--percent, 0%), rgba(61, 50, 41, 0.08) 0);
  font-family: var(--font-body);
  font-size: 16px;
  font-weight: 700;
  color: #3D3229;
  box-shadow: inset 0 0 0 1px rgba(61, 50, 41, 0.02);
}
.sidebar-card .progress-circle span {
  line-height: 1;
}
.sidebar-card {
  /* Help Card Button and Illustration */
}
.sidebar-card .help-card__btn {
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 700;
  color: #5A7A52;
  border: 1px solid rgba(90, 122, 82, 0.25);
  background-color: #ffffff;
  border-radius: 12px;
  padding: 10px 24px;
  text-decoration: none;
  display: inline-block;
  transition: all 0.2s ease;
  margin-top: 14px;
  z-index: 2;
  position: relative;
  cursor: pointer;
}
.sidebar-card .help-card__btn:hover {
  background-color: #5A7A52;
  color: #ffffff;
  border-color: #5A7A52;
}
.sidebar-card .help-card__bg-illustration {
  width: 100%;
  height: auto;
  margin-top: 12px;
  opacity: 0.7;
  z-index: 1;
}
.sidebar-card .help-card__bg-illustration svg {
  width: 100%;
  height: auto;
  max-height: 80px;
}

.post-form {
  position: relative;
}

.create-form {
  position: relative;
}
.create-form__wrap {
  display: grid;
}
.create-form__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}
.create-form__header {
  margin-bottom: 24px;
}
.create-form__title {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--color-text-muted);
  font-weight: 500;
  display: block;
  margin-bottom: 6px;
}
.create-form__item {
  position: relative;
  display: grid;
  gap: 24px;
  background-color: rgb(250, 250, 250);
  padding: 16px;
  border-radius: 8px;
}
.create-form__item:not(:first-child) {
  border-top: 3px solid var(--color-divider);
  padding-top: 48px;
  margin-top: 48px;
}
.create-form__actions {
  margin-top: 40px;
  display: flex;
  gap: 8px;
}
.create-form .tax-group-wrap {
  position: relative;
}
.create-form .tax-group-wrap .title {
  margin-bottom: 24px;
  display: block;
}
.create-form .taxonomies-section {
  display: grid;
  gap: 40px;
}
.create-form .tax-checkbox-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 5px;
}
@media (max-width: 767px) {
  .create-form .tax-checkbox-list {
    grid-template-columns: repeat(2, 1fr);
  }
}
.create-form .tax-checkbox-list label {
  border: 1px solid var(--color-divider);
  height: 44px;
  padding: 0 0 0 8px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  overflow: hidden;
  text-transform: none;
  line-height: 1.1;
  color: var(--color-text-muted);
  border-radius: 2px;
}
.create-form .ingredients-list {
  display: grid;
  gap: 24px;
}
.create-form .ingr-grid {
  display: grid;
  align-items: flex-end;
}
.create-form .ingr-row {
  display: grid;
  gap: 12px;
}
.create-form .ingr-col__row {
  display: flex;
  gap: 10px;
}
.create-form .ingr-bottom {
  display: grid;
  align-items: flex-end;
  width: 100%;
}
.create-form .ingr-suggest {
  border: 1px solid var(--color-surface);
}
.create-form .ingr-suggest li {
  border-bottom: 1px solid var(--color-divider);
  padding: 12px 16px;
  cursor: pointer;
}
.create-form .ingr-unit {
  position: relative;
  border-radius: 4px;
  background: rgb(242, 240, 236);
  min-width: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.create-form .ingr-select-field {
  padding: 8px 12px;
  border: 1px solid var(--color-divider);
  border-radius: 4px;
  background-color: var(--color-bg);
  color: var(--color-text-main);
  font-family: var(--font-family-main);
  font-size: var(--fs-sm);
  min-width: 140px;
  cursor: pointer;
}
.create-form .ingr-select-field:focus {
  outline: none;
  border-color: var(--color-accent);
}
.create-form .ingr-select-field:hover {
  border-color: var(--color-accent);
}
.create-form .btn-add {
  margin-top: 32px;
  width: 100%;
  background: none;
  border: 1px dashed var(--color-divider);
  padding: 16px;
  font-family: var(--font-family-main);
  font-size: 14px;
  color: var(--color-accent);
  cursor: pointer;
  border-radius: 8px;
  transition: var(--transition);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-weight: 500;
  text-transform: uppercase;
}
.create-form .btn-add:hover {
  border-color: var(--color-accent);
  color: var(--color-text-main);
  background: var(--color-rgba-0-0-0-0-05);
}
.create-form .btn--delete {
  min-width: 44px;
  width: 44px;
  height: 44px;
  border: 1px dashed var(--color-danger);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  cursor: pointer;
}
.create-form .btn--delete svg path {
  fill: var(--color-danger);
}
.create-form .btn--delete:hover {
  background: var(--color-danger-alt);
}
.create-form .preparation-list {
  display: grid;
  gap: 32px;
}
.create-form .step-images-list {
  display: flex;
  gap: 10px;
}
.create-form .step-images-list .step-img-item {
  position: relative;
  width: 60px;
  height: 60px;
  border-radius: 2px;
  overflow: hidden;
}
.create-form .step-images-list .step-img-item img {
  position: relative;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.create-form .step-images-upload {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  border-radius: 8px;
  background: var(--color-surface);
}
.create-form .btn-step-img-add {
  width: 60px;
  height: 60px;
  border-radius: 6px;
  border: 1px dashed var(--color-divider);
  background: var(--color-bg);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  cursor: pointer;
  padding: 0;
  color: var(--color-text-main);
  font-family: var(--font-family-main);
  font-size: 12px;
  line-height: 1.1;
}
.create-form .btn-step-img-add svg {
  width: 22px;
  height: 22px;
  fill: currentColor;
}
.create-form .btn-step-img-add span {
  display: none;
}
.create-form .btn-step-img-add:hover {
  border-color: var(--color-accent);
  color: var(--color-accent);
  background: var(--color-rgba-0-0-0-0-05);
}
.create-form .remove-step-img {
  position: absolute;
  top: 2px;
  right: 2px;
  width: 20px;
  height: 20px;
  border-radius: 999px;
  border: 1px solid var(--color-bg);
  background: var(--color-contrast);
  color: var(--color-bg);
  font-size: 14px;
  line-height: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  cursor: pointer;
  box-shadow: 0 2px 6px var(--color-text-light);
}
.create-form .remove-step-img:hover {
  background: var(--color-danger-alt);
}
.create-form .prep-remove,
.create-form .ingr-remove {
  border-radius: 4px;
  min-width: 32px;
  width: 100%;
  width: fit-content;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.create-form .prep-remove svg,
.create-form .ingr-remove svg {
  width: 18px;
}
.create-form .prep-remove svg path,
.create-form .ingr-remove svg path {
  fill: var(--color-danger);
}
.create-form .prep-remove:hover,
.create-form .ingr-remove:hover {
  background: var(--color-danger-alt);
}
.create-form .prep__head {
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 6px;
}
.create-form .prep__head .create-form__title {
  margin-bottom: 0;
}
.create-form #ingredients-list .ingr__head {
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 6px;
}
.create-form #ingredients-list .ingr__head .create-form__title {
  margin-bottom: 0;
}
.create-form .form-msg {
  position: relative;
  display: block;
  text-align: center;
  margin-top: 24px;
  font-size: 18px;
}
.create-form .form-info {
  margin-top: 36px;
  padding: 12px 14px;
  border-radius: 8px;
  background: var(--color-surface);
  color: var(--color-text-muted);
  font-size: 13px;
  line-height: 1.4;
}

.form-loader {
  display: none;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 12px;
  z-index: 99;
  cursor: progress;
  margin-top: 24px;
}

.create-form.is-loading .form-loader {
  display: flex;
}

.create-form.is-loading .form-msg {
  display: none;
}

.form-loader__text {
  font-size: 16px;
  color: var(--color-text-main);
  font-weight: 500;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  border-radius: 999px;
  background: var(--color-rgba-255-255-255-0-8);
  box-shadow: 0 8px 24px var(--color-rgba-0-0-0-0-05);
}

.form-loader__icon {
  width: 18px;
  height: 18px;
  fill: var(--color-accent);
}

.form-loader__dots {
  display: inline-block;
  width: 18px;
  text-align: left;
}

.form-loader__dots::after {
  content: "...";
  display: inline-block;
  width: 0;
  overflow: hidden;
  animation: dots 1.1s steps(4, end) infinite;
  vertical-align: bottom;
}

@keyframes dots {
  to {
    width: 18px;
  }
}
.featured-content {
  text-align: center;
  z-index: 1;
  padding: 0 16px;
}
.featured-content svg {
  width: 32px;
  fill: currentColor;
  margin-bottom: 12px;
}
.featured-content__title {
  display: block;
  font-family: var(--font-family-secondary);
  font-size: 22px;
  margin-bottom: 4px;
}
@media (max-width: 767px) {
  .featured-content__title {
    font-size: 18px;
  }
}
.featured-content__subtitle {
  font-size: 12px;
  color: var(--color-text-muted);
}
.featured-upload {
  position: relative;
  width: 100%;
  aspect-ratio: 4/2.4;
  background-color: var(--color-surface);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  cursor: pointer;
}
.featured-actions {
  bottom: 4px;
  right: 4px;
  position: absolute;
  z-index: 3;
}
.featured-preview {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
}
.featured-preview img {
  position: relative;
  object-fit: cover;
  object-position: center;
  width: 100%;
  height: 100%;
}

#featured-remove {
  padding: 6px;
  border-radius: 8px;
  background: var(--color-surface);
  display: flex;
  cursor: pointer;
  transition: 0.3s ease;
}
#featured-remove svg path {
  fill: var(--color-danger);
  transition: 0.3s ease;
}
#featured-remove:hover {
  background: var(--color-danger);
}
#featured-remove:hover svg path {
  fill: var(--color-bg);
}

#featured-file {
  position: absolute;
  opacity: 0;
  visibility: hidden;
  z-index: -3;
}

.editor-wrapper {
  border: 1px solid var(--color-divider);
  border-radius: 4px;
  overflow: hidden;
}

.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]::before,
.ql-snow .ql-header[value="3"]::before {
  content: "H3";
  font-weight: bold;
  font-size: 14px;
  vertical-align: middle;
}

.ql-snow .ql-header[value="3"].ql-active {
  color: var(--color-brand-facebook);
}

.ql-editor {
  font-size: 16px;
}

.ql-header {
  color: var(--color-text-main);
}

.ql-toolbar.ql-snow {
  border: none !important;
  border-bottom: 1px solid var(--color-divider) !important;
  background: var(--color-bg-warm);
}

.ql-container.ql-snow {
  border: none !important;
}
.ql-container.ql-snow h3 {
  font-size: 20px;
  font-family: var(--font-family-secondary);
}

/* ==========================================================================
   Submit Recipe Custom Tabs & Author Dashboard
   ========================================================================== */
.submit-recipe-tabs-wrapper {
  margin-bottom: 40px;
  border-bottom: 2px solid var(--color-divider);
}

.submit-recipe-tabs {
  display: flex;
  gap: 32px;
}

.submit-tab-btn {
  background: none;
  border: none;
  padding: 12px 4px;
  font-family: var(--font-header);
  font-size: var(--fs-md);
  font-weight: 700;
  color: var(--color-text-muted);
  cursor: pointer;
  position: relative;
  transition: all 0.3s ease;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.submit-tab-btn::after {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 100%;
  height: 3px;
  background-color: var(--color-accent);
  transform: scaleX(0);
  transition: transform 0.3s ease;
}
.submit-tab-btn.is-active {
  color: var(--color-text-main);
}
.submit-tab-btn.is-active::after {
  transform: scaleX(1);
}
.submit-tab-btn:hover:not(.is-active) {
  color: var(--color-text-main);
}

.my-recipe-card-wrapper {
  transition: transform 0.3s ease;
}
.my-recipe-card-wrapper:hover {
  transform: translateY(-4px);
}
.my-recipe-card-wrapper .my-recipe-action-btn--edit {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 10;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--color-surface);
  color: var(--color-text-main);
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
  transition: all 0.2s ease;
  border: 1px solid var(--color-divider);
}
.my-recipe-card-wrapper .my-recipe-action-btn--edit:hover {
  background: var(--color-accent);
  color: #ffffff;
  transform: scale(1.1);
  border-color: var(--color-accent);
}
.my-recipe-card-wrapper .my-recipe-status-badge {
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 10;
  padding: 6px 12px;
  border-radius: 99px;
  font-family: var(--font-body);
  font-size: var(--fs-xs);
  font-weight: 600;
  letter-spacing: 0.02em;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05);
}
.my-recipe-card-wrapper .my-recipe-status-badge--pending {
  background-color: #fff3cd;
  color: #856404;
  border: 1px solid #ffeeba;
}
.my-recipe-card-wrapper .my-recipe-status-badge--draft {
  background-color: #e2e3e5;
  color: #383d41;
  border: 1px solid #d6d8db;
}
.my-recipe-card-wrapper .my-recipe-status-badge--private {
  background-color: #d1ecf1;
  color: #0c5460;
  border: 1px solid #bee5eb;
}

.my-recipes-empty-state {
  padding: 60px 20px;
  text-align: center;
  background: var(--color-surface);
  border: 2px dashed var(--color-divider);
  border-radius: 16px;
  margin: 20px 0;
}
.my-recipes-empty-state h3 {
  font-family: var(--font-header);
  font-size: var(--fs-lg);
  color: var(--color-text-main);
  margin-bottom: 12px;
}
.my-recipes-empty-state p {
  font-family: var(--font-body);
  font-size: var(--fs-base);
  color: var(--color-text-muted);
  max-width: 440px;
  margin: 0 auto;
  line-height: 1.5;
}

/* Visibility Selector Cards */
.visibility-section {
  border-top: 3px solid var(--color-divider);
  padding-top: 48px;
  margin-top: 48px;
}
.visibility-section .title {
  margin-bottom: 16px;
  display: block;
}

.visibility-choices {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
  margin-top: 12px;
}
@media (max-width: 575px) {
  .visibility-choices {
    grid-template-columns: 1fr;
  }
}

.visibility-choice {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 16px;
  border: 1px solid var(--color-divider);
  border-radius: 12px;
  cursor: pointer;
  background: var(--color-surface);
  transition: all 0.2s ease;
}
.visibility-choice input[type=radio] {
  display: none;
}
.visibility-choice__box {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 2px solid var(--color-text-muted);
  position: relative;
  flex-shrink: 0;
  margin-top: 2px;
  transition: all 0.2s ease;
  background-color: var(--color-surface);
}
.visibility-choice__box::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0);
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #ffffff;
  transition: transform 0.2s ease;
}
.visibility-choice__text {
  display: flex;
  flex-direction: column;
  gap: 4px;
  text-align: left;
}
.visibility-choice__text strong {
  font-family: var(--font-header);
  font-size: var(--fs-base);
  color: var(--color-text-main);
  font-weight: 700;
  line-height: 1.2;
}
.visibility-choice__text small {
  font-family: var(--font-body);
  font-size: var(--fs-xs);
  color: var(--color-text-muted);
  line-height: 1.3;
}
.visibility-choice:hover {
  border-color: var(--color-text-muted);
}
.visibility-choice:has(input[type=radio]:checked) {
  border-color: var(--color-accent);
  background: var(--color-bg-warm);
}
.visibility-choice:has(input[type=radio]:checked) .visibility-choice__box {
  border-color: var(--color-accent);
  background-color: var(--color-accent);
}
.visibility-choice:has(input[type=radio]:checked) .visibility-choice__box::after {
  transform: translate(-50%, -50%) scale(1);
}

.search-filter-results {
  position: relative;
  width: 100%;
}

.searchandfilter {
  margin-bottom: 30px;
}
.searchandfilter ul li {
  padding: 0;
  width: 100%;
  margin-right: 10px;
}
.searchandfilter ul li label {
  width: 100%;
}
.searchandfilter ul li:last-child {
  margin-right: 0;
}
.searchandfilter select.sf-input-select,
.searchandfilter .sf-input-text {
  height: 48px;
  border: 1px solid var(--color-text-light);
  cursor: pointer;
  background-color: var(--color-bg);
  border-radius: 0;
  font-size: 16px;
  padding-left: 10px;
  padding-right: 10px;
  box-shadow: none;
  box-shadow: none;
  outline: none;
  font-weight: 500;
  border-radius: 4px;
  width: 100%;
}
.searchandfilter select.sf-input-select:focus, .searchandfilter select.sf-input-select:active {
  box-shadow: none;
  outline: none;
}
.searchandfilter .sf-input-text:focus, .searchandfilter .sf-input-text:active {
  box-shadow: none;
  outline: none;
}
.searchandfilter .searchandfilter h4 {
  font-size: 18px;
}

.shareButton {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 40px;
  padding: 0;
  height: 32px;
  width: 32px;
  transition: 0.3s ease;
  cursor: pointer;
}
@media (min-width: 1025px) {
  .shareButton:hover {
    position: relative;
  }
}
.shareButton span {
  font-size: 14px;
  margin-left: 3px;
  line-height: 1;
}
.shareButton svg {
  width: 16px;
}

.shareModal-overlay {
  position: fixed;
  left: 0;
  top: 0;
  background-color: var(--color-text-light);
  z-index: 999;
  width: 100%;
  height: 100%;
  display: none;
  cursor: pointer;
}

.shareModal {
  position: fixed;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 1001;
  width: 98%;
  max-width: 524px;
  padding: 40px;
  background-color: var(--color-bg);
  border-radius: 12px;
  max-height: 500px;
  display: none;
}
@media (max-width: 767px) {
  .shareModal {
    padding: 30px 16px;
  }
}
.shareModal-title {
  display: block;
  margin-bottom: 10px;
}
.shareModal__copy {
  margin-top: 30px;
  padding: 8px;
  display: flex;
  align-items: center;
  width: 100%;
  border-radius: 6px;
  background: var(--color-bg-light);
  border: 1px solid var(--color-border-light);
}
.shareModal__copy input {
  border: none;
  background: transparent;
  padding-right: 10px;
}
.shareModal__copy .url-link {
  width: 100%;
  font-size: 14px;
}
.shareModal-close {
  position: absolute;
  right: 5px;
  top: 5px;
  cursor: pointer;
  padding: 5px;
}
.shareModal-close svg {
  width: 24px;
  height: 24px;
}
.shareModal__list {
  display: flex;
  align-items: center;
}
.shareModal__item {
  cursor: pointer;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-right: 15px;
}
.shareModal__item_icon {
  position: relative;
  width: 60px;
  height: 60px;
  border-radius: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 5px;
}
.shareModal__item_icon svg {
  width: 36px;
  height: 36px;
  fill: var(--color-bg);
}
.shareModal__item_icon svg path {
  fill: var(--color-bg);
}
.shareModal__item span {
  font-size: 13px;
}
.shareModal #telegram-share-button .shareModal__item_icon {
  background-color: var(--color-brand-facebook);
}

.bookmark-page__tabs,
.aTabs__wrap {
  display: flex;
  gap: 32px;
  border-bottom: 1px solid var(--color-divider);
  margin-bottom: 32px;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
.bookmark-page__tabs::-webkit-scrollbar,
.aTabs__wrap::-webkit-scrollbar {
  display: none;
}
@media (max-width: 767px) {
  .bookmark-page__tabs,
  .aTabs__wrap {
    gap: 20px;
    margin-bottom: 24px;
    width: calc(100% + 24px);
    padding: 0 24px 0 0;
  }
}

.bookmark-page__tab-btn,
.aTabs__item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 4px 16px;
  border: none;
  background: transparent;
  cursor: pointer;
  font-size: 16px;
  color: var(--color-text-muted);
  position: relative;
  white-space: nowrap;
  transition: all 0.2s ease;
  outline: none;
  opacity: 1;
}
.bookmark-page__tab-btn svg,
.aTabs__item svg {
  width: 18px;
  height: 18px;
  color: var(--color-text-muted-alt);
  transition: color 0.2s ease;
}
.bookmark-page__tab-btn:hover,
.aTabs__item:hover {
  color: var(--color-text-main);
  opacity: 1;
}
.bookmark-page__tab-btn:hover svg,
.aTabs__item:hover svg {
  color: var(--color-text-main);
}
.bookmark-page__tab-btn.is-active,
.aTabs__item.is-active {
  color: var(--color-text-main);
  opacity: 1;
}
.bookmark-page__tab-btn.is-active svg,
.aTabs__item.is-active svg {
  color: var(--color-text-main);
}
.bookmark-page__tab-btn.is-active::after,
.aTabs__item.is-active::after {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  right: 0;
  height: 2px;
  background-color: var(--color-text-main);
}

.bookmark-page__tab-text,
.aTabs__item-text {
  display: inline-flex;
  flex-direction: column;
  font-weight: 500;
}
.bookmark-page__tab-text::after,
.aTabs__item-text::after {
  content: attr(data-text);
  height: 0;
  visibility: hidden;
  overflow: hidden;
  font-weight: 700;
  user-select: none;
  pointer-events: none;
}
.is-active .bookmark-page__tab-text,
.is-active .aTabs__item-text {
  font-weight: 700;
}

.bookmark-page__tab-count,
.aTabs__item-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 20px;
  height: 20px;
  padding: 0 6px;
  border-radius: 10px;
  background-color: var(--color-surface);
  font-size: 11px;
  font-weight: 700;
  color: var(--color-text-muted-alt);
  margin-left: 2px;
  transition: all 0.2s ease;
}
.is-active .bookmark-page__tab-count,
.is-active .aTabs__item-count {
  background-color: var(--color-carbs-bg);
  color: var(--color-accent);
}

.food-item-page {
  margin-bottom: 4rem;
}
.food-item-page .food-item-hero {
  display: grid;
  grid-template-columns: 1fr;
  gap: 32px;
  margin-bottom: 48px;
  background: var(--color-bg);
  border: 1px solid var(--color-divider, rgba(17, 17, 17, 0.08));
  border-radius: 16px;
  padding: 32px;
  box-shadow: 0 4px 20px var(--color-rgba-0-0-0-0-05);
}
@media (min-width: 768px) {
  .food-item-page .food-item-hero {
    grid-template-columns: 4fr 5fr;
    align-items: start;
  }
}
.food-item-page .food-item-hero__image-wrapper {
  position: relative;
  border-radius: 12px;
  overflow: hidden;
  background: var(--color-bg-warm);
  border: 1px solid var(--color-divider, rgba(17, 17, 17, 0.05));
  aspect-ratio: 1/1;
  display: flex;
  align-items: center;
  justify-content: center;
}
.food-item-page .food-item-hero__image-wrapper img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  transition: transform 0.3s ease;
}
.food-item-page .food-item-hero__image-wrapper:hover img {
  transform: scale(1.03);
}
.food-item-page .food-item-hero__info {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
}
.food-item-page .food-item-hero__meta {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}
.food-item-page .food-item-hero .badge-supermarket {
  display: inline-flex;
  align-items: center;
  padding: 6px 14px;
  border-radius: 99px;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--color-bg);
  line-height: 1;
  box-shadow: 0 2px 8px var(--color-rgba-0-0-0-0-05);
}
.food-item-page .food-item-hero .badge-supermarket--silpo {
  background-color: var(--color-success-green);
}
.food-item-page .food-item-hero .badge-supermarket--atb {
  background-color: var(--color-protein);
}
.food-item-page .food-item-hero .badge-supermarket--novus {
  background-color: var(--color-success-green);
}
.food-item-page .food-item-hero .badge-supermarket--auchan {
  background-color: var(--color-danger-alt);
}
.food-item-page .food-item-hero .badge-supermarket--varus {
  background-color: var(--color-accent-orange);
}
.food-item-page .food-item-hero .badge-category {
  font-size: 12px;
  font-weight: 600;
  color: var(--color-text-muted, #7c7a76);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.food-item-page .food-item-hero__title {
  font-family: var(--font-title, "Unbounded", sans-serif);
  font-size: 24px;
  line-height: 1.3;
  font-weight: 700;
  color: var(--color-text-main, #111111);
  margin: 0;
}
@media (min-width: 992px) {
  .food-item-page .food-item-hero__title {
    font-size: 32px;
  }
}
.food-item-page .food-item-hero__rating-wrapper {
  display: flex;
  align-items: center;
  gap: 8px;
}
.food-item-page .food-item-hero .rating-stars {
  display: flex;
  align-items: center;
  gap: 2px;
  font-size: 20px;
  line-height: 1;
}
.food-item-page .food-item-hero .rating-stars .star {
  color: var(--color-divider);
  display: inline-block;
}
.food-item-page .food-item-hero .rating-stars .star-full {
  color: var(--color-accent);
}
.food-item-page .food-item-hero .rating-stars .star-half {
  background: linear-gradient(90deg, var(--color-accent) 50%, var(--color-divider) 50%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.food-item-page .food-item-hero .rating-value {
  font-size: 14px;
  font-weight: 700;
  color: var(--color-text-main, #111111);
}
.food-item-page .food-item-hero__price-wrapper {
  margin: 12px 0 4px;
}
.food-item-page .food-item-hero .price-value {
  font-family: var(--font-title, "Unbounded", sans-serif);
  font-size: 28px;
  font-weight: 800;
  color: var(--color-text-main, #111111);
}
@media (min-width: 992px) {
  .food-item-page .food-item-hero .price-value {
    font-size: 36px;
  }
}
.food-item-page .food-item-hero__cta {
  width: 100%;
}
@media (min-width: 576px) {
  .food-item-page .food-item-hero__cta {
    width: auto;
  }
}
.food-item-page .food-item-hero .btn-buy {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  background-color: var(--color-accent, #c4622d);
  color: var(--color-bg);
  font-family: var(--font-title, "Unbounded", sans-serif);
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding: 16px 36px;
  border-radius: 99px;
  border: none;
  cursor: pointer;
  box-shadow: 0 4px 14px var(--color-accent);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  text-decoration: none;
}
.food-item-page .food-item-hero .btn-buy svg {
  transition: transform 0.3s ease;
}
.food-item-page .food-item-hero .btn-buy:hover {
  background-color: var(--color-calories);
  box-shadow: 0 6px 20px var(--color-accent);
  transform: translateY(-2px);
}
.food-item-page .food-item-hero .btn-buy:hover svg {
  transform: translateX(4px);
}
.food-item-page .food-item-hero .btn-buy:active {
  transform: translateY(0);
}
.food-item-page .pros-cons-section {
  margin: 48px 0;
}
.food-item-page .pros-cons-section__title {
  font-family: var(--font-title, "Unbounded", sans-serif);
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 24px;
  color: var(--color-text-main, #111111);
}
.food-item-page .pros-cons-section__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
}
@media (min-width: 768px) {
  .food-item-page .pros-cons-section__grid {
    grid-template-columns: 1fr 1fr;
  }
}
.food-item-page .pros-cons-section .pros-box, .food-item-page .pros-cons-section .cons-box {
  border-radius: 16px;
  padding: 24px 28px;
  box-shadow: 0 4px 15px var(--color-rgba-0-0-0-0-05);
  border: 1px solid;
}
.food-item-page .pros-cons-section .pros-box__title, .food-item-page .pros-cons-section .cons-box__title {
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 18px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.food-item-page .pros-cons-section .pros-box__list, .food-item-page .pros-cons-section .cons-box__list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.food-item-page .pros-cons-section .pros-box__item, .food-item-page .pros-cons-section .cons-box__item {
  font-size: 14px;
  line-height: 1.5;
  position: relative;
  padding-left: 24px;
}
.food-item-page .pros-cons-section .pros-box__item::before, .food-item-page .pros-cons-section .cons-box__item::before {
  position: absolute;
  left: 0;
  top: 2px;
  font-weight: 700;
}
.food-item-page .pros-cons-section .pros-box {
  background-color: var(--color-bg-gray);
  border-color: var(--color-rgba-0-0-0-0-05);
}
.food-item-page .pros-cons-section .pros-box__title {
  color: var(--color-success-green);
}
.food-item-page .pros-cons-section .pros-box__item {
  color: var(--color-carbs);
}
.food-item-page .pros-cons-section .pros-box__item::before {
  content: "✓";
  color: var(--color-success-green);
}
.food-item-page .pros-cons-section .cons-box {
  background-color: var(--color-bg-warm);
  border-color: var(--color-rgba-0-0-0-0-05);
}
.food-item-page .pros-cons-section .cons-box__title {
  color: var(--color-danger-alt);
}
.food-item-page .pros-cons-section .cons-box__item {
  color: var(--color-danger-alt);
}
.food-item-page .pros-cons-section .cons-box__item::before {
  content: "✕";
  color: var(--color-danger-alt);
}
.food-item-page .comparison-section {
  margin: 56px 0 20px;
  padding-top: 40px;
  border-top: 1px solid var(--color-divider, rgba(17, 17, 17, 0.08));
}
.food-item-page .comparison-section__title {
  font-family: var(--font-title, "Unbounded", sans-serif);
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 24px;
  color: var(--color-text-main, #111111);
}
.food-item-page .comparison-section__table-wrapper {
  width: 100%;
  overflow-x: auto;
  border: 1px solid var(--color-divider, rgba(17, 17, 17, 0.08));
  border-radius: 12px;
  box-shadow: 0 4px 15px var(--color-rgba-0-0-0-0-05);
  background-color: var(--color-bg);
}
.food-item-page .comparison-section__table-wrapper::-webkit-scrollbar {
  height: 6px;
}
.food-item-page .comparison-section__table-wrapper::-webkit-scrollbar-thumb {
  background-color: var(--color-rgba-0-0-0-0-05);
  border-radius: 4px;
}
.food-item-page .comparison-section .comparison-table {
  width: 100%;
  border-collapse: collapse;
  text-align: left;
  font-size: 14px;
  min-width: 600px;
}
.food-item-page .comparison-section .comparison-table th, .food-item-page .comparison-section .comparison-table td {
  padding: 16px 20px;
  vertical-align: middle;
  border-bottom: 1px solid var(--color-divider, rgba(17, 17, 17, 0.05));
}
.food-item-page .comparison-section .comparison-table th {
  font-weight: 700;
  color: var(--color-text-muted, #7c7a76);
  text-transform: uppercase;
  font-size: 11px;
  letter-spacing: 0.08em;
  background-color: var(--color-bg-warm);
}
.food-item-page .comparison-section .comparison-table tr {
  transition: background-color 0.2s ease;
}
.food-item-page .comparison-section .comparison-table tr:last-child td {
  border-bottom: none;
}
.food-item-page .comparison-section .comparison-table tr:hover {
  background-color: var(--color-bg-warm);
}
.food-item-page .comparison-section .comparison-table tr.current-product-row {
  background-color: var(--color-bg-warm);
}
.food-item-page .comparison-section .comparison-table tr.current-product-row:hover {
  background-color: var(--color-bg-cream);
}
.food-item-page .comparison-section .comparison-table .prod-cell {
  display: flex;
  align-items: center;
  gap: 12px;
}
.food-item-page .comparison-section .comparison-table .prod-cell__img {
  width: 44px;
  height: 44px;
  border-radius: 6px;
  overflow: hidden;
  background-color: var(--color-bg-light);
  border: 1px solid var(--color-rgba-0-0-0-0-05);
  display: flex;
  align-items: center;
  justify-content: center;
}
.food-item-page .comparison-section .comparison-table .prod-cell__img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.food-item-page .comparison-section .comparison-table .prod-cell__title {
  font-weight: 600;
  color: var(--color-text-main, #111111);
  text-decoration: none;
}
.food-item-page .comparison-section .comparison-table .prod-cell__title:hover {
  color: var(--color-accent, #c4622d);
}
.food-item-page .comparison-section .comparison-table .prod-cell .current-badge {
  display: inline-block;
  font-size: 9px;
  font-weight: 700;
  background-color: var(--color-accent, #c4622d);
  color: var(--color-bg);
  padding: 2px 6px;
  border-radius: 4px;
  text-transform: uppercase;
  margin-left: 6px;
  letter-spacing: 0.05em;
}
.food-item-page .comparison-section .comparison-table .price-cell {
  font-family: var(--font-title, "Unbounded", sans-serif);
  font-weight: 700;
  color: var(--color-text-main, #111111);
}
.food-item-page .comparison-section .comparison-table .stars-cell {
  display: flex;
  align-items: center;
  gap: 2px;
  font-size: 14px;
  color: var(--color-divider);
}
.food-item-page .comparison-section .comparison-table .stars-cell .star-full {
  color: var(--color-accent);
}
.food-item-page .comparison-section .comparison-table .stars-cell .star-half {
  background: linear-gradient(90deg, var(--color-accent) 50%, var(--color-divider) 50%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block;
}
.food-item-page .comparison-section .comparison-table .action-cell {
  display: flex;
  align-items: center;
  gap: 10px;
}
.food-item-page .comparison-section .comparison-table .action-cell .btn-table-buy {
  background-color: var(--color-accent, #c4622d);
  color: var(--color-bg);
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  padding: 8px 16px;
  border-radius: 99px;
  text-decoration: none;
  display: inline-block;
  transition: all 0.2s ease;
  border: none;
  cursor: pointer;
}
.food-item-page .comparison-section .comparison-table .action-cell .btn-table-buy:hover {
  background-color: var(--color-calories);
  box-shadow: 0 3px 8px var(--color-rgba-0-0-0-0-05);
}
.food-item-page .comparison-section .comparison-table .action-cell .btn-table-view {
  color: var(--color-text-secondary, #4a4a49);
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  padding: 8px 16px;
  border-radius: 99px;
  text-decoration: none;
  display: inline-block;
  border: 1px solid var(--color-divider, rgba(17, 17, 17, 0.15));
  transition: all 0.2s ease;
}
.food-item-page .comparison-section .comparison-table .action-cell .btn-table-view:hover {
  background-color: var(--color-bg-light);
  color: var(--color-text-main, #111111);
}

.placeholder-thumb {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  padding: 16px;
  box-sizing: border-box;
  background-color: var(--color-bg-warm);
}
.placeholder-thumb__box {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.placeholder-thumb svg {
  width: 32px;
  height: 32px;
  margin-bottom: 8px;
}
.placeholder-thumb__title {
  font-size: 13px;
  font-weight: 700;
  color: var(--color-text-main, #111111);
  margin-bottom: 2px;
}
.placeholder-thumb__sub {
  font-size: 11px;
  color: var(--color-text-muted, #737373);
}
.placeholder-thumb__sub .browse-link {
  text-decoration: underline;
  color: var(--color-text-muted, #737373);
}

/* ================== Gutenberg Blocks =================== */
.block-timeline-list {
  margin: 48px 0;
}
.block-timeline-list .tl-list {
  list-style: none;
  padding: 0;
  margin: 0;
  position: relative;
}
.block-timeline-list .tl-list::before {
  content: "";
  position: absolute;
  left: 5px;
  top: 6px;
  bottom: 24px;
  width: 1px;
  background-color: var(--color-divider, #eaeaea);
  z-index: 1;
}
.block-timeline-list .tl-item {
  position: relative;
  padding-left: 48px;
  margin-bottom: 40px;
  padding-top: 0;
  padding-bottom: 0;
}
.block-timeline-list .tl-item:last-child {
  margin-bottom: 0;
}
.block-timeline-list .tl-item::before {
  display: none !important;
}
.block-timeline-list .tl-circle {
  position: absolute;
  left: 0;
  top: 4px;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  border: 2px solid var(--color-text-main, #111);
  background-color: var(--color-bg, #fff);
  z-index: 2;
  box-sizing: border-box;
}
.block-timeline-list .tl-content {
  margin-top: -3px;
}
.block-timeline-list .tl-header {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 12px;
}
@media (max-width: 767px) {
  .block-timeline-list .tl-header {
    flex-direction: column;
    align-items: flex-start;
  }
}
.block-timeline-list .tl-title {
  margin: 0;
  font-size: 18px;
  font-weight: 600;
  font-family: var(--font-header);
  line-height: 1.2;
}
.block-timeline-list .tl-badge {
  display: inline-block;
  font-size: 9px;
  font-weight: 500;
  text-transform: uppercase;
  padding: 4px 8px;
  border-radius: 4px;
  letter-spacing: 0.05em;
  line-height: 1;
}
@media (max-width: 767px) {
  .block-timeline-list .tl-badge {
    order: -1;
  }
}
.block-timeline-list .tl-badge.badge-black {
  background-color: var(--color-text-main, #111);
  color: var(--color-bg);
}
.block-timeline-list .tl-badge.badge-orange {
  background-color: var(--color-danger, #c84131);
  color: var(--color-bg);
}
.block-timeline-list .tl-badge.badge-green {
  background-color: var(--color-text-main);
  color: var(--color-bg);
}
.block-timeline-list .tl-badge.badge-grey {
  background-color: var(--color-text-muted, #737373);
  color: var(--color-bg);
}
.block-timeline-list .tl-desc p {
  margin-bottom: 12px;
}
.block-timeline-list .tl-desc p:last-child {
  margin-bottom: 0;
}
@media (max-width: 767px) {
  .block-timeline-list {
    margin: 32px 0;
  }
  .block-timeline-list .tl-item {
    padding-left: 32px;
    margin-bottom: 28px;
  }
  .block-timeline-list .tl-title {
    font-size: 16px;
  }
  .block-timeline-list .tl-desc {
    font-size: 15px;
  }
}

.product-choice {
  margin: 48px 0;
  width: 100%;
}
.product-choice__header {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 32px;
  gap: 24px;
}
@media (max-width: 767px) {
  .product-choice__header {
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: 24px;
  }
}
.product-choice__title {
  font-family: var(--font-header);
  font-size: 28px;
  font-weight: 700;
  line-height: 1.2;
  margin: 0;
}
.product-choice__title em {
  font-style: italic;
  font-family: var(--font-family-secondary, serif);
  font-weight: 400;
}
@media (max-width: 767px) {
  .product-choice__title {
    font-size: 24px;
  }
}
.product-choice__legend {
  display: flex;
  gap: 16px;
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .product-choice__legend {
    display: none;
  }
}
.product-choice__legend-item {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--color-text-muted, #737373);
  white-space: nowrap;
}
.product-choice__legend-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  flex-shrink: 0;
}
.product-choice__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}
@media (max-width: 991px) {
  .product-choice__grid {
    grid-template-columns: 1fr;
  }
}
.product-choice__col {
  border: 1px solid var(--color-divider);
  border-top: 6px solid var(--color-rgba-0-0-0-0-05);
  padding: 24px 12px;
  border-radius: 8px;
}
@media (max-width: 991px) {
  .product-choice__col:nth-child(2) {
    order: 3;
  }
}
@media (max-width: 991px) {
  .product-choice__col {
    padding: 24px 12px;
  }
}
.product-choice__col-head {
  text-align: center;
  padding-bottom: 24px;
  margin-bottom: 0;
  border-bottom: 1px solid var(--color-rgba-0-0-0-0-05);
  margin-bottom: 12px;
}
.product-choice__col-icon {
  display: flex;
  justify-content: center;
  margin-bottom: 12px;
  opacity: 0.7;
}
.product-choice__col-icon svg {
  display: block;
}
.product-choice__col-label {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  margin-bottom: 4px;
}
.product-choice__col-product {
  font-family: var(--font-header);
  font-size: 24px;
  font-weight: 800;
  text-transform: uppercase;
  line-height: 1.15;
  color: var(--color-text-main, #111);
}
@media (max-width: 767px) {
  .product-choice__col-product {
    font-size: 20px;
  }
}
.product-choice__items {
  list-style: none;
  padding: 0;
  margin: 0;
  counter-reset: choice-counter;
}
.product-choice__item {
  counter-increment: choice-counter;
  padding: 20px 0;
  border-bottom: 1px solid var(--color-rgba-0-0-0-0-05);
  display: flex;
  align-items: flex-start;
  gap: 14px;
}
.product-choice__item:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
.product-choice__item::before {
  content: counter(choice-counter, decimal-leading-zero);
  font-family: var(--font-family-secondary, serif);
  font-size: 14px;
  font-weight: 400;
  color: var(--color-text-light);
  line-height: 1.5;
  flex-shrink: 0;
  min-width: 20px;
}
.product-choice__item-body {
  flex: 1;
  min-width: 0;
}
.product-choice__item-title {
  font-weight: 600;
  font-size: 16px;
  line-height: 1.4;
  margin-bottom: 4px;
}
.product-choice__item-desc {
  font-size: 15px;
  line-height: 1.55;
  color: var(--color-text-muted, #737373);
}

.block-special-groups {
  margin: 40px 0;
  width: 100%;
  box-sizing: border-box;
}
.block-special-groups .special-groups-container {
  background-color: var(--color-bg);
  display: flex;
  flex-direction: column;
}
.block-special-groups .special-groups-item {
  border-bottom: 1.5px solid var(--color-rgba-0-0-0-0-05);
  box-sizing: border-box;
  position: relative;
}
.block-special-groups .special-groups-item:last-child {
  border-bottom: none;
}
.block-special-groups .special-groups-item__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 24px 0;
  cursor: pointer;
  list-style: none;
  outline: none;
}
.block-special-groups .special-groups-item__header::-webkit-details-marker {
  display: none;
}
.block-special-groups .special-groups-item__header::-moz-list-bullet {
  list-style-type: none;
}
@media (max-width: 767px) {
  .block-special-groups .special-groups-item__header {
    padding: 20px 0;
  }
}
.block-special-groups .special-groups-item__header-left {
  display: flex;
  align-items: center;
  gap: 20px;
  flex: 1;
  min-width: 0;
}
.block-special-groups .special-groups-item__title-wrap {
  display: flex;
  align-items: baseline;
  gap: 12px;
  flex: 1;
  min-width: 0;
  flex-wrap: wrap;
}
@media (max-width: 575px) {
  .block-special-groups .special-groups-item__title-wrap {
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
  }
}
.block-special-groups .special-groups-item__title {
  font-family: var(--font-family-main, "Inter", sans-serif);
  font-size: 22px;
  font-weight: 800;
  color: var(--color-text-main, #111111);
  margin: 0 !important;
  line-height: 1.2;
}
@media (max-width: 767px) {
  .block-special-groups .special-groups-item__title {
    font-size: 18px;
  }
}
.block-special-groups .special-groups-item__subtitle {
  font-family: var(--font-family-main, "Inter", sans-serif);
  font-size: 14px;
  font-weight: 400;
  color: var(--color-text-muted, #7c7a76);
  line-height: 1.2;
}
@media (max-width: 767px) {
  .block-special-groups .special-groups-item__subtitle {
    font-size: 12.5px;
  }
}
.block-special-groups .special-groups-item__icon-box {
  width: 56px;
  height: 56px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.block-special-groups .special-groups-item__icon-box svg {
  width: 24px;
  height: 24px;
}
@media (max-width: 767px) {
  .block-special-groups .special-groups-item__icon-box {
    width: 48px;
    height: 48px;
  }
  .block-special-groups .special-groups-item__icon-box svg {
    width: 20px;
    height: 20px;
  }
}
.block-special-groups .special-groups-item__toggle-btn {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 1.5px solid var(--color-rgba-0-0-0-0-05);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  flex-shrink: 0;
  margin-left: 16px;
  background-color: var(--color-bg);
  color: var(--color-text-muted-alt);
}
.block-special-groups .special-groups-item__toggle-btn svg {
  width: 16px;
  height: 16px;
}
.block-special-groups .special-groups-item__toggle-btn .icon-plus {
  display: block;
}
.block-special-groups .special-groups-item__toggle-btn .icon-close {
  display: none;
}
.block-special-groups .special-groups-item__toggle-btn:hover {
  border-color: var(--color-text-main);
  color: var(--color-text-main);
}
.block-special-groups .special-groups-item__content {
  padding-bottom: 28px;
}
@media (max-width: 767px) {
  .block-special-groups .special-groups-item__content {
    padding-bottom: 20px;
  }
}
.block-special-groups .special-groups-item__desc {
  position: relative;
}
.block-special-groups .special-groups-item[open] .special-groups-item__toggle-btn {
  border-color: transparent;
  color: var(--color-bg);
}
.block-special-groups .special-groups-item[open] .special-groups-item__toggle-btn .icon-plus {
  display: none;
}
.block-special-groups .special-groups-item[open] .special-groups-item__toggle-btn .icon-close {
  display: block;
}
.block-special-groups .special-groups-item.type-kids {
  --theme-color: var(--color-accent);
}
.block-special-groups .special-groups-item.type-kids .special-groups-item__icon-box {
  background-color: var(--color-surface);
  color: var(--theme-color);
}
.block-special-groups .special-groups-item.type-kids[open] .special-groups-item__toggle-btn {
  background-color: var(--theme-color);
}
.block-special-groups .special-groups-item.type-diabetes {
  --theme-color: var(--color-text-secondary);
}
.block-special-groups .special-groups-item.type-diabetes .special-groups-item__icon-box {
  background-color: var(--color-carbs-bg);
  color: var(--theme-color);
}
.block-special-groups .special-groups-item.type-diabetes[open] .special-groups-item__toggle-btn {
  background-color: var(--theme-color);
}
.block-special-groups .special-groups-item.type-pregnant {
  --theme-color: var(--color-text-secondary);
}
.block-special-groups .special-groups-item.type-pregnant .special-groups-item__icon-box {
  background-color: var(--color-surface);
  color: var(--theme-color);
}
.block-special-groups .special-groups-item.type-pregnant[open] .special-groups-item__toggle-btn {
  background-color: var(--theme-color);
}
.block-special-groups .special-groups-item.type-sport {
  --theme-color: var(--color-nature-dark);
}
.block-special-groups .special-groups-item.type-sport .special-groups-item__icon-box {
  background-color: var(--color-carbs-bg);
  color: var(--theme-color);
}
.block-special-groups .special-groups-item.type-sport[open] .special-groups-item__toggle-btn {
  background-color: var(--theme-color);
}
.block-special-groups .special-groups-item.type-elderly {
  --theme-color: var(--color-text-muted-alt);
}
.block-special-groups .special-groups-item.type-elderly .special-groups-item__icon-box {
  background-color: var(--color-border-light);
  color: var(--theme-color);
}
.block-special-groups .special-groups-item.type-elderly[open] .special-groups-item__toggle-btn {
  background-color: var(--theme-color);
}
.block-special-groups .special-groups-item.type-weight_loss, .block-special-groups .special-groups-item.type-weight-loss {
  --theme-color: var(--color-text-muted-alt);
}
.block-special-groups .special-groups-item.type-weight_loss .special-groups-item__icon-box, .block-special-groups .special-groups-item.type-weight-loss .special-groups-item__icon-box {
  background-color: var(--color-bg-gray);
  color: var(--theme-color);
}
.block-special-groups .special-groups-item.type-weight_loss[open] .special-groups-item__toggle-btn, .block-special-groups .special-groups-item.type-weight-loss[open] .special-groups-item__toggle-btn {
  background-color: var(--theme-color);
}
.block-special-groups .special-groups-item.type-veggie, .block-special-groups .special-groups-item.type-vegetarian {
  --theme-color: var(--color-success-green);
}
.block-special-groups .special-groups-item.type-veggie .special-groups-item__icon-box, .block-special-groups .special-groups-item.type-vegetarian .special-groups-item__icon-box {
  background-color: var(--color-surface);
  color: var(--theme-color);
}
.block-special-groups .special-groups-item.type-veggie[open] .special-groups-item__toggle-btn, .block-special-groups .special-groups-item.type-vegetarian[open] .special-groups-item__toggle-btn {
  background-color: var(--theme-color);
}
.block-special-groups .special-groups-item.type-cardio, .block-special-groups .special-groups-item.type-cardiovascular {
  --theme-color: var(--color-danger-alt);
}
.block-special-groups .special-groups-item.type-cardio .special-groups-item__icon-box, .block-special-groups .special-groups-item.type-cardiovascular .special-groups-item__icon-box {
  background-color: var(--color-surface);
  color: var(--theme-color);
}
.block-special-groups .special-groups-item.type-cardio[open] .special-groups-item__toggle-btn, .block-special-groups .special-groups-item.type-cardiovascular[open] .special-groups-item__toggle-btn {
  background-color: var(--theme-color);
}

/* ================== Templates =================== */
/* ==========================================================================
   Home Latest Posts & Topics Redesign (Premium Cozy Aesthetic)
   ========================================================================== */
.home-latest-posts {
  padding: 40px 0 80px;
}

/* 1. Grid structure */
.home-latest-posts__grid {
  display: flex;
  gap: 40px;
}
@media (max-width: 991px) {
  .home-latest-posts__grid {
    flex-direction: column;
    gap: 32px;
  }
}

/* 2. Left Side: Featured Post Card (Overlay styling) */
.home-latest-posts__featured {
  width: 58%;
}
@media (max-width: 991px) {
  .home-latest-posts__featured {
    width: 100%;
  }
}
.home-latest-posts__featured .feat-card {
  position: relative;
  border-radius: 24px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: 480px;
  text-decoration: none;
  color: #ffffff;
  box-shadow: 0 8px 30px rgba(61, 50, 41, 0.06);
}
@media (max-width: 767px) {
  .home-latest-posts__featured .feat-card {
    height: 380px;
  }
}
.home-latest-posts__featured .feat-card__image-wrapper {
  position: absolute;
  inset: 0;
  z-index: 1;
  overflow: hidden;
}
.home-latest-posts__featured .feat-card__image-wrapper::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(61, 50, 41, 0.1) 0%, rgba(61, 50, 41, 0.75) 100%);
  z-index: 2;
}
.home-latest-posts__featured .feat-card__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.feat-card:hover .home-latest-posts__featured .feat-card__img {
  transform: scale(1.03);
}
.home-latest-posts__featured .feat-card__content {
  position: relative;
  z-index: 5;
  padding: 32px;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  box-sizing: border-box;
}
@media (max-width: 575px) {
  .home-latest-posts__featured .feat-card__content {
    padding: 20px;
  }
}
.home-latest-posts__featured {
  /* Badge "Стаття дня" */
}
.home-latest-posts__featured .feat-card__badge {
  align-self: flex-start;
  background-color: #ffffff;
  color: #3D3229;
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  padding: 6px 16px;
  border-radius: 99px;
  letter-spacing: 0.05em;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
}
.home-latest-posts__featured .feat-card__middle-content {
  margin-top: auto;
  margin-bottom: 24px;
}
.home-latest-posts__featured .feat-card__meta {
  font-family: var(--font-body);
  font-size: 12px;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.75);
  text-transform: uppercase;
  margin-bottom: 8px;
  letter-spacing: 0.04em;
}
.home-latest-posts__featured .feat-card__title {
  font-family: var(--font-header);
  font-size: 26px;
  font-weight: 700;
  line-height: 1.25;
  color: #ffffff;
  margin-bottom: 12px;
}
@media (max-width: 575px) {
  .home-latest-posts__featured .feat-card__title {
    font-size: 20px;
  }
}
.home-latest-posts__featured .feat-card__excerpt {
  font-family: var(--font-body);
  font-size: 13px;
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.85);
  margin: 0;
}
.home-latest-posts__featured {
  /* Footer row with author info */
}
.home-latest-posts__featured .feat-card__footer-row {
  display: flex;
  align-items: center;
  gap: 10px;
  border-top: 1px solid rgba(255, 255, 255, 0.15);
  padding-top: 16px;
}
.home-latest-posts__featured .feat-card__author-img {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  object-fit: cover;
  border: 1px solid rgba(255, 255, 255, 0.2);
}
.home-latest-posts__featured .feat-card__author-name {
  font-family: var(--font-body);
  font-size: 12px;
  font-weight: 700;
}
.home-latest-posts__featured .feat-card__dot {
  color: rgba(255, 255, 255, 0.4);
}
.home-latest-posts__featured .feat-card__read-time {
  font-family: var(--font-body);
  font-size: 12px;
  color: rgba(255, 255, 255, 0.8);
}

/* 3. Right Side: Smaller cards list */
.home-latest-posts__list {
  width: 42%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media (max-width: 991px) {
  .home-latest-posts__list {
    width: 100%;
    gap: 20px;
  }
}

.list-card-container {
  display: flex;
  flex-direction: column;
}

.list-card {
  display: flex;
  gap: 20px;
  text-decoration: none;
  color: inherit;
  align-items: center;
  padding: 8px 0;
  box-sizing: border-box;
}
.list-card .list-card__image-wrapper {
  width: 120px;
  height: 80px;
  border-radius: 12px;
  overflow: hidden;
  flex-shrink: 0;
}
@media (max-width: 480px) {
  .list-card .list-card__image-wrapper {
    width: 95px;
    height: 65px;
  }
}
.list-card .list-card__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}
.list-card .list-card__content {
  display: flex;
  flex-direction: column;
  gap: 4px;
  flex-grow: 1;
}
.list-card .list-card__meta {
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 600;
  color: #8C7E74;
  text-transform: uppercase;
}
.list-card .list-card__title {
  font-family: var(--font-header);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.35;
  color: #3D3229;
  margin: 0;
  transition: color 0.2s ease;
}
@media (max-width: 480px) {
  .list-card .list-card__title {
    font-size: 13px;
  }
}
.list-card .list-card__footer {
  font-family: var(--font-body);
  font-size: 11px;
  color: #8C7E74;
  margin-top: 2px;
}
.list-card {
  /* Hover states */
}
.list-card:hover .list-card__img {
  transform: scale(1.04);
}
.list-card:hover .list-card__title {
  color: var(--color-sage, #5A7A52);
}

.list-card__divider {
  border: none;
  height: 1px;
  background-color: rgba(61, 50, 41, 0.06);
  margin: 12px 0 0 0;
}

/* 4. Bottom categories section (Choose Your Topic) */
.home-latest-topics-section {
  padding: 24px 0;
  background-color: #FAF6F0;
}
.home-latest-topics-section .wrap {
  display: flex;
  align-items: center;
  gap: 40px;
}
@media (max-width: 991px) {
  .home-latest-topics-section .wrap {
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
  }
}

.home-latest-topics__header {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  flex-shrink: 0;
  max-width: 120px;
}
@media (max-width: 991px) {
  .home-latest-topics__header {
    max-width: 100%;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    width: 100%;
  }
}
.home-latest-topics__header .header-text {
  font-family: var(--font-header);
  font-size: 16px;
  font-weight: 700;
  color: #3D3229;
  line-height: 1.35;
}
.home-latest-topics__header .header-arrow-circle {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 1px solid rgba(61, 50, 41, 0.1);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #3D3229;
  transition: all 0.2s ease;
}
@media (max-width: 991px) {
  .home-latest-topics__header .header-arrow-circle {
    width: 28px;
    height: 28px;
  }
}

.home-latest-topics__list {
  display: flex;
  gap: 24px;
  overflow-x: auto;
  flex-grow: 1;
  padding: 8px 0;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  width: 100%;
  /* Hide scrollbars but keep functionality */
}
.home-latest-topics__list::-webkit-scrollbar {
  display: none;
}
.home-latest-topics__list {
  scrollbar-width: none;
}

.topic-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  text-decoration: none;
  color: inherit;
  min-width: 90px;
  flex-shrink: 0;
  transition: transform 0.25s ease;
}
.topic-item .topic-item__circle {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 12px;
  box-shadow: 0 2px 8px rgba(61, 50, 41, 0.02);
  transition: all 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.topic-item .topic-item__icon {
  display: flex;
  align-items: center;
  justify-content: center;
}
.topic-item .topic-item__name {
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 700;
  color: #3D3229;
  line-height: 1.25;
  margin-bottom: 2px;
  max-width: 100px;
}
.topic-item .topic-item__count {
  font-family: var(--font-body);
  font-size: 10px;
  color: #8C7E74;
}
.topic-item {
  /* Hover states */
}
.topic-item:hover {
  transform: translateY(-2px);
}
.topic-item:hover .topic-item__circle {
  box-shadow: 0 6px 18px rgba(61, 50, 41, 0.08);
}
.topic-item {
  /* All Topics Button */
}
.topic-item--all .topic-item__circle {
  background-color: #ffffff;
  border: 1px dashed rgba(61, 50, 41, 0.2);
  color: #3D3229;
}
.topic-item--all:hover .topic-item__circle {
  border-style: solid;
  border-color: var(--color-sage, #5A7A52);
  color: var(--color-sage, #5A7A52);
}

/* ==========================================================================
   Home Promo Stats Redesign (Premium Cozy Aesthetics)
   ========================================================================== */
.home-promo-stats {
  position: relative;
  padding: 60px 0 10px;
  background-color: #FAF8F5;
  overflow: hidden;
}
.home-promo-stats .title {
  line-height: 0.8;
  margin-bottom: 16px;
}
.home-promo-stats .short-desc {
  margin-bottom: 36px;
  max-width: 420px;
}

/* Background Image on the right side */
.promo-stats__bg-image {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 58%;
  background-size: cover;
  background-position: center left;
  z-index: 1;
  pointer-events: none;
}
.promo-stats__bg-image::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 150px;
  background: linear-gradient(to right, #FAF8F5 0%, rgba(250, 248, 245, 0) 100%);
}
@media (max-width: 991px) {
  .promo-stats__bg-image {
    opacity: 0.15;
    width: 100%;
  }
  .promo-stats__bg-image::before {
    display: none;
  }
}

/* Content layout */
.promo-stats__main-row {
  display: flex;
  position: relative;
  z-index: 10;
  min-height: 380px;
}
@media (max-width: 991px) {
  .promo-stats__main-row {
    min-height: auto;
  }
}

.promo-stats__content-col {
  max-width: 480px;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}
@media (max-width: 991px) {
  .promo-stats__content-col {
    max-width: 100%;
  }
}

.promo-stats__journal-tag {
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  color: #8C7E74;
  margin-bottom: 16px;
  line-height: 1;
}

/* Actions Row */
.promo-stats__action-row {
  display: flex;
  align-items: center;
  gap: 28px;
  margin-bottom: 40px;
  flex-wrap: wrap;
}

.promo-stats__cta-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: var(--color-sage, #5A7A52);
  color: #ffffff;
  border-radius: 99px;
  height: 48px;
  padding: 0 28px;
  font-family: var(--font-body);
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
  transition: all 0.25s ease;
  box-shadow: 0 4px 15px rgba(90, 122, 82, 0.25);
}
.promo-stats__cta-btn svg {
  margin-left: 8px;
  transition: transform 0.2s ease;
}
.promo-stats__cta-btn:hover {
  background-color: var(--color-sage-hover, #4c6945);
  box-shadow: 0 6px 20px rgba(90, 122, 82, 0.35);
}
.promo-stats__cta-btn:hover svg {
  transform: translateX(4px);
}

/* 4. Bottom Stats Bar (Floating White Card overlay) */
.promo-stats__bottom-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background-color: #ffffff;
  border: 1px solid rgba(61, 50, 41, 0.04);
  border-radius: 24px;
  padding: 24px 40px;
  box-shadow: 0 8px 30px rgba(61, 50, 41, 0.04);
  margin-top: 40px;
  position: relative;
  z-index: 20;
  max-width: 740px;
  margin: 0 0 0 auto;
}
@media (max-width: 991px) {
  .promo-stats__bottom-bar {
    flex-wrap: wrap;
    padding: 24px;
    gap: 16px;
  }
}
@media (max-width: 767px) {
  .promo-stats__bottom-bar {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
}

.promo-stats__item-col {
  display: flex;
  align-items: center;
  gap: 16px;
  text-decoration: none;
  color: inherit;
  flex: 1;
  justify-content: center;
}
@media (max-width: 991px) {
  .promo-stats__item-col {
    flex: none;
    width: calc(50% - 10px);
    justify-content: flex-start;
  }
}
@media (max-width: 767px) {
  .promo-stats__item-col {
    width: 100%;
  }
}
.promo-stats__item-col {
  /* Hover states for stats item */
}
.promo-stats__item-col[href]:hover .stat-icon-circle {
  transform: scale(1.08);
}
.promo-stats__item-col[href]:hover .stat-number-val {
  color: var(--color-sage, #5A7A52);
}

.stat-icon-circle {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform 0.2s ease;
}
.stat-icon-circle svg {
  stroke-width: 2;
}
.stat-icon-circle {
  /* Dynamic color sets based on stats keys */
}
.stat-icon-circle--articles {
  background-color: rgba(90, 122, 82, 0.08);
  color: #5A7A52;
}
.stat-icon-circle--recipes {
  background-color: rgba(212, 98, 42, 0.08);
  color: #D4622A;
}
.stat-icon-circle--rations {
  background-color: rgba(204, 79, 79, 0.08);
  color: #CC4F4F;
}
.stat-icon-circle--experts {
  background-color: rgba(140, 126, 116, 0.08);
  color: #8C7E74;
}

.stat-info-wrap {
  display: flex;
  flex-direction: column;
}
.stat-info-wrap .stat-number-val {
  font-family: var(--font-header);
  font-size: 20px;
  font-weight: 700;
  color: #3D3229;
  line-height: 1.2;
  transition: color 0.2s ease;
}
.stat-info-wrap .stat-label-txt {
  font-family: var(--font-body);
  font-size: 11px;
  color: #8C7E74;
  line-height: 1;
  margin-top: 2px;
}

.stat-divider-line {
  width: 1px;
  height: 32px;
  background-color: rgba(61, 50, 41, 0.08);
  flex-shrink: 0;
}
@media (max-width: 991px) {
  .stat-divider-line {
    display: none;
  }
}

.popular-recipes {
  position: relative;
  padding-top: 60px;
  padding-bottom: 60px;
}
@media (max-width: 991px) {
  .popular-recipes {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}
.popular-recipes__divider-bottom {
  border: none;
  height: 1px;
  background-color: var(--color-divider);
  margin: 40px 0 35px 0;
}
@media (max-width: 767px) {
  .popular-recipes__divider-bottom {
    margin: 30px 0 25px 0;
  }
}
.popular-recipes__tabs-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 24px;
  border-bottom: 1px solid var(--color-divider);
  padding-bottom: 0;
}
@media (max-width: 767px) {
  .popular-recipes__tabs-row {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    padding-bottom: 8px;
  }
}
.popular-recipes__tabs {
  display: flex;
  gap: 32px;
}
.popular-recipes__tab {
  background: none;
  border: none;
  padding: 0 0 14px 0;
  margin: 0;
  cursor: pointer;
  text-align: left;
  position: relative;
  outline: none;
  display: flex;
  flex-direction: column;
  transition: opacity 0.2s ease;
}
.popular-recipes__tab .tab-title {
  font-size: 20px;
  font-weight: 700;
  color: var(--color-nature);
  transition: color 0.2s ease;
}
.popular-recipes__tab .tab-subtitle {
  font-size: 9px;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--color-carbs-bg);
  letter-spacing: 0.1em;
  margin-top: 4px;
  transition: color 0.2s ease;
}
.popular-recipes__tab.active .tab-title {
  color: var(--color-dark);
}
.popular-recipes__tab.active .tab-subtitle {
  position: relative;
}
.popular-recipes__tab.active::after {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  right: 0;
  height: 2px;
  position: relative;
}
.popular-recipes__tab:hover:not(.active) {
  opacity: 0.8;
}
.popular-recipes__tabs-info {
  font-size: 11px;
  font-style: italic;
  color: var(--color-nature);
  padding-bottom: 14px;
  font-family: "Playfair Display", serif;
}
@media (max-width: 767px) {
  .popular-recipes__tabs-info {
    padding-bottom: 0;
  }
}
.popular-recipes__content {
  position: relative;
  width: 100%;
}
.popular-recipes .recipes-pane {
  display: none;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.popular-recipes .recipes-pane.active {
  display: block;
  opacity: 1;
}
.popular-recipes .recipes-scroll-list {
  display: flex;
  gap: 16px;
  overflow-x: auto;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  padding-bottom: 16px;
  padding-top: 4px;
}
.popular-recipes .recipes-scroll-list::-webkit-scrollbar {
  height: 6px;
}
.popular-recipes .recipes-scroll-list::-webkit-scrollbar-track {
  background: var(--color-rgba-0-0-0-0-05);
  border-radius: 10px;
}
.popular-recipes .recipes-scroll-list::-webkit-scrollbar-thumb {
  background: var(--color-text-light);
  border-radius: 10px;
}
.popular-recipes .recipes-scroll-list::-webkit-scrollbar-thumb:hover {
  background: var(--color-nature-dark);
}

.recipe-card {
  position: relative;
  width: 280px;
  height: 400px;
  border-radius: 14px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 16px;
  color: var(--color-bg);
  text-decoration: none;
  flex-shrink: 0;
  box-shadow: 0 4px 20px var(--color-rgba-0-0-0-0-05);
  transition: transform 0.3s cubic-bezier(0.25, 0.8, 0.25, 1), box-shadow 0.3s ease;
}
.recipe-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 12px 28px var(--color-text-light);
}
.recipe-card:hover .recipe-card__bg {
  transform: scale(1.04);
}
.recipe-card__bg {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  z-index: 0;
  transition: transform 0.5s ease;
}
.recipe-card__stripes {
  position: absolute;
  inset: 0;
  background-image: repeating-linear-gradient(-45deg, var(--color-rgba-255-255-255-0-1) 0px, var(--color-rgba-255-255-255-0-1) 1px, transparent 1px, transparent 10px);
  z-index: 1;
  pointer-events: none;
}
.recipe-card__header {
  position: relative;
  z-index: 2;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.recipe-card__index {
  font-family: "Playfair Display", serif;
  font-size: 26px;
  font-style: italic;
  font-weight: 700;
  opacity: 0.6;
  line-height: 1;
}
.recipe-card__views-badge {
  background-color: var(--color-rgba-0-0-0-0-5);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  border-radius: 20px;
  padding: 4px 10px;
  font-size: 10px;
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: 4px;
  color: var(--color-bg);
}
.recipe-card__views-badge .eye-icon {
  width: 11px;
  height: 11px;
  opacity: 0.8;
}
.recipe-card__content {
  position: relative;
  z-index: 2;
  margin-top: auto;
  margin-bottom: 12px;
}
.recipe-card__slogan-wrapper {
  margin-bottom: 10px;
}
.recipe-card__slogan {
  display: inline-block;
  background-color: var(--color-bg);
  color: var(--card-color, #6b723d);
  font-size: 11px;
  font-weight: 700;
  font-style: italic;
  padding: 4px 12px;
  border-radius: 20px;
  box-shadow: 0 2px 8px var(--color-rgba-0-0-0-0-05);
}
.recipe-card__title {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3;
  color: var(--color-bg);
  margin: 0 0 6px 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}
.recipe-card__excerpt {
  font-size: 12px;
  font-weight: 300;
  line-height: 1.4;
  color: var(--color-rgba-255-255-255-0-8);
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}
.recipe-card__footer {
  position: relative;
  z-index: 2;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-top: 1px solid var(--color-rgba-255-255-255-0-1);
  padding-top: 10px;
}
.recipe-card__meta {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.05em;
  color: var(--color-rgba-255-255-255-0-8);
}
.recipe-card__meta .meta-part {
  text-transform: uppercase;
}
.recipe-card__meta .meta-bullet {
  opacity: 0.5;
}
.recipe-card__slug {
  font-family: var(--font-family-main, "Inter", sans-serif);
  font-size: 9px;
  font-style: italic;
  opacity: 0.6;
  color: var(--color-bg);
}

/* ==========================================================================
   Home Diets Redesign (Premium Cozy Split Layout & Cards)
   ========================================================================== */
.home-diets {
  position: relative;
  background-color: #FAF8F5;
  /* Matches overall homepage base */
  padding: 80px 0 100px;
  overflow: hidden;
}

/* ==========================================================
   1. Promo Split Cards Layout (Ready vs Custom)
   ========================================================== */
.diets-promo-split-cards {
  display: flex;
  gap: 24px;
  position: relative;
  margin-bottom: 56px;
}
@media (max-width: 991px) {
  .diets-promo-split-cards {
    flex-direction: column;
    gap: 36px;
  }
}

.diets-split-card {
  background-color: #ffffff;
  border: 1px solid rgba(61, 50, 41, 0.04);
  border-radius: 24px;
  padding: 40px;
  display: flex;
  gap: 28px;
  flex: 1;
  align-items: center;
  box-shadow: 0 4px 20px rgba(61, 50, 41, 0.02);
  overflow: hidden;
  box-sizing: border-box;
}
.diets-split-card .card-text-side {
  flex: 1;
  display: flex;
  flex-direction: column;
  z-index: 5;
}
.diets-split-card .card-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 700;
  color: #5A7A52;
  text-transform: uppercase;
  margin-bottom: 12px;
}
.diets-split-card .card-badge .icon {
  font-size: 14px;
}
.diets-split-card .card-badge-simple {
  display: inline-block;
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 700;
  color: #8C7E74;
  text-transform: uppercase;
  margin-bottom: 12px;
}
.diets-split-card .card-title {
  font-family: var(--font-header);
  font-size: 28px;
  font-weight: 700;
  color: #3D3229;
  line-height: 1.25;
  margin-bottom: 14px;
}
@media (max-width: 1199px) {
  .diets-split-card .card-title {
    font-size: 24px;
  }
}
.diets-split-card .card-desc {
  font-family: var(--font-body);
  font-size: 13px;
  color: #6B5E53;
  line-height: 1.5;
  margin-bottom: 24px;
}
.diets-split-card {
  /* Checklist Left */
}
.diets-split-card .card-check-list {
  list-style: none;
  padding: 0;
  margin: 0 0 28px 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.diets-split-card .card-check-list li {
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: var(--font-body);
  font-size: 13px;
  color: #3D3229;
}
.diets-split-card .card-check-list .check-circle-icon {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background-color: rgba(90, 122, 82, 0.08);
  color: #5A7A52;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  font-weight: 700;
  flex-shrink: 0;
}
.diets-split-card {
  /* Left split card footer elements */
}
.diets-split-card .card-left-footer {
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}
.diets-split-card {
  /* Separation buttons styles */
}
.diets-split-card .diets-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 99px;
  height: 44px;
  padding: 0 24px;
  font-family: var(--font-body);
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
  transition: all 0.25s ease;
  box-sizing: border-box;
}
.diets-split-card .diets-btn--primary {
  background-color: #5A7A52;
  border: 1px solid #5A7A52;
  color: #ffffff;
  box-shadow: 0 4px 15px rgba(90, 122, 82, 0.2);
}
.diets-split-card .diets-btn--primary:hover {
  background-color: #4c6945;
  border-color: #4c6945;
}
.diets-split-card .diets-btn--outline {
  background-color: #ffffff;
  border: 1.5px solid #5A7A52;
  color: #5A7A52;
}
.diets-split-card .diets-btn--outline:hover {
  background-color: #5A7A52;
  color: #ffffff;
}
.diets-split-card {
  /* Readers statistics bubble */
}
.diets-split-card .readers-bubble {
  display: flex;
  align-items: center;
  gap: 10px;
}
.diets-split-card .readers-bubble .icon-badge {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background-color: rgba(90, 122, 82, 0.06);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #5A7A52;
  font-size: 14px;
}
.diets-split-card .readers-bubble .txt-wrap {
  display: flex;
  flex-direction: column;
}
.diets-split-card .readers-bubble .txt-wrap strong {
  font-family: var(--font-header);
  font-size: 13px;
  font-weight: 700;
  color: #3D3229;
  line-height: 1.2;
}
.diets-split-card .readers-bubble .txt-wrap span {
  font-family: var(--font-body);
  font-size: 9px;
  color: #8C7E74;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.diets-split-card {
  /* Left card Bowl graphic alignment */
}
.diets-split-card .card-image-side {
  width: 180px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.diets-split-card .card-image-side .left-card-bowl-img {
  width: 240px;
  max-width: none;
  height: auto;
  object-fit: contain;
  margin-right: -60px;
}
@media (max-width: 1199px) {
  .diets-split-card .card-image-side .left-card-bowl-img {
    width: 200px;
    margin-right: -40px;
  }
}
@media (max-width: 575px) {
  .diets-split-card .card-image-side {
    display: none;
  }
}
.diets-split-card {
  /* Right card Notebook graphic alignment */
}
.diets-split-card .card-image-side-notebook {
  width: 160px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.diets-split-card .card-image-side-notebook .right-card-notebook-img {
  width: 210px;
  max-width: none;
  height: auto;
  object-fit: contain;
  margin-right: -60px;
  transform: rotate(4deg);
}
@media (max-width: 1199px) {
  .diets-split-card .card-image-side-notebook .right-card-notebook-img {
    width: 170px;
    margin-right: -40px;
  }
}
@media (max-width: 575px) {
  .diets-split-card .card-image-side-notebook {
    display: none;
  }
}
.diets-split-card {
  /* Right side mini advantages grid */
}
.diets-split-card .card-advantages-row {
  display: flex;
  gap: 12px;
  margin-bottom: 28px;
}
@media (max-width: 575px) {
  .diets-split-card .card-advantages-row {
    flex-direction: column;
    gap: 10px;
  }
}
.diets-split-card .adv-mini-card {
  background-color: #FAF6F0;
  border: 1px solid rgba(61, 50, 41, 0.04);
  border-radius: 16px;
  padding: 12px;
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.diets-split-card .adv-mini-card .icon {
  font-size: 16px;
  margin-bottom: 8px;
}
.diets-split-card .adv-mini-card strong {
  font-family: var(--font-header);
  font-size: 11px;
  font-weight: 700;
  color: #3D3229;
  margin-bottom: 2px;
  line-height: 1.25;
}
.diets-split-card .adv-mini-card span {
  font-family: var(--font-body);
  font-size: 10px;
  color: #8C7E74;
  line-height: 1.35;
}
@media (max-width: 1199px) {
  .diets-split-card {
    padding: 30px 24px;
    gap: 20px;
  }
}

/* Overlapping Separator Circle */
.diets-split-separator {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  width: 44px;
  height: 44px;
  background-color: #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 15px rgba(61, 50, 41, 0.08);
  border: 1.5px solid rgba(61, 50, 41, 0.04);
  pointer-events: none;
}
.diets-split-separator span {
  font-family: var(--font-body);
  font-size: 10px;
  font-weight: 700;
  color: #8C7E74;
  letter-spacing: 0.05em;
}
@media (max-width: 991px) {
  .diets-split-separator {
    position: relative;
    left: auto;
    top: auto;
    transform: none;
    margin: -18px auto;
  }
}

/* ==========================================================
   2. Popular diets carousel section
   ========================================================== */
.home-diets-popular-section {
  margin-bottom: 56px;
}

.popular-section-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 24px;
}
.popular-section-header .section-title {
  font-family: var(--font-header);
  font-size: 24px;
  font-weight: 700;
  color: #3D3229;
  margin: 0;
}
.popular-section-header .carousel-arrows {
  display: flex;
  gap: 8px;
}
.popular-section-header .arrow-btn {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 1px solid rgba(61, 50, 41, 0.1);
  background-color: #ffffff;
  color: #3D3229;
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s ease;
}
.popular-section-header .arrow-btn:hover {
  border-color: #3D3229;
  background-color: #FAF6F0;
}

.popular-diets-carousel-wrap {
  width: 100%;
}

.popular-diets-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 20px;
}
@media (max-width: 1199px) {
  .popular-diets-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 991px) {
  .popular-diets-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 575px) {
  .popular-diets-grid {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}

/* Standard diet card styling */
.popular-diet-card-redesign {
  background-color: #ffffff;
  border: 1px solid rgba(61, 50, 41, 0.04);
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 4px 20px rgba(61, 50, 41, 0.01);
  display: flex;
  flex-direction: column;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.popular-diet-card-redesign .card-link-wrap {
  text-decoration: none;
  color: inherit;
  display: flex;
  flex-direction: column;
  height: 100%;
}
.popular-diet-card-redesign .diet-card-image-wrapper {
  position: relative;
  width: 100%;
  aspect-ratio: 16/11;
  overflow: hidden;
}
.popular-diet-card-redesign .diet-card-badge-tag {
  position: absolute;
  left: 12px;
  top: 12px;
  background-color: #FAF6F0;
  border: 1.5px solid rgba(61, 50, 41, 0.06);
  color: #5A7A52;
  font-family: var(--font-body);
  font-size: 10px;
  font-weight: 700;
  padding: 4px 10px;
  border-radius: 99px;
  z-index: 5;
}
.popular-diet-card-redesign .diet-card-cover-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}
.popular-diet-card-redesign .diet-card-info-content {
  padding: 16px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  box-sizing: border-box;
}
.popular-diet-card-redesign .diet-card-meta-line {
  font-family: var(--font-body);
  font-size: 11px;
  color: #8C7E74;
  margin-bottom: 6px;
  font-weight: 600;
  text-transform: uppercase;
}
.popular-diet-card-redesign .diet-card-title-heading {
  font-family: var(--font-header);
  font-size: 14px;
  font-weight: 700;
  color: #3D3229;
  margin-bottom: 16px;
  line-height: 1.35;
  flex-grow: 1;
}
.popular-diet-card-redesign {
  /* Card footer elements alignment */
}
.popular-diet-card-redesign .diet-card-footer-line {
  display: flex;
  align-items: center;
  border-top: 1px solid rgba(61, 50, 41, 0.05);
  padding-top: 12px;
  margin-top: auto;
  justify-content: space-between;
}
.popular-diet-card-redesign {
  /* Overlapping layered user avatars */
}
.popular-diet-card-redesign .layered-avatars-row {
  display: flex;
  align-items: center;
  margin-right: 4px;
}
.popular-diet-card-redesign .layered-avatar {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  border: 1.5px solid #ffffff;
  object-fit: cover;
  margin-left: -8px;
}
.popular-diet-card-redesign .layered-avatar:first-child {
  margin-left: 0;
}
.popular-diet-card-redesign {
  /* Rating label */
}
.popular-diet-card-redesign .diet-card-rating {
  display: flex;
  align-items: center;
  gap: 4px;
}
.popular-diet-card-redesign .diet-card-rating .star-icon {
  color: #D4622A;
  font-size: 11px;
}
.popular-diet-card-redesign .diet-card-rating .rating-val {
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 600;
  color: #3D3229;
}
.popular-diet-card-redesign .diet-card-go-btn {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background-color: rgba(61, 50, 41, 0.04);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #3D3229;
  transition: all 0.25s ease;
}
.popular-diet-card-redesign .diet-card-go-btn svg {
  transition: transform 0.2s ease;
}
.popular-diet-card-redesign {
  /* Card Hover triggers */
}
.popular-diet-card-redesign:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 30px rgba(61, 50, 41, 0.05);
}
.popular-diet-card-redesign:hover .diet-card-cover-img {
  transform: scale(1.03);
}
.popular-diet-card-redesign:hover .diet-card-go-btn {
  background-color: #5A7A52;
  color: #ffffff;
}
.popular-diet-card-redesign:hover .diet-card-go-btn svg {
  transform: translateX(1px);
}

/* ==========================================================
   3. "Don't know where to start?" test card
   ========================================================== */
.diet-test-card {
  background-color: #FAF6F0;
  border-radius: 20px;
  padding: 20px;
  display: flex;
  align-items: center;
  gap: 16px;
  box-shadow: 0 4px 20px rgba(61, 50, 41, 0.01);
  overflow: hidden;
  position: relative;
  box-sizing: border-box;
}
@media (max-width: 1199px) {
  .diet-test-card {
    grid-column: span 1;
  }
}
@media (max-width: 991px) {
  .diet-test-card {
    grid-column: span 2;
  }
}
@media (max-width: 575px) {
  .diet-test-card {
    grid-column: span 1;
    flex-direction: column;
    align-items: flex-start;
    padding: 24px;
  }
}
.diet-test-card .test-card-content {
  display: flex;
  flex-direction: column;
  width: 60%;
  z-index: 5;
}
@media (max-width: 575px) {
  .diet-test-card .test-card-content {
    width: 100%;
  }
}
.diet-test-card .test-title {
  font-family: var(--font-header);
  font-size: 15px;
  font-weight: 700;
  color: #3D3229;
  margin-bottom: 6px;
  line-height: 1.35;
}
.diet-test-card .test-desc {
  font-family: var(--font-body);
  font-size: 11px;
  color: #8C7E74;
  line-height: 1.4;
  margin-bottom: 16px;
}
.diet-test-card .test-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: #5A7A52;
  color: #ffffff;
  border-radius: 99px;
  height: 34px;
  padding: 0 20px;
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 700;
  text-decoration: none;
  transition: all 0.2s ease;
  align-self: flex-start;
  box-shadow: 0 4px 10px rgba(90, 122, 82, 0.15);
}
.diet-test-card .test-btn:hover {
  background-color: #4c6945;
}
.diet-test-card .test-card-image {
  width: 40%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: -24px;
  margin-bottom: -24px;
  pointer-events: none;
}
@media (max-width: 575px) {
  .diet-test-card .test-card-image {
    width: 100%;
    margin: 16px 0 -24px 0;
  }
}
.diet-test-card .test-card-image .test-img {
  width: 120%;
  height: auto;
  transform: rotate(-6deg);
  border-radius: 8px;
}

/* ==========================================================
   4. Bottom benefits row (5 columns layout)
   ========================================================== */
.home-diets-bottom-benefits {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background-color: #FAF6F0;
  border-radius: 20px;
  padding: 24px 32px;
  gap: 12px;
  margin-top: 56px;
}
@media (max-width: 991px) {
  .home-diets-bottom-benefits {
    flex-direction: column;
    padding: 24px;
    gap: 20px;
  }
}

.benefit-item-col {
  display: flex;
  align-items: center;
  gap: 12px;
  flex: 1;
}
@media (max-width: 991px) {
  .benefit-item-col {
    width: 100%;
  }
}
.benefit-item-col .benefit-icon-circle {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background-color: #ffffff;
  color: #8C7E74;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.benefit-item-col .benefit-icon-circle svg {
  stroke-width: 1.8;
}
.benefit-item-col .benefit-info {
  display: flex;
  flex-direction: column;
}
.benefit-item-col .benefit-info .title-txt {
  font-family: var(--font-header);
  font-size: 12px;
  font-weight: 700;
  color: #3D3229;
  margin-bottom: 2px;
  line-height: 1.3;
}
.benefit-item-col .benefit-info .desc-txt {
  font-family: var(--font-body);
  font-size: 11px;
  color: #8C7E74;
  line-height: 1.3;
}

.benefit-divider-line {
  width: 1px;
  height: 28px;
  background-color: rgba(61, 50, 41, 0.08);
  flex-shrink: 0;
}
@media (max-width: 991px) {
  .benefit-divider-line {
    display: none;
  }
}

.footer {
  padding: 48px 0 0;
  overflow: hidden;
  background: var(--color-contrast);
  color: var(--color-surface);
  width: 100%;
  position: relative;
  z-index: 3;
}
@media (max-width: 767px) {
  .footer {
    padding: 40px 0 0;
  }
}
.footer .container {
  position: relative;
  z-index: 2;
}
.footer__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding-bottom: 40px;
  border-bottom: 1px solid var(--color-rgba-255-255-255-0-1);
}
.footer__brand {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}
.footer__logo {
  display: inline-flex;
  align-items: center;
}
.footer__logo img {
  width: 132px;
  height: auto;
}
.footer__desc {
  color: var(--color-rgba-255-255-255-0-5);
  font-size: 13px;
  line-height: 1.7;
  margin: 0;
  max-width: 480px;
}
.footer__bottom {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  padding: 20px 0;
  color: var(--color-rgba-255-255-255-0-2);
  font-size: 12px;
  flex-wrap: wrap;
  text-align: center;
}
.footer__bottom-sep {
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: var(--color-rgba-255-255-255-0-2);
  flex-shrink: 0;
}
.footer__socials {
  display: none !important;
}

.header {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  z-index: 100;
  transition: transform 0.3s linear;
  display: flex;
  flex-direction: column;
  overflow: visible;
  background-color: #FCFAF6;
  border-bottom: 1px solid var(--color-divider);
}
@media (max-width: 1199px) {
  .header {
    height: auto;
    flex-direction: column;
  }
}
.header .container {
  padding: 12px 16px;
  position: relative;
}
.header .wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.header__col {
  display: flex;
  align-items: center;
}
.header__col:last-child {
  justify-content: flex-end;
  align-items: center;
  gap: 12px;
}
.header__col_item {
  display: flex;
  align-items: center;
  margin-left: 10px;
  padding-left: 10px;
  border-left: 1px solid var(--color-divider);
}
.header__col_item:nth-child(1) {
  border-left: 1px solid transparent;
}
.header__col_item:nth-child(3) {
  display: none;
}
@media (max-width: 1199px) {
  .header__col_item:nth-child(3) {
    display: flex;
  }
}
@media (max-width: 1199px) {
  .header__menu {
    display: none;
  }
}
.header__menu .menu {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
}
.header__menu .menu li {
  margin-right: 35px;
}
.header__menu .menu li:last-child {
  margin-right: 0;
}
.header__menu .menu li a {
  display: flex;
  align-items: center;
  font-size: 14px;
  margin: 0;
  padding: 0;
  text-transform: uppercase;
}
.header .logo {
  display: flex;
}
.header .logo-mobile {
  display: none;
}
@media (max-width: 1199px) {
  .header .logo-mobile {
    display: flex;
  }
}
.header .logo-dark, .header .logo-white {
  display: block;
  width: auto;
  height: 40px;
}
@media (max-width: 1199px) {
  .header .logo-dark, .header .logo-white {
    height: 36px;
  }
}
.header .logo-white {
  display: none;
}
.header .search-form-close {
  width: 50px;
  height: 50px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 40px;
  cursor: pointer;
}
.header .search-form {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  max-width: 240px;
  border-radius: 20px;
  overflow: hidden;
  border: 1px solid rgba(0, 0, 0, 0.4);
  -webkit-tap-highlight-color: transparent;
  padding: 0 4px 0 16px;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
@media (max-width: 1199px) {
  .header .search-form {
    display: none;
  }
}
.header .search-form:hover {
  background-color: var(--color-rgba-255-255-255-0-1);
  border-color: var(--color-rgba-255-255-255-0-1);
}
.header .search-form:focus-within {
  background-color: var(--color-rgba-255-255-255-0-1);
  border-color: var(--color-rgba-255-255-255-0-2);
  box-shadow: 0 0 0 3px var(--color-rgba-255-255-255-0-1);
}
.header .search-form input {
  height: 36px;
  width: 100%;
  background-color: transparent;
  border-radius: 20px;
  font-size: 16px;
  font-weight: 400;
  box-shadow: none;
  padding: 0;
  border: transparent;
  outline: none;
  -webkit-appearance: none;
  appearance: none;
  -webkit-tap-highlight-color: transparent;
}
.header .search-form input:focus, .header .search-form input:active, .header .search-form input:hover, .header .search-form input:focus-visible {
  box-shadow: none;
  outline: none;
  -webkit-appearance: none;
  appearance: none;
}
.header .search-form input::placeholder {
  font-size: 16px;
  font-weight: 400;
}
.header .search-form input::-webkit-search-decoration, .header .search-form input::-webkit-search-cancel-button, .header .search-form input::-webkit-search-results-button, .header .search-form input::-webkit-search-results-decoration {
  display: none;
  -webkit-appearance: none;
}
.header .search-form-icon {
  min-width: 36px;
  max-width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  right: 0;
  cursor: pointer;
  color: var(--color-rgba-255-255-255-0-5);
  transition: all 0.3s ease;
}
.header .search-form-icon:hover {
  color: var(--color-bg);
}
.header .search-form-icon svg {
  width: 18px;
  height: 18px;
}
.header .search-form-icon svg g {
  opacity: 1;
}
.header__sm {
  display: none;
  padding-top: 8px;
}
@media (max-width: 1199px) {
  .header__sm .search-form {
    display: flex;
    width: 100%;
    max-width: 600px;
  }
}
.header__lang-switcher {
  position: relative;
  z-index: 233;
}
.header__lang-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 34px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid var(--color-rgba-255-255-255-0-1);
  background: var(--color-rgba-255-255-255-0-1);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  color: var(--color-border-light);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  cursor: pointer;
  transition: all 0.25s ease;
}
.header__lang-btn:hover {
  border-color: var(--color-text-secondary);
  color: var(--color-bg);
  background: var(--color-accent-orange);
}
.header__lang-btn::after {
  content: "";
  width: 0;
  height: 0;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 5px solid currentColor;
  margin-left: 2px;
  transition: transform 0.25s ease;
}
.header__lang-switcher.is-open .header__lang-btn {
  border-color: var(--color-text-secondary);
  color: var(--color-bg);
  background: var(--color-accent-orange);
}
.header__lang-switcher.is-open .header__lang-btn::after {
  transform: rotate(180deg);
}
.header__lang-list {
  display: none;
  position: absolute;
  right: 0;
  top: calc(100% + 8px);
  min-width: 120px;
  background: var(--color-rgba-0-0-0-0-85);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid var(--color-rgba-255-255-255-0-1);
  border-radius: 12px;
  padding: 6px;
  box-shadow: 0 12px 32px var(--color-rgba-0-0-0-0-5), 0 0 0 1px var(--color-rgba-255-255-255-0-1) inset;
  z-index: 10;
}
.header__lang-list ul {
  display: flex;
  flex-direction: column;
  gap: 2px;
  list-style: none;
  padding: 0;
  margin: 0;
}
.header__lang-switcher.is-open .header__lang-list {
  display: block;
  animation: langDropdownIn 0.2s ease-out;
}
@keyframes langDropdownIn {
  from {
    opacity: 0;
    transform: translateY(-6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.header__lang-item a {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--color-divider);
  text-decoration: none;
  border-radius: 8px;
  transition: all 0.2s ease;
}
.header__lang-item a:hover {
  background: var(--color-accent-orange);
  color: var(--color-text-secondary);
}

.menu-button {
  display: none;
}
@media (max-width: 1199px) {
  .menu-button {
    display: flex;
    align-items: center;
  }
}
.menu-button svg {
  width: 26px;
  height: 26px;
  opacity: 0.85;
}

.mainMenu {
  position: relative;
  width: 100%;
  background-color: var(--color-bg);
  z-index: 100;
  display: flex;
  justify-content: center;
}
@media (max-width: 991px) {
  .mainMenu::before {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 50px;
    background: linear-gradient(to right, var(--color-rgba-255-255-255-0-5), var(--color-bg) 90%);
    pointer-events: none;
    z-index: 2;
    display: none;
  }
  .mainMenu::after {
    content: "";
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%23737373' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' viewBox='0 0 24 24'%3E%3Cpath d='M9 18l6-6-6-6'/%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
    pointer-events: none;
    z-index: 3;
    animation: hintScroll 1.5s ease-in-out infinite;
    display: none;
  }
  @keyframes hintScroll {
    0%, 100% {
      transform: translateY(-50%) translateX(0);
    }
    50% {
      transform: translateY(-50%) translateX(3px);
    }
  }
}
.mainMenu .wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.mainMenu .wrap::-webkit-scrollbar {
  display: none;
}
.mainMenu .menu {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  width: 100%;
  gap: 12px;
}
.mainMenu .menu li a {
  display: flex;
  align-items: center;
  padding: 16px 16px;
  margin: 0;
  border-bottom: 2px solid transparent;
  text-decoration: none;
  color: var(--color-text-main);
  font-size: 13px;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.3px;
  transition: color 0.3s ease;
  white-space: nowrap;
}
@media (min-width: 1025px) {
  .mainMenu .menu li a:hover {
    color: var(--color-accent);
  }
}
@media (max-width: 767px) {
  .mainMenu .menu li a {
    font-size: 13px;
    padding: 15px 8px;
  }
}
.mainMenu .menu li.current-menu-item a {
  color: var(--color-accent);
  border-bottom: 2px solid var(--color-accent);
}
.mainMenu .menu li.current_page_item a {
  position: relative;
}

.burger-container {
  width: 32px;
  height: auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  cursor: pointer;
  border: none;
  background: none;
  padding: 0;
  position: relative;
  display: grid;
  gap: 6px;
  padding: 8px 0;
  margin-right: 24px;
}
.burger-container .burger-line {
  width: 24px;
  height: 1px;
  background-color: var(--color-bg);
  transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
.burger-container .burger-line:nth-child(2) {
  width: 20px;
}
.burger-container .burger-line:nth-child(3) {
  width: 16px;
}
.burger-container:hover .burger-line:nth-child(2) {
  width: 24px;
}
.burger-container:hover .burger-line:nth-child(3) {
  width: 24px;
}

/* ================== Custom Navigation Styles =================== */
.chefie-nav {
  display: flex;
  align-items: center;
  margin-left: 32px;
}
@media (max-width: 1199px) {
  .chefie-nav {
    display: none;
  }
}
.chefie-nav__list {
  display: flex;
  align-items: center;
  gap: 28px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.chefie-nav__item {
  display: block;
}
.chefie-nav__link {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  text-decoration: none;
  padding: 24px 0;
  letter-spacing: 0.05em;
  transition: color 0.2s ease;
}
.chefie-nav__link:hover {
  color: var(--color-text-secondary);
}
.chefie-nav__link.is-soon {
  opacity: 0.6;
  cursor: default;
  pointer-events: none;
}
.chefie-nav__link.is-active {
  color: var(--color-text-secondary);
}

.badge-soon {
  font-size: 8px;
  font-weight: 900;
  background-color: var(--color-accent-orange);
  color: var(--color-bg);
  padding: 1px 5px;
  border-radius: 4px;
  margin-left: 6px;
  letter-spacing: 0.05em;
  display: inline-block;
  line-height: 1.2;
}

/* ================== Mobile Drawer & Navigation Styles =================== */
.burger-container {
  display: none !important;
}
@media (max-width: 1199px) {
  .burger-container {
    display: grid !important;
  }
}

.chefie-drawer-left {
  --size: 320px;
}
.chefie-drawer-left::part(panel) {
  background-color: var(--color-text-main);
  color: var(--color-bg);
  border-right: 1px solid var(--color-contrast);
}
.chefie-drawer-left::part(body) {
  padding: 0;
}
.chefie-drawer-left .products-modal {
  background-color: var(--color-text-main);
  height: 100%;
  display: flex;
  flex-direction: column;
}
.chefie-drawer-left .products-modal__header {
  background-color: var(--color-contrast);
  border-bottom: 1px solid var(--color-contrast);
}
.chefie-drawer-left .products-modal__label-top {
  color: var(--color-text-secondary);
}
.chefie-drawer-left .products-modal__title-styled {
  color: var(--color-bg);
}
.chefie-drawer-left .products-modal__title-styled em {
  color: var(--color-text-secondary);
}
.chefie-drawer-left .products-modal__close-btn {
  background-color: var(--color-contrast);
  border-color: var(--color-text-muted);
  color: var(--color-bg);
  box-shadow: 0 2px 8px var(--color-text-light);
}
.chefie-drawer-left .products-modal__close-btn:hover {
  background-color: var(--color-bg);
  color: var(--color-text-main);
  border-color: var(--color-bg);
}
.chefie-drawer-left .products-modal__body {
  flex: 1;
  overflow-y: auto;
  padding: 0;
}

.chefie-mobile-nav {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.chefie-mobile-nav__search {
  padding: 20px;
  border-bottom: 1px solid var(--color-contrast);
}
.chefie-mobile-nav__search .search-form {
  display: flex;
  max-width: 100%;
  background-color: var(--color-contrast);
  border-color: var(--color-text-muted);
}
.chefie-mobile-nav__search .search-form input {
  color: var(--color-bg);
}
.chefie-mobile-nav__search .search-form input::placeholder {
  color: var(--color-nature);
}
.chefie-mobile-nav__accordion {
  padding: 10px 20px 40px;
  display: flex;
  flex-direction: column;
}
.chefie-mobile-nav__simple-link {
  border-bottom: 1px solid var(--color-contrast);
  padding: 18px 0;
}
.chefie-mobile-nav__simple-link a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: var(--color-bg);
  text-decoration: none;
  font-size: 17px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.chefie-mobile-nav__simple-link.is-soon {
  opacity: 0.5;
}
.chefie-mobile-nav__simple-link.is-soon a {
  pointer-events: none;
}
.chefie-mobile-nav__simple-link.is-active a {
  color: var(--color-text-secondary);
}

.video-section {
  position: relative;
  margin-bottom: 48px;
  width: 100%;
}
.video-section__header {
  margin-bottom: 24px;
}
.video-section__meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  font-size: 13px;
  color: var(--color-text-muted, #7c7a76);
  font-weight: 500;
}
@media (max-width: 767px) {
  .video-section__meta {
    font-size: 12px;
    gap: 6px;
  }
}
.video-section__meta-dot {
  opacity: 0.5;
  font-size: 8px;
  margin: 0 2px;
}
.video-section__wrapper {
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;
  border-radius: 16px;
  overflow: hidden;
  background-color: var(--color-text-main);
  cursor: pointer;
  box-shadow: 0 12px 36px var(--color-rgba-0-0-0-0-05);
}
@media (max-width: 767px) {
  .video-section__wrapper {
    border-radius: 12px;
    aspect-ratio: 16/22;
  }
}
.video-section__wrapper iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
  z-index: 1;
}
.video-section__video {
  width: 100%;
  height: 100%;
  display: block;
}
.video-section__preview {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10;
  transition: opacity 0.4s ease;
}
.video-section__stripes {
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(-45deg, var(--color-rgba-0-0-0-0-05) 0px, var(--color-rgba-0-0-0-0-05) 2px, transparent 2px, transparent 12px);
  z-index: 2;
  pointer-events: none;
}
.video-section__poster {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 1;
  filter: brightness(0.65) contrast(1.05) saturate(0.9);
  transition: transform 0.8s cubic-bezier(0.25, 1, 0.5, 1);
}
.video-section__wrapper:hover .video-section__poster {
  transform: scale(1.03);
}
.video-section__play-btn {
  position: relative;
  z-index: 3;
  width: 80px;
  height: 80px;
  background-color: var(--color-text-secondary);
  border: none;
  border-radius: 50%;
  color: var(--color-bg);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 8px 24px var(--color-accent);
  transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1), background-color 0.3s ease, box-shadow 0.3s ease;
}
@media (max-width: 767px) {
  .video-section__play-btn {
    width: 60px;
    height: 60px;
    box-shadow: 0 6px 16px var(--color-accent);
  }
}
.video-section__play-btn svg {
  width: 24px;
  height: 24px;
  transform: translateX(2px);
  transition: transform 0.3s ease;
}
@media (max-width: 767px) {
  .video-section__play-btn svg {
    width: 18px;
    height: 18px;
    transform: translateX(1px);
  }
}
.video-section__play-btn:hover {
  transform: scale(1.08);
  box-shadow: 0 12px 32px var(--color-accent);
}
.video-section__label {
  position: absolute;
  bottom: 20px;
  left: 20px;
  z-index: 3;
  color: var(--color-rgba-255-255-255-0-5);
  font-size: 11px;
  font-family: var(--font-family-main, "Inter", sans-serif);
  letter-spacing: 0.05em;
  pointer-events: none;
}
@media (max-width: 767px) {
  .video-section__label {
    bottom: 12px;
    left: 12px;
    font-size: 9px;
  }
}
.video-section__duration {
  position: absolute;
  bottom: 20px;
  right: 20px;
  z-index: 3;
  background-color: var(--color-rgba-0-0-0-0-5);
  color: var(--color-bg);
  font-size: 11px;
  font-weight: 700;
  padding: 4px 10px;
  border-radius: 6px;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  pointer-events: none;
}
@media (max-width: 767px) {
  .video-section__duration {
    bottom: 12px;
    right: 12px;
    font-size: 9px;
    padding: 3px 8px;
    border-radius: 4px;
  }
}

.preparation {
  margin-bottom: 5rem;
}
.preparation__header {
  margin-bottom: 32px;
}
@media (max-width: 767px) {
  .preparation__header {
    margin-bottom: 24px;
  }
}
.preparation__wrap {
  display: grid;
  gap: 0px;
  position: relative;
  margin-top: 24px;
}
.preparation__item {
  display: flex;
  align-items: flex-start;
  margin-bottom: 36px;
  position: relative;
}
.preparation__item:not(:last-child):after {
  content: "";
  position: absolute;
  left: 16px;
  top: 36px;
  bottom: -36px;
  width: 1.5px;
  background-color: var(--color-divider, rgba(17, 17, 17, 0.08));
  z-index: 1;
}
@media (max-width: 767px) {
  .preparation__item:not(:last-child):after {
    left: 14px;
    top: 32px;
    bottom: -32px;
  }
}
.preparation__item-key {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  line-height: 1;
  min-width: 32px;
  max-width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 1.5px solid var(--color-text-secondary);
  margin-right: 16px;
  font-size: 14px;
  font-weight: 600;
  color: var(--color-text-secondary);
  cursor: pointer;
  background-color: transparent;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  user-select: none;
  flex-shrink: 0;
  z-index: 2;
}
@media (max-width: 767px) {
  .preparation__item-key {
    min-width: 28px;
    max-width: 28px;
    height: 28px;
    font-size: 12px;
    margin-right: 12px;
  }
}
.preparation__item-key .step-num {
  display: block;
  transition: opacity 0.2s ease;
}
.preparation__item-key .step-check {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  opacity: 0;
  transform: scale(0.5);
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.preparation__item-key .step-check svg {
  width: 14px;
  height: 14px;
  stroke: var(--color-bg);
  stroke-width: 3.5;
}
.preparation__item-key:hover {
  background-color: var(--color-rgba-0-0-0-0-05);
}
.preparation__item_img {
  height: auto;
  width: 100%;
  aspect-ratio: 16/9.5;
  max-width: 32%;
  border-radius: 8px;
  overflow: hidden;
}
@media (max-width: 767px) {
  .preparation__item_img {
    aspect-ratio: 16/10;
    max-width: 49%;
  }
}
.preparation__item_desc p {
  display: block;
  margin-bottom: 12px;
  font-size: 16px;
  line-height: 1.6;
  color: var(--color-text-main, #111111);
}
.preparation__item_desc p:last-child {
  margin-bottom: 0;
}
.preparation__item_images {
  display: flex;
  align-items: flex-start;
  flex-wrap: nowrap;
  gap: 16px;
}
@media (max-width: 767px) {
  .preparation__item_images {
    gap: 8px;
  }
}
.preparation__item_images.square .preparation__item_img {
  aspect-ratio: 1/1;
}
.preparation__item_images.vertical .preparation__item_img {
  aspect-ratio: 16/22;
}
.preparation__item_content {
  width: 100%;
  display: grid;
  align-items: flex-start;
  grid-template-columns: 1fr;
  gap: 16px;
  transition: all 0.3s ease;
}
.preparation__item_content.full {
  grid-template-columns: 1fr;
}
.preparation__item_content .articleStyles {
  gap: 0px;
}
.preparation__item_content .articleStyles b,
.preparation__item_content .articleStyles strong {
  font-weight: 600;
}
.preparation__item_content .articleStyles h3 {
  font-size: 20px;
  margin: 0;
  margin-bottom: 6px;
  font-weight: 600;
  text-transform: none;
  line-height: 1.5em;
  font-family: var(--font-family-secondary);
}
.preparation__item_content .articleStyles ul {
  margin-bottom: 12px;
}
.preparation__item_content .articleStyles ul li {
  font-size: 15px;
}
.preparation__item_content .articleStyles p {
  margin-bottom: 6px;
  font-size: 16px;
  line-height: 1.56;
}
.preparation__item.active .preparation__item-key {
  background-color: var(--color-text-secondary);
  border-color: var(--color-text-secondary);
}
.preparation__item.active .preparation__item-key .step-num {
  opacity: 0;
}
.preparation__item.active .preparation__item-key .step-check {
  opacity: 1;
  transform: scale(1);
}
.preparation__item.active .preparation__item_content {
  opacity: 0.35;
  filter: grayscale(40%);
}
.preparation-label {
  font-size: 32px;
  font-weight: 500;
  font-style: italic;
  color: var(--color-text-secondary);
  text-align: center;
  position: relative;
  font-family: var(--font-family-secondary);
}
@media (max-width: 767px) {
  .preparation-label {
    font-size: 24px;
  }
}

/* Оверлей з іконкою */
.fancybox-trigger {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 8px;
}
.fancybox-trigger img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}
.fancybox-trigger:hover img {
  transform: scale(1.06);
}
.fancybox-trigger:hover .zoom-overlay {
  opacity: 1;
  transform: scale(1);
  background-color: var(--color-text-secondary);
  border-color: var(--color-text-secondary);
  box-shadow: 0 6px 16px var(--color-accent);
}
.fancybox-trigger:hover .zoom-overlay svg {
  stroke: var(--color-bg);
}

.zoom-overlay {
  position: absolute;
  bottom: 12px;
  right: 12px;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--color-rgba-255-255-255-0-8);
  border: 1px solid var(--color-rgba-255-255-255-0-2);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0.9;
  transform: scale(0.92);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  pointer-events: none;
  z-index: 5;
  box-shadow: 0 4px 12px var(--color-rgba-0-0-0-0-05);
  display: none;
}
@media (max-width: 767px) {
  .zoom-overlay {
    bottom: 8px;
    right: 8px;
    width: 28px;
    height: 28px;
  }
}
.zoom-overlay svg {
  width: 15px;
  height: 15px;
  stroke: var(--color-text-main, #111111);
  fill: transparent;
  stroke-width: 2.5;
  transition: stroke 0.3s ease;
}
@media (max-width: 767px) {
  .zoom-overlay svg {
    width: 13px;
    height: 13px;
  }
}

.ingredients-block {
  margin-bottom: 48px;
  position: relative;
}

.ingredients-header {
  margin-bottom: 2rem;
}
.ingredients-header__title {
  font-size: 32px;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: var(--color-text-main);
  margin: 8px 0;
}
@media (max-width: 768px) {
  .ingredients-header__title {
    font-size: 28px;
  }
}
.ingredients-header__title span {
  font-family: var(--font-family-secondary);
  font-style: italic;
  font-weight: 400;
  color: var(--color-text-secondary);
}
.ingredients-header__meta {
  font-size: 14px;
  font-weight: 500;
  color: var(--color-text-muted);
  margin-top: 8px;
}

.ingredients__group {
  margin-bottom: 2.5rem;
}
.ingredients__group:last-child {
  margin-bottom: 0;
}
.ingredients__group-head {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
}
.ingredients__group-tag {
  background-color: var(--color-surface);
  color: var(--color-text-secondary);
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  padding: 3px 8px;
  border-radius: 4px;
  letter-spacing: 0.05em;
}
.ingredients__group-title {
  font-size: 17px;
  font-weight: 800;
  color: var(--color-text-main);
}
.ingredients__group-line {
  flex: 1;
  height: 1px;
  background-color: var(--color-divider, rgba(17, 17, 17, 0.06));
}
.ingredients__group-count {
  font-size: 13px;
  font-weight: 700;
  color: var(--color-nature);
}
.ingredients__wrap {
  display: flex;
  flex-direction: column;
}
.ingredients__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 13px 0;
  border-bottom: 1px solid var(--color-divider, rgba(17, 17, 17, 0.05));
  transition: all 0.25s ease;
}
.ingredients__item:last-child {
  border-bottom: none;
}
.ingredients__item-left {
  display: flex;
  align-items: center;
  min-width: 0;
}
.ingredients__item-checkbox-wrapper {
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  user-select: none;
}
.ingredients__item-name {
  font-size: 15px;
  font-weight: 600;
  color: var(--color-text-main);
  text-decoration: none;
  transition: all 0.25s ease;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media (min-width: 1025px) {
  .ingredients__item-name:hover {
    color: var(--color-text-secondary);
  }
}
.ingredients__item-right {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 14px;
  font-weight: 700;
  color: var(--color-text-main);
  white-space: nowrap;
  padding-left: 16px;
  transition: all 0.25s ease;
}
.ingredients__item-weight-divider {
  color: var(--color-nature);
}
.ingredients__item-weight-text {
  color: var(--color-text-muted, #737373);
  font-weight: 500;
}
.ingredients__checkbox-wrapper {
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  user-select: none;
  margin-right: 14px;
}
.ingredients__checkbox-custom {
  width: 22px;
  height: 22px;
  border: 1px solid var(--color-rgba-0-0-0-0-15);
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--color-bg);
  transition: all 0.2s ease;
}
.ingredients__checkbox-custom svg {
  width: 12px;
  height: 12px;
  opacity: 0;
  transform: scale(0.5);
  transition: all 0.2s ease;
}
.ingredients__btn-add-all {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background-color: var(--color-text-main);
  color: var(--color-bg);
  border: none;
  border-radius: 30px;
  padding: 10px 20px;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.2s ease;
}
.ingredients__btn-add-all svg {
  width: 15px;
  height: 15px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.5;
}
.ingredients__btn-add-all:hover {
  background-color: var(--color-contrast);
}
.ingredients__btn-add-all.all-added {
  position: relative;
}
.ingredients__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 2.5rem;
  padding-top: 1.5rem;
  border-top: 1px solid var(--color-divider, rgba(17, 17, 17, 0.05));
}
.ingredients__status {
  font-size: 13px;
  font-weight: 500;
  color: var(--color-text-muted, #737373);
  cursor: pointer;
  border-bottom: 1px dashed var(--color-rgba-0-0-0-0-25);
  padding-bottom: 2px;
  transition: all 0.2s ease;
}
.ingredients__status span {
  font-weight: 700;
  color: var(--color-text-main, #111111);
  transition: color 0.2s ease;
}
.ingredients__status:hover {
  color: var(--color-text-secondary);
  border-bottom-color: var(--color-text-secondary);
}
.ingredients__status:hover span {
  color: var(--color-text-secondary);
}

input:checked + .ingredients__checkbox-custom {
  background-color: var(--color-text-secondary);
  border-color: transparent;
}
input:checked + .ingredients__checkbox-custom svg {
  opacity: 1;
  transform: scale(1);
}

/* Controls container */
.ingredients-controls {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-top: 24px;
  padding: 16px 20px;
  background-color: var(--color-surface);
  border: 1px solid var(--color-rgba-0-0-0-0-05);
  border-radius: 12px;
}
@media (max-width: 480px) {
  .ingredients-controls {
    position: relative;
  }
}

.ingredients-portions {
  display: flex;
  align-items: center;
  gap: 12px;
}
.ingredients-portions__label {
  font-size: 14px;
  font-weight: 700;
  color: var(--color-text-main, #111111);
}

.portions-counter {
  display: inline-flex;
  align-items: center;
  background-color: var(--color-bg);
  border: 1px solid var(--color-rgba-0-0-0-0-05);
  border-radius: 20px;
  padding: 4px;
  box-shadow: 0 2px 4px var(--color-rgba-0-0-0-0-05);
}
.portions-counter .portions-btn {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  border: none;
  background-color: var(--color-bg-light);
  color: var(--color-text-main);
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s ease;
}
.portions-counter .portions-btn:hover {
  background-color: var(--color-text-secondary);
  color: var(--color-bg);
}
.portions-counter .portions-btn:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}
.portions-counter .portions-btn:disabled:hover {
  background-color: var(--color-bg-light);
  color: var(--color-text-main);
}
.portions-counter .portions-val {
  min-width: 36px;
  text-align: center;
  font-size: 14px;
  font-weight: 700;
  color: var(--color-text-main);
  user-select: none;
}

.ingredients-actions {
  display: flex;
  align-items: center;
  gap: 16px;
}
.ingredients-actions .mode-toggle {
  display: flex;
  align-items: center;
}

/* Toggle Switch */
.mode-toggle__wrapper {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  user-select: none;
}
.mode-toggle__slider-track {
  position: relative;
  width: 44px;
  height: 24px;
  background-color: var(--color-divider);
  border-radius: 12px;
  transition: background-color 0.3s ease;
}
.mode-toggle__slider-track::after {
  content: "";
  position: absolute;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: var(--color-bg);
  top: 2px;
  left: 2px;
  box-shadow: 0 2px 4px var(--color-rgba-0-0-0-0-05);
  transition: transform 0.3s ease;
}
.mode-toggle {
  /* Input state */
}
.mode-toggle input[type=checkbox]:checked + .mode-toggle__slider-track {
  background-color: var(--color-text-secondary);
}
.mode-toggle input[type=checkbox]:checked + .mode-toggle__slider-track::after {
  transform: translateX(20px);
}
.mode-toggle__text {
  font-size: 13px;
  font-weight: 700;
  color: var(--color-text-main);
  transition: color 0.2s ease;
}

/* Modes styles */
.ingredients-block.mode-explore .ingredients__checkbox-wrapper {
  display: none !important;
}
.ingredients-block.mode-explore .ingredients__item-name-static {
  display: none !important;
}
.ingredients-block.mode-explore .ingredients__item-link {
  display: inline !important;
  cursor: pointer;
  color: var(--color-text-main);
  text-decoration: underline;
  text-decoration-style: dashed;
  text-decoration-color: var(--color-rgba-0-0-0-0-25);
}
.ingredients-block.mode-explore .ingredients__item-link:hover {
  color: var(--color-text-secondary);
  text-decoration-color: var(--color-text-secondary);
}
.ingredients-block.mode-explore .ingredients__item {
  cursor: default !important;
}
.ingredients-block.mode-explore .ingredients__item:hover {
  background-color: transparent !important;
}
.ingredients-block.mode-cook .ingredients__item-link {
  display: none !important;
}
.ingredients-block.mode-cook .ingredients__item-name-static {
  display: inline !important;
}
.ingredients-block.mode-cook .ingredients__item {
  cursor: pointer;
}
.ingredients-block.mode-cook .ingredients__item:hover {
  background-color: var(--color-rgba-0-0-0-0-05);
}

.ingredients__item-name {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
}

.ingredients__item-price {
  font-size: 13px;
  font-weight: 600;
  color: var(--color-text-muted);
  margin-left: 6px;
  white-space: nowrap;
}

.ingredients__item-info-wrap {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  min-width: 0;
  flex: 1;
}

.ingredients__item-nutrients {
  display: none;
}

.ingredients-block.mode-explore .ingredients__item-nutrients {
  display: flex;
  gap: 6px;
  margin-top: 6px;
  flex-wrap: wrap;
}

.ingredient-badge {
  display: inline-flex;
  align-items: center;
  font-size: 10px;
  font-weight: 700;
  padding: 2px 6px;
  border-radius: 4px;
  line-height: 1;
  letter-spacing: 0.02em;
}
.ingredient-badge--calories {
  background-color: var(--color-calories-bg);
  color: var(--color-calories);
}
.ingredient-badge--protein {
  background-color: var(--color-protein-bg);
  color: var(--color-protein);
}
.ingredient-badge--fats {
  background-color: var(--color-bg-cream);
  color: var(--color-fats);
}
.ingredient-badge--carbs {
  background-color: var(--color-carbs-bg);
  color: var(--color-carbs);
}

.ingredients {
  margin-bottom: 45px;
  position: relative;
}
.ingredients .article-title {
  margin-bottom: 12px;
}
@media (max-width: 767px) {
  .ingredients {
    margin-bottom: 40px;
  }
}
.ingredients .title {
  margin-bottom: 20px;
}
.ingredients__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  transition: 0.3s ease;
  position: relative;
  z-index: 10;
  padding: 10px 5px;
}
.ingredients__item_message {
  position: absolute;
  bottom: -2px;
  right: 5px;
  font-size: 10px;
}
@media (max-width: 767px) {
  .ingredients__item_message {
    right: 0;
  }
}
@media (max-width: 767px) {
  .ingredients__item {
    padding: 10px 0px;
  }
}
.ingredients__item_line {
  border-bottom: 1px dashed var(--color-divider);
  height: 12px;
  margin: 0px 10px;
  width: 100%;
}
.ingredients__item_col {
  display: flex;
  align-items: flex-end;
  white-space: nowrap;
}
.ingredients__item-name {
  white-space: nowrap;
  transition: 0.3s ease;
}
.ingredients__item-name br {
  display: none;
}
.ingredients__item:last-child {
  border-bottom: none;
  margin-bottom: 0;
}
.ingredients__item_product {
  display: flex;
  align-items: center;
}
.ingredients__item_count {
  font-weight: 500;
  transition: 0.3s ease;
}
.ingredients__item_size {
  font-size: 15px;
  letter-spacing: -1px;
  transition: 0.3s ease;
}
.ingredients__item-icon {
  position: relative;
  min-width: 24px;
  max-width: 24px;
  height: 24px;
  margin-right: 5px;
}

.recipe-meta {
  width: 100%;
  margin: 32px auto 32px;
}
.recipe-meta__list {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0;
  width: 100%;
  flex-wrap: nowrap;
}
.recipe-meta__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  position: relative;
  padding: 0 16px;
}
.recipe-meta__item:nth-child(1), .recipe-meta__item:nth-child(2) {
  flex: 0.9;
}
.recipe-meta__item:nth-child(3), .recipe-meta__item:nth-child(4) {
  flex: 1.1;
}
.recipe-meta__item:not(:last-child)::after {
  content: "";
  position: absolute;
  right: 0;
  top: 10%;
  height: 80%;
  width: 1px;
  background-color: var(--color-rgba-0-0-0-0-05);
}
@media (max-width: 767px) {
  .recipe-meta__item {
    padding: 0 3px;
  }
}
.recipe-meta__header {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  margin-bottom: 8px;
}
@media (max-width: 767px) {
  .recipe-meta__header {
    gap: 4px;
    margin-bottom: 6px;
  }
}
.recipe-meta__icon {
  width: 16px;
  height: 16px;
  color: var(--color-text-secondary, #99655e);
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .recipe-meta__icon {
    width: 12px;
    height: 12px;
  }
}
.recipe-meta__label {
  font-family: var(--font-header, inherit);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--color-nature);
  line-height: 1;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .recipe-meta__label {
    font-size: 7px;
    letter-spacing: 0.08em;
  }
}
.recipe-meta__value {
  font-size: 22px;
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -0.02em;
  word-break: break-word;
}
@media (max-width: 767px) {
  .recipe-meta__value {
    font-size: 16px;
  }
}

.nutr {
  position: relative;
  margin-bottom: 2.5rem;
}
@media (max-width: 767px) {
  .nutr {
    margin-bottom: 2rem;
  }
}
.nutr-header-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 16px;
  width: 100%;
}
.nutr-header__tag {
  font-size: 11px;
  font-weight: 700;
  color: var(--color-text-secondary);
  letter-spacing: 1.5px;
  text-transform: uppercase;
  margin-bottom: 4px;
  display: block;
}
.nutr-header__title {
  font-family: var(--font-family-secondary);
  font-size: 24px;
  font-weight: 800;
  color: var(--color-text-main);
  margin-bottom: 4px;
  line-height: 1.2;
}
.nutr-header__title span {
  color: var(--color-text-secondary);
  font-style: italic;
  font-weight: 400;
}
.nutr-header__info {
  font-size: 11px;
  color: var(--color-text-muted);
  display: block;
  font-weight: 300;
  margin-top: 8px;
}
.nutr__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  overflow: hidden;
  padding-bottom: 0;
  margin: 12px 0;
}
.nutr__grid-col {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 24px 16px;
  text-align: center;
  position: relative;
}
@media (max-width: 767px) {
  .nutr__grid-col {
    padding: 20px 12px;
  }
}
.nutr__grid-col:not(:last-child)::after {
  content: "";
  position: absolute;
  right: 0;
  top: 15%;
  height: 70%;
  width: 1px;
  background-color: var(--color-rgba-0-0-0-0-05);
}
@media (max-width: 767px) {
  .nutr__grid-col:not(:last-child)::after {
    display: none;
  }
}
.nutr__grid-val {
  font-family: var(--font-family-main, "Inter", sans-serif);
  font-size: 38px;
  font-weight: 800;
  color: var(--color-text-main, #111111);
  line-height: 1;
  display: flex;
  align-items: baseline;
  justify-content: center;
}
@media (max-width: 767px) {
  .nutr__grid-val {
    font-size: 30px;
  }
}
.nutr__grid-val sup {
  font-size: 16px;
  font-weight: 700;
  top: -0.4em;
  margin-left: 2px;
  color: var(--color-text-main, #111111);
}
@media (max-width: 767px) {
  .nutr__grid-val sup {
    font-size: 13px;
  }
}
.nutr__grid-label {
  font-family: var(--font-family-main, "Inter", sans-serif);
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--color-text-muted, #7c7a76);
  margin-top: 8px;
}
@media (max-width: 767px) {
  .nutr__grid-label {
    font-size: 9px;
    margin-top: 6px;
  }
}

.faq {
  padding: 40px 0 0 0;
  border-top: 1px solid var(--color-divider);
  position: relative;
}

.faq__heading {
  max-width: 760px;
  margin-bottom: 1.5rem;
}
.faq__heading .text-accent {
  color: var(--color-danger);
}

.faq__eyebrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 0.75rem;
  padding: 0.3rem 0.65rem;
  border: 1px solid var(--color-divider);
  border-radius: 999px;
  background: var(--color-bg);
  color: var(--color-text-muted);
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.08em;
  font-weight: 600;
  text-transform: uppercase;
}

.faq__title.article-title {
  margin-bottom: 0.65rem;
  text-transform: uppercase;
  font-weight: 800;
}

.faq__intro {
  color: var(--color-text-muted);
  font-size: 16px;
  line-height: 1.55;
}

.faq__list {
  display: grid;
}

.faq__item {
  border-bottom: 1px solid var(--color-divider);
  overflow: hidden;
  transition: border-color 0.24s ease, box-shadow 0.24s ease, transform 0.24s ease;
  padding: 18px 0px;
}
.faq__question {
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  font-size: 18px;
  line-height: 1.35;
  font-weight: 600;
  cursor: pointer;
  color: var(--color-text-main);
  font-family: var(--font-family-main);
}
.faq__question::-webkit-details-marker {
  display: none;
}
.faq__question:focus-visible {
  outline: 2px solid var(--color-accent);
  outline-offset: -2px;
}

.faq__question-text {
  flex: 1 1 auto;
}

.faq__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-text-main);
  flex-shrink: 0;
}
.faq__icon svg {
  transition: transform 0.3s ease;
}

.faq__item[open] .faq__icon svg {
  transform: rotate(180deg);
}

.faq__answer {
  padding: 8px 0 20px 0;
  color: var(--color-text-muted);
  font-size: 16px;
}
.faq__answer p {
  font-weight: 300;
}
.faq__answer p span {
  font-weight: 300;
}
.faq__answer p:last-child {
  margin-bottom: 0;
}

@media (max-width: 767px) {
  .faq__eyebrow {
    margin-bottom: 0.65rem;
    font-size: 11px;
  }
  .faq__intro {
    font-size: 14px;
  }
  .faq__icon {
    width: 20px;
    height: 20px;
    flex-basis: 20px;
  }
}
.chef-tips {
  margin: 3rem 0;
  padding: 1.5rem;
  background: var(--color-surface);
  border: 1px solid var(--color-divider);
  border-radius: 2px;
}
.chef-tips__head {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-bottom: 2rem;
}
.chef-tips__icon {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: var(--color-accent);
  color: var(--color-bg);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 40px;
}
.chef-tips__icon svg {
  width: 22px;
  height: 22px;
}
.chef-tips__title {
  margin: 0;
  font-size: 1.375rem;
  line-height: 1.75rem;
  font-family: var(--font-family-secondary);
  font-style: italic;
}
.chef-tips__body {
  color: var(--color-text-main);
}
.chef-tips__body h3 {
  font-size: 16px;
  color: var(--color-accent);
  margin-bottom: 5px;
}

.author-block {
  position: relative;
  overflow: hidden;
  width: 100%;
}
@media (max-width: 767px) {
  .author-block {
    padding: 12px 0 16px;
  }
}
.author-block__subtitle {
  margin-bottom: 12px;
  display: inline-block;
  font-size: 18px;
  font-family: "Lora", serif;
  font-weight: 500;
}
.author-block__wrap {
  display: flex;
  align-items: flex-start;
  width: 100%;
  padding: 20px 16px;
  border-radius: 24px;
  border: 1px solid var(--color-divider);
  background: var(--color-bg-light);
}
@media (max-width: 767px) {
  .author-block__wrap {
    padding: 20px 8px;
    border-radius: 16px;
  }
}
.author-block-photo {
  min-width: 160px;
  max-width: 160px;
  height: 160px;
  border-radius: 100%;
  position: relative;
  z-index: 10;
  padding: 8px;
  background: var(--color-bg);
  border: 1px solid var(--color-divider);
}
.author-block-photo img {
  position: relative;
  border-radius: 100%;
}
@media (max-width: 767px) {
  .author-block-photo {
    min-width: 112px;
    max-width: 112px;
    height: 112px;
    padding: 5px;
  }
}
.author-block__content {
  width: 100%;
  padding-left: 16px;
  padding-top: 6px;
}
@media (max-width: 1199px) {
  .author-block__content {
    padding-left: 8px;
    padding-top: 4px;
  }
}
@media (max-width: 767px) {
  .author-block__content .iAuthor__socials {
    display: none;
  }
}
.author-block-name {
  font-size: 24px;
  display: inline-block;
  font-weight: 500;
  line-height: 1.1;
}
@media (max-width: 767px) {
  .author-block-name {
    font-size: 20px;
    margin-bottom: 2px;
  }
}
.author-block .short-desc {
  margin-bottom: 12px;
  max-width: 600px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 5;
}
@media (max-width: 767px) {
  .author-block .short-desc {
    font-size: 11px;
  }
}
.author-block .iAuthor__socials {
  position: relative;
}
@media (max-width: 767px) {
  .author-block .iAuthor__socials {
    gap: 6px;
  }
}
.author-block .iAuthor__socials_item {
  position: relative;
}
@media (max-width: 767px) {
  .author-block .iAuthor__socials_item svg {
    width: 28px;
  }
}
.author-block-bio {
  position: relative;
  color: var(--color-surface);
  font-size: 14px;
  font-weight: 300;
  line-height: 1.6;
  margin-bottom: 5px;
}
@media (max-width: 767px) {
  .author-block-bio {
    font-size: 13px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 3;
  }
}
.author-block .btn svg {
  transform: rotate(-90deg);
}
.author-block__left {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}
.author-block__left .iAuthor__socials {
  display: none;
}
@media (max-width: 767px) {
  .author-block__left .iAuthor__socials {
    display: flex;
  }
}
.author-block__row {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 6px;
}

.ntr-toggle-btn {
  cursor: pointer;
  transition: all 0.3s ease;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.ntr-toggle-btn__icon {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  border: 1.5px solid var(--color-rgba-0-0-0-0-05);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  color: var(--color-text-main, #111111);
  background-color: transparent;
  flex-shrink: 0;
}
.ntr-toggle-btn__icon svg {
  width: 16px;
  height: 16px;
  stroke-width: 2.5;
}
.ntr-toggle-btn:hover .ntr-toggle-btn__icon {
  border-color: var(--color-text-secondary);
  background-color: var(--color-text-secondary);
  color: var(--color-bg);
}
.ntr-toggle-btn.active .ntr-toggle-btn__icon {
  border-color: var(--color-text-secondary);
  background-color: var(--color-text-secondary);
  color: var(--color-bg);
}

.ntr-full {
  width: 100%;
  padding-top: 0.5rem;
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}
.ntr-full.ntr-full--cols {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 32px;
}
.ntr-full.ntr-full--cols .ntr-col {
  flex: 1;
  min-width: 280px;
}
.ntr-full__section {
  margin-bottom: 0;
}
.ntr-full__section .title {
  font-size: 18px;
  margin-bottom: 12px;
}
.ntr-full__section-tag,
.ntr-full .ntr-group-title {
  display: block;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: 16px;
  color: var(--color-text-main);
}
.ntr-full__grid,
.ntr-full .ntr-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px 24px;
}
@media (max-width: 767px) {
  .ntr-full__grid,
  .ntr-full .ntr-list {
    grid-template-columns: 1fr;
    gap: 12px;
  }
}

.ntr-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 0;
  border-bottom: 1px solid var(--color-divider, rgba(17, 17, 17, 0.06));
  width: 100%;
  transition: background-color 0.2s ease;
}
.ntr-item:last-child {
  border-bottom: none;
}

.ntr-badge {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  font-family: var(--font-family-main, "Inter", sans-serif);
  font-size: 12px;
  font-weight: 700;
  color: var(--color-bg);
  text-transform: uppercase;
}

.ntr-body {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.ntr-top {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  line-height: 1.2;
}

.ntr-name {
  font-family: var(--font-family-main, "Inter", sans-serif);
  font-size: 12px;
  font-weight: 700;
  color: var(--color-text-main, #111111);
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

.ntr-val {
  font-family: var(--font-family-main, "Inter", sans-serif);
  font-size: 13px;
  font-weight: 700;
  color: var(--color-text-main, #111111);
}
.ntr-val .ntr-unit {
  font-size: 11px;
  font-weight: 500;
  color: var(--color-text-muted, #7c7a76);
  margin-left: 2px;
  text-transform: none;
}

.ntr-bar {
  height: 6px;
  background-color: var(--color-divider, rgba(17, 17, 17, 0.04));
  border-radius: 4px;
  overflow: hidden;
  position: relative;
  width: 100%;
}
.ntr-bar-fill {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  border-radius: 4px;
  transition: width 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

.recipe-categories {
  position: relative;
  padding-bottom: 104px;
  padding-top: 0;
}
.recipe-categories .container {
  max-width: 1100px;
}
.recipe-categories .wrap {
  position: relative;
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 4rem;
}

.category-block {
  position: relative;
  display: grid;
  gap: 24px;
}
.category-block__head {
  display: grid;
  gap: 6px;
}
@media (max-width: 767px) {
  .category-block__head .short-desc {
    max-width: 320px;
  }
}
.category-block-content {
  position: relative;
}
.category-block a.titleBlock {
  transition: 0.3s ease;
}
@media (min-width: 1025px) {
  .category-block a.titleBlock:hover {
    text-decoration: underline;
  }
}
.category-block .titleBlock {
  position: relative;
  display: flex;
  align-items: center;
  margin-bottom: 16px;
}
.category-block .titleBlock img {
  display: block;
  width: 28px;
  height: auto;
  margin-right: 6px;
}
.category-block .category-title {
  font-weight: 500;
  font-size: 24px;
  z-index: 3;
  transition: 0.3s;
  display: flex;
  align-items: center;
  font-family: var(--font-family-secondary);
}
.category-block .category-title p {
  opacity: 0.75;
  display: block;
  margin-left: 5px;
  font-size: 12px;
  line-height: 1;
}

.category-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
}
@media (max-width: 767px) {
  .category-list {
    grid-template-columns: repeat(1, 1fr);
    gap: 16px;
  }
}

.category-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 4px;
  padding: 12px 0;
  background-position: center;
  transition: 0.3s ease;
  position: relative;
  overflow: hidden;
  height: auto;
  border-bottom: 1px solid var(--color-divider);
  cursor: pointer;
}
@media (max-width: 767px) {
  .category-item {
    padding: 8px 0;
  }
}
@media (min-width: 1025px) {
  .category-item:hover {
    border-bottom-color: var(--color-accent);
  }
  .category-item:hover .category-item__title {
    color: var(--color-accent);
  }
  .category-item:hover::after {
    background-color: var(--color-rgba-0-0-0-0-5);
  }
}
.category-item__title {
  font-size: 16px;
  display: grid;
  gap: 4px;
  width: 100%;
  line-height: 1.1;
  position: relative;
  z-index: 3;
  width: fit-content;
  line-height: 1;
  transition: 0.3s ease;
}
.category-item p {
  display: block;
  line-height: 1.2;
  font-size: 13px;
  font-weight: 300;
  color: var(--color-text-muted);
}

.recipes {
  position: relative;
  padding-bottom: 100px;
  padding-top: 0px;
  overflow: visible;
}
.recipes #recipes-content {
  width: 100%;
}
.recipes .wrapper {
  display: flex;
  align-items: flex-start;
}
.recipes .wrap {
  position: relative;
}
.recipes .filter-btn {
  border: none;
  background: var(--color-accent);
  color: var(--color-bg);
  height: 34px;
  padding: 0 14px;
}

.recipes-cards-wrap {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 32px 24px;
}
@media (max-width: 991px) {
  .recipes-cards-wrap {
    grid-template-columns: repeat(3, 1fr) !important;
  }
}
@media (max-width: 767px) {
  .recipes-cards-wrap {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 32px 12px;
  }
}

.page-template-recipes .recipes-cards-wrap {
  grid-template-columns: repeat(4, 1fr);
}

.s-taxonomy-intro {
  padding: 48px 0;
  border-bottom: 1px solid var(--color-divider, #eaeaea);
}
@media (max-width: 767px) {
  .s-taxonomy-intro {
    padding: 36px 0;
  }
}

.s-taxonomy-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 40px;
  background-color: var(--color-bg);
  overflow: hidden;
}
.s-taxonomy-header__left {
  flex: 1;
}
.s-taxonomy-header__left .breadcrumbs {
  margin-bottom: 16px;
}
.s-taxonomy-header__title {
  font-family: inherit;
  font-size: 56px;
  font-weight: 800;
  line-height: 1.1;
  color: var(--color-text-main);
  letter-spacing: -1.5px;
  margin: 0 0 16px 0;
}
@media (max-width: 991px) {
  .s-taxonomy-header__title {
    font-size: 46px;
  }
}
@media (max-width: 767px) {
  .s-taxonomy-header__title {
    font-size: 34px;
    letter-spacing: -0.5px;
    margin-bottom: 12px;
  }
}
.s-taxonomy-header__desc {
  font-size: 15px;
  line-height: 1.6;
  max-width: 680px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-top: 8px;
}
.s-taxonomy-header__desc p {
  margin-bottom: 0;
  font-size: inherit;
  color: inherit;
  margin: 0;
  font-size: 16px;
  line-height: 1.6;
  color: var(--color-nature);
  font-weight: 300;
}
@media (max-width: 767px) {
  .s-taxonomy-header__desc p {
    font-size: 15px;
  }
}
.s-taxonomy-header__right {
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .s-taxonomy-header__right {
    position: absolute;
    right: 12px;
    top: -24px;
    display: none;
  }
}
.s-taxonomy-header__count-box {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  text-align: right;
  line-height: 1;
}
.s-taxonomy-header__count-number {
  font-size: 70px;
  font-weight: 700;
  color: var(--color-text-secondary);
  letter-spacing: -2px;
  font-family: var(--font-header);
}
@media (max-width: 767px) {
  .s-taxonomy-header__count-number {
    font-size: 46px;
  }
}
.s-taxonomy-header__count-label {
  font-size: 12px;
  font-weight: 600;
  color: var(--color-nature);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.s-taxonomy {
  padding-top: 0px;
  padding-bottom: 96px;
}
@media (max-width: 767px) {
  .s-taxonomy {
    padding-bottom: 60px;
  }
}

.s-taxonomy-filters {
  position: relative;
  margin-top: 32px;
}
.s-taxonomy-filters__title {
  display: block;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-bottom: 12px;
}
.s-taxonomy-filters__wrap {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 10px;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  white-space: nowrap;
  flex-wrap: nowrap;
  scrollbar-width: none;
  width: calc(100% + 24px);
  padding-right: 24px;
}
@media (max-width: 767px) {
  .s-taxonomy-filters__wrap {
    gap: 8px;
  }
}
.s-taxonomy-filters-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  font-size: 14px;
  white-space: nowrap;
  line-height: 1;
  border-radius: 99px;
  padding: 0 18px;
  min-height: 40px;
  font-weight: 500;
  letter-spacing: 0;
  background: var(--color-bg);
  border: 1px solid var(--color-rgba-0-0-0-0-05);
  text-decoration: none;
  box-shadow: none;
  gap: 10px;
}
.s-taxonomy-filters-link.is-active {
  background: var(--color-dark);
  border-color: var(--color-dark);
  color: var(--color-bg);
  box-shadow: none;
}
.s-taxonomy-filters-link.is-active .s-taxonomy-filters-count {
  color: var(--color-rgba-255-255-255-0-5);
}
.s-taxonomy-filters-link:hover:not(.is-active) {
  background: var(--color-rgba-0-0-0-0-05);
  border-color: var(--color-rgba-0-0-0-0-15);
  color: var(--color-text-main);
  box-shadow: none;
}
.s-taxonomy-filters-count {
  color: var(--color-nature);
  transition: color 0.2s ease;
  font-size: 11px;
  font-weight: 600;
}

.s-taxonomy-meta-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 24px;
  padding-bottom: 24px;
  border-bottom: 1px solid var(--color-rgba-0-0-0-0-05);
  margin-bottom: 32px;
}
@media (max-width: 767px) {
  .s-taxonomy-meta-row {
    flex-direction: row;
    align-items: center;
    gap: 12px;
    padding-top: 16px;
    padding-bottom: 20px;
    margin-bottom: 24px;
  }
}
.s-taxonomy-meta-row__count {
  font-size: 13px;
  color: var(--color-nature);
  font-weight: 500;
}
.s-taxonomy-meta-row__count strong {
  color: var(--color-text-main);
  font-weight: 700;
}
.s-taxonomy-meta-row__sort {
  display: flex;
  align-items: center;
  gap: 12px;
  position: relative;
}

.s-taxonomy-sort-dropdown {
  position: relative;
}
.s-taxonomy-sort-dropdown.is-open .s-taxonomy-sort-list {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.s-taxonomy-sort-dropdown.is-open .s-taxonomy-sort-btn {
  border-color: var(--color-rgba-0-0-0-0-15);
}
.s-taxonomy-sort-dropdown.is-open .s-taxonomy-sort-icon {
  transform: rotate(180deg);
}

.s-taxonomy-sort-title {
  font-size: 10px;
  font-weight: 700;
  color: var(--color-nature);
  text-transform: uppercase;
  letter-spacing: 2px;
  line-height: 1;
}
@media (max-width: 767px) {
  .s-taxonomy-sort-title {
    display: none;
  }
}

.s-taxonomy-sort-btn {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  background-color: var(--color-bg);
  border: 1px solid var(--color-rgba-0-0-0-0-05);
  border-radius: 10px;
  padding: 8px 16px;
  font-size: 15px;
  font-weight: 500;
  cursor: pointer;
  outline: none;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  min-height: 38px;
  color: var(--color-text-main);
}
.s-taxonomy-sort-btn:hover {
  border-color: var(--color-rgba-0-0-0-0-15);
}
@media (max-width: 767px) {
  .s-taxonomy-sort-btn {
    padding: 6px 12px;
    font-size: 13px;
  }
}

.s-taxonomy-sort-icon {
  transition: transform 0.2s ease;
  display: block;
  width: 15px;
  height: 15px;
}

.s-taxonomy-sort-list {
  position: absolute;
  top: 100%;
  right: 0;
  margin-top: 8px;
  padding: 6px 0;
  background-color: var(--color-bg);
  border: 1px solid var(--color-rgba-0-0-0-0-05);
  border-radius: 12px;
  box-shadow: 0 10px 30px var(--color-rgba-0-0-0-0-05);
  z-index: 100;
  min-width: 180px;
  list-style: none;
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.s-taxonomy-sort-list li {
  padding: 8px 16px;
  font-size: 14px;
  color: var(--color-text-muted);
  cursor: pointer;
  transition: all 0.15s ease;
}
.s-taxonomy-sort-list li.active {
  color: var(--color-text-secondary);
  font-weight: 600;
}
.s-taxonomy-sort-list li:hover:not(.active) {
  background-color: var(--color-rgba-0-0-0-0-05);
  color: var(--color-text-main);
}

.load-more-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 56px;
  margin-bottom: 24px;
}
.load-more-wrapper .load-more-progress {
  width: 260px;
  height: 4px;
  background-color: var(--color-divider);
  border-radius: 99px;
  overflow: hidden;
  margin-bottom: 12px;
}
.load-more-wrapper .load-more-progress-bar {
  height: 100%;
  background-color: var(--color-text-secondary);
  border-radius: 99px;
  transition: width 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.load-more-wrapper .load-more-count {
  font-size: 13px;
  color: var(--color-nature);
  font-weight: 500;
  margin-bottom: 24px;
  letter-spacing: 0.5px;
}
.load-more-wrapper .load-more-finished-text {
  font-size: 16px;
  font-weight: 600;
  color: var(--color-contrast);
  letter-spacing: -0.2px;
  line-height: 1.4;
}

.s-taxonomy-content {
  position: relative;
  padding: 60px 0;
}

.journal-cards-wrap {
  position: relative;
  display: grid;
}

.rCategories {
  position: relative;
}
.rCategories .container {
  max-width: 1000px;
}
.rCategories h2.title {
  margin-bottom: 60px;
}
.rCategories__col {
  margin-bottom: 50px;
  background-color: var(--color-rgba-255-255-255-0-5);
  border-radius: 24px;
  padding: 24px 24px 0 24px;
}
.rCategories .wrap {
  display: flex;
  flex-wrap: wrap;
  margin-right: -30px;
  margin-top: 25px;
}
.rCategories__item {
  display: flex;
  flex-direction: column;
  flex-basis: calc(25% - 30px);
  margin-right: 30px;
  margin-bottom: 50px;
}
@media (max-width: 991px) {
  .rCategories__item {
    flex-basis: calc(25% - 30px);
  }
}
@media (max-width: 767px) {
  .rCategories__item {
    flex-basis: calc(100% - 30px);
    margin-bottom: 15px;
  }
}
.rCategories__card {
  transition: 0.3s ease;
  position: relative;
  overflow: hidden;
  display: block;
  padding: 10px 0;
  border-bottom: 1px solid var(--color-divider);
  letter-spacing: 0.5px;
  display: flex;
  align-items: center;
}
.rCategories__card-icon {
  display: block;
  width: 14px;
  height: 14px;
  margin-right: 5px;
}
.rCategories__card-title {
  font-weight: 700;
  font-size: 14px;
  line-height: 1.2;
  z-index: 3;
  transition: 0.3s;
  text-transform: uppercase;
}
.rCategories__sublist {
  margin-top: 15px;
}
.rCategories__subcard {
  margin-bottom: 16px;
  width: fit-content;
  display: block;
}
.rCategories__subcard:last-child {
  margin-bottom: 0;
}
.rCategories__subcard-title {
  font-size: 12px;
  color: var(--color-surface);
  text-transform: uppercase;
  padding-left: 10px;
  position: relative;
  line-height: 1;
  transition: 0.3s ease;
  width: fit-content;
}
.rCategories__subcard-title::after {
  content: "";
  position: absolute;
  left: 0;
  top: 49%;
  transform: translateY(-50%);
  width: 3px;
  height: 3px;
  background-color: var(--color-surface);
  border-radius: 100%;
}

.otherRecipes {
  position: relative;
  overflow: hidden;
  padding: 40px 0;
}
.otherRecipes__top {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
.otherRecipes h2.title {
  margin-bottom: 8px;
}
.otherRecipes-subtitle {
  color: var(--color-text-muted);
  line-height: 1.24;
}
.otherRecipes-all {
  display: flex;
  align-items: center;
  color: var(--color-nature);
  font-size: 12px;
  text-transform: uppercase;
  transition: 0.3s ease;
}
@media (max-width: 767px) {
  .otherRecipes-all {
    display: none;
  }
}
.otherRecipes-all.mob-link {
  display: none;
}
@media (max-width: 767px) {
  .otherRecipes-all.mob-link {
    display: flex;
  }
}
.otherRecipes-all-icon {
  width: 6px;
  height: 6px;
  border-top: 1px solid var(--color-nature);
  border-right: 1px solid var(--color-nature);
  transform: rotate(45deg);
  margin-left: 3px;
  transition: 0.3s ease;
}
.otherRecipes-all:hover {
  color: var(--color-nature);
}
.otherRecipes-all:hover .otherRecipes-all-icon {
  border-top: 1px solid var(--color-nature);
  border-right: 1px solid var(--color-nature);
}
.otherRecipes .wrap {
  margin-top: 20px;
}

.page-template-front-page .otherRecipes {
  padding: 30px 0;
}
.page-template-front-page .otherRecipes .wrap {
  display: flex;
  flex-wrap: wrap;
  position: relative;
  margin-right: -15px;
}

.recipes-magazine .magazine__grid--category {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
@media (max-width: 991px) {
  .recipes-magazine .magazine__grid--category {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 767px) {
  .recipes-magazine .magazine__grid--category {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px 16px;
  }
}

.recipes-filters-bar {
  display: flex;
  flex-direction: column;
  gap: 16px;
  background-color: var(--color-bg-warm);
  border: 1px solid var(--color-divider);
  border-radius: 20px;
  padding: 20px;
  margin-top: 40px;
  margin-bottom: 32px;
}
.recipes-filters-bar__top {
  display: flex;
  gap: 12px;
  align-items: center;
  width: 100%;
}
@media (max-width: 767px) {
  .recipes-filters-bar__top {
    flex-direction: column;
    gap: 12px;
  }
}
.recipes-filters-bar__search {
  position: relative;
  flex: 1;
  width: 100%;
}
.recipes-filters-bar__search input {
  width: 100%;
  height: 44px;
  padding: 0 16px 0 42px;
  border: 1px solid var(--color-rgba-0-0-0-0-05);
  border-radius: 12px;
  background: var(--color-rgba-255-255-255-0-5);
  font-size: 14px;
  color: var(--color-text-main);
  outline: none;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.recipes-filters-bar__search input:hover {
  background: var(--color-bg);
  border-color: var(--color-rgba-0-0-0-0-15);
}
.recipes-filters-bar__search input:focus {
  background: var(--color-bg);
  border-color: var(--color-text-secondary);
  box-shadow: 0 4px 12px var(--color-rgba-0-0-0-0-05);
}
.recipes-filters-bar__search .search-icon {
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
  color: var(--color-nature);
  pointer-events: none;
}
.recipes-filters-bar__mobile-actions {
  display: contents;
}
@media (max-width: 767px) {
  .recipes-filters-bar__mobile-actions {
    display: flex;
    gap: 8px;
    width: 100%;
  }
}
.recipes-filters-bar__mobile-filter-btn {
  display: none;
}
@media (max-width: 767px) {
  .recipes-filters-bar__mobile-filter-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background-color: var(--color-rgba-255-255-255-0-5);
    border: 1px solid var(--color-rgba-0-0-0-0-05);
    border-radius: 10px;
    padding: 6px 12px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    color: var(--color-text-main);
    height: 38px;
    box-sizing: border-box;
    flex: 1;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  }
  .recipes-filters-bar__mobile-filter-btn:hover {
    background-color: var(--color-bg);
    border-color: var(--color-rgba-0-0-0-0-15);
  }
  .recipes-filters-bar__mobile-filter-btn svg {
    stroke-width: 2;
    width: 16px;
    height: 16px;
  }
}
.recipes-filters-bar__sort {
  width: 180px;
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .recipes-filters-bar__sort {
    width: 100%;
    flex: 1;
  }
}
.recipes-filters-bar__dropdowns {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 10px;
  width: 100%;
}
@media (max-width: 1199px) {
  .recipes-filters-bar__dropdowns {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 767px) {
  .recipes-filters-bar__dropdowns {
    display: none !important;
  }
}
.recipes-filters-bar .custom-filter-dropdown {
  display: block !important;
  width: 100% !important;
}
.recipes-filters-bar .custom-filter-dropdown .title.fz-h4 {
  display: none;
}
.recipes-filters-bar .custom-filter-dropdown .s-taxonomy-sort-btn {
  display: flex !important;
  justify-content: space-between !important;
  width: 100% !important;
  padding: 8px 16px !important;
  box-sizing: border-box !important;
  background-color: var(--color-rgba-255-255-255-0-5) !important;
  border: 1px solid var(--color-rgba-0-0-0-0-05) !important;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
}
.recipes-filters-bar .custom-filter-dropdown .s-taxonomy-sort-btn:hover {
  background-color: var(--color-bg) !important;
  border-color: var(--color-rgba-0-0-0-0-15) !important;
}
@media (max-width: 767px) {
  .recipes-filters-bar .custom-filter-dropdown .s-taxonomy-sort-btn {
    padding: 6px 12px !important;
  }
}
.recipes-filters-bar .custom-filter-dropdown .s-taxonomy-sort-label {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: left;
  flex-grow: 1;
  padding-right: 8px;
}
.recipes-filters-bar .custom-filter-dropdown .s-taxonomy-sort-list {
  left: 0;
  right: auto;
  min-width: 100%;
  box-sizing: border-box;
  max-height: 250px;
  overflow-y: auto;
}
.recipes-filters-bar .custom-filter-dropdown.is-open .s-taxonomy-sort-btn {
  background-color: var(--color-bg) !important;
  border-color: var(--color-rgba-0-0-0-0-15) !important;
}
.recipes-filters-bar .custom-filter-dropdown.is-active .s-taxonomy-sort-btn {
  background-color: var(--color-bg-cream) !important;
  border-color: var(--color-accent, #c4622d) !important;
  color: var(--color-text-secondary);
}
.recipes-filters-bar .custom-filter-dropdown.is-active .s-taxonomy-sort-btn .s-taxonomy-sort-icon {
  color: var(--color-text-secondary);
}
.recipes-filters-bar__bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  border-top: 1px dashed var(--color-rgba-0-0-0-0-05);
  padding-top: 14px;
  margin-top: 4px;
  width: 100%;
}
@media (max-width: 767px) {
  .recipes-filters-bar__bottom {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
}
.recipes-filters-bar__active-tags {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  font-size: 12px;
  color: var(--color-text-muted-alt);
}
.recipes-filters-bar__active-tags.is-hidden {
  display: none;
}
.recipes-filters-bar__count {
  font-size: 13px;
  color: var(--color-nature);
  font-weight: 500;
  margin-left: auto;
}
@media (max-width: 767px) {
  .recipes-filters-bar__count {
    margin-left: 0;
  }
}
.recipes-filters-bar__count strong {
  color: var(--color-text-main);
  font-weight: 700;
}
.recipes-filters-bar .active-tag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: var(--color-divider);
  color: var(--color-text-main);
  border-radius: 6px;
  padding: 3px 8px;
  font-size: 11px;
  font-weight: 500;
  transition: all 0.2s ease;
}
.recipes-filters-bar .active-tag:hover {
  background: var(--color-divider);
}
.recipes-filters-bar .active-tag button {
  background: none;
  border: none;
  padding: 0;
  color: var(--color-nature);
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 12px;
  height: 12px;
  font-size: 12px;
  font-weight: bold;
}
.recipes-filters-bar .active-tag button:hover {
  color: var(--color-accent);
}
.recipes-filters-bar .clear-all-btn {
  background: none;
  border: none;
  padding: 0 4px;
  color: var(--color-text-secondary);
  font-weight: 600;
  font-size: 11px;
  cursor: pointer;
  text-decoration: underline;
}
.recipes-filters-bar .clear-all-btn:hover {
  color: var(--color-calories);
}

#drawer-filter #drawer-filter-content {
  display: flex;
  flex-direction: column;
}
#drawer-filter #drawer-filter-content .recipes-filters-bar__dropdowns {
  display: flex !important;
  flex-direction: column !important;
  gap: 24px !important;
  width: 100% !important;
}
#drawer-filter #drawer-filter-content .recipes-filters-bar__dropdowns .custom-filter-dropdown {
  width: 100% !important;
  margin-bottom: 32px;
  padding-bottom: 32px;
  border-bottom: 2px dashed var(--color-divider);
}
#drawer-filter #drawer-filter-content .recipes-filters-bar__dropdowns .custom-filter-dropdown .title.fz-h4 {
  display: block !important;
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 16px;
  color: var(--color-text-main);
  font-family: var(--font-family-secondary);
}
#drawer-filter #drawer-filter-content .recipes-filters-bar__dropdowns .custom-filter-dropdown .s-taxonomy-sort-btn {
  display: none !important;
}
#drawer-filter #drawer-filter-content .recipes-filters-bar__dropdowns .custom-filter-dropdown .s-taxonomy-sort-list {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  position: static !important;
  width: 100% !important;
  background: none !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  max-height: none !important;
  overflow: visible !important;
}
#drawer-filter #drawer-filter-content .recipes-filters-bar__dropdowns .custom-filter-dropdown .s-taxonomy-sort-list li {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  padding: 8px 14px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: var(--color-text-main) !important;
  background-color: var(--color-bg) !important;
  border: 1px solid var(--color-rgba-0-0-0-0-05) !important;
  border-radius: 99px !important;
  cursor: pointer !important;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
  line-height: 1.2 !important;
}
#drawer-filter #drawer-filter-content .recipes-filters-bar__dropdowns .custom-filter-dropdown .s-taxonomy-sort-list li .term-count {
  color: var(--color-nature);
  font-size: 11px;
  font-weight: 400;
  transition: color 0.2s ease;
}
#drawer-filter #drawer-filter-content .recipes-filters-bar__dropdowns .custom-filter-dropdown .s-taxonomy-sort-list li.active {
  background-color: var(--color-accent, #c4622d) !important;
  border-color: var(--color-accent, #c4622d) !important;
  color: var(--color-bg) !important;
}
#drawer-filter #drawer-filter-content .recipes-filters-bar__dropdowns .custom-filter-dropdown .s-taxonomy-sort-list li.active .term-count {
  color: var(--color-rgba-255-255-255-0-8) !important;
}
#drawer-filter #drawer-filter-content .recipes-filters-bar__dropdowns .custom-filter-dropdown .s-taxonomy-sort-list li:hover:not(.active) {
  background-color: var(--color-rgba-0-0-0-0-05) !important;
  border-color: var(--color-rgba-0-0-0-0-15) !important;
}

.cExpert {
  position: relative;
  background-color: var(--color-bg);
  border: 1.5px solid var(--color-rgba-0-0-0-0-05);
  border-radius: 16px;
  padding: 40px 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 16px;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  box-sizing: border-box;
}
@media (min-width: 767px) {
  .cExpert:hover {
    border-color: var(--color-accent);
    box-shadow: 0 12px 28px var(--color-rgba-0-0-0-0-05);
  }
  .cExpert:hover .cExpert__name a {
    color: var(--color-text-secondary);
  }
  .cExpert:hover .cExpert__badge {
    background-color: var(--color-text-secondary);
    border-color: var(--color-text-secondary);
    color: var(--color-bg);
  }
}
.cExpert__top-badge {
  position: absolute;
  top: 16px;
  right: 16px;
  background-color: var(--color-carbs-bg);
  color: var(--color-text-secondary);
  font-size: 8px;
  font-weight: 700;
  padding: 3px 8px;
  border-radius: 4px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  line-height: 1;
}
.cExpert__avatar-link {
  display: block;
  text-decoration: none;
  position: relative;
  z-index: 2;
}
.cExpert__avatar-circle {
  width: 90px;
  height: 90px;
  border-radius: 50%;
  border: 1.5px solid var(--color-rgba-0-0-0-0-05);
  padding: 4px;
  background-color: var(--color-bg);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  transition: border-color 0.3s ease;
}
.cExpert__avatar-circle picture {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  border-radius: 50% !important;
  overflow: hidden !important;
}
.cExpert__img {
  width: 100% !important;
  height: 100% !important;
  border-radius: 50% !important;
  object-fit: cover !important;
}
.cExpert__placeholder {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 28px;
  color: var(--color-bg);
  text-transform: uppercase;
}
.cExpert__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  width: 100%;
}
.cExpert__position {
  font-family: var(--font-family-main, "Inter", sans-serif);
  font-size: 9px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--color-text-muted, #7c7a76);
  line-height: 1;
}
.cExpert__name {
  font-family: var(--font-family-main, "Inter", sans-serif);
  font-size: 18px;
  font-weight: 800;
  color: var(--color-text-main, #111111);
  margin: 4px 0 8px 0;
  line-height: 1.25;
}
.cExpert__name a {
  text-decoration: none;
  color: inherit;
  transition: color 0.2s ease;
}
.cExpert__name a::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
}
.cExpert__name a:hover {
  color: var(--color-text-secondary);
}
.cExpert__footer {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 4px;
}
.cExpert__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 2;
  background-color: var(--color-bg-warm);
  border: 1.5px solid var(--color-rgba-0-0-0-0-05);
  border-radius: 20px;
  padding: 6px 18px;
  font-size: 11px;
  font-weight: 700;
  color: var(--color-text-secondary);
  text-decoration: none;
  transition: all 0.2s ease;
}
.cExpert__badge-val {
  margin-right: 4px;
}
.cExpert__badge svg {
  color: currentColor;
}
.cExpert__badge--instagram {
  border-color: var(--color-rgba-0-0-0-0-05);
}
.cExpert__badge--instagram:hover {
  background-color: var(--color-text-secondary);
  border-color: var(--color-text-secondary);
  color: var(--color-bg);
}

/* ==========================================================================
   Experts Directory Page Styles (Cozy, Warm, Responsive Editorial Style)
   ========================================================================== */
.experts {
  padding: 60px 0 100px;
}

/* 1. Filter and Sort Bar */
.experts-filter-bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 48px;
  gap: 20px;
  flex-wrap: wrap;
}
@media (max-width: 991px) {
  .experts-filter-bar {
    flex-direction: column;
    align-items: flex-start;
  }
}

.experts-filter-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.expert-filter-btn {
  background-color: #ffffff;
  border: 1px solid rgba(61, 50, 41, 0.08);
  font-family: var(--font-body);
  font-size: 13px;
  font-weight: 500;
  color: #3D3229;
  padding: 10px 20px;
  border-radius: 99px;
  cursor: pointer;
  transition: all 0.2s ease;
}
.expert-filter-btn:hover {
  border-color: rgba(61, 50, 41, 0.2);
  background-color: #FAF8F5;
}
.expert-filter-btn.is-active {
  background-color: #3D3229;
  /* Active dark cocoa button */
  border-color: #3D3229;
  color: #ffffff;
  font-weight: 600;
}

/* Sorting Dropdown */
.experts-sorting {
  display: flex;
  align-items: center;
  gap: 12px;
}
.experts-sorting .sorting-label {
  font-family: var(--font-body);
  font-size: 13px;
  color: #8C7E74;
}

.sorting-select-wrapper {
  position: relative;
  display: inline-flex;
  align-items: center;
  background-color: #ffffff;
  border: 1px solid rgba(61, 50, 41, 0.08);
  border-radius: 99px;
  padding: 0 36px 0 20px;
  height: 40px;
}
.sorting-select-wrapper .expert-sort-select {
  appearance: none;
  background: none;
  border: none;
  font-family: var(--font-body);
  font-size: 13px;
  font-weight: 600;
  color: #3D3229;
  cursor: pointer;
  outline: none;
  height: 100%;
  width: 100%;
  padding-right: 10px;
}
.sorting-select-wrapper .select-arrow {
  position: absolute;
  right: 18px;
  pointer-events: none;
  color: #8C7E74;
}
.sorting-select-wrapper:hover {
  border-color: rgba(61, 50, 41, 0.2);
}

/* 2. Grid layout for cards */
.expert-cards-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
}
@media (max-width: 1199px) {
  .expert-cards-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 991px) {
  .expert-cards-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 575px) {
  .expert-cards-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}

/* 3. Card Styling */
.expert-card-item {
  background-color: #ffffff;
  border: 1px solid var(--color-border);
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 4px 20px rgba(61, 50, 41, 0.02);
  display: flex;
  flex-direction: column;
  height: 100%;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.expert-card-item:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 30px rgba(61, 50, 41, 0.05);
}
.expert-card-item:hover .expert-card-top-avatar img {
  transform: scale(1.03);
}

.expert-card-top-avatar {
  background-color: #FAF6F0;
  /* Soft warm background for avatar */
  height: 240px;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
.expert-card-top-avatar img,
.expert-card-top-avatar picture {
  height: 100%;
  width: 100%;
  max-width: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform 0.3s ease;
}
.expert-card-top-avatar .expert-avatar-placeholder {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #EFECE6;
  color: #8C7E74;
  font-family: var(--font-header);
  font-size: 28px;
  font-weight: 700;
}
.expert-card-top-avatar {
  /* Decorative Leaf SVG */
}
.expert-card-top-avatar .expert-card-leaf {
  position: absolute;
  left: 16px;
  bottom: -12px;
  color: #5A7A52;
  /* Sage green leaf */
  z-index: 5;
  pointer-events: none;
  transform: rotate(-10deg);
}

.expert-card-info {
  padding: 24px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}
.expert-card-info .expert-name-title {
  font-family: var(--font-header);
  font-size: 15px;
  font-weight: 700;
  color: #3D3229;
  margin-bottom: 4px;
  line-height: 1.3;
}
.expert-card-info .expert-position-lbl {
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #8C7E74;
  margin-bottom: 12px;
}
.expert-card-info .expert-desc-para {
  font-family: var(--font-body);
  font-size: 13px;
  color: #6B5E53;
  line-height: 1.5;
  margin-bottom: 24px;
  flex-grow: 1;
}

/* Stats Row */
.expert-stats-row {
  display: flex;
  justify-content: space-between;
  border-top: 1px solid rgba(61, 50, 41, 0.08);
  padding-top: 16px;
  margin-bottom: 20px;
  gap: 8px;
}

.expert-stat-col {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex: 1;
  text-align: center;
}
.expert-stat-col svg {
  color: #CFC5BC;
  margin-bottom: 6px;
  stroke-width: 1.8;
}
.expert-stat-col .num {
  font-family: var(--font-header);
  font-size: 12px;
  font-weight: 700;
  color: #3D3229;
  line-height: 1.2;
}
.expert-stat-col .lbl {
  font-family: var(--font-body);
  font-size: 10px;
  color: #8C7E74;
  line-height: 1;
  margin-top: 2px;
}

/* More Button */
.expert-more-btn {
  background-color: var(--color-sage);
  /* Cocoa background as screenshot */
  color: #ffffff;
  border-radius: 12px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-family: var(--font-body);
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  transition: all 0.2s ease;
  width: 100%;
}
.expert-more-btn svg {
  transition: transform 0.2s ease;
}
.expert-more-btn:hover {
  background-color: var(--color-sage-hover);
}
.expert-more-btn:hover svg {
  transform: translateX(3px);
}

.aem-frontend-dashboard {
  max-width: 1200px;
  margin: 0 auto;
  padding: 40px 0;
  color: var(--color-text-main);
  font-family: var(--font-family-main);
}
.aem-frontend-dashboard h3 {
  font-family: var(--font-family-secondary);
  font-size: 2rem;
  font-weight: 400;
  margin-bottom: 32px;
  letter-spacing: -0.02em;
  border-bottom: 1px solid var(--color-divider);
  padding-bottom: 16px;
}
.aem-frontend-dashboard .aem-stats-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 24px;
  margin-bottom: 64px;
}
.aem-frontend-dashboard .aem-stats-grid .aem-stat-card {
  padding: 32px;
  background-color: var(--color-surface);
  display: flex;
  flex-direction: column;
  gap: 12px;
  transition: transform 0.3s ease;
}
.aem-frontend-dashboard .aem-stats-grid .aem-stat-card span {
  text-transform: uppercase;
  font-size: 0.75rem;
  letter-spacing: 0.1em;
  color: var(--color-text-muted);
  font-weight: 500;
}
.aem-frontend-dashboard .aem-stats-grid .aem-stat-card strong {
  font-size: 2.5rem;
  font-weight: 400;
  line-height: 1;
  color: var(--color-contrast);
}
.aem-frontend-dashboard .aem-stats-grid .aem-stat-card.highlight {
  background-color: var(--color-contrast);
}
.aem-frontend-dashboard .aem-stats-grid .aem-stat-card.highlight span {
  color: var(--color-bg);
}
.aem-frontend-dashboard .aem-stats-grid .aem-stat-card.highlight strong {
  color: var(--color-bg);
}
.aem-frontend-dashboard .aem-stats-grid .aem-stat-card.pending strong {
  color: var(--color-accent);
}
.aem-frontend-dashboard .aem-table-wrapper {
  overflow-x: auto;
}
.aem-frontend-dashboard .aem-table-wrapper .aem-stats-table {
  width: 100%;
  border-collapse: collapse;
  font-variant-numeric: tabular-nums;
}
.aem-frontend-dashboard .aem-table-wrapper .aem-stats-table thead tr {
  border-bottom: 2px solid var(--color-contrast);
}
.aem-frontend-dashboard .aem-table-wrapper .aem-stats-table thead th {
  text-align: left;
  padding: 16px 8px;
  text-transform: uppercase;
  font-size: 0.7rem;
  letter-spacing: 0.1em;
  color: var(--color-text-muted);
  font-weight: 600;
}
.aem-frontend-dashboard .aem-table-wrapper .aem-stats-table tbody tr {
  border-bottom: 1px solid var(--color-divider);
  transition: background-color 0.2s ease;
}
.aem-frontend-dashboard .aem-table-wrapper .aem-stats-table tbody tr:hover {
  background-color: var(--color-rgba-255-255-255-0-5);
}
.aem-frontend-dashboard .aem-table-wrapper .aem-stats-table tbody td {
  padding: 24px 8px;
  font-size: 0.95rem;
}
.aem-frontend-dashboard .aem-table-wrapper .aem-stats-table tbody td strong {
  font-weight: 600;
  color: var(--color-contrast);
}
.aem-frontend-dashboard .aem-table-wrapper .aem-stats-table .status-label {
  display: inline-block;
  padding: 6px 12px;
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-weight: 600;
}
.aem-frontend-dashboard .aem-table-wrapper .aem-stats-table .status-label.status-paid {
  background-color: var(--color-nature);
  color: var(--color-white);
}
.aem-frontend-dashboard .aem-table-wrapper .aem-stats-table .status-label.status-pending {
  background-color: var(--color-surface);
  color: var(--color-text-muted);
  border: 1px solid var(--color-divider);
}

@media (max-width: 768px) {
  .aem-frontend-dashboard {
    padding: 24px 16px;
  }
  .aem-frontend-dashboard h3 {
    font-size: 1.5rem;
  }
  .aem-frontend-dashboard .aem-stats-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .aem-frontend-dashboard .aem-stats-table {
    min-width: 600px;
  }
}
.userMenu {
  background: var(--color-bg);
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding-bottom: 100px;
  position: relative;
}
.userMenu__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 24px 24px 20px 24px;
  border-bottom: 1px solid var(--color-bg-cream);
}
.userMenu__header-title {
  font-family: var(--font-family-secondary);
  font-size: 26px;
  font-weight: 700;
  color: var(--color-text-main);
}
.userMenu__close-btn {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 1px solid var(--color-border-light);
  background: var(--color-bg);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: var(--color-text-muted);
  transition: all 0.2s ease;
  padding: 0;
}
.userMenu__close-btn:hover {
  background: var(--color-bg-warm);
  border-color: var(--color-divider);
  color: var(--color-text-main);
}
.userMenu__profile {
  padding: 28px 24px;
  border-bottom: 1px solid var(--color-bg-cream);
}
.userMenu__welcome {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.15em;
  color: var(--color-nature);
  text-transform: uppercase;
  display: block;
  margin-bottom: 14px;
}
.userMenu__profile-info {
  display: flex;
  align-items: center;
  gap: 16px;
}
.userMenu__profile-avatar {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  overflow: hidden;
  flex-shrink: 0;
}
.userMenu__profile-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.userMenu__profile-avatar-placeholder {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: var(--color-calories);
  color: var(--color-bg);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-family-secondary);
  font-weight: 700;
  font-size: 22px;
}
.userMenu__profile-meta {
  display: flex;
  flex-direction: column;
}
.userMenu__profile-name {
  font-family: var(--font-family-secondary);
  font-size: 24px;
  font-weight: 700;
  color: var(--color-text-main);
  line-height: 1.1;
}
.userMenu__profile-role {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-top: 8px;
}
.userMenu__wrap {
  display: flex;
  flex-direction: column;
}
.userMenu__section {
  padding: 28px 24px;
  border-bottom: 1px solid var(--color-bg-cream);
}
.userMenu__section:last-child {
  border-bottom: none;
}
.userMenu__section--logout {
  border-bottom: none;
  margin-top: auto;
  padding-top: 20px;
  padding-bottom: 30px;
}
.userMenu__section-title {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.15em;
  color: var(--color-nature);
  text-transform: uppercase;
  display: block;
  margin-bottom: 20px;
}
.userMenu__links {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.userMenu__link-item {
  display: flex;
  align-items: center;
  gap: 14px;
  text-decoration: none;
  color: var(--color-text-main);
  transition: all 0.2s ease;
}
.userMenu__link-item:hover .userMenu__link-text {
  color: var(--color-text-secondary);
}
.userMenu__link-item:hover .userMenu__link-icon-box {
  background-color: var(--color-surface);
}
.userMenu__link-item--accent:hover .userMenu__link-text {
  color: var(--color-calories);
}
.userMenu__link-item--accent:hover .userMenu__link-icon-box--accent {
  background-color: var(--color-carbs-bg);
}
.userMenu__link-icon-box {
  width: 40px;
  height: 40px;
  border-radius: 12px;
  background-color: var(--color-bg-warm);
  border: 1px solid var(--color-bg-cream);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-text-muted);
  flex-shrink: 0;
  transition: all 0.2s ease;
  overflow: hidden;
}
.userMenu__link-icon-box svg {
  width: 20px;
  height: auto;
}
.userMenu__link-icon-box--accent {
  background-color: var(--color-surface);
  border-color: var(--color-carbs-bg);
  color: var(--color-text-secondary);
}
.userMenu__link-text-group {
  display: flex;
  flex-direction: column;
}
.userMenu__link-text {
  font-size: 15px;
  font-weight: 600;
  color: var(--color-text-main);
  transition: color 0.2s ease;
}
.userMenu__link-item--accent .userMenu__link-text {
  color: var(--color-text-secondary);
}
.userMenu__link-subtext {
  font-size: 11px;
  color: var(--color-nature);
  margin-top: 3px;
}
.userMenu__link-badge {
  margin-left: auto;
  background-color: var(--color-divider);
  color: var(--color-text-muted);
  font-size: 11px;
  font-weight: 700;
  padding: 3px 8px;
  border-radius: 99px;
  min-width: 20px;
  text-align: center;
}
.userMenu__link-arrow {
  margin-left: auto;
  color: var(--color-divider);
  width: 18px;
  height: auto;
}
.userMenu__logged-out {
  padding: 24px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}
.userMenu__cta {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  margin-bottom: 24px;
}
.userMenu__cta-icon-box {
  width: 72px;
  height: 72px;
  border-radius: 20px;
  background-color: var(--color-surface);
  color: var(--color-accent);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
}
.userMenu__cta-title {
  font-family: var(--font-family-secondary);
  font-size: 26px;
  font-weight: 700;
  color: var(--color-text-main);
  margin-top: 0;
  margin-bottom: 10px;
  line-height: 1.25;
}
.userMenu__cta-desc {
  font-size: 14px;
  color: var(--color-text-muted-alt);
  line-height: 1.5;
  max-width: 280px;
  margin: 0;
}
.userMenu__social-login {
  margin-bottom: 24px;
  width: 100%;
}
.userMenu__social-login .nsl-container {
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 100%;
}
.userMenu__fallback-buttons {
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 100%;
}
.userMenu__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 14px 20px;
  font-size: 15px;
  font-weight: 700;
  border-radius: 12px;
  text-decoration: none;
  transition: all 0.2s ease;
  cursor: pointer;
  box-sizing: border-box;
}
.userMenu__btn--primary {
  background-color: var(--color-contrast);
  color: var(--color-bg);
  border: 1px solid var(--color-contrast);
}
.userMenu__btn--primary:hover {
  background-color: var(--color-warm-dark);
  border-color: var(--color-warm-dark);
}
.userMenu__btn--secondary {
  background-color: transparent;
  color: var(--color-text-main);
  border: 1px solid var(--color-divider);
}
.userMenu__btn--secondary:hover {
  background-color: var(--color-bg-warm);
  border-color: var(--color-nature);
}
.userMenu__benefits-divider {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 16px 0 24px;
}
.userMenu__benefits-divider span {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.15em;
  color: var(--color-nature);
  text-transform: uppercase;
  white-space: nowrap;
}
.userMenu__benefits-divider::before, .userMenu__benefits-divider::after {
  content: "";
  flex-grow: 1;
  height: 1px;
  background-color: var(--color-surface);
}
.userMenu__benefits {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-bottom: 24px;
}
.userMenu__benefit-item {
  display: flex;
  align-items: center;
  gap: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--color-bg-warm);
}
.userMenu__benefit-item:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
.userMenu__benefit-icon {
  width: 38px;
  height: 38px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.userMenu__benefit-icon.bg-red {
  background-color: var(--color-bg-cream);
  color: var(--color-accent);
}
.userMenu__benefit-icon.bg-orange {
  background-color: var(--color-bg-cream);
  color: var(--color-accent);
}
.userMenu__benefit-icon.bg-yellow {
  background-color: var(--color-bg-cream);
  color: var(--color-nature);
}
.userMenu__benefit-icon.bg-green {
  background-color: var(--color-surface);
  color: var(--color-nature);
}
.userMenu__benefit-info {
  display: flex;
  flex-direction: column;
}
.userMenu__benefit-title {
  font-size: 14px;
  font-weight: 700;
  color: var(--color-text-main);
  line-height: 1.2;
}
.userMenu__benefit-desc {
  font-size: 11px;
  color: var(--color-nature);
  margin-top: 3px;
  line-height: 1.3;
}
.userMenu__bottom-cta {
  margin-top: auto;
  padding-top: 20px;
}
.userMenu__catalog-card {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 16px;
  background-color: var(--color-bg-warm);
  border-radius: 16px;
  text-decoration: none;
  transition: background-color 0.2s ease;
}
.userMenu__catalog-card:hover {
  background-color: var(--color-surface);
}
.userMenu__catalog-icon-box {
  width: 40px;
  height: 40px;
  background-color: var(--color-bg);
  border: 1px solid var(--color-divider);
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-text-main);
  flex-shrink: 0;
}
.userMenu__catalog-info {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}
.userMenu__catalog-title {
  font-size: 14px;
  font-weight: 700;
  color: var(--color-text-main);
  line-height: 1.2;
}
.userMenu__catalog-desc {
  font-size: 11px;
  color: var(--color-text-muted-alt);
  margin-top: 3px;
}
.userMenu__catalog-arrow {
  color: var(--color-divider);
}
.userMenu__lang-switcher {
  margin-top: auto;
  padding: 24px;
  border-top: 1px solid var(--color-bg-cream);
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
}
.userMenu__lang-item {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.15em;
  color: var(--color-text-muted-alt);
  text-decoration: none;
  transition: all 0.2s ease;
  padding: 6px 12px;
  border-radius: 6px;
}
.userMenu__lang-item:hover {
  color: var(--color-text-main);
}
.userMenu__lang-item.is-active {
  color: var(--color-text-main);
  background-color: var(--color-bg-cream);
}

.userButton {
  display: flex;
  align-items: center;
  transition: 0.3s ease;
  cursor: pointer;
  padding: 0;
  opacity: 1;
}
.userButton svg {
  width: 20px;
  height: 20px;
  display: block;
  margin-right: 3px;
  opacity: 0.75;
  fill: var(--color-bg);
}
.userButton span {
  font-size: 12px;
  text-transform: uppercase;
  font-weight: 500;
  color: var(--color-bg);
}

.userButtonSecond {
  position: relative;
  border-radius: 100%;
  padding: 0;
  cursor: pointer;
  opacity: 1;
}
.userButtonSecond picture {
  display: flex;
}
.userButtonSecond-photo {
  width: 34px;
  height: 34px;
  border-radius: 100%;
  border: 1px solid var(--color-rgba-255-255-255-0-2);
  padding: 6px;
  padding: 1px;
}
.userButtonSecond-photo img {
  position: relative;
  border-radius: 100%;
}

.userAccount {
  position: relative;
}
.userAccount__title {
  display: block;
  margin-bottom: 24px;
  font-weight: 700;
  font-size: 18px;
  letter-spacing: 0.3px;
}
.userAccount .container {
  max-width: 900px;
}
.userAccount-title {
  margin-bottom: 40px;
}
.userAccount .wrap {
  margin-bottom: 16px;
  padding: 32px;
  width: 100%;
}
.userAccount .wrap:last-child {
  border-bottom: none;
}
@media (max-width: 767px) {
  .userAccount .wrap {
    padding: 24px;
  }
}
.userAccount .current-photo {
  min-width: 88px;
  max-width: 88px;
  height: 88px;
  border-radius: 100%;
  margin-right: 10px;
}

.updateUserForm {
  position: relative;
}
.updateUserForm-successText {
  color: var(--color-surface);
  font-size: 13px;
  margin-right: 15px;
}
.updateUserForm__row {
  display: flex;
  align-items: center;
  margin-bottom: 16px;
}
@media (max-width: 767px) {
  .updateUserForm__row {
    flex-direction: column;
    align-items: flex-start;
  }
}
.updateUserForm__row label {
  min-width: 90px;
  max-width: 90px;
  margin-right: 10px;
  color: var(--color-surface);
  font-size: 14px;
}
@media (max-width: 767px) {
  .updateUserForm__row label {
    margin-right: 0;
    margin-bottom: 6px;
  }
}
.updateUserForm__photo {
  display: flex;
  align-items: center;
}
.updateUserForm__bottom {
  padding: 24px 0 0 0;
  margin-top: 24px;
  border-top: 1px solid var(--color-divider);
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.logout-button {
  background: var(--color-danger-alt);
  width: 140px;
  display: flex;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-bg);
  cursor: pointer;
  transition: 0.3s ease;
  width: 100%;
}
.logout-button:hover {
  background: var(--color-danger-alt);
}

.my-data {
  padding: 60px 0 120px;
}
@media (max-width: 767px) {
  .my-data {
    padding-top: 32px;
    padding-bottom: 100px;
  }
}
.my-data #message {
  display: none;
}
.my-data .container {
  max-width: 940px;
}

.profile-header {
  margin-bottom: 2.5rem;
  padding-bottom: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1.5px solid var(--color-rgba-0-0-0-0-05);
}
@media (max-width: 767px) {
  .profile-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
  }
}
.profile-header__main {
  display: flex;
  align-items: center;
  gap: 24px;
}
@media (max-width: 767px) {
  .profile-header__main {
    gap: 16px;
  }
}
.profile-header__avatar {
  min-width: 120px;
  max-width: 120px;
  height: 120px;
  border-radius: 50%;
  border: 1px solid var(--color-rgba-0-0-0-0-05);
  padding: 6px;
  background-color: var(--color-bg);
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  overflow: hidden;
}
.profile-header__avatar picture {
  display: flex;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (max-width: 767px) {
  .profile-header__avatar {
    min-width: 90px;
    max-width: 90px;
    height: 90px;
    padding: 4px;
  }
}
.profile-header__avatar img,
.profile-header__avatar .profile-header__placeholder {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
}
.profile-header__avatar .profile-header__placeholder {
  background-color: var(--color-carbs-bg);
  color: var(--color-text-secondary);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 32px;
  text-transform: uppercase;
}
@media (max-width: 767px) {
  .profile-header__avatar .profile-header__placeholder {
    font-size: 24px;
  }
}
.profile-header__info {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
}
.profile-header__label {
  font-family: var(--font-family-main, "Inter", sans-serif);
  font-size: 9px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--color-text-muted, #7c7a76);
  margin-bottom: 4px;
  display: block;
  line-height: 1;
}
@media (max-width: 767px) {
  .profile-header__label {
    font-size: 8px;
    margin-bottom: 2px;
  }
}
.profile-header__name {
  font-family: var(--font-family-main, "Inter", sans-serif);
  font-weight: 800;
  font-size: 44px;
  color: var(--color-text-main, #111111);
  letter-spacing: -0.02em;
  line-height: 1.1;
}
@media (max-width: 767px) {
  .profile-header__name {
    font-size: 30px;
  }
}
.profile-header__login {
  color: var(--color-text-secondary);
  font-style: italic;
  font-family: var(--font-family-serif, "Playfair Display", Georgia, serif);
  font-weight: 400;
  font-size: 15px;
  margin-top: 4px;
  display: flex;
  align-items: center;
  line-height: 1;
}
@media (max-width: 767px) {
  .profile-header__login {
    font-size: 13px;
  }
}
.profile-header__login-sep {
  color: var(--color-rgba-0-0-0-0-15);
  font-style: normal;
  margin: 0 8px;
  font-weight: 400;
}
.profile-header #change-info {
  border-radius: 20px;
  padding: 10px 20px;
  border: 1.5px solid var(--color-rgba-0-0-0-0-05);
  background: transparent;
  color: var(--color-text-main, #111111);
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.profile-header #change-info svg {
  color: currentColor;
}
.profile-header #change-info:hover {
  background: var(--color-text-main, #111111);
  border-color: var(--color-text-main, #111111);
  color: var(--color-bg);
}
@media (max-width: 767px) {
  .profile-header #change-info {
    width: 100%;
    height: 42px;
  }
}

.user-summary {
  margin-bottom: 80px;
}
.user-summary__info {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px 32px;
}
@media (max-width: 991px) {
  .user-summary__info {
    grid-template-columns: repeat(2, 1fr);
    gap: 28px 12px;
  }
}
.user-summary__item {
  display: flex;
  align-items: center;
  gap: 16px;
}
.user-summary__item-icon-wrapper {
  width: 44px;
  height: 44px;
  background-color: var(--color-bg-warm);
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.user-summary__item-icon-wrapper svg {
  width: 18px;
  height: 18px;
  color: var(--color-text-secondary);
  stroke-width: 2px;
}
.user-summary__item__content {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.user-summary__item-lable {
  font-family: var(--font-family-main);
  font-size: 9px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--color-text-muted);
  line-height: 1;
}
.user-summary__item-value {
  font-family: var(--font-family-main);
  font-size: 20px;
  font-weight: 700;
  color: var(--color-text-main);
  line-height: 1.2;
}
@media (max-width: 767px) {
  .user-summary__item-value {
    font-size: 16px;
  }
}

.nutrition-card {
  background-color: var(--color-bg-warm);
  border-radius: 16px;
  padding: 48px;
  margin-top: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 40px;
}
@media (max-width: 767px) {
  .nutrition-card {
    padding: 32px 20px;
    gap: 32px;
  }
}
.nutrition-card__main-grid {
  display: grid;
  grid-template-columns: 1fr 1.3fr;
  gap: 48px;
  align-items: center;
}
@media (max-width: 767px) {
  .nutrition-card__main-grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }
}
.nutrition-card__primary {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.nutrition-card__label {
  font-family: var(--font-family-main, "Inter", sans-serif);
  font-size: 96px;
  font-weight: 800;
  color: var(--color-text-secondary);
  line-height: 0.9;
  letter-spacing: -0.03em;
  margin-bottom: 8px;
}
@media (max-width: 767px) {
  .nutrition-card__label {
    font-size: 76px;
  }
}
.nutrition-card__value {
  font-family: var(--font-family-main, "Inter", sans-serif);
  font-size: 11px;
  font-weight: 700;
  color: var(--color-text-main, #111111);
  text-transform: uppercase;
  letter-spacing: 0.12em;
}
.nutrition-card__secondary {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.nutrition-card__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}
.nutrition-card__item-left {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.nutrition-card__item-right {
  margin-left: 24px;
  display: flex;
  align-items: baseline;
  flex-shrink: 0;
}
.nutrition-card__item-label {
  font-family: var(--font-family-main);
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--color-text-main);
  line-height: 1;
}
.nutrition-card__item-bar-container {
  height: 3px;
  background-color: var(--color-rgba-0-0-0-0-05);
  border-radius: 1.5px;
  position: relative;
  width: 100%;
}
.nutrition-card__item-bar-fill {
  height: 100%;
  border-radius: 1.5px;
  position: absolute;
  left: 0;
  top: 0;
}
.nutrition-card__item-bar-fill--protein {
  background-color: var(--color-accent);
}
.nutrition-card__item-bar-fill--fat {
  background-color: var(--color-yellow);
}
.nutrition-card__item-bar-fill--carbs {
  background-color: var(--color-nature-dark);
}
.nutrition-card__item-val {
  font-family: var(--font-family-main, "Inter", sans-serif);
  font-size: 32px;
  font-weight: 800;
  color: var(--color-text-main, #111111);
  line-height: 1;
}
@media (max-width: 767px) {
  .nutrition-card__item-val {
    font-size: 26px;
  }
}
.nutrition-card__item-unit {
  font-family: var(--font-family-main, "Inter", sans-serif);
  font-size: 14px;
  font-weight: 700;
  color: var(--color-text-muted, #7c7a76);
  margin-left: 2px;
}
.nutrition-card__footer {
  width: 100%;
}
.nutrition-card__progress {
  display: flex;
  height: 10px;
  border-radius: 5px;
  overflow: hidden;
  background-color: var(--color-rgba-0-0-0-0-05);
  margin-bottom: 16px;
}
.nutrition-card__progress-fill {
  height: 100%;
}
.nutrition-card__progress-fill--protein {
  background-color: var(--color-accent);
}
.nutrition-card__progress-fill--fat {
  background-color: var(--color-yellow);
}
.nutrition-card__progress-fill--carbs {
  background-color: var(--color-nature-dark);
}
.nutrition-card__legend {
  display: flex;
  flex-wrap: wrap;
  gap: 16px 24px;
  align-items: center;
  justify-content: flex-start;
}
@media (max-width: 575px) {
  .nutrition-card__legend {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
}
.nutrition-card__legend-item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.nutrition-card__legend-color {
  width: 8px;
  height: 8px;
  border-radius: 2px;
  flex-shrink: 0;
}
.nutrition-card__legend-color--protein {
  background-color: var(--color-accent);
}
.nutrition-card__legend-color--fat {
  background-color: var(--color-yellow);
}
.nutrition-card__legend-color--carbs {
  background-color: var(--color-nature-dark);
}
.nutrition-card__legend-text {
  font-family: var(--font-family-main, "Inter", sans-serif);
  font-size: 11px;
  font-weight: 700;
  color: var(--color-text-main, #111111);
}
.nutrition-card__legend-pct {
  color: var(--color-text-main, #111111);
}
.nutrition-card__legend-dot {
  color: var(--color-rgba-0-0-0-0-15);
  margin: 0 2px;
  font-weight: 400;
}
.nutrition-card__legend-kcal {
  font-weight: 500;
  color: var(--color-text-muted, #7c7a76);
}

.user-update-form {
  display: none;
  background-color: var(--color-bg);
  border: 0;
  border-radius: 0;
  padding: 0;
  margin: 0;
}

.chefie-update-form {
  position: relative;
  display: grid;
  gap: 32px;
}

.update-profile-section {
  padding-bottom: 0;
  border-bottom: 0;
  display: grid;
  gap: 20px;
}
.update-profile-section__wrap {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 32px;
}
@media (max-width: 767px) {
  .update-profile-section__wrap {
    grid-template-columns: 1fr;
  }
}
.update-profile-section__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 32px;
  align-items: flex-start;
}
.update-profile-section__inputs {
  display: grid;
  gap: 32px;
  width: 100%;
}
@media (max-width: 767px) {
  .update-profile-section__inputs {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
.update-profile-section__photo-row .update-profile-section__photo-label {
  font-family: var(--font-family-main);
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--color-text-muted);
  margin-bottom: 12px;
  display: block;
}
.update-profile-section__photo-row .acf-fields {
  gap: 0;
}
.update-profile-section__avatar {
  width: 100%;
}
.update-profile-section__avatar .acf-fields {
  gap: 0 !important;
}
.update-profile-section__avatar .acf-input {
  display: flex;
}
.update-profile-section__header {
  margin-bottom: 12px;
}
.update-profile-section__header#heading-activity, .update-profile-section__header#heading-target {
  margin-top: 20px;
}

.acf-user-form__row {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.acf-user-form__row label {
  font-family: var(--font-family-main, "Inter", sans-serif);
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--color-text-muted);
  display: block;
}
.acf-user-form__row input {
  width: 100%;
  border: 0 !important;
  border-bottom: 1.5px solid var(--color-rgba-0-0-0-0-05) !important;
  border-radius: 0 !important;
  background: transparent !important;
  padding: 10px 0 !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  color: var(--color-text-main) !important;
  transition: border-color 0.25s ease !important;
  font-family: var(--font-family-main);
}
.acf-user-form__row input::placeholder {
  color: var(--color-rgba-0-0-0-0-25) !important;
  font-weight: 500 !important;
}
.acf-user-form__row input:focus {
  outline: none !important;
  border-color: var(--color-text-secondary) !important;
  box-shadow: none !important;
}

.user-update-form .acf-fields {
  border: 0;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.user-update-form .acf-field {
  padding: 0;
  margin: 0;
  border: 0;
}
.user-update-form .acf-field .acf-label label {
  font-family: var(--font-family-main, "Inter", sans-serif);
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  color: var(--color-text-muted, #7c7a76) !important;
  margin-bottom: 0px !important;
  display: block;
}
.user-update-form .acf-field .acf-label label .acf-required {
  color: var(--color-danger-alt, #c84131) !important;
  margin-left: 3px !important;
  font-weight: 700 !important;
}
.user-update-form .acf-field .acf-notice.-error {
  background: var(--color-rgba-0-0-0-0-05) !important;
  border: 0 !important;
  border-left: 3px solid var(--color-danger-alt, #c84131) !important;
  padding: 10px 14px !important;
  margin: 8px 0 0 0 !important;
  border-radius: 4px !important;
  box-shadow: none !important;
}
.user-update-form .acf-field .acf-notice.-error p {
  margin: 0 !important;
  font-family: var(--font-family-main, "Inter", sans-serif) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: var(--color-danger-alt, #c84131) !important;
  line-height: 1.4 !important;
}
.user-update-form .acf-field[data-name=user_main_photo] > .acf-label,
.user-update-form .acf-field[data-name=_validate_email] > .acf-label,
.user-update-form .acf-field[data-name=activity_level] > .acf-label,
.user-update-form .acf-field[data-name=target] > .acf-label {
  display: none !important;
}
.user-update-form .acf-field-group[data-name=user_nutrition_data] {
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}
.user-update-form .acf-field-group[data-name=user_nutrition_data] > .acf-label {
  display: none !important;
}
.user-update-form .acf-field-group[data-name=user_nutrition_data] > .acf-input > .acf-fields {
  position: relative;
}
@media (max-width: 767px) {
  .user-update-form .acf-field-group[data-name=user_nutrition_data] > .acf-input > .acf-fields {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
.user-update-form .acf-input input[type=text],
.user-update-form .acf-input input[type=email],
.user-update-form .acf-input input[type=url],
.user-update-form .acf-input input[type=number],
.user-update-form .acf-input textarea,
.user-update-form .acf-input select {
  width: 100%;
  border: 0 !important;
  border-bottom: 1.5px solid var(--color-rgba-0-0-0-0-05) !important;
  border-radius: 0 !important;
  background: transparent !important;
  padding: 10px 0 !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  color: var(--color-text-main, #111111) !important;
  transition: border-color 0.25s ease !important;
}
.user-update-form .acf-input input[type=text]::placeholder,
.user-update-form .acf-input input[type=email]::placeholder,
.user-update-form .acf-input input[type=url]::placeholder,
.user-update-form .acf-input input[type=number]::placeholder,
.user-update-form .acf-input textarea::placeholder,
.user-update-form .acf-input select::placeholder {
  color: var(--color-rgba-0-0-0-0-25) !important;
  font-weight: 500 !important;
}
.user-update-form .acf-input input[type=text]:focus,
.user-update-form .acf-input input[type=email]:focus,
.user-update-form .acf-input input[type=url]:focus,
.user-update-form .acf-input input[type=number]:focus,
.user-update-form .acf-input textarea:focus,
.user-update-form .acf-input select:focus {
  outline: none !important;
  border-color: var(--color-text-secondary) !important;
  box-shadow: none !important;
}
.user-update-form .acf-field[data-name=birthday] .acf-input {
  position: relative;
}
.user-update-form .acf-field[data-name=birthday] .acf-input::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 12px;
  width: 18px;
  height: 18px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23111111' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M6.75 3v2.25M17.25 3v2.25M3 18.75V7.5a2.25 2.25 0 012.25-2.25h13.5A2.25 2.25 0 0121 7.5v11.25m-18 0A2.25 2.25 0 005.25 21h13.5A2.25 2.25 0 0021 18.75m-18 0v-7.5A2.25 2.25 0 015.25 9h13.5A2.25 2.25 0 0121 11.25v7.5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  pointer-events: none;
}
.user-update-form .acf-image-uploader {
  border: 1px dashed var(--color-rgba-0-0-0-0-05) !important;
  border-radius: 12px !important;
  background: var(--color-surface) !important;
  padding: 20px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: auto !important;
  width: 100%;
  aspect-ratio: 16/16;
}
.user-update-form .acf-image-uploader .show-if-value {
  display: none;
}
.user-update-form .acf-image-uploader.has-value {
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  min-height: auto !important;
  width: auto !important;
  display: inline-flex !important;
}
.user-update-form .acf-image-uploader.has-value .show-if-value.image-wrap {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  position: relative !important;
  border: 1px solid var(--color-rgba-0-0-0-0-05) !important;
  margin: 0 !important;
  flex-shrink: 0;
  aspect-ratio: 16/16;
}
.user-update-form .acf-image-uploader.has-value .show-if-value.image-wrap picture,
.user-update-form .acf-image-uploader.has-value .show-if-value.image-wrap img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  max-height: none !important;
  border-radius: inherit !important;
  display: block !important;
}
.user-update-form .acf-image-uploader.has-value .show-if-value.image-wrap .acf-actions {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  background: var(--color-text-light) !important;
  opacity: 1 !important;
  transition: opacity 0.25s ease !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-end !important;
  gap: 6px !important;
  padding: 6px !important;
  transform: none !important;
}
.user-update-form .acf-image-uploader.has-value .show-if-value.image-wrap .acf-actions a.acf-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 32px !important;
  height: 32px !important;
  border-radius: 50% !important;
  background: var(--color-bg) !important;
  border: 0 !important;
  color: var(--color-text-main, #111111) !important;
  font-size: 14px !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
  box-shadow: 0 2px 8px var(--color-text-light) !important;
  position: static !important;
  margin: 0 !important;
  text-indent: 0 !important;
  text-shadow: none !important;
  box-sizing: border-box !important;
}
.user-update-form .acf-image-uploader.has-value .show-if-value.image-wrap .acf-actions a.acf-icon::before {
  display: inline-block !important;
  line-height: 1 !important;
}
.user-update-form .acf-image-uploader.has-value .show-if-value.image-wrap .acf-actions a.acf-icon[data-name=remove] {
  color: var(--color-accent-orange) !important;
}
@media (min-width: 1025px) {
  .user-update-form .acf-image-uploader.has-value .show-if-value.image-wrap .acf-actions a.acf-icon[data-name=remove]:hover {
    background-color: var(--color-accent-orange) !important;
    color: var(--color-bg) !important;
  }
}
@media (min-width: 1025px) {
  .user-update-form .acf-image-uploader.has-value .show-if-value.image-wrap .acf-actions a.acf-icon:hover {
    background-color: var(--color-surface, #f6f3ee) !important;
    color: var(--color-text-secondary, #c4622d) !important;
  }
}
@media (max-width: 1024px) {
  .user-update-form .acf-image-uploader.has-value .show-if-value.image-wrap .acf-actions {
    opacity: 1 !important;
    background: var(--color-text-light) !important;
  }
}
@media (min-width: 1025px) {
  .user-update-form .acf-image-uploader.has-value .show-if-value.image-wrap:hover .acf-actions {
    opacity: 1 !important;
  }
}
.user-update-form .acf-image-uploader.has-value .hide-if-value {
  display: none !important;
}
.user-update-form .acf-image-uploader:not(.has-value) .show-if-value {
  display: none !important;
}
.user-update-form .acf-image-uploader:not(.has-value) .hide-if-value {
  display: flex !important;
}
.user-update-form .acf-image-uploader .hide-if-value {
  align-items: center;
  justify-content: center;
}
.user-update-form .acf-image-uploader .hide-if-value p {
  display: flex;
  flex-direction: column !important;
  align-items: center;
  gap: 8px;
  font-size: 14px !important;
  font-weight: 500;
  color: var(--color-text-muted, #7c7a76);
  margin: 0 !important;
}
.user-update-form .acf-image-uploader .hide-if-value p::before {
  content: "";
  width: 18px;
  height: 18px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%237c7a76' stroke-width='1.5'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M2.25 15.75l5.159-5.159a2.25 2.25 0 013.182 0l5.159 5.159m-1.5-1.5l1.409-1.409a2.25 2.25 0 013.182 0l2.9 2.9m-18 3.75h16.5a1.5 1.5 0 001.5-1.5V6a1.5 1.5 0 00-1.5-1.5H3.75A1.5 1.5 0 002.25 6v12a1.5 1.5 0 001.5 1.5zm10.5-11.25h.008v.008h-.008V8.25zm.375 0a.375.375 0 11-.75 0 .375.375 0 01.75 0z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
}
.user-update-form .acf-image-uploader .hide-if-value .acf-button {
  display: inline !important;
  background: transparent !important;
  border: 0 !important;
  color: var(--color-text-secondary) !important;
  text-decoration: underline !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  padding: 0 !important;
  margin-left: 6px;
}
@media (min-width: 1025px) {
  .user-update-form .acf-image-uploader .hide-if-value .acf-button:hover {
    color: var(--color-contrast) !important;
  }
}
.user-update-form .acf-date-picker input[type=text] {
  width: 100%;
}

.acf-field.acf-field-group.acf-field-68696423093d8 {
  display: none;
}

.acf-field[data-name=sex] .acf-radio-list {
  display: grid;
  gap: 12px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.acf-field[data-name=sex] .acf-radio-list:before, .acf-field[data-name=sex] .acf-radio-list::after {
  display: none;
}
.acf-field[data-name=sex] .acf-radio-list li {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100%;
}
.acf-field[data-name=sex] .acf-radio-list li label {
  background: var(--color-bg);
  border: 1px solid var(--color-divider);
  border-radius: 8px;
  padding: 16px 12px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  text-transform: uppercase;
  font-size: 13px;
  font-weight: 700;
  color: var(--color-text-main);
  margin: 0;
  transition: all 0.25s ease;
  cursor: pointer;
  position: relative;
  user-select: none;
  width: 100%;
  height: 100%;
}
.acf-field[data-name=sex] .acf-radio-list li label input[type=radio] {
  display: none !important;
}
.acf-field[data-name=sex] .acf-radio-list li label .gender-icon {
  width: 18px;
  height: 18px;
  margin-right: 8px;
  color: inherit;
  stroke: currentColor;
  flex-shrink: 0;
  transition: transform 0.25s ease;
}
@media (min-width: 1025px) {
  .acf-field[data-name=sex] .acf-radio-list li label:hover {
    border-color: var(--color-dark);
  }
  .acf-field[data-name=sex] .acf-radio-list li label:hover .gender-icon {
    transform: scale(1.1);
  }
}
.acf-field[data-name=sex] .acf-radio-list li label.selected {
  background: var(--color-surface);
  border-color: var(--color-surface);
}

.acf-field[data-name=sex] .acf-radio-list {
  grid-template-columns: repeat(2, 1fr);
}

.acf-field[data-name=activity_level] .acf-radio-list,
.acf-field[data-name=target] .acf-radio-list {
  display: flex;
  flex-direction: column;
  gap: 0;
  border-top: 1px solid var(--color-rgba-0-0-0-0-05);
  border-bottom: 1px solid var(--color-rgba-0-0-0-0-05);
  list-style: none;
  margin: 0;
  padding: 0;
}
.acf-field[data-name=activity_level] .acf-radio-list li,
.acf-field[data-name=target] .acf-radio-list li {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100%;
}
.acf-field[data-name=activity_level] .acf-radio-list li:not(:last-child),
.acf-field[data-name=target] .acf-radio-list li:not(:last-child) {
  border-bottom: 1px solid var(--color-rgba-0-0-0-0-05);
}
.acf-field[data-name=activity_level] .acf-radio-list li label,
.acf-field[data-name=target] .acf-radio-list li label {
  background: transparent;
  border: 0;
  border-radius: 0;
  padding: 20px 0;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  font-size: 15px;
  font-weight: 500;
  color: var(--color-text-main, #111111);
  margin: 0;
  transition: all 0.2s ease;
  cursor: pointer;
  position: relative;
  user-select: none;
  width: 100%;
}
.acf-field[data-name=activity_level] .acf-radio-list li label input[type=radio],
.acf-field[data-name=target] .acf-radio-list li label input[type=radio] {
  appearance: none;
  -webkit-appearance: none;
  width: 18px;
  height: 18px;
  border: 2px solid var(--color-rgba-0-0-0-0-15);
  border-radius: 50%;
  margin-right: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--color-bg);
  flex-shrink: 0;
  cursor: pointer;
  position: relative;
}
.acf-field[data-name=activity_level] .acf-radio-list li label input[type=radio]::before,
.acf-field[data-name=target] .acf-radio-list li label input[type=radio]::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--color-text-secondary);
  transform: scale(0);
  transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.acf-field[data-name=activity_level] .acf-radio-list li label input[type=radio]:checked,
.acf-field[data-name=target] .acf-radio-list li label input[type=radio]:checked {
  border-color: var(--color-text-secondary);
}
.acf-field[data-name=activity_level] .acf-radio-list li label input[type=radio]:checked::before,
.acf-field[data-name=target] .acf-radio-list li label input[type=radio]:checked::before {
  transform: scale(1);
}
@media (min-width: 1025px) {
  .acf-field[data-name=activity_level] .acf-radio-list li label:hover,
  .acf-field[data-name=target] .acf-radio-list li label:hover {
    color: var(--color-text-secondary);
  }
}
.acf-field[data-name=activity_level] .acf-radio-list li label.selected,
.acf-field[data-name=target] .acf-radio-list li label.selected {
  font-weight: 700;
  background: var(--color-surface);
  padding-left: 16px;
  padding-right: 16px;
}
.acf-field[data-name=activity_level] .acf-radio-list li label.selected input[type=radio],
.acf-field[data-name=target] .acf-radio-list li label.selected input[type=radio] {
  border-color: var(--color-text-secondary);
}
.acf-field[data-name=activity_level] .acf-radio-list li label.selected input[type=radio]::before,
.acf-field[data-name=target] .acf-radio-list li label.selected input[type=radio]::before {
  transform: scale(1);
}
.acf-field[data-name=activity_level] .acf-radio-list li label.selected .selected-badge,
.acf-field[data-name=target] .acf-radio-list li label.selected .selected-badge {
  display: inline-block;
}
.acf-field[data-name=activity_level] .acf-radio-list li label .selected-badge,
.acf-field[data-name=target] .acf-radio-list li label .selected-badge {
  display: none;
  margin-left: auto;
  font-size: 11px;
  font-weight: 800;
  color: var(--color-dark);
  text-transform: uppercase;
}

.acf-field.acf-field-radio.acf-field-68693076830b6 .acf-input .acf-radio-list.acf-bl,
.acf-field.acf-field-radio.acf-field-6869316552568 .acf-input .acf-radio-list.acf-bl,
.acf-field.acf-field-radio.acf-field-6869318f52569 .acf-input .acf-radio-list.acf-bl {
  display: flex;
  gap: 16px;
}
.acf-field.acf-field-radio.acf-field-68693076830b6 .acf-input .acf-radio-list.acf-bl:before,
.acf-field.acf-field-radio.acf-field-6869316552568 .acf-input .acf-radio-list.acf-bl:before,
.acf-field.acf-field-radio.acf-field-6869318f52569 .acf-input .acf-radio-list.acf-bl:before {
  display: none;
}

.chefie-update-form__submit-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}
@media (max-width: 767px) {
  .chefie-update-form__submit-row {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
}

.chefie-update-form__submit-notice {
  font-size: 13px;
  color: var(--color-text-muted, #7c7a76);
  font-weight: 500;
}

.chefie-update-form__submit-btn {
  background: var(--color-dark) !important;
  color: var(--color-bg) !important;
  border: 0 !important;
  border-radius: 6px !important;
  padding: 16px 48px !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
}
@media (min-width: 1025px) {
  .chefie-update-form__submit-btn:hover {
    background: var(--color-warm-dark) !important;
  }
}
.chefie-update-form__submit-btn:active {
  transform: translateY(0);
}

.bookmark-page {
  padding: 60px 0 100px;
}
@media (max-width: 767px) {
  .bookmark-page {
    padding: 48px 0 100px;
  }
}
.bookmark-page .title.fz-h2 {
  margin-bottom: 40px;
}
.bookmark-page {
  /* Filters & Sorting Bar */
}
.bookmark-page__bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 36px;
  gap: 20px;
}
@media (max-width: 767px) {
  .bookmark-page__bar {
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: 28px;
  }
}
.bookmark-page__subfilters {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.bookmark-page__filter-pill {
  padding: 8px 16px;
  border-radius: 20px;
  border: 1px solid var(--color-divider);
  background-color: var(--color-bg);
  font-size: 14px;
  font-weight: 500;
  color: var(--color-text-muted);
  cursor: pointer;
  transition: all 0.2s ease;
  outline: none;
}
.bookmark-page__filter-pill:hover {
  border-color: var(--color-nature);
  color: var(--color-text-main);
}
.bookmark-page__filter-pill.is-active {
  background-color: var(--color-text-main);
  border-color: var(--color-text-main);
  color: var(--color-bg);
}
.bookmark-page__sorting {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .bookmark-page__sorting {
    width: 100%;
    justify-content: space-between;
  }
}
.bookmark-page__sort-label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: var(--color-nature);
  text-transform: uppercase;
}
.bookmark-page__sort-select {
  padding: 8px 32px 8px 16px;
  border-radius: 8px;
  border: 1px solid var(--color-divider);
  background-color: var(--color-bg);
  font-size: 14px;
  font-weight: 700;
  color: var(--color-text-main);
  cursor: pointer;
  outline: none;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23111111' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  transition: border-color 0.2s ease;
}
.bookmark-page__sort-select:hover {
  border-color: var(--color-nature);
}
.bookmark-page {
  /* Grid Containers */
}
.bookmark-page__grid {
  transition: opacity 0.2s ease;
}
.bookmark-page__grid.loading {
  opacity: 0.5;
  pointer-events: none;
}
.bookmark-page__grid--recipes {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
}
@media (max-width: 1024px) {
  .bookmark-page__grid--recipes {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 767px) {
  .bookmark-page__grid--recipes {
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
  }
}
.bookmark-page__grid--posts {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
}
@media (max-width: 1024px) {
  .bookmark-page__grid--posts {
    grid-template-columns: 1fr;
    gap: 16px;
  }
}
.bookmark-page__grid--diets {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
@media (max-width: 1024px) {
  .bookmark-page__grid--diets {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 600px) {
  .bookmark-page__grid--diets {
    grid-template-columns: 1fr;
  }
}
.bookmark-page {
  /* Bookmark Card Custom Buttons */
}
.bookmark-page .bookmark-card-btn {
  position: absolute;
  top: 8px;
  right: 8px;
  z-index: 10;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 1px solid var(--color-divider) !important;
  background: var(--color-bg) !important;
  box-shadow: 0 4px 12px var(--color-rgba-0-0-0-0-05);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s ease;
  padding: 0;
}
.bookmark-page .bookmark-card-btn .bookmark-btn__icon {
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.bookmark-page .bookmark-card-btn svg {
  width: 16px;
  height: 16px;
  color: var(--color-gray-dark) !important;
  transition: transform 0.2s ease;
}
.bookmark-page .bookmark-card-btn .bookmark-btn__icon--add {
  display: inline-block !important;
}
.bookmark-page .bookmark-card-btn .bookmark-btn__icon--saved {
  display: none !important;
}
.bookmark-page .bookmark-card-btn:hover {
  background: var(--color-brown-black, #111111) !important;
  border-color: var(--color-brown-black, #111111) !important;
}
.bookmark-page .bookmark-card-btn:hover svg {
  color: var(--color-bg) !important;
  transform: scale(1.1);
}
.bookmark-page .bookmark-card-btn.is-active {
  background: var(--color-bg) !important;
  border: 1px solid var(--color-divider) !important;
}
.bookmark-page .bookmark-card-btn.is-active .bookmark-btn__icon--add {
  display: none !important;
}
.bookmark-page .bookmark-card-btn.is-active .bookmark-btn__icon--saved {
  display: inline-block !important;
}
.bookmark-page .bookmark-card-btn.is-active svg {
  color: var(--color-gray-dark) !important;
}
.bookmark-page .bookmark-card-btn.is-active:hover {
  background: var(--color-brown-black, #111111) !important;
  border-color: var(--color-brown-black, #111111) !important;
}
.bookmark-page .bookmark-card-btn.is-active:hover svg {
  color: var(--color-bg) !important;
}
.bookmark-page {
  /* Empty State Block */
}
.bookmark-page__empty-state {
  text-align: center;
  padding: 80px 20px;
  background-color: var(--color-bg);
  border: 1px dashed var(--color-divider);
  border-radius: 16px;
}
.bookmark-page__empty-state svg {
  width: 64px;
  height: 64px;
  color: var(--color-nature);
  margin-bottom: 20px;
}
.bookmark-page__empty-state h3 {
  font-family: var(--font-family-secondary);
  font-size: 22px;
  font-weight: 700;
  color: var(--color-text-main);
  margin-bottom: 8px;
}
.bookmark-page__empty-state p {
  font-size: 15px;
  color: var(--color-text-muted-alt);
  max-width: 460px;
  margin: 0 auto;
  line-height: 1.5;
}

/* Saved Post Card Styles (Horizontal) */
.bookmark-post-card {
  background-color: var(--color-bg);
  border: 1px solid var(--color-divider);
  border-radius: 16px;
  overflow: hidden;
  display: flex;
  position: relative;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  text-decoration: none;
}
.bookmark-post-card .bookmark-btn {
  left: 8px;
}
@media (min-width: 1025px) {
  .bookmark-post-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 24px var(--color-rgba-0-0-0-0-05);
  }
  .bookmark-post-card:hover .bookmark-post-card__title {
    color: var(--color-text-secondary);
  }
}
.bookmark-post-card__thumb {
  width: 180px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  text-align: center;
  position: relative;
}
@media (max-width: 480px) {
  .bookmark-post-card__thumb {
    width: 120px;
    padding: 10px;
  }
}
.bookmark-post-card__thumb-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
.bookmark-post-card__thumb-text {
  font-size: 11px;
  font-weight: 500;
  color: var(--color-text-muted);
  line-height: 1.4;
  word-break: break-word;
}
.bookmark-post-card__body {
  flex-grow: 1;
  padding: 24px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media (max-width: 480px) {
  .bookmark-post-card__body {
    padding: 16px;
  }
}
.bookmark-post-card__meta-top {
  margin-bottom: 8px;
}
.bookmark-post-card__category {
  font-size: 10px;
  font-weight: 700;
  color: var(--color-text-secondary);
  text-transform: uppercase;
  display: block;
}
.bookmark-post-card__title {
  font-family: var(--font-family-secondary);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.35;
  margin-top: 0;
  margin-bottom: 16px;
  color: var(--color-text-main);
  transition: color 0.2s ease;
}
@media (max-width: 480px) {
  .bookmark-post-card__title {
    font-size: 15px;
    margin-bottom: 12px;
  }
}
.bookmark-post-card__meta-bottom {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  color: var(--color-text-muted-alt);
}
.bookmark-post-card__meta-bottom svg {
  width: 14px;
  height: 14px;
  color: var(--color-nature);
  vertical-align: middle;
  margin-right: 4px;
}
.bookmark-post-card__views, .bookmark-post-card__duration {
  display: inline-flex;
  align-items: center;
}
.bookmark-post-card__divider {
  color: var(--color-divider);
}

/* Saved Diet Card Styles (Vertical) */
.bookmark-diet-card {
  background-color: var(--color-bg);
  border: 1px solid var(--color-divider);
  border-radius: 16px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  position: relative;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  text-decoration: none;
}
.bookmark-diet-card:hover .bookmark-diet-card__title {
  color: var(--color-text-secondary);
}
.bookmark-diet-card__thumb {
  height: 160px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  text-align: center;
}
.bookmark-diet-card__thumb-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
.bookmark-diet-card__thumb-text {
  font-size: 12px;
  font-weight: 500;
  color: var(--color-text-muted);
}
.bookmark-diet-card__duration-badge {
  position: absolute;
  top: 16px;
  left: 16px;
  background-color: var(--color-text-main);
  color: var(--color-bg);
  padding: 6px 12px;
  border-radius: 20px;
  font-size: 11px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.bookmark-diet-card__duration-badge svg {
  width: 12px;
  height: 12px;
}
.bookmark-diet-card__body {
  padding: 24px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}
.bookmark-diet-card__title {
  font-family: var(--font-family-secondary);
  font-size: 20px;
  font-weight: 700;
  line-height: 1.3;
  margin-top: 0;
  margin-bottom: 8px;
  color: var(--color-text-main);
  transition: color 0.2s ease;
}
.bookmark-diet-card__excerpt {
  font-size: 14px;
  color: var(--color-text-muted-alt);
  line-height: 1.45;
  margin-top: 0;
  margin-bottom: 20px;
}
.bookmark-diet-card__stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border: 1px solid var(--color-divider);
  border-radius: 8px;
  margin-bottom: 24px;
  text-align: center;
  background-color: var(--color-bg-warm);
}
.bookmark-diet-card__stat-col {
  padding: 8px 4px;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.bookmark-diet-card__stat-col:not(:last-child) {
  border-right: 1px solid var(--color-divider);
}
.bookmark-diet-card .stat-value {
  font-family: var(--font-family-secondary);
  font-size: 14px;
  font-weight: 700;
  color: var(--color-text-main);
}
.bookmark-diet-card .stat-label {
  font-size: 9px;
  font-weight: 700;
  color: var(--color-nature);
  text-transform: uppercase;
  margin-top: 2px;
}
.bookmark-diet-card__footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: auto;
  padding-top: 16px;
  border-top: 1px solid var(--color-bg-cream);
}
.bookmark-diet-card__author {
  display: flex;
  align-items: center;
  gap: 8px;
}
.bookmark-diet-card__author-img {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  object-fit: cover;
}
.bookmark-diet-card__author-placeholder {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background-color: var(--color-accent);
  color: var(--color-bg);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 9px;
  font-weight: 700;
}
.bookmark-diet-card__author-name {
  font-size: 13px;
  font-weight: 500;
  color: var(--color-text-muted);
}
.bookmark-diet-card__rating {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 13px;
  font-weight: 700;
  color: var(--color-accent);
}
.bookmark-diet-card__rating svg {
  width: 14px;
  height: 14px;
  color: var(--color-accent);
}

.shopping-list-page {
  padding-bottom: 120px;
}
.shopping-list-page .active-recipes-section {
  background: transparent;
  border: none;
  padding: 0;
  box-shadow: none;
  margin-bottom: 32px;
  width: 100%;
}
.shopping-list-page .active-recipes-section__title {
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 24px;
  font-weight: 700;
  color: var(--color-heading, #2c2622);
  margin-bottom: 20px;
  letter-spacing: -0.01em;
}
.shopping-list-page .active-recipes-section__title span {
  font-weight: 400;
  color: var(--color-sage);
}
.shopping-list-page .active-recipes-section__list {
  display: flex;
  flex-direction: row;
  gap: 16px;
  overflow-x: auto;
  padding-bottom: 12px;
  margin-bottom: 12px;
}
.shopping-list-page .active-recipes-section__list::-webkit-scrollbar {
  height: 5px;
}
.shopping-list-page .active-recipes-section__list::-webkit-scrollbar-track {
  background: var(--color-divider, #efe8de);
  border-radius: 10px;
}
.shopping-list-page .active-recipes-section__list::-webkit-scrollbar-thumb {
  background: var(--color-caption, #9d948b);
  border-radius: 10px;
}
.shopping-list-page .recipe-card-shopping {
  display: flex;
  flex-direction: column;
  width: 164px;
  flex-shrink: 0;
  background: var(--color-bg-card, #ffffff);
  border: 1px solid var(--color-border, #e9e2d8);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 4px 12px var(--color-shadow);
  transition: all 0.3s ease;
  height: 220px;
}
.shopping-list-page .recipe-card-shopping__media {
  position: relative;
  height: 106px;
  width: 100%;
  overflow: hidden;
}
.shopping-list-page .recipe-card-shopping__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}
.shopping-list-page .recipe-card-shopping__delete {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: #ffffff;
  border: none;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: var(--color-heading, #2c2622);
  transition: all 0.2s ease;
  z-index: 2;
  padding: 0;
}
.shopping-list-page .recipe-card-shopping__delete svg {
  width: 10px;
  height: 10px;
  stroke: currentColor;
}
.shopping-list-page .recipe-card-shopping__delete:hover {
  background: var(--color-danger, #c97b67);
  color: #ffffff;
  transform: scale(1.08);
}
.shopping-list-page .recipe-card-shopping__body {
  padding: 12px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}
.shopping-list-page .recipe-card-shopping__title {
  font-family: "Manrope", "Inter", sans-serif;
  font-size: 13px;
  font-weight: 700;
  color: var(--color-heading, #2c2622);
  margin-bottom: 8px;
  text-decoration: none;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  line-height: 1.35;
  height: 35px;
  transition: color 0.2s ease;
}
.shopping-list-page .recipe-card-shopping__title:hover {
  color: var(--color-sage, #5d6848);
}
.shopping-list-page .recipe-card-shopping__info {
  margin-top: auto;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.shopping-list-page .recipe-card-shopping__info-item {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 11px;
  color: var(--color-caption, #9d948b);
  font-weight: 500;
}
.shopping-list-page .recipe-card-shopping__info-item svg {
  color: var(--color-caption, #9d948b);
  flex-shrink: 0;
}
.shopping-list-page .recipe-card-shopping {
  /* Loading Skeleton state */
}
.shopping-list-page .recipe-card-shopping.is-loading {
  pointer-events: none;
}
.shopping-list-page .recipe-card-shopping.is-loading .recipe-card-shopping__skeleton-img {
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, #f3ede2 25%, #eae2d4 50%, #f3ede2 75%);
  background-size: 200% 100%;
  animation: skeleton-loading 1.5s infinite;
}
.shopping-list-page .recipe-card-shopping.is-loading .recipe-card-shopping__skeleton-title {
  width: 80%;
  height: 12px;
  background: #eae2d4;
  border-radius: 4px;
  margin-bottom: 8px;
}
.shopping-list-page .recipe-card-shopping.is-loading .recipe-card-shopping__skeleton-text {
  width: 50%;
  height: 10px;
  background: #eae2d4;
  border-radius: 4px;
}
.shopping-list-page .recipe-card-shopping:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 20px rgba(44, 38, 34, 0.08);
}
.shopping-list-page .recipe-card-shopping:hover .recipe-card-shopping__image {
  transform: scale(1.04);
}
@keyframes skeleton-loading {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
.shopping-list-page {
  /* Products Section Header */
}
.shopping-list-page .products-section-header {
  margin-top: 40px;
  margin-bottom: 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.shopping-list-page .products-section-header .products-section-title {
  font-family: var(--font-header, "Unbounded", sans-serif);
  font-size: 24px;
  font-weight: 700;
  color: var(--color-heading, #2c2622);
  margin: 0;
}
.shopping-list-page .products-section-header .products-section-title .js-products-total-count-badge {
  color: var(--color-caption, #9d948b);
  font-weight: 500;
  margin-left: 6px;
}
.shopping-list-page {
  /* Empty State */
}
.shopping-list-page .empty-state {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 80px 24px;
}
.shopping-list-page .empty-state__icon {
  font-size: 56px;
  line-height: 1;
  margin-bottom: 20px;
  filter: grayscale(0.1);
}
.shopping-list-page .empty-state__title {
  font-family: var(--font-header, "Unbounded", sans-serif);
  font-size: var(--fs-xl, 24px);
  font-weight: 700;
  color: var(--color-heading, #2c2622);
  margin: 0 0 12px;
}
.shopping-list-page .empty-state__desc {
  font-size: var(--fs-base, 16px);
  color: var(--color-caption, #9d948b);
  max-width: 360px;
  line-height: 1.6;
  margin: 0 0 32px;
}
.shopping-list-page .empty-state__btn {
  min-width: 180px;
}
.shopping-list-page {
  /* Masonry two-column layout for categories */
}
.shopping-list-page .js-recipes-list-container {
  columns: 2;
  column-gap: 24px;
  margin-bottom: 120px;
}
@media (max-width: 991px) {
  .shopping-list-page .js-recipes-list-container {
    columns: 1;
  }
}
.shopping-list-page .product-category {
  break-inside: avoid;
  margin-bottom: 24px;
  background: #ffffff;
  border: 1px solid var(--color-border, #e9e2d8);
  border-radius: 20px;
  padding: 24px;
  box-shadow: 0 8px 24px rgba(44, 38, 34, 0.03);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.shopping-list-page .product-category:hover {
  box-shadow: 0 12px 32px rgba(44, 38, 34, 0.06);
}
.shopping-list-page .product-category__head {
  margin-bottom: 20px;
  border-bottom: 1px solid var(--color-border, #e9e2d8);
  padding-bottom: 16px;
}
.shopping-list-page .product-category__title {
  font-family: var(--font-header, "Unbounded", sans-serif);
  font-size: 16px;
  font-weight: 700;
  color: var(--color-heading, #2c2622);
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  margin: 0;
}
.shopping-list-page .product-category__title-left {
  display: flex;
  align-items: center;
  gap: 10px;
}
.shopping-list-page .product-category__title-left .cat-icon {
  flex-shrink: 0;
}
.shopping-list-page .product-category__title-left .cat-icon-custom {
  font-size: 20px;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.shopping-list-page .product-category__count {
  font-size: 11px;
  font-weight: 700;
  background: var(--color-bg-main, #fcfaf7);
  color: var(--color-body, #6f675f);
  padding: 2px 8px;
  border-radius: 8px;
  border: 1px solid var(--color-border, #e9e2d8);
  margin-left: 6px;
}
.shopping-list-page .product-category__arrow {
  color: var(--color-caption, #9d948b);
  transition: transform 0.2s ease;
  display: none;
  /* hidden per layout request, but structured */
}
.shopping-list-page .product-category__footer {
  margin-top: 16px;
  display: flex;
  justify-content: center;
}
.shopping-list-page .product-category .btn-toggle-category {
  background: transparent;
  border: none;
  color: var(--color-sage, #5d6848);
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  border-radius: 8px;
  transition: all 0.2s ease;
}
.shopping-list-page .product-category .btn-toggle-category svg {
  transition: transform 0.25s ease;
}
.shopping-list-page .product-category .btn-toggle-category:hover {
  background-color: rgba(93, 104, 72, 0.05);
}
.shopping-list-page .product-category .btn-toggle-category.is-open svg {
  transform: rotate(180deg);
}
.shopping-list-page .product-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 0;
  border-bottom: 1px solid var(--color-border-light, #f5f0e8);
  gap: 16px;
}
.shopping-list-page .product-item:last-child {
  border-bottom: none;
}
.shopping-list-page .product-item.checked .product-text {
  text-decoration: line-through;
  opacity: 0.5;
}
.shopping-list-page .product-item.checked .product-item__qty {
  opacity: 0.5;
}
.shopping-list-page .product-item.checked .product-item__pills {
  opacity: 0.4;
}
.shopping-list-page .product-item__left-col {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex: 1.2;
  gap: 12px;
  min-width: 0;
}
.shopping-list-page .product-item__label {
  display: flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  flex: 1;
  min-width: 0;
}
.shopping-list-page .product-item__label .checkmark {
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 2px solid var(--color-divider, #e9e2d8);
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.18s ease, border-color 0.18s ease;
}
.shopping-list-page .product-item__label .checkmark svg {
  width: 11px;
  height: 11px;
  opacity: 0;
  transition: opacity 0.15s ease;
}
.shopping-list-page .product-item__label .product-text {
  font-size: 14px;
  font-weight: 600;
  color: var(--color-heading, #2c2622);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.shopping-list-page .product-item {
  /* Checked state */
}
.shopping-list-page .product-item.checked .checkmark {
  background: var(--color-accent);
  border-color: var(--color-accent);
}
.shopping-list-page .product-item.checked .checkmark svg {
  opacity: 1;
}
.shopping-list-page .product-item.checked .product-text {
  text-decoration: line-through;
  color: var(--color-caption, #9d948b);
}
.shopping-list-page .product-item__qty {
  font-size: 13px;
  font-weight: 600;
  color: var(--color-body, #6f675f);
  white-space: nowrap;
  text-align: right;
  margin-left: 8px;
}
.shopping-list-page .product-item__pills {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  flex: 0.8;
  min-width: 0;
  justify-content: flex-start;
}
@media (max-width: 767px) {
  .shopping-list-page .product-item__pills {
    display: none;
    /* Hide pills on tiny mobile screen rows to prevent clipping */
  }
}
.shopping-list-page .product-item__recipe-pill {
  background-color: var(--color-bg-main, #fcfaf7);
  color: var(--color-body, #6f675f);
  border: 1px solid var(--color-border, #e9e2d8);
  font-size: 11px;
  font-weight: 600;
  padding: 2px 8px;
  border-radius: 6px;
  white-space: nowrap;
  max-width: 120px;
  overflow: hidden;
  text-overflow: ellipsis;
}
.shopping-list-page .product-item__no-recipe {
  color: var(--color-caption, #9d948b);
  font-size: var(--fs-sm, 14px);
}
.shopping-list-page .product-item__delete {
  background: transparent;
  border: none;
  padding: 6px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-caption, #9d948b);
  opacity: 0.5;
  transition: all 0.2s ease;
  border-radius: 6px;
  flex-shrink: 0;
}
.shopping-list-page .product-item__delete svg {
  width: 16px;
  height: 16px;
  stroke-width: 2.2;
}
.shopping-list-page .product-item__delete:hover {
  opacity: 1;
  color: var(--color-danger, #c97b67);
  background: rgba(201, 123, 103, 0.08);
}
.shopping-list-page {
  /* Sticky Bottom Summary Bar */
}
.shopping-list-page .product-summary.new-footer {
  background: #ffffff !important;
  border-top: 1px solid var(--color-border, #e9e2d8);
  padding: 20px 0;
  width: 100% !important;
  border-radius: 0;
}
.shopping-list-page .product-summary.new-footer .summary-footer-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
}
@media (max-width: 991px) {
  .shopping-list-page .product-summary.new-footer .summary-footer-inner {
    flex-direction: column;
    align-items: stretch;
    gap: 20px;
  }
}
.shopping-list-page .product-summary.new-footer .summary-footer__left {
  display: flex;
  align-items: center;
  gap: 12px;
}
.shopping-list-page .product-summary.new-footer .summary-footer__icon-wrapper {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  background-color: rgba(93, 104, 72, 0.08);
  display: flex;
  align-items: center;
  justify-content: center;
}
.shopping-list-page .product-summary.new-footer .summary-footer__stats {
  display: flex;
  flex-direction: column;
}
.shopping-list-page .product-summary.new-footer .summary-footer__stats .summary-footer__products {
  font-size: 15px;
  font-weight: 700;
  color: var(--color-heading, #2c2622);
}
.shopping-list-page .product-summary.new-footer .summary-footer__stats .summary-footer__recipes {
  font-size: 13px;
  color: var(--color-body, #6f675f);
  font-weight: 500;
}
.shopping-list-page .product-summary.new-footer .summary-footer__cost {
  display: flex;
  flex-direction: column;
}
@media (max-width: 991px) {
  .shopping-list-page .product-summary.new-footer .summary-footer__cost {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
  }
}
.shopping-list-page .product-summary.new-footer .summary-footer__cost .summary-footer__cost-label {
  font-size: 12px;
  font-weight: 600;
  color: var(--color-caption, #9d948b);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.shopping-list-page .product-summary.new-footer .summary-footer__cost .summary-footer__cost-value {
  font-size: 18px;
  font-weight: 700;
  color: var(--color-heading, #2c2622);
  margin-top: 2px;
  display: flex;
  align-items: center;
  gap: 4px;
}
.shopping-list-page .product-summary.new-footer .summary-footer__cost .summary-footer__cost-value strong {
  font-size: 20px;
  font-weight: 800;
}
.shopping-list-page .product-summary.new-footer .summary-footer__cost .summary-footer__cost-value .info-tooltip {
  color: var(--color-caption, #9d948b);
  display: inline-flex;
  cursor: help;
}
.shopping-list-page .product-summary.new-footer .summary-footer__buttons {
  display: flex;
  align-items: center;
  gap: 12px;
}
@media (max-width: 991px) {
  .shopping-list-page .product-summary.new-footer .summary-footer__buttons {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 575px) {
  .shopping-list-page .product-summary.new-footer .summary-footer__buttons {
    grid-template-columns: 1fr;
  }
}
.shopping-list-page .product-summary.new-footer .summary-footer__buttons .btn-outline {
  background-color: #ffffff;
  border: 1px solid var(--color-border, #e9e2d8);
  border-radius: 12px;
  height: 42px;
  padding: 0 16px;
  font-size: 13px;
  font-weight: 700;
  color: var(--color-heading, #2c2622);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  cursor: pointer;
  transition: all 0.2s ease;
}
.shopping-list-page .product-summary.new-footer .summary-footer__buttons .btn-outline svg {
  color: var(--color-body, #6f675f);
}
.shopping-list-page .product-summary.new-footer .summary-footer__buttons .btn-outline:hover {
  border-color: var(--color-sage, #5d6848);
  background-color: rgba(93, 104, 72, 0.02);
  color: var(--color-sage, #5d6848);
}
.shopping-list-page .product-summary.new-footer .summary-footer__buttons .btn-outline:hover svg {
  color: var(--color-sage, #5d6848);
}
.shopping-list-page .product-summary.new-footer .summary-footer__buttons .btn-outline.clear-products {
  border-color: rgba(201, 123, 103, 0.2);
  color: var(--color-danger, #c97b67);
}
.shopping-list-page .product-summary.new-footer .summary-footer__buttons .btn-outline.clear-products svg {
  color: var(--color-danger, #c97b67);
}
.shopping-list-page .product-summary.new-footer .summary-footer__buttons .btn-outline.clear-products:hover {
  background-color: rgba(201, 123, 103, 0.05);
  border-color: var(--color-danger, #c97b67);
}

/* -------------------------------------------------------------
   Shopping List Hero Banner
   ------------------------------------------------------------- */
.shopping-hero {
  background-color: var(--color-cream, #fcfaf6);
  padding: 48px 0;
  border-bottom: 1px solid var(--color-divider, #efe8de);
  position: relative;
  overflow: hidden;
}
@media (max-width: 767px) {
  .shopping-hero {
    padding: 32px 0;
  }
}
.shopping-hero__grid {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 40px;
  align-items: center;
}
@media (max-width: 991px) {
  .shopping-hero__grid {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}
.shopping-hero__left {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.shopping-hero .shopping-breadcrumbs {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  margin-bottom: 16px;
}
.shopping-hero .shopping-breadcrumbs a {
  color: var(--color-caption, #9d948b);
  text-decoration: none;
  transition: color 0.2s ease;
}
.shopping-hero .shopping-breadcrumbs a:hover {
  color: var(--color-sage, #5d6848);
}
.shopping-hero .shopping-breadcrumbs .divider {
  color: var(--color-caption, #9d948b);
}
.shopping-hero .shopping-breadcrumbs .current {
  color: var(--color-heading, #2c2622);
  font-weight: 600;
}
.shopping-hero__title {
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 48px;
  font-weight: 700;
  color: var(--color-heading, #2c2622);
  line-height: 1.15;
  margin: 0 0 12px;
}
@media (max-width: 767px) {
  .shopping-hero__title {
    font-size: 32px;
  }
}
.shopping-hero__meta {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: var(--color-body, #6f675f);
  font-weight: 600;
  margin-bottom: 16px;
}
.shopping-hero__meta-bullet {
  color: var(--color-caption, #9d948b);
}
.shopping-hero__desc {
  font-size: 15px;
  line-height: 1.5;
  color: var(--color-body, #6f675f);
  max-width: 500px;
  margin: 0 0 24px;
}
.shopping-hero__actions {
  display: flex;
  align-items: center;
  gap: 12px;
}
.shopping-hero__btn-add {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background-color: var(--color-sage, #5d6848);
  color: #ffffff;
  font-size: 13px;
  font-weight: 700;
  padding: 0 24px;
  height: 42px;
  border-radius: 12px;
  text-decoration: none;
  transition: all 0.25s ease;
  box-shadow: 0 4px 12px rgba(93, 104, 72, 0.12);
}
.shopping-hero__btn-add svg {
  stroke: currentColor;
}
.shopping-hero__btn-add:hover {
  background-color: var(--color-sage-hover, #4c563b);
  transform: translateY(-1px);
  box-shadow: 0 6px 16px rgba(76, 86, 59, 0.22);
}
.shopping-hero__btn-more {
  background-color: #ffffff;
  border: 1px solid var(--color-border, #e9e2d8);
  border-radius: 12px;
  width: 42px;
  height: 42px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-heading, #2c2622);
  cursor: pointer;
  transition: all 0.2s ease;
  padding: 0;
}
.shopping-hero__btn-more:hover {
  border-color: var(--color-sage, #5d6848);
  color: var(--color-sage, #5d6848);
  background-color: rgba(93, 104, 72, 0.02);
}
.shopping-hero__more-dropdown {
  position: relative;
}
.shopping-hero__more-dropdown.is-open .shopping-hero__more-options {
  display: block;
}
.shopping-hero__more-options {
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  background-color: #ffffff;
  border: 1px solid var(--color-border, #e9e2d8);
  border-radius: 12px;
  box-shadow: 0 8px 24px rgba(44, 38, 34, 0.08);
  z-index: 100;
  min-width: 180px;
  padding: 6px;
  margin: 0;
  list-style: none;
  display: none;
}
.shopping-hero__more-options li {
  padding: 8px 16px;
  font-size: 13px;
  font-weight: 600;
  border-radius: 8px;
  cursor: pointer;
  color: var(--color-body, #6f675f);
  transition: all 0.2s ease;
}
.shopping-hero__more-options li:hover {
  background-color: var(--color-bg-main, #fcfaf7);
  color: var(--color-heading, #2c2622);
}
.shopping-hero__more-options li.text-danger {
  color: var(--color-danger, #c97b67);
}
.shopping-hero__more-options li.text-danger:hover {
  background-color: rgba(201, 123, 103, 0.06);
}
.shopping-hero__image {
  object-fit: cover;
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  width: auto;
  -webkit-mask-image: linear-gradient(to right, transparent 0%, black 25%);
  mask-image: linear-gradient(to right, transparent 0%, black 25%);
}
@media (max-width: 767px) {
  .shopping-hero__image {
    display: none;
  }
}

.page-template-my-diet .main {
  overflow: visible;
}
.page-template-my-diet .diet-builder {
  overflow: visible;
}

.diet-builder {
  padding: 60px 0 100px;
  min-height: 80vh;
}
@media (max-width: 767px) {
  .diet-builder {
    padding: 40px 0 80px;
  }
}
.diet-builder .nav-pill-wrapper {
  margin-bottom: 48px;
}
@media (max-width: 767px) {
  .diet-builder .nav-pill-wrapper {
    width: calc(100% + 24px);
    margin-left: -12px;
  }
}
.diet-builder {
  /* Lock Card Styles */
}
.diet-builder__lock-card {
  background: var(--color-bg);
  border: 1px solid var(--color-divider);
  border-radius: 20px;
  padding: 60px 40px;
  text-align: center;
  max-width: 500px;
  margin: 40px auto;
  box-shadow: 0 8px 32px var(--color-rgba-0-0-0-0-05);
}
.diet-builder__lock-card .lock-icon {
  width: 80px;
  height: 80px;
  background-color: var(--color-rgba-0-0-0-0-05);
  color: var(--color-accent, #c4622d);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 24px;
}
.diet-builder__lock-card .lock-icon svg {
  width: 36px;
  height: 36px;
}
.diet-builder__lock-card h2 {
  font-family: var(--font-family-secondary);
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 12px;
  color: var(--color-text-main);
}
.diet-builder__lock-card p {
  color: var(--color-text-muted-alt);
  font-size: 15px;
  line-height: 1.5;
  margin-bottom: 24px;
}
.diet-builder__lock-card p.desc-extra {
  font-size: 13px;
  color: var(--color-nature);
  margin-top: -12px;
}
.diet-builder__lock-card .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 32px;
  font-weight: 700;
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  border-radius: 8px;
  text-decoration: none;
  transition: all 0.25s ease;
  cursor: pointer;
}
.diet-builder {
  /* Grid Layout */
}
.diet-builder__grid {
  gap: 20px;
  align-items: center;
  margin: 64px auto 48px;
}

.diet-day-card {
  display: grid;
  grid-template-columns: 100px 100%;
  gap: 32px;
}

.diet-grid-header-row {
  display: grid;
  grid-template-columns: 140px repeat(4, 1fr);
  border-bottom: 1px solid rgba(61, 50, 41, 0.08);
  padding-bottom: 20px;
  align-items: center;
  gap: 16px;
}
@media (max-width: 991px) {
  .diet-grid-header-row {
    grid-template-columns: 80px repeat(4, 1fr);
    gap: 10px;
  }
}
@media (max-width: 767px) {
  .diet-grid-header-row {
    display: none;
    /* Hide standard desktop headers on small mobile layout */
  }
}

.diet-grid-header-blank {
  width: 100%;
}

.diet-grid-header-meal {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 8px;
}
.diet-grid-header-meal .meal-icon-wrapper {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.diet-grid-header-meal .meal-icon-wrapper svg {
  width: 16px;
  height: 16px;
  stroke-width: 2.2;
}
.diet-grid-header-meal {
  /* Specific meal header icon themes */
}
.diet-grid-header-meal[data-meal-type=breakfast] .meal-icon-wrapper {
  background-color: rgba(212, 98, 42, 0.08);
  color: #D4622A;
}
.diet-grid-header-meal[data-meal-type=lunch] .meal-icon-wrapper {
  background-color: rgba(90, 122, 82, 0.08);
  color: #5A7A52;
}
.diet-grid-header-meal[data-meal-type=dinner] .meal-icon-wrapper {
  background-color: rgba(61, 50, 41, 0.06);
  color: #3D3229;
}
.diet-grid-header-meal[data-meal-type=snack] .meal-icon-wrapper {
  background-color: rgba(212, 98, 42, 0.06);
  color: #D4622A;
}
.diet-grid-header-meal .meal-info {
  display: flex;
  flex-direction: column;
  text-align: left;
  min-width: 0;
}
.diet-grid-header-meal .meal-info .meal-title-name {
  font-family: var(--font-header);
  font-size: 13px;
  font-weight: 700;
  color: #3D3229;
  line-height: 1.2;
}
.diet-grid-header-meal .meal-info .meal-range-calories {
  font-family: var(--font-body);
  font-size: 10px;
  color: #8C7E74;
  font-weight: 500;
  margin-top: 1px;
  white-space: nowrap;
}

.diet-day-row {
  display: grid;
  grid-template-columns: 140px repeat(4, 1fr);
  gap: 16px;
  align-items: stretch;
  border-bottom: 1px solid rgba(61, 50, 41, 0.05);
  padding: 24px 0;
}
@media (max-width: 991px) {
  .diet-day-row {
    grid-template-columns: 80px repeat(4, 1fr);
    gap: 10px;
  }
}
@media (max-width: 767px) {
  .diet-day-row {
    grid-template-columns: 1fr;
    gap: 14px;
    padding: 18px 0;
  }
}

/* Left side day metadata label */
.diet-grid-day-label {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  height: 100%;
  box-sizing: border-box;
  padding-right: 8px;
  gap: 12px;
}
@media (max-width: 767px) {
  .diet-grid-day-label {
    flex-direction: row;
    align-items: center;
    width: 100%;
    padding-bottom: 8px;
    border-bottom: 1.5px solid rgba(61, 50, 41, 0.05);
  }
}
.diet-grid-day-label .day-label-meta {
  display: flex;
  flex-direction: column;
}
.diet-grid-day-label .diet-grid-day-abbr {
  font-family: var(--font-header);
  font-size: 22px;
  font-weight: 800;
  color: #3D3229;
  line-height: 1.1;
}
.diet-grid-day-label .diet-grid-day-full {
  font-family: var(--font-body);
  font-size: 11px;
  color: #8C7E74;
  font-weight: 500;
  margin-top: 2px;
}

/* Circular completion progress indicator */
.diet-grid-day-progress {
  display: inline-block;
}
.diet-grid-day-progress .progress-circle {
  position: relative;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: radial-gradient(closest-side, white 79%, transparent 80% 100%), conic-gradient(#5A7A52 var(--percent, 0%), rgba(61, 50, 41, 0.08) 0);
  font-family: var(--font-body);
  font-size: 9px;
  font-weight: 700;
  color: #3D3229;
  box-shadow: inset 0 0 0 1px rgba(61, 50, 41, 0.02);
}
.diet-grid-day-progress .progress-circle span {
  display: inline-block;
  line-height: 1;
}
.diet-grid-day-progress .progress-circle.is-empty {
  background: #FAF8F5;
  border: 1.5px solid rgba(61, 50, 41, 0.08);
  color: #8C7E74;
  font-weight: 500;
}

/* Day total calories display */
.diet-grid-day-calories {
  font-family: var(--font-body);
  font-size: 11px;
  color: #8C7E74;
  line-height: 1.25;
}
.diet-grid-day-calories strong {
  font-family: var(--font-header);
  font-size: 14px;
  font-weight: 700;
  color: #3D3229;
  display: block;
  margin-bottom: 2px;
}
@media (max-width: 767px) {
  .diet-grid-day-calories {
    text-align: right;
  }
}

/* Meal Slot Styles */
.diet-meal-slot {
  background-color: #ffffff;
  border: 1px solid rgba(61, 50, 41, 0.04);
  border-radius: 20px;
  padding: 12px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 120px;
  box-shadow: 0 2px 10px rgba(61, 50, 41, 0.01);
  box-sizing: border-box;
  transition: border-color 0.2s ease;
}
.diet-meal-slot:hover {
  border-color: rgba(90, 122, 82, 0.25);
}
@media (max-width: 991px) {
  .diet-meal-slot {
    padding: 8px;
    min-height: 100px;
  }
}
.diet-meal-slot .diet-meal-slot__recipes-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 12px;
  width: 100%;
}

/* Redesigned Card Item within list */
.diet-meal-card-item {
  display: flex;
  align-items: center;
  gap: 10px;
  background-color: #ffffff;
  border: 1px solid rgba(61, 50, 41, 0.05);
  border-radius: 12px;
  padding: 8px;
  position: relative;
  width: 100%;
  box-sizing: border-box;
  transition: box-shadow 0.2s ease;
}
.diet-meal-card-item:hover {
  box-shadow: 0 4px 12px rgba(61, 50, 41, 0.04);
}
.diet-meal-card-item .diet-meal-card-item__img {
  width: 44px;
  height: 44px;
  border-radius: 8px;
  background-size: cover;
  background-position: center;
  flex-shrink: 0;
  background-color: #FAF6F0;
}
.diet-meal-card-item .diet-meal-card-item__info {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  min-width: 0;
}
.diet-meal-card-item .diet-meal-card-item__title {
  font-family: var(--font-header);
  font-size: 11px;
  font-weight: 700;
  color: #3D3229 !important;
  text-decoration: none;
  line-height: 1.3;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-bottom: 2px;
}
.diet-meal-card-item .diet-meal-card-item__title:hover {
  color: #5A7A52 !important;
  text-decoration: underline;
}
.diet-meal-card-item .diet-meal-card-item__calories {
  font-family: var(--font-body);
  font-size: 9px;
  color: #8C7E74;
  font-weight: 500;
}
.diet-meal-card-item .diet-meal-card-item__remove {
  background: none;
  border: none;
  font-size: 16px;
  font-weight: 700;
  color: #8C7E74;
  cursor: pointer;
  padding: 2px 4px;
  line-height: 1;
  flex-shrink: 0;
  transition: color 0.15s ease;
}
.diet-meal-card-item .diet-meal-card-item__remove:hover {
  color: #D4622A;
}

/* Redesigned add recipe slot button */
.diet-meal-slot__add-btn-redesign {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: 100%;
  height: 34px;
  background-color: transparent;
  border: 1px dashed rgba(61, 50, 41, 0.12);
  border-radius: 12px;
  color: #5A7A52;
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.2s ease;
  margin-top: auto;
  box-sizing: border-box;
}
.diet-meal-slot__add-btn-redesign .plus-icon {
  font-size: 13px;
  font-weight: 700;
}
.diet-meal-slot__add-btn-redesign:hover {
  background-color: rgba(90, 122, 82, 0.04);
  border-color: #5A7A52;
  border-style: solid;
}

/* Footer styles */
.diet-builder__footer {
  width: 100%;
  padding: 16px 0;
  z-index: 90;
  margin-top: 24px;
}
.diet-builder__footer-inner {
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 20px;
}
.diet-builder__footer .diet-builder__status-msg {
  font-family: var(--font-body);
  font-size: 13px;
  font-weight: 700;
  padding: 6px 16px;
  border-radius: 20px;
  background-color: rgba(61, 50, 41, 0.03);
  color: #8C7E74;
  transition: all 0.2s ease;
}
.diet-builder__footer .diet-builder__status-msg.success {
  background-color: rgba(90, 122, 82, 0.08);
  color: #5A7A52;
}
.diet-builder__footer .diet-builder__status-msg.error {
  background-color: rgba(212, 98, 42, 0.08);
  color: #D4622A;
}

/* Fancybox Search Modal Overrides */
.fancybox__container.diet-search-fancybox .fancybox__slide {
  padding: 0 !important;
}
.fancybox__container.diet-search-fancybox .fancybox__content {
  width: 100vw !important;
  height: 100vh !important;
  max-width: 100% !important;
  max-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background-color: var(--color-bg) !important;
  border-radius: 0 !important;
  display: flex !important;
  flex-direction: column;
}

/* Live Search Modal Styles */
.diet-search-modal {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  background-color: var(--color-bg);
  box-sizing: border-box;
}
.diet-search-modal__body {
  padding: 32px 32px 80px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  overflow: hidden;
  box-sizing: border-box;
  max-width: 800px;
  margin: 0 auto;
  width: 100%;
  overflow-y: auto;
}
@media (max-width: 767px) {
  .diet-search-modal__body {
    padding: 20px 20px 80px;
  }
}
.diet-search-modal__search-wrapper {
  position: relative;
  margin-bottom: 24px;
}
.diet-search-modal__search-wrapper input {
  width: 100%;
  padding: 16px 48px 16px 20px;
  border: 1px solid var(--color-carbs-bg);
  border-radius: 12px;
  font-size: 18px;
  outline: none;
  transition: border-color 0.2s ease;
  box-sizing: border-box;
}
.diet-search-modal__search-wrapper input:focus {
  border-color: var(--color-accent, #c4622d);
}
@media (max-width: 767px) {
  .diet-search-modal__search-wrapper input {
    font-size: 16px;
    padding: 12px 40px 12px 16px;
    border-radius: 8px;
  }
}
.diet-search-modal__search-wrapper .search-loader {
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
}
.diet-search-modal__search-wrapper .search-loader .spinner {
  animation: rotate 2s linear infinite;
  width: 24px;
  height: 24px;
}
.diet-search-modal__search-wrapper .search-loader .spinner .path {
  stroke: var(--color-accent, #c4622d);
  stroke-linecap: round;
  animation: dash 1.5s ease-in-out infinite;
}
.diet-search-modal__filters {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 24px;
}
@media (min-width: 768px) {
  .diet-search-modal__filters {
    flex-direction: row;
    align-items: center;
    gap: 16px;
  }
}
.diet-search-modal__filters-label {
  font-size: 14px;
  font-weight: 600;
  color: var(--color-text-main);
  flex-shrink: 0;
}
.diet-search-modal__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.diet-search-modal .diet-search-tag,
.diet-search-modal .diet-search-sort-btn {
  padding: 6px 14px;
  font-size: 13px;
  font-weight: 500;
  color: var(--color-nature);
  background-color: var(--color-bg-cream);
  border: 1px solid var(--color-divider);
  border-radius: 20px;
  cursor: pointer;
  transition: all 0.2s ease;
  outline: none;
}
.diet-search-modal .diet-search-tag:hover,
.diet-search-modal .diet-search-sort-btn:hover {
  background-color: var(--color-surface);
  color: var(--color-accent);
}
.diet-search-modal .diet-search-tag.active,
.diet-search-modal .diet-search-sort-btn.active {
  background-color: var(--color-accent);
  color: var(--color-bg);
  border-color: var(--color-accent);
}
.diet-search-modal__results {
  list-style: none;
  padding: 0;
  margin: 0;
  flex-grow: 1;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 16px;
  box-sizing: border-box;
}
@media (max-width: 767px) {
  .diet-search-modal__results {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}
.diet-search-modal__results .empty-state {
  grid-column: 1/-1;
  text-align: center;
  padding: 60px 20px;
  color: var(--color-nature);
  font-size: 16px;
  font-style: italic;
}

/* Search Results Items */
.recipe-search-item {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 12px 16px;
  border: 1px solid var(--color-divider);
  border-radius: 12px;
  cursor: pointer;
  transition: all 0.25s ease;
  background-color: var(--color-bg);
}
.recipe-search-item:hover {
  border-color: var(--color-accent, #c4622d);
  background-color: #fcfbf9;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}
.recipe-search-item__img {
  width: 60px;
  height: 60px;
  border-radius: 8px;
  background-size: cover;
  background-position: center;
  background-color: var(--color-bg-cream);
  flex-shrink: 0;
}
.recipe-search-item__img-placeholder {
  width: 60px;
  height: 60px;
  border-radius: 8px;
  background-color: var(--color-bg-cream);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  flex-shrink: 0;
}
.recipe-search-item__info {
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.recipe-search-item__title {
  font-size: 14px;
  font-weight: 700;
  color: var(--color-text-main, #1a1814);
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.recipe-search-item__author {
  font-size: 12px;
  color: var(--color-nature);
  margin-top: 4px;
}
.recipe-search-item__nutrients {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 6px;
}
.recipe-search-item .nutrient-badge {
  font-size: 11px;
  padding: 3px 8px;
  border-radius: 6px;
  font-weight: 500;
  line-height: 1;
}
.recipe-search-item .nutrient-badge.calories {
  background-color: var(--color-calories-bg);
  color: var(--color-calories);
}
.recipe-search-item .nutrient-badge.protein, .recipe-search-item .nutrient-badge.fats, .recipe-search-item .nutrient-badge.carbs {
  background-color: var(--color-bg-gray);
  color: var(--color-text-muted-alt);
}

@keyframes rotate {
  100% {
    transform: rotate(360deg);
  }
}
@keyframes dash {
  0% {
    stroke-dasharray: 1, 150;
    stroke-dashoffset: 0;
  }
  50% {
    stroke-dasharray: 90, 150;
    stroke-dashoffset: -35;
  }
  100% {
    stroke-dasharray: 90, 150;
    stroke-dashoffset: -124;
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/* Mode Selector styling */
.diet-mode-selector-wrapper {
  text-align: center;
  margin-bottom: 48px;
}

.diet-mode-selector {
  display: inline-flex;
  background-color: var(--color-bg);
  border: 1px solid var(--color-divider);
  border-radius: 30px;
  padding: 4px;
  box-shadow: 0 4px 12px var(--color-rgba-0-0-0-0-05);
}
.diet-mode-selector .diet-mode-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: none;
  border: none;
  padding: 8px 20px;
  font-size: 14px;
  font-weight: 700;
  color: var(--color-nature);
  cursor: pointer;
  border-radius: 20px;
  transition: all 0.25s ease;
}
.diet-mode-selector .diet-mode-btn svg {
  width: 18px;
  height: 18px;
  stroke: var(--color-nature);
  transition: stroke 0.25s ease;
}
.diet-mode-selector .diet-mode-btn:hover {
  color: var(--color-contrast);
}
.diet-mode-selector .diet-mode-btn.active {
  color: var(--color-bg);
  background-color: var(--color-contrast);
}
.diet-mode-selector .diet-mode-btn.active svg {
  stroke: var(--color-bg);
}

/* Mode toggles on builder container */
.diet-builder.mode-view .diet-builder__grid {
  display: none !important;
}
.diet-builder.mode-view .diet-builder__footer {
  display: none !important;
}
.diet-builder.mode-view .diet-builder__view-mode {
  display: block;
  justify-content: center;
}
.diet-builder.mode-edit .diet-builder__grid {
  display: grid;
}
.diet-builder.mode-edit .diet-builder__footer {
  display: flex;
  justify-content: center;
}
.diet-builder.mode-edit .diet-builder__view-mode {
  display: none !important;
}

.diet-builder__view-mode {
  animation: fadeIn 0.3s ease;
}

.empty-diet-msg {
  text-align: center;
  padding: 80px 20px;
  background-color: var(--color-bg);
  border: 1px solid var(--color-divider);
  border-radius: 20px;
  color: var(--color-nature);
  font-style: italic;
  font-size: 16px;
}

/* Subscription Page Styles */
.subscription-page {
  padding: 100px 0 140px;
  background-color: var(--color-bg-warm, #fbfaf7);
  position: relative;
  overflow: hidden;
}
.subscription-page::before, .subscription-page::after {
  content: "";
  position: absolute;
  width: 600px;
  height: 600px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(224, 122, 95, 0.1) 0%, rgba(224, 122, 95, 0) 70%);
  filter: blur(60px);
  z-index: 1;
  pointer-events: none;
}
.subscription-page::before {
  top: 5%;
  left: -200px;
}
.subscription-page::after {
  bottom: 10%;
  right: -200px;
}
.subscription-page .container {
  position: relative;
  z-index: 2;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}
.subscription-page .container.container-small {
  max-width: 960px;
}
.subscription-page .premium-card {
  background: var(--color-contrast, #1c1917);
  color: var(--color-bg-cream, #faf6f1);
  border: 1px solid rgba(224, 122, 95, 0.3);
  border-radius: 28px;
  padding: 48px;
  box-shadow: 0 25px 50px -12px rgba(28, 25, 23, 0.25);
  margin-bottom: 96px;
  position: relative;
  overflow: hidden;
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s ease;
}
.subscription-page .premium-card::before {
  content: "";
  position: absolute;
  top: -50%;
  right: -20%;
  width: 80%;
  height: 200%;
  background: linear-gradient(135deg, rgba(224, 122, 95, 0.05) 0%, rgba(255, 255, 255, 0) 100%);
  transform: rotate(-15deg);
  pointer-events: none;
}
.subscription-page .premium-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 35px 60px -15px rgba(28, 25, 23, 0.4);
}
.subscription-page .premium-card__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 40px;
  flex-wrap: wrap;
  gap: 20px;
  position: relative;
  z-index: 2;
}
.subscription-page .premium-card__title {
  font-family: var(--font-header), sans-serif;
  font-size: var(--fs-2xl, 30px);
  font-weight: 800;
  color: #ffffff;
  margin: 0;
  letter-spacing: -0.03em;
  text-transform: uppercase;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.subscription-page .premium-card__badge {
  display: inline-flex;
  align-items: center;
  padding: 10px 20px;
  border-radius: 30px;
  font-size: var(--fs-sm, 14px);
  font-weight: 700;
  gap: 8px;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.subscription-page .premium-card__badge svg {
  flex-shrink: 0;
}
.subscription-page .premium-card__badge--active {
  background-color: rgba(46, 125, 50, 0.2);
  color: #4ade80;
  border: 1px solid rgba(74, 222, 128, 0.3);
  box-shadow: 0 0 15px rgba(74, 222, 128, 0.1);
}
.subscription-page .premium-card__badge--cancelled {
  background-color: rgba(153, 101, 94, 0.2);
  color: #f87171;
  border: 1px solid rgba(248, 113, 113, 0.3);
}
.subscription-page .premium-card__details {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 40px;
  margin-bottom: 48px;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  padding: 40px 0;
  position: relative;
  z-index: 2;
}
.subscription-page .premium-card__detail-item {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.subscription-page .premium-card__detail-item .label {
  font-size: var(--fs-xs, 12px);
  color: rgba(250, 246, 241, 0.5);
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-weight: 700;
}
.subscription-page .premium-card__detail-item .value {
  font-size: var(--fs-lg, 20px);
  font-weight: 700;
  color: #ffffff;
  letter-spacing: -0.01em;
}
.subscription-page .premium-card__actions {
  display: flex;
  justify-content: flex-end;
  gap: 20px;
  flex-wrap: wrap;
  position: relative;
  z-index: 2;
}
.subscription-page .premium-card__actions .btn {
  border-radius: 99px;
  font-size: var(--fs-sm, 14px);
  font-weight: 700;
  height: 52px;
  padding: 0 36px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}
.subscription-page .premium-card__actions .btn-primary {
  background-color: var(--color-accent);
  color: var(--color-bg);
  border: none;
  box-shadow: 0 4px 15px rgba(224, 122, 95, 0.3);
}
.subscription-page .premium-card__actions .btn-primary:hover {
  background-color: #ffffff;
  color: var(--color-contrast);
  transform: translateY(-2px);
  box-shadow: 0 10px 20px rgba(255, 255, 255, 0.15);
}
.subscription-page .premium-card__actions .btn-secondary {
  background-color: transparent;
  border: 1px solid rgba(255, 255, 255, 0.2);
  color: #ffffff;
}
.subscription-page .premium-card__actions .btn-secondary:hover {
  border-color: var(--color-danger);
  color: var(--color-danger);
  background-color: rgba(153, 101, 94, 0.1);
  transform: translateY(-1px);
}
.subscription-page .benefits-section {
  margin-bottom: 110px;
}
.subscription-page .benefits-section__title {
  font-family: var(--font-header), sans-serif;
  text-align: center;
  margin-bottom: 64px;
  color: var(--color-text-main);
  font-size: var(--fs-3xl, 36px);
  font-weight: 700;
  letter-spacing: -0.02em;
}
.subscription-page .benefits-section__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 32px;
}
.subscription-page .benefits-section__card {
  background: var(--color-bg, #ffffff);
  border: 1px solid var(--color-divider);
  border-radius: 28px;
  padding: 40px;
  position: relative;
  overflow: hidden;
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s ease, border-color 0.3s ease;
  display: flex;
  flex-direction: column;
  gap: 24px;
  box-shadow: 0 4px 24px rgba(28, 25, 23, 0.01);
}
.subscription-page .benefits-section__card::after {
  position: absolute;
  bottom: 12px;
  right: 28px;
  font-family: "Playfair Display", serif;
  font-size: 96px;
  font-weight: 700;
  font-style: italic;
  color: var(--color-text-secondary);
  opacity: 0.05;
  line-height: 1;
  pointer-events: none;
  transition: opacity 0.3s ease, transform 0.3s ease;
}
.subscription-page .benefits-section__card:nth-child(1)::after {
  content: "01";
}
.subscription-page .benefits-section__card:nth-child(2)::after {
  content: "02";
}
.subscription-page .benefits-section__card:nth-child(3)::after {
  content: "03";
}
.subscription-page .benefits-section__card:nth-child(4)::after {
  content: "04";
}
.subscription-page .benefits-section__card:hover {
  transform: translateY(-8px);
  border-color: rgba(224, 122, 95, 0.25);
  box-shadow: 0 25px 50px rgba(224, 122, 95, 0.07);
}
.subscription-page .benefits-section__card:hover::after {
  opacity: 0.12;
  transform: translateY(-8px) scale(1.05);
}
.subscription-page .benefits-section__card:hover .benefits-section__icon {
  background: var(--color-accent);
  color: var(--color-bg);
  transform: scale(1.05);
  box-shadow: 0 8px 20px rgba(224, 122, 95, 0.25);
}
.subscription-page .benefits-section__icon {
  width: 60px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--color-bg-cream, #faf6f1);
  color: var(--color-accent);
  border-radius: 18px;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
  box-shadow: inset 0 0 0 1px rgba(224, 122, 95, 0.1);
}
.subscription-page .benefits-section__icon svg {
  width: 26px;
  height: 26px;
}
.subscription-page .benefits-section__card-title {
  font-family: var(--font-header), sans-serif;
  font-size: var(--fs-lg, 20px);
  font-weight: 700;
  color: var(--color-text-main);
  margin: 0;
  letter-spacing: -0.02em;
  line-height: 1.3;
}
.subscription-page .benefits-section__card-desc {
  font-size: var(--fs-base, 16px);
  line-height: 1.6;
  color: var(--color-text-muted);
  margin: 0;
}
.subscription-page .pricing-section__title {
  font-family: var(--font-header), sans-serif;
  text-align: center;
  margin-bottom: 64px;
  color: var(--color-text-main);
  font-size: var(--fs-3xl, 36px);
  font-weight: 700;
  letter-spacing: -0.02em;
}
.subscription-page .pricing-section__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 40px;
  max-width: 900px;
  margin: 0 auto;
  align-items: center;
}
.subscription-page .pricing-section__card {
  background: var(--color-bg, #ffffff);
  border: 1px solid var(--color-divider);
  border-radius: 32px;
  padding: 56px 44px;
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 540px;
  transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.4s ease, border-color 0.4s ease;
  box-shadow: 0 4px 24px rgba(28, 25, 23, 0.02);
}
.subscription-page .pricing-section__card:hover {
  transform: translateY(-6px);
  box-shadow: 0 24px 50px rgba(28, 25, 23, 0.05);
}
.subscription-page .pricing-section__card:not(.subscription-page .pricing-section__card--popular) {
  border-color: var(--color-divider);
}
.subscription-page .pricing-section__card--popular {
  border: 2.5px solid var(--color-accent);
  box-shadow: 0 15px 40px rgba(224, 122, 95, 0.09);
  background: var(--color-bg, #ffffff);
}
@media (min-width: 768px) {
  .subscription-page .pricing-section__card--popular {
    transform: scale(1.04);
  }
  .subscription-page .pricing-section__card--popular:hover {
    transform: scale(1.04) translateY(-6px);
    box-shadow: 0 28px 60px rgba(224, 122, 95, 0.16);
  }
}
.subscription-page .pricing-section__card--popular .pricing-section__badge {
  position: absolute;
  top: -18px;
  left: 50%;
  transform: translateX(-50%);
  background: var(--color-accent);
  color: var(--color-bg, #ffffff);
  padding: 8px 24px;
  border-radius: 30px;
  font-family: var(--font-header), sans-serif;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  box-shadow: 0 4px 15px rgba(224, 122, 95, 0.3);
  animation: pulseGlow 3s infinite alternate;
}
.subscription-page .pricing-section__name {
  font-family: var(--font-header), sans-serif;
  font-size: var(--fs-xl, 24px);
  font-weight: 700;
  color: var(--color-text-main);
  margin: 0 0 16px;
  letter-spacing: -0.02em;
}
.subscription-page .pricing-section__price-wrapper {
  display: flex;
  align-items: baseline;
  gap: 6px;
  margin-bottom: 40px;
}
.subscription-page .pricing-section__price {
  font-size: 52px;
  font-weight: 800;
  color: var(--color-text-main);
  line-height: 1;
  letter-spacing: -0.03em;
}
.subscription-page .pricing-section__period {
  font-size: var(--fs-base, 16px);
  color: var(--color-text-muted);
  font-weight: 600;
}
.subscription-page .pricing-section__features {
  list-style: none;
  padding: 0;
  margin: 0 0 52px;
  display: flex;
  flex-direction: column;
  gap: 22px;
}
.subscription-page .pricing-section__features li {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  font-size: var(--fs-base, 16px);
  color: var(--color-text-muted);
  line-height: 1.4;
}
.subscription-page .pricing-section__features li strong {
  color: var(--color-text-main);
}
.subscription-page .pricing-section__features li svg {
  margin-top: 3px;
  flex-shrink: 0;
  color: var(--color-accent);
  width: 18px;
  height: 18px;
}
.subscription-page .pricing-section__button {
  margin-top: auto;
  width: 100%;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 56px;
  padding: 0 32px;
  border-radius: 99px;
  font-weight: 700;
  font-size: var(--fs-base, 16px);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
  cursor: pointer;
  text-decoration: none;
}
.subscription-page .pricing-section__button--primary {
  background: var(--color-accent);
  color: var(--color-bg, #ffffff);
  border: none;
  box-shadow: 0 6px 18px rgba(224, 122, 95, 0.25);
}
.subscription-page .pricing-section__button--primary:hover {
  background: var(--color-contrast);
  color: var(--color-bg);
  box-shadow: 0 8px 24px rgba(28, 25, 23, 0.2);
  transform: translateY(-2px);
}
.subscription-page .pricing-section__button--secondary {
  background: transparent;
  color: var(--color-text-main);
  border: 1.5px solid var(--color-text-main);
}
.subscription-page .pricing-section__button--secondary:hover {
  background: var(--color-contrast);
  color: #ffffff;
  border-color: var(--color-contrast);
  transform: translateY(-2px);
}
.subscription-page .dev-test-panel {
  margin-top: 110px;
  padding: 40px;
  background: var(--color-bg-cream, #faf6f1);
  border: 1.5px dashed var(--color-accent);
  border-radius: 24px;
  text-align: center;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.01);
}
.subscription-page .dev-test-panel__title {
  font-family: var(--font-header), sans-serif;
  font-size: var(--fs-md, 18px);
  font-weight: 800;
  margin-bottom: 12px;
  color: var(--color-accent);
  text-transform: uppercase;
  letter-spacing: 0.08em;
}
.subscription-page .dev-test-panel__desc {
  font-size: var(--fs-sm, 14px);
  color: var(--color-text-muted);
  margin-bottom: 28px;
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
}
.subscription-page .dev-test-panel__buttons {
  display: flex;
  gap: 16px;
  justify-content: center;
  flex-wrap: wrap;
}
.subscription-page .dev-test-panel__buttons .btn {
  border-radius: 99px;
  font-size: var(--fs-xs, 12px);
  font-weight: 700;
  height: 44px;
  padding: 0 24px;
  transition: all 0.2s ease;
}

.sub-modal {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(28, 25, 23, 0.6);
  backdrop-filter: blur(10px);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
}
.sub-modal.is-open {
  opacity: 1;
  pointer-events: auto;
}
.sub-modal__content {
  background: var(--color-bg, #ffffff);
  border-radius: 32px;
  padding: 56px;
  max-width: 500px;
  width: 90%;
  box-shadow: 0 30px 70px rgba(0, 0, 0, 0.2);
  text-align: center;
  transform: translateY(30px);
  transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
.sub-modal.is-open .sub-modal__content {
  transform: translateY(0);
}
.sub-modal__icon {
  width: 80px;
  height: 80px;
  background: rgba(153, 101, 94, 0.1);
  color: var(--color-danger, #99655e);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 32px;
}
.sub-modal__icon svg {
  width: 40px;
  height: 40px;
}
.sub-modal__title {
  font-family: var(--font-header), sans-serif;
  font-size: var(--fs-2xl, 24px);
  font-weight: 700;
  margin: 0 0 16px;
  color: var(--color-text-main);
  letter-spacing: -0.01em;
}
.sub-modal__text {
  font-size: var(--fs-base, 16px);
  color: var(--color-text-muted);
  line-height: 1.6;
  margin: 0 0 40px;
}
.sub-modal__buttons {
  display: flex;
  gap: 16px;
  justify-content: center;
  flex-wrap: wrap;
}
.sub-modal__buttons .btn {
  border-radius: 99px;
  font-size: var(--fs-sm, 14px);
  font-weight: 700;
  height: 52px;
  padding: 0 32px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.sub-modal__buttons .btn.js-confirm-cancel {
  transition: all 0.3s ease;
}
.sub-modal__buttons .btn.js-confirm-cancel:hover {
  background-color: var(--color-contrast) !important;
  border-color: var(--color-contrast) !important;
}

@keyframes pulseGlow {
  0% {
    box-shadow: 0 4px 15px rgba(224, 122, 95, 0.3);
  }
  100% {
    box-shadow: 0 4px 25px rgba(224, 122, 95, 0.6);
  }
}
.page-template-family-diet .main {
  overflow: visible;
}

.family-diet-builder {
  padding: 40px 0 100px;
  min-height: 80vh;
}
.family-diet-builder .diet-mode-selector-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
}
.family-diet-builder .ration-day__head {
  border-bottom: 1px solid var(--color-divider);
  padding-bottom: 16px;
  margin-bottom: 16px;
}
.family-diet-builder .nav-pill-wrapper {
  margin-bottom: 40px;
}
@media (max-width: 767px) {
  .family-diet-builder {
    padding: 30px 0 60px;
  }
}
.family-diet-builder {
  /* Header Controls */
}
.family-diet-builder__controls {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 40px;
  gap: 20px;
}
@media (max-width: 767px) {
  .family-diet-builder__controls {
    flex-direction: column;
    align-items: stretch;
    margin-bottom: 24px;
  }
}
.family-diet-builder {
  /* Member Tabs for Day View */
}
.family-diet-builder .member-tabs-container {
  margin-bottom: 20px;
}
.family-diet-builder .member-tabs-container .member-tabs-title {
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--color-nature, #777);
  margin-bottom: 10px;
}
.family-diet-builder .family-member-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.family-diet-builder .family-member-pill {
  background-color: #ffffff;
  border: 1px solid var(--color-divider, #e8e8e8);
  border-radius: 30px;
  padding: 8px 20px;
  font-size: 14px;
  font-weight: 700;
  color: var(--color-text-main, #333);
  cursor: pointer;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
  display: inline-flex;
  align-items: center;
  gap: 8px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.02);
}
.family-diet-builder .family-member-pill svg {
  width: 14px;
  height: 14px;
  stroke: currentColor;
}
.family-diet-builder .family-member-pill:hover {
  border-color: var(--color-accent, #c4622d);
  color: var(--color-accent, #c4622d);
  transform: translateY(-1px);
}
.family-diet-builder .family-member-pill.active {
  background-color: var(--color-accent, #c4622d);
  color: #ffffff;
  border-color: var(--color-accent, #c4622d);
  box-shadow: 0 4px 12px rgba(196, 98, 45, 0.25);
}
.family-diet-builder {
  /* Profile Editor Card */
}
.family-diet-builder .family-profile-card {
  background: #ffffff;
  border: 1px solid var(--color-divider, #e8e8e8);
  border-radius: 24px;
  padding: 40px;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.03);
  margin-bottom: 40px;
  transition: all 0.3s ease;
}
@media (max-width: 767px) {
  .family-diet-builder .family-profile-card {
    padding: 24px 16px;
    border-radius: 16px;
  }
}
.family-diet-builder .family-profile-card__header {
  margin-bottom: 30px;
}
.family-diet-builder .family-profile-card__header .title {
  font-family: var(--font-family-secondary);
  font-size: 26px;
  font-weight: 800;
  color: var(--color-text-main, #1a1814);
  margin-bottom: 8px;
}
.family-diet-builder .family-profile-card__header .title em {
  font-style: italic;
  color: var(--color-accent, #c4622d);
}
.family-diet-builder .family-profile-card__header .desc {
  color: var(--color-text-muted-alt, #666);
  font-size: 15px;
  line-height: 1.5;
}
.family-diet-builder .family-member-row {
  display: grid;
  grid-template-columns: 2fr 2fr 1fr 1fr 1fr 1fr auto;
  gap: 16px;
  align-items: end;
  padding: 20px 0;
  border-bottom: 1px solid var(--color-divider, #e8e8e8);
  animation: fadeIn 0.3s ease;
}
@media (max-width: 991px) {
  .family-diet-builder .family-member-row {
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }
  .family-diet-builder .family-member-row .field-kbju {
    grid-column: span 1;
  }
  .family-diet-builder .family-member-row .field-action {
    grid-column: span 2;
    text-align: right;
  }
}
@media (max-width: 480px) {
  .family-diet-builder .family-member-row {
    grid-template-columns: 1fr;
  }
  .family-diet-builder .family-member-row .field-action {
    grid-column: span 1;
  }
}
.family-diet-builder .family-member-row .form-group {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.family-diet-builder .family-member-row .form-group label {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--color-nature, #777);
}
.family-diet-builder .family-member-row .form-group input,
.family-diet-builder .family-member-row .form-group select {
  width: 100%;
  padding: 12px 16px;
  border: 1px solid var(--color-divider, #e8e8e8);
  border-radius: 10px;
  font-size: 14px;
  color: var(--color-text-main, #333);
  background-color: #faf9f6;
  transition: all 0.2s ease;
  outline: none;
}
.family-diet-builder .family-member-row .form-group input:focus,
.family-diet-builder .family-member-row .form-group select:focus {
  border-color: var(--color-accent, #c4622d);
  background-color: #ffffff;
  box-shadow: 0 0 0 3px rgba(196, 98, 45, 0.1);
}
.family-diet-builder .family-member-row .remove-member-btn {
  background: none;
  border: 1px solid #ff4d4d;
  color: #ff4d4d;
  width: 44px;
  height: 44px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s ease;
}
.family-diet-builder .family-member-row .remove-member-btn:hover {
  background-color: #ff4d4d;
  color: #ffffff;
}
.family-diet-builder .family-member-row .remove-member-btn svg {
  width: 18px;
  height: 18px;
  fill: currentColor;
}
@media (max-width: 991px) {
  .family-diet-builder .family-member-row .remove-member-btn {
    width: auto;
    padding: 0 16px;
    gap: 8px;
    font-weight: 700;
    font-size: 13px;
  }
  .family-diet-builder .family-member-row .remove-member-btn::after {
    content: "Видалити";
  }
}
.family-diet-builder .family-profile-actions {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 30px;
  gap: 16px;
}
@media (max-width: 480px) {
  .family-diet-builder .family-profile-actions {
    flex-direction: column;
    align-items: stretch;
  }
}
.family-diet-builder {
  /* Grid Constructor Styles */
}
.family-diet-builder .family-grid {
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin-bottom: 48px;
}
.family-diet-builder .family-grid-header {
  display: grid;
  grid-template-columns: 120px repeat(4, 1fr);
  gap: 16px;
  align-items: center;
  border-bottom: 2px solid var(--color-divider, #e8e8e8);
  padding-bottom: 12px;
}
@media (max-width: 991px) {
  .family-diet-builder .family-grid-header {
    display: none;
  }
}
.family-diet-builder .family-grid-header__cell {
  font-size: 16px;
  font-weight: 800;
  text-align: center;
  color: var(--color-text-main, #333);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.family-diet-builder .family-grid-row {
  display: grid;
  grid-template-columns: 120px repeat(4, 1fr);
  gap: 16px;
  background: #ffffff;
  border: 1px solid var(--color-divider, #e8e8e8);
  border-radius: 20px;
  padding: 20px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.01);
}
@media (max-width: 991px) {
  .family-diet-builder .family-grid-row {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
.family-diet-builder .family-grid-day-label {
  display: flex;
  flex-direction: column;
  justify-content: center;
  border-right: 1px solid var(--color-divider, #e8e8e8);
  padding-right: 16px;
}
@media (max-width: 991px) {
  .family-diet-builder .family-grid-day-label {
    border-right: none;
    border-bottom: 1px solid var(--color-divider, #e8e8e8);
    padding-right: 0;
    padding-bottom: 10px;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    gap: 10px;
  }
}
.family-diet-builder .family-grid-day-label .day-abbr {
  font-size: 26px;
  font-weight: 900;
  color: var(--color-accent, #c4622d);
  line-height: 1.1;
}
.family-diet-builder .family-grid-day-label .day-full {
  font-size: 13px;
  color: var(--color-text-muted-alt, #666);
  font-weight: 700;
  margin-top: 4px;
}
@media (max-width: 991px) {
  .family-diet-builder .family-grid-day-label .day-full {
    margin-top: 0;
  }
}
.family-diet-builder {
  /* Meal Slot Styles */
}
.family-diet-builder .family-meal-cell {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
@media (max-width: 991px) {
  .family-diet-builder .family-meal-cell {
    border-bottom: 1px dashed var(--color-divider, #e8e8e8);
    padding-bottom: 16px;
  }
  .family-diet-builder .family-meal-cell:last-child {
    border-bottom: none;
    padding-bottom: 0;
  }
  .family-diet-builder .family-meal-cell::before {
    content: attr(data-meal-label);
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    color: var(--color-nature, #777);
    letter-spacing: 0.05em;
    margin-bottom: 4px;
  }
}
.family-diet-builder .family-meal-dishes {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.family-diet-builder .family-dish-card {
  position: relative;
  background-color: #faf9f6;
  border: 1px solid var(--color-divider, #e8e8e8);
  border-radius: 14px;
  padding: 12px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  transition: all 0.2s ease;
}
.family-diet-builder .family-dish-card:hover {
  border-color: var(--color-accent, #c4622d);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03);
}
.family-diet-builder .family-dish-card__header {
  display: flex;
  align-items: center;
  gap: 10px;
  padding-right: 20px;
}
.family-diet-builder .family-dish-card__img {
  width: 44px;
  height: 44px;
  border-radius: 8px;
  background-size: cover;
  background-position: center;
  flex-shrink: 0;
}
.family-diet-builder .family-dish-card__title {
  font-size: 13px;
  font-weight: 700;
  color: var(--color-text-main, #333);
  line-height: 1.3;
  text-decoration: none;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.family-diet-builder .family-dish-card__title:hover {
  color: var(--color-accent, #c4622d);
  text-decoration: underline;
}
.family-diet-builder .family-dish-card__remove {
  position: absolute;
  top: 10px;
  right: 10px;
  background: none;
  border: none;
  color: var(--color-text-muted, #999);
  font-size: 18px;
  cursor: pointer;
  line-height: 1;
  padding: 0;
  transition: color 0.2s ease;
}
.family-diet-builder .family-dish-card__remove:hover {
  color: #ff4d4d;
}
.family-diet-builder .family-dish-card {
  /* Checkboxes inside constructor card */
}
.family-diet-builder .family-dish-card .dish-members-assignment {
  border-top: 1px solid var(--color-divider, #e8e8e8);
  padding-top: 8px;
}
.family-diet-builder .family-dish-card .dish-members-assignment .assignment-title {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--color-nature, #777);
  margin-bottom: 6px;
  letter-spacing: 0.05em;
}
.family-diet-builder .family-dish-card .dish-members-assignment .assignment-checkboxes {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.family-diet-builder .family-dish-card .dish-members-assignment .member-checkbox-label {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  font-weight: 700;
  background-color: #ffffff;
  border: 1px solid var(--color-divider, #e8e8e8);
  padding: 4px 8px;
  border-radius: 20px;
  cursor: pointer;
  transition: all 0.2s ease;
  user-select: none;
}
.family-diet-builder .family-dish-card .dish-members-assignment .member-checkbox-label input[type=checkbox] {
  margin: 0;
  width: 12px;
  height: 12px;
  accent-color: var(--color-accent, #c4622d);
}
.family-diet-builder .family-dish-card .dish-members-assignment .member-checkbox-label:hover {
  border-color: var(--color-accent, #c4622d);
}
.family-diet-builder .family-dish-card .dish-members-assignment .member-checkbox-label.checked {
  background-color: var(--color-accent-light, #fdf5f0);
  border-color: var(--color-accent, #c4622d);
  color: var(--color-accent, #c4622d);
}
.family-diet-builder .family-meal-add-btn {
  border: 1px dashed var(--color-divider, #e8e8e8);
  background-color: #faf9f6;
  border-radius: 12px;
  padding: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  cursor: pointer;
  transition: all 0.2s ease;
  font-size: 13px;
  font-weight: 700;
  color: var(--color-nature, #777);
  width: 100%;
}
.family-diet-builder .family-meal-add-btn svg {
  width: 14px;
  height: 14px;
  stroke: currentColor;
}
.family-diet-builder .family-meal-add-btn:hover {
  background-color: #ffffff;
  border-color: var(--color-accent, #c4622d);
  color: var(--color-accent, #c4622d);
}
.family-diet-builder {
  /* View Mode Layout */
}
.family-diet-builder .family-view-grid {
  display: flex;
  flex-direction: column;
}
.family-diet-builder .family-view-day-card {
  display: flex;
  flex-direction: column;
  padding-bottom: 40px;
  margin-bottom: 40px;
  border-bottom: 2px dashed var(--color-divider);
}
.family-diet-builder .family-day-analytics-toggle {
  display: none;
}
@media (max-width: 991px) {
  .family-diet-builder .family-day-analytics-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 8px 16px;
    background-color: var(--color-accent-light, #fdf5f0);
    border: 1px solid var(--color-accent, #c4622d);
    border-radius: 30px;
    font-size: 13px;
    font-weight: 700;
    color: var(--color-accent, #c4622d);
    cursor: pointer;
    transition: all 0.25s ease;
    outline: none;
  }
  .family-diet-builder .family-day-analytics-toggle .chevron-icon {
    transition: transform 0.25s ease;
  }
  .family-diet-builder .family-day-analytics-toggle.is-active {
    background-color: var(--color-accent, #c4622d);
    color: #ffffff;
  }
  .family-diet-builder .family-day-analytics-toggle.is-active .chevron-icon {
    transform: rotate(180deg);
  }
}
.family-diet-builder .family-view-day-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid var(--color-divider, #e8e8e8);
  padding-bottom: 16px;
  gap: 16px;
}
@media (max-width: 767px) {
  .family-diet-builder .family-view-day-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
}
.family-diet-builder .family-view-day-header .day-title {
  font-family: var(--font-family-secondary);
  font-size: 20px;
  font-weight: 800;
  color: var(--color-text-main, #333);
}
.family-diet-builder .family-view-day-header .day-title em {
  font-style: italic;
  color: var(--color-accent, #c4622d);
}
.family-diet-builder .family-view-meal-section {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.family-diet-builder .family-view-meal-title {
  font-size: 14px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--color-nature, #777);
}
.family-diet-builder .family-view-dishes-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 24px;
}
@media (max-width: 600px) {
  .family-diet-builder .family-view-dishes-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
}
.family-diet-builder .family-view-dish-card .dish-member-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}
.family-diet-builder .family-view-dish-card .dish-member-badge {
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  background-color: var(--color-accent-light, #fdf5f0);
  color: var(--color-accent, #c4622d);
  padding: 3px 8px;
  border-radius: 4px;
  white-space: nowrap;
}
.family-diet-builder {
  /* Interactive KBJU Panel */
}
.family-diet-builder .family-kbju-panel {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.family-diet-builder .family-kbju-panel__title {
  font-size: 15px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--color-text-main, #333);
  margin-bottom: 8px;
}
.family-diet-builder .family-kbju-panel__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
@media (max-width: 480px) {
  .family-diet-builder .family-kbju-panel__grid {
    grid-template-columns: 1fr;
  }
}
.family-diet-builder .family-kbju-panel__col {
  background: #ffffff;
  border: 1px solid var(--color-divider, #e8e8e8);
  border-radius: 14px;
  padding: 12px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.family-diet-builder .family-kbju-panel__label {
  font-size: 11px;
  font-weight: 800;
  color: var(--color-nature, #777);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.family-diet-builder .family-kbju-panel__value-row {
  display: flex;
  align-items: baseline;
  gap: 4px;
}
.family-diet-builder .family-kbju-panel__value {
  font-size: 20px;
  font-weight: 900;
  color: var(--color-text-main, #333);
}
.family-diet-builder .family-kbju-panel__unit {
  font-size: 12px;
  color: var(--color-text-muted-alt, #666);
  font-weight: 700;
}
.family-diet-builder .family-kbju-panel__bar {
  height: 6px;
  background-color: var(--color-divider, #e8e8e8);
  border-radius: 3px;
  overflow: hidden;
  margin: 4px 0;
}
.family-diet-builder .family-kbju-panel__bar span {
  display: block;
  height: 100%;
  width: 0;
  border-radius: 3px;
  transition: width 0.4s ease-out;
}
.family-diet-builder .family-kbju-panel__norm {
  font-size: 10px;
  color: var(--color-text-muted-alt, #666);
}
.family-diet-builder .family-kbju-panel__norm strong {
  font-weight: 700;
}
.family-diet-builder .family-kbju-panel__footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-top: 1px solid var(--color-divider, #e8e8e8);
  padding-top: 16px;
  margin-top: 8px;
}
.family-diet-builder .family-kbju-panel__bjv {
  display: flex;
  align-items: center;
  gap: 8px;
}
.family-diet-builder .family-kbju-panel__bjv-dots {
  display: flex;
  gap: 4px;
}
.family-diet-builder .family-kbju-panel__bjv-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--color-divider, #e8e8e8);
  transition: background-color 0.3s ease;
}
.family-diet-builder .family-kbju-panel__bjv-dot.is-filled {
  background-color: var(--color-accent, #c4622d);
}
.family-diet-builder .family-kbju-panel__bjv-label {
  font-size: 10px;
  font-weight: 800;
  color: var(--color-nature, #777);
}
.family-diet-builder .family-kbju-panel__balance-text {
  font-size: 11px;
  font-weight: 800;
  color: var(--color-accent, #c4622d);
}
.family-diet-builder {
  /* Empty/Footer */
}
.family-diet-builder .empty-diet-msg {
  text-align: center;
  padding: 60px 20px;
  background: #ffffff;
  border: 1px dashed var(--color-divider, #e8e8e8);
  border-radius: 20px;
  font-size: 16px;
  color: var(--color-nature, #777);
  font-style: italic;
}
.family-diet-builder__footer {
  position: sticky;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 16px 0;
  z-index: 90;
  margin-top: 48px;
  background: rgba(250, 249, 246, 0.9);
  backdrop-filter: blur(8px);
  border-top: 1px solid var(--color-divider, #e8e8e8);
}
.family-diet-builder__footer-inner {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 20px;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}
.family-diet-builder__footer .family-status-msg {
  font-size: 14px;
  font-weight: 700;
}
.family-diet-builder__footer .family-status-msg.success {
  color: #2e7d32;
}
.family-diet-builder__footer .family-status-msg.error {
  color: #c62828;
}

/* ==========================================================================
   Nutri Profile Page Styles (Organic, Editorial Warm UI)
   ========================================================================== */
.nutri-profile-section {
  padding: 60px 0 100px;
}

/* Warnings */
.nutri-profile-auth-warning,
.nutri-profile-setup-warning {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 60px 0;
}

.nutri-profile-warning-card {
  background: #ffffff;
  border: 1px solid rgba(61, 50, 41, 0.08);
  border-radius: 20px;
  padding: 48px 32px;
  max-width: 480px;
  width: 100%;
  text-align: center;
  box-shadow: 0 8px 30px rgba(61, 50, 41, 0.03);
}
.nutri-profile-warning-card .icon-wrap {
  width: 64px;
  height: 64px;
  background: rgba(90, 122, 82, 0.08);
  color: #5A7A52;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 20px;
}
.nutri-profile-warning-card .icon-wrap svg {
  width: 28px;
  height: 28px;
}
.nutri-profile-warning-card h3 {
  font-family: var(--font-header);
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 12px;
}
.nutri-profile-warning-card p {
  font-family: var(--font-body);
  font-size: 14px;
  line-height: 1.6;
  color: #6B5E53;
  margin-bottom: 24px;
}
.nutri-profile-warning-card .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 48px;
  padding: 0 32px;
  border-radius: 99px;
  font-family: var(--font-header);
  font-weight: 700;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  background-color: var(--color-accent);
  color: #ffffff;
  border: none;
  cursor: pointer;
  transition: all 0.2s ease;
}
.nutri-profile-warning-card .btn:hover {
  background-color: #5a7a52;
  transform: translateY(-1px);
}

/* Steps Headings */
.nutri-profile-step-block {
  margin-bottom: 40px;
}

.nutri-step-heading {
  font-family: var(--font-header);
  font-size: 18px;
  font-weight: 700;
  color: #3D3229;
  margin-bottom: 6px;
  letter-spacing: -0.01em;
}

.nutri-step-subheading {
  font-family: var(--font-body);
  font-size: 13px;
  color: #8C7E74;
  margin-bottom: 24px;
}

.selector-content-header-save {
  display: flex;
  justify-content: flex-end;
  height: 20px;
  margin-bottom: 10px;
}
.selector-content-header-save .save-status-msg {
  font-family: var(--font-body);
  font-size: 12px;
  font-style: italic;
}
.selector-content-header-save .save-status-msg--saving {
  color: var(--color-accent);
}
.selector-content-header-save .save-status-msg--success {
  color: #5a7a52;
  font-weight: 600;
}
.selector-content-header-save .save-status-msg--error {
  color: #cc4f4f;
}

/* Diseases Grid */
.diseases-checkbox-grid {
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  gap: 12px;
  margin-bottom: 24px;
}
@media (max-width: 1199px) {
  .diseases-checkbox-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media (max-width: 767px) {
  .diseases-checkbox-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

.disease-pill-checkbox {
  position: relative;
  background: #ffffff;
  border: 1px solid rgba(61, 50, 41, 0.08);
  border-radius: 12px;
  padding: 24px 12px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  cursor: pointer;
  transition: all 0.2s ease;
  user-select: none;
  min-height: 120px;
}
.disease-pill-checkbox input[type=checkbox] {
  position: absolute;
  opacity: 0;
  cursor: pointer;
}
.disease-pill-checkbox .pill-icon {
  color: #8C7E74;
  margin-bottom: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: color 0.2s ease, transform 0.2s ease;
}
.disease-pill-checkbox .pill-icon svg {
  width: 32px;
  height: 32px;
  stroke-width: 1.2;
}
.disease-pill-checkbox .pill-label {
  font-family: var(--font-body);
  font-size: 12px;
  font-weight: 500;
  color: #3D3229;
  line-height: 1.3;
}
.disease-pill-checkbox .pill-checked-badge {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 16px;
  height: 16px;
  background-color: #5A7A52;
  color: #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 6px rgba(90, 122, 82, 0.2);
}
.disease-pill-checkbox:hover {
  border-color: rgba(61, 50, 41, 0.2);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(61, 50, 41, 0.03);
}
.disease-pill-checkbox:hover .pill-icon {
  color: #3D3229;
  transform: scale(1.05);
}
.disease-pill-checkbox.is-active {
  border-color: #5A7A52;
  background-color: #ffffff;
  box-shadow: 0 4px 15px rgba(90, 122, 82, 0.08);
}
.disease-pill-checkbox.is-active .pill-icon {
  color: #5A7A52;
}
.disease-pill-checkbox.is-active .pill-label {
  font-weight: 600;
}

/* Selected Bar */
.nutri-profile-selected-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background-color: #EFECE6;
  border-radius: 12px;
  padding: 16px 24px;
  margin-top: 24px;
  gap: 16px;
}
@media (max-width: 767px) {
  .nutri-profile-selected-bar {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
}
.nutri-profile-selected-bar .selected-text {
  font-family: var(--font-body);
  font-size: 13px;
  color: #3D3229;
}
.nutri-profile-selected-bar .selected-text strong {
  font-weight: 700;
}
.nutri-profile-selected-bar .selected-text .selected-names {
  font-style: italic;
  color: #5A7A52;
  font-weight: 600;
}
.nutri-profile-selected-bar .clear-all-link {
  background: none;
  border: none;
  color: #8C7E74;
  font-family: var(--font-body);
  font-size: 12px;
  cursor: pointer;
  padding: 0;
  display: inline-flex;
  align-items: center;
  transition: color 0.2s ease;
}
.nutri-profile-selected-bar .clear-all-link:hover {
  color: #3D3229;
}

/* Mode Block */
.nutri-mode-block {
  border-top: 1px solid rgba(61, 50, 41, 0.08);
  padding-top: 32px;
  margin-top: 32px;
}

.nutri-mode-row {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}
.nutri-mode-row .mode-label {
  font-family: var(--font-body);
  font-size: 13px;
  color: #8C7E74;
}

.nutri-mode-tabs {
  display: inline-flex;
  background-color: #EFECE6;
  padding: 4px;
  border-radius: 30px;
  gap: 2px;
}

.nutri-mode-btn {
  background: none;
  border: none;
  font-family: var(--font-body);
  font-size: 12px;
  font-weight: 600;
  color: #8C7E74;
  padding: 8px 18px;
  border-radius: 20px;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  transition: all 0.2s ease;
}
.nutri-mode-btn svg {
  opacity: 0.7;
  transition: opacity 0.2s ease;
}
.nutri-mode-btn:hover {
  color: #3D3229;
}
.nutri-mode-btn.is-active {
  background-color: #3D3229;
  /* Cocoa active button background */
  color: #ffffff;
}
.nutri-mode-btn.is-active svg {
  opacity: 1;
}

/* Active View Header */
.nutri-active-view-header {
  background-color: #ffffff;
  border: 1px solid rgba(61, 50, 41, 0.08);
  border-radius: 16px;
  padding: 24px;
  margin-bottom: 32px;
  box-shadow: 0 4px 20px rgba(61, 50, 41, 0.02);
}
.nutri-active-view-header .active-view-title-wrap h3 {
  font-family: var(--font-header);
  font-size: 16px;
  font-weight: 700;
  color: #3D3229;
  margin-bottom: 8px;
}
.nutri-active-view-header .active-view-title-wrap .active-view-desc {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  font-family: var(--font-body);
  font-size: 13px;
  color: #6B5E53;
  flex-wrap: wrap;
}
.nutri-active-view-header .active-view-title-wrap .active-view-desc strong {
  color: #3D3229;
}
.nutri-active-view-header .active-view-icons {
  display: inline-flex;
  gap: 6px;
}
.nutri-active-view-header .active-view-icons .view-icon-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background-color: rgba(90, 122, 82, 0.08);
  color: #5A7A52;
}
.nutri-active-view-header .active-view-icons .view-icon-badge svg {
  width: 14px;
  height: 14px;
}

/* Specific Selector Block */
.nutri-specific-selector-block {
  background-color: #ffffff;
  border: 1px solid rgba(61, 50, 41, 0.08);
  border-radius: 16px;
  padding: 32px 40px;
  margin-bottom: 32px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 4px 20px rgba(61, 50, 41, 0.02);
}
.nutri-specific-selector-block .specific-header {
  margin-bottom: 24px;
}
.nutri-specific-selector-block .specific-header h3 {
  font-family: var(--font-header);
  font-size: 16px;
  font-weight: 700;
  color: #3D3229;
  margin-bottom: 4px;
}
.nutri-specific-selector-block .specific-header p {
  font-family: var(--font-body);
  font-size: 13px;
  color: #8C7E74;
}
.nutri-specific-selector-block .specific-grid-wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 40px;
}
.nutri-specific-selector-block .specific-buttons-grid {
  display: flex;
  flex-direction: column;
  gap: 8px;
  max-width: 480px;
  width: 100%;
  z-index: 2;
}
.nutri-specific-selector-block .specific-problem-btn {
  background-color: #FAF8F5;
  border: 1px solid rgba(61, 50, 41, 0.08);
  border-radius: 12px;
  padding: 16px 20px;
  display: flex;
  align-items: center;
  gap: 16px;
  width: 100%;
  cursor: pointer;
  text-align: left;
  transition: all 0.2s ease;
}
.nutri-specific-selector-block .specific-problem-btn .problem-icon {
  color: #8C7E74;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background-color: #ffffff;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.02);
  transition: all 0.2s ease;
}
.nutri-specific-selector-block .specific-problem-btn .problem-icon svg {
  width: 16px;
  height: 16px;
}
.nutri-specific-selector-block .specific-problem-btn .problem-label {
  font-family: var(--font-body);
  font-size: 13px;
  font-weight: 600;
  color: #3D3229;
}
.nutri-specific-selector-block .specific-problem-btn:hover {
  background-color: #ffffff;
  border-color: rgba(61, 50, 41, 0.2);
}
.nutri-specific-selector-block .specific-problem-btn:hover .problem-icon {
  color: #3D3229;
}
.nutri-specific-selector-block .specific-problem-btn.is-active {
  background-color: #ffffff;
  border-color: #5A7A52;
  box-shadow: 0 4px 15px rgba(90, 122, 82, 0.05);
}
.nutri-specific-selector-block .specific-problem-btn.is-active .problem-icon {
  background-color: #5A7A52;
  color: #ffffff;
}
.nutri-specific-selector-block .specific-problem-btn.is-active .problem-label {
  font-weight: 700;
}
.nutri-specific-selector-block .specific-deco-image {
  position: absolute;
  right: 0;
  bottom: -20px;
  z-index: 1;
  pointer-events: none;
}
.nutri-specific-selector-block .specific-deco-image .deco-plate {
  max-height: 220px;
  display: block;
}
@media (max-width: 767px) {
  .nutri-specific-selector-block .specific-deco-image {
    display: none;
  }
}

/* Results Grid Columns */
.nutri-profile-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  align-items: start;
  margin-bottom: 48px;
}
@media (max-width: 991px) {
  .nutri-profile-grid {
    grid-template-columns: 1fr;
  }
}

.nutri-column {
  background: #ffffff;
  border: 1px solid rgba(61, 50, 41, 0.08);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 4px 20px rgba(61, 50, 41, 0.02);
  display: flex;
  flex-direction: column;
  padding: 24px;
}
.nutri-column__header {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 6px;
}
.nutri-column__header .icon {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.nutri-column__header .icon svg {
  width: 16px;
  height: 16px;
}
.nutri-column__header .text {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.nutri-column__header .text h3 {
  font-family: var(--font-header);
  font-size: 13px;
  font-weight: 700;
  color: #3D3229;
}
.nutri-column__header .text .count-badge {
  font-family: var(--font-body);
  font-size: 10px;
  font-weight: 700;
  padding: 2px 8px;
  border-radius: 12px;
}
.nutri-column__desc-text {
  font-family: var(--font-body);
  font-size: 11px;
  color: #8C7E74;
  line-height: 1.4;
  margin-bottom: 20px;
}
.nutri-column__body {
  flex-grow: 1;
}
.nutri-column__footer {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  margin-top: 16px;
  padding: 12px;
  background-color: #ffffff;
  border: 1px solid rgba(61, 50, 41, 0.08);
  border-radius: 12px;
  font-family: var(--font-body);
  font-size: 12px;
  font-weight: 600;
  color: #8C7E74;
  cursor: pointer;
  transition: all 0.2s ease;
}
.nutri-column__footer svg {
  transition: transform 0.25s ease;
}
.nutri-column__footer:hover {
  border-color: rgba(61, 50, 41, 0.2);
  color: #3D3229;
}
.nutri-column {
  /* Colors and States for Columns */
}
.nutri-column--green .icon {
  background-color: rgba(90, 122, 82, 0.08);
  color: #5A7A52;
}
.nutri-column--green .count-badge {
  background-color: rgba(90, 122, 82, 0.08);
  color: #5A7A52;
}
.nutri-column--yellow .icon {
  background-color: rgba(212, 98, 42, 0.08);
  color: #D4622A;
}
.nutri-column--yellow .count-badge {
  background-color: rgba(212, 98, 42, 0.08);
  color: #D4622A;
}
.nutri-column--red .icon {
  background-color: rgba(204, 79, 79, 0.08);
  color: #CC4F4F;
}
.nutri-column--red .count-badge {
  background-color: rgba(204, 79, 79, 0.08);
  color: #CC4F4F;
}

/* Empty State */
.nutri-empty-state {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 40px 0;
  text-align: center;
  border: 1px dashed rgba(61, 50, 41, 0.12);
  border-radius: 12px;
}
.nutri-empty-state p {
  font-family: var(--font-body);
  font-size: 12px;
  font-style: italic;
  color: #8C7E74;
}

/* Products List & Cards */
.nutri-products-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.nutri-product-card {
  background-color: #ffffff;
  border: 1px solid rgba(61, 50, 41, 0.08);
  border-radius: 12px;
  padding: 12px;
  display: flex;
  gap: 12px;
  align-items: center;
  transition: all 0.2s ease;
}
.nutri-product-card__image {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  /* Circle image as screenshot */
  overflow: hidden;
  flex-shrink: 0;
  background-color: #FAF8F5;
}
.nutri-product-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.nutri-product-card__content {
  flex-grow: 1;
  min-width: 0;
}
.nutri-product-card__header-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  margin-bottom: 2px;
}
.nutri-product-card__title {
  font-family: var(--font-body);
  font-size: 13px;
  font-weight: 600;
  line-height: 1.3;
  margin: 0;
}
.nutri-product-card__title a {
  color: #3D3229;
  text-decoration: none;
  transition: color 0.15s ease;
}
.nutri-product-card__title a:hover {
  color: var(--color-accent);
}
.nutri-product-card__fav-btn {
  background: none;
  border: none;
  color: #CFC5BC;
  cursor: pointer;
  padding: 0;
  display: inline-flex;
  align-items: center;
  transition: color 0.2s ease;
}
.nutri-product-card__fav-btn:hover {
  color: #CC4F4F;
}
.nutri-product-card__comment {
  font-family: var(--font-body);
  font-size: 11px;
  color: #8C7E74;
  line-height: 1.4;
  margin-bottom: 4px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.nutri-product-card__sources {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}
.nutri-product-card .source-badge {
  background-color: #EFECE6;
  color: #8C7E74;
  border-radius: 4px;
  padding: 2px 6px;
  font-family: var(--font-body);
  font-size: 9px;
  font-weight: 600;
}
.nutri-product-card:hover {
  border-color: rgba(61, 50, 41, 0.15);
  box-shadow: 0 4px 12px rgba(61, 50, 41, 0.02);
}

/* Disclaimer Card (Leaf themed, warm editorial card) */
.nutri-profile-disclaimer-card {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #F5EFEB;
  /* Soft peach/earth base */
  border: 1px solid rgba(212, 98, 42, 0.1);
  border-radius: 16px;
  padding: 24px 32px;
  margin-top: 48px;
  position: relative;
  overflow: hidden;
}
@media (max-width: 767px) {
  .nutri-profile-disclaimer-card {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    padding: 20px 24px;
  }
}
.nutri-profile-disclaimer-card .disclaimer-content {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  z-index: 2;
}
.nutri-profile-disclaimer-card .icon-wrap {
  color: #D4622A;
  display: inline-flex;
  margin-top: 2px;
}
.nutri-profile-disclaimer-card .text-wrap {
  max-width: 780px;
}
.nutri-profile-disclaimer-card .text-wrap h4 {
  font-family: var(--font-header);
  font-size: 13px;
  font-weight: 700;
  color: #3D3229;
  margin-bottom: 4px;
}
.nutri-profile-disclaimer-card .text-wrap p {
  font-family: var(--font-body);
  font-size: 12px;
  color: #6B5E53;
  line-height: 1.5;
}
.nutri-profile-disclaimer-card .disclaimer-deco {
  position: absolute;
  right: -10px;
  bottom: -15px;
  color: rgba(212, 98, 42, 0.06);
  pointer-events: none;
  z-index: 1;
}
.nutri-profile-disclaimer-card .disclaimer-deco .leaf-deco {
  width: 100px;
  height: 100px;
  display: block;
}
@media (max-width: 767px) {
  .nutri-profile-disclaimer-card .disclaimer-deco {
    display: none;
  }
}

.rations {
  padding-top: 0;
  padding-bottom: 64px;
}
.rations .wrapper {
  display: flex;
  align-items: flex-start;
}
.rations .wrap {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
}
@media (max-width: 767px) {
  .rations .wrap {
    grid-template-columns: repeat(1, 1fr);
  }
}
.rations .search-input {
  margin-bottom: 10px;
}
.rations .filter-btn {
  border: none;
  background: var(--color-accent);
  color: var(--color-bg);
  height: 34px;
  padding: 0 14px;
}
.rations .rations-block {
  margin-bottom: 64px;
}
.rations .rations-block:last-child {
  margin-bottom: 0;
}
.rations .rations-block__head {
  margin-bottom: 24px;
}
.rations .rations-block__title {
  font-size: 28px;
  font-weight: 800;
  color: var(--color-text-main, #111111);
  margin-bottom: 8px;
  letter-spacing: -0.02em;
}
.rations .rations-block__desc {
  font-size: 15px;
  color: var(--color-text-muted, #737373);
  max-width: 720px;
  line-height: 1.5;
  margin: 0;
}

.ration-head {
  position: relative;
  padding: 40px 0 48px;
}
@media (max-width: 767px) {
  .ration-head {
    -webkit-line-clamp: 3;
    padding: 16px 0 48px;
  }
}
.ration-head__breadcrumbs {
  display: none;
}
.ration-head__breadcrumbs #breadcrumbs {
  font-size: 13px;
  color: var(--color-text-muted, #737373);
}
.ration-head__breadcrumbs #breadcrumbs a {
  text-decoration: none;
  color: var(--color-text-main, #111111);
  font-weight: 500;
}
.ration-head__breadcrumbs #breadcrumbs a:hover {
  color: var(--color-text-secondary);
}
.ration-head__grid {
  display: grid;
  grid-template-columns: 1.6fr 1fr;
  gap: 48px;
}
@media (max-width: 1024px) {
  .ration-head__grid {
    grid-template-columns: 1fr;
    gap: 36px;
  }
}
.ration-head__left {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding-bottom: 24px;
}
@media (max-width: 767px) {
  .ration-head__left {
    padding-bottom: 0;
  }
}
.ration-head__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 16px;
}
.ration-head .ration-tag {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding: 4px 12px;
  border-radius: 20px;
  line-height: 1.2;
}
.ration-head .ration-tag--category {
  background-color: var(--color-rgba-0-0-0-0-05);
  color: var(--color-text-secondary);
}
.ration-head .ration-tag--goal {
  background-color: var(--color-rgba-0-0-0-0-05);
  color: var(--color-text-main, #111111);
}
.ration-head__title {
  margin-bottom: 24px;
}
.ration-head__rating {
  margin-bottom: 20px;
}
.ration-head__desc {
  font-size: 16px;
  line-height: 1.6;
  color: var(--color-text-muted);
  margin-bottom: 8px;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
@media (max-width: 767px) {
  .ration-head__desc {
    -webkit-line-clamp: 3;
    font-size: 15px;
  }
}
.ration-head__more-btn {
  font-size: 14px;
  font-weight: 700;
  color: var(--color-text-secondary);
  text-decoration: none;
  display: inline-flex;
  margin-bottom: 24px;
  transition: color 0.2s ease, transform 0.2s ease;
}
@media (max-width: 767px) {
  .ration-head__more-btn {
    margin-bottom: 0;
  }
}
.ration-head__wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
@media (max-width: 767px) {
  .ration-head__wrap {
    order: -1;
    margin-bottom: 24px;
  }
}
.ration-head__author {
  display: flex;
  align-items: center;
  gap: 12px;
}
.ration-head__author-avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  overflow: hidden;
  background-color: var(--color-rgba-0-0-0-0-05);
  flex-shrink: 0;
}
.ration-head__author-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.ration-head__author-info {
  display: flex;
  flex-direction: column;
  line-height: 1.2;
}
.ration-head__author-role {
  font-size: 11px;
  font-weight: 500;
  color: var(--color-text-muted, #737373);
  margin-bottom: 2px;
}
.ration-head__author-name {
  font-size: 13px;
  font-weight: 700;
  color: var(--color-text-main, #111111);
}
.ration-head__date {
  font-size: 12px;
  color: var(--color-text-muted);
  margin-left: auto;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}
.ration-head__date span {
  font-weight: 600;
  color: var(--color-text-main);
}
.ration-head__stats {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1px;
  background-color: var(--color-divider, rgba(17, 17, 17, 0.08));
}
.ration-head .ration-stat-card {
  background-color: var(--color-card-bg, #ffffff);
  padding: 24px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
@media (max-width: 480px) {
  .ration-head .ration-stat-card {
    padding: 16px;
  }
}
.ration-head .ration-stat-card__value-group {
  display: flex;
  align-items: baseline;
  line-height: 1;
}
.ration-head .ration-stat-card__prefix {
  font-size: 32px;
  font-weight: 600;
  color: var(--color-text-main, #111111);
  margin-right: 2px;
  position: relative;
  top: -2px;
}
.ration-head .ration-stat-card__value {
  font-size: 30px;
  font-weight: 800;
  color: var(--color-text-main, #111111);
  letter-spacing: -0.02em;
}
@media (max-width: 1200px) {
  .ration-head .ration-stat-card__value {
    font-size: 26px;
  }
}
.ration-head .ration-stat-card__unit {
  font-size: 15px;
  font-weight: 600;
  color: var(--color-text-muted, #737373);
  margin-left: 4px;
}
@media (max-width: 1200px) {
  .ration-head .ration-stat-card__unit {
    font-size: 13px;
  }
}
.ration-head .ration-stat-card__label {
  font-size: 11px;
  font-weight: 700;
  color: var(--color-text-muted, #737373);
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-top: 8px;
  line-height: 1.2;
}
.ration-head__image-wrapper {
  position: relative;
  aspect-ratio: 16/9;
  overflow: hidden;
  background-color: var(--color-rgba-0-0-0-0-05);
  border-radius: 24px;
  border: 1px solid var(--color-divider, rgba(17, 17, 17, 0.08));
  box-shadow: 0 12px 32px var(--color-rgba-0-0-0-0-05);
  margin-bottom: 16px;
}
.ration-head__image-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}
.ration-head__image-wrapper:hover img {
  transform: scale(1.03);
}
.ration-head__image-wrapper--mobile {
  display: none;
}
@media (max-width: 1024px) {
  .ration-head__image-wrapper--mobile {
    display: block;
    margin-bottom: 16px;
    order: -2;
  }
}
.ration-head__image-wrapper--desktop {
  display: block;
}
@media (max-width: 1024px) {
  .ration-head__image-wrapper--desktop {
    display: none;
  }
}
.ration-head__right {
  display: flex;
  flex-direction: column;
}

.ration {
  position: relative;
  padding-bottom: 140px;
  padding-top: 48px;
}
.ration-desc {
  max-width: 1000px;
  margin: 0 auto 3rem;
}
.ration-desc__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  max-width: 1000px;
  margin: 0 auto;
  margin-bottom: 30px;
}
.ration .rateMyPost,
.ration .commentsForm {
  max-width: 1000px;
}

.ration-day {
  overflow: visible;
  display: flex;
  flex-direction: column;
  padding-bottom: 40px;
  margin-bottom: 40px;
  border-bottom: 2px dashed var(--color-divider);
  gap: 24px;
}
.ration-day#ration-day-sun {
  border-bottom: none;
}
.ration-day__info {
  order: -1;
}
.ration-day__head {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 20px;
  gap: 16px;
}
.ration-day__head-left {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.ration-day__head-right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 2px;
  flex-shrink: 0;
  padding-top: 4px;
}
.ration-day__budget-label {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--color-text-muted, #737373);
  line-height: 1;
}
.ration-day__budget-value {
  font-size: 28px;
  font-weight: 800;
  line-height: 1;
  color: var(--color-danger, #c84131);
  font-family: var(--font-header, inherit);
  letter-spacing: -0.02em;
}
.ration-day__budget-value em {
  font-style: normal;
  font-size: 16px;
  font-weight: 500;
  color: var(--color-text-muted, #737373);
  margin-left: 2px;
}
@media (max-width: 767px) {
  .ration-day__budget-value {
    font-size: 22px;
  }
}
.ration-day__title {
  display: block;
  font-size: clamp(28px, 6vw, 36px);
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.02em;
  margin: 0;
  font-family: var(--font-header, inherit);
  color: var(--color-dark, #111);
}
.ration-day .vitamins-minerals {
  margin-bottom: 0 !important;
  padding: 0;
  border: none;
}

.ration-times {
  display: grid;
  gap: 24px;
}

.ration-time {
  position: relative;
}
.ration-time__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 12px;
}
.ration-time__title {
  font-size: 18px;
  display: flex;
  align-items: center;
  overflow: hidden;
  justify-content: center;
  width: fit-content;
  position: relative;
  left: 0;
  gap: 6px;
}
.ration-time__icon {
  background-color: var(--color-bg-light);
  padding: 4px;
  border-radius: 4px;
}
.ration-time__icon svg {
  width: 24px;
  height: auto;
  display: block;
}
.ration-time__time {
  font-size: 11px;
  display: flex;
  align-items: center;
  gap: 4px;
  line-height: 1;
}
.ration-time__time svg {
  width: 11px;
  height: auto;
}

.ration-list {
  display: grid;
  gap: 24px;
}

.daily-budget {
  font-size: 14px;
  display: flex;
  align-items: center;
  gap: 7px;
}
.daily-budget p {
  font-weight: 600;
  color: var(--color-accent);
}

.day-label {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--color-danger, #c84131);
  font-weight: 700;
  margin-bottom: 4px;
  display: flex;
  align-items: center;
  gap: 6px;
  line-height: 1;
}
.day-label::before {
  content: "— /";
  font-weight: 400;
  opacity: 0.6;
  letter-spacing: 0;
}

.f-button.is-close-btn {
  background-color: transparent !important;
  position: absolute !important;
  right: 6px !important;
  top: 12px !important;
}
.f-button.is-close-btn svg {
  color: var(--color-text-main);
}

.f-button.is-close-btn {
  top: 12px !important;
  right: 12px !important;
  width: 36px !important;
  height: 36px !important;
  background-color: var(--color-bg) !important;
  border: 1px solid var(--color-divider, rgba(17, 17, 17, 0.08)) !important;
  border-radius: 50% !important;
  cursor: pointer;
  display: flex !important;
  align-items: center;
  justify-content: center;
  color: var(--color-text-main, #111111) !important;
  box-shadow: 0 2px 8px var(--color-rgba-0-0-0-0-05);
  transition: all 0.25s ease;
  padding: 0 !important;
}
.f-button.is-close-btn svg {
  width: 14px !important;
  height: 14px !important;
  color: var(--color-text-main, #111111) !important;
  stroke-width: 2.5;
}
.f-button.is-close-btn:hover {
  background-color: var(--color-text-main, #111111) !important;
  color: var(--color-bg) !important;
  transform: rotate(90deg);
  border-color: var(--color-text-main, #111111) !important;
}
.f-button.is-close-btn:hover svg {
  color: var(--color-bg) !important;
}

.product-summary {
  background: var(--color-contrast);
  padding: 10px 16px;
  height: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: sticky;
  bottom: 0px;
  z-index: 5;
  width: calc(100% + 40px);
  margin-left: -20px;
}
.product-summary__left {
  display: flex;
  flex-direction: column;
  color: var(--color-bg);
}

.clear-products {
  border: 1px solid var(--color-bg);
  color: var(--color-bg);
  height: 36px;
  padding: 0px 20px;
}

.ration-modal {
  padding: 0 !important;
  border-radius: 12px;
  overflow: hidden;
  max-height: min(600px, 90vh);
  display: flex;
  flex-direction: column;
}
.ration-modal__body {
  padding: 24px 30px 30px 30px;
  flex: 1;
  overflow-y: auto;
}

.f-button {
  border: none !important;
}
.f-button:focus {
  outline: none !important;
  box-shadow: none !important;
  border: none !important;
}

.r-nutr {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
}
.r-nutr .bh-progress-indicator {
  display: flex;
  align-items: center;
  position: relative;
  top: 6px;
}
.r-nutr .bh-progress-indicator svg {
  width: 120px;
  height: 120px;
}
.r-nutr .bh-progress-indicator__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  gap: 4px;
}
.r-nutr .bh-progress-indicator__title {
  position: relative;
  font-size: 14px;
}
.r-nutr__wrap {
  position: relative;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  width: 100%;
}
.r-nutr__item {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.r-nutr__item-title {
  font-weight: 500;
  font-size: 13px;
  line-height: 1;
}
.r-nutr__item-title i {
  display: none;
}
.r-nutr__item-unit {
  font-weight: 500;
  display: flex;
  align-items: center;
  white-space: nowrap;
  font-size: 11px;
  line-height: 1;
}
.r-nutr__item-unit p {
  font-weight: 400;
  font-size: inherit;
  line-height: 1;
}

.prod-list-block {
  color: var(--color-bg);
  background: var(--color-dark);
  padding: 24px;
  border-radius: 24px;
  margin-bottom: 48px;
}
.prod-list-block span {
  font-size: 14px;
}

.nutr-panel {
  background-color: var(--color-surface, #f2f0eb);
  border-radius: 10px;
  overflow: hidden;
}
.nutr-panel__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-bottom: 1px solid var(--color-divider);
}
@media (max-width: 767px) {
  .nutr-panel__grid {
    overflow: auto;
  }
}
.nutr-panel__col {
  padding: 16px 20px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.nutr-panel__col:not(:last-child) {
  border-right: 1px solid var(--color-divider);
}
@media (max-width: 767px) {
  .nutr-panel__col {
    padding: 12px 14px;
    width: 40vw;
  }
}
.nutr-panel__label {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-text-muted, #737373);
  line-height: 1;
}
.nutr-panel__value-row {
  display: flex;
  align-items: baseline;
  gap: 2px;
}
.nutr-panel__value {
  font-size: 26px;
  font-weight: 800;
  line-height: 1;
  color: var(--color-dark, #111);
  font-family: var(--font-header, inherit);
}
@media (max-width: 600px) {
  .nutr-panel__value {
    font-size: 22px;
  }
}
.nutr-panel__unit {
  font-size: 13px;
  font-weight: 500;
  color: var(--color-text-muted, #737373);
  line-height: 1;
}
.nutr-panel__bar {
  height: 3px;
  background: var(--color-rgba-0-0-0-0-05);
  border-radius: 99px;
  overflow: hidden;
}
.nutr-panel__bar span {
  display: block;
  height: 100%;
  border-radius: 99px;
  transition: width 0.6s ease;
}
.nutr-panel__norm {
  font-size: 11px;
  color: var(--color-text-muted, #737373);
  line-height: 1.2;
}
.nutr-panel__norm strong {
  font-weight: 700;
  color: var(--color-text-main, #111);
}
.nutr-panel__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 20px;
  gap: 16px;
  background-color: var(--color-rgba-0-0-0-0-05);
  border-top: 1px solid var(--color-divider);
}
@media (max-width: 767px) {
  .nutr-panel__footer {
    position: relative;
    padding: 10px 12px;
  }
}
.nutr-panel__vitbtn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 600;
  color: var(--color-text-main, #111);
  text-decoration: none;
  border: 1px solid var(--color-divider);
  border-radius: 999px;
  padding: 6px 12px;
  transition: border-color 0.2s ease, color 0.2s ease;
  white-space: nowrap;
  line-height: 1;
  border: 1px solid var(--color-divider);
  border-radius: 6px;
}
@media (max-width: 767px) {
  .nutr-panel__vitbtn {
    font-size: 11px;
    padding: 6px 8px;
  }
}
.nutr-panel__vitbtn svg {
  flex-shrink: 0;
  color: var(--color-text-main);
}
@media (min-width: 767px) {
  .nutr-panel__vitbtn:hover {
    border-color: var(--color-text-main);
    color: var(--color-text-main);
  }
}
.nutr-panel__bjv {
  display: flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
}
.nutr-panel__bjv-label {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-text-muted, #737373);
}
.nutr-panel__bjv-dots {
  display: flex;
  align-items: center;
  gap: 3px;
}
.nutr-panel__bjv-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--color-carbs-bg);
  display: inline-block;
}
.nutr-panel__bjv-dot.is-filled {
  background: var(--color-accent);
}
.nutr-panel__bjv-text {
  font-size: 11px;
  font-weight: 600;
  color: var(--color-text-main, #111);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.ration-modal-content {
  max-width: 700px;
  padding: 0 !important;
  border-radius: 24px;
  background-color: var(--color-bg);
  box-shadow: 0 20px 50px var(--color-text-light);
  overflow: hidden;
}
@media (max-width: 768px) {
  .ration-modal-content {
    margin: 10px;
    border-radius: 16px;
  }
}
.ration-modal-content .ration-modal-header {
  display: flex;
  flex-direction: column;
  padding: 24px 40px 20px;
  background-color: var(--color-bg-cream);
  border-bottom: 1px solid var(--color-divider, rgba(17, 17, 17, 0.06));
  position: relative;
}
@media (max-width: 768px) {
  .ration-modal-content .ration-modal-header {
    padding: 20px 20px 16px;
  }
}
.ration-modal-content .ration-modal-label-top {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  color: var(--color-text-secondary);
}
.ration-modal-content .ration-modal-title-styled {
  font-size: 22px;
  font-weight: 800;
  color: var(--color-text-main);
  line-height: 1.1;
  margin: 4px 0 0;
}
.ration-modal-content .ration-modal-body {
  padding: 32px 40px 40px;
  font-size: 15px;
  line-height: 1.6;
  color: var(--color-text-muted);
}
@media (max-width: 768px) {
  .ration-modal-content .ration-modal-body {
    padding: 24px 20px 20px;
  }
}
.ration-modal-content .ration-modal-body p {
  margin-bottom: 16px;
}
.ration-modal-content .ration-modal-body p:last-child {
  margin-bottom: 0;
}
.ration-modal-content .ration-modal-body h3 {
  font-size: 18px;
  font-weight: 700;
  color: var(--color-text-main);
  margin: 20px 0 10px;
}
.ration-modal-content .ration-modal-body ul,
.ration-modal-content .ration-modal-body ol {
  margin-bottom: 16px;
  padding-left: 20px;
}
.ration-modal-content .ration-modal-body ul li,
.ration-modal-content .ration-modal-body ol li {
  margin-bottom: 6px;
}

.fancybox__container {
  z-index: 2147483647 !important;
}

.fancybox__slide:has(#drawer-products) {
  padding: 0 !important;
}
.fancybox__slide:has(#drawer-products)::before, .fancybox__slide:has(#drawer-products)::after {
  display: none !important;
}

.fancybox__content#drawer-products {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  bottom: 0 !important;
  height: 100vh !important;
  width: 100% !important;
  max-width: 480px !important;
  margin: 0 !important;
  padding: 0 !important;
  background-color: var(--color-bg, #fcfbf7) !important;
  box-shadow: 10px 0 30px var(--color-text-light) !important;
  border-radius: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  transform: translateX(-100%);
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}
@media (max-width: 500px) {
  .fancybox__content#drawer-products {
    max-width: 100% !important;
  }
}

.fancybox__slide.is-selected .fancybox__content#drawer-products {
  transform: translateX(0) !important;
}

.products-modal {
  display: flex;
  flex-direction: column;
  height: 100%;
  width: 100%;
  overflow-y: auto;
}
.products-modal__header {
  display: flex;
  flex-direction: column;
  padding: 16px 24px 16px;
  background-color: var(--color-bg-cream);
  border-bottom: 1px solid var(--color-divider, rgba(17, 17, 17, 0.06));
  position: relative;
}
.products-modal__header-left {
  padding-right: 48px;
}
.products-modal__label-top {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  color: var(--color-text-secondary);
}
.products-modal__title-styled {
  font-size: 22px;
  font-weight: 800;
  color: var(--color-text-main);
  line-height: 1.1;
  margin: 4px 0;
}
.products-modal__title-styled span {
  font-weight: 400;
  color: var(--color-text-secondary);
  margin-left: 2px;
}
.products-modal__info-sub {
  font-size: 13px;
  color: var(--color-text-muted, #737373);
  margin-top: 6px;
  display: none;
}
.products-modal__close-btn {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 40px;
  height: 40px;
  background-color: var(--color-bg);
  border: 1px solid var(--color-divider, rgba(17, 17, 17, 0.08));
  border-radius: 50%;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-text-main, #111111);
  box-shadow: 0 2px 8px var(--color-rgba-0-0-0-0-05);
  transition: all 0.25s ease;
}
.products-modal__close-btn svg {
  width: 16px;
  height: 16px;
}
.products-modal__close-btn:hover {
  background-color: var(--color-text-main, #111111);
  color: var(--color-bg);
  transform: rotate(90deg);
  border-color: var(--color-text-main, #111111);
}
.products-modal__progress-bar-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 24px;
  background-color: var(--color-bg-cream);
  border-bottom: 1px solid var(--color-divider, rgba(17, 17, 17, 0.06));
  gap: 16px;
  display: none;
}
.products-modal__progress-bar-container {
  flex: 1;
  height: 6px;
  background-color: var(--color-divider);
  border-radius: 3px;
  overflow: hidden;
}
.products-modal__progress-bar {
  height: 100%;
  width: 0%;
  background-color: var(--color-nature-dark);
  border-radius: 3px;
  transition: width 0.3s ease;
}
.products-modal__progress-text {
  font-size: 12px;
  color: var(--color-text-muted);
  white-space: nowrap;
}
.products-modal__progress-text strong {
  color: var(--color-text-main);
  font-weight: 700;
}
.products-modal__body {
  flex: 1;
  overflow-y: visible;
  padding: 32px 24px;
}
.products-modal .product-category {
  margin-bottom: 32px;
}
.products-modal .product-category:last-child {
  margin-bottom: 0;
}
.products-modal .product-category__head {
  display: flex;
  align-items: center;
  margin-bottom: 16px;
}
.products-modal .product-category__title {
  font-size: 20px;
  font-weight: 800;
  color: var(--color-text-main);
  display: flex;
  align-items: baseline;
  gap: 10px;
  margin: 0;
}
.products-modal .product-category__count {
  position: static;
  width: auto;
  height: auto;
  border-radius: 0;
  background: none;
  font-size: 11px;
  font-weight: 700;
  font-style: normal;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--color-text-muted);
  line-height: normal;
  display: inline-block;
}
.products-modal .product-category__line {
  flex: 1;
  height: 1px;
  background-color: var(--color-divider, rgba(17, 17, 17, 0.08));
  margin-left: 16px;
}
.products-modal .product-list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.products-modal .product-item {
  position: relative;
  border-bottom: 1px solid var(--color-divider, rgba(17, 17, 17, 0.03));
}
.products-modal .product-item:last-child {
  border-bottom: none;
}
.products-modal .product-item label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 0;
  cursor: pointer;
  width: 100%;
}
.products-modal .product-item input[type=checkbox] {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}
.products-modal .product-item__left {
  display: flex;
  align-items: center;
  gap: 16px;
  flex: 1;
}
.products-modal .product-item .checkmark {
  min-width: 22px;
  height: 22px;
  border: 1.5px solid var(--color-text-muted, #a3a3a3);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s ease;
  background-color: transparent;
  flex-shrink: 0;
}
.products-modal .product-item .checkmark svg {
  width: 12px;
  height: 12px;
  opacity: 0;
  transform: scale(0.6);
  transition: all 0.2s ease;
  stroke: var(--color-bg);
  stroke-width: 3.5;
}
.products-modal .product-item .product-text {
  font-size: 15px;
  font-weight: 500;
  color: var(--color-text-main, #111111);
  transition: all 0.2s ease;
}
.products-modal .product-item .product-text .product-price-label {
  color: var(--color-text-muted, #737373);
  font-weight: 400;
}
.products-modal .product-item__count {
  font-size: 15px;
  font-weight: 600;
  color: var(--color-text-main, #111111);
  white-space: nowrap;
}
.products-modal .product-item.checked .checkmark {
  background-color: var(--color-nature-dark);
  border-color: var(--color-nature-dark);
}
.products-modal .product-item.checked .checkmark svg {
  opacity: 1;
  transform: scale(1);
}
.products-modal .product-item.checked .product-text {
  text-decoration: line-through;
  color: var(--color-text-muted, #a3a3a3);
}
.products-modal .product-item.checked .product-item__count {
  color: var(--color-text-muted, #a3a3a3);
}
.products-modal .product-summary--fixed {
  position: sticky;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: var(--color-text-main);
  padding: 16px 24px;
  border-top: none;
  z-index: 10;
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-top: auto;
  width: 100%;
  border-radius: 0;
  box-shadow: 0 -10px 30px var(--color-text-light);
}
.products-modal .product-summary--fixed .product-summary__stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  border-bottom: 1px solid var(--color-rgba-255-255-255-0-1);
  padding-bottom: 16px;
  width: 100%;
}
.products-modal .product-summary--fixed .product-summary__stat {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.products-modal .product-summary--fixed .product-summary__value {
  font-size: 26px;
  font-weight: 800;
  color: var(--color-bg);
  line-height: 1.1;
  letter-spacing: -0.02em;
}
@media (max-width: 500px) {
  .products-modal .product-summary--fixed .product-summary__value {
    font-size: 22px;
  }
}
.products-modal .product-summary--fixed .product-summary__label {
  font-size: 9px;
  font-weight: 700;
  color: var(--color-nature);
  text-transform: uppercase;
  letter-spacing: 0.12em;
  margin-top: 4px;
}
.products-modal .product-summary--fixed .product-summary__buttons {
  display: flex;
  gap: 12px;
  width: 100%;
}
.products-modal .product-summary--fixed .btn-export {
  flex: 1;
  height: 40px;
  box-sizing: border-box;
  background-color: var(--color-text-secondary);
  color: var(--color-bg);
  border: 1px solid transparent;
  padding: 0;
  font-size: 14px;
  font-weight: 700;
  border-radius: 30px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  transition: background-color 0.2s ease, transform 0.2s ease;
}
@media (max-width: 500px) {
  .products-modal .product-summary--fixed .btn-export {
    height: 40px;
    font-size: 13px;
  }
}
.products-modal .product-summary--fixed .btn-export svg {
  width: 16px;
  height: 16px;
  transition: transform 0.2s ease;
}
.products-modal .product-summary--fixed .btn-clear {
  flex: 1;
  height: 40px;
  box-sizing: border-box;
  background: transparent;
  color: var(--color-bg);
  border: 1px solid var(--color-rgba-255-255-255-0-2);
  padding: 0;
  font-size: 14px;
  font-weight: 700;
  border-radius: 30px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s ease;
}
@media (max-width: 500px) {
  .products-modal .product-summary--fixed .btn-clear {
    height: 40px;
    font-size: 13px;
  }
}
.products-modal .product-summary--fixed .btn-clear:hover {
  background-color: var(--color-rgba-255-255-255-0-1);
  border-color: var(--color-bg);
}

.diets-cards-wrap {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px 24px;
}
@media (max-width: 991px) {
  .diets-cards-wrap {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 767px) {
  .diets-cards-wrap {
    grid-template-columns: repeat(1, 1fr);
    gap: 32px 12px;
  }
}

.nav-pill-wrapper {
  position: sticky;
  top: 85px;
  z-index: 99;
  background-color: var(--color-bg, #fcfbf7);
  border-top: 1px solid var(--color-divider, rgba(17, 17, 17, 0.08));
  border-bottom: 1px solid var(--color-divider, rgba(17, 17, 17, 0.08));
  width: 100%;
  transition: top 0.3s ease;
}
@media (max-width: 1199px) {
  .nav-pill-wrapper {
    top: 60px;
  }
}

.nav-pill-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 10px 20px;
  display: flex;
  align-items: center;
  gap: 20px;
}
@media (max-width: 768px) {
  .nav-pill-container {
    padding: 8px 12px;
    gap: 12px;
  }
}

.nav-pill-label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--color-text-muted, #737373);
  user-select: none;
  white-space: nowrap;
}
@media (max-width: 600px) {
  .nav-pill-label {
    display: none;
  }
}

.nav-scroll {
  display: flex;
  align-items: center;
  gap: 16px;
  overflow-x: auto;
  scrollbar-width: none;
  flex-grow: 1;
}
.nav-scroll::-webkit-scrollbar {
  display: none;
}
@media (max-width: 768px) {
  .nav-scroll {
    gap: 8px;
  }
}

.nav-link {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  padding: 6px 16px;
  border-radius: 30px;
  transition: all 0.2s ease;
  min-width: 60px;
  color: var(--color-text-main, #111111);
}
@media (max-width: 768px) {
  .nav-link {
    padding: 4px 10px;
    min-width: 50px;
  }
}
.nav-link__day {
  font-size: 13px;
  font-weight: 700;
  line-height: 1.2;
  text-transform: uppercase;
}
.nav-link__date {
  font-size: 9px;
  font-weight: 500;
  line-height: 1.2;
  margin-top: 2px;
  color: var(--color-text-muted, #737373);
  white-space: nowrap;
}
.nav-link:hover {
  background-color: var(--color-rgba-0-0-0-0-05);
}
.nav-link.active {
  background-color: var(--color-text-main, #111111);
  color: var(--color-bg);
}
.nav-link.active .nav-link__date {
  color: var(--color-rgba-255-255-255-0-8);
}
.nav-link.active:hover {
  background-color: var(--color-text-main, #111111);
}

.nav-divider {
  width: 1px;
  height: 24px;
  background-color: var(--color-divider, rgba(17, 17, 17, 0.08));
  flex-shrink: 0;
}

.btn-prod-list {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background-color: var(--color-accent);
  color: var(--color-bg);
  padding: 11px 16px;
  border-radius: 30px;
  cursor: pointer;
  transition: background-color 0.2s ease, transform 0.1s ease;
  flex-shrink: 0;
  user-select: none;
}
.btn-prod-list:active {
  transform: scale(0.97);
}
@media (max-width: 768px) {
  .btn-prod-list {
    padding: 6px 12px;
    gap: 6px;
  }
}
.btn-prod-list__icon {
  width: 18px;
  height: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: currentColor;
}
.btn-prod-list__icon svg {
  width: 100%;
  height: 100%;
}
.btn-prod-list__text {
  font-size: 13px;
  font-weight: 600;
  line-height: 1;
}
@media (max-width: 600px) {
  .btn-prod-list__text {
    display: none;
  }
}
.btn-prod-list__badge {
  background-color: var(--color-rgba-255-255-255-0-2);
  color: var(--color-bg);
  font-size: 11px;
  font-weight: 700;
  padding: 2px 8px;
  border-radius: 20px;
  line-height: 1.2;
  min-width: 20px;
  text-align: center;
}

.ration-times {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
@media (max-width: 900px) {
  .ration-times {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 600px) {
  .ration-times {
    grid-template-columns: 1fr;
    gap: 16px;
  }
}
.ration-times--scrollable {
  display: flex;
  overflow-x: auto;
  gap: 24px;
  padding-bottom: 20px;
  margin-bottom: -20px;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
}
@media (max-width: 767px) {
  .ration-times--scrollable {
    flex-direction: column;
    gap: 16px;
  }
}
.ration-times--scrollable::-webkit-scrollbar {
  height: 6px;
}
.ration-times--scrollable::-webkit-scrollbar-track {
  background: var(--color-surface);
  border-radius: 99px;
}
.ration-times--scrollable::-webkit-scrollbar-thumb {
  background: var(--color-divider);
  border-radius: 99px;
}
.ration-times--scrollable .ration-list {
  display: flex;
  flex-direction: column;
  gap: 20px;
  flex-shrink: 0;
  width: 30%;
  scroll-snap-align: start;
}
@media (max-width: 767px) {
  .ration-times--scrollable .ration-list {
    width: 100%;
  }
}

.ration-list {
  display: contents;
}

.meal-card {
  display: flex;
  flex-direction: column;
  border-radius: 20px;
  overflow: hidden;
  background: var(--color-bg, #ffffff);
  border: 1px solid var(--color-divider, #f1f1f1);
  text-decoration: none;
  box-shadow: 0 4px 20px var(--color-rgba-0-0-0-0-05);
  transition: box-shadow 0.25s ease, transform 0.25s ease;
}
@media (min-width: 768px) {
  .meal-card:hover {
    box-shadow: 0 12px 32px var(--color-rgba-0-0-0-0-05);
    transform: translateY(-4px);
  }
  .meal-card:hover .meal-card__title {
    color: var(--color-text-secondary);
  }
}
.meal-card__image {
  position: relative;
  width: 100%;
  padding-bottom: 68%;
  overflow: hidden;
  background: var(--color-surface, #efece6);
  display: block;
}
.meal-card__image img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.4s ease;
}
.meal-card__image-placeholder {
  position: absolute;
  inset: 0;
  background: var(--color-surface, #efece6);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-nature);
}
.meal-card__image-placeholder svg {
  width: 48px;
  height: 48px;
  opacity: 0.6;
}
.meal-card:hover .meal-card__image img {
  transform: scale(1.04);
}
.meal-card__content {
  display: flex;
  flex-direction: column;
  padding: 16px;
  flex: 1;
}
.meal-card__header-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 14px;
}
.meal-card__badge {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  padding: 4px 10px;
  border-radius: 6px;
  line-height: 1.4;
  white-space: nowrap;
  color: var(--color-bg);
}
@media (max-width: 767px) {
  .meal-card__badge {
    font-size: 10px;
    padding: 3px 8px;
  }
}
.meal-card__badge--breakfast {
  background: var(--color-danger-hover);
}
.meal-card__badge--lunch {
  background: var(--color-calories);
}
.meal-card__badge--dinner {
  background: var(--color-rgba-0-0-0-0-85);
}
.meal-card__badge--snack {
  background: var(--color-carbs);
}
.meal-card__time {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  font-weight: 600;
  color: var(--color-text-muted-alt);
}
.meal-card__time .meal-card__icon {
  width: 14px;
  height: 14px;
  stroke: var(--color-nature);
  stroke-width: 2.5;
}
.meal-card__title {
  font-size: 22px;
  font-weight: 700;
  line-height: 1.24;
  color: var(--color-text-main, #111111);
  margin: 0 0 12px 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  transition: color 0.2s ease;
}
@media (max-width: 768px) {
  .meal-card__title {
    font-size: 18px;
  }
}
.meal-card__tags {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 16px;
}
.meal-card__tag {
  font-size: 12px;
  font-weight: 600;
  padding: 4px 12px;
  border-radius: 99px;
  border: 1px solid;
  line-height: 1.2;
  white-space: nowrap;
}
.meal-card__tag--meta {
  border-color: var(--color-divider);
  color: var(--color-text-muted-alt);
  background: transparent;
}
.meal-card__tag--level-easy, .meal-card__tag--level-legko {
  border-color: var(--color-carbs-bg);
  color: var(--color-success-green);
  background: var(--color-bg-gray);
}
.meal-card__tag--level-medium, .meal-card__tag--level-seredno, .meal-card__tag--level-normal {
  border-color: var(--color-protein-bg);
  color: var(--color-protein);
  background: var(--color-bg-gray);
}
.meal-card__tag--level-hard, .meal-card__tag--level-skladno, .meal-card__tag--level-difficult {
  border-color: var(--color-carbs-bg);
  color: var(--color-calories);
  background: var(--color-bg-cream);
}
.meal-card__nutrients-row {
  display: flex;
  align-items: baseline;
  gap: 10px;
  margin-bottom: 16px;
}
.meal-card__kcal {
  font-size: 19px;
  font-weight: 800;
  color: var(--color-text-secondary);
  white-space: nowrap;
}
.meal-card__macros {
  font-size: 13px;
  color: var(--color-text-muted-alt);
  font-weight: 500;
  white-space: nowrap;
}
.meal-card__progress-block {
  margin-bottom: 18px;
}
.meal-card__progress-labels {
  display: flex;
  justify-content: space-between;
  font-size: 11px;
  color: var(--color-nature);
  font-weight: 600;
  margin-bottom: 6px;
}
.meal-card__progress-bar {
  height: 6px;
  background: var(--color-bg-light);
  border-radius: 99px;
  overflow: hidden;
}
.meal-card__progress-fill {
  height: 100%;
  border-radius: 99px;
  background: var(--color-accent, #c4622d);
  transition: width 0.4s ease;
}
.meal-card--breakfast .meal-card__progress-fill {
  background: var(--color-danger-hover);
}
.meal-card--snack .meal-card__progress-fill {
  background: var(--color-carbs);
}
.meal-card--lunch .meal-card__progress-fill {
  background: var(--color-calories);
}
.meal-card--dinner .meal-card__progress-fill {
  background: var(--color-contrast);
}
.meal-card__footer-row {
  display: flex;
  align-items: center;
  gap: 16px;
  border-top: 1px solid var(--color-bg-light);
  padding-top: 14px;
  margin-top: auto;
}
.meal-card__stat {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  color: var(--color-text-muted-alt);
  font-weight: 600;
}
.meal-card__stat .meal-card__icon {
  width: 14px;
  height: 14px;
  stroke: var(--color-nature);
  stroke-width: 2.5;
}
@media (max-width: 600px) {
  .meal-card {
    flex-direction: row;
    align-items: stretch;
    border-radius: 16px;
  }
  .meal-card__image {
    width: 120px;
    padding-bottom: 0;
    flex-shrink: 0;
    align-self: stretch;
  }
  .meal-card__image-placeholder svg {
    width: 32px;
    height: 32px;
  }
  .meal-card__content {
    padding: 14px 16px;
    gap: 0;
  }
  .meal-card__header-row {
    margin-bottom: 8px;
  }
  .meal-card__tags {
    margin-bottom: 10px;
    gap: 4px;
  }
  .meal-card__tag {
    font-size: 10px;
    padding: 2px 8px;
  }
  .meal-card__nutrients-row {
    margin-bottom: 10px;
    gap: 6px;
  }
  .meal-card__kcal {
    font-size: 15px;
  }
  .meal-card__macros {
    font-size: 11px;
  }
  .meal-card__progress-block {
    margin-bottom: 10px;
  }
  .meal-card__progress-labels {
    font-size: 9px;
    margin-bottom: 4px;
  }
  .meal-card__progress-bar {
    height: 4px;
  }
  .meal-card__footer-row {
    padding-top: 10px;
    gap: 12px;
  }
  .meal-card__stat {
    font-size: 11px;
  }
}

/* =================================================================
   Weekly Menu Catalog Styles (Redesign)
   ================================================================= */
.weekly-menu-catalog {
  overflow: hidden;
  padding-bottom: 60px;
}

/* -------------------------------------------------------------
   A. HERO HEADER SECTION
   ------------------------------------------------------------- */
.weekly-menu-hero {
  background-color: var(--color-cream, #fcfaf6);
  padding: 48px 0;
  border-bottom: 1px solid var(--color-divider, #efe8de);
}
@media (max-width: 767px) {
  .weekly-menu-hero {
    padding: 32px 0;
  }
}
.weekly-menu-hero__grid {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 40px;
  align-items: center;
}
@media (max-width: 991px) {
  .weekly-menu-hero__grid {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}
.weekly-menu-hero__left {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.weekly-menu-hero__title {
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 48px;
  font-weight: 700;
  color: var(--color-heading, #2c2622);
  line-height: 1.15;
  margin: 16px 0;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}
@media (max-width: 767px) {
  .weekly-menu-hero__title {
    font-size: 32px;
  }
}
.weekly-menu-hero__title .serif-italic {
  font-style: italic;
  color: var(--color-sage, #5d6848);
}
.weekly-menu-hero__desc {
  font-size: 16px;
  line-height: 1.5;
  color: var(--color-body, #6f675f);
  max-width: 600px;
  margin: 0;
}
.weekly-menu-hero__image-wrap {
  width: 340px;
  height: 340px;
  border-radius: 50%;
  overflow: hidden;
  margin: 0 auto;
  box-shadow: 0 16px 40px rgba(44, 38, 34, 0.08);
  border: 6px solid #ffffff;
}
@media (max-width: 991px) {
  .weekly-menu-hero__image-wrap {
    width: 260px;
    height: 260px;
  }
}
.weekly-menu-hero__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Breadcrumbs */
.weekly-menu-breadcrumbs {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
}
.weekly-menu-breadcrumbs a {
  color: var(--color-caption, #9d948b);
  text-decoration: none;
  transition: color 0.2s ease;
}
.weekly-menu-breadcrumbs a:hover {
  color: var(--color-sage, #5d6848);
}
.weekly-menu-breadcrumbs .divider {
  color: var(--color-caption, #9d948b);
}
.weekly-menu-breadcrumbs .current {
  color: var(--color-heading, #2c2622);
  font-weight: 600;
}

/* -------------------------------------------------------------
   B. SPLIT LAYOUT
   ------------------------------------------------------------- */
.weekly-menu-catalog__section {
  padding: 48px 0;
}

.weekly-menu-catalog__layout {
  display: flex;
  gap: 32px;
  align-items: flex-start;
}
@media (max-width: 991px) {
  .weekly-menu-catalog__layout {
    flex-direction: column;
    gap: 32px;
  }
}

.btn-full-width {
  width: 100%;
  height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  font-family: inherit;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.25s ease;
}

.btn-outline {
  background: none;
  border: 1px solid var(--color-border);
  color: var(--color-heading);
}
.btn-outline:hover {
  border-color: var(--color-sage);
  color: var(--color-sage);
  background-color: rgba(93, 104, 72, 0.03);
}

/* 2. Right Content Area */
.weekly-menu-catalog__content {
  flex-grow: 1;
}

/* Meta count & sorting row */
.weekly-menu-catalog__meta-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 24px;
}
@media (max-width: 575px) {
  .weekly-menu-catalog__meta-row {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
}
.weekly-menu-catalog__meta-row .found-count-text {
  font-size: 15px;
  color: var(--color-body);
}
.weekly-menu-catalog__meta-row .found-count-text #catalog-count-number {
  font-weight: 700;
  color: var(--color-heading);
}
.weekly-menu-catalog__meta-row .sort-selector-wrap {
  display: flex;
  align-items: center;
  gap: 8px;
}
.weekly-menu-catalog__meta-row .sort-label {
  font-size: 13px;
  color: var(--color-caption);
}

/* Custom dropdown sorting */
.sort-dropdown {
  position: relative;
}
.sort-dropdown-btn {
  background: none;
  border: none;
  font-family: inherit;
  font-size: 13px;
  font-weight: 700;
  color: var(--color-heading);
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 0;
}
.sort-dropdown-btn svg {
  transition: transform 0.2s ease;
}
.sort-dropdown-options {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  background-color: #ffffff;
  border: 1px solid var(--color-border);
  border-radius: 12px;
  box-shadow: 0 8px 24px rgba(44, 38, 34, 0.08);
  z-index: 100;
  min-width: 160px;
  padding: 6px;
  margin: 0;
  list-style: none;
  display: none;
}
.sort-dropdown-options li {
  padding: 8px 12px;
  font-size: 13px;
  border-radius: 8px;
  cursor: pointer;
  color: var(--color-body);
  transition: all 0.2s ease;
}
.sort-dropdown-options li:hover {
  background-color: var(--color-bg-main);
  color: var(--color-heading);
}
.sort-dropdown-options li.active {
  background-color: rgba(93, 104, 72, 0.06);
  color: var(--color-sage);
  font-weight: 700;
}
.sort-dropdown.is-open .sort-dropdown-options {
  display: block;
}
.sort-dropdown.is-open .sort-dropdown-btn svg {
  transform: rotate(180deg);
}

/* -------------------------------------------------------------
   C. MAIN CARDS GRID
   ------------------------------------------------------------- */
.weekly-menu-catalog__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-bottom: 48px;
}
@media (max-width: 1200px) {
  .weekly-menu-catalog__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 575px) {
  .weekly-menu-catalog__grid {
    grid-template-columns: 1fr;
  }
}

.no-results-state {
  grid-column: 1/-1;
  text-align: center;
  padding: 60px 20px;
  background-color: var(--color-bg-card);
  border: 1px dashed var(--color-border);
  border-radius: 20px;
}
.no-results-state p {
  font-size: 15px;
  color: var(--color-caption);
  max-width: 320px;
  margin: 0 auto;
}

/* -------------------------------------------------------------
   E. PAGINATION STYLING
   ------------------------------------------------------------- */
.catalog-pagination-wrap {
  display: flex;
  justify-content: center;
  margin-top: 24px;
}

.catalog-pagination {
  display: flex;
  align-items: center;
  gap: 8px;
}
.catalog-pagination a,
.catalog-pagination span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  height: 36px;
  border-radius: 50%;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  color: var(--color-body);
  transition: all 0.25s ease;
}
.catalog-pagination a {
  background-color: #ffffff;
  border: 1px solid var(--color-border);
}
.catalog-pagination a:hover {
  border-color: var(--color-sage);
  color: var(--color-sage);
  background-color: rgba(93, 104, 72, 0.03);
}
.catalog-pagination span.current {
  background-color: var(--color-sage);
  color: #ffffff;
  border: 1px solid var(--color-sage);
}
.catalog-pagination span.dots {
  color: var(--color-caption);
}

.sidebar {
  min-width: 240px;
  max-width: 240px;
  padding: 30px 12px;
  position: fixed;
  top: 67px;
  height: calc(100% - 67px);
  transition: transform 0.3s ease;
  z-index: 1000;
  background-color: var(--color-bg);
  overflow-y: auto;
  display: none;
}
.sidebar::-webkit-scrollbar {
  width: 8px; /* ширина смуги прокрутки */
}
.sidebar::-webkit-scrollbar-track {
  background: var(--color-bg-gray); /* колір доріжки */
}
.sidebar::-webkit-scrollbar-thumb {
  background: var(--color-surface); /* колір повзунка */
  border-radius: 0px; /* закруглені краї повзунка */
}
@media (max-width: 1199px) {
  .sidebar {
    transform: translateX(-100%);
    top: 0px;
    height: 100%;
    min-width: 280px;
    max-width: 280px;
  }
}
.sidebar .wrap {
  padding-bottom: 20px;
  margin-bottom: 20px;
}
.sidebar .wrap:nth-child(1) .menu li, .sidebar .wrap:nth-child(2) .menu li, .sidebar .wrap:nth-child(3) .menu li {
  width: 100%;
  max-width: 204px;
  margin-bottom: 1px;
}
@media (max-width: 1199px) {
  .sidebar .wrap:nth-child(1) .menu li, .sidebar .wrap:nth-child(2) .menu li, .sidebar .wrap:nth-child(3) .menu li {
    max-width: 100%;
  }
}
.sidebar .wrap:nth-child(1) .menu li a, .sidebar .wrap:nth-child(2) .menu li a, .sidebar .wrap:nth-child(3) .menu li a {
  border-radius: 10px;
  height: 40px;
  display: block;
  padding: 0 20px;
  display: flex;
  align-items: center;
  transition: 0.3s ease;
  letter-spacing: 0.3px;
  font-size: 14px;
  font-weight: 500;
}
.sidebar .wrap:nth-child(1) .menu li a .menu-image, .sidebar .wrap:nth-child(2) .menu li a .menu-image, .sidebar .wrap:nth-child(3) .menu li a .menu-image {
  display: block;
  width: 16px;
  height: 16px;
  padding: 0;
}
@media (min-width: 1025px) {
  .sidebar .wrap:nth-child(1) .menu li a:hover, .sidebar .wrap:nth-child(2) .menu li a:hover, .sidebar .wrap:nth-child(3) .menu li a:hover {
    background-color: var(--color-bg-light);
  }
}
.sidebar .wrap:nth-child(1) .menu li:last-child, .sidebar .wrap:nth-child(2) .menu li:last-child, .sidebar .wrap:nth-child(3) .menu li:last-child {
  margin-bottom: 0;
}
.sidebar .wrap:nth-child(1) .menu .current-menu-item a,
.sidebar .wrap:nth-child(1) .menu .current_page_item a, .sidebar .wrap:nth-child(2) .menu .current-menu-item a,
.sidebar .wrap:nth-child(2) .menu .current_page_item a, .sidebar .wrap:nth-child(3) .menu .current-menu-item a,
.sidebar .wrap:nth-child(3) .menu .current_page_item a {
  background-color: var(--color-bg-light);
}
.sidebar .wrap:nth-child(4) .menu {
  display: flex;
  padding: 0 20px;
}
.sidebar .wrap:nth-child(4) .menu li a {
  opacity: 0.75;
  transition: 0.3s;
  margin-right: 5px;
  margin-bottom: 5px;
  font-size: 13px;
  transition: 0.3s;
}
.sidebar .wrap:nth-child(4) .menu li a:hover {
  opacity: 1;
}
.sidebar-description {
  padding: 0 15px 0 15px;
  font-size: 12px;
  line-height: 1.54;
  opacity: 0.5;
}
.sidebar.is-active {
  transform: translateX(0%) !important;
  z-index: 1002;
}

.advertising {
  position: relative;
  max-width: 100%;
  overflow: visible;
  width: 100%;
}
.advertising .adsbygoogle {
  display: flex !important;
  justify-content: center;
}
.advertising.head {
  padding: 4px 6px;
  overflow: visible;
  width: 100%;
}
.advertising.adv-preparation {
  margin-bottom: 44px;
}

.pArticle {
  position: relative;
  padding-top: 32px;
  padding-bottom: 80px;
}
.pArticle .vitamins-minerals {
  display: block;
}
.pArticle-title {
  margin-bottom: 1rem;
}
.pArticle__desc {
  margin-bottom: 1.5rem;
}
.pArticle__recipes {
  position: relative;
  padding-top: 0;
}
.pArticle .recipes-cards-wrap {
  grid-template-columns: repeat(3, 1fr);
}
.pArticle .wrap {
  display: flex;
  align-items: flex-start;
}
.pArticle__content {
  width: 100%;
}
@media (max-width: 991px) {
  .pArticle__content {
    padding-right: 0;
  }
}
.pArticle__sidebar {
  min-width: 440px;
  max-width: 440px;
  padding: 0 12px;
  margin-left: 20px;
}
@media (max-width: 991px) {
  .pArticle__sidebar {
    display: none;
  }
}

.article-card {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.125rem 0;
  border-bottom: 1px solid var(--color-divider);
  text-decoration: none;
}
.article-card .title {
  font-size: 20px;
  font-weight: 300;
}
@media (max-width: 767px) {
  .article-card .title {
    font-size: 18px;
  }
}

.postinproduct {
  position: relative;
  margin-top: 40px;
}
.postinproduct-title {
  margin-bottom: 24px;
}
.postinproduct__wrap {
  display: grid;
  gap: 24px;
}
@media (max-width: 1024px) {
  .postinproduct__wrap {
    grid-template-columns: 1fr;
    gap: 16px;
  }
}

.products {
  position: relative;
  visibility: visible;
  padding-bottom: 5rem;
}
.products #products-content {
  width: 100%;
}
.products .wrapper {
  display: flex;
}
.products .search-input {
  margin-bottom: 10px;
}
.products .filter-btn {
  border: none;
  background: var(--color-accent);
  color: var(--color-bg);
  height: 34px;
  padding: 0 14px;
}

.product-cards-wrap {
  position: relative;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 16px;
  width: 100%;
}
@media (max-width: 1199px) {
  .product-cards-wrap {
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
  }
}
@media (max-width: 767px) {
  .product-cards-wrap {
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
  }
}

.pCard {
  border: 1.5px solid var(--color-border, #e9e2d6);
  border-radius: 12px;
  padding: 16px;
  display: flex;
  flex-direction: column;
  height: 100%;
  text-decoration: none;
  cursor: pointer;
}
@media (max-width: 767px) {
  .pCard {
    padding: 16px;
  }
}
.pCard__img {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  position: relative;
  margin-bottom: 16px;
}
.pCard__img .pCard__img-el {
  display: block;
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
  aspect-ratio: 16/12;
}
.pCard__content {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}
.pCard__title {
  font-family: var(--font-body);
  font-size: var(--fs-base, 16px);
  font-weight: 700;
  color: var(--color-heading, #2c2622);
  line-height: 1.3;
  margin: 0 0 8px 0;
  transition: color 0.2s ease;
}
.pCard__desc {
  font-family: var(--font-body);
  font-size: var(--fs-sm, 14px);
  color: var(--color-body, #6f675f);
  line-height: 1.5;
  margin: 0 0 16px 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  min-height: 42px;
}
@media (max-width: 767px) {
  .pCard__desc {
    font-size: var(--fs-xs, 12px);
    min-height: 36px;
    margin-bottom: 12px;
  }
}
.pCard__categories {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: auto;
}
.pCard__badge {
  display: inline-flex;
  align-items: center;
  padding: 6px 12px;
  font-size: 11px;
  font-weight: 500;
  line-height: 1;
  border-radius: 6px;
  background-color: var(--color-bg-section, #f6f1e8);
  color: var(--color-body, #6f675f);
  transition: background-color 0.2s ease, color 0.2s ease;
}
@media (max-width: 767px) {
  .pCard__badge {
    padding: 4px 8px;
    font-size: 10px;
  }
}
.pCard__badge--fruit-vegetables, .pCard__badge--vegetables, .pCard__badge--fruits, .pCard__badge--ovochi {
  background-color: rgba(93, 104, 72, 0.08);
  color: var(--color-sage, #5d6848);
}
.pCard__badge--nuts-seeds, .pCard__badge--grain-legumes, .pCard__badge--krupi-ta-bobovi {
  background-color: rgba(201, 134, 103, 0.08);
  color: var(--color-terracotta, #c98667);
}
@media (hover: hover) {
  .pCard:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 32px var(--color-shadow, rgba(44, 38, 34, 0.06));
    border-color: var(--color-sage, #5d6848);
  }
  .pCard:hover .pCard__img-el {
    transform: scale(1.05);
  }
  .pCard:hover .pCard__title {
    color: var(--color-sage, #5d6848);
  }
}

.r-product {
  background: var(--color-bg);
  overflow: hidden;
  margin-bottom: 48px;
  padding: 12px;
  box-shadow: 0 0 10px var(--color-rgba-0-0-0-0-05);
  border-radius: 8px;
}
.r-product__wrap {
  display: flex;
  align-items: flex-start;
  position: relative;
  gap: 12px;
}
.r-product__content {
  display: grid;
  gap: 6px;
}
.r-product-title {
  display: block;
  font-size: 20px;
}
.r-product__image {
  display: flex;
  float: right;
  width: 100px;
  position: relative;
  height: auto;
}
.r-product__desc {
  position: relative;
  font-size: 14px;
}
.r-product__desc p {
  font-size: inherit;
  line-height: 1.34;
}
.r-product .btn-buy {
  display: inline-block;
  background: var(--color-accent);
  color: white;
  padding: 9px 17px;
  border-radius: 6px;
  text-decoration: none;
  font-weight: 500;
  transition: background 0.3s ease;
  width: fit-content;
  margin-top: 2px;
  font-size: 14px;
  letter-spacing: 0.3px;
}
.r-product .btn-buy:hover {
  background: var(--color-accent);
}

.recommended-product {
  background: var(--color-bg);
  border-radius: 16px;
  padding: 30px;
  margin-top: 40px;
  box-shadow: 0 0 10px var(--color-rgba-0-0-0-0-05);
  max-width: 700px;
}

.recommended-product h2 {
  font-size: 1.6em;
  margin-bottom: 20px;
  color: var(--color-dark);
}

.product-card {
  display: flex;
  gap: 20px;
  align-items: center;
  flex-wrap: wrap;
}

.product-card img {
  width: 140px;
  height: auto;
  border-radius: 12px;
  object-fit: contain;
  background: var(--color-bg-warm);
  padding: 10px;
}

.product-info {
  flex: 1;
  min-width: 200px;
}

.product-info h3 {
  font-size: 1.2em;
  margin-bottom: 10px;
  color: var(--color-contrast);
}

.product-info p {
  font-size: 1em;
  color: var(--color-text-muted);
  margin-bottom: 16px;
}

.author-wrap {
  display: flex;
  flex-direction: column;
}
@media (max-width: 1199px) {
  .author-wrap {
    flex-direction: column;
  }
}

.author-content {
  width: 100%;
  padding-bottom: 100px;
}

.author-recipes {
  padding: 40px 16px;
}

.author-blog {
  padding: 40px 16px;
}
.author-blog__wrap {
  display: flex;
  flex-wrap: wrap;
  margin-right: -20px;
}

.pAuthor {
  position: relative;
  padding-top: 0;
  padding-bottom: 100px;
}
.pAuthor-title {
  margin-bottom: 20px;
}
.pAuthor-title span {
  font-size: 50%;
}
.pAuthor__row {
  margin-bottom: 30px;
}
.pAuthor__posts {
  position: relative;
}
.pAuthor__recipes {
  position: relative;
}
.pAuthor__tabs {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}
.pAuthor__tabs_item {
  font-weight: 700;
  line-height: 1;
  display: flex;
  align-items: flex-end;
  font-size: 26px;
  margin-right: 20px;
  padding-right: 20px;
  opacity: 1;
  transition: 0.3s ease;
  cursor: pointer;
  border-right: 1px solid var(--color-divider);
}
@media (max-width: 767px) {
  .pAuthor__tabs_item {
    font-size: 22px;
  }
}
.pAuthor__tabs_item:not(.is-active) {
  opacity: 0.5;
}
@media (min-width: 1025px) {
  .pAuthor__tabs_item:hover {
    opacity: 0.75;
  }
}
.pAuthor__tabs_item:last-child {
  border-right: none;
  margin-right: 0;
  padding-right: 0;
}
.pAuthor__tabs_item span {
  font-size: 50%;
  opacity: 0.75;
  padding-bottom: 3px;
  display: block;
  margin-left: 5px;
}
.pAuthor__wrap_item {
  display: none;
}
.pAuthor__wrap_item:first-child {
  display: block;
}

.iAuthor {
  display: flex;
  overflow: hidden;
  width: 100%;
  padding: 40px 0 0 0;
}
@media (max-width: 767px) {
  .iAuthor {
    padding: 24px 0 0 0;
  }
}
.iAuthor .iAuthor-breadcrumbs {
  margin-bottom: 24px;
}
@media (max-width: 767px) {
  .iAuthor .iAuthor-breadcrumbs {
    margin-bottom: 16px;
  }
}
.iAuthor .aTabs__wrap {
  margin-bottom: 0;
  margin-top: 40px;
}
@media (max-width: 767px) {
  .iAuthor .aTabs__wrap {
    margin-top: 24px;
  }
}
.iAuthor__wrap {
  display: flex;
  align-items: flex-start;
  gap: 40px;
  width: 100%;
  max-width: 1000px;
  margin: 0;
  background: none;
  border: none;
  border-radius: 0;
  padding: 0;
  box-shadow: none;
}
@media (max-width: 767px) {
  .iAuthor__wrap {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 20px;
  }
}
.iAuthor-photo {
  width: 120px;
  height: 120px;
  min-width: 120px;
  border-radius: 50%;
  border: 1px solid var(--color-rgba-0-0-0-0-05);
  padding: 5px;
  background-color: var(--color-bg);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  box-sizing: border-box;
}
.iAuthor-photo img {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
  display: block;
}
@media (max-width: 767px) {
  .iAuthor-photo {
    width: 100px;
    height: 100px;
    min-width: 100px;
  }
}
.iAuthor__placeholder {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 32px;
  color: var(--color-bg);
  text-transform: uppercase;
}
@media (max-width: 767px) {
  .iAuthor__placeholder {
    font-size: 26px;
  }
}
.iAuthor__content {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding-top: 4px;
}
@media (max-width: 767px) {
  .iAuthor__content {
    align-items: center;
    padding-top: 0;
  }
}
.iAuthor-position {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--color-text-secondary);
  margin-bottom: 6px;
  line-height: 1.2;
  display: block;
}
.iAuthor-name {
  font-weight: 800;
  color: var(--color-text-main, #111111);
  margin: 0 0 12px 0;
  line-height: 1.15;
  letter-spacing: -0.03em;
  font-family: var(--font-header);
}
.iAuthor .short-desc {
  font-size: 16px;
  color: var(--color-text-muted, #595754);
  line-height: 1.6;
  margin-bottom: 16px;
  max-width: 760px;
  font-weight: 350;
  margin-top: 0;
}
@media (max-width: 767px) {
  .iAuthor .short-desc {
    font-size: 14px;
    margin-bottom: 12px;
  }
}
.iAuthor__socials {
  display: flex;
  align-items: center;
  gap: 12px;
}
.iAuthor__socials_item {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  border: 1px solid var(--color-rgba-0-0-0-0-05);
  background-color: transparent;
  color: var(--color-text-muted, #7c7a76);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  box-sizing: border-box;
}
.iAuthor__socials_item svg {
  width: 16px;
  height: 16px;
}
.iAuthor__socials_item:hover {
  transform: translateY(-2px);
}
.iAuthor__socials_item:hover--instagram {
  background-color: var(--color-brand-instagram);
  border-color: var(--color-brand-instagram);
}
.iAuthor__socials_item:hover--tiktok {
  background-color: var(--color-text-main);
  border-color: var(--color-text-main);
}
.iAuthor__socials_item:hover--youtube {
  background-color: var(--color-accent-orange);
  border-color: var(--color-accent-orange);
}

.sSearch {
  position: relative;
}
.sSearch-not-found {
  position: relative;
  display: block;
  text-align: center;
  font-size: 24px;
  font-weight: 500;
}
.sSearch-result {
  display: flex;
  align-items: center;
  position: relative;
  margin-bottom: 30px;
}
.sSearch-result p {
  font-size: 18px;
  display: inline-block;
  margin-left: 10px;
}

.single {
  position: relative;
  position: relative;
}
.single .bread {
  padding: 10px 0;
  display: none;
}

.bArticle {
  position: relative;
  padding-bottom: 100px;
  padding-top: 24px;
  position: relative;
}
@media (max-width: 991px) {
  .bArticle .commentsForm {
    padding-bottom: 80px;
    margin-bottom: 80px;
    border-bottom: 1px solid var(--color-divider);
  }
}
.bArticle .container {
  max-width: 1240px;
}
.bArticle .author-badge-blog {
  margin-bottom: 1rem;
}
.bArticle .rmp-results-widget {
  margin-bottom: 2rem;
  justify-content: flex-start;
  width: fit-content;
}
.bArticle .code-block {
  margin-left: 0px !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  width: 100% !important;
  overflow: visible;
  position: relative;
  margin: 32px 0 !important;
}
@media (max-width: 991px) {
  .bArticle .code-block {
    width: 100% !important;
  }
}
.bArticle .code-block .advertising {
  overflow: visible;
  width: 100%;
}
@media (max-width: 991px) {
  .bArticle .code-block .advertising {
    margin: 0 auto !important;
  }
}
.bArticle .code-block ins.adsbygoogle {
  max-width: 100vw !important;
  width: 100% !important;
  display: block !important;
  position: relative;
  margin: 0 auto !important;
}
.bArticle-sidebar {
  min-width: 330px;
  max-width: 330px;
  margin-left: 45px;
}
@media (max-width: 991px) {
  .bArticle-sidebar {
    min-width: 100%;
    max-width: 100%;
    margin-left: 0;
    margin-top: 60px;
  }
}
@media (max-width: 991px) {
  .bArticle {
    padding-top: 16px;
  }
}
.bArticle .meta {
  margin-bottom: 6px;
  justify-content: flex-start !important;
  flex-direction: row;
}
@media (max-width: 767px) {
  .bArticle .postMenu {
    width: calc(100% + 32px);
    left: -16px;
    margin-bottom: 24px;
  }
}
.bArticle-m {
  display: none;
  width: 100%;
}
@media (max-width: 991px) {
  .bArticle-m {
    display: block;
  }
}
.bArticle__top {
  margin-bottom: 32px;
  width: 100%;
}
.bArticle__title-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 16px;
}
.bArticle__title-wrapper .bArticle-title {
  margin-bottom: 0;
  flex: 1;
}
.bArticle__title-wrapper .article-actions {
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex-shrink: 0;
  margin-top: 4px;
}
.bArticle__title-wrapper .article-actions .bArticle__bookmark,
.bArticle__title-wrapper .article-actions .modern-share-wrapper {
  margin: 0;
}
@media (max-width: 767px) {
  .bArticle__title-wrapper {
    gap: 12px;
  }
  .bArticle__title-wrapper .bArticle-title {
    font-size: 28px;
  }
}
.bArticle .wrap {
  display: flex;
  align-items: flex-start;
}
@media (max-width: 991px) {
  .bArticle .wrap {
    display: block;
  }
}
.bArticle-content {
  flex: 1 1 auto;
  min-width: 0;
}
.bArticle .author-badge {
  justify-content: flex-start;
}
.bArticle-title {
  max-width: 800px;
  margin-bottom: 8px;
  line-height: 1.24;
  font-weight: 600;
  font-family: var(--font-header);
}
.bArticle__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 30px;
}
.bArticle .authorPost {
  margin-bottom: 0;
}
.bArticle__desc {
  margin-bottom: 3rem;
}
@media (max-width: 767px) {
  .bArticle .recentPosts {
    margin-bottom: 80px;
  }
}

.article-tabs {
  margin-bottom: 4rem;
  padding-top: 3rem;
  border-top: 1px solid var(--color-divider);
}
.article-tabs__title {
  font-family: var(--font-header);
  font-weight: 800;
  line-height: 1.1;
  text-transform: uppercase;
  margin-bottom: 12px;
}
.article-tabs__title .text-accent {
  color: var(--color-danger);
}
@media (max-width: 767px) {
  .article-tabs__title {
    font-size: 28px;
  }
}
.article-tabs__subtitle {
  color: var(--color-text-muted);
  font-size: 16px;
  line-height: 1.5;
  margin-bottom: 32px;
  max-width: 600px;
  margin-top: 8px;
}
.article-tabs__nav {
  display: flex;
  align-items: center;
  gap: 32px;
  border-bottom: 1px solid var(--color-divider);
  margin-bottom: 40px;
  overflow-x: auto;
  scrollbar-width: none;
}
.article-tabs__nav::-webkit-scrollbar {
  display: none;
}
.article-tabs .tabs__nav-item {
  border: 0;
  background: transparent;
  font-weight: 700;
  font-size: 13px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 0 0 16px 0;
  color: var(--color-text-muted);
  cursor: pointer;
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: -1px;
  white-space: nowrap;
  transition: color 0.2s ease;
  border-radius: 0;
}
.article-tabs .tabs__nav-item.active {
  color: var(--color-danger);
  border-bottom: 2px solid var(--color-danger);
}
.article-tabs .tabs__nav-item:hover:not(.active) {
  color: var(--color-text-main);
}
.article-tabs .tabs__nav-icon {
  display: flex;
  align-items: center;
  justify-content: center;
}
.article-tabs .tabs__pane {
  display: none;
}
.article-tabs .tabs__pane.active {
  display: block;
  animation: tabFade 0.25s ease;
}

.article-sources__list {
  display: flex;
  flex-direction: column;
  gap: 40px;
  margin-bottom: 40px;
}
.article-sources__item {
  border-left: 2px solid var(--color-danger);
  padding-left: 24px;
}
.article-sources__meta {
  font-size: 11px;
  font-weight: 700;
  color: var(--color-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: 12px;
}
.article-sources__title {
  font-family: "Playfair Display", serif;
  font-style: italic;
  font-size: 18px;
  color: var(--color-text-main);
  line-height: 1.3;
  margin-bottom: 16px;
}
@media (max-width: 767px) {
  .article-sources__title {
    font-size: 20px;
  }
}
.article-sources__link {
  font-size: 11px;
  font-weight: 800;
  color: var(--color-danger);
  text-transform: uppercase;
  letter-spacing: 0.1em;
  text-decoration: none;
}
.article-sources__link:hover {
  text-decoration: underline;
}
.article-sources__footer {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  background: var(--color-bg-warm);
  padding: 24px;
  border-radius: 12px;
}
.article-sources__footer .as-footer-icon {
  color: var(--color-text-muted);
  flex-shrink: 0;
}
.article-sources__footer .as-footer-text {
  font-size: 12px;
  font-weight: 600;
  color: var(--color-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1.6;
}

.article-history__content {
  position: relative;
  top: -5px;
}
.article-history__timeline {
  position: relative;
  padding-left: 32px;
  border-left: 1px solid var(--color-divider);
  margin-left: 6px;
}
.article-history__item {
  position: relative;
  padding-bottom: 48px;
}
.article-history__item:last-child {
  padding-bottom: 0;
}
.article-history__dot {
  position: absolute;
  left: -39px;
  top: 6px;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  background: var(--color-bg);
  border: 2px solid var(--color-divider);
}
.article-history__item.is-current .article-history__dot {
  background: var(--color-danger);
  border-color: var(--color-danger);
}
.article-history .ah-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 12px;
}
.article-history .ah-date {
  font-family: "Playfair Display", serif;
  font-style: italic;
  font-size: 22px;
  color: var(--color-text-main);
}
.article-history .ah-badge {
  background: var(--color-bg-light);
  color: var(--color-nature);
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 4px 8px;
  border-radius: 4px;
}
.article-history .ah-title {
  font-family: var(--font-header);
  font-weight: 800;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 8px;
  color: var(--color-text-main);
}
.article-history .ah-desc {
  font-size: 15px;
  color: var(--color-text-muted-alt);
  line-height: 1.5;
}
.article-history .ah-author {
  margin-top: 10px;
}
.article-history .ah-author .ah-author-link {
  font-size: 13px;
  font-weight: 600;
  color: var(--color-text-main);
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.article-history .ah-author .ah-author-link::before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a87c5c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'%3E%3C/path%3E%3Ccircle cx='12' cy='7' r='4'%3E%3C/circle%3E%3C/svg%3E");
  background-size: cover;
}
.article-history .ah-author .ah-author-link:hover {
  color: var(--color-accent);
  text-decoration: underline;
}

@keyframes tabFade {
  from {
    opacity: 0;
    transform: translateY(6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.is-style-myths-list {
  border-bottom: 1px solid var(--color-divider);
  margin-bottom: 40px;
  padding-bottom: 8px;
}
.is-style-myths-list h1,
.is-style-myths-list h2,
.is-style-myths-list h3,
.is-style-myths-list h4,
.is-style-myths-list h5,
.is-style-myths-list h6 {
  position: relative;
  padding-top: 45px;
  margin-top: 40px;
  font-weight: 800;
}
.is-style-myths-list h1:first-child,
.is-style-myths-list h2:first-child,
.is-style-myths-list h3:first-child,
.is-style-myths-list h4:first-child,
.is-style-myths-list h5:first-child,
.is-style-myths-list h6:first-child {
  border-top: none;
  margin-top: 0;
}
.is-style-myths-list h1::before,
.is-style-myths-list h2::before,
.is-style-myths-list h3::before,
.is-style-myths-list h4::before,
.is-style-myths-list h5::before,
.is-style-myths-list h6::before {
  content: var(--myth-text, "МІФ");
  position: absolute;
  top: 20px;
  left: 0;
  font-size: 11px;
  font-weight: 700;
  color: var(--color-danger);
  text-transform: uppercase;
  letter-spacing: 0.2em;
  z-index: 2;
}
.is-style-myths-list h1::after,
.is-style-myths-list h2::after,
.is-style-myths-list h3::after,
.is-style-myths-list h4::after,
.is-style-myths-list h5::after,
.is-style-myths-list h6::after {
  content: "";
  position: absolute;
  top: 23px;
  left: -15px;
  width: 70px;
  height: 70px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e03131' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' opacity='0.15'%3E%3Cline x1='18' y1='6' x2='6' y2='18'%3E%3C/line%3E%3Cline x1='6' y1='6' x2='18' y2='18'%3E%3C/line%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 1;
}
.is-style-myths-list p {
  line-height: 1.6;
  margin-bottom: 2rem;
  color: var(--color-text-main);
}

.is-style-target-groups {
  margin: 48px 0;
  padding: 0;
  counter-reset: target-group-counter;
}
.is-style-target-groups > h1,
.is-style-target-groups > h2 {
  font-size: 14px !important;
  font-weight: 700 !important;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--color-text-muted) !important;
  margin-bottom: 8px !important;
  margin-top: 0 !important;
  padding-bottom: 0;
  border: none;
}
.is-style-target-groups > h1::before, .is-style-target-groups > h1::after,
.is-style-target-groups > h2::before,
.is-style-target-groups > h2::after {
  display: none !important;
}
.is-style-target-groups > h2 + p,
.is-style-target-groups > h1 + p {
  font-size: 28px !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
  font-family: var(--font-header) !important;
  text-transform: uppercase;
  color: var(--color-text-main) !important;
  margin-bottom: 32px !important;
}
.is-style-target-groups h3,
.is-style-target-groups h4 {
  position: relative;
  counter-increment: target-group-counter;
  padding: 20px 0 12px 0 !important;
  margin: 0 !important;
  border-top: 1px solid var(--color-rgba-0-0-0-0-05);
  text-transform: none !important;
  display: flex;
  align-items: center;
  gap: 14px;
}
.is-style-target-groups h3::before,
.is-style-target-groups h4::before {
  content: counter(target-group-counter, decimal-leading-zero) !important;
  font-family: var(--font-family-secondary, serif) !important;
  font-size: 32px !important;
  font-weight: 400 !important;
  color: var(--color-rgba-0-0-0-0-05) !important;
  line-height: 1 !important;
  position: static !important;
  letter-spacing: 0 !important;
  min-width: 36px;
}
.is-style-target-groups h3::after,
.is-style-target-groups h4::after {
  display: none !important;
}
.is-style-target-groups h3:first-of-type,
.is-style-target-groups h4:first-of-type {
  border-top: none;
}
.is-style-target-groups h3 + p,
.is-style-target-groups h4 + p {
  padding-left: 50px;
  color: var(--color-text-muted) !important;
  margin-bottom: 0 !important;
  padding-bottom: 20px;
}
@media (max-width: 767px) {
  .is-style-target-groups h3 + p,
  .is-style-target-groups h4 + p {
    padding-left: 0;
  }
}
.is-style-target-groups > *:last-child {
  border-bottom: none;
}

.blogCard {
  position: relative;
  transition: 0.3s ease;
  overflow: hidden;
}
@media (min-width: 1025px) {
  .blogCard:hover {
    opacity: 0.8;
  }
}
.blogCard__meta {
  position: relative;
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  margin-bottom: 6px;
}
.blogCard__meta_author, .blogCard__meta_date, .blogCard__meta_view {
  font-size: 11px;
  color: inherit;
  white-space: nowrap;
}
.blogCard__meta_author {
  display: flex;
  align-items: flex-end;
}
.blogCard__meta_date {
  line-height: 1;
  margin-left: 5px;
  padding-left: 5px;
  border-left: 1px solid var(--color-carbs-bg);
}
.blogCard__meta_view {
  margin-left: 5px;
  padding-left: 5px;
  border-left: 1px solid var(--color-carbs-bg);
  line-height: 1;
}
.blogCard__img {
  position: relative;
  overflow: hidden;
  aspect-ratio: 16/10;
  width: 100%;
  background-color: var(--color-surface);
}
.blogCard__img img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.blogCard__content {
  padding-top: 4px;
  height: auto;
  display: grid;
}
.blogCard-title {
  font-size: 20px;
  line-height: 1.3;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 3;
  font-weight: 400;
  margin-bottom: 8px;
  order: -1;
  font-family: var(--font-family-secondary);
}
.blogCard-desc {
  position: relative;
  display: none;
}
.blogCard-desc p {
  font-size: 12px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 3;
  font-weight: 300;
  color: var(--color-text-muted);
}
.blogCard .cViewDate {
  margin-bottom: 3px;
}

.post-nav {
  padding: 28px 0 44px;
}
@media (max-width: 767px) {
  .post-nav {
    padding: 20px 0 32px;
  }
}
.post-nav__wrap {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
@media (max-width: 767px) {
  .post-nav__wrap {
    grid-template-columns: 1fr;
  }
}
.post-nav__item {
  text-decoration: none;
  color: inherit;
  display: grid;
  gap: 6px;
  padding: 12px 0;
  border-top: 1px solid var(--color-divider);
  border-bottom: 1px solid var(--color-divider);
  transition: 0.3s ease;
}
@media (min-width: 1025px) {
  .post-nav__item:hover {
    opacity: 0.8;
  }
}
.post-nav__label {
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--color-text-muted);
  font-weight: 600;
}
.post-nav__title {
  font-size: clamp(16px, 1.6vw, 20px);
  line-height: 1.35;
  font-weight: 400;
  font-family: var(--font-family-secondary);
}
.post-nav__item--next {
  text-align: right;
}

.similar-posts {
  padding: 8px 0 10px;
}
@media (max-width: 767px) {
  .similar-posts {
    padding: 24px 0 6px;
  }
}
.similar-posts__header {
  margin-bottom: 32px;
}
.similar-posts__title {
  margin: 0;
  font-size: 20px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-family: var(--font-header);
  position: relative;
  padding-bottom: 12px;
  color: var(--color-text-main, #111);
}
.similar-posts__title::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 40px;
  height: 3px;
  background-color: var(--color-danger, #c84131);
}
.similar-posts__list {
  display: flex;
  flex-direction: column;
}
.similar-posts__item {
  position: relative;
  transition: 0.3s ease;
  border-bottom: 1px solid var(--color-divider);
  padding: 16px 0;
}
.similar-posts__item:first-child {
  padding-top: 0;
}
.similar-posts__item:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
@media (min-width: 1025px) {
  .similar-posts__item:hover .similar-posts__name {
    color: var(--color-danger, #c84131);
  }
}
.similar-posts__link {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  text-decoration: none;
}
@media (max-width: 767px) {
  .similar-posts__link {
    gap: 16px;
  }
}
.similar-posts__number {
  font-size: 14px;
  font-weight: 600;
  color: var(--color-danger, #c84131);
  padding-top: 1px;
  flex-shrink: 0;
}
.similar-posts__content {
  min-width: 0;
  flex: 1;
}
.similar-posts__category {
  display: block;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  color: var(--color-text-muted, #737373);
  margin-bottom: 8px;
}
.similar-posts__name {
  font-size: 16px;
  font-weight: 600;
  font-family: var(--font-header);
  color: var(--color-text-main, #111);
  line-height: 1.3;
  margin: 0 0 12px;
  transition: color 0.2s ease;
}
@media (max-width: 767px) {
  .similar-posts__name {
    font-size: 18px;
  }
}
.similar-posts__meta {
  font-size: 12px;
  color: var(--color-text-muted, #737373);
}

.bArticle-sidebar .similar-posts {
  padding-top: 0;
}
.bArticle-sidebar .similar-posts__title {
  font-size: 18px;
}

.single .main {
  overflow: visible;
}

.article {
  position: relative;
  overflow: hidden;
  padding-top: 0px;
  padding-bottom: 120px;
}
@media (max-width: 767px) {
  .article {
    padding-top: 0%;
    overflow: visible;
  }
}
.article .rTags {
  margin-top: 48px;
}
.article-line {
  position: relative;
  width: 1px;
  height: 16px;
  background-color: var(--color-divider);
  margin: 0 24px;
}
.article .section__header {
  padding-left: 70px;
}
@media (max-width: 991px) {
  .article .section__header {
    padding-left: 0;
  }
}
.article .section__header .title,
.article .section__header .subtitle {
  display: block;
}
.article__top {
  position: relative;
  height: calc(100vh - 120px);
  display: flex;
  align-items: stretch;
  border-bottom: 1px solid var(--color-divider);
  min-height: 580px;
}
@media (max-width: 991px) {
  .article__top {
    flex-direction: column;
    min-height: auto;
    height: auto;
    padding: 0;
    border-bottom: none;
  }
}
.article__information {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50%;
  padding: 40px 80px;
  position: relative;
}
@media (max-width: 1619px) {
  .article__information {
    padding: 40px 48px;
  }
}
@media (max-width: 1200px) {
  .article__information {
    padding: 30px 24px;
  }
}
@media (max-width: 991px) {
  .article__information {
    padding: 32px 12px 40px;
    width: 100%;
  }
}
.article__information_wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: left;
  width: 100%;
  height: 100%;
  justify-content: center;
  max-width: 760px;
  margin: 0 auto;
  text-align: center;
}
@media (max-width: 991px) {
  .article__information_wrap {
    max-width: 100%;
  }
}
.article__thumbnail {
  position: relative;
  width: 50%;
  height: 100%;
  overflow: hidden;
  position: relative;
  z-index: 3;
}
.article__thumbnail_author {
  position: absolute;
  z-index: 1;
  background-color: var(--color-bg);
  border-radius: 40px;
  font-size: 11px;
  padding: 3px 6px;
  right: 3px;
  bottom: 3px;
}
@media (max-width: 991px) {
  .article__thumbnail {
    border-radius: 0px;
    aspect-ratio: 16/20;
    width: 100%;
    max-width: 100%;
    order: -1;
  }
}
.article__thumbnail .authorPost {
  position: absolute;
  left: 16px;
  bottom: 10px;
  z-index: 10;
  margin-bottom: 0;
  display: none;
}
.article__thumbnail .authorPost-name {
  color: var(--color-bg);
  text-shadow: 0px 0px 1px var(--color-rgba-0-0-0-0-5);
}
.article__thumbnail .authorPost-count {
  color: var(--color-rgba-255-255-255-0-8);
  text-shadow: 0px 0px 1px var(--color-rgba-0-0-0-0-5);
}
.article__thumbnail_message {
  position: absolute;
  background-color: var(--color-rgba-255-255-255-0-8);
  color: var(--color-text-main);
  font-size: 10px;
  padding: 4px 6px;
  right: 0;
  bottom: 0;
  z-index: 2;
}
.article__thumbnail img {
  position: relative;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.article-title {
  margin-bottom: 40px;
  text-align: center;
  font-weight: 800;
  font-size: 38px;
  line-height: 1.15;
  color: var(--color-text-main);
  letter-spacing: -0.02em;
}
@media (max-width: 767px) {
  .article-title {
    font-size: 32px;
  }
}
.article__title-wrapper {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 16px;
  margin-bottom: 1.5rem;
  position: relative;
  width: 100%;
}
.article__title-wrapper .title {
  margin-bottom: 0;
}
.article .article__footer-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding-top: 1.5rem;
  gap: 16px;
  flex-wrap: wrap;
}
@media (max-width: 575px) {
  .article .article__footer-row {
    flex-direction: column;
    align-items: center;
    gap: 16px;
  }
}
.article .article__bookmark {
  flex-shrink: 0;
  display: inline-flex;
  vertical-align: middle;
}
.article .article__bookmark button,
.article .article__bookmark a,
.article .article__bookmark .bookmark-btn,
.article .article__bookmark .iamchef-bookmark-btn {
  width: 38px !important;
  height: 38px !important;
  border-radius: 50% !important;
  border: 1.5px solid var(--color-rgba-0-0-0-0-05) !important;
  background: transparent !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  color: var(--color-text-main, #111111) !important;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
  cursor: pointer !important;
}
.article .article__bookmark button svg,
.article .article__bookmark button i,
.article .article__bookmark a svg,
.article .article__bookmark a i,
.article .article__bookmark .bookmark-btn svg,
.article .article__bookmark .bookmark-btn i,
.article .article__bookmark .iamchef-bookmark-btn svg,
.article .article__bookmark .iamchef-bookmark-btn i {
  width: 14px !important;
  height: 14px !important;
  margin: 0 !important;
  color: currentColor !important;
  stroke-width: 2.2px !important;
}
.article .article__bookmark button:hover,
.article .article__bookmark a:hover,
.article .article__bookmark .bookmark-btn:hover,
.article .article__bookmark .iamchef-bookmark-btn:hover {
  background-color: var(--color-text-main, #111111) !important;
  border-color: var(--color-text-main, #111111) !important;
  color: var(--color-bg) !important;
}
.article .wrap {
  display: flex;
  align-items: flex-start;
}
.article__wrapper {
  display: flex;
  align-items: flex-start;
  padding: 40px 0;
  position: relative;
}
.article__wrapper .title {
  color: var(--color-bg);
}
.article__wrapper::before {
  content: "";
  transition: 0.3s cubic-bezier(0.24, 0.74, 0.58, 1);
  position: absolute;
  opacity: 0.29;
  top: 12px;
  right: 12px;
  bottom: 12px;
  left: 12px;
  border-color: var(--color-rgba-255-255-255-0-5);
  border-width: 1px;
  border-style: solid;
  border-radius: 24px;
  display: none;
}
@media (max-width: 767px) {
  .article__wrapper::before {
    top: 10px;
    right: 10px;
    bottom: 10px;
    left: 10px;
  }
}
@media (max-width: 991px) {
  .article__wrapper {
    flex-direction: column;
  }
}
.article__wrap {
  display: flex;
  align-items: flex-start;
  padding: 0 30px;
  position: relative;
  z-index: 3;
  padding-top: 10px;
}
@media (max-width: 991px) {
  .article__wrap {
    padding: 0 0px;
  }
}
.article__desc {
  position: relative;
  margin-bottom: 2rem;
  width: 100%;
}
@media (max-width: 991px) {
  .article__desc {
    margin-bottom: 1rem;
  }
}
.article__desc h3 {
  text-transform: uppercase;
}
.article__desc p {
  text-align: center;
  color: var(--color-text-main, #111111);
  line-height: 1.6;
  font-size: 18px;
  margin-bottom: 0;
}
.article__content {
  padding-right: 30px;
  padding-top: 30px;
  width: 100%;
  overflow: hidden;
}
@media (max-width: 991px) {
  .article__content {
    padding-right: 0;
    padding-top: 0px;
    overflow: visible;
  }
}
.article__sidebar {
  min-width: 440px;
  max-width: 440px;
  padding: 30px 12px;
}
@media (max-width: 991px) {
  .article__sidebar {
    display: none;
  }
}
.article-title {
  display: block;
  margin-bottom: 0;
}

.meta {
  width: 100%;
  margin-bottom: 12px;
}
.meta__break {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  font-size: 11px;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--color-nature);
}
@media (max-width: 767px) {
  .meta__break {
    font-size: 10px;
  }
}
.meta__break div,
.meta__break span {
  display: inline-flex;
  align-items: center;
  color: inherit;
}
.meta .meta-divider, .meta-divider {
  width: 1px;
  height: 12px;
  background-color: var(--color-rgba-0-0-0-0-15);
  margin: 0;
}

.videoPreparation {
  position: relative;
  margin-bottom: 48px;
}
.videoPreparation_block {
  position: relative;
  width: 100%;
  height: auto;
  overflow: hidden;
}
.videoPreparation_block .video-js {
  position: relative;
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  display: flex;
}

.piBlock {
  padding: 5px 15px 15px;
  border-radius: 4px;
  margin-bottom: 30px;
}
.piBlock.benefit {
  background-color: var(--color-rgba-0-0-0-0-05);
}
.piBlock.harmfulness {
  background-color: var(--color-accent-orange);
}
.piBlock p {
  margin-bottom: 15px !important;
}
.piBlock p:last-child {
  margin-bottom: 0;
}

.article__rate .rmp-widgets-container {
  padding-top: 30px;
  margin: 0 !important;
  margin-top: 30px !important;
}
.article__rate .rmp-heading--title {
  text-align: center;
  font-weight: 500;
}
@media (max-width: 767px) {
  .article__rate .rmp-heading--title {
    font-size: 22px;
  }
}
.article__rate .rmp-icon--ratings {
  transition: 0.3s ease !important;
}
.article__rate .rmp-rating-widget__results {
  font-size: 13px;
}
.article__rate .rmp-rating-widget__results span {
  font-weight: 500;
}
.article__rate .rmp-rating-widget__not-rated {
  font-size: 14px;
  color: var(--color-surface);
}
.article__rate .rmp-rating-widget__msg {
  font-size: 13px;
  color: var(--color-surface);
}

.article__result_rate .rmp-results-widget {
  display: flex;
  align-items: center;
}
.article__result_rate .rmp-results-widget__avg-rating {
  order: -1;
  font-size: 24px;
  font-weight: 500;
}
.article__result_rate .rmp-results-widget__visual-rating {
  margin: 0 12px;
  display: flex;
  align-items: center;
}
.article__result_rate .rmp-results-widget__visual-rating i {
  margin: 0 3px;
  font-size: 18px;
}
.article__result_rate .rmp-results-widget__vote-count {
  position: relative;
  font-size: 14px;
}

.magazine {
  position: relative;
  padding: 0;
}
.magazine__content {
  display: grid;
}
.magazine-slider__nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 16px;
}
.magazine__meta {
  display: flex;
  align-items: center;
  gap: 7px;
  flex-wrap: wrap;
  color: var(--color-text-muted);
  font-size: 12px;
  line-height: 1.2;
}
@media (max-width: 767px) {
  .magazine__meta {
    font-size: 10px;
  }
}
.magazine__meta span + span {
  position: relative;
  padding-left: 8px;
}
.magazine__meta span + span::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: var(--color-text-light);
  transform: translateY(-50%);
}
.magazine__views {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.magazine__views svg {
  opacity: 0.6;
}
.magazine__chip {
  border: 1px solid var(--color-divider);
  background: var(--color-surface);
  color: var(--color-text-main);
  border-radius: 999px;
  padding: 3px 10px;
  font-size: 11px;
  line-height: 1.1;
  width: fit-content;
  display: none;
}
.magazine__placeholder {
  width: 100%;
  height: 100%;
  display: block;
  background: linear-gradient(135deg, var(--color-surface), var(--color-bg));
}
.magazine__empty {
  font-size: 16px;
  margin: 10px 0 0;
}

.magazine__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px 24px;
}
@media (max-width: 1199px) {
  .magazine__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 767px) {
  .magazine__grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
.magazine__grid--category {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 36px 24px;
}
@media (max-width: 767px) {
  .magazine__grid--category {
    grid-template-columns: 1fr 1fr;
    gap: 24px 12px;
  }
}
@media (max-width: 767px) {
  .magazine__grid--category .magazine-card__excerpt {
    display: none;
  }
}
.magazine__grid--category .magazine-card__body {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.magazine__featured {
  padding: 3rem 0;
}

.magazine-page {
  padding: 32px 0 80px;
}

.magazine-posts-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  background: var(--color-surface);
  border: 1px solid var(--color-divider);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 12px 30px var(--color-rgba-0-0-0-0-05);
}
.magazine-posts-table th,
.magazine-posts-table td {
  text-align: left;
  padding: 14px 16px;
  font-size: 14px;
  line-height: 1.4;
}
.magazine-posts-table thead th {
  background: var(--color-bg);
  color: var(--color-text-main);
  font-weight: 600;
  border-bottom: 1px solid var(--color-divider);
}
.magazine-posts-table tbody tr {
  transition: background 0.2s ease;
}
.magazine-posts-table tbody tr:nth-child(even) {
  background: var(--color-rgba-0-0-0-0-05);
}
.magazine-posts-table tbody tr:hover {
  background: var(--color-rgba-0-0-0-0-05);
}
.magazine-posts-table tbody td {
  color: var(--color-text-main);
  border-bottom: 1px solid var(--color-divider);
}
.magazine-posts-table tbody tr:last-child td {
  border-bottom: none;
}
@media (max-width: 991px) {
  .magazine-posts-table th,
  .magazine-posts-table td {
    padding: 12px 10px;
    font-size: 13px;
  }
}
@media (max-width: 767px) {
  .magazine-posts-table {
    display: block;
    overflow-x: auto;
    white-space: nowrap;
  }
}

.magazine-block {
  position: relative;
  padding: 4rem 0;
}
.magazine-block .wrap {
  display: grid;
}
.magazine-block__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 32px;
}
.magazine-block__head-text {
  max-width: 700px;
}
.magazine-block__head-text .short-desc {
  margin-top: 8px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.magazine-block.magazine-block--pro-produkti {
  position: relative;
}
.magazine-block .magazine-block--zdorovya {
  position: relative;
}
.magazine-block .magazine-block--harchuvannya-i-raczion {
  position: relative;
}

.magazine-tabs {
  display: grid;
  gap: 28px;
}
.magazine-tabs__nav {
  display: flex;
  align-items: center;
  gap: 8px;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  white-space: nowrap;
  flex-wrap: nowrap;
  padding-bottom: 4px;
  /* Hide scrollbar */
  scrollbar-width: none;
}
.magazine-tabs__nav::-webkit-scrollbar {
  display: none;
}
@media (max-width: 991px) {
  .magazine-tabs__nav {
    width: calc(100% + 24px);
    padding: 0 24px 0 0;
  }
}
.magazine-tabs__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  font-size: 14px;
  white-space: nowrap;
  line-height: 1;
  border-radius: 99px;
  padding: 0 18px;
  min-height: 40px;
  font-weight: 500;
  letter-spacing: 0;
  background: transparent;
  border: 1px solid var(--color-text-main);
  text-decoration: none;
  box-shadow: none;
  gap: 10px;
  color: var(--color-text-main);
}
@media (max-width: 991px) {
  .magazine-tabs__btn {
    font-size: 12px;
  }
}
@media (min-width: 1025px) {
  .magazine-tabs__btn:hover {
    background: var(--color-surface);
    color: var(--color-text-main);
    box-shadow: none;
  }
}
.magazine-tabs__btn.is-active {
  background: var(--color-dark);
  border-color: var(--color-dark);
  color: var(--color-bg);
  box-shadow: none;
}
.magazine-tabs__panel {
  display: none;
}
.magazine-tabs__panel.is-active {
  display: block;
}

.magazine-slider {
  gap: 14px;
  display: grid;
}
.magazine-slider .swiper {
  overflow: hidden;
  width: 100%;
  position: relative;
}
.magazine-slider .swiper-slide {
  height: auto;
}
.magazine-slider .swiper-pagination {
  position: static;
  margin-top: 6px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 4px;
  width: fit-content;
}
.magazine-slider .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  border-radius: 40px;
  background: var(--color-divider);
  opacity: 1;
  cursor: pointer;
  margin: 0 4px !important;
}
.magazine-slider .swiper-pagination-bullet-active {
  background: var(--color-accent);
  width: 32px;
}
.magazine-slider .magazine-slider__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  border: 0;
  background: var(--color-divider);
  cursor: pointer;
  padding: 0;
}
.magazine-slider .magazine-slider__dot.is-active {
  background: var(--color-accent);
}
.magazine-slider .magazine-card {
  width: 100%;
  height: 100%;
}
.magazine-slider .magazine-card__thumb {
  height: 220px;
}
.magazine-slider .magazine-card,
.magazine-slider .magazine-card * {
  -webkit-user-select: none;
  user-select: none;
}
.magazine-slider__top {
  display: flex !important;
  justify-content: flex-end;
  gap: 8px;
}
.magazine-slider__arrow {
  display: inline-flex !important;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  border: 1px solid var(--color-divider);
  color: var(--color-text-main);
  background: var(--color-bg);
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-size: 20px;
  line-height: 1;
  transition: 0.2s ease;
}
.magazine-slider__arrow:hover {
  border-color: var(--color-accent);
  color: var(--color-accent);
}

.magazine-action-row {
  margin-top: 48px;
  display: flex;
  justify-content: center;
}
@media (max-width: 767px) {
  .magazine-action-row {
    margin-top: 40px;
  }
}

.magazine-popular {
  background-color: var(--color-bg-cream);
}
@media (max-width: 991px) {
  .magazine-popular .magazine-card__title {
    font-size: 20px;
  }
}

.magazine-hero {
  padding: 48px 0;
  overflow: hidden;
  border-bottom: 1px solid var(--color-divider, #eaeaea);
}
.magazine-hero::before {
  content: "✦";
  position: absolute;
  right: -200px;
  bottom: -500px;
  transform: translateY(-50%);
  font-size: 500px;
  color: var(--color-brown-black);
  opacity: 0.03;
  pointer-events: none;
  line-height: 1;
}
@media (max-width: 991px) {
  .magazine-hero::before {
    bottom: -140px;
    right: -120px;
    font-size: 280px;
    transform: none;
  }
}
@media (max-width: 991px) {
  .magazine-hero {
    padding: 32px 0;
  }
}
.magazine-hero__layout {
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 40px;
  align-items: end;
}
@media (max-width: 991px) {
  .magazine-hero__layout {
    grid-template-columns: 1fr;
    gap: 16px;
  }
}
.magazine-hero__title {
  font-family: var(--font-header);
  font-size: 54px;
  line-height: 1.1;
  font-weight: 800;
  text-transform: uppercase;
  color: var(--color-text-main, #111);
  margin: 0;
}
@media (max-width: 767px) {
  .magazine-hero__title {
    font-size: 42px;
  }
}
.magazine-hero__title br {
  display: none;
}
.magazine-hero__title em {
  color: var(--color-danger, #c84131);
  font-style: normal;
}
.magazine-hero__right {
  display: flex;
  flex-direction: column;
  gap: 32px;
  padding-bottom: 8px;
}
@media (max-width: 991px) {
  .magazine-hero__right {
    gap: 24px;
    padding-bottom: 0;
  }
}
.magazine-hero__desc {
  margin: 0;
  font-size: 16px;
  line-height: 1.6;
  color: var(--color-nature);
  font-weight: 300;
}
@media (max-width: 767px) {
  .magazine-hero__desc {
    font-size: 15px;
  }
}
.magazine-hero__stats {
  display: flex;
  gap: 32px;
}
@media (max-width: 767px) {
  .magazine-hero__stats {
    gap: 24px;
  }
}
.magazine-hero__stat {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.magazine-hero__stat-number {
  font-family: var(--font-header);
  font-size: 28px;
  font-weight: 800;
  line-height: 1.1;
  color: var(--color-text-main, #111);
}
@media (max-width: 767px) {
  .magazine-hero__stat-number {
    font-size: 24px;
  }
}
.magazine-hero__stat-label {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--color-text-muted, #737373);
}

@keyframes skeleton-pulse {
  0% {
    background-color: var(--color-bg-cream, #fdf6f2);
    opacity: 0.6;
  }
  50% {
    background-color: var(--color-divider, #eaeaea);
    opacity: 0.9;
  }
  100% {
    background-color: var(--color-bg-cream, #fdf6f2);
    opacity: 0.6;
  }
}
.magazine-card-skeleton {
  width: 100%;
  display: flex;
  flex-direction: column;
}
.magazine-card-skeleton__thumb {
  aspect-ratio: 16/11;
  width: 100%;
  border-radius: 16px;
  margin-bottom: 16px;
  animation: skeleton-pulse 1.5s ease-in-out infinite;
}
@media (max-width: 767px) {
  .magazine-card-skeleton__thumb {
    border-radius: 12px;
    margin-bottom: 12px;
  }
}
.magazine-card-skeleton__body {
  display: flex;
  flex-direction: column;
}
.magazine-card-skeleton__meta {
  width: 80px;
  height: 12px;
  border-radius: 4px;
  margin-bottom: 12px;
  animation: skeleton-pulse 1.5s ease-in-out infinite;
  animation-delay: 0.15s;
}
@media (max-width: 767px) {
  .magazine-card-skeleton__meta {
    margin-bottom: 8px;
  }
}
.magazine-card-skeleton__title {
  width: 100%;
  height: 22px;
  border-radius: 6px;
  margin-bottom: 12px;
  animation: skeleton-pulse 1.5s ease-in-out infinite;
  animation-delay: 0.3s;
}
@media (max-width: 767px) {
  .magazine-card-skeleton__title {
    height: 16px;
  }
}
.magazine-card-skeleton__excerpt {
  width: 90%;
  height: 42px;
  border-radius: 6px;
  animation: skeleton-pulse 1.5s ease-in-out infinite;
  animation-delay: 0.45s;
}
@media (max-width: 767px) {
  .magazine-card-skeleton__excerpt {
    display: none;
  }
}

/* ─────────────────────────────────────────────────────────────
   MAGAZINE CATALOG GRID LAYOUT
   ───────────────────────────────────────────────────────────── */
.magazine-catalog__section {
  padding: 48px 0;
}

.magazine-catalog__layout {
  display: flex;
  align-items: flex-start;
  gap: 32px;
  align-items: flex-start;
}
@media (max-width: 991px) {
  .magazine-catalog__layout {
    flex-direction: column;
    gap: 36px;
  }
}

.magazine-catalog__content {
  flex-grow: 1;
}

.magazine-catalog__meta-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 24px;
}
@media (max-width: 575px) {
  .magazine-catalog__meta-row {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
}
.magazine-catalog__meta-row .found-count-text {
  font-size: 15px;
  color: var(--color-text-main);
}
.magazine-catalog__meta-row .found-count-text #catalog-count-number {
  font-weight: 700;
  color: var(--color-dark);
}
.magazine-catalog__meta-row .sort-selector-wrap {
  display: flex;
  align-items: center;
  gap: 8px;
}
.magazine-catalog__meta-row .sort-label {
  font-size: 14px;
  color: var(--color-text-muted);
}

.magazine-catalog__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px 24px;
  margin-bottom: 48px;
}
@media (max-width: 1200px) {
  .magazine-catalog__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 575px) {
  .magazine-catalog__grid {
    grid-template-columns: 1fr;
  }
}

.hero {
  position: relative;
  overflow: hidden;
  min-height: 380px;
  display: flex;
  align-items: center;
  background-color: #FCFAF6;
  padding: 24px 0 32px;
}
.hero .container {
  position: relative;
  z-index: 3;
}
.hero-breadcrumbs {
  font-family: var(--font-family-primary);
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0;
  color: var(--color-grey);
  margin-bottom: 18px;
}
.hero-breadcrumbs .current {
  color: #6B6B6B;
  font-weight: 600;
}
@media (max-width: 767px) {
  .hero {
    position: relative;
  }
}
.hero .wrap {
  position: relative;
  z-index: 3;
}
.hero .title {
  display: inline-block;
  margin-bottom: 24px;
}
.hero .short-desc {
  max-width: 520px;
  font-size: 18px;
  margin-bottom: 24px;
}
@media (max-width: 767px) {
  .hero .short-desc {
    max-width: 320px;
    font-size: 16px;
  }
}
.hero__image {
  object-fit: cover;
  object-position: right;
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  width: 100%;
  -webkit-mask-image: linear-gradient(to right, transparent 0%, black 50%);
  mask-image: linear-gradient(to right, transparent 0%, black 50%);
}
@media (max-width: 767px) {
  .hero__image {
    right: -80%;
    width: 100%;
    -webkit-mask-image: linear-gradient(to right, transparent 0%, black 25%);
    mask-image: linear-gradient(to right, transparent 0%, black 25%);
  }
}
.hero__stats {
  display: flex;
  gap: 54px;
}
.hero__stat {
  font-family: var(--font-family-primary);
  font-size: 16px;
  font-weight: 600;
  letter-spacing: 0;
  color: #4D572B;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.hero__stat-number {
  font-family: var(--font-header);
  font-size: 38px;
  font-weight: 700;
  line-height: 1;
  color: #2F2A27;
}
.hero__stat-label {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  color: #857B74;
}
:root{--myth-text:"Mito";--contents-text:"Contenido"}.media-modal .media-menu-item[data-active="browse"],.media-modal .media-router .media-menu-item[data-active="browse"]{display:none!important}.media-modal .media-frame-router .media-router{border-bottom:0!important}.wp-block-gallery.is-cropped .blocks-gallery-item picture{height:100%;width:100%}.search-form-icon.disabled{pointer-events:none;opacity:.5}