.atom-avatar{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:var(--border-radius-full);overflow:hidden;box-shadow:var(--shadow-sm);background:var(--bg-surface-low);transition:transform .15s ease,box-shadow .15s ease;border:1px solid transparent}
.atom-avatar:focus{outline-offset:3px;box-shadow:0 0 0 3px rgba(32,65,122,0.12)}
.atom-avatar:hover{transform:translateY(-2px)}
.atom-avatar__img{width:100%;height:100%;background-size:cover;background-position:center;background-repeat:no-repeat;display:block}
.atom-avatar__fallback{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:var(--bg-brand);color:var(--fg-on-brand);font-family:var(--font-label-lg-family);font-weight:var(--font-label-lg-weight);font-size:0.95rem}
.atom-avatar__initials{line-height:1}
@media (prefers-reduced-motion:reduce){.atom-avatar{transition:none}.atom-avatar:hover{transform:none}}

.ae-badge{display:inline-flex;align-items:center;justify-content:center;height:20px;padding:0 var(--spacing-xs);border-radius:var(--border-radius-full);background:var(--brand-accent);color:var(--fg-on-accent);font-family:var(--font-label-sm-family);font-size:var(--font-label-sm-size);font-weight:var(--font-label-sm-weight);line-height:var(--font-label-sm-line-height);letter-spacing:var(--font-label-sm-letter-spacing);padding-left:8px;padding-right:8px;box-shadow:none;transition:transform var(--transition-fast),box-shadow var(--transition-fast);white-space:nowrap;}

.ae-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);height:42px;padding:0 16px;border-radius:var(--border-radius-sm);font-family:var(--font-label-md-family);font-size:var(--font-label-md-size);font-weight:var(--font-label-md-weight);line-height:var(--font-label-md-line-height);letter-spacing:var(--font-label-md-letter-spacing);transition:transform .15s ease,box-shadow .15s ease,background-color .15s ease;color:var(--fg-on-brand);background:var(--brand-primary);box-shadow:var(--shadow-sm);text-decoration:none;display:inline-flex;vertical-align:middle}
.ae-btn--primary:focus{outline:2px solid var(--border-color-strong);outline-offset:2px;box-shadow:var(--shadow-md)}
.ae-btn--primary:hover{background:var(--brand-primary-hover);transform:translateY(-1px)}
.ae-btn--primary:active{transform:translateY(0);box-shadow:0 2px 6px rgba(27,35,43,0.06)}
.ae-btn--primary:disabled, .ae-btn--primary[aria-disabled="true"]{background:var(--bg-surface-high);color:var(--fg-disabled);cursor:not-allowed;transform:none;box-shadow:none}
@media (prefers-reduced-motion:reduce){.ae-btn{transition:none}}
[data-theme="dark"] .ae-btn--primary{background:var(--brand-primary);color:var(--fg-on-brand)}

.ae-btn--secondary{display:inline-flex;align-items:center;justify-content:center;height:42px;padding:0 16px;border-radius:var(--border-radius-sm);font-family:var(--font-label-md-family);font-size:var(--font-label-md-size);font-weight:var(--font-label-md-weight);line-height:var(--font-label-md-line-height);letter-spacing:var(--font-label-md-letter-spacing);transition:box-shadow .15s ease,background-color .15s ease,transform .15s ease;background:var(--brand-secondary);color:var(--fg-on-brand);box-shadow:var(--shadow-sm);text-decoration:none}
.ae-btn--secondary:hover{background:var(--brand-secondary-hover);transform:translateY(-1px)}
.ae-btn--secondary:focus{outline:2px solid var(--border-color-strong);outline-offset:2px;box-shadow:var(--shadow-md)}
.ae-btn--secondary:active{transform:translateY(0)}
.ae-btn--secondary:disabled, .ae-btn--secondary[aria-disabled="true"]{background:var(--bg-surface-high);color:var(--fg-disabled);cursor:not-allowed;box-shadow:none}
@media (prefers-reduced-motion:reduce){.ae-btn--secondary{transition:none}}
[data-theme="dark"] .ae-btn--secondary{background:var(--brand-secondary);color:var(--fg-on-brand)}

.ae-btn--tertiary{display:inline-flex;align-items:center;justify-content:center;height:40px;padding:0 12px;border-radius:var(--border-radius-sm);font-family:var(--font-label-md-family);font-size:var(--font-label-md-size);font-weight:var(--font-label-md-weight);line-height:var(--font-label-md-line-height);letter-spacing:var(--font-label-md-letter-spacing);background:var(--bg-subtle);color:var(--fg-on-default);border:1px solid var(--border-color-default);transition:box-shadow .15s ease,transform .15s ease,text-decoration-color .15s ease;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px}
.ae-btn--tertiary:hover{background:var(--bg-surface-high);transform:translateY(-1px);box-shadow:var(--shadow-sm)}
.ae-btn--tertiary:focus{outline:2px solid var(--border-color-strong);outline-offset:2px;box-shadow:var(--shadow-md)}
.ae-btn--tertiary:active{transform:translateY(0)}
.ae-btn--tertiary:disabled, .ae-btn--tertiary[aria-disabled="true"]{background:var(--bg-default);color:var(--fg-disabled);cursor:not-allowed;box-shadow:none}
@media (prefers-reduced-motion:reduce){.ae-btn--tertiary{transition:none}}
[data-theme="dark"] .ae-btn--tertiary{background:var(--bg-inverse);color:var(--fg-on-default);border-color:var(--border-color-strong)}

.ae-chip{display:inline-flex;align-items:center;justify-content:center;height:28px;padding:0 10px;border-radius:var(--border-radius-md);background:var(--bg-default);color:var(--fg-on-default);font-family:var(--font-label-sm-family);font-size:var(--font-label-sm-size);font-weight:var(--font-label-sm-weight);line-height:var(--font-label-sm-line-height);letter-spacing:var(--font-label-sm-letter-spacing);border:1px solid var(--border-color-default);box-shadow:none;transition:background var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast);cursor:pointer;white-space:nowrap;position:relative;overflow:visible;} .ae-chip::after{content:"";position:absolute;right:6px;width:6px;height:6px;border-radius:2px;background:var(--brand-primary);opacity:0;transform:translateX(4px);transition:opacity var(--transition-fast),transform var(--transition-fast);} .ae-chip:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px);} .ae-chip:focus{outline:2px solid var(--brand-primary);outline-offset:2px;} .ae-chip.is-active{background:var(--bg-brand);color:var(--fg-on-brand);border-color:var(--bg-brand);box-shadow:var(--shadow-md);} .ae-chip.is-active::after{opacity:1;transform:translateX(0)}

