/*
Theme Name: Round Fit
Theme URI: https://round.fit
Description: Block theme for Round Fit — commercial fitness equipment and interiors in solid wood. Black background, warm wood surfaces, gold accents.
Version: 0.1.0
Requires at least: 6.6
Requires PHP: 8.1
Text Domain: round
*/

:root {
	--round-radius: 4px; --round-radius-sm: 3px;
	/* Wood grain: stretched fractal noise over oak / walnut. */
	--rf-oak: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='900' height='300'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.0035 0.11' numOctaves='4' seed='11' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.42 0 0 0 0 0.26 0 0 0 0 0.12 0 0 0 2.6 -1'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' fill='%23b8875a'/%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E");
	--rf-walnut: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='900' height='300'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.003 0.12' numOctaves='4' seed='5' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.16 0 0 0 0 0.09 0 0 0 0 0.04 0 0 0 2.4 -0.8'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' fill='%235b3a21'/%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E");
}

body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
::selection { background: var(--wp--preset--color--brand); color: var(--wp--preset--color--on-brand); }
:where(a) { text-underline-offset: 0.18em; text-decoration-thickness: 1px; }
:focus-visible { outline: 2px solid var(--wp--preset--color--brand-soft); outline-offset: 3px; }
img { height: auto; }

.round-eyebrow, .round-eyebrow a {
	margin: 0; color: var(--wp--preset--color--brand-soft); font-size: 0.8125rem; font-weight: 600;
	letter-spacing: 0.12em; text-transform: uppercase; text-decoration: none;
}
.round-num, .round-price__num, .round-stats strong { font-family: var(--wp--preset--font-family--numeric); font-weight: 500; letter-spacing: 0.01em; }

/* Buttons */
.wp-block-button.is-style-outline > .wp-block-button__link {
	background: transparent; color: var(--wp--preset--color--heading); border: 1px solid var(--wp--preset--color--border);
	padding: calc(0.85rem - 1px) calc(1.75rem - 1px);
}
.wp-block-button.is-style-outline > .wp-block-button__link:hover { border-color: var(--wp--preset--color--brand-soft); color: var(--wp--preset--color--heading); background: transparent; }

/* Header */
.round-header { position: sticky; top: 0; z-index: 50; background: var(--wp--preset--color--ink); border-bottom: 1px solid #000; box-shadow: 0 1px 0 var(--wp--preset--color--surface-2); }
.round-logo { display: inline-flex; color: var(--wp--preset--color--brand); text-decoration: none; }
.round-logo svg { width: 150px; height: auto; display: block; }
.round-header .wp-block-navigation a { text-decoration: none; color: var(--wp--preset--color--contrast); }
.round-header .wp-block-navigation a:hover { color: var(--wp--preset--color--heading); }
@media (max-width: 599px) { .round-header__cta { display: none; } .round-logo svg { width: 128px; } }

/* Footer */
.round-footer { margin-top: var(--wp--preset--spacing--70); }
.round-footer .round-logo svg { width: 160px; }
.round-footer__title { font-size: 0.8125rem; letter-spacing: 0.12em; text-transform: uppercase; color: var(--wp--preset--color--muted); font-weight: 600; }
.round-footer__links { list-style: none; padding: 0; margin: 0; display: grid; gap: 0.5rem; }
.round-footer a { color: var(--wp--preset--color--contrast); text-decoration: none; }
.round-footer a:hover { color: var(--wp--preset--color--heading); text-decoration: underline; }

/* Sections */
.round-section { margin-top: var(--wp--preset--spacing--70) !important; }
.round-section > h2 { max-width: 22ch; }

/* Hero */
.round-hero h1 { max-width: 17ch; }
.round-hero__img img { border-radius: var(--round-radius); width: 100%; aspect-ratio: 4 / 5; object-fit: cover; object-position: 50% 30%; }

/* Trust bar */
.round-trust__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr)); gap: 1px; background: var(--wp--preset--color--surface-2); border-radius: var(--round-radius); overflow: hidden; }
.round-trust__list li { background: var(--wp--preset--color--surface); padding: 1.25rem 1.5rem; display: grid; gap: 0.25rem; }
.round-trust__list strong { color: var(--wp--preset--color--heading); font-weight: 600; }
.round-trust__list span { color: var(--wp--preset--color--muted); font-size: 0.9375rem; }

