/* Градиентный текст как у bg-clip-text + bg-gradient-to-r from-white to-[#9EC6FF] */
.fhv2-title-gradient{
  display:inline-block;                 /* важно для корректного клипа */
  background: linear-gradient(167deg, #ffffff 0%, #7FB2FF 100%);
  -webkit-background-clip: text;        /* Safari/Chrome */
  background-clip: text;                /* стандартизированное */
  color: transparent;                   /* убираем цвет текста */
  -webkit-text-fill-color: transparent; /* Safari */
}
.decoration-dotted {
    text-decoration-color: rgba(255,255,255,0.45);
}
/* (необязательно) ховер/акцент — слегка подсветить */
.fhv2-title-gradient:hover{
  filter: brightness(1.05);
}
/* ===== LIVE SALE POPUP – MM2BEAST STYLE v2 ===== */
.fa-hide-sales-popup .pi-popup {
    display: none !important;
}
/* состояние загрузки для add-to-cart */
.bs-btn-add.is-loading {
    position: relative;
    pointer-events: none;
    opacity: 0.85;
}

.fa-mini-remove {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 999px;
    border: 1px solid rgba(148, 163, 184, 0.45); /* #94A3B8 ~ slate-400 */
    color: #9CA3AF; /* slate-400 */
    background: rgba(15, 23, 42, 0.7); /* тёмный фон */
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease, transform 0.1s ease;
    flex-shrink: 0;
}
.fa-promo-bar {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 60;
    background: linear-gradient(90deg, #226BE0, #2D7FF9);
    color: #fff;
    font-size: 13px;
}
.mainik {
  padding-top: 151px!important;
}
.fa-promo-inner {
    max-width: 1280px;
    margin: 0 auto;
    padding: 8px 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

@media (max-width: 768px) {
    .fa-promo-inner {
        
        gap: 4px;
        text-align: center;
        font-size: 12px;
    }
}

/* чтобы хедер не залезал на плашку */
body.home header {
    top: 36px;
}
.fa-mini-remove__icon {
    width: 12px;
    height: 12px;
}

.fa-mini-remove:hover {
    background: rgba(148, 163, 184, 0.18);
    border-color: rgba(148, 163, 184, 0.9);
    color: #E5E7EB; /* светлее крестик */
    transform: translateY(-1px);
}
@media (min-width:769px){
  
.woocommerce-checkout-payment {
  padding-bottom: 90px!important;
}
}
.fa-mini-remove:active {
    transform: translateY(0);
}
/* прячем текст, чтобы не прыгал */
.bs-btn-add.is-loading > * {
    opacity: 0;
}

/* сам спиннер */
.bs-btn-add.is-loading::after {
    content: "";
    position: absolute;
    inset: 0;
    margin: auto;
    width: 18px;
    height: 18px;
    border-radius: 999px;
    border: 2px solid rgba(255,255,255,0.25);
    border-top-color: #ffffff;
    animation: fa-spin 0.7s linear infinite;
}

@keyframes fa-spin {
    to {
        transform: rotate(360deg);
    }
}
.pi-popup {

  border-radius: 37px;
  z-index: 9999;
  width: 37vw;
  display: flex;
  align-items: center;
  gap: 12px;

  padding: 10px 14px;
 
      max-width: 508px;
 
  border: 1px solid rgba(255, 255, 255, 0.12);
  background:
    radial-gradient(circle at top left, rgba(45, 127, 249,0.25), transparent 55%),
    rgba(7,11,20,0.98);
  box-shadow: 0 18px 45px rgba(0,0,0,0.8);

  color: #e5e7eb;
 
  font-size: 13px;
  line-height: 1.4;

  backdrop-filter: blur(18px);
}

/* зелёная точка лайва */
.pi-popup::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: #22c55e;
  box-shadow: 0 0 0 4px rgba(34,197,94,0.25);
  margin-right: 4px;
}

/* картинка товара */
.pi-popup-image {
  display: flex;
  align-items: center;
  padding: 0;
  max-width: unset;
}

.pi-popup-image img {
  width: 70px;
    height: 70px;
  border-radius: 16px;
  object-fit: cover;
  border: 1px solid rgba(255,255,255,0.14);
  box-shadow: 0 10px 26px rgba(0,0,0,0.7);
}

/* контент */
.pi-popup-content {
  position: relative;

  flex-direction: column;
  gap: 2px;
}

/* ссылка продукта */
.pi-popup-content .pi-product_link {
  display: inline-block;
  font-weight: 600;
  color: #ffffff;
  text-decoration: none;
}

.pi-popup-content .pi-product_link:hover {
  color: #7FB2FF;
}

/* страна */
.pi-popup-content .pi-country {
  color: #9ca3af;
  font-weight: 500;
}



/* строка времени – делаем аккуратной подписью */
.pi-popup-content .pi-date,
.pi-popup-content .pi-time {
  font-size: 11px;
  color: #9ca3af;
}



.pi-popup-content .pi-date::after {
  content: " • ";
}



/* Крестик закрытия */
.pi-popup-close {
  position: absolute;
  top: 3px;
    right: 0px;
    width: 18px;
  height: 18px;
  border-radius: 999px;
  background: white;
  display: grid;
  place-items: center;
  padding: 0;
}

.pi-popup-close img {
 width: 13px;
    height: 12px;
    opacity: 1;
}

.pi-popup-close:hover img {
  opacity: 1;
}
@media (max-width: 1380px) {
 .faq-right::before {
  inset: unset!important;
 } 
  
}
@media (max-width: 768px) { 
  .pi-popup-image img {
width: unset;
  }
      .pi-popup-image img {
        width: 72px;
        height: 72px;
        border-radius: 14px;
    }
}
/* ===== Mobile tweaks ===== */
@media (max-width: 640px) {
  .pi-popup {
    left: 12px;
    right: 12px;
    bottom: 16px;
    max-width: none;
    border-radius: 18px;
    padding: 9px 11px;
  }

  .fa-hero__media  {
    display: none;
  }
.fa-hero__mediamobile  {
    display: block!important;
    position: relative;
    border: 1px solid var(--border);
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 20px 60px rgba(34, 60, 136, .18);
  }
  .fa-hero__mediamobile img {

    display: block;
    width: 100%;
  
    object-fit: cover
  }
}

/* Фолбэк для старых браузеров без background-clip:text */
@supports not (-webkit-background-clip: text) {
  .fhv2-title-gradient{
    background: none;
    color: #9EC6FF;
  }
}
.buybtn {
  display: inline-flex;
}

/* =========================================
   THEME TOKENS (в духе Tailwind-палитры)
   ========================================= */
:root{
  --bg:#0B0D12;
  --card:#0e131f;
  --card-2:#0c111b;
  --border:#24324d;
  --border-soft:rgba(36,50,77,.6);
  --text:#ffffff;
  --muted:rgba(255,255,255,.7);
  --muted-2:rgba(255,255,255,.55);
  --brand:#2D7FF9;
  --brand-2:#3B8BFF;
  --accent:#2D7FF9;
  --ok:#00B67A;
  --warn:#FFD54A;
}

/* =========================================
   CONTAINER (чтобы всё смотрелось ровно)
   ========================================= */
.container{
  width:100%;
  max-width:80rem;      /* ~max-w-7xl */
  margin-inline:auto;
  padding-inline:1rem;  /* 16px */
}
@media (min-width:1024px){
  .container{ padding-inline:2.5rem; } /* ~lg:px-10 */
}

/* Общий фон сайта (если нужно) */
body{ background:var(--bg); color:var(--text); }

/* =========================================
   CHECKOUT — общая сетка/заголовки
   ========================================= */
/* .woocommerce .checkout{
  background:transparent;
}
.woocommerce .checkout h3,
.woocommerce .checkout h2{
  color:var(--text);
  font-weight:700;
  letter-spacing:.2px;
  margin:.25rem 0 1rem;
}
#order_review_heading {
  display: none;
}
#customer_details .col-1 {
  width: 100%;
}
.woocommerce form .form-row-first, .woocommerce form .form-row-last, .woocommerce-page form .form-row-first, .woocommerce-page form .form-row-last {
  width: 100%;
}
/* Делаем checkout двухколоночным гридом на десктопе */
.woocommerce form.checkout{
  display:flex;
  
  justify-content: space-between;
  gap:1.25rem; /* 20px */
}
@media (max-width:1024px){
  .woocommerce form.checkout{
    flex-wrap: wrap;
  }
}
@media (max-width:768px){
.currency1, .lang1 {
  display: none;

} 
}
:root {
    --bg: #0B0D12;
    --panel: rgba(0, 0, 0, .44);
    --border: #1b2539;
    --line: #23304a;
    --text: #e7ecff;
    --muted: #c0ccec;
    --cyan: #2D7FF9;
    --cyan2: #3B8BFF;
    --accent: #2D7FF9;
}

.fa-root {
    background: var(--bg);
    color: var(--text);
    min-height: 100vh
}

.fa-wrap {
    max-width: 1180px;
    margin: 0 auto;
    padding: 24px 16px
}

.fa-hero {
    max-width: 1180px;
    margin: 24px auto 0;
    padding: 0 16px;
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
}

.fa-hero__head {
    background: linear-gradient(135deg, rgba(45, 127, 249, .14), rgba(45, 127, 249, .06));
    border: 1px solid rgba(45, 127, 249, .3);
    border-radius: 16px;
    padding: 16px 18px;
    box-shadow: 0 18px 40px rgba(45, 127, 249, .12);
}

.fa-hero__media {
    position: relative;
    border: 1px solid var(--border);
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 20px 60px rgba(34, 60, 136, .18);
}
.fa-hero__mediamobile {
  display: none;
}
.fa-hero__media img {
    display: block;
    width: 100%;
    height: clamp(180px, 28vw, 340px);
    object-fit: cover
}

.fa-hero__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(0, 0, 0, .55), transparent)
}

