/* Auden AI Next: the site's existing content, presented in the v2 design.
   Selectors follow the markup already stored in WordPress (hero, cards, benchmark-detail, prose, …),
   so no content has to change for the new theme to apply. */

.auden-content { position: relative; }
.auden-content > section:not(.auden-scene), .auden-content > article, .auden-content > div:not(.auden-scene), .auden-content > nav { max-width: var(--a-wide); margin-inline: auto; padding-inline: var(--a-pad); }
/* plain blocks typed straight into a page get a readable column */
.auden-content > :is(p, h1, h2, h3, h4, h5, h6, ul, ol, blockquote, figure, table, pre, details, .wp-block-image, .wp-block-table, .wp-block-buttons, .wp-block-embed, .wp-block-quote, .wp-block-separator) { max-width: calc(860px + 2 * var(--a-pad)); margin-inline: auto; padding-inline: var(--a-pad); box-sizing: border-box; }
.auden-content > section + section { margin-top: clamp(5rem, 13vh, 9.5rem); }
.auden-content h1, .auden-content h2, .auden-content h3, .auden-content h4 { text-wrap: balance; }
.auden-content p, .auden-content li { text-wrap: pretty; }
.auden-content a:not(.button):not(.wp-block-button__link) { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; text-decoration-color: rgba(6, 176, 247, .45); }
.auden-content a:not(.button):hover { text-decoration-color: currentColor; }

/* shared pieces */
.eyebrow { font-size: 12px !important; font-weight: 600; letter-spacing: .26em; text-transform: uppercase; color: var(--a-blue); display: flex; align-items: center; gap: 12px; margin: 0 0 1.375rem; }
.eyebrow::before { content: ""; width: 28px; height: 1px; background: var(--a-blue); flex: none; }
.lead { font-size: clamp(1.0625rem, 1.4vw, 1.3125rem); color: var(--a-soft); max-width: 60ch; line-height: 1.55; }
.muted { color: var(--a-mute); font-size: 15px; }
a.button { display: inline-flex; align-items: center; gap: .625rem; padding: 1.0625rem 1.75rem; border-radius: 999px; background: var(--a-blue); color: var(--a-bg) !important; font-weight: 500; font-size: 15px; text-decoration: none !important; white-space: nowrap; }
@media (max-width: 400px) { a.button { white-space: normal; text-align: center; justify-content: center; max-width: 100%; } }
a.button:hover { background: var(--a-cyan); color: var(--a-bg); }
.note { margin-top: 1.5rem; padding: 1rem 1.25rem; border-radius: 16px; background: rgba(6, 176, 247, .07); box-shadow: inset 0 0 0 1px rgba(6, 176, 247, .22); color: var(--a-soft); font-size: 15px; }
.section-intro { display: flex; flex-direction: column; gap: 1.375rem; max-width: 62ch; margin-bottom: clamp(2.5rem, 6vh, 4.375rem); }
.section-intro p, .section-copy { color: var(--a-soft); font-size: clamp(1.0625rem, 1.4vw, 1.25rem); }
.auden-content h2 { font-size: clamp(2.125rem, 5vw, 4.5rem); }

