/*
Theme Name: AIN Executive
Theme URI: https://www.ain.or.jp/
Author: 一般社団法人アイン
Author URI: https://www.ain.or.jp/
Description: 荒屋明神の思想・支援領域・実績を一貫した導線で伝える、AIN専用の軽量WordPressテーマです。
Version: 1.0.5
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: ain-executive
*/

:root {
  --ain-ink: #18231f;
  --ain-muted: #5e6964;
  --ain-paper: #f7f4ed;
  --ain-white: #fffefb;
  --ain-line: #d9ddd7;
  --ain-green: #173f35;
  --ain-green-2: #225c4c;
  --ain-lime: #c8e466;
  --ain-gold: #bf8d2e;
  --ain-red: #b44737;
  --ain-radius: 22px;
  --ain-shadow: 0 18px 50px rgba(24, 35, 31, .10);
  --ain-content: 760px;
  --ain-wide: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ain-ink);
  background: var(--ain-white);
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;
  line-height: 1.8;
  -webkit-font-smoothing: antialiased;
}
body.ain-menu-open { overflow: hidden; }
a { color: var(--ain-green-2); text-decoration-thickness: .08em; text-underline-offset: .18em; }
a:hover { color: var(--ain-gold); }
img { max-width: 100%; height: auto; }
button, input, textarea, select { font: inherit; }
.screen-reader-text {
  position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}
.skip-link:focus { position: fixed !important; top: 8px; left: 8px; width: auto; height: auto; padding: 10px 16px; margin: 0; clip: auto; z-index: 10000; background: #fff; color: #111; }

/* Site frame */
.ain-site-header {
  position: sticky; top: 0; z-index: 1000; border-bottom: 1px solid rgba(24,35,31,.1);
  background: rgba(255,254,251,.94); backdrop-filter: blur(16px);
}
.admin-bar .ain-site-header { top: 32px; }
.ain-header-inner {
  width: min(calc(100% - 40px), var(--ain-wide)); min-height: 76px; margin: auto;
  display: flex; align-items: center; justify-content: space-between; gap: 28px;
}
.ain-brand { color: var(--ain-ink); text-decoration: none; display: inline-flex; align-items: center; gap: 12px; flex: 0 0 auto; }
.ain-brand-mark { width: 35px; height: 35px; display: grid; place-items: center; border-radius: 50%; background: var(--ain-green); color: var(--ain-lime); font-family: Georgia, serif; font-size: 17px; }
.ain-brand-copy { display: grid; line-height: 1.15; }
.ain-brand-name { font-weight: 800; letter-spacing: .06em; }
.ain-brand-role { margin-top: 5px; color: var(--ain-muted); font-size: 11px; letter-spacing: .08em; }
.ain-desktop-nav { display: flex; align-items: center; gap: 19px; margin-left: auto; }
.ain-desktop-nav a { color: var(--ain-ink); text-decoration: none; font-size: 13px; font-weight: 700; white-space: nowrap; }
.ain-desktop-nav a:hover, .ain-desktop-nav a[aria-current="page"] { color: var(--ain-green-2); }
.ain-header-cta { padding: 10px 16px; border-radius: 999px; background: var(--ain-green); color: #fff !important; box-shadow: 0 8px 24px rgba(23,63,53,.18); }
.ain-header-cta:hover { background: var(--ain-green-2); transform: translateY(-1px); }
.ain-menu-toggle { display: none; width: 44px; height: 44px; padding: 0; border: 0; border-radius: 50%; background: var(--ain-green); color: #fff; cursor: pointer; }
.ain-menu-toggle span:not(.screen-reader-text) { display: block; width: 18px; height: 2px; margin: 4px auto; background: currentColor; transition: transform .2s, opacity .2s; }
.ain-mobile-panel { display: none; position: fixed; inset: 76px 0 0; z-index: 999; padding: 28px 24px 40px; overflow-y: auto; background: var(--ain-paper); }
.ain-mobile-panel.is-open { display: block; }
.ain-mobile-nav { display: grid; gap: 2px; }
.ain-mobile-nav a { padding: 16px 4px; border-bottom: 1px solid var(--ain-line); color: var(--ain-ink); font-weight: 700; text-decoration: none; }
.ain-mobile-cta { display: block; margin-top: 24px; padding: 15px 20px; border-radius: 999px; background: var(--ain-green); color: #fff; text-align: center; font-weight: 800; text-decoration: none; }
.ain-site-main { min-height: 60vh; }
.ain-site-footer { padding: 72px 0 32px; color: rgba(255,255,255,.83); background: var(--ain-green); }
.ain-footer-inner { width: min(calc(100% - 40px), var(--ain-wide)); margin: auto; }
.ain-footer-top { display: grid; grid-template-columns: minmax(260px, 1.3fr) 2fr; gap: 80px; padding-bottom: 42px; border-bottom: 1px solid rgba(255,255,255,.18); }
.ain-footer-brand { color: #fff; font-size: 24px; font-weight: 800; letter-spacing: .05em; }
.ain-footer-note { max-width: 460px; margin: 14px 0 0; font-size: 14px; }
.ain-footer-links { display: grid; grid-template-columns: repeat(3, minmax(120px, 1fr)); gap: 12px 28px; align-content: start; }
.ain-footer-links a { color: #fff; font-size: 14px; text-decoration: none; }
.ain-footer-links a:hover { color: var(--ain-lime); }
.ain-footer-bottom { display: flex; justify-content: space-between; gap: 20px; padding-top: 26px; font-size: 12px; }

/* Content */
.ain-page-wrap, .ain-article-wrap { width: min(calc(100% - 40px), var(--ain-wide)); margin: 0 auto; }
.ain-page-content > :first-child { margin-top: 0; }
.ain-article-wrap { display: grid; grid-template-columns: minmax(0, var(--ain-content)) minmax(220px, 1fr); gap: 80px; padding-top: 72px; padding-bottom: 96px; }
.ain-article { min-width: 0; }
.ain-breadcrumb { margin-bottom: 22px; color: var(--ain-muted); font-size: 12px; }
.ain-breadcrumb a { color: inherit; }
.ain-article-kicker { color: var(--ain-green-2); font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.ain-article-title { margin: 12px 0 16px; font-family: Georgia, "Yu Mincho", serif; font-size: clamp(34px, 5vw, 58px); line-height: 1.28; letter-spacing: -.02em; }
.ain-article-meta { display: flex; flex-wrap: wrap; gap: 14px; color: var(--ain-muted); font-size: 12px; }
.ain-featured { margin: 36px 0; overflow: hidden; border-radius: var(--ain-radius); box-shadow: var(--ain-shadow); }
.ain-entry-content { font-size: 16px; }
.ain-entry-content h2 { margin: 2.5em 0 .8em; padding-left: 16px; border-left: 4px solid var(--ain-lime); font-family: Georgia, "Yu Mincho", serif; font-size: clamp(25px, 3.3vw, 36px); line-height: 1.45; }
.ain-entry-content h3 { margin: 2em 0 .7em; font-size: 21px; line-height: 1.5; }
.ain-entry-content p { margin: 1.35em 0; }
.ain-entry-content ul, .ain-entry-content ol { padding-left: 1.4em; }
.ain-entry-content blockquote { margin: 2em 0; padding: 20px 24px; border-left: 4px solid var(--ain-green-2); background: var(--ain-paper); }
.ain-entry-content figure { margin: 2em 0; }
.ain-entry-content table { width: 100%; border-collapse: collapse; }
.ain-entry-content th, .ain-entry-content td { padding: 12px; border: 1px solid var(--ain-line); text-align: left; }
.ain-article-side { align-self: start; position: sticky; top: 112px; }
.ain-author-card { padding: 26px; border-radius: var(--ain-radius); background: var(--ain-paper); }
.ain-author-card img { width: 72px; height: 72px; border-radius: 50%; object-fit: cover; }
.ain-author-card h2 { margin: 12px 0 6px; font-size: 18px; }
.ain-author-card p { margin: 0 0 16px; color: var(--ain-muted); font-size: 13px; }
.ain-author-card a { font-size: 13px; font-weight: 800; }

/* Landing-page blocks */
.ain-refresh { --max: 1120px; color: var(--ain-ink); background: var(--ain-white); }
.ain-refresh .ain-wrap { width: min(calc(100% - 40px), 1120px); margin: auto; }
.ain-refresh section { padding: clamp(72px, 9vw, 120px) 24px; }
.ain-refresh .ain-inner { width: min(100%, var(--max)); margin: auto; }
.ain-refresh .ain-narrow { width: min(100%, 760px); margin: auto; }
.ain-hero { min-height: min(810px, 88vh); display: grid; place-items: center; overflow: hidden; background: var(--ain-paper); }
body:not(.home) .ain-hero { min-height: auto; }
.ain-hero .ain-inner { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(420px, .92fr); gap: clamp(34px, 5vw, 68px); align-items: center; }
.ain-hero-grid { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(420px, .92fr); gap: clamp(34px, 5vw, 68px); align-items: center; }
.ain-hero-img { width: 100%; display: block; border-radius: 32px; box-shadow: var(--ain-shadow); }
.ain-eyebrow { margin: 0 0 16px; color: var(--ain-green-2); font-size: 12px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.ain-kicker { margin: 0 0 16px; color: var(--ain-green-2); font-size: 12px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.ain-hero h2, .ain-page-title { margin: 0; font-family: Georgia, "Yu Mincho", serif; font-size: clamp(40px, 5vw, 68px); line-height: 1.28; letter-spacing: -.025em; text-wrap: balance; word-break: keep-all; }
.ain-hero h2 em { color: var(--ain-green-2); font-style: normal; }
.ain-page-title em { color: var(--ain-green-2); font-style: normal; }
.ain-page-title span { display: block; }
.ain-home-title { font-size: clamp(42px, 4.7vw, 64px); }
.ain-home-title span, .ain-person-title span { white-space: nowrap; }
.ain-person-title { font-size: clamp(42px, 4.15vw, 56px); }
.ain-refresh h2 { margin: 0 0 16px; font-family: Georgia, "Yu Mincho", serif; font-size: clamp(30px, 3.7vw, 46px); line-height: 1.42; letter-spacing: -.02em; text-wrap: balance; word-break: keep-all; }
.ain-refresh h3 { margin: 0 0 10px; font-size: 21px; line-height: 1.5; }
.ain-lead { max-width: 720px; margin: 26px 0 0; color: var(--ain-muted); font-size: clamp(16px, 1.45vw, 19px); line-height: 2; text-wrap: pretty; line-break: strict; }
.ain-hero-copy .ain-lead { max-width: 620px; }
.ain-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.ain-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 52px; padding: 13px 23px; border: 1px solid var(--ain-green); border-radius: 999px; font-weight: 800; text-decoration: none; transition: transform .2s, box-shadow .2s, background .2s; }
.ain-btn:hover { transform: translateY(-2px); box-shadow: 0 10px 26px rgba(23,63,53,.16); }
.ain-btn--primary { background: var(--ain-green); color: #fff !important; }
.ain-btn--ghost { background: transparent; color: var(--ain-green); }
.ain-btn.alt { border-color: var(--ain-line); background: transparent; color: var(--ain-green) !important; box-shadow: none; }
.ain-hero-visual img { width: 100%; border-radius: 32px; box-shadow: var(--ain-shadow); }
.ain-head { max-width: 960px; margin: 0 auto 50px; text-align: center; }
.ain-head .ain-lead { margin-right: auto; margin-left: auto; }
.ain-section-head { display: grid; grid-template-columns: .8fr 1.2fr; gap: 40px; align-items: end; margin-bottom: 50px; }
.ain-section-head h2, .ain-card h3 { margin: 0; font-family: Georgia, "Yu Mincho", serif; }
.ain-section-head h2 { font-size: clamp(32px, 4.5vw, 54px); line-height: 1.3; }
.ain-section-head p { margin: 0; color: var(--ain-muted); }
.ain-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 22px; }
.ain-grid.two { grid-template-columns: repeat(2, minmax(0,1fr)); }
.ain-card { padding: 32px; border: 1px solid var(--ain-line); border-radius: var(--ain-radius); background: var(--ain-white); box-shadow: 0 10px 35px rgba(24,35,31,.045); }
.ain-card h3 { font-size: 23px; line-height: 1.45; }
.ain-card p { color: var(--ain-muted); }
.ain-card-number { display: block; margin-bottom: 28px; color: var(--ain-green-2); font-family: Georgia, serif; font-size: 13px; font-weight: 800; }
.ain-card .num { display: inline-grid; place-items: center; width: 38px; height: 38px; margin-bottom: 18px; border-radius: 50%; background: #e8edda; color: var(--ain-green-2); font-weight: 900; }
.ain-paper { background: var(--ain-paper); }
.ain-section { padding: clamp(72px, 9vw, 120px) 24px; }
.ain-section.tint { background: var(--ain-paper); }
.ain-dark { color: #fff; background: var(--ain-green); }
.ain-section.dark { color: #fff; background: var(--ain-green); }
.ain-dark .ain-eyebrow { color: var(--ain-lime); }
.ain-dark .ain-lead, .ain-dark .ain-section-head p, .ain-dark .ain-card p { color: rgba(255,255,255,.75); }
.ain-dark .ain-card { border-color: rgba(255,255,255,.18); background: rgba(255,255,255,.06); box-shadow: none; }
.ain-section.dark .ain-kicker { color: var(--ain-lime) !important; }
.ain-section.dark h2, .ain-section.dark h3 { color: #fff; }
.ain-section.dark .ain-card { border-color: rgba(255,255,255,.18); background: rgba(255,255,255,.06); box-shadow: none; }
.ain-section.dark .ain-card p { color: rgba(255,255,255,.75); }
.ain-dark-card { border-color: rgba(255,255,255,.18) !important; background: rgba(255,255,255,.06) !important; box-shadow: none !important; }
.ain-dark-card p { color: rgba(255,255,255,.75) !important; }
.ain-split { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr); gap: clamp(36px, 6vw, 72px); align-items: center; }
.ain-split > *, .ain-hero-grid > *, .ain-grid > *, .ain-flow > * { min-width: 0; }
.ain-split h2 { font-size: clamp(30px, 3.25vw, 42px); }
.ain-split img { border-radius: var(--ain-radius); box-shadow: var(--ain-shadow); }
.ain-figure { width: 100%; display: block; border-radius: var(--ain-radius); box-shadow: var(--ain-shadow); }
.ain-checks { display: grid; gap: 12px; padding: 0; list-style: none; }
.ain-checks li { position: relative; padding: 14px 16px 14px 48px; border-radius: 14px; background: rgba(255,255,255,.72); }
.ain-checks li::before { content: "✓"; position: absolute; left: 17px; color: var(--ain-green-2); font-weight: 900; }
.ain-quote { margin: 0; font-family: Georgia, "Yu Mincho", serif; font-size: clamp(30px, 4vw, 48px); line-height: 1.55; }
.ain-quote strong { color: var(--ain-lime); }
.ain-list { list-style: none; margin: 22px 0 0; padding: 0; }
.ain-list li { position: relative; padding: 10px 0 10px 34px; border-bottom: 1px solid var(--ain-line); }
.ain-list li::before { content: "✓"; position: absolute; left: 0; color: var(--ain-green-2); font-weight: 900; }
.ain-flow { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; counter-reset: step; }
.ain-step { padding: 22px; border: 1px solid var(--ain-line); border-radius: 18px; background: #fff; }
.ain-step::before { counter-increment: step; content: counter(step); display: grid; place-items: center; width: 32px; height: 32px; margin-bottom: 14px; border-radius: 50%; background: var(--ain-green); color: #fff; font-weight: 900; }
.ain-process-visual { margin: 0 0 34px; overflow: hidden; border: 1px solid var(--ain-line); border-radius: 28px; background: #fbf7ed; box-shadow: var(--ain-shadow); }
.ain-process-visual img { width: 100%; display: block; }
.ain-compare { overflow-x: auto; border: 1px solid var(--ain-line); border-radius: var(--ain-radius); background: #fff; }
.ain-compare table { width: 100%; min-width: 680px; border-collapse: collapse; }
.ain-compare th, .ain-compare td { padding: 16px; border-bottom: 1px solid var(--ain-line); text-align: left; vertical-align: top; }
.ain-compare th { color: var(--ain-green); background: #edf2e8; }
.ain-proof { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.ain-proof strong { display: block; color: var(--ain-green-2); font-family: Georgia, serif; font-size: 36px; line-height: 1.2; }
.ain-faq details { margin: 10px 0; padding: 18px 20px; border: 1px solid var(--ain-line); border-radius: 16px; background: #fff; }
.ain-faq summary { color: var(--ain-green); font-weight: 800; cursor: pointer; }
.ain-note, .ain-updated { color: var(--ain-muted); font-size: 12px; }
.ain-refresh .ain-breadcrumb { margin: 0; padding: 14px 0; border-bottom: 1px solid var(--ain-line); color: var(--ain-muted); background: #f4f6f1; font-size: 12px; }
.ain-refresh .ain-breadcrumb a { color: inherit; }
.ain-cta { padding: clamp(60px, 8vw, 96px) 24px !important; background: #e8edda; }
.ain-cta-grid { width: min(100%, 1120px); margin: auto; display: grid; grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr); gap: clamp(32px, 5vw, 64px); align-items: center; }
.ain-cta-visual { overflow: hidden; border-radius: 28px; box-shadow: var(--ain-shadow); }
.ain-cta-visual img { width: 100%; display: block; }
.ain-cta-copy { text-align: left; }
.ain-cta h2 { margin: 0; font-family: Georgia, "Yu Mincho", serif; font-size: clamp(32px, 3.25vw, 46px); line-height: 1.42; word-break: normal; overflow-wrap: anywhere; }
.ain-cta p { margin: 18px 0 0; max-width: 680px; color: var(--ain-muted); }
.ain-cta .ain-actions { justify-content: flex-start !important; }
.ain-trust { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 24px; }
.ain-chip { padding: 6px 11px; border: 1px solid var(--ain-line); border-radius: 999px; color: var(--ain-muted); background: rgba(255,255,255,.72); font-size: 12px; font-weight: 700; }
.ain-detail-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.ain-detail { padding: 28px; border: 1px solid var(--ain-line); border-radius: 20px; background: #fff; }
.ain-detail h3 { font-family: Georgia, "Yu Mincho", serif; }
.ain-detail ul { margin: 18px 0 0; padding-left: 1.2em; color: var(--ain-muted); }
.ain-detail li + li { margin-top: 8px; }
.ain-mini-label { display: block; margin-bottom: 10px; color: var(--ain-green-2); font-size: 11px; font-weight: 900; letter-spacing: .14em; }
.ain-case-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.ain-case-card { padding: 34px; border: 1px solid var(--ain-line); border-radius: var(--ain-radius); background: #fff; box-shadow: 0 10px 35px rgba(24,35,31,.045); }
.ain-case-card h3 { font-family: Georgia, "Yu Mincho", serif; font-size: 25px; }
.ain-case-card dl { display: grid; grid-template-columns: 72px 1fr; gap: 10px 14px; margin: 22px 0 0; }
.ain-case-card dt { color: var(--ain-green-2); font-weight: 900; }
.ain-case-card dd { margin: 0; color: var(--ain-muted); }
.ain-tags { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 22px; }
.ain-tag { padding: 6px 12px; border: 1px solid var(--ain-line); border-radius: 999px; color: var(--ain-muted); font-size: 12px; }

/* Article index */
.ain-index-hero { padding: 90px 0 58px; background: var(--ain-paper); }
.ain-index-hero h1 { max-width: 800px; margin: 0; font-family: Georgia, "Yu Mincho", serif; font-size: clamp(40px, 6vw, 72px); line-height: 1.25; }
.ain-index-hero p { max-width: 700px; margin: 20px 0 0; color: var(--ain-muted); }
.ain-post-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 26px; padding: 64px 0 96px; }
.ain-post-card { overflow: hidden; border: 1px solid var(--ain-line); border-radius: var(--ain-radius); background: #fff; transition: transform .2s, box-shadow .2s; }
.ain-post-card:hover { transform: translateY(-4px); box-shadow: var(--ain-shadow); }
.ain-post-card > a { display: block; color: inherit; text-decoration: none; }
.ain-post-card-media { aspect-ratio: 16/10; overflow: hidden; background: var(--ain-paper); }
.ain-post-card-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.ain-post-card:hover img { transform: scale(1.03); }
.ain-post-card-body { padding: 24px; }
.ain-post-card-meta { color: var(--ain-green-2); font-size: 11px; font-weight: 800; letter-spacing: .08em; }
.ain-post-card h2 { margin: 10px 0; font-family: Georgia, "Yu Mincho", serif; font-size: 21px; line-height: 1.5; }
.ain-post-card p { margin: 0; color: var(--ain-muted); font-size: 13px; }
.ain-pagination { grid-column: 1 / -1; }

/* Plugin isolation: the theme owns the CTA and presentation. */
.veu_cta, [class^="veu_cta-"], [class*=" veu_cta-"] { display: none !important; }

@media (max-width: 1050px) {
  .ain-desktop-nav { display: none; }
  .ain-menu-toggle { display: block; }
  .ain-hero .ain-inner, .ain-hero-grid, .ain-split, .ain-section-head, .ain-cta-grid { grid-template-columns: 1fr; }
  .ain-hero { min-height: auto; }
  .ain-grid, .ain-post-grid, .ain-proof { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .ain-flow, .ain-detail-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .ain-article-wrap { grid-template-columns: 1fr; gap: 48px; }
  .ain-article-side { position: static; }
}
@media (max-width: 782px) { .admin-bar .ain-site-header { top: 46px; } }
@media (max-width: 680px) {
  .ain-header-inner { width: min(calc(100% - 28px), var(--ain-wide)); min-height: 68px; }
  .ain-brand-role { display: none; }
  .ain-header-cta { display: none; }
  .ain-mobile-panel { inset: 68px 0 0; }
  .ain-refresh section { padding: 64px 18px; }
  .ain-hero h2, .ain-page-title { font-size: clamp(34px, 10.5vw, 46px); }
  .ain-refresh h2 { word-break: normal; overflow-wrap: anywhere; }
  .ain-kicker { overflow-wrap: anywhere; }
  .ain-home-title, .ain-person-title { font-size: clamp(31px, 9.3vw, 40px); }
  .ain-home-title span, .ain-person-title span { white-space: normal; }
  .ain-grid, .ain-grid.two, .ain-post-grid, .ain-proof, .ain-flow, .ain-detail-grid, .ain-case-grid { grid-template-columns: 1fr; }
  .ain-cta-copy { text-align: center; }
  .ain-cta .ain-actions { justify-content: center !important; }
  .ain-card { padding: 26px; }
  .ain-actions { display: grid; }
  .ain-btn { width: 100%; }
  .ain-footer-top, .ain-footer-links { grid-template-columns: 1fr; gap: 26px; }
  .ain-footer-bottom { display: grid; }
  .ain-article-wrap { width: min(calc(100% - 32px), var(--ain-wide)); padding-top: 48px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}