.atom-image-frame-animated { display: block; position: relative; overflow: hidden; border-radius: var(--border-radius-md); background: linear-gradient(180deg, var(--bg-surface-high), var(--bg-surface-low)); box-shadow: var(--shadow-sm); }
.atom-image-frame-animated__img { display: block; width: 100%; height: auto; transform: translateY(0) scale(1); transition: transform 0.25s ease, filter 0.25s ease; will-change: transform; }
@media (prefers-reduced-motion: no-preference) {
  .atom-image-frame-animated__img { transition: transform 0.35s cubic-bezier(.2,.8,.2,1), filter 0.35s ease; }
  .atom-image-frame-animated:hover .atom-image-frame-animated__img { transform: scale(1.02); filter: contrast(1.02); }
  .atom-image-frame-animated { scroll-snap-align: center; }
  .atom-image-frame-animated__img { transform: translateY(6px); opacity: 0; animation: atom-image-fade-up 700ms ease forwards; }
  @keyframes atom-image-fade-up { to { transform: translateY(0); opacity: 1; } }
  .atom-image-frame-animated__img[data-parallax="true"] { transform: translateY(12px); }
}

.atom-image-frame-raw { display: block; max-width: 100%; border-radius: var(--border-radius-md); background: var(--bg-surface-low); padding: var(--spacing-sm); box-shadow: var(--shadow-sm); border: 1px solid var(--border-color-default); overflow: hidden; position: relative; }
.atom-image-frame-raw__img { display: block; width: 100%; height: auto; border-radius: calc(var(--border-radius-md) - 2px); transition: transform var(--transition-fast), box-shadow var(--transition-fast); }
.atom-image-frame-raw::after { content: ""; position: absolute; left: 0; right: 0; height: 8px; bottom: 0; background: linear-gradient(180deg, transparent, rgba(27,35,43,0.04)); pointer-events: none; }
@media (prefers-reduced-motion: no-preference) {
  .atom-image-frame-raw:hover .atom-image-frame-raw__img { transform: translateY(-4px); box-shadow: var(--shadow-md); }
}

.atom-image-frame-zoom { display: inline-block; max-width: 100%; border-radius: var(--border-radius-md); overflow: visible; }
.atom-image-frame-zoom__btn { display: block; width: 100%; border-radius: var(--border-radius-md); overflow: hidden; background: transparent; padding: 0; box-shadow: var(--shadow-sm); border: 1px solid var(--border-color-default); transition: box-shadow var(--transition-fast), transform var(--transition-fast); }
.atom-image-frame-zoom__img { display: block; width: 100%; height: auto; transform-origin: center center; transition: transform var(--transition-fast); }
.atom-image-frame-zoom__btn:focus { outline: 3px solid var(--bg-accent); outline-offset: 3px; }
.atom-image-frame-zoom__btn:hover { transform: translateY(-3px); box-shadow: var(--shadow-md); }
.atom-image-frame-zoom__overlay { position: fixed; inset: 0; display: flex; align-items: center; justify-content: center; background: rgba(11,16,22,0.7); z-index: 1200; }
.atom-image-frame-zoom__overlay-inner { position: relative; max-width: 95vw; max-height: 95vh; border-radius: var(--border-radius-lg); box-shadow: var(--shadow-lg); overflow: hidden; }
.atom-image-frame-zoom__overlay-img { display: block; max-width: 100%; max-height: 100%; height: auto; width: auto; }
.atom-image-frame-zoom__close { position: absolute; top: var(--spacing-sm); right: var(--spacing-sm); background: var(--bg-surface-low); color: var(--fg-on-default); border-radius: var(--border-radius-sm); padding: 6px; display: inline-flex; align-items: center; justify-content: center; box-shadow: var(--shadow-sm); }
.atom-image-frame-zoom__close:focus { outline: 3px solid var(--bg-accent); }

.phone-reveal { --pad: var(--spacing-sm); display: inline-flex; align-items: center; gap: var(--spacing-sm); padding: calc(var(--spacing-sm) + 2px) var(--spacing-md); background: var(--bg-brand); color: var(--fg-on-brand); border-radius: var(--border-radius-sm); box-shadow: var(--shadow-sm); border: 1px solid var(--border-color-strong); font-family: var(--font-label-md-family); font-size: var(--font-label-md-size); font-weight: var(--font-label-md-weight); line-height: var(--font-label-md-line-height); transition: transform .15s ease, box-shadow .15s ease, background .15s ease; }
.phone-reveal:focus { outline: none; box-shadow: 0 0 0 4px rgba(32,65,122,0.12); }
.phone-reveal:hover { transform: translateY(-2px); background: var(--brand-primary-hover); }
.phone-reveal__content { display: inline-flex; align-items: center; gap: var(--spacing-sm); }
.phone-reveal__label { display: inline-block; color: var(--fg-on-brand); }
.phone-reveal__tel { display: inline-block; color: var(--fg-on-brand); background: linear-gradient(90deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 100%); text-decoration: none; border-radius: var(--border-radius-sm); padding: 0; margin: 0; transform-origin: left center; transition: opacity .18s ease, transform .18s ease; opacity: 0; transform: translateX(-6px) scale(0.98); pointer-events: none; }
.phone-reveal__chev { display: inline-flex; align-items: center; justify-content: center; color: var(--fg-on-brand); font-size: 1rem; transition: transform .18s ease; }
.phone-reveal.is-revealed { background: var(--bg-accent); color: var(--fg-on-accent); border-color: var(--border-color-default); }
.phone-reveal.is-revealed .phone-reveal__label { opacity: 0; transform: translateX(-4px); transition: opacity .18s ease, transform .18s ease; }
.phone-reveal.is-revealed .phone-reveal__tel { opacity: 1; transform: translateX(0) scale(1); pointer-events: auto; }
.phone-reveal.is-revealed .phone-reveal__chev { transform: rotate(90deg); }
.phone-reveal[aria-expanded="true"] { box-shadow: var(--shadow-md); }
.phone-reveal:disabled { background: var(--bg-surface-high); color: var(--fg-disabled); border-color: var(--border-color-default); cursor: not-allowed; }
@media (prefers-reduced-motion: reduce) { .phone-reveal, .phone-reveal__tel, .phone-reveal__label, .phone-reveal__chev { transition: none !important; } }

.ae-pill{display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 12px;border-radius:var(--border-radius-full);background:var(--bg-subtle);color:var(--fg-secondary);font-family:var(--font-label-md-family);font-size:var(--font-label-md-size);font-weight:var(--font-label-md-weight);line-height:var(--font-label-md-line-height);letter-spacing:var(--font-label-md-letter-spacing);box-shadow:var(--shadow-sm);transition:transform var(--transition-fast),box-shadow var(--transition-fast);white-space:nowrap;} .ae-pill::after{content:"";display:inline-block;width:6px;height:6px;margin-left:8px;border-radius:2px;background:linear-gradient(180deg,rgba(0,0,0,0.06),transparent);opacity:0.9;transform:translateY(0);} .ae-pill:focus{outline:2px solid var(--border-color-strong);outline-offset:2px}