/* ---------------------------------------------------------------- homepage hero */
.hero { overflow-x: clip; position: relative; min-height: min(calc(100svh - 80px), 1020px); display: flex; flex-direction: column; justify-content: center; padding-block: clamp(3rem, 9vh, 7rem) clamp(2rem, 5vh, 4rem) !important; isolation: isolate; }
.hero::after { content: ""; position: absolute; z-index: -1; width: 90vw; height: 90vw; max-width: 1300px; max-height: 1300px; left: 72%; top: 46%; transform: translate(-50%, -50%); background: radial-gradient(closest-side, rgba(6, 176, 247, .18), transparent); pointer-events: none; }
.hero > * { position: relative; z-index: 2; }
.hero h1 { font-size: clamp(2.5rem, 7vw, 7rem); line-height: 1.02; max-width: 11ch; margin: 0 0 clamp(1.5rem, 3.5vh, 2.25rem); letter-spacing: -.04em; }
.hero-bottom { display: flex; flex-direction: column; gap: 1.75rem; max-width: 640px; }
.hero-bottom .lead { margin: 0; }
.hero-bottom > div { display: flex; flex-direction: column; align-items: flex-start; gap: 1rem; }
.hero .muted { margin: 0; }
.signal { display: flex; flex-wrap: wrap; gap: .625rem 1.5rem; margin-top: clamp(2rem, 5vh, 3.25rem); font-family: var(--a-mono); font-size: 12.5px; letter-spacing: .2em; text-transform: uppercase; color: var(--a-mute); }
.signal b { color: var(--a-blue); font-weight: 400; }
.signal p { display: contents; } /* if wpautop wraps the inline items, keep them on one baseline */
/* decorative v2 layers added by site.js (aria-hidden) */
.hero .a-deck-wrap { position: absolute; inset: 0 calc(-1 * var(--a-pad)); z-index: 1; pointer-events: none; perspective: 2000px; overflow: hidden; }
.hero .a-deck-wrap::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, var(--a-bg) 0%, var(--a-bg) 32%, rgba(10, 22, 32, .82) 48%, rgba(10, 22, 32, 0) 72%), linear-gradient(0deg, var(--a-bg) 0%, rgba(10, 22, 32, 0) 26%); }
.auden-content--hero .hero, .auden-content--all .hero { padding-bottom: calc(clamp(120px, 20vh, 220px) + clamp(1.5rem, 4vh, 3rem)) !important; }
.hero canvas.a-wave { position: absolute; z-index: 2; left: var(--a-pad); right: var(--a-pad); bottom: clamp(.5rem, 2vh, 1.5rem); width: calc(100% - 2 * var(--a-pad)); height: clamp(120px, 20vh, 220px); }
/* Phones skip the deck, so the waveform takes the band above the headline instead of the bottom. */
@media (max-width: 900px) {
	.auden-content--hero .hero, .auden-content--all .hero { justify-content: flex-start; min-height: 0; padding-top: calc(clamp(88px, 14vh, 128px) + 1.5rem) !important; padding-bottom: clamp(2rem, 5vh, 3rem) !important; }
	.hero canvas.a-wave { top: 1rem; bottom: auto; height: clamp(88px, 14vh, 128px); }
}
@media (max-width: 900px) {
	.hero .a-deck-wrap { opacity: .45; }
	.hero .a-deck-wrap::after { background: linear-gradient(180deg, rgba(10, 22, 32, .7), var(--a-bg) 88%); }
	.hero h1 { max-width: none; font-size: clamp(2.375rem, 10.5vw, 3.5rem); }
}

/* ---------------------------------------------------------------- cards */
.cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); gap: 1.125rem; }
.cards article { border-radius: 24px; background: var(--a-panel); box-shadow: inset 0 0 0 1px var(--a-line); padding: clamp(1.375rem, 2.4vw, 1.875rem); display: flex; flex-direction: column; gap: .875rem; transition: transform .4s var(--a-ease), box-shadow .4s; }
.cards article:hover { transform: translateY(-6px); box-shadow: inset 0 0 0 1px rgba(6, 176, 247, .5); }
.cards h3 { font-size: clamp(1.25rem, 1.7vw, 1.5rem); margin: 0; }
.cards p { color: var(--a-soft); font-size: 15.5px; margin: 0; }
.number { font-family: var(--a-mono); font-size: 12px; letter-spacing: .16em; color: var(--a-blue); }
@media (prefers-reduced-motion: reduce) { .cards article:hover { transform: none; } }