/* Cards */
.round-grid { margin-top: var(--wp--preset--spacing--50); }
.round-card { background: var(--wp--preset--color--surface); border-radius: var(--round-radius); padding: 1rem 1rem 1.5rem; height: 100%; display: flex; flex-direction: column; gap: 0.5rem; transition: background .2s; }
.round-card:hover { background: var(--wp--preset--color--surface-2); }
.round-card .wp-block-post-featured-image { margin: 0 0 0.75rem; background: #fff; border-radius: var(--round-radius-sm); overflow: hidden; }
.round-card .wp-block-post-featured-image img { padding: 0.75rem; }
.round-card h3 { font-size: 1.1875rem; margin: 0; }
.round-card .round-eyebrow { font-size: 0.75rem; }
.round-price--compact { margin: auto 0 0; color: var(--wp--preset--color--muted); font-size: 0.9375rem; }
.round-price--compact .round-price__num { color: var(--wp--preset--color--heading); font-size: 1.125rem; }

.round-cats ul { list-style: none; display: flex; flex-wrap: wrap; gap: 0.5rem; padding: 0; margin: 1.5rem 0 0; }
.round-cats a { display: inline-block; padding: 0.45rem 1rem; border: 1px solid var(--wp--preset--color--border); border-radius: var(--round-radius-sm); color: var(--wp--preset--color--contrast); text-decoration: none; font-size: 0.9375rem; }
.round-cats a:hover, .round-cats a[aria-current] { border-color: var(--wp--preset--color--brand-soft); color: var(--wp--preset--color--heading); }
.round-cats a[aria-current] { background: color-mix(in srgb, var(--wp--preset--color--brand) 18%, transparent); }

/* Made in Ukraine */
.round-made__mark svg { width: min(100%, 300px); height: auto; color: var(--wp--preset--color--brand); display: block; margin-inline: auto; }
.round-stats { list-style: none; padding: 0; margin: 1.5rem 0 0; display: flex; flex-wrap: wrap; gap: 2rem; }
.round-stats li { display: grid; }
.round-stats strong { font-size: 2.25rem; line-height: 1.1; color: var(--wp--preset--color--heading); }
.round-stats span { color: var(--wp--preset--color--muted); font-size: 0.875rem; }

/* Kits */
.round-kits { margin-top: var(--wp--preset--spacing--50); }
.round-kit { background: var(--wp--preset--color--surface); border: 1px solid transparent; border-radius: var(--round-radius); padding: 1.75rem; display: flex; flex-direction: column; }
.round-kit.is-featured { border-color: var(--wp--preset--color--brand); }
.round-kit h3 { margin: 0; }
.round-kit__lead { color: var(--wp--preset--color--brand-soft); margin-top: 0.25rem; }
.round-kit ul { padding-left: 1.1rem; margin: 0.5rem 0 1rem; }
.round-kit li { margin: 0.25rem 0; }
.round-kit li::marker { color: var(--wp--preset--color--brand); }
.round-kit .wp-block-buttons { margin-top: auto; }

/* CTA */
.round-cta { background: radial-gradient(120% 140% at 50% 0%, color-mix(in srgb, var(--wp--preset--color--brand) 34%, var(--wp--preset--color--surface)) 0%, var(--wp--preset--color--surface) 70%); }

/* Product */
.round-product__summary { position: sticky; top: 6rem; align-self: flex-start; }
.round-product__summary h1 { margin-top: 0.5rem; }
.round-gallery__main { margin: 0; background: #fff; border-radius: var(--round-radius); overflow: hidden; aspect-ratio: 4 / 3; display: grid; place-items: center; }
.round-gallery__main img { width: 100%; height: 100%; object-fit: contain; }
.round-gallery__thumbs { list-style: none; margin: 0.75rem 0 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(72px, 1fr)); gap: 0.5rem; }
.round-gallery__thumbs a { display: block; border-radius: var(--round-radius-sm); overflow: hidden; background: #fff; outline: 2px solid transparent; aspect-ratio: 1; }
.round-gallery__thumbs a[aria-current] { outline-color: var(--wp--preset--color--brand); }
.round-gallery__thumbs img { width: 100%; height: 100%; object-fit: cover; display: block; }

.round-price { margin: 1.5rem 0; padding: 1.25rem 0; border-block: 1px solid var(--wp--preset--color--surface-2); }
.round-price p { margin: 0; }
.round-price__main { font-size: 1.125rem; color: var(--wp--preset--color--muted); }
.round-price__main .round-price__num { font-size: 2rem; color: var(--wp--preset--color--heading); }
.round-price__sep { color: var(--wp--preset--color--border); margin: 0 0.25rem; }
.round-price__note { color: var(--wp--preset--color--muted); font-size: 0.875rem; margin-top: 0.25rem !important; }

.round-ticks { list-style: none; padding: 0; margin: 1.5rem 0 0; display: grid; gap: 0.5rem; color: var(--wp--preset--color--muted); font-size: 0.9375rem; }
.round-ticks li::before { content: "✓"; color: var(--wp--preset--color--brand-soft); margin-right: 0.6rem; font-weight: 700; }

.round-benefits { list-style: none; padding: 0; margin: var(--wp--preset--spacing--50) 0 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr)); gap: 1rem; }
@media (min-width: 1000px) { .round-benefits { grid-template-columns: repeat(3, 1fr); } } /* 6 benefits = 2 even rows */
.round-benefits li { background: var(--wp--preset--color--surface); border-radius: var(--round-radius); padding: 1.5rem; }
.round-benefits h3 { font-size: 1.125rem; margin: 0 0 0.5rem; }
.round-benefits p { margin: 0; color: var(--wp--preset--color--contrast); font-size: 0.9375rem; }