.fa-pill {
    display: inline-block;
    padding: .25rem .6rem;
    border: 1px solid rgba(255, 255, 255, .14);
    background: rgba(255, 255, 255, .08);
    border-radius: 999px;
    font-size: 12px;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.fa-hero__title {
    margin: .5rem 0 0;
    font-size: clamp(22px, 3.4vw, 34px);
    font-weight: 800;
    line-height: 1.1
}

.fa-hero__sub {
    margin-top: .35rem;
    color: var(--muted)
}

@media (min-width: 900px) {
    .fa-hero {
        grid-template-columns: 1fr 1.4fr;
        align-items: center;
        gap: 20px;
    }

    .fa-hero__head {
        padding: 22px 24px;
    }
}

.fa-filters {
    border: 1px solid var(--border);
    border-radius: 16px;
    background: var(--panel);
    backdrop-filter: blur(6px);
    padding: 16px
}

.fa-filters__row {
    display: flex;
    gap: 14px;
    flex-wrap: wrap
}

.fa-input {
    position: relative;
    flex: 1 1 320px
}

.fa-input input {
    width: 100%;
    height: 42px;
    background: #0e131f;
    border: 1px solid #24324d;
    border-radius: 12px;
    color: var(--text);
    padding: 0 40px 0 14px;
    font-size: 14px;
    outline: none
}

.fa-input svg {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    width: 18px;
    height: 18px;
    opacity: .6;
    fill: none;
    stroke: currentColor;
    stroke-width: 2
}

.fa-filters__selects {
    display: flex;
    gap: 10px;
    flex: 2 1 520px;
    flex-wrap: wrap
}

.fa-select select {
    height: 42px;
    min-width: 160px;
    background: #0e131f;
    border: 1px solid #24324d;
    border-radius: 12px;
    color: var(--text);
    padding: 0 12px;
    font-size: 14px
}

.fa-select select:focus {
    outline: 2px solid rgba(45, 127, 249, .5)
}

.fa-range {
    display: flex;
    align-items: center;
    gap: 10px;
    background: #0e131f;
    border: 1px solid #24324d;
    border-radius: 12px;
    padding: 0 10px;
    height: 42px
}

.fa-range input {
    background: transparent;
    border: 0;
    color: var(--text);
    width: 88px;
    outline: none
}

.fa-range span {
    opacity: .4
}

.fa-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 40px;
    border-radius: 12px;
    padding: 0 14px;
    font-weight: 700;
    border: 1px solid transparent;
    cursor: pointer;
    text-decoration: none
}

.fa-btn--primary {
    background: var(--cyan);
    color: #fff;
    box-shadow: 0 8px 30px rgba(45, 127, 249, .25)
}

.fa-btn--primary:hover {
    background: var(--cyan2)
}

.fa-btn--ghost {
    background: #0e131f;
    border-color: #24324d;
    color: var(--text)
}

.fa-btn--ghost:hover {
    border-color: #5b7cbe
}

.fa-popular {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 10px
}

.fa-popular__spacer {
    flex: 1
}

.fa-chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 28px;
    padding: 0 10px;
    border-radius: 12px;
    background: #0e131f;
    border: 1px solid var(--line);
    font-size: 12px
}

.fa-chip:hover {
    border-color: #5b7cbe
}

.fa-apply {
    display: flex;
    gap: 10px;
    margin-top: 12px
}

/* TOPBAR — фикс: ничего не попадает в сетку */
.fa-topbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 16px 0
}

.fa-topbar__left {
    opacity: .9
}

.woocommerce-ordering {
    display: flex;
    align-items: center;
    gap: 8px;
    border: 1px solid var(--border);
    border-radius: 12px;
    background: #0e131f;
    padding: 6px 10px
}

.woocommerce-ordering select {
    background: transparent;
    border: 0;
    color: var(--text);
    outline: none
}

.woocommerce-ordering option {
    color: #000
}

.woocommerce-result-count {
    color: #c7d2f0
}

/* GRID */
.fa-grid {
    display: grid;
    gap:48px;
    grid-template-columns: repeat(1, minmax(0, 1fr))
}

@media(min-width:640px) {
    .fa-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap:16px;
    }
}

@media(min-width:992px) {
    .fa-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }
}

@media(min-width:1220px) {
    .fa-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }
}

.fa-card {
    display: flex;
    flex-direction: column;
    border: 1px solid var(--border);
    background: var(--panel);
    backdrop-filter: blur(6px);
    border-radius: 16px;
    overflow: hidden
}

.fa-card__media {
    position: relative
}

.fa-card__thumb {
    display: block;
    aspect-ratio: 4/3;
    background: #0e131f
}

.fa-card__thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .35s ease
}

.fa-card:hover .fa-card__thumb img {
    transform: scale(1.02)
}

.fa-badge {
    position: absolute;
    left: 10px;
    top: 10px;
    background: #ffc54d;
    color: #1a1200;
    border-radius: 999px;
    padding: 4px 8px;
    font-size: 11px;
    font-weight: 800
}

.fa-card__body {
    padding: 14px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    flex: 1
}

.fa-card__title {
    color: var(--text);
    text-decoration: none;
    font-weight: 700;
    line-height: 1.3
}

.fa-card__title:hover {
    color: #cbe2ff
}

.fa-card__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px
}

.fa-card__meta {
    display: flex;
    align-items: center;
    justify-content: space-between
}

.fa-card__stats {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #c7d2f0;
    font-size: 12px
}

.fa-card__stats svg {
    width: 16px;
    height: 16px;
    fill: currentColor;
    opacity: .7
}

.fa-card__price {
    font-weight: 800;
    font-size: 16px
}
/* Прячем стандартную ссылку "View cart" после добавления в корзину */
a.added_to_cart.wc-forward { display: none !important; }
.woocommerce-notices-wrapper {
  display: none !important;
}
.fa-card__cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 4px
}

.fa-btn--buy {
    background: var(--accent);
    color: #fff
}