.atom-quote { 
  background: var(--bg-surface-low);
  color: var(--fg-on-default);
  border-radius: var(--border-radius-md);
  padding: calc(var(--spacing-md));
  box-shadow: var(--shadow-sm);
  border-left: 6px solid var(--brand-primary);
  margin: 0 0 var(--spacing-md);
  transition: transform var(--transition-fast), box-shadow var(--transition-fast);
}
.atom-quote__text {
  font-family: var(--font-body-md-family);
  font-size: var(--font-body-md-size);
  line-height: var(--font-body-md-line-height);
  color: var(--fg-on-default);
  margin: 0 0 .5rem;
}
.atom-quote__footer {
  display: flex;
  align-items: center;
  gap: var(--spacing-sm);
}
.atom-quote__author {
  font-family: var(--font-label-md-family);
  font-size: var(--font-label-md-size);
  font-weight: var(--font-label-md-weight);
  color: var(--fg-secondary);
}
.atom-quote:focus-within,
.atom-quote:hover {
  transform: translateY(-4px);
  box-shadow: var(--shadow-md);
}
@media (prefers-reduced-motion: reduce) {
  .atom-quote, .atom-quote:focus-within, .atom-quote:hover { transition: none; transform: none; }
}
[data-theme="dark"] .atom-quote {
  background: var(--bg-inverse);
  color: var(--fg-on-brand);
  box-shadow: none;
  border-left-color: var(--brand-accent);
}
[data-theme="dark"] .atom-quote__author {
  color: var(--fg-on-brand);
}

.atom-reading-progress{--progress:0;position:relative;font-family:var(--font-body-sm-family);color:var(--fg-on-default)}.atom-reading-progress[data-variant="overlay-top"]{position:fixed;inset-inline:0;top:0;z-index:1200;pointer-events:none;height:6px}.atom-reading-progress[data-variant="overlay-top"] .atom-reading-progress__bar{height:100%;width:calc(var(--progress) * 1%);background:linear-gradient(90deg,var(--bg-brand),var(--brand-accent));border-bottom-left-radius:var(--border-radius-sm);border-bottom-right-radius:var(--border-radius-sm);box-shadow:var(--shadow-sm);transition:width var(--transition-fast)}.atom-reading-progress[data-variant="inline-content"]{position:sticky;top:var(--spacing-container-padding);display:block;margin-bottom:var(--spacing-sm);height:12px;border-radius:var(--border-radius-lg);overflow:hidden;background:var(--bg-surface-high);box-shadow:var(--shadow-sm)}.atom-reading-progress[data-variant="inline-content"] .atom-reading-progress__bar{height:100%;width:calc(var(--progress) * 1%);background:conic-gradient(from 180deg at 50% 50%,var(--bg-brand),var(--brand-accent));transition:width var(--transition-fast)}.atom-reading-progress[data-variant="sidebar"]{position:relative;display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);background:var(--bg-surface-low);border:1px solid var(--border-color-default);border-radius:var(--border-radius-md);width:120px;box-shadow:var(--shadow-sm)}.atom-reading-progress[data-variant="sidebar"] .atom-reading-progress__bar{flex:0 0 36px;height:36px;border-radius:var(--border-radius-full);background:linear-gradient(180deg,var(--bg-brand),var(--brand-accent));position:relative;overflow:hidden}.atom-reading-progress[data-variant="sidebar"] .atom-reading-progress__bar::after{content:"";position:absolute;inset:auto 0 0 0;height:calc(var(--progress) * 1%);background:rgba(255,255,255,0.12);transition:height var(--transition-fast)}.atom-reading-progress__card{display:none;align-items:center;gap:var(--spacing-xs);pointer-events:auto}.atom-reading-progress[data-variant="sidebar"] .atom-reading-progress__card{display:flex;flex-direction:column}.atom-reading-progress__percent{font-family:var(--font-label-md-family);font-size:var(--font-label-md-size);font-weight:var(--font-label-md-weight);color:var(--fg-on-default)}.atom-reading-progress__label{font-size:calc(var(--font-body-sm-size) - 0px);color:var(--fg-secondary);font-weight:500}.atom-reading-progress[data-variant="overlay-top"] .atom-reading-progress__card{position:fixed;left:50%;transform:translateX(-50%) translateY(10px);top:8px;padding:6px 10px;border-radius:var(--border-radius-md);background:var(--bg-inverse);color:var(--fg-on-brand);display:flex;align-items:center;gap:var(--spacing-xs);box-shadow:var(--shadow-lg);pointer-events:auto;transition:transform .18s ease,opacity .18s ease}.atom-reading-progress[data-variant="overlay-top"] .atom-reading-progress__percent{color:var(--fg-on-brand);font-family:var(--font-label-lg-family)}@media (prefers-reduced-motion:reduce){.atom-reading-progress .atom-reading-progress__bar,.atom-reading-progress__card{transition:none}}

.ae-scrolltop{position:fixed;right:var(--spacing-md);bottom:var(--spacing-md);width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--border-radius-sm);background:var(--bg-brand);color:var(--fg-on-brand);box-shadow:var(--shadow-md);opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity var(--transition-fast),transform var(--transition-fast),box-shadow .18s ease;z-index:1000;border:1px solid transparent;font-family:var(--font-body-md-family);font-size:1rem}
.ae-scrolltop:focus{outline:2px solid var(--brand-accent);outline-offset:3px;box-shadow:0 6px 18px rgba(32,65,122,0.12)}
.ae-scrolltop:hover{background:var(--brand-primary-hover);box-shadow:var(--shadow-lg)}
.ae-scrolltop.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}
.ae-scrolltop i{font-size:1.1rem;line-height:1}
@media(min-width:1024px){.ae-scrolltop{right:calc(var(--spacing-container-padding) + 8px);bottom:var(--spacing-lg);width:48px;height:48px;border-radius:var(--border-radius-sm)}}

.atom-search { display: inline-flex; align-items: center; gap: var(--spacing-sm); height: 44px; background: var(--bg-subtle); border-radius: var(--border-radius-md); padding: 0 6px; box-shadow: var(--shadow-sm); border: 1px solid var(--border-color-default); }
.atom-search__label { flex: 1; display: block; min-width: 0; }
.atom-search__input { width: 100%; height: 44px; padding: 8px 14px; background: transparent; border: none; outline: none; font-family: var(--font-body-md-family); font-size: var(--font-body-md-size); font-weight: var(--font-body-md-weight); line-height: var(--font-body-md-line-height); color: var(--fg-on-default); border-radius: calc(var(--border-radius-md) - 2px); }
.atom-search__input::placeholder { color: var(--fg-secondary); }
.atom-search__button { display: inline-flex; align-items: center; justify-content: center; height: 36px; width: 36px; background: var(--bg-brand); color: var(--fg-on-brand); border-radius: var(--border-radius-sm); transition: background var(--transition-fast), transform var(--transition-fast); box-shadow: var(--shadow-sm); }
.atom-search__button:focus { box-shadow: 0 0 0 3px rgba(32,65,122,0.12); outline: none; }
.atom-search__button:hover { background: var(--brand-primary-hover); transform: translateY(-1px); }
.atom-search__button:active { transform: translateY(0); }
.atom-search__button:disabled { background: var(--bg-surface-low); color: var(--fg-disabled); cursor: not-allowed; transform: none; box-shadow: none; }
.atom-search i { font-size: 1rem; line-height: 1; }
@media (prefers-reduced-motion: reduce) { .atom-search__button, .atom-search__input { transition: none; } }