/* ---------------------------------------------------------------- detail sections: sticky heading left, detail right */
.benchmark-detail { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); column-gap: clamp(2rem, 6vw, 6rem); align-items: start; }
.benchmark-detail > * { grid-column: 2; }
.benchmark-detail > .eyebrow { grid-column: 1; grid-row: 1; }
.benchmark-detail > h2 { grid-column: 1; grid-row: 2 / span 60; align-self: start; position: sticky; top: 110px; font-size: clamp(2rem, 4vw, 3.75rem) !important; margin: 0; }
.benchmark-detail > p, .benchmark-detail > ul, .benchmark-detail > ol { color: var(--a-soft); font-size: clamp(1rem, 1.25vw, 1.125rem); margin: 0 0 1.125rem; }
.benchmark-detail > p strong { color: var(--a-ink); }
.benchmark-detail > h3 { font-size: clamp(1.25rem, 1.7vw, 1.5rem); margin: 2rem 0 .75rem; }
.benchmark-steps { display: grid; gap: 1rem; margin: 1rem 0 1.5rem; }
.benchmark-steps article { border-radius: 20px; background: var(--a-panel); box-shadow: inset 0 0 0 1px var(--a-line); padding: 1.375rem; }
.benchmark-steps h4 { font-size: 1.125rem; margin: 0 0 .5rem; }
.benchmark-steps p { color: var(--a-soft); font-size: 15px; margin: 0 0 .625rem; }
.benchmark-next, .benchmark-links { display: flex; flex-wrap: wrap; gap: .75rem 1.25rem; align-items: center; }
@media (max-width: 900px) {
	.benchmark-detail { grid-template-columns: minmax(0, 1fr); }
	.benchmark-detail > *, .benchmark-detail > .eyebrow, .benchmark-detail > h2 { grid-column: 1; grid-row: auto; position: static; }
	.benchmark-detail > h2 { margin-bottom: 1.5rem; }
}

/* ---------------------------------------------------------------- client names */
.names { list-style: none; padding: 0; margin: clamp(2rem, 5vh, 3rem) 0 0; display: flex; flex-wrap: wrap; gap: .25rem 2.25rem; }
.names li { font-size: clamp(1.75rem, 4.4vw, 3.75rem); font-weight: 600; letter-spacing: -.035em; line-height: 1.15; color: var(--a-ink); }
.names li:nth-child(even) { color: var(--a-blue); }
#experience .section-copy { max-width: 62ch; }

/* ---------------------------------------------------------------- feature (guide teaser) */
.feature { display: grid !important; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: clamp(2rem, 5vw, 4.5rem); align-items: center; }
.feature > div { display: flex; flex-direction: column; gap: 1.25rem; align-items: flex-start; }
.feature > div > p:not(.eyebrow) { color: var(--a-soft); margin: 0; font-size: clamp(1rem, 1.3vw, 1.1875rem); }
.feature h2 { font-size: clamp(2rem, 4.2vw, 3.5rem) !important; margin: 0; }
.feature picture, .feature img { display: block; width: 100%; height: auto; border-radius: 24px; background: var(--a-well); box-shadow: 0 0 0 1px var(--a-line); }
.auden-content > section.feature { padding-block: clamp(1.75rem, 4vw, 3.5rem); border-radius: 32px; background: var(--a-well); box-shadow: inset 0 0 0 1px var(--a-line); max-width: calc(var(--a-wide) - 2 * var(--a-pad)); padding-inline: clamp(1.5rem, 4vw, 3.5rem); }
@media (max-width: 900px) { .feature { grid-template-columns: 1fr; } .auden-content > section.feature { margin-inline: var(--a-pad); } }