.fa-backtotop {
    position: fixed;
    right: 20px;
    bottom: 22px;
    width: 52px;
    height: 52px;
    border-radius: 18px;
    border: 1px solid rgba(255, 255, 255, .12);
    background: radial-gradient(circle at 30% 30%, rgba(45, 127, 249, .35), rgba(45, 127, 249, .08)),
        linear-gradient(135deg, #141927, #0e121c);
    color: #eaf2ff;
    box-shadow: 0 12px 30px rgba(0, 0, 0, .4), 0 6px 18px rgba(45, 127, 249, .25);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    cursor: pointer;
    opacity: 0;
    transform: translateY(12px);
    pointer-events: none;
    transition: opacity .25s ease, transform .25s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease;
    z-index: 60;
}

.fa-backtotop.is-visible {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}

.fa-backtotop:hover {
    background: radial-gradient(circle at 30% 30%, rgba(45, 127, 249, .45), rgba(45, 127, 249, .14)),
        linear-gradient(135deg, #182236, #111829);
    box-shadow: 0 16px 38px rgba(0, 0, 0, .45), 0 8px 22px rgba(45, 127, 249, .3);
    border-color: rgba(126, 173, 255, .5);
}

.fa-btt-icon {
    display: inline-flex;
    width: 22px;
    height: 22px;
    align-items: center;
    justify-content: center;
}
.grate .star-rating {
  float: left;
}
.fa-badge-stack {
    position: absolute;
    top: -21px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    max-width: calc(100% - 24px);
    z-index: 3;
    pointer-events: none;
    justify-content: center
}
.fa-discount-pill {
  position: absolute;
  top: 10px;
  right: 10px;
  padding: 3px 8px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.03em;
  background: linear-gradient(135deg, #FF4C6A, #FF9A5A);
  color: #fff;
  z-index: 10;
}
.fa-badge-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 13px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #fefefe;
    background: linear-gradient(135deg, #182033, #1f2636);
    border: 1px solid rgba(255, 255, 255, .12);
    box-shadow: 0 10px 24px rgba(0, 0, 0, .38);
    backdrop-filter: blur(6px);
    pointer-events: auto
}

.fa-badge-pill .dot {
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: #fdd56a;
    box-shadow: 0 0 0 6px rgba(253, 213, 106, .18)
}

.fa-badge-pill.is-top {
    background: linear-gradient(135deg, #f6a653, #f18b30);
    border-color: rgba(245, 171, 86, .6);
    color: #2a1600
}

.fa-badge-pill.is-top .dot {
    background: #fff1c4;
    box-shadow: 0 0 0 6px rgba(255, 241, 196, .36)
}

.fa-badge-pill.is-bestseller {
    background: linear-gradient(135deg, #34c759, #26a94b);
    border-color: rgba(52, 199, 89, .5);
    color: #072d0f
}

.fa-badge-pill.is-bestseller .dot {
    background: #e4ffe4;
    box-shadow: 0 0 0 6px rgba(52, 199, 89, .28)
}

.fa-badge-pill.is-popular {
    background: linear-gradient(135deg, #ff6b9f, #e83f7c);
    border-color: rgba(255, 107, 159, .52);
    color: #350014
}

.fa-badge-pill.is-popular .dot {
    background: #ffd2e7;
    box-shadow: 0 0 0 6px rgba(255, 107, 159, .35)
}

.fa-badge-pill.is-generic {
    background: linear-gradient(135deg, #1f2636, #2d3449);
    border-color: rgba(124, 142, 174, .35);
    color: #e5ecff
}

.bs-card.has-badge {
    border-width: 2px;
    transition: border-color .2s ease, box-shadow .2s ease
}

/* даём бейджу выходить за рамку карты */
.bs-card {
    overflow: visible;
}

.bs-card .bs-image-wrap {
    overflow: hidden;
    border-radius: inherit;
}

.bs-card.has-badge.top-rated {
    border-color: #f6a653;
    box-shadow: 0 12px 34px rgba(241, 139, 48, .25)
}

.bs-card.has-badge.popular {
    border-color: #ff6b9f;
    box-shadow: 0 12px 34px rgba(255, 107, 159, .22)
}

.bs-card.has-badge.bestseller {
    border-color: #34c759;
    box-shadow: 0 12px 34px rgba(52, 199, 89, .22)
}

.fa-btn--buy:hover {
    background: #2D7FF9
}

.fa-pagination {
    margin: 18px 0 8px
}
/* Левая колонка (биллинг/ноты) — обёртки */
.woocommerce .col2-set,
.woocommerce .woocommerce-additional-fields{
  background:var(--card);
  border:1px solid var(--border-soft);
  border-radius:16px;
  padding:1.25rem;
}
@media (min-width:640px){
  .woocommerce .col2-set,
  .woocommerce .woocommerce-additional-fields{ padding:1.5rem; }
}

/* Скрыть дефолтный второй столбец Woo (shipping), если не нужен */
.woocommerce .col2-set .col-2{
  display:none;
}

/* =========================================
   INPUTS (инпуты/селекты/текстариа)
   ========================================= */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select{
  width:100%;
  background:var(--card-2);
  color:var(--text);
  border:1px solid var(--border);
  border-radius:12px;
  padding:.7rem .9rem;
  transition:border-color .2s, box-shadow .2s, background-color .2s;
}

.woocommerce form .form-row textarea{ min-height:120px; }

.woocommerce form .form-row input.input-text::placeholder,
.woocommerce form .form-row textarea::placeholder{
  color:var(--muted-2);
}

.woocommerce form .form-row input:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus{
  outline:none;
  border-color:rgba(45, 127, 249,.65);
  box-shadow:0 0 0 2px rgba(45, 127, 249,.28);
}

/* Лейблы компактнее и светлее */
.woocommerce form .form-row label{
  color:var(--muted);
  font-size:.9rem;
  margin-bottom:.35rem;
}

/* required звезда — мягче */
.woocommerce form .form-row .required{
  color:var(--warn);
  opacity:.9;
}

/* Поля в 2 колонки на md+ */
@media (min-width:768px){
  .woocommerce .col2-set .col-1 .woocommerce-billing-fields__field-wrapper{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:.9rem;
  }
  .woocommerce .col2-set .col-1 .woocommerce-billing-fields__field-wrapper .form-row-first,
  .woocommerce .col2-set .col-1 .woocommerce-billing-fields__field-wrapper .form-row-last{
    margin:0;
  }
  /* На всю ширину — email, phone, telegram и т.п. */
  .woocommerce-billing-fields__field-wrapper #billing_email_field,
  .woocommerce-billing-fields__field-wrapper #billing_phone_field,
  .woocommerce-billing-fields__field-wrapper #billing_telegram_field{
    grid-column:1/-1;
  }
}

/* =========================================
   ORDER REVIEW (таблица заказа)
   ========================================= */
#order_review{
  background:var(--card);
  border:1px solid var(--border-soft);
  border-radius:16px;
  padding:1rem;
}
@media (min-width:640px){
  #order_review{ padding:1.25rem; }
}
#order_review_heading{
  grid-column:1/-1;
  margin:.25rem 0 .25rem;
}

/* Таблица */
.woocommerce table.shop_table{
  background:transparent;
  border:1px solid var(--border);
  border-radius:12px;
  color:var(--text);
}
.woocommerce table.shop_table th,
.woocommerce table.shop_table td{
  border-top:1px solid var(--border);
}
.woocommerce table.shop_table th{
  background:rgba(255,255,255,.03);
  color:var(--muted);
  font-weight:600;
}
.woocommerce table.shop_table td{
  color:var(--text);
}

/* Итого выделяем */
.woocommerce table.shop_table tfoot tr:last-child th,
.woocommerce table.shop_table tfoot tr:last-child td{
  border-top:1px solid rgba(255,255,255,.08);
  font-weight:700;
  color:var(--text);
}

/* =========================================
   PAYMENT BOX
   ========================================= */
.woocommerce-checkout-payment{
  margin-top:1rem;
  background:var(--card-2);
  border:1px solid var(--border-soft);
  border-radius:16px;
  padding:1rem;
}
.woocommerce-checkout-payment .wc_payment_methods{
  margin:0 0 .75rem;
  padding:0;
  list-style:none;
}
.woocommerce-checkout-payment .wc_payment_methods li{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:12px;
  padding:.75rem .75rem;
  margin-bottom:.6rem;
}
.woocommerce-checkout-payment .wc_payment_methods li label{
  color:var(--text);
  font-weight:600;
}
.woocommerce-checkout-payment .payment_box{
  display:block !important;
  margin-top:.6rem;
  border-radius:10px;
  background:rgba(255,255,255,.06);
  color:var(--muted);
  border:1px dashed rgba(255,255,255,.15);
  padding:.65rem .75rem;
}

/* =========================================
   PLACE ORDER BUTTON
   ========================================= */
.woocommerce #payment .place-order{
  margin-top:.75rem;
}
.woocommerce #payment .place-order .button,
.woocommerce #payment .place-order button{
  width:100%;
  border:none;
  margin-top: 20px;
  border-radius:12px;
  background:linear-gradient(90deg,var(--accent),#2D7FF9);
  color:#fff;
  letter-spacing:.2px;
  font-weight:700;
  padding:.9rem 1.1rem;
  transition:transform .08s ease, box-shadow .2s ease, filter .2s ease;
  box-shadow:0 10px 30px #2D7FF94f;
}
.woocommerce #payment .place-order .button:hover{
  filter:saturate(1.05) brightness(1.02);
  box-shadow:0 12px 36px #2D7FF9;
  transform:translateY(-1px);
}
.woocommerce #payment .place-order .button:active{
  transform:translateY(0);
}

/* =========================================
   CHECKBOX / RADIO
   ========================================= */
input[type="checkbox"], input[type="radio"]{
  accent-color: var(--brand);
}

/* =========================================
   NOTICES (если где-то появятся — чтобы не резали глаз)
   ========================================= */
.woocommerce-error,
.woocommerce-info,
.woocommerce-message{
  border-radius:12px;
  border:1px solid var(--border);
  background:rgba(255,255,255,.04);
  color:var(--text);
}
.woocommerce a.button.alt,
.woocommerce .button.alt{
  background-color:var(--brand);
  color:#fff;
}
.woocommerce a.button.alt:hover,
.woocommerce .button.alt:hover{
  background-color:var(--brand-2);
}

/* =========================================
   MISC.
   ========================================= */
/* Ссылки “Terms / Privacy” внизу */
.woocommerce-privacy-policy-text,
.woocommerce-terms-and-conditions-wrapper{
  color:var(--muted);
}
.woocommerce-privacy-policy-text a,
.woocommerce-terms-and-conditions-wrapper a{
  color:#7FB2FF;
  text-decoration:none;
}
.woocommerce-privacy-policy-text a:hover,
.woocommerce-terms-and-conditions-wrapper a:hover{
  text-decoration:underline;
}

/* Мини-акценты: подчёркиваем безопасные/выгоды */
.fa-safe-list li::marker{ color:var(--ok); }

/* =========================================
   REVIEWS PAGE (all store reviews)
   ========================================= */
.fa-reviews-page{
  background:#070B14;
  color:#e5e7eb;
  padding:40px 0 70px;
}
.fa-reviews-wrap{
  max-width:1200px;
  margin:0 auto;
  padding:0 22px;
}
.fa-rev-hero{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255,255,255,0.08);
  border-radius:28px;
  background:radial-gradient(70% 80% at 80% 15%,rgba(45, 127, 249,.18),transparent 60%), rgba(12,16,26,0.9);
  box-shadow:0 26px 60px rgba(0,0,0,0.55);
  margin-bottom:28px;
}
.fa-rev-hero__bg{
  position:absolute;
  inset:0;
  background:radial-gradient(40% 55% at 15% 20%,rgba(127,178,255,.2),transparent 55%);
  opacity:.9;
}
.fa-rev-hero__grid{
  position:relative;
  display:grid;
  grid-template-columns:1.05fr 0.95fr;
  gap:30px;
  padding:42px 46px;
}
.fa-rev-hero__left{
  display:flex;
  flex-direction:column;
  gap:16px;
}
.fa-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:6px 12px;
  border-radius:999px;
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.12);
  color:#9FB9FF;
  font-size:12px;
  letter-spacing:.2px;
  text-transform:uppercase;
}
.fa-rev-title{
  font-size:32px;
  line-height:1.15;
  font-weight:800;
  color:#fff;
  margin:0;
}
.fa-rev-sub{
  margin:0;
  color:#c8d0dd;
  font-size:16px;
  line-height:1.6;
}
.fa-rev-hero__stats{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:12px;
  margin-top:6px;
}
.fa-rev-chip{
  display:flex;
  gap:12px;
  align-items:center;
  padding:12px 14px;
  border-radius:16px;
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.08);
  backdrop-filter:blur(5px);
}
.fa-rev-chip__icon{
  width:34px;
  height:34px;
  border-radius:12px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,#2D7FF9,rgba(45, 127, 249,0.35));
  color:#fff;
  font-weight:700;
}
.fa-rev-chip__title{
  font-size:17px;
  font-weight:700;
  color:#fff;
  line-height:1.2;
}
.fa-rev-chip__sub{
  font-size:12px;
  color:#9fb2d3;
}
.fa-rev-hero__actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:4px;
}
.fa-rev-cta,
.fa-rev-ghost{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:12px 18px;
  border-radius:14px;
  font-weight:700;
  text-decoration:none;
  transition:transform .1s ease, filter .2s ease, box-shadow .2s ease;
}
.fa-rev-cta{
  background:linear-gradient(90deg,#2D7FF9,#3B8BFF);
  color:#fff;
  box-shadow:0 12px 32px rgba(45, 127, 249,0.4);
}
.fa-rev-cta:hover{ filter:brightness(1.05); transform:translateY(-1px); }
.fa-rev-ghost{
  background:rgba(255,255,255,0.06);
  color:#dfe7ff;
  border:1px solid rgba(255,255,255,0.12);
}
.fa-rev-ghost:hover{ background:rgba(255,255,255,0.1); transform:translateY(-1px); }

.fa-rev-hero__panel{
  position:relative;
  border-radius:20px;
  border:1px solid rgba(255,255,255,0.12);
  background:linear-gradient(180deg,rgba(255,255,255,0.05),rgba(255,255,255,0.02));
  padding:20px 22px;
  box-shadow:0 18px 40px rgba(0,0,0,0.35);
}
.fa-rev-panel__head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
}
.fa-rev-panel__label{
  color:#9fb2d3;
  font-size:12px;
  letter-spacing:.2px;
  text-transform:uppercase;
}
.fa-rev-panel__rating{
  font-size:32px;
  color:#fff;
  font-weight:800;
  line-height:1.1;
}
.fa-rev-panel__rating span{
  font-size:16px;
  color:#9fb2d3;
  margin-left:4px;
}
.fa-rev-panel__stars{
  color:#ffd54a;
  font-size:15px;
}
.fa-rev-panel__bars{
  margin:16px 0 10px;
  display:flex;
  flex-direction:column;
  gap:8px;
}
.fa-rev-bar{
  display:grid;
  grid-template-columns:42px 1fr 46px;
  align-items:center;
  gap:10px;
  font-size:13px;
  color:#c5cfdf;
}
.fa-rev-bar__track{
  position:relative;
  height:8px;
  border-radius:999px;
  background:rgba(255,255,255,0.06);
  overflow:hidden;
}
.fa-rev-bar__fill{
  position:absolute;
  inset:0;
  border-radius:999px;
  background:linear-gradient(90deg,#ffd54a,#ffb84d);
}
.fa-rev-bar__pct{
  text-align:right;
  color:#9fb2d3;
  font-size:12px;
}
.fa-rev-panel__foot{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:10px;
}
.fa-rev-panel__tag{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px 10px;
  border-radius:10px;
  background:rgba(45, 127, 249,0.12);
  border:1px solid rgba(45, 127, 249,0.35);
  color:#B5D3FF;
  font-size:12px;
  font-weight:700;
}
.fa-rev-panel__note{
  color:#9fb2d3;
  font-size:12px;
  line-height:1.5;
}

.fa-rev-trust{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
  gap:14px;
  margin:18px 0 28px;
}
.fa-rev-trust__card{
  display:flex;
  gap:12px;
  align-items:flex-start;
  padding:14px 15px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.03);
}
.fa-rev-trust__icon{
  width:40px;
  height:40px;
  border-radius:12px;
  display:grid;
  place-items:center;
  background:rgba(45, 127, 249,0.14);
  font-size:18px;
}
.fa-rev-trust__title{
  font-weight:700;
  color:#fff;
  margin-bottom:4px;
}
.fa-rev-trust__text{
  color:#b8c5db;
  font-size:14px;
  line-height:1.45;
}

