Анализ сайта seedsofdeception.com
Основное Готовность: 75%
Домен
seedsofdeception.com
Состояние доменного имени
?
Проверяем корректность доменного имени и наличие технических проблем на уровне домена.
Длина домена велика. Но если вы продвигаете запрос, входящий в название домена, то это хорошо.
Домен второго уровня идеален для продвижения.
Ответ сервера
200 Успешный ответ
HTTP-код ответа и цепочка редиректов
?
Код 200 — страница доступна. Коды 3xx — редиректы (цепочки замедляют загрузку и размывают ссылочный вес). Коды 4xx/5xx — ошибки, поисковик не сможет проиндексировать страницу.
Сервер настроен корректно.
Цепочка редиректов:
http://seedsofdeception.com
301 MovedPermanently
https://www.azurestandard.com/shop/search/jeffrey smith
200 OK
Безопасность
Сайт безопасен
Использование HTTPS и SSL-сертификат
?
HTTPS — обязательный стандарт. Google и Яндекс отдают предпочтение защищённым сайтам. Отсутствие SSL или просроченный сертификат ведут к предупреждениям в браузере и снижению позиций.
Не настроен HSTS (Strict-Transport-Security) — рекомендуется включить.
На сайте работает защищенный протокол ssl и сайт открывается по https.
Ssl-сертификат действителен до 01.11.2026 2:38:01.
Сервер поддерживает HTTP/3 (QUIC) — новейший протокол.
HTTP автоматически перенаправляется на HTTPS.
Поздравляем! Сайт не содержится в реестре РКН.
Кодировка
utf-8
Кодировка символов страницы
?
Стандарт — UTF-8. Неправильная кодировка вызывает нечитаемые символы и мешает поисковику корректно распознать текст страницы.
Указана кодировка на странице utf-8.
Язык
en-US
Атрибут lang в HTML-теге
?
Атрибут lang (<html lang="ru">) сообщает поисковикам и браузерам, на каком языке написана страница. Помогает при ранжировании в региональном поиске.
Язык документа указан явно: en-US.
Скорость загрузки
~0,70сек
Время отклика сервера (TTFB)
?
Time To First Byte — время до получения первого байта от сервера. Норма до 200 мс. Медленный отклик ухудшает пользовательский опыт и ранжирование: Яндекс и Google учитывают скорость страниц.
Скорость загрузки сайта 0,70сек оптимальна.
Объем документа
71Кб
Размер HTML-кода страницы
?
Слишком большой HTML замедляет парсинг браузером и сканирование поисковым роботом. Рекомендуется не более 200 Кб.
Объем html-документа 71Кб оптимален.
Структура html-документа корректна.
Ресурсы
Ресурсы: 23
Внешние ресурсы страницы (CSS, JS, изображения)
?
Количество и тип подключённых ресурсов влияют на скорость загрузки. Большое число запросов увеличивает время рендеринга страницы.
Кол-во файлов ресурсов 23 много для одной страницы. Приемлемо до 10. Проведите оптимизацию файлов ресурсов!
Показать полный список ресурсов
| Тип | Название | Значение |
|---|---|---|
| stylesheet | styles/main.css | |
| stylesheet | styles/tailwind.css | |
| js | https://cdnjs.cloudflare.com/polyfill/v3/polyfill.min.js?version=4.8.0&flags=gated&unknown=polyfill&features=es5,es6,Array.prototype.includes,Array.prototype.flatMap,IntersectionObserver,Object.values | |
| js | https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js | |
| js | https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.8.2/angular.min.js | |
| js | https://cdnjs.cloudflare.com/ajax/libs/angular-ui-router/1.0.29/angular-ui-router.min.js | |
| js | https://cdnjs.cloudflare.com/ajax/libs/algoliasearch/3.34.0/algoliasearch.angular.min.js | |
| js | https://cdnjs.cloudflare.com/ajax/libs/angular-ui-bootstrap/1.3.3/ui-bootstrap-tpls.min.js | |
| js | https://cdnjs.cloudflare.com/ajax/libs/flickity/2.2.2/flickity.pkgd.min.js | |
| js | https://cdnjs.cloudflare.com/ajax/libs/angular-sanitize/1.8.2/angular-sanitize.min.js | |
| js | https://cdnjs.cloudflare.com/ajax/libs/angular-resource/1.8.2/angular-resource.min.js | |
| js | https://cdnjs.cloudflare.com/ajax/libs/angular-cookies/1.8.2/angular-cookies.min.js | |
| js | https://cdnjs.cloudflare.com/ajax/libs/angular-touch/1.8.2/angular-touch.min.js | |
| js | https://cdnjs.cloudflare.com/ajax/libs/angular-cache/4.6.0/angular-cache.min.js | |
| js | https://cdnjs.cloudflare.com/ajax/libs/angular-ui-mask/1.8.7/mask.min.js | |
| js | https://cdnjs.cloudflare.com/ajax/libs/countdown/2.6.0/countdown.min.js | |
| js | https://cdnjs.cloudflare.com/ajax/libs/oclazyload/1.1.0/ocLazyLoad.min.js | |
| js | https://cdnjs.cloudflare.com/ajax/libs/clipboard-polyfill/3.0.3/main/clipboard-polyfill.min.js | |
| js | https://widget.trustpilot.com/bootstrap/v5/tp.widget.bootstrap.min.js | |
| js | routes.module.8625ecad.js | |
| js | modules/modules.9970bc3e.js | |
| js | core/core.262e3186.js | |
| js | module | https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496 |
Серверные заголовки
Кол-во: 14
HTTP-заголовки ответа сервера
?
Заголовки сервера передают браузеру и поисковику служебную информацию: кеширование, безопасность (CSP, HSTS), сжатие (gzip). Правильная настройка ускоряет загрузку и повышает защищённость.
Найдены серверные заголовки 14шт. Подробнее про серверные заголовки.
Показать полный список серверных заголовков
| Ключ | Значение |
|---|---|
| Date | Sat, 22 Aug 2026 15:18:56 GMT |
| X-Content-Type-Options | nosniff |
| report-to | {"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=Gl3ZAcD21iqe%2BvJfSE6hmZdMf8M1LAakkiOGmW9eZNth0BqHQLlU9nyh2YuRWeSMKABaNxWYdIkkzSNKyX2GFEKtJ2bQ8zklrsWIN8D2obnOF9aB0Cmx3CbJddad0Tr7Jpitt0MLeyw%3D"}]} |
| nel | {"report_to":"cf-nel","success_fraction":0.0,"max_age":604800} |
| Access-Control-Allow-Origin | * |
| Cache-Control | public, must-revalidate, max-age=0 |
| Referrer-Policy | strict-origin-when-cross-origin |
| Link | <https://img.azurestandard.com>; rel="preconnect", <https://cdnjs.cloudflare.com>; rel="preconnect", </styles/main.css>; rel="preload"; as=style, </styles/tailwind.css>; rel="preload"; as=style |
| X-XSS-Protection | 1; mode=block |
| Server | cloudflare |
| cf-cache-status | DYNAMIC |
| Server-Timing | cfCacheStatus;desc="DYNAMIC" |
| cf-ray | a2f2da587f31e49f-DME |
| Alt-Svc | h3=":443" |
CMS
Не определена
Система управления сайтом (движок)
?
CMS — это движок, на котором работает сайт (WordPress, 1C-Bitrix, Tilda и др.). Знание CMS помогает понять возможности SEO-оптимизации и подобрать подходящие инструменты. «Не определена» — вероятно, самописный сайт или нестандартная сборка.
CMS не определена. Вероятно, сайт самописный либо движок надёжно скрыт. Это не ошибка.
Веб-сервер
Программное обеспечение сервера
?
Веб-сервер — это ПО, которое отдаёт страницы посетителям (nginx, Apache, IIS, LiteSpeed и др.). Определяется по серверным заголовкам ответа (Server, X-Powered-By и т.п.). «Не определён» — сервер намеренно скрывает эти заголовки, это нормальная практика безопасности.
Сайт работает на веб-сервере Cloudflare.
Мета-теги Готовность: 48%
Title
Organic, non-GMO Food and Produce Delivered - Azure Standard
Заголовок страницы в браузере и поисковой выдаче
?
Title — главный SEO-заголовок страницы. Влияет на CTR в поиске и ранжирование. Оптимальная длина: 50–70 символов. Ключевые слова — ближе к началу.
Необходимо уменьшить число символов в title (текущее значение: 60, оптимально: от 40 до 45)
Дублей словоформ в title не найдено.
Description
Описание страницы в поисковой выдаче (сниппет)
?
Meta Description — текст под заголовком в выдаче. Напрямую на позиции не влияет, но влияет на CTR. Оптимальная длина: 120–160 символов.
Установите мета-тег description!
Keywords
Список ключевых слов страницы (устаревший тег)
?
Meta Keywords не учитывается Яндексом и Google для ранжирования с 2009–2012 годов. Заполнение не обязательно, но не вредит. Конкурент может использовать содержимое для анализа.
Установите мета-тег keywords!
Канонический Url
Указывает поисковику основную версию страницы
?
Canonical (rel=canonical) предотвращает проблему дублей страниц. Должен точно совпадать с URL проверяемой страницы. Неправильный canonical может передать ссылочный вес на другую страницу.
Рекомендуем прописать канонический Url.
Robots
Ошибок нет
Директивы для поисковых роботов на уровне страницы
?
Meta Robots управляет индексацией конкретной страницы: index/noindex — индексировать ли, follow/nofollow — следовать ли по ссылкам. Noindex полностью исключает страницу из поиска.
Meta-тег robots не указан. Страница свободна для индексации.
Адаптивность
width=device-width,initial-scale=1
Настройка масштабирования на мобильных устройствах
?
Тег viewport (<meta name="viewport">) сообщает браузеру, как масштабировать страницу на мобильных. Стандарт: width=device-width, initial-scale=1. Отсутствие — признак отсутствия мобильной версии.
Meta-тег viewport со значением-константой width=device-width задаёт ширину страницы в соответствии с размером экрана.
Meta-тег viewport со значением initial-scale=1.0 определяет масштаб 1:1, т.е. «не масштабировать».
Разметка OpenGraph
Кол-во: 12
Мета-теги для красивых превью в соцсетях
?
OpenGraph (og:title, og:description, og:image) управляет тем, как страница выглядит при репосте в социальных сетях и мессенджерах. Отсутствие OG-тегов — невзрачный превью при шеринге.
Разметка OpenGraph задана. Страница оптимизирована под социальные сети.
Показать полный список og мета-тегов
| Тип | Значение |
|---|---|
| og:url | {{canonicalUrl}} |
| og:locale | en_US |
| og:site_name | Azure Standard |
| og:title | {{ head.title }} |
| og:description | {{ head.meta.description }} |
| og:image | {{ head.primaryImageSrc }} |
| og:image:secure_url | {{ head.primaryImageSrc }} |
| og:image:width | 1200 |
| og:image:height | 630 |
| og:image:type | {{ head.primaryImageType }} |
| og:image:alt | {{ head.primaryImageAlt }} |
| og:{{::key}} | {{val}} |
Все мета-теги
Кол-во: 23
Полный список мета-тегов страницы
?
Таблица всех meta-тегов, включая нестандартные. Позволяет найти опечатки, дубли и лишние теги.
Найдены мета-теги 23шт. Мета-теги не видимы для человека и предназначены для обмена информацией между веб-страницей и поисковыми системами, браузерами и другими веб-службами. С ними роботы 🤖 и устройства ведут себя более ожидаемо.
Показать полный список мета-тегов
| Тип | Название | Значение |
|---|---|---|
| name | viewport | width=device-width,initial-scale=1 |
| name | fragment | ! |
| name | {{::key}} | {{val}} |
| name | msvalidate.01 | 282E0D837CB18385A176DF9E6E51703B |
| name | google-site-verification | FhPzTst7grWAroiueq6vzlswHfGsEG7GGPcKKbMMfMM |
| name | p:domain_verify | 1c23e336cc0a357575f9cf2a05e9b8a7 |
| property | og:url | {{canonicalUrl}} |
| property | og:locale | en_US |
| property | og:site_name | Azure Standard |
| property | og:title | {{ head.title }} |
| property | og:description | {{ head.meta.description }} |
| property | og:image | {{ head.primaryImageSrc }} |
| property | og:image:secure_url | {{ head.primaryImageSrc }} |
| property | og:image:width | 1200 |
| property | og:image:height | 630 |
| property | og:image:type | {{ head.primaryImageType }} |
| property | og:image:alt | {{ head.primaryImageAlt }} |
| property | og:{{::key}} | {{val}} |
| property | twitter:card | summary_large_image |
| property | twitter:site | @azurestandard |
| property | twitter:title | {{ head.title }} |
| property | twitter:description | {{ head.meta.description }} |
| property | twitter:image | {{ head.primaryImageSrc }} |
Оптимизация Готовность: 0%
Структура
Ошибок нет
Семантические HTML-элементы страницы
?
Проверяет наличие основных структурных элементов: nav, header, footer, main. Корректная семантическая структура помогает поисковику понять архитектуру страницы.
Структура документа корректна (теги <html> и <body> присутствуют в одном экземпляре).
Контент
Есть ошибки
Объём и качество текстового содержимого
?
Анализирует объём полезного текста на странице. Слишком мало — страница может считаться малополезной. Слишком много — ухудшается читаемость и восприятие.
Слова из title 0 встречаются в тексте редко. Добавьте в контент страницы слова из тега <title>!
Абзацев с текстом 0 слишком мало. Добавьте больше абзацев с текстом (тег <p>)!
Среднее число слов в абзаце 0 слишком мало. Сделайте контент более читаемым!
Кол-во знаков контента 0 слишком мало. Добавьте больше текста!
Кол-во слов 1 слишком мало. Добавьте больше текста (минимум 400 слов)!
Заголовки
Есть ошибки
Иерархия заголовков H1–H6
?
H1 должен быть один и содержать ключевой запрос. H2–H6 описывают подразделы. Пропуск уровней (H1 → H3) и несколько H1 — типичные ошибки, снижающие понятность страницы для поисковика.
Не обнаружено заголовков на странице. Добавьте заголовки (<h1>, <h2> или <h3>)
Тошнота
Не удалось произвести расчет
Насколько одно слово доминирует в тексте
?
Классическая тошнота = √(частота самого повторяющегося слова). Норма до 7–8: текст воспринимается естественно. Выше — поисковик может счесть страницу переспамленной.
Тошнота не рассчитана. Измените текст страницы!
Академич. тошнота
Нет данных для расчета
Насколько текст перенасыщен ключевыми словами
?
Академическая тошнота = (частота слова / общее количество слов) × 100%. Показывает долю конкретного слова в тексте. Норма 5–15%.
Академическая тошнота не рассчитана. Измените текст страницы!
Семантическое ядро
Не удалось собрать
Наиболее часто встречающиеся слова на странице
?
Топ слов по частоте использования. Показывает, какие слова доминируют в тексте с точки зрения поисковика.
Контент страницы не содержит осмысленного текста. Добавьте текст на страницу!
Индексация Готовность: 20%
Индексирование
Есть ошибки
Разрешено ли индексирование страницы
?
Проверяет, не закрыта ли страница от индексации через robots.txt, meta robots или X-Robots-Tag. Страница, закрытая от индексации, не появится в поисковой выдаче.
Анкоров на странице не обнаружено. Велика вероятность, что сайт - одностраничник, такой сайт продвинуть крайне затруднительно!
Robots.txt
Найден корректный robots.txt
Файл управления сканированием сайта роботами
?
Robots.txt указывает поисковым роботам, какие страницы сканировать, а какие — нет. Ошибки в файле могут случайно закрыть важные разделы от индексации.
Robots.txt настроен корректно. Размер файла: 72971 байт. Загружен за: 1сек.
Проверяемая страница не запрещена в robots.txt.
Robots.txt доступен по постоянному адресу
Цепочка редиректов для файла robots.txt:
http://seedsofdeception.com/robots.txt
301 MovedPermanently
https://www.azurestandard.com/shop/search/jeffrey smith
200 OK
Показать содержимое robots.txt
<!DOCTYPE html><html class="no-js" lang="en-US" ng-app="app" prefix="og: http://ogp.me/ns#" xmlns:fb="http://ogp.me/ns/fb#"><head><meta charset="utf-8"><meta content="width=device-width,initial-scale=1" name="viewport"><meta content="!" name="fragment"><base href="/"><link rel="preconnect" href="https://api.azurestandard.com" crossorigin><link rel="preconnect" href="https://img.azurestandard.com"><link rel="preconnect" href="https://cdnjs.cloudflare.com"><link rel="preconnect" href="https://j8n8i8ke2y-dsn.algolia.net" crossorigin><link rel="dns-prefetch" href="https://azurestandard.imgix.net"><link rel="preload" href="/styles/main.css" as="style"><link rel="preload" href="/styles/tailwind.css" as="style"><link rel="preload" href="/fonts/azureicon/azureicon.8cc9e848.woff2" as="font" crossorigin="anonymous" type="font/woff2"><link rel="canonical" ng-href="{{canonicalUrl}}" ng-if="canonicalUrl"><script>var gtmContainerId="GTM-P2G75ZK";!function(e,a,t,r,i){e[r]=e[r]||[],e[r].push({"gtm.start":(new Date).getTime(),event:"gtm.js"});var o=a.getElementsByTagName(t)[0],s=a.createElement(t);s.async=!0,s.src="//www.googletagmanager.com/gtm.js?id="+i,o.parentNode.insertBefore(s,o)}(window,document,"script","dataLayer",gtmContainerId);var Azure=function(e){function a(e){var a=new XMLHttpRequest;return a.open("GET",e),a.withCredentials=!0,a.send(),a}var t=e.hostname.indexOf(".azurestandard.com")>=0;function r(){if(t)return document.cookie.indexOf("; id=")>=0||0===document.cookie.indexOf("id=")}var i={viewportXsMediaQuery:matchMedia("(max-width: 479px)"),viewportSmMediaQuery:matchMedia("(max-width: 767px)"),viewportMdMediaQuery:matchMedia("(max-width: 1023px)"),version:"1.219.0",apiHost:"https://api.azurestandard.com",blogHost:"hl.azurestandard.com",baseBlogPath:"/healthy-living",sessionInline:"person.email,person.order-place-issue,person.is-drop-coordinator,person.homeDeliveryDriverDropIds,person.homeDeliveryDriverCreditsTotal,person.homeDeliveryDriverCreditsBreakdown",canReadCookies:t,hasIdCookie:r,areAssetsHashed:!0,isCmsPreview:!1,serverlessEndpointsApiUrl:"/cfp-api"},o=e.pathname,s=r();return"/"===o&&!1===s&&(i.homePageTemplatePath="app.from_cms/home/home-visitor.3be7b33a.htm",i.homePageRequest=a(i.homePageTemplatePath)),!1!==s&&(i.sessionRequest=a(i.apiHost+"/session?inline="+i.sessionInline)),i.viewportSmMediaQuery.matches?i.headerPath="partials/header_mobile.46b091c0.htm":i.headerPath="partials/header.a52149b1.htm",i.headerRequest=a(i.headerPath),i}(location)</script><title ng-bind="head.title + ' - Azure Standard'">Organic, non-GMO Food and Produce Delivered - Azure Standard</title><meta content="{{val}}" name="{{::key}}" ng-repeat="(key, val) in head.meta track by key"><meta content="{{canonicalUrl}}" property="og:url" ng-if="canonicalUrl"><meta content="en_US" property="og:locale"><meta content="Azure Standard" property="og:site_name"><meta content="{{ head.title }}" property="og:title"><meta content="{{ head.meta.description }}" property="og:description"><meta content="{{ head.primaryImageSrc }}" property="og:image"><meta content="{{ head.primaryImageSrc }}" property="og:image:secure_url"><meta content="1200" property="og:image:width"><meta content="630" property="og:image:height"><meta content="{{ head.primaryImageType }}" property="og:image:type"><meta content="{{ head.primaryImageAlt }}" property="og:image:alt"><meta content="{{val}}" property="og:{{::key}}" ng-repeat="(key, val) in head.og track by key"><meta content="summary_large_image" property="twitter:card"><meta content="@azurestandard" property="twitter:site"><meta content="{{ head.title }}" property="twitter:title"><meta content="{{ head.meta.description }}" property="twitter:description"><meta content="{{ head.primaryImageSrc }}" property="twitter:image"><link rel="apple-touch-icon" href="/apple-touch-icon.png" sizes="180x180"><link rel="icon" href="/favicon-32x32.png" sizes="32x32" type="image/png"><link rel="icon" href="/favicon-16x16.png" sizes="16x16" type="image/png"><link rel="manifest" href="/site.webmanifest"><link rel="stylesheet" href="styles/main.css"><link rel="stylesheet" href="styles/tailwind.css"><script src="https://cdnjs.cloudflare.com/polyfill/v3/polyfill.min.js?version=4.8.0&flags=gated&unknown=polyfill&features=es5,es6,Array.prototype.includes,Array.prototype.flatMap,IntersectionObserver,Object.values"></script><script>!function(e,t){var a=e.createElement(t);a.id="pap_x2s6df8d",a.async=!0,a.src="https://azurestandard.postaffiliatepro.com/scripts/wgddzyhyj",a.onload=a.onreadystatechange=function(){var e=this.readyState;if((!e||"complete"==e||"loaded"==e)&&"undefined"!=typeof PostAffTracker){PostAffTracker.setAccountId("default1");try{PostAffTracker.track()}catch(e){}}};var r=e.getElementsByTagName(t)[0];r.parentNode.insertBefore(a,r)}(document,"script")</script><script>!function(e,n,s,t,d){e._genesysJs=n,e[n]=e[n]||function(){(e[n].q=e[n].q||[]).push(arguments)},e[n].t=1*new Date,e[n].c={environment:"prod-usw2",deploymentId:"5369e569-5383-4ac5-8d32-fedbd95514ca"},(d=document.createElement("script")).async=1,d.src="https://apps.usw2.pure.cloud/genesys-bootstrap/genesys.min.js",d.charset="utf-8",document.head.appendChild(d),d.onload=function(){window.Genesys&&document.body.classList.add("is-chatWidgetPresent")}}(window,"Genesys")</script><meta content="282E0D837CB18385A176DF9E6E51703B" name="msvalidate.01"><meta content="FhPzTst7grWAroiueq6vzlswHfGsEG7GGPcKKbMMfMM" name="google-site-verification"><meta content="1c23e336cc0a357575f9cf2a05e9b8a7" name="p:domain_verify"></head><body class="flex flex-col min-h-screen group/body" id="js-body" ng-class="[pageName,underlayForElementClass,{'Superuser bg-[red] m-superuserBodyX mt-superuserHeadingHeight': userState.superUserId,'is-slideoutCartOpen': $root.showSlideoutCart,'is-modalCartOpen': $state.params.cart,'is-blankLayout': $state.current.data.useBlankLayout}]" ng-keydown="onBodyKeydown($event)"><noscript><iframe height="0" src="https://www.googletagmanager.com/ns.html?id=GTM-P2G75ZK" style="display:none;visibility:hidden" width="0"></iframe></noscript><div class="LoadingOverlay LoadingOverlay--fullscreen" ng-if="appLoading || redirecting"><div class="LoadingOverlay-iconWrap"><span class="Animate--spin icon-refresh"></span></div></div><div class="flex flex-col min-h-screen" ng-class="{hidden: redirecting}" ng-cloak><ui-view></ui-view></div><script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.8.2/angular.min.js"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui-router/1.0.29/angular-ui-router.min.js"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/algoliasearch/3.34.0/algoliasearch.angular.min.js"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui-bootstrap/1.3.3/ui-bootstrap-tpls.min.js"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/flickity/2.2.2/flickity.pkgd.min.js"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/angular-sanitize/1.8.2/angular-sanitize.min.js"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/angular-resource/1.8.2/angular-resource.min.js"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/angular-cookies/1.8.2/angular-cookies.min.js"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/angular-touch/1.8.2/angular-touch.min.js"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/angular-cache/4.6.0/angular-cache.min.js"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui-mask/1.8.7/mask.min.js"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/countdown/2.6.0/countdown.min.js"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/oclazyload/1.1.0/ocLazyLoad.min.js"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/clipboard-polyfill/3.0.3/main/clipboard-polyfill.min.js"></script><script src="https://widget.trustpilot.com/bootstrap/v5/tp.widget.bootstrap.min.js"></script><script src="routes.module.8625ecad.js"></script><script src="modules/modules.9970bc3e.js"></script><script src="core/core.262e3186.js"></script><script id="inlineTemplates/productGridItem.htm" type="text/ng-template"><div class="ProductGridItem LoadingOverlay-container" as-product-impression ng-class="{ 'ProductGridItem--hasFlag': flagText || (replacementState.shouldShow && (replacementState.replacementCode || replacementState.replacementProductId)),
'ProductGridItem--hasFlagReplacement': flagText === 'Replacement',
'ProductGridItem--hasFlagReplaced': !flagText && replacementState.shouldShow && (replacementState.replacementCode || replacementState.replacementProductId)
}"><div class="LoadingOverlay" ng-if="replacementState.replacingInList"><div class="LoadingOverlay-iconWrap"><span class="icon-refresh Animate--spin"></span></div></div><a class="ProductGridItem-mobileItemLinkOverlay" ng-click="productClick()" ui-sref="shop.product({ path: product.path, id: product.id, package: cardDisplayPack.code, cart: false })"></a><div class="relative" ng-class="{'pb-4 md:pb-0': replacementState.shouldShow && (replacementState.replacementCode || replacementState.replacementProductId)}"><a class="ProductGridItem-imageAnchor" ng-click="productClick()" ui-sref="shop.product({ path: product.path, id: product.id, package: cardDisplayPack.code, cart: false })" data-flag="{{flagText || (replacementState.shouldShow && (replacementState.replacementCode || replacementState.replacementProductId) ? 'Replaced' : '')}}"><span class="ProductGridItem-saleBanner" ng-if="::hasActivePackaging && discountPercent"><span class="ProductGridItem-saleBannerSmall">Save<span class="block" ng-if="::packaging.length > 1">up to</span></span><span class="ProductGridItem-saleBannerBig">{{::discountPercent | number:0}}%</span><span class="ProductGridItem-saleBannerTriangles"></span></span><div class="ProductGridItem-imageWrap"><div class="ProductGridItem-imageContainer"><div ng-if="::loadImage"><img class="ProductGridItem-image ProductGridItem-image--placeholder Logo--asPlaceholder" ng-src="images/brand-eagle.min.54033224.svg" ng-if="!packaging.length || cardDisplayPack.images.length === 0"><img class="ProductGridItem-image" ng-if="::cardDisplayPack.images.length > 0" alt="{{::cardDisplayPack.productView.name}}, {{::cardDisplayPack.size}}" ng-src="https://img.azurestandard.com/unsafe/fit-in/282x216/filters:fill(white)/{{::cardDisplayPack.images[0]}}" ng-srcset=" https://img.azurestandard.com/unsafe/fit-in/218x167/filters:fill(white)/{{::cardDisplayPack.images[0]}} 218w, https://img.azurestandard.com/unsafe/fit-in/282x216/filters:fill(white)/{{::cardDisplayPack.images[0]}} 282w, https://img.azurestandard.com/unsafe/fit-in/436x334/filters:fill(white)/{{::cardDisplayPack.images[0]}} 436w, https://img.azurestandard.com/unsafe/fit-in/564x432/filters:fill(white)/{{::cardDisplayPack.images[0]}} 564w, https://img.azurestandard.com/unsafe/fit-in/654x501/filters:fill(white)/{{::cardDisplayPack.images[0]}} 654w, https://img.azurestandard.com/unsafe/fit-in/872x668/filters:fill(white)/{{::cardDisplayPack.images[0]}} 872w " sizes=" (max-width: 494px) 50vw, (max-width: 654px) 33.333vw, (max-width: 767px) 25vw, 282px "></div></div><div class="RewardsBadge ProductGridItem-rewardsBadge absolute z-10 text-sm/none size-[52px]" ng-if="!cardDisplayPack.isInactive && cardDisplayPack.userPrice.rewardsRate > $root.userState.priceSettings.rewardsRate" ng-class="{ 'ProductGridItem-rewardsBadge--withSale': hasActivePackaging && discountPercent,
'ProductGridItem-rewardsBadge--withSaleUpTo': hasActivePackaging && discountPercent && packaging.length > 1
}"><div class="absolute centerXY text-center"><div style="font-size: 0.9375em">{{cardDisplayPack.userPrice.rewardsRate}}x</div><div style="font-size: 0.75em">Azure</div><div style="font-size: 0.75em">Cash</div></div><svg ng-if="cardDisplayPack.userPrice.rewardsRate > $root.userState.priceSettings.rewardsRate" viewBox="0 0 100 99" fill="#839F2E" xmlns="http://www.w3.org/2000/svg"><path d="M49.2406 0.886359C49.6397 0.420526 50.3603 0.420526 50.7594 0.886359L55.8464 6.82386C56.1694 7.20081 56.72 7.2838 57.1397 7.01879L63.7508 2.8445C64.2695 2.51701 64.9581 2.7294 65.2022 3.29218L68.3131 10.4653C68.5106 10.9207 69.0123 11.1623 69.4914 11.0328L77.0393 8.99262C77.6314 8.83256 78.2268 9.23847 78.2941 9.84819L79.1525 17.6196C79.207 18.113 79.6152 18.4917 80.1113 18.5092L87.9251 18.7844C88.5382 18.806 88.9874 19.3694 88.8721 19.9719L87.4017 27.651C87.3083 28.1386 87.5867 28.6208 88.0556 28.7837L95.4412 31.3499C96.0206 31.5512 96.2839 32.222 95.996 32.7637L92.3275 39.6683C92.0946 40.1066 92.2185 40.6495 92.6185 40.9434L98.9196 45.5725C99.4139 45.9356 99.4678 46.6542 99.0331 47.087L93.4923 52.6035C93.1405 52.9537 93.0989 53.509 93.3946 53.9078L98.0512 60.1885C98.4166 60.6812 98.2562 61.3837 97.7133 61.6692L90.7927 65.3074C90.3533 65.5384 90.1499 66.0567 90.3149 66.5249L92.9134 73.8992C93.1172 74.4777 92.7569 75.1018 92.154 75.2145L84.4684 76.6512C83.9805 76.7424 83.6333 77.1778 83.653 77.6738L83.9624 85.4863C83.9867 86.0993 83.4585 86.5894 82.8491 86.5194L75.0815 85.6269C74.5884 85.5703 74.1283 85.8839 74.0009 86.3637L71.9938 93.9204C71.8363 94.5132 71.1871 94.8259 70.6254 94.5794L63.466 91.437C63.0114 91.2375 62.4794 91.4017 62.2162 91.8225L58.0709 98.4519C57.7457 98.972 57.0332 99.0794 56.5691 98.6783L50.6539 93.5653C50.2784 93.2407 49.7216 93.2407 49.3461 93.5653L43.4309 98.6783C42.9668 99.0794 42.2543 98.972 41.9291 98.4519L37.7838 91.8225C37.5206 91.4017 36.9886 91.2375 36.534 91.437L29.3746 94.5794C28.8129 94.8259 28.1637 94.5132 28.0062 93.9204L25.9991 86.3637C25.8717 85.8839 25.4116 85.5703 24.9185 85.6269L17.1509 86.5194C16.5415 86.5894 16.0133 86.0993 16.0376 85.4863L16.347 77.6738C16.3667 77.1778 16.0195 76.7424 15.5316 76.6512L7.84604 75.2145C7.24306 75.1018 6.88277 74.4777 7.08664 73.8992L9.68515 66.5249C9.85012 66.0567 9.6467 65.5384 9.20732 65.3074L2.28672 61.6692C1.74376 61.3837 1.58341 60.6812 1.94876 60.1885L6.60542 53.9078C6.90106 53.509 6.85945 52.9537 6.50768 52.6035L0.96694 47.087C0.532234 46.6542 0.586083 45.9356 1.08044 45.5725L7.38149 40.9434C7.78153 40.6495 7.90543 40.1066 7.67252 39.6683L4.00396 32.7637C3.71614 32.222 3.9794 31.5512 4.55884 31.3499L11.9444 28.7837C12.4133 28.6208 12.6917 28.1386 12.5983 27.651L11.1279 19.9719C11.0126 19.3694 11.4618 18.806 12.0749 18.7844L19.8887 18.5092C20.3848 18.4917 20.793 18.113 20.8475 17.6196L21.7059 9.84819C21.7732 9.23847 22.3686 8.83256 22.9607 8.99262L30.5086 11.0328C30.9877 11.1623 31.4894 10.9207 31.6869 10.4653L34.7978 3.29218C35.0419 2.7294 35.7305 2.517 36.2492 2.8445L42.8603 7.01879C43.28 7.2838 43.8306 7.20081 44.1536 6.82386L49.2406 0.886359Z"></path></svg></div></div><div class="ProductGridItem-replacementOverlay absolute inset-0 pointer-events-none" ng-if="replacementState.shouldShow && !replacementState.loading && (replacementState.replacementCode || replacementState.replacementProductId)"></div><div class="rounded-t-[3px] absolute inset-0 bg-black/15 flex items-center justify-center" ng-if="replacementState.shouldShow && replacementState.loading && (replacementState.replacementCode || replacementState.replacementProductId)"><span class="flex items-center justify-center size-10 bg-white rounded-full shadow-lg"><span class="icon-refresh Animate--spin text-link text-base"></span></span></div></a><div class="absolute bottom-3 left-3 right-3 z-10" ng-if="replacementState.shouldShow && (replacementState.replacementProductView || shouldShowReplaceInListButton())"><a class="cursor-pointer select-none text-gray-700 no-underline hocus:no-underline bg-white hocus:bg-gray-50 text-sm/[1.1] tracking-[0.9px] px-3 py-1.5 rounded-lg shadow-[0_2px_2px_0_rgba(0,0,0,0.16),0_0_0_1px_rgba(0,0,0,0.08)] w-full justify-start font-semibold flex items-center justify-center whitespace-nowrap disabled:opacity-50 disabled:pointer-events-none [&.is-disabled]:opacity-50 [&.is-disabled]:pointer-events-none" ui-sref="shop.product({ path: replacementState.replacementProductView.path, id: replacementState.replacementProductView.id, package: replacementState.replacementCode, cart: false })" title="" ng-if="replacementState.replacementProductView"><span class="flex min-w-0 flex-1 flex-col items-start gap-1.5 leading-tight"><span class="text-[10px]/[1] tracking-[0.7px] text-gray-500 font-medium">Replaced by</span><span class="flex w-full min-w-0 items-center gap-1.5"><span class="size-4 text-link shrink-0"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor">
<path fill-rule="evenodd" d="M3 10C3 9.58579 3.33579 9.25 3.75 9.25L14.3879 9.25L10.2302 5.29062C9.93159 5.00353 9.92228 4.52875 10.2094 4.23017C10.4965 3.93159 10.9713 3.92228 11.2698 4.20937L16.7698 9.45937C16.9169 9.60078 17 9.79599 17 10C17 10.204 16.9169 10.3992 16.7698 10.5406L11.2698 15.7906C10.9713 16.0777 10.4965 16.0684 10.2094 15.7698C9.92228 15.4713 9.93159 14.9965 10.2302 14.7094L14.3879 10.75L3.75 10.75C3.33579 10.75 3 10.4142 3 10Z" clip-rule="evenodd"/>
</svg></span><span class="truncate">{{replacementState.replacementProductView.name}}</span></span></span></a><button class="cursor-pointer select-none bg-blue-600 text-blue-50 hocus:bg-blue-600/90 no-underline hocus:no-underline text-sm/[1.1] tracking-[0.9px] px-3 py-1.5 rounded-lg shadow-[0_2px_2px_0_rgba(0,0,0,0.16),0_0_0_1px_rgba(0,0,0,0.08)] mt-1.5 w-full font-medium gap-1.5 flex items-center justify-center whitespace-nowrap disabled:opacity-50 disabled:pointer-events-none [&.is-disabled]:opacity-50 [&.is-disabled]:pointer-events-none" ng-click="$event.preventDefault(); $event.stopPropagation(); $root.blur(); replaceInMyList()" type="button" title="" ng-if="shouldShowReplaceInListButton()" ng-disabled="replacementState.replacingInList"><span class="size-3.5 shrink-0"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor">
<path fill-rule="evenodd" d="M13.2004 2.23966C12.9186 2.5432 12.9361 3.01775 13.2397 3.2996L15.3401 5.25L6.75 5.25C6.33579 5.25 6 5.58579 6 6C6 6.41422 6.33579 6.75 6.75 6.75L15.3401 6.75L13.2397 8.70041C12.9361 8.98226 12.9186 9.45681 13.2004 9.76034C13.4823 10.0639 13.9568 10.0815 14.2603 9.7996L17.7603 6.5496C17.9132 6.40769 18 6.20855 18 6C18 5.79145 17.9132 5.59232 17.7603 5.45041L14.2603 2.20041C13.9568 1.91856 13.4823 1.93613 13.2004 2.23966ZM6.79959 10.2397C6.51774 9.93613 6.04319 9.91856 5.73966 10.2004L2.23966 13.4504C2.08684 13.5923 2 13.7915 2 14C2 14.2086 2.08684 14.4077 2.23966 14.5496L5.73966 17.7996C6.04319 18.0815 6.51774 18.0639 6.79959 17.7603C7.08145 17.4568 7.06387 16.9823 6.76034 16.7004L4.6599 14.75H13.25C13.6642 14.75 14 14.4142 14 14C14 13.5858 13.6642 13.25 13.25 13.25H4.6599L6.76034 11.2996C7.06387 11.0177 7.08145 10.5432 6.79959 10.2397Z" clip-rule="evenodd"/>
</svg></span><span>Replace in List</span></button></div></div><div class="ProductGridItem-info" ng-class="::{'mb-8': $root.userState.hasOrderedByPackaging(packaging)}"><div class="flex justify-between mb-0.5 items-end"><div class="ProductGridItem-price"><span ng-if="::hasActivePackaging && packaging.length > 1">{{::minPrice | dollars}} – {{::maxPrice | dollars}}</span><span ng-if="::hasActivePackaging && packaging.length === 1">{{::packaging[0].userPrice.dollarsMedian | dollars}}</span></div><div class="ProductGridItem-favoriteWrap" ng-if="::!$root.viewportSm"><div class="-mr-1 text-gray-500 text-sm/none -mr-1.5" as-product-favorite-and-lists><div class="flex" ng-if="favoriteAndListsReady"><button class="group rounded-full relative flex items-center justify-center p-1.5 size-8 text-base/none hover:z-10" ng-class="{ 'is-filled': isAnyPackFavorited(), 'hover:bg-red-400/10': !(product.favoriteProcessing), }" ng-click="$root.blur(); pressedFavoriteButton(false, product, true, true)" title="Add/Remove from your Favorites"><span class="icon-heart group-[.is-filled]:hidden hover:text-red-700" ng-class="{ 'Animate--heartPulse': product.favoriteProcessing }"></span><span class="icon-heart-filled hidden group-[.is-filled]:block text-red-700" ng-class="{ 'Animate--heartPulse': product.favoriteProcessing, 'Animate--heartFavoritePop': (isAnyPackFavorited()) && (product.favoritePopActive), }"></span><span class="FavoriteHeart-burst absolute inset-0 pointer-events-none" ng-class="{ 'FavoriteHeart-burst--active': (isAnyPackFavorited()) && (product.favoritePopActive) }" aria-hidden="true"></span></button><button class="group rounded-full relative flex items-center justify-center p-1.5 size-8 text-base/none -ml-1 hover:bg-red-400/10 hover:z-10" ng-class="{ 'is-filled': isAnyPackInList() }" ng-click="$root.blur(); pressedPackListManagerButton(false, product)" title="Add/Remove from your lists"><span class="icon-bullet-list-square group-[.is-filled]:hidden hover:text-red-700"></span><span class="icon-bullet-list-square-filled hidden group-[.is-filled]:block text-red-700"></span><span class="hidden group-[.is-filled]:flex text-xxs/none absolute z-10 top-[-1px] right-[-1px] rounded-lg min-w-[14px] h-[14px] px-1 bg-white border border-red-700 text-red-700 font-semibold items-center justify-center">{{localState.productListCount > 9 ? '9+' : localState.productListCount}}</span></button></div><div class="flex items-center gap-2 pointer-events-none select-none" ng-if="!favoriteAndListsReady" aria-hidden="true"><div class="w-8 h-8 rounded-full" aria-hidden="true"><svg class="block w-full h-full" viewBox="0 0 400 100" preserveAspectRatio="none" focusable="false" aria-hidden="true"><defs><linearGradient id="shimmerGradient-6tk4yh" gradientUnits="userSpaceOnUse" x1="0" y1="0" x2="400" y2="0"><stop offset="0%" stop-color="#f5f5f5"></stop><stop offset="50%" stop-color="#e9e9e9"></stop><stop offset="100%" stop-color="#f5f5f5"></stop><animateTransform attributeName="gradientTransform" type="translate" from="-400 0" to="400 0" dur="1.6s" repeatCount="indefinite"></animateTransform></linearGradient></defs><rect x="0" y="0" width="400" height="100" rx="999" ry="999" fill="url(#shimmerGradient-6tk4yh)"></rect></svg></div><div class="w-8 h-8 rounded-full -ml-1" aria-hidden="true"><svg class="block w-full h-full" viewBox="0 0 400 100" preserveAspectRatio="none" focusable="false" aria-hidden="true"><defs><linearGradient id="shimmerGradient-xra42k" gradientUnits="userSpaceOnUse" x1="0" y1="0" x2="400" y2="0"><stop offset="0%" stop-color="#f5f5f5"></stop><stop offset="50%" stop-color="#e9e9e9"></stop><stop offset="100%" stop-color="#f5f5f5"></stop><animateTransform attributeName="gradientTransform" type="translate" from="-400 0" to="400 0" dur="1.6s" repeatCount="indefinite"></animateTransform></linearGradient></defs><rect x="0" y="0" width="400" height="100" rx="999" ry="999" fill="url(#shimmerGradient-xra42k)"></rect></svg></div></div></div></div></div><div class="ProductGridItem-sizeMeta mb-1.5" ng-if="::hasActivePackaging && packaging.length > 1 && packaging[0].userPrice['dollars-per-unit'] && packaging[packaging.length - 1].userPrice['dollars-per-unit']">${{::packaging[0].userPrice['dollars-per-unit'] | number:2}} – ${{::packaging[packaging.length -1].userPrice['dollars-per-unit'] | number:2}}/{{::packaging[0].userPrice.unit}}</div><div ng-class="::{'-mt-5 mr-14': !hasActivePackaging}"><div class="ProductGridItem-sizeMeta mb-1.5" ng-if="::packaging.length === 1">{{::packaging[0].size}} <span ng-if="::hasActivePackaging && packaging[0].userPrice['dollars-per-unit']">@{{::packaging[0].userPrice['dollars-per-unit'] | number:2}}/{{::packaging[0].userPrice.unit}}</span></div><div class="mb-1.5 mt-2.5" ng-if="::product.trustpilotNumberOfReviews"><span ng-if="::$root.viewportSm"><span class="inline-block text-black"><span class="flex items-center"><span class="flex-shrink-0 w-full" style="max-width: 80px" uib-tooltip="{{::product.trustpilotStarsAverage | number:1}} out of 5 stars"><img src="/images/trustpilot-star-5.0.min.54608571.svg" ng-if=":: product.trustpilotStarsAverage > 4.7"><img src="/images/trustpilot-star-4.5.min.456a2260.svg" ng-if=":: product.trustpilotStarsAverage > 4.2 && product.trustpilotStarsAverage <= 4.7"><img src="/images/trustpilot-star-4.0.min.09fcf800.svg" ng-if=":: product.trustpilotStarsAverage > 3.7 && product.trustpilotStarsAverage <= 4.2"><img src="/images/trustpilot-star-3.5.min.891652f6.svg" ng-if=":: product.trustpilotStarsAverage > 3.2 && product.trustpilotStarsAverage <= 3.7"><img src="/images/trustpilot-star-3.0.min.c18d0e9a.svg" ng-if=":: product.trustpilotStarsAverage > 2.7 && product.trustpilotStarsAverage <= 3.2"><img src="/images/trustpilot-star-2.5.min.10a24baa.svg" ng-if=":: product.trustpilotStarsAverage > 2.2 && product.trustpilotStarsAverage <= 2.7"><img src="/images/trustpilot-star-2.0.min.7b163430.svg" ng-if=":: product.trustpilotStarsAverage > 1.7 && product.trustpilotStarsAverage <= 2.2"><img src="/images/trustpilot-star-1.5.min.5c22f194.svg" ng-if=":: product.trustpilotStarsAverage > 1.2 && product.trustpilotStarsAverage <= 1.7"><img src="/images/trustpilot-star-1.0.min.5f4b4259.svg" ng-if=":: product.trustpilotStarsAverage > 0.9 && product.trustpilotStarsAverage <= 1.1"><img src="/images/trustpilot-star-0.0.min.62d664c0.svg" ng-if=":: product.trustpilotStarsAverage > -1 && product.trustpilotStarsAverage <= 0.9"></span><span class="ml-2 leading-none mt-1 {{::$root.viewportSm ? "text-xs" : "text-sm"}}">{{::product.trustpilotNumberOfReviews}} <ng-pluralize count="::product.trustpilotNumberOfReviews" when="{'one': ' review', 'other': ' reviews'}"></ng-pluralize></span></span></span></span><span ng-if="::!$root.viewportSm"><a class="inline-block defaultTextLink" ui-sref="shop.product({ '#': 'reviews', path: product.path, id: product.id, package: product.selectedPackagingOrDefault.code, cart: false })"><span class="flex items-center"><span class="flex-shrink-0 w-full" style="max-width: 80px" uib-tooltip="{{::product.trustpilotStarsAverage | number:1}} out of 5 stars"><img src="/images/trustpilot-star-5.0.min.54608571.svg" ng-if=":: product.trustpilotStarsAverage > 4.7"><img src="/images/trustpilot-star-4.5.min.456a2260.svg" ng-if=":: product.trustpilotStarsAverage > 4.2 && product.trustpilotStarsAverage <= 4.7"><img src="/images/trustpilot-star-4.0.min.09fcf800.svg" ng-if=":: product.trustpilotStarsAverage > 3.7 && product.trustpilotStarsAverage <= 4.2"><img src="/images/trustpilot-star-3.5.min.891652f6.svg" ng-if=":: product.trustpilotStarsAverage > 3.2 && product.trustpilotStarsAverage <= 3.7"><img src="/images/trustpilot-star-3.0.min.c18d0e9a.svg" ng-if=":: product.trustpilotStarsAverage > 2.7 && product.trustpilotStarsAverage <= 3.2"><img src="/images/trustpilot-star-2.5.min.10a24baa.svg" ng-if=":: product.trustpilotStarsAverage > 2.2 && product.trustpilotStarsAverage <= 2.7"><img src="/images/trustpilot-star-2.0.min.7b163430.svg" ng-if=":: product.trustpilotStarsAverage > 1.7 && product.trustpilotStarsAverage <= 2.2"><img src="/images/trustpilot-star-1.5.min.5c22f194.svg" ng-if=":: product.trustpilotStarsAverage > 1.2 && product.trustpilotStarsAverage <= 1.7"><img src="/images/trustpilot-star-1.0.min.5f4b4259.svg" ng-if=":: product.trustpilotStarsAverage > 0.9 && product.trustpilotStarsAverage <= 1.1"><img src="/images/trustpilot-star-0.0.min.62d664c0.svg" ng-if=":: product.trustpilotStarsAverage > -1 && product.trustpilotStarsAverage <= 0.9"></span><span class="ml-2 leading-none mt-1 {{::$root.viewportSm ? "text-xs" : "text-sm"}}">{{::product.trustpilotNumberOfReviews}} <ng-pluralize count="::product.trustpilotNumberOfReviews" when="{'one': ' review', 'other': ' reviews'}"></ng-pluralize></span></span></a></span></div><div class="mb-1.5" ng-if="::packaging.length > 1" ng-class="{'mt-5': $root.viewportSm && replacementState.shouldShow && (replacementState.replacementCode || replacementState.replacementProductId)}">{{::packaging.length}} sizes</div></div><div class="mb-4" ng-if="product.outOfStockCount && !(replacementState.shouldShow && (replacementState.replacementCode || replacementState.replacementProductId))"><div class="Label ProductGridItem-label bg-brandOrange2"><span ng-if="::product.outOfStockCount < packaging.length">{{::product.outOfStockCount}}</span> Out of Stock</div></div><div class="Label ProductGridItem-label" ng-if="labels && !(replacementState.shouldShow && (replacementState.replacementCode || replacementState.replacementProductId))" ng-repeat="label in ::labels" ng-style="::{'background-color': product.treatAsActive && !hasActivePackaging ? false : label['background-color']}" ng-class="::{'Label--outline': product.treatAsActive && !hasActivePackaging}"><span ng-if="::packaging.length > 1">{{:: label.count === packaging.length ? '' : label.count}}</span> {{:: label.name }}</div><div class="ProductGridItem-bbNote" ng-if="::packaging.length === 1 && packaging[0]['bargain-bin-notes']">{{::packaging[0]['bargain-bin-notes']}}</div><div class="mt-1"><a class="ProductGridItem-infoNameAnchor inline-flex items-start gap-1" ng-click="productClick()" ui-sref="shop.product({ path: product.path, id: product.id, package: cardDisplayPack.code, cart: false })"><span>{{::product.name}}</span></a><div ng-if="::product.brand">{{::product.brand.name}}</div></div></div><div class="ProductGridItem-ordered" ng-if="::$root.userState.hasOrderedByPackaging(packaging)"><div class="Label bg-gray-100 text-legacyDefaultType w-full">Ordered <ng-pluralize count="::$root.userState.orderedSummaryByPackaging(packaging).orderCount" when="{'one': ' {} time', 'other': ' {} times'}"></ng-pluralize></div></div><as-product-add-or-edit class="ProductAddOrEdit--inGridItem QuantityBtnGroup--inGridItem" ng-if="::!$root.viewportSm" product="::product" pack="packaging.length > 1 ? null : packaging[0]" button-click="productClick()" filter-description="filterDescription" parent-feature-path="{{::featurePath}}" default-quantity="listQuantity"></as-product-add-or-edit></div></script><script id="inlineTemplates/productCarousel.htm" type="text/ng-template"><div class="flex w-full mb-3" ng-if="::showNavAndCount"><button class="cursor-pointer select-none text-gray-700 no-underline hocus:no-underline bg-white hocus:bg-gray-50 text-base/[1.1] tracking-[0.9px] px-6 py-3 rounded-lg shadow-[0_2px_2px_0_rgba(0,0,0,0.16),0_0_0_1px_rgba(0,0,0,0.08)] flex items-center justify-center whitespace-nowrap disabled:opacity-50 disabled:pointer-events-none [&.is-disabled]:opacity-50 [&.is-disabled]:pointer-events-none" ng-click="$root.blur(); pressedNavPrev()" type="button" title=""><span class="text-gray-500 size-[23px]"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor">
<path fill-rule="evenodd" d="M17 10C17 10.4142 16.6642 10.75 16.25 10.75L5.61208 10.75L9.76983 14.7094C10.0684 14.9965 10.0777 15.4713 9.79062 15.7698C9.50353 16.0684 9.02875 16.0777 8.73017 15.7906L3.23017 10.5406C3.08311 10.3992 3 10.204 3 10C3 9.79599 3.08311 9.60078 3.23017 9.45938L8.73017 4.20938C9.02875 3.92228 9.50353 3.93159 9.79062 4.23017C10.0777 4.52875 10.0684 5.00353 9.76983 5.29063L5.61208 9.25L16.25 9.25C16.6642 9.25 17 9.58579 17 10Z" clip-rule="evenodd"/>
</svg></span></button><div class="text-gray-500 px-6 self-center justify-self-center text-center flex-1">{{selectedIndex + 1}} / {{::productViews.length}}</div><button class="cursor-pointer select-none text-gray-700 no-underline hocus:no-underline bg-white hocus:bg-gray-50 text-base/[1.1] tracking-[0.9px] px-6 py-3 rounded-lg shadow-[0_2px_2px_0_rgba(0,0,0,0.16),0_0_0_1px_rgba(0,0,0,0.08)] flex items-center justify-center whitespace-nowrap disabled:opacity-50 disabled:pointer-events-none [&.is-disabled]:opacity-50 [&.is-disabled]:pointer-events-none" ng-click="$root.blur(); pressedNavNext()" type="button" title=""><span class="text-gray-500 size-[23px]"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor">
<path fill-rule="evenodd" d="M3 10C3 9.58579 3.33579 9.25 3.75 9.25L14.3879 9.25L10.2302 5.29062C9.93159 5.00353 9.92228 4.52875 10.2094 4.23017C10.4965 3.93159 10.9713 3.92228 11.2698 4.20937L16.7698 9.45937C16.9169 9.60078 17 9.79599 17 10C17 10.204 16.9169 10.3992 16.7698 10.5406L11.2698 15.7906C10.9713 16.0777 10.4965 16.0684 10.2094 15.7698C9.92228 15.4713 9.93159 14.9965 10.2302 14.7094L14.3879 10.75L3.75 10.75C3.33579 10.75 3 10.4142 3 10Z" clip-rule="evenodd"/>
</svg></span></button></div><div class="ProductCarousel relative min-h-[300px]" ng-class="::{'ProductCarousel--withArrows': withFlickityArrows}"><div class="LoadingOverlay" ng-if="!productViews"><div class="LoadingOverlay-iconWrap"><span class="icon-refresh Animate--spin"></span></div></div><div class="ProductGridItemWrap" ng-repeat="product in ::productViews track by $index"><as-product-grid-item class="mb-0 w-full" product="product" flag-text="{{::product.hasFlagReplacement ? 'Replacement' : undefined}}" position="$index + 1" product-list="{{::productList}}" in-flickity="true" parent-feature-path="productCarousel"></as-product-grid-item></div></div></script><script id="inlineTemplates/productAddOrEdit.htm" type="text/ng-template"><div class="ProductAddOrEdit"><div ng-if="!$root.appState.activeOrderState.order.cannotAddProduct(product)"><div ng-if="::!pack && product.hasActivePackaging"><button class="bg-brandYellow50 hocus:bg-brandYellow50Hover font-bold tracking-[0.9px] shadow-buttonLegacy ProductAddOrEdit-btn" ng-click="$root.blur(); openOptionsSelectModal();"><span ng-if="!product.totalPackagesInCart">View Options</span><span ng-if="product.totalPackagesInCart > 0"><span class="block mb-0.5 text-[94%]">View Options</span><span class="block opacity-70 text-[86%]">({{product.totalPackagesInCart}} in {{$root.appState.activeOrderNoun}})</span></span></button></div><div ng-if="::!product.treatAsActive && (!product.hasActivePackaging || pack.isInactive)"><button class="bg-brandYellow50 hocus:bg-brandYellow50Hover font-bold tracking-[0.9px] shadow-buttonLegacy ProductAddOrEdit-btn ProductAddOrEdit-btn--roundedInListItem" ng-click="$root.blur(); $root.appState.activeOrderState.modalSimilarProducts(product.id, pack && pack.code, parentFeaturePath)">View Similar<span ng-if="::!(viewSimilarShortLabel || viewSimilarAlwaysShortLabel)"> Products</span><span class="hidden lg:inline" ng-if="::viewSimilarShortLabel && !viewSimilarAlwaysShortLabel"> Products</span></button></div><div ng-if="
pack.freightHandlingRequired &&
!$root.userState.superUserId &&
!$root.appState.activeOrderState.order.getQuantity(pack.code) &&
!(!product.treatAsActive && (!product.hasActivePackaging || pack.isInactive))
"><button class="bg-brandYellow50 hocus:bg-brandYellow50Hover font-bold tracking-[0.9px] shadow-buttonLegacy ProductAddOrEdit-btn whitespace-nowrap" ng-click="addToCart()" ng-disabled="!$root.appState.activeOrderState.canShop">Learn how to buy</button></div><div class="flex relative" ng-if="$root.appState.activeOrderState.order.getQuantity(pack.code) > 0"><div class="w-full"><as-quantity-btn-group pack="pack" button-click="buttonClick()" editor-alignment="{{::editorAlignment}}" parent-feature-path="{{::parentFeaturePath}}"></as-quantity-btn-group></div></div><div class="flex relative" ng-if="
pack &&
!pack.isInactive &&
$root.appState.activeOrderState.order.getQuantity(pack.code) === 0 &&
(!pack.freightHandlingRequired || $root.userState.superUserId) &&
!product.selectedPackaging.isVendorOutOfStockNoUpcomingOrder
"><div><button class="bg-white hocus:bg-gray-50 QuickQty-btnOpen ProductAddOrEdit-btn flex items-center shadow-buttonLegacy font-bold tracking-[0.9px] !rounded-r-none rounded-l-lg" ng-click="openQuickQty()" ng-disabled="!$root.appState.activeOrderState.canShop">{{::qty}}<span class="icon-chevron-down ml-1.5 text-[8px] opacity-60"></span></button><div class="QuickQty p-2.5 cursor-default rounded bg-white shadow-buttonLegacyLg space-y-1.5 font-bold" ng-if="showQuickQty" ng-class="{'hidden': pack.busy}" ng-keydown="$event.keyCode === 27 && closeQuickQty(); $event.stopPropagation();"><button class="cursor-pointer select-none bg-brandYellow50 text-gray-950 hocus:bg-[#ffda6b] no-underline hocus:no-underline text-sm/[1.1] tracking-[0.9px] px-4 py-2.5 rounded-lg shadow-[0_2px_2px_0_rgba(0,0,0,0.16),0_0_0_1px_rgba(0,0,0,0.08)] w-full flex items-center justify-center whitespace-nowrap disabled:opacity-50 disabled:pointer-events-none [&.is-disabled]:opacity-50 [&.is-disabled]:pointer-events-none" ng-click="addToCart(1)" type="button" title=""><span>Add 1 to {{$root.appState.activeOrderNoun}}</span></button><button class="cursor-pointer select-none bg-brandYellow50 text-gray-950 hocus:bg-[#ffda6b] no-underline hocus:no-underline text-sm/[1.1] tracking-[0.9px] px-4 py-2.5 rounded-lg shadow-[0_2px_2px_0_rgba(0,0,0,0.16),0_0_0_1px_rgba(0,0,0,0.08)] w-full flex items-center justify-center whitespace-nowrap disabled:opacity-50 disabled:pointer-events-none [&.is-disabled]:opacity-50 [&.is-disabled]:pointer-events-none" ng-click="addToCart(2)" type="button" title=""><span>Add 2 to {{$root.appState.activeOrderNoun}}</span></button><button class="cursor-pointer select-none bg-brandYellow50 text-gray-950 hocus:bg-[#ffda6b] no-underline hocus:no-underline text-sm/[1.1] tracking-[0.9px] px-4 py-2.5 rounded-lg shadow-[0_2px_2px_0_rgba(0,0,0,0.16),0_0_0_1px_rgba(0,0,0,0.08)] w-full flex items-center justify-center whitespace-nowrap disabled:opacity-50 disabled:pointer-events-none [&.is-disabled]:opacity-50 [&.is-disabled]:pointer-events-none" ng-click="addToCart(3)" type="button" title=""><span>Add 3 to {{$root.appState.activeOrderNoun}}</span></button><div class="flex"><form class="w-full shadow-buttonLegacy rounded-lg" ng-submit="addToCart(customQuantity)"><label class="flex rounded-lg"><input class="FormItem-number py-2 font-normal shadow-none rounded-l-lg rounded-r-none border-r border-r-200 h-auto text-left pl-2 text-sm/none min-w-[34px] max-w-[54px]" id="js-quickQtyInput" ng-model="customQuantity" type="number" min="1" step="1" pattern="[0-9]*" placeholder="qty"><button class="flex-grow bg-brandYellow50 hocus:bg-brandYellow50Hover font-bold tracking-[0.9px] whitespace-nowrap h-[36px] rounded-r-lg text-sm" ng-class="{'pointer-events-none': !customQuantity}" type="submit">{{:: $root.viewportSm ? 'Add' : 'Add to ' + $root.appState.activeOrderNoun}}</button></label></form></div></div></div><button class="bg-brandYellow50 hocus:bg-brandYellow50Hover font-bold tracking-[0.9px] shadow-buttonLegacy ProductAddOrEdit-btn whitespace-nowrap !rounded-l-none rounded-r-lg" ng-click="addToCart(qty)" ng-disabled="!$root.appState.activeOrderState.canShop"><div ng-if="!pack.busy">Add to <span class="capitalize">{{$root.appState.activeOrderNoun}}</span></div><div class="icon-refresh Animate--spin" ng-if="pack.busy"></div></button></div></div><a class="bg-brandYellow50 hocus:bg-brandYellow50Hover font-bold tracking-[0.9px] shadow-buttonLegacy rounded-lg ProductAddOrEdit-btn text-inherit hocus:no-underline flex w-full items-center justify-center" ng-if="::product.treatAsActive && (!product.hasActivePackaging || pack.isInactive)" ui-sref="shop.product({ path: product.path, id: product.id, package: pack && pack.code })" ng-click="buttonClick()">View Details</a><button class="bg-gray-200 rounded-lg ProductAddOrEdit-btn ProductAddOrEdit--placeholder px-1.5 pointer-events-none" ng-if="(!product.treatAsActive || product.hasActivePackaging || (pack && !pack.isInactive)) && $root.appState.activeOrderState.order.cannotAddProduct(product)">{{$root.appState.activeOrderState.order.getProductWarning(product, 'short')}}</button><div class="fixed z-underlay inset-0 w-screen h-screen bg-black/30" ng-init="$root.underlayForElementClass = 'is-underlayShowing'" ng-click="$event.stopPropagation(); $event.preventDefault(); closeQuickQty();" ng-if="showQuickQty"></div></div></script><script id="inlineTemplates/root.htm" type="text/ng-template"><as-superuser-menu ng-if="::userState.superUserId"></as-superuser-menu><div class="Window" id="page-top"><div class="fixed top-1/2 -translate-y-1/2 z-500 -rotate-90 print:hidden" ng-if="userState.user.permissions.includes('staff')" style="left: -43px" title="{{$root.internalCmsState.currentPagePanelPath ?
'You are on the production build of the website.
Click to edit this page in the CMS.' + ($root.internalCmsState.isServingPreviewData ? '
This page is using draft (unpublished) data from the CMS.' : '') + '
This is only visible to Azure employees.' :
'You are on the production build of the website.
This is only visible to Azure employees.'
}}"><a class="px-4 py-2 border border-t-0 rounded-b text-gray-700 hover:no-underline inline-block group/cmsAnchor select-none bg-[#fefcd8] border-gray-300" ng-class="$root.internalCmsState.currentPagePanelPath ? '' : 'pointer-events-none cursor-default'" tooltip-append-to-body="true" tooltip-placement="right" href="https://cms.azurestandard.com/panel/{{$root.internalCmsState.currentPagePanelPath}}" ng-disabled="!$root.internalCmsState.currentPagePanelPath"> <span class="text-xs font-mono uppercase font-bold tracking-widest">Production</span><span class="absolute bottom-[-12px] right-[-10px] rotate-90 w-6 h-6 rounded-full" ng-if="$root.internalCmsState.currentPagePanelPath"><span class="relative w-full h-full block border group-hover/cmsAnchor:shadow rounded-full border-gray-300 group-hover/cmsAnchor:shadow-[#00a7e7] bg-[#fefcd8]"><span class="icon-pencil text-gray-500 text-[11px] absolute centerXY w-[11px] h-[11px]"></span></span></span><span class="absolute bottom-[-10px] right-[-8px] animate-ping inline-flex w-5 h-5 rounded-full bg-[#00a7e7] opacity-75 z-[-1]" ng-if="$root.internalCmsState.isServingPreviewData"></span></a></div><as-notifications ng-if="notifications.length"></as-notifications><div class="flex flex-col min-h-screen" ng-if="$state.current.data.useBlankLayout"><div class="flex-1 basis-full" ui-view></div></div><div class="flex flex-col min-h-screen" ng-if="!$state.current.data.useBlankLayout"><as-header-mobile ng-if="::viewportSm"></as-header-mobile><as-header ng-if="::!viewportSm"></as-header><as-nav-slideout></as-nav-slideout><div class="flex-1 basis-full" ui-view></div><footer class="mt-5 sm:mt-16 bg-tempRoom py-5 print:hidden"><div class="Container"><div class="flex flex-wrap text-lg/none"><div class="mb-5 flex-1 basis-full sm:basis-1/2 sm:pr-8 md:basis-1/4"><h4 class="text-2xl tracking-wide text-white whitespace-nowrap mb-2.5">About Us</h4><ul><li><a class="block text-gray-700 py-1.5 leading-snug" ui-sref="cmsTopLevelPage({slug: 'support'})">Contact Us</a></li><li><a class="block text-gray-700 py-1.5 leading-snug" ui-sref="cmsTopLevelPage({slug: 'about-us'})">Who We Are</a></li><li><a class="block text-gray-700 py-1.5 leading-snug" ui-sref="cmsTopLevelPage({slug: 'history-of-azure'})">Our History</a></li><li><a class="block text-gray-700 py-1.5 leading-snug" ui-sref="cmsCoreValuesIndex">Core Values</a></li><li><a class="block text-gray-700 py-1.5 leading-snug" ui-sref="cmsTopLevelPage({slug: 'azure-product-standards'})">Product Standards</a></li><li><a class="block text-gray-700 py-1.5 leading-snug" ui-sref="cmsCareersIndex">Careers At Azure</a></li></ul></div><div class="mb-5 flex-1 basis-full sm:basis-1/2 sm:pr-8 md:basis-1/4"><h4 class="text-2xl tracking-wide text-white whitespace-nowrap mb-2.5">Join In</h4><ul><li><a class="block text-gray-700 py-1.5 leading-snug" ui-sref="cmsTopLevelPage({slug: 'get-organic-products-delivered'})">How It All Works</a></li><li><a class="block text-gray-700 py-1.5 leading-snug" ui-sref="findDrop">Find A Drop</a></li><li><a class="block text-gray-700 py-1.5 leading-snug" ui-sref="cmsTopLevelPage({slug: 'catalog-request'})">Request A Catalog/Sales Flyer</a></li><li><a class="block text-gray-700 py-1.5 leading-snug" ui-sref="cmsTopLevelPage({slug: 'suggest-a-product'})">Suggest A Product</a></li><li><a class="block text-gray-700 py-1.5 leading-snug" ui-sref="cmsTopLevelPage({slug: 'wholesale'})">Wholesale Customers</a></li><li><a class="block text-gray-700 py-1.5 leading-snug" ui-sref="cmsTopLevelPage({slug: 'blogger-affiliates'})">Share Azure Affiliate Program</a></li></ul></div><div class="mb-5 flex-1 basis-full sm:basis-1/2 sm:pr-8 md:basis-1/4"><h4 class="text-2xl tracking-wide text-white whitespace-nowrap mb-2.5">Drop Coordinators</h4><ul><li><a class="block text-gray-700 py-1.5 leading-snug" ui-sref="cmsTopLevelPage({slug: 'how-to-start-an-azure-drop'})">Start Your Own Drop</a></li><li><a class="block text-gray-700 py-1.5 leading-snug" ui-sref="cmsTopLevelPage({slug: 'azure-drop-coordinators'})">Your Drop On Facebook</a></li><li><a class="block text-gray-700 py-1.5 leading-snug" ui-sref="cmsTopLevelPage({slug: 'drop-coordinator-marketing-kit'})">Drop Marketing Kit</a></li><li><a class="block text-gray-700 py-1.5 leading-snug" ui-sref="cmsTopLevelPage({slug: 'azures-anchor-drops'})">Anchor Drops</a></li></ul></div><div class="mb-5 flex-1 basis-full sm:basis-1/2 sm:pr-8 md:basis-1/4"><h4 class="text-2xl tracking-wide text-white whitespace-nowrap mb-2.5">Azure Links</h4><ul><div class="flex space-x-1 mt-3 mb-2 py-0.5" ng-if="userState.user['allow-social-media'] || !userState.user"> <a class="hover:no-underline w-[30px] h-[30px] bg-gray-500/80 text-gray-100 rounded flex items-center justify-center hover:text-white hover:bg-logoFacebook" href="https://www.facebook.com/azurestandard" uib-tooltip="Visit us on Facebook"><span class="icon-facebook"></span></a><a class="hover:no-underline w-[30px] h-[30px] bg-gray-500/80 text-gray-100 rounded flex items-center justify-center hover:text-white hover:bg-logoTwitter" href="https://twitter.com/azurestandard" uib-tooltip="Visit us on Twitter"><span class="icon-twitter"></span></a><a class="hover:no-underline w-[30px] h-[30px] bg-gray-500/80 text-gray-100 rounded flex items-center justify-center hover:text-white hover:bg-logoYoutube" href="https://www.youtube.com/c/azurestandard" uib-tooltip="Visit us on Youtube"> <span class="icon-youtube"></span></a><a class="hover:no-underline w-[30px] h-[30px] bg-gray-500/80 text-gray-100 rounded flex items-center justify-center hover:text-white hover:bg-logoInstagram" href="https://www.instagram.com/azurestandard" uib-tooltip="Visit us on Instagram"><span class="icon-instagram"></span></a><a class="hover:no-underline w-[30px] h-[30px] bg-gray-500/80 text-gray-100 rounded flex items-center justify-center hover:text-white hover:bg-logoPinterest" href="https://www.pinterest.com/azurestandard" uib-tooltip="Visit us on Pinterest"><span class="icon-pinterest"></span></a><a class="hover:no-underline w-[30px] h-[30px] bg-gray-500/80 text-gray-100 rounded flex items-center justify-center hover:text-white hover:bg-logoGab" href="https://gab.com/azurestandard" uib-tooltip="Visit us on Gab"><span class="icon-gab"></span></a></div><li><a class="block text-gray-700 py-1.5 leading-snug" ui-sref="cmsTopLevelPage({slug: 'azure-healthy-food-publications'})">Azure Publications</a></li><li><a class="block text-gray-700 py-1.5 leading-snug" ui-sref="cmsTopLevelPage({slug: 'vendors-and-suppliers'})">Azure Vendor Resources</a></li><li><a class="block text-gray-700 py-1.5 leading-snug" ui-sref="cmsAzureLifeSearch({scope: 'blog'})">Azure Blog</a></li><li><a class="block text-gray-700 py-1.5 leading-snug" href="https://podcast.azurestandard.com">Podcast</a></li><li><a class="block text-gray-700 py-1.5 leading-snug" ui-sref="shop.brands">Brands Azure Sells</a></li><li><a class="block text-gray-700 py-1.5 leading-snug" ui-sref="cmsAzureLifeSearch({scope: 'recipes'})">Organic Food Recipes</a></li><li><a class="block text-gray-700 py-1.5 leading-snug" ui-sref="cmsTopLevelPage({slug: 'frequently-asked-questions'})">Frequently Asked Questions</a></li><li><a class="block text-gray-700 py-1.5 leading-snug" ui-sref="cmsTopLevelPage({slug: 'azure-product-pricing'})">Pricing & Billing Info</a></li><li><a class="block text-gray-700 py-1.5 leading-snug" ui-sref="home">Home</a></li></ul></div></div><div class="rounded-md px-2.5 pt-2.5 inline-block mb-5 bg-white/70" ng-if="userState.isUser && userState.user['is-allowed-to-be-affiliate'] && $state.current.data.shareable"><div class="font-bold mb-2">Share Azure, earn {{::userState.user['affiliate-campaign'] === 'lead' ? '$25' : '2%'}}</div><div class="mb-2.5 text-sm text-gray-600"><span ng-if="::userState.user['affiliate-campaign'] === 'lead'">Receive $25 Azure credit for each new qualifying customer you refer (<a class="underline" ui-sref="cmsTopLevelPage({slug: 'share-azure-program'})">full details</a>).</span><span ng-if="::userState.user['affiliate-campaign'] === 'community'">Receive 2% of the value of all orders shipped to customers you refer (<a class="underline" ui-sref="cmsTopLevelPage({slug: 'share-azure-program'})">full details</a>).</span></div><div class="flex flex-wrap justify-between items-center"><div class="text-[24px] flex justify-end shrink-0 items-center mb-2.5 mr-2" ng-if="userState.user['allow-social-media']"><button class="text-[#4267B2]/70 hover:text-logoFacebook hover:no-underline block pr-2" ng-click="$root.openSocialSharingWindow('https://www.facebook.com/share.php?u=' + $root.getCurrentPageUrlWithMaybeAffiliateId())" title="Share on Facebook"><span class="icon-facebook"></span></button><button class="text-[#1DA1F2]/70 hover:text-logoTwitter hover:no-underline block px-2" ng-click="$root.openSocialSharingWindow('https://twitter.com/share?hashtags=iazure,azurestandard&url=' + $root.getCurrentPageUrlWithMaybeAffiliateId())" title="Share on Twitter"><span class="icon-twitter"></span></button><button class="text-[#E60023]/70 hover:text-logoPinterest hover:no-underline block pl-2" ng-click="$root.openSocialSharingWindow('https://pinterest.com/pin/create/button?media=' + head.primaryImageSrc + '&url=' + $root.getCurrentPageUrlWithMaybeAffiliateId() + '&description=' + head.meta.description)" title="Share on Pinterest"><span class="icon-pinterest"></span></button></div><div class="mb-2.5"><button class="cursor-pointer select-none text-gray-700 no-underline hocus:no-underline bg-white hocus:bg-gray-50 text-sm/[1.1] tracking-[0.9px] px-3 py-1.5 rounded-lg shadow-[0_2px_2px_0_rgba(0,0,0,0.16),0_0_0_1px_rgba(0,0,0,0.08)] flex items-center justify-center whitespace-nowrap disabled:opacity-50 disabled:pointer-events-none [&.is-disabled]:opacity-50 [&.is-disabled]:pointer-events-none" type="button" title="" as-click-to-copy copy-text="{{$root.getCurrentPageUrlWithMaybeAffiliateId()}}"><span>Copy Link</span></button></div></div></div><button class="cursor-pointer select-none text-gray-700 no-underline hocus:no-underline bg-white hocus:bg-gray-50 text-xs/[1.1] tracking-[0.9px] px-2 py-1.5 rounded-lg shadow-[0_2px_2px_0_rgba(0,0,0,0.16),0_0_0_1px_rgba(0,0,0,0.08)] mb-4 flex items-center justify-center whitespace-nowrap disabled:opacity-50 disabled:pointer-events-none [&.is-disabled]:opacity-50 [&.is-disabled]:pointer-events-none" ng-click="$root.clickedRequestHelpCode()" type="button" title="" ng-if="$root.showRequestHelpCodeButton"><span>Get a help code</span></button><div class="text-sm text-white/80 mr-12" role="contentinfo">©Azure Standard | 79709 Dufur Valley Road, Dufur, OR 97021 | Phone Orders: <a class="text-inherit hover:text-white/100 whitespace-nowrap underline" ng-href="tel:{{::userState.supportChannels.phoneE164}}">{{::userState.supportChannels.phoneDisplay}}</a> | Fax: <a class="text-inherit hover:text-white/100 whitespace-nowrap underline" href="tel:+19716454759">(971) 645-4759</a> | <a class="text-inherit hover:text-white/100 whitespace-nowrap underline" ui-sref="cmsTopLevelPage({slug: 'terms-of-use'})">Terms of use</a> | <a class="text-inherit hover:text-white/100 whitespace-nowrap underline" ui-sref="cmsTopLevelPage({slug: 'privacy-policy'})">Privacy Policy</a></div></div></footer><button class="ScrollToTop print:hidden cursor-pointer fixed right-0 bg-gray-700 w-[40px] h-[40px] text-white text-center tracking-[1px] rounded text-[12px] hover:bg-gray-900 active:bg-gray-900 focus:outline-none" as-toggle-class-via-int-observer toggle-class="is-visible" observer-target-id="js-body" root-margin="1000px" threshold="1.0" as-scroll-to="#page-top"><div class="icon-chevron-up mb-1 text-[14px]"></div>TOP</button></div></div><as-alerts ng-if="alerts.length"></as-alerts></script><script id="inlineTemplates/navSlideout.htm" type="text/ng-template"><nav class="NavSlideout" ng-class="{'is-visible' : showNavSlideout}"><button class="Slideout-btnX" aria-label="Close" ng-click="toggleNavSlideout()"><span class="icon-times"></span></button><div class="Slideout-header"><div class="w-full h-full flex items-center"><button class="h-full opacity-70 px-4 hocus:outline-none hocus:opacity-90" ng-click="$root.blur(); goToMenu(activeMenu.parentId)" ng-if="activeMenu.level > 0"><span class="icon-chevron-left"></span></button><div class="Slideout-heading">{{activeMenu.heading}}</div></div><a class="w-full relative flex items-center bg-gray-100 text-gray-600 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline h-minTapTarget shadow-[0_6px_7px_rgba(0,0,0,0.2)]" ng-repeat="parent in ::rootCategories track by parent.id" ng-if="activeMenu.id === 'shop-child' && currentCatId === parent.id" ui-sref="shop.category({path: parent.path, id: parent.id, query: '', tag: '', sort: '', subcategories: true, brand: ''})" ui-sref-opts="{reload: true}"> All {{parent.name}}<span class="icon-chevron-right absolute right-2.5 text-xs/none top-1/2 transform -translate-y-1/2"></span></a><a class="w-full relative flex items-center bg-gray-100 text-gray-600 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline h-minTapTarget shadow-[0_6px_7px_rgba(0,0,0,0.2)]" ng-if="activeMenu.id === 'shop-lists' || activeMenu.id === 'shop-followed-lists'" ui-sref="shop.listsHome" ui-sref-opts="{reload: true}">All Shop Lists<span class="icon-chevron-right absolute right-2.5 text-xs/none top-1/2 transform -translate-y-1/2"></span></a></div><div class="Slideout-body" ng-class="{'Slideout-body--hasSubheading': activeMenu.hasSubheading}"><ul ng-if="activeMenu.id === 'main'"><li class="NavSlideout-li" ng-if="$state.current.name !== 'home'"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" ng-click="$state.go('home')">Home</a></li><li class="NavSlideout-li NavSlideout-li--hasChildren" ng-class="{'is-childActive': $state.includes('shop')}"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" ng-click="openShopMenu()"> <span class="relative"> Shop<span class="Noticemark" ng-if="$root.activeNoticemarks.includes($root.noticemarks.shopMenuMyLists) || (followedLists.length > 0 && $root.activeNoticemarks.includes($root.noticemarks.shopMenuFollowedLists))"></span></span></a></li><li class="NavSlideout-li NavSlideout-li--hasChildren" ng-class="{'is-childActive': $state.is('cmsCoreValuesIndex') || $state.is('cmsCoreValuesEntry') || ( $state.is('cmsTopLevelPage') && $state.params.slug === 'about-us' || $state.params.slug === 'history-of-azure' || $state.params.slug === 'azure-product-standards' || $state.params.slug === 'who-we-are' ) }"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" ng-click="goToMenu('about')">About</a></li><li class="NavSlideout-li" ng-class="{'is-active': $state.is('cmsAzureLifeIndex') || $state.is('cmsBlogEntry') || $state.is('cmsRecipesSearch') || $state.is('cmsRecipesEntry') || $state.is('cmsAzureLifeIndex') || $state.is('cmsAzureLifeEntry') || $state.is('cmsCategoriesEntry') || $state.is('cmsSubcategoriesEntry') }"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" ui-sref="cmsAzureLifeIndex" ui-sref-opts="{reload: true}">Azure Life</a></li><li class="NavSlideout-li NavSlideout-li--hasChildren" ng-if="userState.user['is-drop-coordinator']" ng-keyup="$event.keyCode === 13 && loadDcDropMemberships(parent);" ng-class="{'is-childActive': $state.includes('dc')}"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" ng-click="goToMenu('dc'); loadDcDropMemberships();">Drop Coordinator</a></li><li class="NavSlideout-li NavSlideout-li--hasChildren" ng-if="userState.isHomeDeliveryDriver" ng-keyup="$event.keyCode === 13 && loadDdDropMemberships(parent);" ng-class="{'is-active': $state.includes('dd')}"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" ng-click="goToMenu('dd'); loadDdDropMemberships();">Drop Driver</a></li><li class="NavSlideout-li NavSlideout-li--hasChildren" ng-if="userState.id" ng-class="{'is-childActive': $state.includes('account')}"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" ng-click="goToMenu('account-root')">My Account</a></li><li class="NavSlideout-li" ui-sref-active="is-active"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" ui-sref="cmsTopLevelPage({slug: 'support'})" ui-sref-opts="{reload: true}">Contact Us</a></li><li class="NavSlideout-li"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline capitalize" ng-disabled="!appState.activeOrderState" ng-click="appState.activeOrderState.modalEditOrder(true, featurePath + ':menu'); $root.showSlideoutCart = false;">My {{ appState.activeOrderNoun }}</a></li><li ng-if="!userState.isVisitor"><span class="block h-[1px] w-full my-2.5 px-2.5"><span class="h-[1px] bg-gray-300 block"></span></span><a class="hocus:no-underline tet-gray-700 px-2.5 py-2.5 flex items-center" ui-sref="account.profile" ui-sref-opts="{reload: true}"><div class="shrink-0 text-xl/none text-gray-500 border border-gray-200 rounded-full bg-gray-100 flex items-center justify-center mr-2.5 size-[50px]"> {{::userState.user.initials}}</div><div class="text-sm truncate"><div class="whitespace-nowrap text-brandBlue90 truncate">{{userState.user.name}}</div><div class="opacity-70 whitespace-nowrap truncate">{{userState.user.email}}</div><div class="opacity-70 whitespace-nowrap truncate">(account #{{::userState.id}})</div></div></a></li><span class="block h-[1px] w-full my-2.5 px-2.5"><span class="h-[1px] bg-gray-300 block"></span></span><li class="NavSlideout-li"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" ng-if="!userState.id" ng-click="launchSignInModal(featurePath + ':menu')">Sign In</a><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" ng-if="userState.id" ui-sref="signOut({featurePath: featurePath + ':menu'})">Sign Out</a></li></ul><ul ng-if="!showShopChild && activeMenu.id === 'dc'"><li class="NavSlideout-li" ui-sref-active="is-active"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" ui-sref="dc.overview" ui-sref-opts="{reload: true}">DC Overview</a></li><li class="NavSlideout-li" ui-sref-active="is-active"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" ui-sref="dc.support" ui-sref-opts="{reload: true}">DC Support</a></li><li class="NavSlideout-li" ng-if="dropMemberships && dropMemberships.length && dropMembership.dropView.coordinators.includes(appState.userState.id)" ng-repeat="dropMembership in dropMemberships" ng-class="{'is-active': $state.includes('dc.dcDrop', {dropId: dropMembership.dropView.id})}"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" ui-sref="dc.dcDrop({dropId: dropMembership.dropView.id})" ui-sref-opts="{reload: true}">{{dropMembership.dropView.name}}</a></li></ul><ul ng-if="!showShopChild && activeMenu.id === 'dd'"><li class="NavSlideout-li" ui-sref-active="is-active"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" ui-sref="dd.overview" ui-sref-opts="{reload: true}">Overview</a></li><li class="NavSlideout-li" ng-if="ddDropMemberships && ddDropMemberships.length" ng-repeat="ddDropMembership in ddDropMemberships" ng-class="{'is-active': $state.includes('dd.drop', {dropId: ddDropMembership.dropView.id})}"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" ui-sref="dd.drop.dropDaysIndex({dropId: ddDropMembership.dropView.id})" ui-sref-opts="{reload: true}">{{ddDropMembership.dropView.name}}</a></li></ul><ul ng-if="!showShopChild && activeMenu.id === 'about'"><li class="NavSlideout-li" ui-sref-active="is-active"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" ui-sref="cmsTopLevelPage({slug: 'who-we-are'})" ui-sref-opts="{reload: true}">Who We Are</a></li><li class="NavSlideout-li" ui-sref-active="is-active"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" ui-sref="cmsTopLevelPage({slug: 'history-of-azure'})" ui-sref-opts="{reload: true}">Our History</a></li><li class="NavSlideout-li" ng-class="{'is-active': $state.is('cmsCoreValuesIndex') || $state.is('cmsCoreValuesEntry')}"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" ui-sref="cmsCoreValuesIndex" ui-sref-opts="{reload: true}">Core Values</a></li><li class="NavSlideout-li" ui-sref-active="is-active"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" ui-sref="cmsTopLevelPage({slug: 'azure-product-standards'})" ui-sref-opts="{reload: true}">Product Standards</a></li></ul><ul ng-if="!showShopChild && activeMenu.id === 'account-root'"><li class="NavSlideout-li" ui-sref-active="is-active" ng-if="userState.user['is-drop-coordinator']"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" ui-sref="dc.overview" ui-sref-opts="{reload: true}">Drop Coordinator</a></li><li class="NavSlideout-li" ng-if="userState.isHomeDeliveryDriver" ng-class="{'is-active': $state.includes('dd')}"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" ui-sref="dd.overview" ui-sref-opts="{reload: true}">Drop Driver</a></li><li class="NavSlideout-li" ui-sref-active="is-active"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" ui-sref="account.drops" ui-sref-opts="{reload: true}">Drops</a></li><li class="NavSlideout-li" ui-sref-active="is-active"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" ui-sref="account.orders({page: 1})" ui-sref-opts="{reload: true}">Orders</a></li><li class="NavSlideout-li" ui-sref-active="is-active"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" ui-sref="account.lists" ui-sref-opts="{reload: true}">Lists</a></li><li class="NavSlideout-li" ui-sref-active="is-active"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" ui-sref="account.profile" ui-sref-opts="{reload: true}">My Info</a></li><li class="NavSlideout-li" ui-sref-active="is-active"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" ui-sref="account.billing" ui-sref-opts="{reload: true}">Billing</a></li><li class="NavSlideout-li" ui-sref-active="is-active"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" ui-sref="account.notifications" ui-sref-opts="{reload: true}">Notifications</a></li><li class="NavSlideout-li" ui-sref-active="is-active" ng-if="::userState.priceSettings.rewardsRate"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" ui-sref="account.azureCash" ui-sref-opts="{reload: true}">Azure Cash</a></li><li class="NavSlideout-li" ui-sref-active="is-active" ng-if="userState.user['is-allowed-to-be-affiliate']"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" ui-sref="account.shareAzure" ui-sref-opts="{reload: true}">Share Azure</a></li></ul><ul ng-if="activeMenu.id === 'shop-root'"><li class="NavSlideout-li NavSlideout-li--hasChildren" tabindex="0" ng-keyup="$event.keyCode === 13 && toggleShopCat(parent);" ng-repeat="parent in ::rootCategories | orderBy: 'name' track by parent.id" ng-if="parent.active"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" ng-click="goToMenu('shop-child'); toggleShopCat(parent)">{{parent.name}}</a></li><span class="block h-[1px] w-full my-2.5 px-2.5"><span class="h-[1px] bg-gray-300 block"></span></span><li class="NavSlideout-li" ng-if="::userState.isUser && userState.hasPlacedFirstOrder" tabindex="0" ng-keyup="$event.keyCode === 13 && $state.go('shop.ordered', {query: '', tag: '', clearance: false, brand: '', category: '', sort: ''}, {reload: true});" ng-class="{'is-active': $state.is('shop.ordered') }"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" tabindex="-1" ui-sref="shop.ordered({query: '', tag: '', clearance: false, brand: '', category: '', sort: ''})" ui-sref-opts="{reload: true}" ng-attr-as-dismiss-noticemark-on-click="{{::$root.noticemarks.shopMenuProductIveOrdered}}"> <span class="relative">Products I've Ordered<span class="Noticemark" ng-if="$root.activeNoticemarks.includes($root.noticemarks.shopMenuProductIveOrdered)"></span></span></a></li><li class="NavSlideout-li NavSlideout-li--hasChildren" ng-if="::userState.isUser" tabindex="0" ng-keyup="$event.keyCode === 13 && goToMenu('shop-lists'); $event.keyCode === 13 && toggleShopLists()"><a class="text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline flex items-center" ng-click="goToMenu('shop-lists'); toggleShopLists()" ng-attr-as-dismiss-noticemark-on-click="{{::$root.noticemarks.shopMenuMyLists}}"><span class="flex-1 whitespace-nowrap"> <span class="relative"> My Lists<span class="Noticemark" ng-if="$root.activeNoticemarks.includes($root.noticemarks.shopMenuMyLists)"></span></span></span></a></li><li class="NavSlideout-li NavSlideout-li--hasChildren" ng-if="userState.isUser && followedLists.length > 0" tabindex="0" ng-keyup="$event.keyCode === 13 && goToMenu('shop-followed-lists'); $event.keyCode === 13 && toggleFollowedLists()"><a class="text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline flex items-center" ng-click="goToMenu('shop-followed-lists'); toggleFollowedLists()" ng-attr-as-dismiss-noticemark-on-click="{{::$root.noticemarks.shopMenuFollowedLists}}"><span class="flex-1 whitespace-nowrap"> <span class="relative"> Followed Lists<span class="Noticemark" ng-if="$root.activeNoticemarks.includes($root.noticemarks.shopMenuFollowedLists)"></span></span></span></a></li><li class="NavSlideout-li" tabindex="0" ng-keyup="$event.keyCode === 13 && $state.go('shop.tag', {slug: 'new', query: '', tag: '', brand: '', category: '', sort: ''});" ng-class="{'is-active': $state.includes('shop.tag', {slug: 'new'}) }"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" tabindex="-1" ui-sref="shop.tag({slug: 'new', query: '', tag: '', brand: '', category: '', sort: ''})" ui-sref-opts="{reload: true}">New Products</a></li><li class="NavSlideout-li" tabindex="0" ng-keyup="$event.keyCode === 13 && $state.go('shop.tag', {slug: 'on-sale', query: '', tag: '', brand: '', category: '', sort: ''});" ng-class="{'is-active': $state.includes('shop.tag', {slug: 'on-sale'}) }"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" tabindex="-1" ui-sref="shop.tag({slug: 'on-sale', query: '', tag: '', brand: '', category: '', sort: ''})" ui-sref-opts="{reload: true}">Sales</a></li><li class="NavSlideout-li" ng-if="::userState.priceSettings.rewardsRate" tabindex="0" ng-keyup="$event.keyCode === 13 && $state.go('shop.bonusAzureCash', {query: '', tag: '', brand: '', category: '', sort: ''});" ng-class="{'is-active': $state.is('shop.bonusAzureCash') }"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" tabindex="-1" ui-sref="shop.bonusAzureCash({query: '', tag: '', brand: '', category: '', sort: ''})" ui-sref-opts="{reload: true}">Bonus Azure Cash</a></li><li class="NavSlideout-li" tabindex="0" ng-keyup="$event.keyCode === 13 && $state.go('shop.clearance', {query: '', tag: '', clearance: false, brand: '', category: '', sort: ''});" ng-class="{'is-active': $state.is('shop.clearance') }"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" tabindex="-1" ui-sref="shop.clearance({query: '', tag: '', clearance: false, brand: '', category: '', sort: ''})" ui-sref-opts="{reload: true}">Clearance</a></li><li class="NavSlideout-li" ui-sref-active="is-active" tabindex="0" ng-keyup="$event.keyCode === 13 && $state.go('shop.brands');"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" tabindex="-1" ui-sref="shop.brands" ui-sref-opts="{reload: true}">Brands</a></li></ul><ul ng-repeat="parent in ::rootCategories | orderBy: 'name' track by parent.id" ng-if="activeMenu.id === 'shop-child' && currentCatId === parent.id"><li class="NavSlideout-li" ng-repeat="child in childCategories | orderBy: 'shortNameOrName'"><a class="block text-gray-700 px-2.5 py-2.5 hocus:bg-gray-50 hocus:no-underline" ui-sref="shop.category({path: child.path, id:child.id, query: '', tag: '', sort: '', subcategories: '', brand: ''})" ui-sref-opts="{reload: true}">{{child.shortNameOrName}}</a></li></ul><ul ng-if="activeMenu.id === 'shop-lists'"><li class="NavSlideout-li" ng-repeat="list in userLists track by list.id" ng-if="list.uid" tabindex="0" ng-keyup="$event.keyCode === 13 && $state.go('shop.lists', {uid: list.uid});" ng-class="{'is-active': $state.is('shop.lists', {uid: list.uid})}"><a class="block text-gray-700 px-2.5 py-2 hocus:bg-gray-50 hocus:no-underline" tabindex="-1" ui-sref="shop.lists({uid: list.uid})"><div class="font-medium truncate leading-normal">{{list.name}}</div></a></li></ul><ul ng-if="activeMenu.id === 'shop-followed-lists'"><li class="NavSlideout-li" ng-repeat="list in followedLists track by list.uid || list.name" ng-if="list.uid" tabindex="0" ng-keyup="$event.keyCode === 13 && $state.go('shop.lists', {uid: list.uid});" ng-class="{'is-active': $state.is('shop.lists', {uid: list.uid})}"><a class="block text-gray-700 px-2.5 py-2 hocus:bg-gray-50 hocus:no-underline" tabindex="-1" ui-sref="shop.lists({uid: list.uid})"><div class="font-medium truncate leading-normal">{{list.name}}</div><div class="text-xs text-gray-500" ng-if="list.customerDisplayName">{{list.customerDisplayName}}</div></a></li></ul></div></nav><div class="Window-overlay" ng-click="toggleNavSlideout()" ng-class="{'is-visible': showNavSlideout}"></div></script><script id="inlineTemplates/newVersionModal.htm" type="text/ng-template"><div class="Modal Modal--centerY Modal--headless"><div class="Modal-body py-7 text-center bg-legacyYellow10"><button class="absolute top-0 right-0 p-2.5 opacity-50 hover:opacity-100" ng-click="$dismiss()" type="button" aria-label="Close"><span class="icon-times"></span></button><div class="mb-5">A <strong>new version</strong> of the website is available.</div><button class="cursor-pointer select-none bg-blue-600 text-blue-50 hocus:bg-blue-600/90 no-underline hocus:no-underline text-base/[1.1] tracking-[0.9px] px-6 py-3 rounded-lg shadow-[0_2px_2px_0_rgba(0,0,0,0.16),0_0_0_1px_rgba(0,0,0,0.08)] mx-auto flex items-center justify-center whitespace-nowrap disabled:opacity-50 disabled:pointer-events-none [&.is-disabled]:opacity-50 [&.is-disabled]:pointer-events-none" ng-click="refresh()" type="button" title=""><span>Refresh</span></button></div></div></script><script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496" integrity="sha512-ZE9pZaUXND66v380QUtch/5sE9tPFh2zg45pR2PB0CVkCtOREv2AJKkSidISWkysEuQ0EH8faUU5du78bx87UQ==" data-cf-beacon='{"version":"2024.11.0","token":"fb72868df00544499481be5a50a8d03e"}' crossorigin="anonymous"></script>
</body></html>
Sitemap
Кол-во: 0
XML-карта сайта для поисковиков
?
Sitemap.xml помогает поисковику быстрее находить и индексировать страницы. Особенно важен для крупных сайтов и новых страниц, на которые ещё нет входящих ссылок.
Robots.txt не содержит ссылку на карту сайта. Рекомендуется добавить карту сайта и указать ссылку на нее в robots.txt.
Внутренние ссылки
Не найдено
Ссылки на другие страницы своего сайта
?
Внутренние ссылки распределяют ссылочный вес между страницами и помогают поисковику обходить сайт. Пустые анкоры и ссылки на запрещённые robots.txt страницы — типичные ошибки.
Внутренних ссылок на странице 0 оптимально.
Внешние ссылки
Не найдено
Ссылки на сторонние сайты
?
Исходящие внешние ссылки передают часть ссылочного веса на чужие сайты. Ссылки на авторитетные ресурсы безопасны; ссылки на мусорные сайты могут навредить репутации страницы.
Внешних ссылок на странице не найдено.
Конкуренты Готовность: 0%
Конкуренты в Яндексе
Кол-во: 0
Топ сайтов-конкурентов в Яндексе
?
Сайты, чаще всего появляющиеся в ТОПе Яндекса по запросам из семантического ядра этой страницы.
Мы не нашли у вас конкурентов в Яндексе. Сайт или очень молодой или плохо продвигается.
Конкурентов в ТОП-10 Яндекса не нашлось.
Конкуренты в Google
Кол-во: 0
Топ сайтов-конкурентов в Google
?
Сайты, чаще всего появляющиеся в ТОПе Google по запросам из семантического ядра этой страницы.
Конкуренты в Google тоже не найдены. Займитесь продвижением сайта!
Конкурентов в ТОП-10 Google не нашлось.
ЗоЗПП: права потребителей Готовность: 100%
Нарушения
Не выявлены
Признаков дистанционной продажи товаров (интернет-магазина) не обнаружено — требования ЗоЗПП о раскрытии информации продавца к сайту не применяются. Нарушений нет.
ФЗ-149: рекомендательные технологии Готовность: 100%
Нарушения
Не выявлены
Рекомендательные блоки («с этим покупают», «похожие товары» и т.п.) на сайте не обнаружены — требования ст. 10.7 ФЗ-149 к сайту не применяются. Нарушений нет.
ФЗ-38: реклама Готовность: 100%
Нарушения
Не выявлены
Рекламных тематик с обязательными оговорками (медицина, БАД, кредиты и займы, новостройки) на сайте не обнаружено. Нарушений нет.
ФЗ-436: защита детей Готовность: 100%
Нарушения
Не выявлены
Признаков информационной продукции (новости, видео, книги, игры, курсы) не обнаружено — обязательная возрастная маркировка по ФЗ-436 сайту не требуется. Нарушений нет.
Вердикт
Сайт seedsofdeception.com не совсем готов к продвижению (процент готовности лишь 36%). Для попадания в ТОПы поисковых систем нужно:
Исправьте ошибки в мета-тегах.
Исправьте ошибки оптимизации.
Исправьте ошибки индексации.
Поделитесь с друзьями: