/* Ascenda Arc — theme styles (front end + editor) */

:root {
	--aa-ink: #181A1B;
	--aa-noir: #0E0F11;
	--aa-graphite: #363A3C;
	--aa-slate: #6B6F73;
	--aa-ivory: #F7F6F3;
	--aa-mist: #ECEBE8;
	--aa-plum: #3B1F78;
	--aa-violet: #5B33C2;
	--aa-bright: #8A6BF0;
	--aa-shine: #C3B2FA;
	--aa-gutter: clamp(1.25rem, 4vw, 3rem);
	--aa-img: url(../img/gradient-amethyst.jpg);
	--aa-img-mono: url(../img/gradient-monochrome.jpg);
}

html { scroll-behavior: smooth; }
body { -webkit-font-smoothing: antialiased; }
.wp-site-blocks { padding: 0 !important; }
.wp-site-blocks > * { margin-block-start: 0; }
.aa-main > * { margin-block-start: 0 !important; }

/* ---------- Dark tops: homepage hero + inner page bands ---------- */
.aa-top {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	color: var(--aa-ivory);
	background: var(--aa-img) 30% 40% / 150% 150% no-repeat, var(--aa-noir);
	animation: aaDrift 47s ease-in-out infinite alternate;
	padding-inline: var(--aa-gutter);
}
.aa-top > * { margin-block-start: 0; }
.aa-top > .wp-block-template-part,
.aa-top > .aa-hero-content,
.aa-top > .aa-band-content { position: relative; z-index: 1; }
.aa-top .wp-block-html { margin: 0; }
@keyframes aaDrift { 0% { background-position: 20% 30%; } 33% { background-position: 70% 20%; } 61% { background-position: 45% 80%; } 100% { background-position: 85% 55%; } }

.aa-flow { position: absolute; inset: 0; z-index: 0; pointer-events: none; overflow: hidden; }
.aa-flow .b { position: absolute; border-radius: 50%; mix-blend-mode: screen; will-change: transform; }
.aa-flow .b1 { width: 70%; height: 95%; left: -10%; top: -20%; background: radial-gradient(closest-side, rgba(91,51,194,.55), rgba(91,51,194,0)); animation: aaB1 41s ease-in-out infinite; }
.aa-flow .b2 { width: 60%; height: 80%; left: 45%; top: 30%; background: radial-gradient(closest-side, rgba(122,63,168,.45), rgba(122,63,168,0)); animation: aaB2 53s ease-in-out infinite; }
.aa-flow .b3 { width: 45%; height: 65%; left: 30%; top: -10%; background: radial-gradient(closest-side, rgba(138,107,240,.30), rgba(138,107,240,0)); animation: aaB3 37s ease-in-out infinite; }
.aa-flow .b4 { width: 55%; height: 70%; left: 60%; top: -25%; background: radial-gradient(closest-side, rgba(59,31,120,.6), rgba(59,31,120,0)); animation: aaB4 61s ease-in-out infinite; }
.aa-flow .sw { position: absolute; width: 26%; height: 220%; left: 30%; top: -60%; background: linear-gradient(90deg, rgba(195,178,250,0), rgba(195,178,250,.16) 50%, rgba(195,178,250,0)); filter: blur(40px); mix-blend-mode: screen; transform: rotate(28deg); animation: aaSw 67s ease-in-out infinite; }
.aa-flow .nx { position: absolute; inset: 0; background: radial-gradient(ellipse 70% 90% at 15% 85%, rgba(6,6,8,.85) 0%, rgba(6,6,8,0) 70%), linear-gradient(180deg, rgba(8,8,10,.62) 0%, rgba(8,8,10,.38) 40%, rgba(8,8,10,.82) 100%); }
.aa-band .aa-flow .nx { background: radial-gradient(ellipse 70% 120% at 10% 100%, rgba(6,6,8,.8) 0%, rgba(6,6,8,0) 70%), linear-gradient(180deg, rgba(8,8,10,.55), rgba(8,8,10,.75)); }
@keyframes aaB1 { 0%,100% { transform: translate(0,0) scale(1); } 23% { transform: translate(18%,12%) scale(1.15); } 48% { transform: translate(6%,34%) scale(.9); } 71% { transform: translate(32%,8%) scale(1.25); } }
@keyframes aaB2 { 0%,100% { transform: translate(0,0) scale(1); } 19% { transform: translate(-22%,-18%) scale(1.2); } 44% { transform: translate(-40%,6%) scale(.85); } 77% { transform: translate(-8%,-30%) scale(1.1); } }
@keyframes aaB3 { 0%,100% { transform: translate(0,0) scale(1); } 31% { transform: translate(-30%,40%) scale(1.3); } 57% { transform: translate(25%,55%) scale(.8); } 83% { transform: translate(40%,10%) scale(1.15); } }
@keyframes aaB4 { 0%,100% { transform: translate(0,0) scale(1); } 27% { transform: translate(-35%,30%) scale(.9); } 52% { transform: translate(-15%,60%) scale(1.3); } 79% { transform: translate(-50%,15%) scale(1.05); } }
@keyframes aaSw { 0%,100% { transform: translate(-120%,0) rotate(28deg); opacity: .2; } 35% { transform: translate(40%,-8%) rotate(34deg); opacity: 1; } 62% { transform: translate(160%,6%) rotate(22deg); opacity: .6; } 85% { transform: translate(20%,4%) rotate(30deg); opacity: .9; } }
@media (prefers-reduced-motion: reduce) { .aa-top, .aa-flow .b, .aa-flow .sw { animation: none; } }

/* ---------- Header ---------- */
.aa-header { max-width: 1184px; margin-inline: auto !important; padding-top: 28px; }
.aa-header-row { gap: 24px; align-items: center; }
.aa-logo { display: block; line-height: 0; }
.aa-logo img { width: 168px; height: auto; display: block; }
.aa-nav { font-size: 15px; gap: 36px; color: #D9D8DC; }
.aa-nav .wp-block-navigation-item__content { color: #D9D8DC; text-decoration: none; }
.aa-nav .wp-block-navigation-item__content:hover { color: #FFFFFF; }
.aa-nav .wp-block-navigation__submenu-container { background: rgba(14,15,17,.96) !important; border: 1px solid rgba(247,246,243,.12) !important; border-radius: 14px; padding: 8px !important; min-width: 220px !important; }
.aa-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content { padding: 10px 14px !important; border-radius: 8px; }
.aa-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover { background: rgba(138,107,240,.18); }
.aa-nav .wp-block-navigation__responsive-container-open, .aa-nav .wp-block-navigation__responsive-container-close { color: var(--aa-ivory); }
.aa-nav .wp-block-navigation__responsive-container.is-menu-open { background: var(--aa-noir) !important; color: var(--aa-ivory) !important; padding: 28px var(--aa-gutter); }
.aa-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { font-size: 22px; }
.aa-nav-cta { margin: 0 !important; }
.aa-nav-cta .wp-block-button__link { font-size: 15px !important; padding: 13px 22px !important; }
@media (max-width: 900px) { .aa-nav-cta { display: none !important; } }

/* ---------- Footer ---------- */
.aa-footer { background: var(--aa-noir); color: #9EA1A6; padding: 48px var(--aa-gutter); margin: 0 !important; }
.aa-footer-row { max-width: 1184px; margin-inline: auto !important; gap: 24px; align-items: center; }
.aa-footer .aa-logo img { width: 140px; }
.aa-footer-nav { font-size: 14px; gap: 28px; }
.aa-footer-nav a { color: #D9D8DC; text-decoration: none; }
.aa-footer-nav a:hover { color: #FFFFFF; }
.aa-footer-copy { font-size: 14px; margin: 0; }

/* ---------- Hero content ---------- */
.aa-hero-content { max-width: 1184px; margin-inline: auto !important; padding: clamp(80px, 12vw, 140px) 0 clamp(90px, 12vw, 150px); }
.aa-band-content { max-width: 1184px; margin-inline: auto !important; padding: clamp(56px, 8vw, 96px) 0 clamp(64px, 8vw, 104px); }
.aa-h1, .aa-top h1 { margin: 22px 0 0; font-family: "Berkelium Sans", sans-serif; font-weight: 100; font-size: clamp(46px, 6vw, 84px); line-height: 1.03; letter-spacing: -0.015em; max-width: 960px; color: var(--aa-ivory); }
.aa-band-title { margin: 14px 0 0 !important; font-family: "Berkelium Sans", sans-serif; font-weight: 100; font-size: clamp(40px, 5vw, 68px) !important; line-height: 1.05; letter-spacing: -0.015em; max-width: 960px; color: var(--aa-ivory); }
.aa-band-title a { color: inherit; text-decoration: none; }
.aa-hero-lede { margin: 28px 0 0 !important; font-size: clamp(17px, 1.6vw, 20px); line-height: 1.6; color: #E1DEEA; max-width: 620px; }
.aa-hero-ctas { margin-top: 44px !important; gap: 14px; }
.aa-hero-note { margin: 24px 0 0 !important; font-size: 14px; color: #B7B9BC; }
.aa-meta { gap: 18px; }
.aa-meta a { color: inherit; text-decoration: none; }

/* ---------- Type helpers ---------- */
.aa-eyebrow { font-family: Corpta, sans-serif; font-size: 15px; letter-spacing: .16em; color: var(--aa-violet); margin: 0; text-transform: uppercase; }
.aa-eyebrow.aa-on-dark, .aa-dark .aa-eyebrow { color: var(--aa-shine); }
.aa-h2 { margin: 18px 0 0 !important; font-size: clamp(34px, 4vw, 52px); line-height: 1.08; }
.aa-h2-thin { margin: 18px 0 0 !important; font-weight: 100 !important; font-size: clamp(40px, 5vw, 64px) !important; line-height: 1.04; }
.aa-h3 { margin: 6px 0 0 !important; font-size: clamp(24px, 2vw, 28px); }
.aa-h3-sm { margin: 14px 0 0 !important; font-size: clamp(21px, 1.8vw, 24px); }
.aa-measure { max-width: 860px; }
.aa-lede { margin-top: 20px !important; font-size: 18px; line-height: 1.6; color: var(--aa-slate); max-width: 640px; }
.aa-dark .aa-lede { color: #C9CACD; }
.aa-link, .aa-link-d { margin-top: 28px !important; font-weight: 700; }
.aa-link a { color: var(--aa-violet); text-decoration: none; }
.aa-link a:hover { color: var(--aa-plum); }
.aa-link-d a { color: var(--aa-shine); text-decoration: none; }
.aa-link-d a:hover { color: #FFFFFF; }
.aa-tag, .aa-tag-sm { font-family: Corpta, sans-serif; font-size: 14px; letter-spacing: .14em; color: var(--aa-violet); margin: 0; text-transform: uppercase; }
.aa-tag-sm { font-family: Manrope, sans-serif; font-size: 13px; font-weight: 700; }
.aa-mt-xl { margin-top: clamp(64px, 8vw, 96px) !important; }

/* ---------- Sections ---------- */
.aa-sec { padding: clamp(64px, 8vw, 88px) var(--aa-gutter); margin: 0 !important; }
.aa-sec-tight { padding-top: 0; }
.aa-strip { padding: 40px var(--aa-gutter); margin: 0 !important; }
.aa-sec > .alignwide, .aa-strip > .alignwide, .aa-strip > .wp-block-html, .aa-sec > .aa-posts { max-width: 1184px; margin-inline: auto !important; }
.aa-bg-ivory { background: var(--aa-ivory); }
.aa-bg-white { background: #FFFFFF; }
.aa-bg-mist { background: var(--aa-mist); border-top: 1px solid #DCDAD5; border-bottom: 1px solid #DCDAD5; padding-block: 48px 52px; }
.aa-dark { color: var(--aa-ivory); }
.aa-dark h2, .aa-dark h3 { color: var(--aa-ivory); }
.aa-bg-mono { background: linear-gradient(180deg, rgba(8,8,10,.35), rgba(8,8,10,.55)), var(--aa-ink) var(--aa-img-mono) center / cover no-repeat; }
.aa-bg-closing { background: radial-gradient(ellipse 60% 80% at 85% 20%, rgba(6,6,8,0) 0%, rgba(6,6,8,.5) 70%), linear-gradient(180deg, rgba(8,8,10,.55), rgba(8,8,10,.7)), var(--aa-noir) var(--aa-img) center / cover no-repeat; }
.aa-bg-white.aa-strip { border-top: 1px solid #E5E3DE; border-bottom: 1px solid #E5E3DE; }

.aa-split { gap: clamp(40px, 6vw, 72px) !important; align-items: center; }
.aa-split-founder { align-items: start; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr) !important; }
.aa-stack > * + * { margin-top: 0; }
.aa-cards { gap: 24px !important; margin-top: 56px !important; }

/* Cards */
.aa-card { background: #FFFFFF; border: 1px solid #E5E3DE; border-radius: 20px; padding: clamp(26px, 3vw, 36px); transition: transform .2s, box-shadow .2s; display: flex; flex-direction: column; gap: 14px; }
.aa-card > * { margin: 0 !important; }
.aa-card > .aa-link:last-child { margin-top: auto !important; padding-top: 10px; }
.aa-card:hover { transform: translateY(-4px); box-shadow: 0 24px 48px rgba(24,26,27,.10); }
.aa-card p { color: var(--aa-slate); font-size: 16px; line-height: 1.6; }
.aa-card .aa-tag, .aa-card .aa-tag-sm { color: var(--aa-violet); }
.aa-card-ivory { background: var(--aa-ivory); border-color: transparent; }
.aa-icon { width: 56px; height: 56px; border-radius: 14px; background: var(--aa-ink); display: flex; align-items: center; justify-content: center; }

/* Glass cards (why us) */
.aa-glass-grid { gap: 20px !important; }
.aa-glass { background: rgba(24,26,27,.7); border: 1px solid rgba(247,246,243,.1); border-radius: 18px; padding: 28px; }
.aa-glass > * { margin: 0; }
.aa-glass h3 { margin: 0 !important; font-size: 22px; }
.aa-glass p { margin-top: 12px; font-size: 15px; line-height: 1.6; color: #C9CACD; }

/* Dashboard mock */
.aa-dash { background: var(--aa-ink); border-radius: 24px; padding: 32px; color: var(--aa-ivory); box-shadow: 0 30px 60px rgba(24,26,27,.18); }
.aa-dash-top { display: flex; justify-content: space-between; font-size: 13px; color: #9EA1A6; }
.aa-dash-name { font-family: Corpta, sans-serif; letter-spacing: .12em; color: var(--aa-shine); }
.aa-dash-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 22px; }
.aa-dash-stats > div { background: #26292C; border-radius: 14px; padding: 18px; }
.aa-dash-stats .k { font-size: 12px; color: #9EA1A6; }
.aa-dash-stats .v { font-family: Corpta, sans-serif; font-size: 28px; margin-top: 8px; }
.aa-dash-chart { display: block; margin-top: 22px; width: 100%; height: auto; }
.aa-dash-note { font-size: 12px; color: #9EA1A6; margin-top: 8px; }
@media (max-width: 600px) { .aa-dash-stats { grid-template-columns: 1fr; } }

/* Founding strip */
.aa-founding-left { gap: 18px; align-items: center; flex: 1 1 520px; }
.aa-badge { font-family: Corpta, sans-serif; font-size: 13px; letter-spacing: .16em; color: var(--aa-ivory); background: var(--aa-violet); padding: 8px 14px; border-radius: 999px; margin: 0; }
.aa-founding-text { font-size: 18px; margin: 0; }
.aa-strip .aa-link { margin-top: 0 !important; }

/* Tools */
.aa-tools { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 26px 52px; margin-top: 26px; }
.aa-tool { display: inline-flex; align-items: center; gap: 10px; color: var(--aa-ink); font-weight: 700; font-size: 18px; }
.aa-tool-t { color: var(--aa-ink); font-weight: 700; font-size: 20px; letter-spacing: -.01em; }
.aa-tool-logo { width: auto; display: block; }

/* Founder */
.aa-photo { aspect-ratio: 4 / 5; border-radius: 24px; background: linear-gradient(160deg, #363A3C, #181A1B); display: flex; align-items: flex-end; padding: 24px; box-sizing: border-box; }
.aa-photo span { font-size: 13px; letter-spacing: .14em; text-transform: uppercase; color: #9EA1A6; }
.aa-founder-copy { margin-top: 26px !important; font-size: 18px; line-height: 1.65; color: var(--aa-graphite); max-width: 640px; }
.aa-founder-copy > p { margin: 0 0 18px; }
.aa-split-founder .wp-block-image img, .aa-split-founder .aa-photo { border-radius: 24px; }

/* Process */
.aa-steps { gap: 24px !important; margin-top: 56px !important; }
.aa-step { border-top: 2px solid var(--aa-ink); padding-top: 22px; }
.aa-step > * { margin: 0; }
.aa-step p:not(.aa-step-num) { margin-top: 10px; font-size: 15px; line-height: 1.6; color: var(--aa-slate); }
.aa-step-num { font-family: Corpta, sans-serif; font-size: 20px; color: var(--aa-violet); margin: 0; }

/* Buttons */
.wp-block-button .wp-block-button__link { border-radius: 999px; font-weight: 700; min-height: 52px; display: inline-flex; align-items: center; gap: 10px; box-sizing: border-box; transition: background-color .2s, color .2s, border-color .2s; }
.is-style-aa-light .wp-block-button__link { background: var(--aa-ivory); color: var(--aa-ink); }
.is-style-aa-light .wp-block-button__link:hover { background: #FFFFFF; color: var(--aa-violet); }
.is-style-aa-outline .wp-block-button__link { background: transparent; color: var(--aa-ivory); border: 1px solid rgba(247,246,243,.45); font-weight: 600; }
.is-style-aa-outline .wp-block-button__link:hover { border-color: var(--aa-ivory); background: rgba(247,246,243,.08); color: #FFFFFF; }
.is-style-aa-dark .wp-block-button__link { background: var(--aa-ink); color: var(--aa-ivory); }
.is-style-aa-violet .wp-block-button__link { background: var(--aa-violet); color: #FFFFFF; }
.is-style-aa-violet .wp-block-button__link:hover { background: var(--aa-plum); }
.aa-dark .wp-block-buttons { margin-top: 36px; }

/* Contact form */
.aa-form { background: rgba(14,15,17,.78); border: 1px solid rgba(247,246,243,.12); border-radius: 24px; padding: clamp(26px, 3vw, 40px); display: flex; flex-direction: column; gap: 20px; color: var(--aa-ivory); }
.aa-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.aa-field { display: flex; flex-direction: column; gap: 8px; font-size: 14px; font-weight: 600; }
.aa-field input, .aa-field textarea { font: 400 16px Manrope, sans-serif; color: var(--aa-ivory); background: #26292C; border: 1px solid #3A3D42; border-radius: 12px; padding: 14px 16px; min-height: 48px; box-sizing: border-box; width: 100%; }
.aa-field textarea { resize: vertical; }
.aa-field input:focus, .aa-field textarea:focus { outline: 2px solid var(--aa-bright); outline-offset: 1px; border-color: transparent; }
.aa-field input::placeholder, .aa-field textarea::placeholder { color: #8E9196; }
.aa-chips { border: 0; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; }
.aa-chips legend { font-size: 14px; font-weight: 600; padding: 0; margin-bottom: 10px; }
.aa-chips label { display: inline-flex; align-items: center; gap: 8px; border: 1px solid #3A3D42; border-radius: 999px; padding: 10px 18px; min-height: 44px; box-sizing: border-box; font-size: 15px; cursor: pointer; }
.aa-chips label:has(input:checked) { border-color: var(--aa-bright); background: rgba(138,107,240,.18); }
.aa-chips input { accent-color: var(--aa-bright); }
.aa-submit { margin-top: 6px; background: var(--aa-ivory); color: var(--aa-ink); border: 0; border-radius: 999px; padding: 16px 28px; min-height: 52px; font: 700 16px Manrope, sans-serif; cursor: pointer; transition: background-color .2s, color .2s; }
.aa-submit:hover { background: #FFFFFF; color: var(--aa-violet); }
.aa-form-small { margin: 0; font-size: 13px; color: #9EA1A6; }
.aa-form-notice { margin: 0; padding: 12px 16px; border-radius: 12px; font-size: 15px; }
.aa-form-notice.is-success { background: rgba(138,107,240,.2); border: 1px solid var(--aa-bright); }
.aa-form-notice.is-error { background: rgba(220,70,70,.15); border: 1px solid #E07070; }
.aa-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
@media (max-width: 600px) { .aa-form-row { grid-template-columns: 1fr; } }

/* Posts */
.aa-posts .wp-block-post-template { gap: 24px; }
.aa-post-card { padding: 0; overflow: hidden; height: 100%; box-sizing: border-box; }
.aa-post-card > * { padding-inline: 28px; }
.aa-post-card > :last-child { padding-bottom: 28px; }
.aa-post-thumb { padding: 0 !important; margin: 0 !important; background: linear-gradient(160deg, #1E1240, #0E0F11); aspect-ratio: 16 / 9; }
.aa-post-thumb img { display: block; }
.aa-post-date { font-family: Corpta, sans-serif; font-size: 13px; letter-spacing: .12em; color: var(--aa-violet); padding-top: 22px; }
.aa-post-card:not(:has(img)) .aa-post-date { padding-top: 28px; }
.aa-post-title { font-size: 24px !important; line-height: 1.2; margin: 0; }
.aa-post-title a { color: var(--aa-ink); text-decoration: none; }
.aa-post-title a:hover { color: var(--aa-violet); }
.aa-post-excerpt { color: var(--aa-slate); font-size: 15px; }
.aa-post-excerpt .wp-block-post-excerpt__more-text { margin-top: 10px; }
.aa-post-excerpt a { color: var(--aa-violet); font-weight: 700; text-decoration: none; }
.aa-pagination { margin-top: 48px; gap: 10px; font-weight: 700; }
.aa-pagination a, .aa-pagination .current { padding: 8px 14px; border-radius: 999px; text-decoration: none; }
.aa-pagination .current { background: var(--aa-ink); color: var(--aa-ivory); }
.aa-sec > .alignwide > .aa-posts { margin-top: 40px; }

/* Single + page prose */
.aa-single-image { max-width: 1184px; margin: 0 auto 56px !important; border-radius: 24px; overflow: hidden; }
.aa-prose { font-size: 18px; line-height: 1.75; color: var(--aa-graphite); }
.aa-prose > * + * { margin-top: 1.25em; }
.aa-prose h2 { font-size: clamp(28px, 3vw, 38px); margin-top: 2em; color: var(--aa-ink); }
.aa-prose h3 { font-size: clamp(22px, 2.2vw, 28px); margin-top: 1.6em; color: var(--aa-ink); }
.aa-prose a { color: var(--aa-violet); }
.aa-prose blockquote { border-left: 3px solid var(--aa-violet); margin-left: 0; padding-left: 24px; font-family: "Berkelium Sans", sans-serif; font-size: 24px; line-height: 1.4; color: var(--aa-ink); }
.aa-prose img { border-radius: 16px; }
.aa-prose code { background: var(--aa-mist); padding: 2px 6px; border-radius: 6px; font-size: .9em; }
.aa-post-nav { max-width: 1184px; margin: 72px auto 0 !important; padding-top: 32px; border-top: 1px solid #E5E3DE; gap: 24px; font-weight: 700; }
.aa-post-nav a { color: var(--aa-ink); text-decoration: none; }
.aa-post-nav a:hover { color: var(--aa-violet); }

/* FAQ */
.aa-faq { border-bottom: 1px solid #DCDAD5; padding: 22px 0; max-width: 860px; }
.aa-faq summary { font-family: "Berkelium Sans", sans-serif; font-weight: 600; font-size: 22px; cursor: pointer; list-style: none; display: flex; justify-content: space-between; gap: 16px; }
.aa-faq summary::after { content: "+"; color: var(--aa-violet); font-family: Manrope, sans-serif; }
.aa-faq[open] summary::after { content: "–"; }
.aa-faq p { color: var(--aa-slate); margin-top: 12px; }
.aa-faq:first-of-type { margin-top: 32px; }

/* Search */
.aa-search { max-width: 560px; margin-top: 36px !important; }
.aa-search .wp-block-search__inside-wrapper { background: rgba(247,246,243,.08); border: 1px solid rgba(247,246,243,.25); border-radius: 999px; padding: 6px; }
.aa-search input { background: transparent; border: 0; color: var(--aa-ivory); padding: 10px 16px; font: 400 16px Manrope, sans-serif; }
.aa-search input::placeholder { color: #9EA1A6; }
.aa-search .wp-block-search__button { border-radius: 999px; background: var(--aa-ivory); color: var(--aa-ink); font-weight: 700; margin: 0; padding: 10px 22px; }

/* Responsive */
@media (max-width: 900px) {
	.aa-split, .aa-split-founder { grid-template-columns: 1fr !important; }
	.aa-founding-left { flex-basis: 100%; }
}

/* Focus */
a:focus-visible, button:focus-visible, .wp-block-button__link:focus-visible { outline: 2px solid var(--aa-bright); outline-offset: 3px; }

/* html-block content has no wrapper: size it directly */
.aa-strip > .aa-tools { max-width: 1184px; margin-inline: auto !important; }
.aa-service-body > * { margin-block-start: 0 !important; }
.aa-service-body > :not(.aa-sec):not(.aa-strip) { max-width: 760px; margin-inline: auto !important; padding-inline: var(--aa-gutter); }
/* Editor: snippet wrappers shouldn't add space */
.wp-block-ascenda-arc-snippet { margin: 0; }
/* Editor: the animated layer is front-end only, so darken the band the same way */
.editor-styles-wrapper .aa-top { background: radial-gradient(ellipse 70% 90% at 15% 85%, rgba(6,6,8,.85) 0%, rgba(6,6,8,0) 70%), linear-gradient(180deg, rgba(8,8,10,.62) 0%, rgba(8,8,10,.38) 40%, rgba(8,8,10,.82) 100%), var(--aa-img) 30% 40% / 150% 150% no-repeat, var(--aa-noir); animation: none; }

/* Tools strip: looping logo carousel (v1.1) */
.aa-strip.aa-bg-mist { padding-block: 48px 52px; }
.aa-tools-title { margin: 0 !important; color: var(--aa-ink); }
.aa-strip > .aa-marquee { max-width: none !important; width: 100%; margin-top: 64px !important; }
.aa-marquee { overflow: hidden; -webkit-mask-image: linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent); mask-image: linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent); }
.aa-marquee-track { display: flex; width: max-content; animation: aaMarquee 72s linear infinite; }
.aa-marquee:hover .aa-marquee-track { animation-play-state: paused; }
.aa-marquee-set { display: flex; align-items: center; gap: 128px; padding-right: 128px; flex-shrink: 0; }
.aa-logo { display: block; width: auto; max-width: none; filter: brightness(0) opacity(.5); transition: filter .3s ease; }
.aa-logo:hover { filter: none; }
@keyframes aaMarquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@media (max-width: 900px) { .aa-marquee-set { gap: 72px; padding-right: 72px; } .aa-strip > .aa-marquee { margin-top: 40px !important; } }
@media (prefers-reduced-motion: reduce) { .aa-marquee-track { animation: none; } }