.card-article { background: var(--bg-default); color: var(--fg-on-default); border-radius: var(--border-radius-md); padding: var(--spacing-md); box-shadow: var(--shadow-sm); overflow: hidden; display: flex; flex-direction: column; transition: transform .15s ease, box-shadow .15s ease; }
.card-article__link { display: block; color: inherit; text-decoration: none; }
.card-article__media { position: relative; border-radius: calc(var(--border-radius-md) - 2px); overflow: hidden; margin: calc(var(--spacing-md) * -1) calc(var(--spacing-md) * -1) 12px calc(var(--spacing-md) * -1); }
.card-article__img { width: 100%; height: 180px; object-fit: cover; display: block; }
.card-article__badge { position: absolute; left: var(--spacing-md); top: var(--spacing-md); background: var(--bg-brand); color: var(--fg-on-brand); padding: 6px 8px; border-radius: var(--border-radius-sm); font-size: .85rem; display: inline-flex; align-items: center; gap: 6px; box-shadow: var(--shadow-sm); }
.card-article__body { padding: 0; display: flex; flex-direction: column; gap: 8px; }
.card-article__title { font-family: var(--font-title-md-family); font-size: var(--font-title-md-size); font-weight: var(--font-title-md-weight); line-height: var(--font-title-md-line-height); color: var(--fg-on-default); margin: 0; }
.card-article__excerpt { color: var(--fg-secondary); margin: 0; font-family: var(--font-body-md-family); font-size: var(--font-body-sm-size); line-height: var(--font-body-sm-line-height); }
.card-article:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); }
.card-article:focus-within { box-shadow: 0 8px 24px rgba(32,65,122,0.15); outline: 3px solid rgba(32,65,122,0.12); }
.card-article__link:active .card-article { transform: translateY(-1px); }
@media (min-width: 720px) { .card-article__img { height: 200px; } }
@media (min-width: 1024px) { .card-article__img { height: 220px; } }
[data-theme="dark"] .card-article { background: var(--bg-inverse); color: var(--fg-on-default); }
[data-theme="dark"] .card-article__badge { background: var(--brand-accent); color: var(--fg-on-accent); }
.card-article__title, [data-theme="dark"] .card-article__title { text-decoration: underline dotted transparent; text-underline-offset: 6px; transition: text-decoration-color .15s ease; }
.card-article:hover .card-article__title { text-decoration-color: rgba(32,65,122,0.12); }
.card-article__badge i { font-size: 1rem; }

.card-category { display: block; background: var(--bg-subtle); color: var(--fg-on-default); padding: var(--spacing-sm); border-radius: var(--border-radius-md); text-align: center; transition: transform .15s ease, box-shadow .15s ease; box-shadow: none; }
.card-category__figure { margin: 0 0 var(--spacing-xs) 0; border-radius: calc(var(--border-radius-md) - 2px); overflow: hidden; }
.card-category__image { width: 100%; height: auto; display: block; }
.card-category__title { font-family: var(--font-title-md-family); font-size: var(--font-title-md-size); font-weight: var(--font-title-md-weight); margin: 0; padding: calc(var(--spacing-xs)); }
.card-category:hover { transform: translateY(-3px); box-shadow: var(--shadow-sm); }
.card-category:focus { outline: 3px solid rgba(32,65,122,0.12); outline-offset: 2px; }
@media (prefers-reduced-motion: reduce) { .card-category { transition: none; } }
[data-theme="dark"] .card-category { background: var(--bg-inverse); color: var(--fg-on-brand); }
[data-theme="dark"] .card-category__title { color: var(--fg-on-brand); }

.card-product { background: var(--bg-surface-high); color: var(--fg-on-default); border-radius: var(--border-radius-lg); padding: 20px; box-shadow: var(--shadow-sm); transition: transform .15s ease, box-shadow .15s ease; display: block; }
.card-product__link, .card-product__link--plain { display: block; color: inherit; text-decoration: none; }
.card-product__media { border-radius: calc(var(--border-radius-lg) - 4px); overflow: hidden; margin: 0 0 var(--spacing-md) 0; }
.card-product__image { width: 100%; height: auto; display: block; }
.card-product__meta { display: flex; align-items: baseline; justify-content: space-between; gap: var(--spacing-sm); }
.card-product__title { font-family: var(--font-title-md-family); font-size: var(--font-title-md-size); font-weight: var(--font-title-md-weight); margin: 0; }
.card-product__price { font-family: var(--font-label-lg-family); font-size: var(--font-label-lg-size); font-weight: var(--font-label-lg-weight); color: var(--brand-primary); background: transparent; padding: 4px 8px; border-radius: var(--border-radius-sm); }
.card-product:hover { transform: translateY(-6px); box-shadow: var(--shadow-md); }
.card-product:focus-within { outline: 3px solid rgba(32,65,122,0.12); outline-offset: 2px; }
@media (prefers-reduced-motion: reduce) { .card-product { transition: none; } }
[data-theme="dark"] .card-product { background: var(--bg-inverse); color: var(--fg-on-brand); }
[data-theme="dark"] .card-product__price { color: var(--brand-accent); }

