:root {
  --eah-ink: #11121a;
  --eah-muted: #676a7a;
  --eah-line: #e6e8f2;
  --eah-soft: #f6f7fc;
  --eah-brand: #5969e2;
  --eah-brand-dark: #4656c8;
  --eah-night: #090a11;
  --eah-night-2: #151025;
  --eah-radius: 24px;
  --eah-shadow: 0 24px 70px rgba(31, 25, 69, .12);
}

body.archive .site-content,
body.category .site-content { display: block; max-width: none; padding: 0; }
body.archive #primary,
body.category #primary,
body.archive #main,
body.category #main { width: 100%; max-width: none; margin: 0; padding: 0; }
body.archive .elementor-location-archive,
body.category .elementor-location-archive { width: 100%; }
.easysub-archive-shell > .elementor-container { max-width: none !important; }
.easysub-archive-shell .elementor-column-gap-default > .elementor-column > .elementor-element-populated { padding: 0 !important; }

.eah { overflow: hidden; color: var(--eah-ink); background: #fff; font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
.eah *, .eah *:before, .eah *:after { box-sizing: border-box; }
.eah img { max-width: 100%; }
.eah a { color: inherit; }
.eah [hidden] { display: none !important; }
.eah-shell { width: min(1200px, calc(100% - 48px)); margin-inline: auto; }
.eah-section { padding: 96px 0; }
.eah-eyebrow { margin: 0 0 12px; color: var(--eah-brand); font-size: 12px; font-weight: 850; line-height: 1.2; letter-spacing: .14em; text-transform: uppercase; }
.eah-heading { margin-bottom: 34px; }
.eah-heading h2 { max-width: 760px; margin: 0; color: var(--eah-ink); font-size: clamp(32px, 4vw, 54px); font-weight: 760; line-height: 1.04; letter-spacing: -.045em; }
.eah-heading > p:not(.eah-eyebrow), .eah-heading-split > p { margin: 0; color: var(--eah-muted); font-size: 17px; line-height: 1.75; }
.eah-heading-split { display: grid; grid-template-columns: 1.15fr .85fr; gap: 68px; align-items: end; }
.eah-heading-center { max-width: 820px; margin-inline: auto; text-align: center; }
.eah-heading-center h2 { margin-inline: auto; }
.eah-heading-center > p:last-child { max-width: 700px; margin: 20px auto 0; }

.eah-hero { position: relative; isolation: isolate; overflow: hidden; padding: 108px 0 92px; color: #fff; background: radial-gradient(circle at 18% 20%, rgba(89,105,226,.3), transparent 31%), radial-gradient(circle at 88% 8%, rgba(235,82,199,.22), transparent 28%), linear-gradient(135deg,#090a12 0%,#171026 55%,#0a0811 100%); }
.eah-hero:after { content: ""; position: absolute; z-index: -1; inset: 0; opacity: .15; background-image: linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px); background-size: 64px 64px; mask-image: linear-gradient(to bottom,#000,transparent 80%); }
.eah-orb { position: absolute; z-index: -1; border-radius: 50%; pointer-events: none; filter: blur(90px); }
.eah-orb-one { width: 380px; height: 380px; left: -160px; bottom: -210px; background: rgba(89,105,226,.55); }
.eah-orb-two { width: 320px; height: 320px; right: -100px; top: -170px; background: rgba(238,82,199,.38); }
.eah-hero-grid { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(300px,.75fr); gap: 80px; align-items: center; }
.eah-kicker { display: flex; align-items: center; gap: 10px; margin: 0 0 20px; color: #cdd3ff; font-size: 13px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.eah-kicker span { width: 8px; height: 8px; border-radius: 50%; background: #65e3c4; box-shadow: 0 0 18px rgba(101,227,196,.85); }
.eah-hero h1 { max-width: 900px; margin: 0; color: #fff; font-size: clamp(44px, 5.5vw, 76px); font-weight: 720; line-height: .98; letter-spacing: -.055em; }
.eah-hero-copy > p:last-of-type, .eah-blog-hero-inner > p:not(.eah-kicker) { max-width: 750px; margin: 28px 0 0; color: #c8c5d2; font-size: 18px; line-height: 1.75; }
.eah-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; }
.eah-button { display: inline-flex; align-items: center; justify-content: center; gap: 12px; min-height: 52px; padding: 0 22px; border: 1px solid transparent; border-radius: 13px; font-size: 14px; font-weight: 850; text-decoration: none !important; transition: transform .18s ease, background .18s ease, border-color .18s ease, box-shadow .18s ease; }
.eah-button:hover { transform: translateY(-2px); }
.eah-button-primary { color: #fff !important; background: var(--eah-brand); box-shadow: 0 16px 34px rgba(89,105,226,.28); }
.eah-button-primary:hover { background: var(--eah-brand-dark); }
.eah-button-secondary { color: #f8f8ff !important; border-color: rgba(255,255,255,.2); background: rgba(255,255,255,.07); }
.eah-button-secondary:hover { border-color: rgba(255,255,255,.38); background: rgba(255,255,255,.12); }
.eah-hero-panel { padding: 30px; border: 1px solid rgba(255,255,255,.13); border-radius: 24px; background: rgba(255,255,255,.055); box-shadow: inset 0 1px rgba(255,255,255,.08),0 28px 70px rgba(0,0,0,.28); backdrop-filter: blur(14px); }
.eah-hero-panel > span { color: #9faaff; font-size: 11px; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.eah-hero-panel strong { display: block; margin: 12px 0 22px; color: #fff; font-size: 28px; line-height: 1.15; }
.eah-hero-panel ul { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.eah-hero-panel li { position: relative; padding-left: 26px; color: #d4d2df; font-size: 14px; }
.eah-hero-panel li:before { content: "✓"; position: absolute; left: 0; color: #65e3c4; font-weight: 900; }

.eah-creation { background: #fff; }
.eah-creation-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 16px; }
.eah-creation-card { position: relative; min-height: 240px; display: flex; flex-direction: column; justify-content: space-between; padding: 24px; overflow: hidden; border: 1px solid rgba(255,255,255,.1); border-radius: 22px; color: #fff !important; background: radial-gradient(circle at 90% 5%,rgba(103,119,240,.38),transparent 38%),linear-gradient(145deg,#11131d,#171126); text-decoration: none !important; transition: transform .2s ease,box-shadow .2s ease,border-color .2s ease; }
.eah-creation-card:hover { transform: translateY(-5px); border-color: rgba(117,132,245,.6); box-shadow: 0 24px 54px rgba(30,22,69,.24); }
.eah-creation-card > b { position: absolute; right: 20px; top: 18px; color: #bec5ff; font-size: 18px; }
.eah-creation-icon { display: grid; place-items: center; width: 54px; height: 54px; border: 1px solid rgba(255,255,255,.16); border-radius: 15px; color: #fff; background: rgba(89,105,226,.34); font-size: 13px; font-weight: 900; letter-spacing: -.02em; }
.eah-creation-card h3 { margin: 30px 0 9px; color: #fff; font-size: 20px; line-height: 1.2; }
.eah-creation-card p { margin: 0; color: #bcb9c9; font-size: 13px; line-height: 1.65; }

.eah-directory { background: var(--eah-soft); }
.eah-toolbar { display: grid; gap: 18px; padding: 20px; border: 1px solid var(--eah-line); border-radius: 20px; background: #fff; box-shadow: 0 16px 45px rgba(30,27,62,.07); }
.eah-search { display: flex; align-items: center; gap: 12px; min-height: 54px; padding: 0 16px; border: 1px solid #dfe2ee; border-radius: 13px; background: #fafbfe; }
.eah-search:focus-within { border-color: var(--eah-brand); box-shadow: 0 0 0 3px rgba(89,105,226,.12); }
.eah-search i { color: #7b8092; font-size: 24px; font-style: normal; }
.eah-search input { width: 100%; min-width: 0; padding: 0; border: 0 !important; outline: 0 !important; color: var(--eah-ink); background: transparent !important; box-shadow: none !important; font-size: 16px; }
.eah-filters { display: flex; flex-wrap: wrap; gap: 8px; }
.eah-filters button { min-height: 40px; padding: 0 14px; border: 1px solid #e0e3ed; border-radius: 999px; color: #525666; background: #fff; font-size: 12px; font-weight: 800; cursor: pointer; }
.eah-filters button span { display: inline-grid; place-items: center; min-width: 22px; height: 22px; margin-left: 6px; border-radius: 999px; color: #73788a; background: #f0f1f6; font-size: 10px; }
.eah-filters button[aria-pressed="true"] { color: #fff; border-color: var(--eah-brand); background: var(--eah-brand); }
.eah-filters button[aria-pressed="true"] span { color: #fff; background: rgba(255,255,255,.16); }
.eah-result-count { margin: 22px 0 16px; color: var(--eah-muted); font-size: 13px; }
.eah-result-count strong { color: var(--eah-ink); }
.eah-tools-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; }
.eah-tool-card { overflow: hidden; border: 1px solid var(--eah-line); border-radius: 20px; background: #fff; box-shadow: 0 12px 34px rgba(31,29,62,.06); transition: transform .2s ease,box-shadow .2s ease,border-color .2s ease; }
.eah-tool-card:hover { transform: translateY(-4px); border-color: rgba(89,105,226,.35); box-shadow: 0 22px 48px rgba(38,32,86,.13); }
.eah-tool-media { display: block; aspect-ratio: 16/9; overflow: hidden; background: #eef0f8; }
.eah-card-image { width: 100%; height: 100%; display: block; object-fit: cover; transition: transform .35s ease; }
.eah-tool-card:hover .eah-card-image,.eah-post-card:hover .eah-card-image,.eah-feature-main:hover .eah-card-image { transform: scale(1.025); }
.eah-image-fallback { width: 100%; height: 100%; display: flex; align-items: flex-end; justify-content: space-between; padding: 24px; color: #d8dcff; background: radial-gradient(circle at 75% 20%,rgba(238,82,199,.3),transparent 36%),linear-gradient(135deg,#161122,#343d9d); }
.eah-image-fallback span { font-size: 13px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.eah-image-fallback b { color: #fff; font-size: 44px; line-height: 1; }
.eah-tool-copy { padding: 22px; }
.eah-tool-copy > span { color: var(--eah-brand); font-size: 10px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.eah-tool-copy h3 { min-height: 48px; margin: 9px 0 8px; color: var(--eah-ink); font-size: 20px; line-height: 1.2; }
.eah-tool-copy h3 a,.eah-post-copy h3 a,.eah-feature-copy h3 a { text-decoration: none !important; }
.eah-tool-copy p { min-height: 68px; margin: 0; color: var(--eah-muted); font-size: 13px; line-height: 1.7; }
.eah-card-link { display: inline-flex; gap: 9px; align-items: center; margin-top: 16px; color: #3446c5 !important; font-size: 12px; font-weight: 850; text-decoration: none !important; }
.eah-card-link span { transition: transform .18s ease; }
.eah-card-link:hover span { transform: translateX(3px); }
.eah-empty { padding: 50px; border: 1px dashed #cfd3e3; border-radius: 20px; text-align: center; background: #fff; }
.eah-empty strong { font-size: 22px; }
.eah-empty p { color: var(--eah-muted); }
.eah-empty a { color: var(--eah-brand); font-weight: 800; }

.eah-faq { color: #fff; background: radial-gradient(circle at 15% 20%,rgba(89,105,226,.2),transparent 33%),var(--eah-night); }
.eah-faq-layout { display: grid; grid-template-columns: .78fr 1.22fr; gap: 80px; align-items: start; }
.eah-faq h2 { margin: 0; color: #fff; font-size: clamp(36px,4vw,54px); line-height: 1.04; letter-spacing: -.045em; }
.eah-faq-layout > div:first-child > p:last-child { color: #a9a7b3; font-size: 15px; line-height: 1.75; }
.eah-accordion { display: grid; gap: 10px; }
.eah-accordion details { border: 1px solid rgba(255,255,255,.11); border-radius: 15px; background: rgba(255,255,255,.045); }
.eah-accordion summary { position: relative; padding: 20px 52px 20px 20px; color: #f8f8fb; font-size: 15px; font-weight: 800; cursor: pointer; list-style: none; }
.eah-accordion summary::-webkit-details-marker { display: none; }
.eah-accordion summary:after { content: "+"; position: absolute; right: 20px; top: 18px; color: #aeb7ff; font-size: 22px; }
.eah-accordion details[open] summary:after { content: "−"; }
.eah-accordion details p { margin: 0; padding: 0 20px 20px; color: #aaa8b5; font-size: 14px; line-height: 1.7; }
.eah-final { padding: 70px 0; background: #fff; }
.eah-final-card { display: flex; align-items: center; justify-content: space-between; gap: 40px; padding: 48px; border-radius: 26px; color: #fff; background: radial-gradient(circle at 80% 10%,rgba(238,82,199,.3),transparent 32%),linear-gradient(135deg,#31238b,#17112c); box-shadow: var(--eah-shadow); }
.eah-final-card h2 { max-width: 720px; margin: 0; color: #fff; font-size: clamp(30px,4vw,48px); line-height: 1.05; letter-spacing: -.04em; }
.eah-final-card .eah-actions { flex: 0 0 auto; margin: 0; }

.eah-blog-hero { padding: 100px 0 88px; }
.eah-blog-hero-inner { max-width: 970px; text-align: center; }
.eah-blog-hero .eah-kicker { justify-content: center; }
.eah-blog-hero h1 { margin-inline: auto; }
.eah-blog-hero-inner > p:not(.eah-kicker) { margin-inline: auto; }
.eah-blog-hero .eah-actions { justify-content: center; }
.eah-topic-nav { border-bottom: 1px solid var(--eah-line); background: #fff; }
.eah-topic-nav .eah-shell { min-height: 72px; display: flex; align-items: center; gap: 10px; overflow-x: auto; scrollbar-width: none; }
.eah-topic-nav .eah-shell::-webkit-scrollbar { display: none; }
.eah-topic-nav span { flex: 0 0 auto; margin-right: 4px; color: #898c98; font-size: 11px; font-weight: 850; text-transform: uppercase; }
.eah-topic-nav a { flex: 0 0 auto; padding: 9px 13px; border: 1px solid #e2e4ed; border-radius: 999px; color: #535767; font-size: 12px; font-weight: 800; text-decoration: none !important; }
.eah-topic-nav a:hover { color: #fff; border-color: var(--eah-brand); background: var(--eah-brand); }
.eah-featured { padding-bottom: 64px; }
.eah-featured-grid { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(300px,.65fr); gap: 22px; }
.eah-feature-main { overflow: hidden; border: 1px solid var(--eah-line); border-radius: 24px; background: #fff; box-shadow: var(--eah-shadow); }
.eah-feature-media { display: block; aspect-ratio: 16/8.4; overflow: hidden; background: #eef0f8; }
.eah-feature-media > * { width: 100%; height: 100%; }
.eah-feature-copy { padding: 30px; }
.eah-feature-copy h3 { max-width: 760px; margin: 12px 0; color: var(--eah-ink); font-size: clamp(28px,3vw,42px); line-height: 1.08; letter-spacing: -.035em; }
.eah-feature-copy > p { margin: 0; color: var(--eah-muted); font-size: 15px; line-height: 1.75; }
.eah-feature-side { display: grid; gap: 22px; }
.eah-post-card { overflow: hidden; border: 1px solid var(--eah-line); border-radius: 20px; background: #fff; transition: transform .2s ease,box-shadow .2s ease,border-color .2s ease; }
.eah-post-card:hover { transform: translateY(-4px); border-color: rgba(89,105,226,.32); box-shadow: 0 22px 48px rgba(38,32,86,.11); }
.eah-post-media { display: block; aspect-ratio: 16/9; overflow: hidden; background: #eef0f8; }
.eah-post-media > * { width: 100%; height: 100%; }
.eah-post-copy { padding: 22px; }
.eah-post-meta { display: flex; flex-wrap: wrap; gap: 8px 14px; color: #8a8e9c; font-size: 10px; font-weight: 750; letter-spacing: .03em; text-transform: uppercase; }
.eah-post-meta span { position: relative; padding-left: 13px; }
.eah-post-meta span:before { content: ""; position: absolute; left: 0; top: 50%; width: 3px; height: 3px; border-radius: 50%; background: #a6a9b5; }
.eah-post-copy h3 { margin: 11px 0 9px; color: var(--eah-ink); font-size: 21px; line-height: 1.2; letter-spacing: -.02em; }
.eah-post-copy > p { margin: 0; color: var(--eah-muted); font-size: 13px; line-height: 1.68; }
.eah-post-compact { display: grid; grid-template-columns: 1fr; grid-template-rows: 158px minmax(0,1fr); min-height: 0; }
.eah-post-compact .eah-post-media { width: 100%; height: 158px; min-height: 0; aspect-ratio: auto; border-bottom: 1px solid var(--eah-line); background: linear-gradient(145deg,#eef0f8,#f8f8fc); }
.eah-post-compact .eah-post-media .eah-card-image { width: 100% !important; height: 100% !important; object-fit: cover !important; object-position: center center; }
.eah-post-compact .eah-image-fallback { align-items: center; padding: 20px 24px; }
.eah-post-compact .eah-post-copy { min-width: 0; display: flex; flex-direction: column; align-items: flex-start; padding: 20px; }
.eah-post-compact .eah-post-copy h3 { font-size: 18px; }
.eah-post-compact .eah-post-copy > p { display: none; }
.eah-post-compact .eah-card-link { margin-top: auto; padding-top: 14px; }
/* BLOG_COMPACT_MEDIA_V2: compact featured cards use a real banner, never a stretched side rail. */
.eah-latest { padding-top: 54px; background: var(--eah-soft); scroll-margin-top: 90px; }
.eah-post-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; }
.eah-pagination { margin-top: 44px; }
.eah-pagination .page-numbers { display: flex; flex-wrap: wrap; justify-content: center; gap: 7px; margin: 0; padding: 0; list-style: none; }
.eah-pagination a,.eah-pagination span { min-width: 40px; height: 40px; display: grid; place-items: center; padding: 0 12px; border: 1px solid #dfe2eb; border-radius: 10px; color: #555a69; background: #fff; font-size: 12px; font-weight: 800; text-decoration: none !important; }
.eah-pagination .current,.eah-pagination a:hover { color: #fff; border-color: var(--eah-brand); background: var(--eah-brand); }
.eah-coverage { background: #fff; }
.eah-coverage-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 16px; }
.eah-coverage-grid article { padding: 26px; border: 1px solid var(--eah-line); border-radius: 20px; background: linear-gradient(145deg,#fff,#f8f8fd); }
.eah-coverage-grid article > span { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 11px; color: #fff; background: var(--eah-brand); font-size: 11px; font-weight: 900; }
.eah-coverage-grid h3 { margin: 24px 0 9px; color: var(--eah-ink); font-size: 19px; }
.eah-coverage-grid p { margin: 0; color: var(--eah-muted); font-size: 13px; line-height: 1.7; }

@media (max-width: 1024px) {
  .eah-hero-grid,.eah-heading-split,.eah-faq-layout { grid-template-columns: 1fr; gap: 34px; }
  .eah-hero-panel { max-width: 560px; }
  .eah-creation-grid,.eah-coverage-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .eah-tools-grid,.eah-post-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .eah-featured-grid { grid-template-columns: 1fr; }
  .eah-feature-side { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .eah-final-card { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 768px) {
  .eah-shell { width: min(100% - 32px,1200px); }
  .eah-section { padding: 70px 0; }
  .eah-hero { padding: 78px 0 68px; }
  .eah-hero h1 { font-size: clamp(40px,12vw,58px); }
  .eah-hero-copy > p:last-of-type,.eah-blog-hero-inner > p:not(.eah-kicker) { font-size: 16px; line-height: 1.65; }
  .eah-heading h2 { font-size: 36px; }
  .eah-creation-grid,.eah-tools-grid,.eah-post-grid,.eah-coverage-grid,.eah-feature-side { grid-template-columns: 1fr; }
  .eah-creation-card { min-height: 205px; }
  .eah-post-compact { grid-template-columns: 120px 1fr; }
  .eah-toolbar { padding: 14px; }
  .eah-filters { flex-wrap: nowrap; margin-inline: -2px; padding: 2px; overflow-x: auto; scrollbar-width: none; }
  .eah-filters::-webkit-scrollbar { display: none; }
  .eah-filters button { flex: 0 0 auto; }
  .eah-final { padding: 50px 0; }
  .eah-final-card { padding: 32px 24px; }
  .eah-final-card .eah-actions { width: 100%; }
  .eah-final-card .eah-button { flex: 1 1 180px; }
}

@media (max-width: 480px) {
  .eah-actions { display: grid; grid-template-columns: 1fr; }
  .eah-button { width: 100%; }
  .eah-hero-panel { padding: 24px; }
  .eah-feature-copy { padding: 23px; }
  .eah-feature-copy h3 { font-size: 28px; }
  .eah-post-compact { grid-template-columns: 1fr; grid-template-rows: auto minmax(0,1fr); }
  .eah-post-compact .eah-post-media { height: auto; aspect-ratio: 16/8; }
  .eah-tool-copy h3,.eah-tool-copy p { min-height: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .eah * { scroll-behavior: auto !important; transition-duration: .001ms !important; }
}