.fa-rev-list{
  margin-top:10px;
}
.fa-rev-list__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:14px;
}
.fa-rev-list__head h2{
  margin:0;
  font-size:22px;
  color:#fff;
}
.fa-rev-list__head p{
  margin:4px 0 0;
  color:#b8c5db;
}
.fa-rev-legend{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.pill{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.2px;
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.12);
  color:#e5e7eb;
}
.pill-verified{
  background:rgba(0,182,122,0.14);
  border-color:rgba(0,182,122,0.4);
  color:#9ef0c5;
}
.pill-latest{
  background:rgba(255,213,74,0.14);
  border-color:rgba(255,213,74,0.35);
  color:#ffe29f;
}

.fa-rev-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
  gap:14px;
}
.fa-rev-card{
  border-radius:18px;
  border:1px solid rgba(255,255,255,0.09);
  background:linear-gradient(180deg,rgba(255,255,255,0.04),rgba(255,255,255,0.02));
  padding:16px;
  box-shadow:0 14px 32px rgba(0,0,0,0.4);
  transition:transform .1s ease, border-color .2s ease, box-shadow .2s ease;
}
.fa-rev-card:hover{
  transform:translateY(-2px);
  border-color:rgba(45, 127, 249,0.4);
  box-shadow:0 18px 40px rgba(0,0,0,0.55);
}
.fa-rev-card.is-new{
  border-color:rgba(255,213,74,0.35);
}
.fa-rev-card__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px;
}
.fa-rev-card__tags{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
}
.fa-rev-stars{
  position:relative;
  display:inline-block;
  font-size:14px;
  color:#34405a;
  line-height:1;
}
.fa-rev-stars::before{
  content:"★★★★★";
  letter-spacing:2px;
  color:rgba(255,255,255,0.25);
}
.fa-rev-stars span{
  position:absolute;
  inset:0;
  width:100%;
  overflow:hidden;
  color:#ffd54a;
  white-space:nowrap;
}
.fa-rev-stars span::before{
  content:"★★★★★";
  letter-spacing:2px;
}
.fa-rev-text{
  margin:0 0 12px;
  color:#d5dcec;
  line-height:1.6;
  font-size:15px;
  word-break:break-word;
}
.fa-rev-meta{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  }
.fa-rev-author{
  font-weight:700;
  color:#fff;
}
.fa-rev-date{
  display:block;
  color:#9fb2d3;
  font-size:12px;
  margin-top:4px;
}
.fa-rev-product{
  display:flex;
  align-items:center;
  gap:10px;
  text-decoration:none;
  padding:8px 10px;
  border-radius:12px;
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.08);
  transition:border-color .15s ease, background .15s ease;
}
.fa-rev-product:hover{
  background:rgba(255,255,255,0.07);
  border-color:rgba(255,255,255,0.16);
}
.fa-rev-product__img img{
  width:54px;
  height:54px;
  object-fit:cover;
  border-radius:10px;
  border:1px solid rgba(255,255,255,0.1);
}
.fa-rev-product__info{
  display:flex;
  flex-direction:column;
  gap:2px;
  min-width:0;
}
.fa-rev-product__info .label{
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.4px;
  color:#9fb2d3;
}
.fa-rev-product__info .name{
  color:#fff;
  font-weight:700;
}
.fa-rev-product__info .price{
  color:#ffd54a;
  font-weight:700;
  font-size:13px;
}
.fa-rev-empty{
  padding:24px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.04);
  color:#c8d0dd;
  text-align:center;
}