.round-dims { display: grid; grid-template-columns: repeat(auto-fit, minmax(9.5rem, 1fr)); gap: 1rem; margin: var(--wp--preset--spacing--50) 0; }
.round-dims div { border-left: 2px solid var(--wp--preset--color--brand); padding: 0.25rem 0 0.25rem 1rem; }
.round-dims dt { color: var(--wp--preset--color--muted); font-size: 0.8125rem; text-transform: uppercase; letter-spacing: 0.08em; }
.round-dims dd { margin: 0; color: var(--wp--preset--color--heading); font-size: 1rem; }
.round-dims .round-num { font-size: 2rem; }
.round-specs { width: 100%; border-collapse: collapse; }
.round-specs th, .round-specs td { text-align: left; padding: 0.9rem 0; border-bottom: 1px solid var(--wp--preset--color--surface-2); vertical-align: top; }
.round-specs th { color: var(--wp--preset--color--muted); font-weight: 500; width: 34%; padding-right: 1rem; }
.round-includes__title { margin-top: var(--wp--preset--spacing--50); }
.round-includes { columns: 2 16rem; padding-left: 1.1rem; }
.round-includes li { margin: 0 0 0.7rem; break-inside: avoid; } /* no top margin: both columns start level */
.round-includes li::marker { color: var(--wp--preset--color--brand); }