.ae-faq-item{border:1px solid var(--border-color-default);background:var(--bg-surface-low);border-radius:var(--border-radius-md);padding:var(--spacing-sm);box-shadow:var(--shadow-sm);overflow:hidden;transition:box-shadow var(--transition-fast),border-color var(--transition-fast);max-width:100%;} .ae-faq-item[open]{box-shadow:var(--shadow-md);border-color:var(--border-color-strong);} .ae-faq-item__summary{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);cursor:pointer;padding:calc(var(--spacing-sm) + 2px) var(--spacing-md);font-family:var(--font-label-lg-family);font-size:var(--font-label-lg-size);font-weight:var(--font-label-lg-weight);line-height:var(--font-label-lg-line-height);color:var(--fg-on-default);border-radius:calc(var(--border-radius-sm));list-style:none;outline-offset:4px;} .ae-faq-item__summary::-webkit-details-marker{display:none;} .ae-faq-item__summary::after{content:"";width:18px;height:18px;border-radius:4px;flex:0 0 18px;background:var(--bg-brand);mask:var(--mask-chevron-down);-webkit-mask:var(--mask-chevron-down);transition:transform var(--transition-fast),background-color var(--transition-fast);transform:rotate(0deg);display:inline-block;} .ae-faq-item[open] .ae-faq-item__summary::after{transform:rotate(180deg);background:var(--brand-secondary);} .ae-faq-item__summary:focus{box-shadow:0 0 0 4px rgba(32,65,122,0.12);border-radius:var(--border-radius-sm);} .ae-faq-item__summary:hover{background:var(--bg-surface-high);} .ae-faq-item__content{padding:0 var(--spacing-md) var(--spacing-md) var(--spacing-md);color:var(--fg-secondary);font-family:var(--font-body-md-family);font-size:var(--font-body-md-size);line-height:var(--font-body-md-line-height);border-top:1px solid transparent;transition:color var(--transition-fast);} .ae-faq-item[open] .ae-faq-item__content{border-top-color:var(--border-color-default);} @media (prefers-reduced-motion:reduce){.ae-faq-item,.ae-faq-item__summary::after{transition:none;}}

.atom-contact { font-family: var(--font-body-md-family); color: var(--fg-on-default); }
.atom-contact__card { background: var(--bg-surface-low); border: 1px solid var(--border-color-default); border-radius: var(--border-radius-md); padding: var(--spacing-md); box-shadow: var(--shadow-sm); }
.atom-contact__title { display: block; font-family: var(--font-title-md-family); font-size: var(--font-title-md-size); margin: 0 0 var(--spacing-md); }
.atom-contact__grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--spacing-md); }
.atom-contact__field { display: flex; flex-direction: column; }
.atom-contact__field--wide { grid-column: 1 / -1; }
.atom-contact__label { font-family: var(--font-label-md-family); font-size: var(--font-label-md-size); color: var(--fg-secondary); margin-bottom: var(--spacing-xs); }
.atom-contact__input, .atom-contact__textarea { background: var(--bg-default); color: var(--fg-on-default); border: 1px solid var(--border-color-default); border-radius: var(--border-radius-sm); padding: 10px; transition: box-shadow var(--transition-fast), border-color var(--transition-fast); font: inherit; }
.atom-contact__textarea { resize: vertical; min-height: 120px; }
.atom-contact__input:focus, .atom-contact__textarea:focus { outline: none; border-color: var(--brand-primary); box-shadow: 0 0 0 3px rgba(32,65,122,0.08); }
.atom-contact__actions { display: flex; align-items: center; gap: var(--spacing-md); margin-top: var(--spacing-md); }
.atom-contact__submit { background: var(--brand-primary); color: var(--fg-on-brand); padding: 10px 16px; border-radius: var(--border-radius-sm); font-family: var(--font-label-lg-family); font-size: var(--font-label-lg-size); font-weight: var(--font-label-lg-weight); box-shadow: var(--shadow-sm); transition: background .15s ease, transform .15s ease; display: inline-flex; align-items: center; gap: .5rem; }
.atom-contact__submit:hover { background: var(--brand-primary-hover); transform: translateY(-2px); }
.atom-contact__submit:active { transform: translateY(0); }
.atom-contact__status { margin: 0; font-size: var(--font-body-sm-size); color: var(--fg-secondary); }
.atom-contact__status[data-state="success"] { color: var(--color-success); }
.atom-contact__status[data-state="error"] { color: var(--color-error); }
.atom-contact__honeypot { position: absolute; left: -9999px; height: 0; width: 0; overflow: hidden; }
@media (max-width: 720px) { .atom-contact__grid { grid-template-columns: 1fr; } .atom-contact__actions { flex-direction: column; align-items: stretch; } .atom-contact__submit { width: 100%; justify-content: center; } }

.popin-conversion{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:1200}.popin-conversion[hidden]{display:none}.popin-conversion__backdrop{position:absolute;inset:0;background:linear-gradient(rgba(13,22,32,0.62),rgba(13,22,32,0.62));opacity:0;transition:opacity var(--transition-fast);pointer-events:none}.popin-conversion__panel{position:relative;max-width:720px;width:calc(100% - 48px);margin:0 var(--spacing-container-padding);background:var(--bg-surface-low);color:var(--fg-on-default);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);transform:translateY(8px);opacity:0;transition:opacity var(--transition-normal),transform var(--transition-normal);padding:calc(var(--spacing-lg) + 4px);display:flex;flex-direction:column;gap:var(--spacing-md)}.popin-conversion__close{position:absolute;top:12px;right:12px;width:36px;height:36px;border-radius:6px;color:var(--fg-secondary);background:transparent;display:flex;align-items:center;justify-content:center;transition:background var(--transition-fast),color var(--transition-fast)}.popin-conversion__close:focus,.popin-conversion__close:hover{background:var(--bg-subtle);color:var(--fg-on-default)}.popin-conversion__header{display:block;padding-right:48px}.popin-conversion__title{font-family:var(--font-title-lg-family);font-size:var(--font-title-lg-size);font-weight:var(--font-title-lg-weight);line-height:var(--font-title-lg-line-height);color:var(--fg-on-default);margin:0 0 8px}.popin-conversion__argument{margin:0;color:var(--fg-secondary)}.popin-conversion__proof{display:block;padding:var(--spacing-sm) 0;border-top:1px solid var(--border-color-default);margin-top:var(--spacing-md)}.popin-conversion__testimonial{margin:0;color:var(--fg-secondary);font-style:normal;padding-top:var(--spacing-sm)}.popin-conversion__actions{display:flex;gap:var(--spacing-sm);align-items:center;justify-content:flex-start;margin-top:var(--spacing-md)}.popin-conversion__cta{display:inline-flex;align-items:center;gap:8px;padding:12px 18px;border-radius:var(--border-radius-sm);background:var(--bg-brand);color:var(--fg-on-brand);font-weight:600;box-shadow:none;transition:background .15s ease,transform .15s ease;box-sizing:border-box;border:2px solid transparent;border-bottom-width:3px}.popin-conversion__cta:hover{background:var(--brand-primary-hover);transform:translateY(-2px)}.popin-conversion__cta:active{transform:translateY(0)}.popin-conversion.is-open .popin-conversion__backdrop{opacity:1;pointer-events:auto}.popin-conversion.is-open .popin-conversion__panel{opacity:1;transform:none}.popin-conversion__panel::after{content:"";position:absolute;left:18px;right:18px;bottom:-10px;height:10px;background:linear-gradient(90deg,transparent 0%,rgba(32,65,122,0.06) 50%,transparent 100%);border-radius:0 0 var(--border-radius-md) var(--border-radius-md);pointer-events:none}.popin-conversion__panel:focus{outline:3px solid rgba(32,65,122,0.12);outline-offset:4px}.narrow .popin-conversion__panel{max-width:420px}.popin-conversion__title + .popin-conversion__argument{margin-top:4px}.popin-conversion__cta[aria-disabled="true"]{background:var(--bg-surface-high);color:var(--fg-disabled);pointer-events:none;transform:none}.popin-conversion__cta:focus{box-shadow:0 6px 18px rgba(27,35,43,0.08)}@media (max-width:640px){.popin-conversion__panel{width:calc(100% - 32px);padding:var(--spacing-md);border-radius:var(--border-radius-md)}.popin-conversion__close{top:8px;right:8px}}