@media (max-width:1024px){
  .fa-rev-hero__grid{ grid-template-columns:1fr; padding:32px; }
  .fa-rev-panel__foot{ flex-direction:column; align-items:flex-start; }
}
@media (max-width:720px){
  .fa-reviews-page{ padding:22px 0 50px; }
  .fa-rev-hero{ border-radius:22px; }
  .fa-rev-hero__grid{ padding:26px 22px; }
  .fa-rev-title{ font-size:26px; }
  .fa-rev-list__head{ flex-direction:column; align-items:flex-start; }
  .fa-rev-meta{ flex-direction:column; align-items:flex-start; }
}

/* =========================================
   BLOG LIST + ARTICLE
   ========================================= */
.fa-blog-page{
  background:#070B14;
  color:#e5e7eb;
  padding:40px 0 70px;
}
.fa-blog-wrap{
  max-width:1180px;
  margin:0 auto;
  padding:0 22px;
}
.fa-blog-hero{
  position:relative;
  overflow:hidden;
  border-radius:26px;
  border:1px solid rgba(255,255,255,0.08);
  background:radial-gradient(70% 80% at 80% 15%,rgba(45, 127, 249,.18),transparent 60%), rgba(12,16,26,0.9);
  box-shadow:0 26px 60px rgba(0,0,0,0.55);
  margin-bottom:22px;
}
.fa-blog-hero__bg{
  position:absolute;
  inset:0;
  background:radial-gradient(40% 55% at 15% 20%,rgba(127,178,255,.2),transparent 55%);
  opacity:.9;
}
.fa-blog-hero__inner{
  position:relative;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  padding:38px 38px 30px;
}
.fa-blog-title{
  margin:12px 0 6px;
  font-size:32px;
  font-weight:800;
  color:#fff;
  line-height:1.2;
}
.fa-blog-sub{
  margin:0;
  color:#c8d0dd;
  font-size:15px;
  line-height:1.7;
  max-width:680px;
}
.fa-blog-meta-row{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:12px;
  color:#9fb2d3;
  font-size:13px;
}
.fa-blog-hero__card{
  min-width:260px;
  max-width:320px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,0.12);
  background:rgba(255,255,255,0.05);
  padding:16px;
  box-shadow:0 18px 40px rgba(0,0,0,0.35);
}
.fa-blog-hero__badge{
  display:inline-flex;
  padding:6px 10px;
  border-radius:10px;
  background:rgba(255,213,74,0.16);
  color:#ffe29f;
  font-size:12px;
  font-weight:700;
}
.fa-blog-hero__lead{
  margin:10px 0 8px;
  font-size:15px;
  line-height:1.6;
  color:#e8edf8;
}
.fa-blog-hero__note{
  color:#9fb2d3;
  font-size:13px;
}
.fa-blog-cats{
  position:relative;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  padding:0 20px 20px 20px;
}
.fa-blog-cat{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 12px;
  border-radius:12px;
  background:rgba(255,255,255,0.05);
  border:1px solid rgba(255,255,255,0.1);
  color:#e5e7eb;
  text-decoration:none;
  font-weight:600;
  transition:transform .1s ease, background .15s ease, border-color .15s ease;
}
.fa-blog-cat:hover{
  transform:translateY(-1px);
  background:rgba(255,255,255,0.09);
  border-color:rgba(255,255,255,0.16);
}
.fa-blog-cat__count{
  padding:2px 7px;
  border-radius:8px;
  background:rgba(45, 127, 249,0.15);
  color:#B5D3FF;
  font-size:11px;
}
.fa-blog-featured{
  margin:18px 0 6px;
}
.fa-blog-featured__card{
  display:grid;
  grid-template-columns:1.05fr 1fr;
  gap:20px;
  border-radius:22px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.02);
  box-shadow:0 20px 50px rgba(0,0,0,0.55);
}
.fa-blog-featured__media{
  position:relative;
  min-height:260px;
}
.fa-blog-featured__image{
  position:absolute;
  inset:0;
  background-size:cover;
  background-position:center;
}
.fa-blog-featured__body{
  padding:20px 22px;
  display:flex;
  flex-direction:column;
  gap:10px;
}
.fa-blog-featured__title a{
  color:#fff;
  font-size:24px;
  font-weight:800;
  text-decoration:none;
}
.fa-blog-featured__excerpt{
  color:#c8d0dd;
  line-height:1.6;
  margin:0 0 6px;
}
.fa-blog-link{
  display:inline-flex;
  align-items:center;
  gap:6px;
  color:#7FB2FF;
  text-decoration:none;
  font-weight:700;
}
.fa-blog-link:hover{ text-decoration:underline; }