/* ---------------------------------------------------------------- FAQ (core Details blocks) */
.faq h2 { margin-bottom: clamp(1.5rem, 4vh, 2.5rem); }
.faq details, .prose details { border-top: 1px solid var(--a-line); padding: 0; max-width: 900px; }
.faq details:last-of-type, .prose details:last-of-type { border-bottom: 1px solid var(--a-line); }
.faq summary, .prose summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 1.5rem; padding: 1.375rem 0; min-height: 44px; font-size: clamp(1.0625rem, 1.5vw, 1.3125rem); font-weight: 600; letter-spacing: -.01em; }
.faq summary::-webkit-details-marker, .prose summary::-webkit-details-marker { display: none; }
.faq summary::after, .prose summary::after { content: ""; flex: none; width: 14px; height: 14px; background: linear-gradient(var(--a-blue), var(--a-blue)) center / 100% 2px no-repeat, linear-gradient(var(--a-blue), var(--a-blue)) center / 2px 100% no-repeat; transition: transform .25s var(--a-ease); }
.faq details[open] summary::after, .prose details[open] summary::after { transform: rotate(45deg); }
.faq details > p, .prose details > p { color: var(--a-soft); margin: 0 0 1.375rem; max-width: 70ch; }

/* ---------------------------------------------------------------- page head (Resources) */
.page-head { padding-block: clamp(3rem, 9vh, 6.5rem) clamp(1rem, 3vh, 2rem) !important; }
.page-head h1, .prose > h1, .auden-title-fallback { font-size: clamp(2.375rem, 6vw, 5.5rem); line-height: 1.02; letter-spacing: -.04em; margin: 0 0 1.5rem; }