.pe-popin.pe-popin--banner { position: fixed; top: 0; left: 0; right: 0; display: none; z-index: 1150; }
.pe-popin.pe-popin--banner[hidden] { display: none; }
.pe-popin.pe-popin--banner.is-open { display: block; }
.pe-popin__inner { max-width: var(--container-max-width); margin: 0 auto; padding: 12px var(--container-padding-x); background: linear-gradient(90deg, var(--bg-brand) 0%, var(--bg-surface-high) 100%); color: var(--fg-on-brand); border-bottom-left-radius: var(--border-radius-md); border-bottom-right-radius: var(--border-radius-md); display: flex; gap: var(--spacing-md); align-items: center; box-shadow: var(--shadow-sm); }
.pe-popin__left { flex: 1; }
.pe-popin__title { font-family: var(--font-title-lg-family); font-size: var(--font-title-lg-size); color: var(--fg-on-brand); display: block; }
.pe-popin__argument { color: rgba(255,255,255,0.9); margin-top: 4px; }
.pe-popin__form { display: flex; gap: var(--spacing-sm); align-items: center; }
.pe-popin__input { padding: 10px 12px; border-radius: var(--border-radius-sm); border: 1px solid rgba(255,255,255,0.12); background: rgba(255,255,255,0.06); color: var(--fg-on-brand); min-width: 220px; }
.pe-popin__input::placeholder { color: rgba(255,255,255,0.7); }
.pe-popin__cta { background: var(--bg-accent); color: var(--fg-on-accent); padding: 10px 14px; border-radius: var(--border-radius-sm); font-weight: 600; }
.pe-popin__cta:hover, .pe-popin__cta:focus { background: var(--brand-accent-hover); }
.pe-popin__close { margin-left: 8px; color: var(--fg-on-brand); background: transparent; width: 36px; height: 36px; display: grid; place-items: center; }
@media (max-width: 820px) { .pe-popin__inner { flex-direction: column; align-items: stretch; gap: var(--spacing-sm); } .pe-popin__form { width: 100%; } .pe-popin__input { width: 100%; } }
@media (prefers-reduced-motion: reduce) { .pe-popin__inner { transition: none; } }