.fa-blog-grid{
  margin-top:18px;
}
.fa-blog-grid__head h2{
  margin:0;
  color:#fff;
  font-size:22px;
}
.fa-blog-grid__head p{
  margin:4px 0 10px;
  color:#b8c5db;
}
.fa-blog-grid__list{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:14px;
}
.fa-blog-card{
  border-radius:16px;
  border:1px solid rgba(255,255,255,0.08);
  background:linear-gradient(180deg,rgba(255,255,255,0.04),rgba(255,255,255,0.02));
  box-shadow:0 12px 32px rgba(0,0,0,0.4);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  height:100%;
}
.fa-blog-thumb img{
  width:100%;
  height:180px;
  object-fit:cover;
  display:block;
}
.fa-blog-card__body{
  padding:14px 14px 16px;
  display:flex;
  flex-direction:column;
  gap:8px;
  flex:1;
}
.fa-blog-card__meta{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  font-size:12px;
  color:#9fb2d3;
}
.fa-blog-chip{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(45, 127, 249,0.12);
  border:1px solid rgba(45, 127, 249,0.3);
  color:#B5D3FF;
  font-weight:700;
  text-decoration:none;
}
.fa-blog-date{ color:#9fb2d3; }
.fa-blog-dot{ color:#475475; }
.fa-blog-read{ color:#9fb2d3; }
.fa-blog-card__title{
  margin:0;
  font-size:18px;
  font-weight:800;
}
.fa-blog-card__title a{
  color:#fff;
  text-decoration:none;
}
.fa-blog-card__excerpt{
  margin:0;
  color:#c8d0dd;
  line-height:1.6;
}
.fa-blog-pagination{
  margin-top:16px;
  display:flex;
  justify-content:center;
  gap:8px;
  flex-wrap:wrap;
}
.fa-blog-pagination a,
.fa-blog-pagination span{
  padding:8px 12px;
  border-radius:10px;
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.08);
  color:#e5e7eb;
  text-decoration:none;
}
.fa-blog-pagination .current{
  background:#2D7FF9;
  border-color:#2D7FF9;
}
.fa-blog-empty{
  color:#9fb2d3;
}

.fa-article{
  border:1px solid rgba(255,255,255,0.08);
  border-radius:26px;
  background:rgba(255,255,255,0.02);
  box-shadow:0 22px 55px rgba(0,0,0,0.55);
  overflow:hidden;
}
.fa-article__hero{
  position:relative;
  padding:32px 32px 26px;
  overflow:hidden;
}
.fa-article__bg{
  position:absolute;
  inset:0;
  background:radial-gradient(50% 60% at 80% 10%,rgba(45, 127, 249,.18),transparent 60%);
  opacity:.8;
}
.fa-article__hero > *{ position:relative; }
.fa-article__meta{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.fa-article__title{
  margin:10px 0 8px;
  font-size:32px;
  font-weight:900;
  color:#fff;
  line-height:1.2;
}
.fa-article__lede{
  margin:0;
  color:#c8d0dd;
  font-size:15px;
  line-height:1.7;
}
.fa-article__author{
  display:flex;
  gap:10px;
  align-items:center;
  margin-top:12px;
}
.fa-article__avatar{
  width:42px;
  height:42px;
  border-radius:12px;
  background:rgba(255,255,255,0.08);
  display:grid;
  place-items:center;
  font-weight:800;
  color:#fff;
  border:1px solid rgba(255,255,255,0.12);
}
.fa-article__by{ font-weight:700; }
.fa-article__by-sub{ color:#9fb2d3; font-size:12px; }
.fa-article__thumb{
  margin-top:16px;
  border-radius:16px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,0.08);
}
.fa-article__thumb img{
  width:100%;
  height:320px;
  object-fit:cover;
}
.fa-article__body{
  display:grid;
  grid-template-columns: minmax(0,1fr) 280px;
  gap:18px;
  padding:18px 18px 26px;
}
.fa-article__content{
  color:#e8edf8;
  line-height:1.8;
}
.fa-article__content h2,
.fa-article__content h3,
.fa-article__content h4{
  color:#fff;
  margin:16px 0 10px;
  font-weight:800;
}
.fa-article__content p{ margin:0 0 12px; }
.fa-article__content a{
  color:#7FB2FF;
  text-decoration:underline;
}
.fa-article__aside{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.fa-article__card{
  border-radius:14px;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.03);
  padding:12px 14px;
}
.fa-article__card-title{
  font-weight:800;
  color:#fff;
  margin-bottom:8px;
}
.fa-article__card-text{
  margin:0 0 10px;
  color:#c8d0dd;
  font-size:14px;
  line-height:1.6;
}
.fa-article__share{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.fa-article__share a{
  padding:8px 10px;
  border-radius:10px;
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.1);
  color:#e5e7eb;
  text-decoration:none;
  font-weight:700;
}
.fa-article__share a:hover{ background:rgba(255,255,255,0.1); }

@media (max-width:1024px){
  .fa-blog-hero__inner{ flex-direction:column; }
  .fa-blog-featured__card{ grid-template-columns:1fr; }
  .fa-article__body{ grid-template-columns:1fr; }
  .fa-article__thumb img{ height:250px; }
}
@media (max-width:720px){
  .fa-blog-page{ padding:24px 0 50px; }
  .fa-blog-hero{ border-radius:22px; }
  .fa-blog-title{ font-size:26px; }
  .fa-blog-featured__title a{ font-size:20px; }
  .fa-blog-hero__card{ max-width:100%; }
  .fa-blog-grid__list{ grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); }
  .fa-article__title{ font-size:26px; }
}