/* ---------------------------------------------------------------- long-form: articles, services, legal */
.auden-content > article.prose, .auden-content > section.prose { max-width: calc(860px + 2 * var(--a-pad)); padding-block: clamp(3rem, 8vh, 6rem) 0; }
.prose > p, .prose > ul, .prose > ol, .prose section > p, .prose section > ul, .prose section > ol { color: var(--a-soft); font-size: clamp(1.0625rem, 1.2vw, 1.125rem); line-height: 1.7; }
.prose > p strong, .prose li strong { color: var(--a-ink); }
.prose h2 { font-size: clamp(1.75rem, 3.2vw, 2.625rem) !important; margin: clamp(3rem, 7vh, 4.5rem) 0 1rem; scroll-margin-top: 100px; }
.prose h3 { font-size: clamp(1.25rem, 1.8vw, 1.5rem); margin: 2.25rem 0 .75rem; scroll-margin-top: 100px; }
.prose h4 { font-size: 1.125rem; margin: 1.75rem 0 .5rem; }
.prose ul, .prose ol { padding-left: 1.25rem; }
.prose li { margin: .375rem 0; }
.prose li::marker { color: var(--a-blue); }
.prose section { margin-top: clamp(3rem, 7vh, 4.5rem); }
.prose .cards { margin-block: 1.5rem; }
/* The content separates the links with " · " text; the chips make it redundant, so the nav text is sized to zero and the links restore it. */
.prose nav { display: flex; flex-wrap: wrap; gap: .5rem; margin: 1.5rem 0 2rem; font-size: 0; color: var(--a-mute); }
.prose nav a { font-size: 14px; display: inline-flex; align-items: center; min-height: 40px; padding: .5rem 1rem; border-radius: 999px; background: rgba(255, 255, 255, .04); box-shadow: inset 0 0 0 1px var(--a-line); color: var(--a-soft) !important; text-decoration: none !important; }
.prose nav a:hover { box-shadow: inset 0 0 0 1px var(--a-blue); color: var(--a-ink) !important; }
.callout { margin: 2rem 0; padding: 1.5rem; border-radius: 20px; background: var(--a-panel); box-shadow: inset 0 0 0 1px rgba(6, 176, 247, .35); }
.callout strong { display: block; font-size: 13px; letter-spacing: .2em; text-transform: uppercase; color: var(--a-blue); margin-bottom: .5rem; }
.callout p { color: var(--a-soft); margin: .5rem 0 0; }
.prose figure { margin: 2rem 0; }
.prose figure img { border-radius: 20px; background: var(--a-well); box-shadow: 0 0 0 1px var(--a-line); width: 100%; height: auto; }
.prose figcaption { margin-top: .75rem; font-size: 13.5px; color: var(--a-mute); }
.prose video { width: 100%; border-radius: 20px; background: var(--a-well); }
.table-wrap { overflow-x: auto; margin: 1.75rem 0; border-radius: 18px; box-shadow: inset 0 0 0 1px var(--a-line); background: var(--a-well); }
.table-wrap:focus-visible { outline: 2px solid var(--a-blue); }
.prose table { width: 100%; border-collapse: collapse; font-size: 15px; min-width: 560px; }
.prose caption { text-align: left; padding: 1rem 1.125rem .25rem; color: var(--a-mute); font-size: 13px; }
.prose th, .prose td { text-align: left; vertical-align: top; padding: .875rem 1.125rem; border-bottom: 1px solid var(--a-line); }
.prose thead th { font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--a-mute); font-weight: 600; }
.prose tbody th { color: var(--a-ink); font-weight: 600; }
.prose td { color: var(--a-soft); }
.prose tr:last-child th, .prose tr:last-child td { border-bottom: 0; }
.prose code { font-family: var(--a-mono); font-size: .9em; padding: .125em .375em; border-radius: 6px; background: rgba(255, 255, 255, .06); color: var(--a-cyan); }
.prose pre { background: var(--a-well); box-shadow: inset 0 0 0 1px var(--a-line); border-radius: 16px; padding: 1.125rem 1.25rem; overflow-x: auto; font-size: 14px; line-height: 1.6; }
.prose pre code { background: none; padding: 0; color: var(--a-soft); }
.prose blockquote { margin: 2rem 0; padding: .25rem 0 .25rem 1.25rem; border-left: 2px solid var(--a-blue); color: var(--a-soft); }
.stages { counter-reset: s; list-style: none; padding: 0 !important; display: grid; gap: .75rem; }
.stages li { counter-increment: s; position: relative; padding: 1rem 1.125rem 1rem 3.5rem; border-radius: 16px; background: var(--a-panel); box-shadow: inset 0 0 0 1px var(--a-line); }
.stages li::before { content: counter(s, decimal-leading-zero); position: absolute; left: 1.125rem; top: 1rem; font-family: var(--a-mono); font-size: 13px; color: var(--a-blue); }
/* buyer guide checklist (behaviour from /guide.js) */
.checklist { display: grid; gap: .5rem; margin: 1.25rem 0; }
.checklist label { display: flex; gap: .75rem; align-items: flex-start; padding: .875rem 1rem; border-radius: 14px; background: var(--a-panel); box-shadow: inset 0 0 0 1px var(--a-line); cursor: pointer; color: var(--a-soft); font-size: 15.5px; }
.checklist label:hover { box-shadow: inset 0 0 0 1px rgba(6, 176, 247, .5); }
.checklist input { width: 20px; height: 20px; margin-top: 1px; accent-color: var(--a-blue); flex: none; }
#check-status { font-weight: 600; color: var(--a-ink); }
/* click-to-load video (behaviour from /youtube.js) */
.youtube-choice { margin: 2rem 0; padding: clamp(1.25rem, 3vw, 1.75rem); border-radius: 22px; background: var(--a-panel); box-shadow: inset 0 0 0 1px var(--a-line); }
.youtube-choice button { min-height: 44px; padding: .75rem 1.375rem; border-radius: 999px; border: 0; background: var(--a-blue); color: var(--a-bg); font: inherit; font-weight: 600; cursor: pointer; margin-right: .5rem; }
.youtube-choice button#youtube-close { background: transparent; color: var(--a-ink); box-shadow: inset 0 0 0 1px var(--a-dim); }
#youtube-player iframe { width: 100%; aspect-ratio: 16 / 9; height: auto; border: 0; border-radius: 16px; margin-top: 1rem; }
/* legal pages: same prose, quieter */
.auden-policy > p:first-of-type { color: var(--a-mute); font-size: 14px; }
.auden-policy h2 { font-size: clamp(1.5rem, 2.6vw, 2rem) !important; }

