/* Inner content pages: documents, contact, FAQ, why, 404. */

/* The original page shell is content-box (max-width applies to the content). */
:root .cv-page { box-sizing: content-box; }

/* Breadcrumbs (core/breadcrumbs) styled like .cv-crumbs. */
.cv-page .wp-block-breadcrumbs ol { gap: 6px 10px; }
.cv-page .wp-block-breadcrumbs li { display: inline-flex; align-items: center; margin: 0; }
.cv-page .wp-block-breadcrumbs li::after { content: none; }
.cv-page .wp-block-breadcrumbs li + li::before { content: "/"; margin: 0 10px 0 0; color: var(--line-gold-soft); }

/* Legal sections inside the document panel are plain blocks (not landing-page sections). */
:root .cv-box .cv-sec { max-width: none; margin: 0; padding: 0; }
:root .cv-box li { margin: 0; }

/* Kontakt */
:root .cv-page--kontakt { max-width: 1000px; display: block; }
@media (min-width: 1180px) { :root .cv-page--kontakt { padding-top: 112px; } }
.cv-page--kontakt .cv-h1 { margin: 16px 0 32px; font-size: clamp(28px, 4vw, 40px); }
.cv-page--kontakt .wp-block-breadcrumbs { margin: 0; }
.cv-grid > .wp-block-group { margin: 0; }
.cv-info .cv-info__text > * { margin: 0; }
.cv-info .cv-info__row { margin: 0; gap: 12px; flex-wrap: nowrap; align-items: flex-start; }
.cv-info .cv-svg-icon { flex: none; margin-top: 2px; color: var(--cv-gold); }
.cv-info .cv-info__addr--small { font-size: 14px; color: var(--text-muted); }
.cv-info .cv-info__addr--hours { font-size: 15px; color: var(--text-muted); }
.cv-info.is-layout-flex { align-items: stretch; }

.cv-info .cv-social { margin-left: -12px; }

/* FAQ and "Dlaczego" pages (880px column). */
:root .cv-page--faq, :root .cv-page--dlaczego { max-width: 880px; }
:root .cv-page--faq { gap: 32px; }
:root .cv-page--dlaczego { gap: 40px; }
@media (min-width: 1180px) { :root .cv-page--faq, :root .cv-page--dlaczego { padding-top: 112px; } }
.cv-page--faq .cv-h1, .cv-page--dlaczego .cv-h1 { font-size: clamp(28px, 4vw, 40px); }
:root .cv-group h2.cv-group__title { margin: 0 0 4px; }

/* Hero image on "Dlaczego": figure with <img> emulating the original background-image box. */
.cv-page figure.cv-hero-img { margin: 0; width: 100%; max-width: none; aspect-ratio: 16 / 9; overflow: hidden; background-image: none; }
.cv-page figure.cv-hero-img img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 40%; }
.cv-page .cv-buy.wp-block-buttons { justify-content: center; }
.cv-page.is-layout-flex { align-items: stretch; }
:root .cv-page .cv-heading--left.is-layout-flex { align-items: flex-start; text-align: left; gap: 12px; }
:root .cv-page .cv-heading--left .cv-heading__title, :root .cv-page .cv-heading--left .cv-heading__eyebrow { text-align: left; }
.cv-page .cv-eyebrow { line-height: normal; }
.cv-page .cv-heading__eyebrow { line-height: normal; }
:root .cv-copy .cv-legal-flag { margin: 0 0 1em; }

/* 404 */
:root .cv-404 { box-sizing: content-box; }
:root .cv-404 .cv-404__box { max-width: 480px; margin: 0; }
:root .cv-404 p.cv-404__num { font: 600 72px/normal var(--font-display); color: var(--cv-gold); margin: 0; }
.cv-404__btn .wp-block-button__link { height: 64px; padding: 0 40px; font-size: 17px; }

/* Search form + results */
.cv-page .wp-block-search__inside-wrapper { display: flex; gap: 10px; }
.cv-page .wp-block-search__input { flex: 1; min-width: 0; height: 56px; padding: 0 16px; border: 1px solid var(--line-input); border-radius: var(--radius-sm); background: var(--surface-input); font: inherit; font-size: 17px; color: var(--text-heading); }
.cv-page .wp-block-search__input:focus { outline: none; border-color: var(--cv-gold); box-shadow: var(--focus-ring); }
.cv-page .wp-block-search__button { height: 56px; margin: 0; padding: 0 32px; border: 0; border-radius: var(--wp--custom--radius--button, 5px); background: var(--cv-gold); color: var(--text-on-gold); font-weight: 600; letter-spacing: .08em; text-transform: uppercase; cursor: pointer; }
.cv-page .wp-block-search__button:hover { background: var(--cv-gold-light); }
.cv-page .wp-block-post-template { display: flex; flex-direction: column; gap: 16px; margin: 0; padding: 0; list-style: none; }
.cv-page .wp-block-post-template .cv-box h2 { margin: 0; font: 600 20px/1.3 var(--font-sans); }
.cv-page .wp-block-post-template .cv-box a { text-decoration: none; }
.cv-page .wp-block-post-template > li { margin: 0; }