/* Form */
.round-form { display: grid; gap: 1.25rem; margin-top: var(--wp--preset--spacing--40); }
.round-form label > span { display: block; font-size: 0.875rem; color: var(--wp--preset--color--muted); margin-bottom: 0.35rem; }
.round-form input:not([type=checkbox]), .round-form select, .round-form textarea {
	width: 100%; box-sizing: border-box; font: inherit; color: var(--wp--preset--color--heading); background: var(--wp--preset--color--base);
	border: 1px solid var(--wp--preset--color--border); border-radius: var(--round-radius-sm); padding: 0.75rem 0.9rem; min-height: 48px;
}
.round-form input:focus, .round-form select:focus, .round-form textarea:focus { outline: none; border-color: var(--wp--preset--color--brand-soft); box-shadow: 0 0 0 3px color-mix(in srgb, var(--wp--preset--color--brand) 30%, transparent); }
.round-form__grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem; }
.round-form__full { grid-column: 1 / -1; }
.round-form__items { border: 0; padding: 0; margin: 0; display: grid; gap: 0.75rem; }
.round-form__items legend { font-weight: 600; color: var(--wp--preset--color--heading); margin-bottom: 0.5rem; }
.round-form__item { display: grid; grid-template-columns: 1fr 6.5rem; gap: 0.75rem; }
.round-form__add { justify-self: start; background: none; border: 0; padding: 0; color: var(--wp--preset--color--brand-soft); font: inherit; font-size: 0.9375rem; cursor: pointer; }
.round-form__consent { display: flex; gap: 0.75rem; align-items: flex-start; font-size: 0.875rem; color: var(--wp--preset--color--muted); }
.round-form__consent input { width: 1.25rem; height: 1.25rem; margin-top: 0.1rem; accent-color: var(--wp--preset--color--brand); flex: none; }
.round-form button[type=submit] { justify-self: start; border: 0; cursor: pointer; }
.round-form__note { margin: 0; font-size: 0.875rem; color: var(--wp--preset--color--muted); }
.round-form__hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
@media (max-width: 640px) { .round-form__grid { grid-template-columns: 1fr; } .round-product__summary { position: static; } }
/* Heading lines up with the constrained form below it. */
.round-quote > h2 { max-width: 820px; }
@media (max-width: 781px) { .round-made__mark svg { width: 140px; margin-inline: 0; } }

/* Customisation options (home + product page) */
.round-options { list-style: none; padding: 0; margin: var(--wp--preset--spacing--50) 0 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr)); gap: 1rem; }
.round-options li { background: var(--wp--preset--color--surface); border-radius: var(--round-radius); padding: 1.25rem 1.5rem; display: grid; gap: 0.35rem; align-content: start; border-top: 2px solid var(--wp--preset--color--brand); }
.round-options strong { color: var(--wp--preset--color--heading); font-weight: 600; }
.round-options span { color: var(--wp--preset--color--muted); font-size: 0.9375rem; }
.round-form__checks { display: flex; flex-wrap: wrap; gap: 0.5rem 1.25rem; border: 0; padding: 0; margin: 0; }
.round-form__checks label { display: flex; align-items: center; gap: 0.5rem; }
.round-legal-note { border-left: 3px solid var(--wp--preset--color--brand); background: var(--wp--preset--color--surface); padding: 0.75rem 1rem; border-radius: 6px; color: var(--wp--preset--color--contrast); font-size: 0.9375rem; }