/* ---------------------------------------------------------------- templates: archives, search, 404, related */
.auden-archive { max-width: var(--a-wide); margin: 0 auto; padding: clamp(3rem, 9vh, 6.5rem) var(--a-pad) 0 !important; }
.auden-archive h1 { font-size: clamp(2.375rem, 6vw, 5rem); margin: 0 0 1rem; }
.auden-archive .wp-block-term-description { color: var(--a-soft); max-width: 62ch; }
.auden-post-list { display: grid; gap: 1rem; margin-top: 2.5rem !important; padding: 0; }
.auden-post-list > li { list-style: none; border-radius: 22px; background: var(--a-panel); box-shadow: inset 0 0 0 1px var(--a-line); padding: clamp(1.25rem, 2.5vw, 1.75rem); transition: box-shadow .3s; }
.auden-post-list > li:hover { box-shadow: inset 0 0 0 1px rgba(6, 176, 247, .5); }
.auden-post-list .wp-block-post-title { font-size: clamp(1.25rem, 2vw, 1.625rem); margin: .25rem 0 .5rem; }
.auden-post-list .wp-block-post-title a { color: var(--a-ink); text-decoration: none; }
.auden-post-list .wp-block-post-excerpt { color: var(--a-soft); font-size: 15.5px; }
.auden-post-list .wp-block-post-date { font-family: var(--a-mono); font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--a-blue); }
.wp-block-query-pagination { margin-top: 2rem; gap: .5rem; }
.wp-block-query-pagination a { display: inline-flex; min-width: 44px; min-height: 44px; align-items: center; justify-content: center; border-radius: 999px; box-shadow: inset 0 0 0 1px var(--a-line); color: var(--a-soft); padding: 0 1rem; }
.wp-block-search__input { background: var(--a-well); color: var(--a-ink); border: 1px solid var(--a-dim); border-radius: 999px; padding: .875rem 1.25rem; min-height: 48px; font: inherit; }
.wp-block-search__input:focus { border-color: var(--a-blue); outline: none; box-shadow: 0 0 0 4px rgba(6, 176, 247, .15); }
.wp-block-search__button { border-radius: 999px; min-height: 48px; padding: 0 1.5rem; background: var(--a-blue); color: var(--a-bg); border: 0; font-weight: 600; }
.auden-related { max-width: calc(860px + 2 * var(--a-pad)); margin: clamp(4rem, 10vh, 6rem) auto 0; padding: 0 var(--a-pad); }
.auden-related h2 { font-size: 12px !important; letter-spacing: .24em; text-transform: uppercase; color: var(--a-mute); margin: 0 0 1rem; }
.auden-related ul { list-style: none; margin: 0; padding: 0; display: grid; gap: .75rem; }
.auden-related a { display: flex; justify-content: space-between; gap: 1rem; align-items: center; padding: 1.125rem 1.25rem; border-radius: 18px; background: var(--a-panel); box-shadow: inset 0 0 0 1px var(--a-line); color: var(--a-ink); text-decoration: none; font-weight: 600; }
.auden-related a:hover { box-shadow: inset 0 0 0 1px rgba(6, 176, 247, .5); }
.auden-related a span { color: var(--a-blue); flex: none; }
.auden-404 { max-width: calc(860px + 2 * var(--a-pad)); margin: 0 auto; padding: clamp(5rem, 16vh, 10rem) var(--a-pad) !important; }
.auden-404 .auden-footer-links { flex-direction: row; flex-wrap: wrap; gap: .5rem; margin: 1.75rem 0 2.75rem; }
.auden-404 .auden-footer-links a { display: inline-flex; align-items: center; min-height: 44px; padding: .5rem 1.125rem; border-radius: 999px; background: rgba(255, 255, 255, .04); box-shadow: inset 0 0 0 1px var(--a-line); color: var(--a-ink); }
.auden-404 .auden-footer-links a:hover { box-shadow: inset 0 0 0 1px var(--a-blue); }
.auden-404 h1 { font-size: clamp(2.5rem, 8vw, 6rem); }