.pe-popin { --panel-max-width: 540px; position: fixed; inset: 0; display: none; align-items: center; justify-content: center; z-index: 1200; font-family: var(--font-body-md-family); }
.pe-popin[hidden] { display: none; }
.pe-popin.is-open { display: flex; }
.pe-popin__backdrop { position: absolute; inset: 0; background: rgba(11,18,28,0.6); backdrop-filter: blur(4px); opacity: 0; transition: opacity var(--transition-fast); }
.pe-popin.is-open .pe-popin__backdrop { opacity: 1; }
.pe-popin__panel { position: relative; max-width: var(--panel-max-width); width: calc(100% - 48px); background: var(--bg-surface-low); color: var(--fg-on-default); border-radius: var(--border-radius-lg); box-shadow: var(--shadow-lg); padding: var(--spacing-lg); transform: translateY(8px) scale(.99); opacity: 0; transition: transform var(--transition-fast), opacity var(--transition-fast); }
.pe-popin.is-open .pe-popin__panel { transform: translateY(0) scale(1); opacity: 1; }
.pe-popin__close { position: absolute; top: var(--spacing-sm); right: var(--spacing-sm); width: 36px; height: 36px; display: grid; place-items: center; background: transparent; color: var(--fg-secondary); border-radius: var(--border-radius-sm); transition: background var(--transition-fast), color var(--transition-fast); }
.pe-popin__close:hover, .pe-popin__close:focus { background: rgba(0,0,0,0.04); color: var(--fg-on-default); }
.pe-popin__content { display: grid; gap: var(--spacing-sm); }
.pe-popin__title { font-family: var(--font-title-lg-family); font-size: var(--font-title-lg-size); color: var(--fg-on-default); margin-bottom: 4px; }
.pe-popin__argument { color: var(--fg-secondary); margin-bottom: 8px; }
.pe-popin__form { display: flex; gap: var(--spacing-sm); align-items: center; margin-top: var(--spacing-sm); }
.pe-popin__label { flex: 1; display: block; }
.pe-popin__input { width: 100%; padding: 12px 14px; border-radius: var(--border-radius-sm); border: 1px solid var(--border-color-default); background: var(--bg-default); color: var(--fg-on-default); transition: box-shadow var(--transition-fast), border-color var(--transition-fast); font: inherit; }
.pe-popin__input:focus { outline: none; border-color: var(--brand-primary); box-shadow: 0 0 0 4px rgba(32,65,122,0.06); }
.pe-popin__cta { background: var(--bg-brand); color: var(--fg-on-brand); padding: 12px 16px; border-radius: var(--border-radius-sm); font-weight: 600; transition: background .15s ease, transform .15s ease; box-shadow: none; }
.pe-popin__cta:hover, .pe-popin__cta:focus { background: var(--brand-primary-hover); transform: translateY(-1px); }
.pe-popin__cta:active { transform: translateY(0); }
.pe-popin__visuallyhidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); border: 0; }
.pe-popin__panel::after { content: ""; position: absolute; left: 16px; right: 16px; bottom: -8px; height: 8px; border-radius: 8px 8px 0 0; background: linear-gradient(180deg, rgba(27,35,43,0.06), rgba(27,35,43,0)); pointer-events: none; }
@media (max-width: 520px) {
  .pe-popin__panel { width: calc(100% - 24px); padding: var(--spacing-md); border-radius: var(--border-radius-md); }
  .pe-popin__form { flex-direction: column-reverse; align-items: stretch; }
  .pe-popin__cta { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .pe-popin__panel, .pe-popin__backdrop { transition: none; }
}

.pe-popin.pe-popin--slide { position: fixed; display: none; z-index: 1100; }
.pe-popin.pe-popin--slide[hidden] { display: none; }
.pe-popin.pe-popin--slide.is-open { display: block; }
.pe-popin.pe-popin--br { right: var(--spacing-container-padding); bottom: var(--spacing-container-padding); }
.pe-popin.pe-popin--br .pe-popin__panel { width: 320px; background: var(--bg-surface-low); color: var(--fg-on-default); border-radius: var(--border-radius-lg); box-shadow: var(--shadow-md); padding: var(--spacing-md); transform: translateY(12px); opacity: 0; transition: transform var(--transition-fast), opacity var(--transition-fast); }
.pe-popin.pe-popin--br.is-open .pe-popin__panel { transform: translateY(0); opacity: 1; }
.pe-popin__close { position: absolute; top: 8px; right: 8px; color: var(--fg-secondary); width: 32px; height: 32px; display: grid; place-items: center; }
.pe-popin__content { display: grid; gap: 8px; }
.pe-popin__title { font-family: var(--font-title-md-family); font-size: var(--font-title-md-size); color: var(--fg-on-default); }
.pe-popin__argument { font-size: var(--font-body-sm-size); color: var(--fg-secondary); }
.pe-popin__form { display: flex; gap: var(--spacing-sm); align-items: center; }
.pe-popin__input { flex: 1; padding: 10px 12px; border-radius: var(--border-radius-sm); border: 1px solid var(--border-color-default); background: var(--bg-default); color: var(--fg-on-default); }
.pe-popin__cta { background: var(--bg-accent); color: var(--fg-on-accent); padding: 10px 12px; border-radius: var(--border-radius-sm); font-weight: 600; transition: transform var(--transition-fast); }
.pe-popin__cta:hover, .pe-popin__cta:focus { transform: translateY(-1px); background: var(--brand-accent-hover); }
@media (max-width: 480px) { .pe-popin.pe-popin--br { left: var(--spacing-container-padding); right: var(--spacing-container-padding); bottom: var(--spacing-container-padding); } .pe-popin.pe-popin--br .pe-popin__panel { width: 100%; } }
@media (prefers-reduced-motion: reduce) { .pe-popin__panel { transition: none; } }

.ae-popin { position: fixed; inset: 0; display: none; align-items: center; justify-content: center; padding: var(--spacing-container-padding); z-index: 1200; }
.ae-popin[aria-hidden="false"], .ae-popin.is-open { display: flex; }
.ae-popin__panel { width: 100%; max-width: 460px; background: var(--bg-surface-low); color: var(--fg-on-default); border-radius: var(--border-radius-lg); box-shadow: var(--shadow-lg); padding: calc(var(--spacing-md)); position: relative; transition: transform .15s ease, opacity .15s ease; transform: translateY(6px); opacity: 0; }
.ae-popin.is-open .ae-popin__panel, .ae-popin[aria-hidden="false"] .ae-popin__panel { transform: translateY(0); opacity: 1; }
.ae-popin__header { margin-bottom: var(--spacing-sm); }
.ae-popin__title { font-family: var(--font-title-lg-family); font-size: var(--font-title-lg-size); font-weight: var(--font-title-lg-weight); color: var(--fg-on-default); margin: 0; }
.ae-popin__body { margin-bottom: var(--spacing-md); }
.ae-popin__desc { color: var(--fg-secondary); font-size: var(--font-body-sm-size); margin: 0; }
.ae-popin__footer { display: flex; gap: var(--spacing-sm); justify-content: flex-end; }
.ae-popin__btn { padding: .6rem .9rem; border-radius: var(--border-radius-sm); font-weight: 600; transition: background-color var(--transition-fast), transform var(--transition-fast); box-shadow: none; }
.ae-popin__btn--accept { background: var(--bg-brand); color: var(--fg-on-brand); border: 1px solid transparent; }
.ae-popin__btn--accept:hover, .ae-popin__btn--accept:focus { background: var(--brand-primary-hover); }
.ae-popin__btn--decline { background: var(--bg-subtle); color: var(--fg-on-default); border: 1px solid var(--border-color-default); }
.ae-popin__btn--decline:hover, .ae-popin__btn--decline:focus { background: var(--bg-surface-high); }
.ae-popin__btn:active { transform: translateY(1px); }
.ae-popin__close { position: absolute; top: calc(var(--spacing-sm)); right: calc(var(--spacing-sm)); background: transparent; color: var(--fg-secondary); padding: .35rem; border-radius: var(--border-radius-sm); }
.ae-popin__close:hover { color: var(--fg-on-default); }
.ae-popin__panel::after { content: ""; position: absolute; left: 12px; right: 12px; bottom: -10px; height: 8px; border-radius: 6px; background: linear-gradient(90deg, rgba(32,65,122,0.06), rgba(0,0,0,0)); pointer-events: none; }
@media (prefers-reduced-motion: reduce) { .ae-popin__panel { transition: none; } }
@media (max-width: 520px) { .ae-popin__panel { padding: calc(var(--spacing-sm)); } }

.reassurance { --pad: var(--spacing-md); padding: calc(var(--pad) / 2) var(--pad); background: var(--bg-surface-high); border-radius: var(--border-radius-md); box-shadow: var(--shadow-sm); display: block; }
.reassurance__list { display: flex; gap: var(--spacing-md); align-items: center; justify-content: space-between; max-width: var(--container-max-width); margin: 0 auto; padding: 0; }
.reassurance__item { display: flex; gap: var(--spacing-sm); align-items: center; background: transparent; padding: calc(var(--spacing-sm) + 2px) calc(var(--spacing-sm) + 4px); border-radius: var(--border-radius-sm); transition: transform var(--transition-fast), box-shadow var(--transition-fast); }
.reassurance__item:focus-within, .reassurance__item:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); }
.reassurance__icon { font-size: 1.125rem; color: var(--brand-primary); background: rgba(32,65,122,0.06); padding: 6px; border-radius: 8px; display: inline-flex; align-items: center; justify-content: center; }
.reassurance__text { font-family: var(--font-label-md-family); font-size: var(--font-label-md-size); font-weight: var(--font-label-md-weight); color: var(--fg-on-default); }
@media (max-width: 720px) {
  .reassurance__list { gap: var(--spacing-sm); overflow-x: auto; padding-bottom: var(--spacing-sm); }
  .reassurance__item { min-width: max-content; }
}