/* Solutions by business type */
.round-types { list-style: none; padding: 0; margin: var(--wp--preset--spacing--50) 0 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr)); gap: 1rem; }
.round-types a { display: grid; gap: 0.4rem; align-content: start; height: 100%; box-sizing: border-box; padding: 1.5rem; border-radius: var(--round-radius); background: var(--wp--preset--color--surface); text-decoration: none; border: 1px solid transparent; transition: border-color .2s; }
.round-types a:hover { border-color: var(--wp--preset--color--brand); }
.round-types strong { color: var(--wp--preset--color--heading); font-size: 1.25rem; font-weight: 600; }
.round-types span { color: var(--wp--preset--color--muted); font-size: 0.9375rem; }
.round-types .round-types__kicker { color: var(--wp--preset--color--brand-soft); font-size: 0.75rem; letter-spacing: .08em; text-transform: uppercase; }
/* Process steps */
.round-steps { list-style: none; counter-reset: step; padding: 0; margin: var(--wp--preset--spacing--50) 0 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr)); gap: 1rem; }
.round-steps li { counter-increment: step; display: grid; gap: 0.35rem; align-content: start; padding: 1.25rem 1.5rem; border-left: 2px solid var(--wp--preset--color--brand); background: var(--wp--preset--color--surface); border-radius: 0 var(--round-radius) var(--round-radius) 0; }
.round-steps li::before { content: "0" counter(step); font-family: var(--wp--preset--font-family--numeric); color: var(--wp--preset--color--brand-soft); font-size: 0.875rem; }
.round-steps strong { color: var(--wp--preset--color--heading); font-weight: 600; }
.round-steps span { color: var(--wp--preset--color--muted); font-size: 0.9375rem; }
/* Customisation matrix */
.round-matrix table { width: 100%; border-collapse: collapse; }
.round-matrix th, .round-matrix td { text-align: left; vertical-align: top; padding: 0.9rem 1rem; border: 0; border-bottom: 1px solid var(--wp--preset--color--surface-2); }
.round-matrix thead { border: 0; }
.round-matrix thead th { color: var(--wp--preset--color--muted); font-size: 0.8125rem; letter-spacing: .06em; text-transform: uppercase; font-weight: 500; }
.round-matrix tbody th { color: var(--wp--preset--color--heading); font-weight: 600; white-space: nowrap; }
@media (max-width: 700px) { .round-matrix { overflow-x: auto; } .round-matrix table { min-width: 640px; } }
.round-intro { max-width: 60ch; }
@media (min-width: 1000px) { .round-steps { grid-template-columns: repeat(3, 1fr); } } /* 6 steps = 2 even rows */
.round-header__cta .wp-block-button__link { white-space: nowrap; }
@media (max-width: 480px) { .round-header__cta .wp-block-button__link { font-size: 0.8125rem !important; padding: 0.55rem 0.9rem !important; } }