.reassurance-grid { padding: var(--spacing-md); background: linear-gradient(180deg, var(--bg-default) 0%, var(--bg-surface-high) 100%); border-radius: var(--border-radius-lg); max-width: var(--container-max-width); margin: 0 auto; }
.reassurance-grid__title { font-family: var(--font-headline-sm-family); font-size: var(--font-headline-sm-size); font-weight: var(--font-headline-sm-weight); color: var(--fg-on-default); margin: 0 0 var(--spacing-sm); }
.reassurance-grid__grid { display: grid; gap: var(--spacing-md); grid-template-columns: repeat(4, 1fr); }
.reassurance-grid__card { background: var(--bg-surface-low); border: 1px solid var(--border-color-default); border-radius: var(--border-radius-md); padding: var(--spacing-md); display: flex; flex-direction: column; gap: var(--spacing-sm); align-items: flex-start; transition: box-shadow var(--transition-fast), transform var(--transition-fast); box-shadow: var(--shadow-sm); }
.reassurance-grid__card:hover, .reassurance-grid__card:focus-within { transform: translateY(-6px); box-shadow: var(--shadow-lg); }
.reassurance-grid__icon { font-size: 1.4rem; color: var(--bg-brand); background: rgba(32,65,122,0.06); padding: 8px; border-radius: var(--border-radius-sm); }
.reassurance-grid__heading { font-family: var(--font-title-md-family); font-size: var(--font-title-md-size); font-weight: var(--font-title-md-weight); color: var(--fg-on-default); margin: 0; }
.reassurance-grid__desc { font-family: var(--font-body-sm-family); font-size: var(--font-body-sm-size); color: var(--fg-secondary); margin: 0; }
@media (max-width: 1000px) {
  .reassurance-grid__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 560px) {
  .reassurance-grid__grid { grid-template-columns: 1fr; }
}

.ae-social { display: block; }
.ae-social__list { display: flex; gap: var(--spacing-sm); align-items: center; margin: 0; padding: 0; }
.ae-social__item { list-style: none; }
.ae-social__link {
  display: inline-grid; place-items: center; width: 40px; height: 40px;
  border-radius: var(--border-radius-sm);
  background: var(--bg-surface-low);
  color: var(--fg-on-default);
  box-shadow: var(--shadow-sm);
  transition: transform var(--transition-fast), box-shadow var(--transition-fast), background-color var(--transition-fast), color var(--transition-fast);
  font-size: 1.125rem;
}
.ae-social__link i { line-height: 1; }
.ae-social__link:focus { outline: none; box-shadow: 0 0 0 3px rgba(32,65,122,0.12); }
.ae-social__link:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); }
.ae-social__link:active { transform: translateY(-1px); }
.ae-social__link[aria-label="Facebook"] { background: var(--bg-brand); color: var(--fg-on-brand); }
.ae-social__link[aria-label="Facebook"]:hover { background: var(--brand-primary-hover); }
.ae-social__link[aria-label="Instagram"] { background: linear-gradient(135deg, var(--brand-accent) 0%, var(--bg-brand) 100%); color: var(--fg-on-accent); }
.ae-social__link[aria-label="Instagram"]:hover { filter: brightness(0.95); }
.ae-social__link[aria-label="X"] { background: var(--bg-default); color: var(--fg-on-default); border: 1px solid var(--border-color-default); }
.ae-social__link[aria-label="X"]:hover { background: var(--bg-subtle); }
.ae-social__link[aria-label="YouTube"] { background: var(--brand-secondary); color: var(--fg-on-brand); }
.ae-social__link[aria-label="YouTube"]:hover { background: var(--brand-secondary-hover); }
.ae-social__link[aria-label="LinkedIn"] { background: var(--bg-surface-low); color: var(--fg-on-default); border: 1px solid transparent; }
.ae-social__link[aria-label="LinkedIn"]:hover { background: var(--bg-surface-high); border-color: var(--border-color-strong); }
@media (prefers-reduced-motion: reduce) {
  .ae-social__link { transition: none; }
  .ae-social__link:hover { transform: none; }
}
[data-theme="dark"] .ae-social__link { background: var(--bg-inverse); color: var(--fg-on-brand); border-color: rgba(255,255,255,0.06); }
[data-theme="dark"] .ae-social__link[aria-label="Facebook"] { background: var(--brand-primary); color: var(--fg-on-brand); }
[data-theme="dark"] .ae-social__link[aria-label="Instagram"] { background: linear-gradient(135deg, var(--brand-accent) 0%, var(--brand-primary) 100%); color: var(--fg-on-accent); }
[data-theme="dark"] .ae-social__link[aria-label="YouTube"] { background: var(--brand-secondary); color: var(--fg-on-brand); }
[data-theme="dark"] .ae-social__link[aria-label="X"] { background: transparent; border: 1px solid rgba(255,255,255,0.06); color: var(--fg-on-default); }
.ae-social__link:focus-visible { box-shadow: 0 0 0 4px rgba(32,65,122,0.14); }
.ae-social__link { font-family: var(--font-label-md-family); }

.atom--testimonial {
  background: var(--bg-surface-low);
  border-radius: var(--border-radius-md);
  padding: var(--spacing-md);
  box-shadow: var(--shadow-sm);
  max-width: 680px;
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--spacing-sm);
}
.atom--testimonial__quote {
  margin: 0;
  padding: 0;
  font-family: var(--font-body-lg-family);
  font-size: var(--font-body-lg-size);
  line-height: var(--font-body-lg-line-height);
  color: var(--fg-on-default);
}
.atom--testimonial__meta {
  display: flex;
  align-items: center;
  gap: var(--spacing-md);
}
.atom--testimonial__avatar-wrap {
  position: relative;
  width: 56px;
  height: 56px;
  flex: 0 0 56px;
  border-radius: var(--border-radius-full);
  overflow: hidden;
  background: var(--bg-subtle);
  box-shadow: var(--shadow-sm);
}
.atom--testimonial__avatar {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.atom--testimonial__chevron {
  position: absolute;
  right: -6px;
  bottom: -6px;
  background: var(--bg-brand);
  color: var(--fg-on-brand);
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border-radius: 6px;
  box-shadow: var(--shadow-sm);
  transform: rotate(0deg);
  transition: transform var(--transition-fast), background-color var(--transition-fast);
}
.atom--testimonial__author {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.atom--testimonial__name {
  font-family: var(--font-label-lg-family);
  font-size: var(--font-label-lg-size);
  font-weight: var(--font-label-lg-weight);
  color: var(--fg-on-default);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.atom--testimonial__role {
  font-family: var(--font-body-sm-family);
  font-size: var(--font-body-sm-size);
  color: var(--fg-secondary);
}
.atom--testimonial:hover .atom--testimonial__chevron,
.atom--testimonial:focus-within .atom--testimonial__chevron {
  transform: translateY(-4px) rotate(8deg);
  background: var(--brand-accent);
  color: var(--fg-on-accent);
}
@media (min-width: 720px) {
  .atom--testimonial {
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: var(--spacing-md);
  }
  .atom--testimonial__quote {
    font-size: var(--font-body-lg-size);
  }
}
[data-theme="dark"] .atom--testimonial {
  background: var(--bg-inverse);
  box-shadow: none;
}
[data-theme="dark"] .atom--testimonial__quote {
  color: var(--fg-on-brand);
}
[data-theme="dark"] .atom--testimonial__avatar-wrap {
  background: var(--bg-surface-high);
}
[data-theme="dark"] .atom--testimonial__chevron {
  background: var(--bg-brand);
  color: var(--fg-on-brand);
}
[data-theme="dark"] .atom--testimonial__role {
  color: var(--fg-secondary);
}