/* Equipment page: suited for + related platforms */
.round-suited { margin-top: 1.5rem; display: flex; flex-wrap: wrap; align-items: center; gap: 0.5rem 0.75rem; font-size: 0.875rem; color: var(--wp--preset--color--muted); }
.round-suited ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 0.5rem; }
.round-suited a { display: inline-block; padding: 0.3rem 0.75rem; border: 1px solid var(--wp--preset--color--surface-2); border-radius: var(--round-radius-sm); text-decoration: none; color: var(--wp--preset--color--contrast); }
.round-suited a:hover { border-color: var(--wp--preset--color--brand); }
.round-related { list-style: none; padding: 0; margin: var(--wp--preset--spacing--50) 0 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr)); gap: 1rem; }
.round-related a { display: grid; gap: 0.75rem; padding: 0.75rem; border-radius: var(--round-radius); background: var(--wp--preset--color--surface); text-decoration: none; color: var(--wp--preset--color--heading); font-weight: 600; }
.round-related img { width: 100%; aspect-ratio: 4 / 3; object-fit: contain; background: #fff; border-radius: calc(var(--round-radius) - 4px); }
.round-related span { padding: 0 0.25rem 0.25rem; }

.round-form__notice { padding: 0.9rem 1.1rem; border-radius: 10px; margin: 0 0 1rem; }
.round-form__notice.is-ok { background: color-mix(in srgb, #3ccf8e 16%, var(--wp--preset--color--surface)); color: var(--wp--preset--color--heading); }
.round-form__notice.is-error { background: color-mix(in srgb, #ff6b6b 16%, var(--wp--preset--color--surface)); color: var(--wp--preset--color--heading); }

/* Collections cards, wood swatches, illustration note */
.round-collections img { width: 100%; height: auto; aspect-ratio: 400 / 260; border-radius: calc(var(--round-radius) - 4px); background: #f3f1ec; display: block; }
.round-illustration-note, .round-illustration-note p { font-size: 0.8125rem; color: var(--wp--preset--color--muted); margin-top: 0.75rem; }
.round-swatches { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0.75rem; }
.round-swatches span { aspect-ratio: 3 / 4; border-radius: var(--round-radius); display: flex; align-items: flex-end; padding: 0.9rem; font-weight: 600; color: #2a2016;
	background: repeating-linear-gradient(92deg, rgba(0,0,0,.05) 0 2px, transparent 2px 11px), repeating-linear-gradient(88deg, rgba(255,255,255,.08) 0 1px, transparent 1px 23px), var(--wood); }

.round-hero__img img[src$='.svg'] { aspect-ratio: 1200 / 780; object-fit: contain; background: #f3f1ec; }

/* Configurators */
.round-cfg { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: var(--wp--preset--spacing--50); align-items: start; margin-bottom: var(--wp--preset--spacing--50); }
.round-cfg__preview { position: sticky; top: 1rem; }
.round-cfg__preview svg { width: 100%; height: auto; border-radius: var(--round-radius); display: block; }
.round-cfg__summary { margin: 0.5rem 0; padding-left: 1.1rem; color: var(--wp--preset--color--contrast); font-size: 0.9375rem; }
.round-cfg__note { font-size: 0.875rem; color: var(--wp--preset--color--muted); }
.round-cfg__form { max-width: 820px; }
@media (max-width: 860px) { .round-cfg { grid-template-columns: 1fr; } .round-cfg__preview { position: static; } }

/* Language switcher */
.round-lang { position: relative; font-size: 0.875rem; }
.round-lang summary { list-style: none; cursor: pointer; padding: 0.45rem 0.7rem; border: 1px solid var(--wp--preset--color--surface-2); border-radius: var(--round-radius-sm); color: var(--wp--preset--color--contrast); }
.round-lang summary::-webkit-details-marker { display: none; }
.round-lang ul { position: absolute; right: 0; top: calc(100% + 6px); z-index: 50; list-style: none; margin: 0; padding: 0.4rem; min-width: 11rem; background: var(--wp--preset--color--surface); border: 1px solid var(--wp--preset--color--surface-2); border-radius: 12px; }
.round-lang a { display: block; padding: 0.45rem 0.6rem; border-radius: 8px; text-decoration: none; color: var(--wp--preset--color--contrast); }
.round-lang a span { color: var(--wp--preset--color--muted); margin-left: 0.4rem; }
.round-lang a:hover, .round-lang a[aria-current] { background: var(--wp--preset--color--surface-2); }
/* Phones: the language switcher replaces the header CTA (every page has its own CTA) */
@media (max-width: 600px) { .round-header__cta { display: none !important; } }

/* Journal */
.round-reading-time { font-size: 0.8125rem; color: var(--wp--preset--color--muted); margin: 0; }
.round-journal-grid .round-card .wp-block-post-featured-image img { padding: 0; object-fit: cover; }
.round-card__excerpt, .round-card__excerpt p { color: var(--wp--preset--color--muted); font-size: 0.9375rem; margin: 0; }
.round-article .wp-block-post-featured-image img { border-radius: var(--round-radius); }
.round-article .wp-block-post-content h2 { margin-top: 2rem; }
.round-related-title { margin-top: var(--wp--preset--spacing--60); }
.wp-block-query-pagination { margin-top: var(--wp--preset--spacing--50); gap: 0.5rem; }

/* Header navigation (24 Oct 2026, replaces the design-pass rules):
   full inline menu from 1024 px up in every language; menu button only below 1024 px. */
.round-header .wp-block-navigation__container { flex-wrap: nowrap; }
.round-header .wp-block-navigation-item__content { white-space: nowrap; }
@media (min-width: 1024px) and (max-width: 1599px) {
	.round-header .wp-block-navigation { font-size: 0.875rem; }
	.round-header .wp-block-navigation__container { gap: 1rem !important; }
	.round-header > .wp-block-group > .wp-block-group { gap: 1rem !important; }
}
@media (min-width: 1024px) and (max-width: 1279px) {
	/* the header CTA steps aside on narrow laptops; every page carries its own CTA */
	.round-header__cta { display: none !important; }
	.round-header .wp-block-navigation__container { gap: 0.85rem !important; }
}
@media (min-width: 1024px) and (max-width: 1279px) {
	html:lang(de) .round-header .wp-block-navigation, html:lang(fr) .round-header .wp-block-navigation, html:lang(uk) .round-header .wp-block-navigation { font-size: 0.8125rem; }
}
@media (min-width: 1024px) {
	.round-header .wp-block-navigation__responsive-container-open { display: none !important; }
	.round-header .wp-block-navigation__responsive-container:not(.is-menu-open) { display: flex !important; position: static; background: transparent !important; }
}
@media (max-width: 1023px) {
	.round-header .wp-block-navigation__responsive-container-open { display: flex !important; }
	.round-header .wp-block-navigation__responsive-container:not(.is-menu-open) { display: none !important; }
}
@media (min-width: 1280px) and (max-width: 1599px) {
	html:lang(de) .round-header .wp-block-navigation__container { gap: 0.9rem !important; }
}

/* Journal teaser, newsletter and footer (2026-10-24) */
.round-journal-latest { border-top: 1px solid var(--wp--preset--color--surface-2); }
.round-journal-latest__title { margin: 0; }
.round-journal-latest .round-section-head { margin-bottom: var(--wp--preset--spacing--40); gap: 1rem; }
.round-journal-latest .round-section-head p { margin: 0; }
.round-journal-latest__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--wp--preset--spacing--40); }
.round-journal-latest__grid .wp-block-post-featured-image img { display: block; }
.round-journal-latest__grid h3 a { color: var(--wp--preset--color--heading); text-decoration: none; }
.round-journal-latest__grid h3 a:hover { text-decoration: underline; }
.round-newsletter__box { background: var(--wp--preset--color--surface); border-radius: var(--round-radius); padding: clamp(1.5rem, 4vw, 3rem); display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: var(--wp--preset--spacing--50); align-items: center; }
.round-newsletter__text h2 { margin-top: 0; }
.round-newsletter__text p { margin-bottom: 0; }
.round-newsletter__form { margin-top: 0; gap: 1rem; }
.round-newsletter__row { display: flex; gap: 0.75rem; }
.round-newsletter__row label { flex: 1; }
.round-newsletter__row button { flex: none; }
.round-newsletter + .round-footer { margin-top: var(--wp--preset--spacing--50); }
.round-footer__grid { display: grid; grid-template-columns: minmax(0, 1.6fr) repeat(4, minmax(0, 1fr)); gap: var(--wp--preset--spacing--50); }
.round-footer__brand > p { margin-top: 1rem; max-width: 22rem; }
.round-footer__contact { margin-top: 1.25rem; }
.round-footer__bottom { align-items: center; gap: 1rem; }
.round-footer__langs { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 0.25rem 1rem; font-size: 0.875rem; }
.round-footer__langs a { color: var(--wp--preset--color--muted); }
.round-footer__langs a[aria-current] { color: var(--wp--preset--color--heading); }
@media (max-width: 1100px) { .round-footer__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } .round-footer__brand { grid-column: 1 / -1; } }
@media (max-width: 860px) { .round-newsletter__box { grid-template-columns: 1fr; } .round-journal-latest__grid { grid-template-columns: 1fr 1fr; } .round-journal-latest__grid > :nth-child(3) { display: none; } }
@media (max-width: 640px) { .round-footer__grid { grid-template-columns: 1fr 1fr; } .round-journal-latest__grid { grid-template-columns: 1fr; } .round-journal-latest__grid > :nth-child(3) { display: flex; } .round-newsletter__row { flex-direction: column; } .round-newsletter__row button { align-self: flex-start; } }

/* Round Fit — black, wood and steel (2026-10-24) */
h1, h2, .round-eyebrow, .round-footer__title { text-wrap: balance; }
.round-footer { position: relative; background: var(--wp--preset--color--ink) !important; }
.round-footer::before { content: ""; position: absolute; inset: 0 0 auto; height: 8px; background: var(--rf-oak) center / 100% 100%; }
.round-footer__links a, .round-footer__langs a { text-decoration: none; }
.round-newsletter__box, .round-cta { background: linear-gradient(rgba(14,11,8,.78), rgba(14,11,8,.86)), var(--rf-walnut) center / cover; border: 1px solid #000; }
/* Header: a graphite band with the steel plate screwed onto it. */
.round-header { background: #26282b; border-bottom: 1px solid #34373b; box-shadow: none; }
.round-header .wp-block-navigation a, .round-header .wp-block-navigation__responsive-container-open, .round-header .wp-block-navigation__responsive-container-close { color: #e4ded4 !important; text-shadow: none; }
.round-header .wp-block-navigation a:hover, .round-header .wp-block-navigation a[aria-current] { color: var(--wp--preset--color--brand) !important; text-decoration: underline; text-decoration-color: var(--wp--preset--color--brand); text-underline-offset: .35em; }
.round-header .round-lang summary { color: #e4ded4; background: transparent; border-color: #44474c; text-shadow: none; }
.round-header .wp-block-navigation__responsive-container.is-menu-open { background: #26282b !important; color: #e4ded4 !important; }
.round-header .wp-block-navigation__responsive-container.is-menu-open a { color: #e4ded4; font-size: 1.25rem; }
.round-header .round-logo { padding: 0; background: none; box-shadow: none; }
.rf-mount { display: block; line-height: 0; }
.rf-plate { filter: drop-shadow(0 1px 1px rgba(0,0,0,.55)) drop-shadow(0 2px 3px rgba(0,0,0,.35)); }
.rf-wordmark { width: 160px; height: auto; display: block; }
.wp-element-button, .wp-block-button__link { transition: transform .15s ease, box-shadow .15s ease, background-color .15s ease; box-shadow: 0 0 0 #000; }
.wp-element-button:hover, .wp-block-button__link:hover { transform: translate(-2px, -2px); box-shadow: 3px 3px 0 #000; }
.wp-element-button:active, .wp-block-button__link:active { transform: translate(0, 0); box-shadow: 0 0 0 #000; }
.wp-block-button.is-style-outline > .wp-block-button__link { border-radius: 3px; }
.round-card .wp-block-post-featured-image, .round-gallery__main, .round-gallery__thumbs a, .round-related img, .round-collections img, .round-hero__img img { border-radius: var(--round-radius-sm); }
/* Logo: the screws turn in on the first page of a visit. */
.rf-screw { transform-box: fill-box; transform-origin: center; }
.rf-first .rf-plate { animation: rf-plate-in .45s cubic-bezier(.2, .8, .2, 1) both; }
.rf-first .rf-screw { animation: rf-screw-in .6s cubic-bezier(.25, .7, .25, 1) both; animation-delay: calc(.12s + var(--i) * .09s); }
@keyframes rf-plate-in { from { transform: translateY(-4px); } to { transform: none; } }
@keyframes rf-screw-in { 0% { transform: rotate(-600deg) scale(1.35); opacity: 0; } 30% { opacity: 1; } 100% { transform: rotate(0) scale(1); } }
.round-logo:hover .rf-screw { animation: rf-screw-nudge .5s ease both; }
@keyframes rf-screw-nudge { 50% { transform: rotate(35deg); } }
/* Sections slide in like drawers (added by JS only for sections below the fold). */
.rf-js .rf-drawer { opacity: 0; transform: translateX(-28px); }
.rf-js .rf-drawer.rf-in { opacity: 1; transform: none; transition: opacity .55s ease, transform .6s cubic-bezier(.2, .8, .2, 1); }
/* Submit: a screw tightens while the form is sent. */
button.is-sending { position: relative; padding-right: 3rem !important; }
button.is-sending::after { content: ""; position: absolute; right: 1rem; top: 50%; width: 1.1rem; height: 1.1rem; margin-top: -.55rem; border-radius: 50%;
	background: linear-gradient(90deg, transparent 42%, currentColor 42% 58%, transparent 58%), radial-gradient(circle, rgba(255,255,255,.35), rgba(0,0,0,.25)); box-shadow: inset 0 0 0 2px currentColor; animation: rf-tighten .8s linear infinite; }
@keyframes rf-tighten { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
	.rf-first .rf-plate, .rf-first .rf-screw, .round-logo:hover .rf-screw, button.is-sending::after { animation: none !important; }
	.rf-js .rf-drawer { opacity: 1; transform: none; }
	.wp-element-button:hover, .wp-block-button__link:hover { transform: none; }
}
