/*
Theme Name: Final Checkered Site
Theme URI: https://finalcheckered.com
Author: Final Checkered
Description: The finalcheckered.com website theme. Dark header, hero and footer with white content pages. Block theme: edit pages and the header/footer in Appearance → Editor.
Version: 1.4.3
Requires at least: 6.4
Tested up to: 7.1
Requires PHP: 7.4
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: final-checkered-site
*/

/* ---------- Base ---------- */
html { scroll-behavior: smooth; }
body { -webkit-font-smoothing: antialiased; }
img { height: auto; }
:where(.wp-site-blocks) > * { margin-block-start: 0; }

/* Dark bands */
.fc-dark { background: var(--wp--preset--color--ink); color: #e9ebee; }
.fc-dark h1, .fc-dark h2, .fc-dark h3, .fc-dark h4 { color: #fff; }
.fc-dark a:where(:not(.wp-element-button)) { color: #fff; }
.fc-dark .fc-muted, .fc-dark .has-muted-color { color: #a6adb8 !important; }

/* Checkered strip used as a divider */
.fc-checker {
	height: 14px;
	background:
		conic-gradient(#fff 25%, #111316 0 50%, #fff 0 75%, #111316 0) 0 0 / 14px 14px;
	opacity: .9;
}
.fc-checker--thin { height: 8px; background-size: 8px 8px; opacity: .55; }

/* ---------- Header ---------- */
.fc-header { position: sticky; top: 0; z-index: 50; border-bottom: 1px solid #262a31; }
.admin-bar .fc-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .fc-header { top: 0; position: relative; } }
.fc-header .fc-logo img { display: block; width: 190px; }
.fc-header .wp-block-navigation a { font-family: var(--wp--preset--font-family--display); text-transform: uppercase; letter-spacing: .06em; font-weight: 500; font-size: 15px; color: #d4d8de; text-decoration: none; }
.fc-header .wp-block-navigation a:hover, .fc-header .wp-block-navigation .current-menu-item > a { color: #fff; }
.fc-header .wp-block-navigation__responsive-container.is-menu-open { background: var(--wp--preset--color--ink); color: #fff; }
.fc-header .wp-block-navigation__responsive-container-open svg, .fc-header .wp-block-navigation__responsive-container-close svg { fill: #fff; }
@media (max-width: 600px) { .fc-header .fc-logo img { width: 150px; } .fc-header .fc-header-cta { display: none; } }

/* ---------- Hero ---------- */
.fc-hero { position: relative; overflow: hidden; }
.fc-hero::before {
	content: ""; position: absolute; inset: 0 0 0 55%;
	background: conic-gradient(#fff 25%, transparent 0 50%, #fff 0 75%, transparent 0) 0 0 / 46px 46px;
	opacity: .04; transform: skewX(-12deg); transform-origin: top; pointer-events: none;
}
.fc-hero::after {
	content: ""; position: absolute; width: 700px; height: 700px; right: -160px; top: -200px;
	background: radial-gradient(closest-side, rgba(217, 88, 43, .28), transparent); pointer-events: none;
}
.fc-hero > * { position: relative; z-index: 1; }
.fc-eyebrow { font-family: var(--wp--preset--font-family--display); text-transform: uppercase; letter-spacing: .14em; font-size: 14px; font-weight: 500; color: var(--wp--preset--color--accent); }
.fc-shot img { border-radius: 14px; box-shadow: 0 30px 60px -20px rgba(0,0,0,.6), 0 0 0 1px rgba(255,255,255,.06); }
.fc-shot-light img { border-radius: 12px; box-shadow: 0 24px 50px -24px rgba(17,19,22,.35), 0 0 0 1px rgba(17,19,22,.08); }

/* ---------- Cards ---------- */
.fc-card { background: #fff; border: 1px solid var(--wp--preset--color--line); border-radius: 12px; height: 100%; transition: transform .15s ease, box-shadow .15s ease; }
.fc-card:hover { transform: translateY(-2px); box-shadow: 0 14px 30px -18px rgba(17,19,22,.35); }
.fc-card h3 { margin-top: .4em; }
.fc-icon { width: 44px; height: 44px; border-radius: 10px; background: color-mix(in srgb, var(--wp--preset--color--accent) 12%, #fff); color: var(--wp--preset--color--accent); display: grid; place-items: center; font-family: var(--wp--preset--font-family--display); font-weight: 700; font-size: 20px; }
.fc-step-num { font-family: var(--wp--preset--font-family--display); font-weight: 700; font-size: 56px; line-height: 1; color: var(--wp--preset--color--accent); }

.fc-price { border: 2px solid var(--wp--preset--color--line); border-radius: 14px; background: #fff; height: 100%; }
.fc-price--pro { border-color: var(--wp--preset--color--accent); position: relative; }
.fc-tag { display: inline-block; font-family: var(--wp--preset--font-family--display); text-transform: uppercase; letter-spacing: .1em; font-size: 13px; padding: 3px 10px; border-radius: 99px; background: var(--wp--preset--color--accent); color: #fff; }
.fc-tag--soft { background: var(--wp--preset--color--paper); color: var(--wp--preset--color--muted); }
.fc-list { list-style: none; padding-left: 0; }
.fc-list li { padding: 7px 0 7px 28px; position: relative; border-bottom: 1px solid var(--wp--preset--color--line); }
.fc-list li:last-child { border-bottom: 0; }
.fc-list li::before { content: "✓"; position: absolute; left: 2px; color: var(--wp--preset--color--accent); font-weight: 700; }
.fc-list--soon li::before { content: "•"; color: var(--wp--preset--color--muted); }

/* ---------- Page title band ---------- */
.fc-title-band h1 { margin: 0; }

/* ---------- Docs ---------- */
.fc-docs code, .fc-docs kbd { background: var(--wp--preset--color--paper); border: 1px solid var(--wp--preset--color--line); border-radius: 5px; padding: 1px 6px; font-size: .92em; }
.fc-docs pre code { border: 0; padding: 0; background: none; }
.fc-docs .wp-block-table td:first-child { white-space: nowrap; }
.fc-toc a { text-decoration: none; }
.fc-note { border-left: 4px solid var(--wp--preset--color--accent); background: var(--wp--preset--color--paper); border-radius: 0 8px 8px 0; }

/* ---------- Posts ---------- */
.fc-post-card { border-bottom: 1px solid var(--wp--preset--color--line); }
.fc-post-card h2 a { text-decoration: none; color: inherit; }
.fc-post-card h2 a:hover { color: var(--wp--preset--color--accent); }

/* ---------- Footer ---------- */
.fc-footer a { text-decoration: none; color: #c9ced6 !important; }
.fc-footer a:hover { color: #fff !important; }
.fc-footer .fc-foot-head { font-family: var(--wp--preset--font-family--display); text-transform: uppercase; letter-spacing: .1em; font-size: 14px; color: #fff; }
.fc-footer .fc-foot-links p { margin: .35em 0; }
.fc-legal { border-top: 1px solid #262a31; color: #8b929d; }

/* Outline buttons on dark bands */
.fc-dark .wp-block-button.is-style-outline > .wp-block-button__link { color: #fff !important; background: transparent; border: 2px solid rgba(255,255,255,.35); }
.fc-dark .wp-block-button.is-style-outline > .wp-block-button__link:hover { border-color: #fff; background: rgba(255,255,255,.06); }
.fc-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item a { font-size: 22px; color: #fff; }
.fc-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { align-items: flex-start; gap: 1.1rem; }
.fc-header .is-menu-open .wp-block-navigation__responsive-container-content,
.fc-header .is-menu-open .wp-block-navigation__container { align-items: flex-start !important; padding-left: 8px; }

/* Docs screenshots */
.fc-doc-shot { margin: 1.5rem 0 2rem; }
.fc-doc-shot img { border-radius: 10px; }
.fc-doc-shot figcaption { font-size: .88rem; color: var(--wp--preset--color--muted); text-align: left; margin-top: .6rem; }
.fc-doc-shot img { cursor: zoom-in; }

/* Docs: the one shortcode most people need */
.fc-bigcode { font-size: 1.15rem !important; text-align: center; padding: 1.1rem !important; }
.fc-docs .wp-block-details { border: 1px solid var(--wp--preset--color--line); border-radius: 10px; padding: .9rem 1.1rem; margin-top: 1.5rem; }
.fc-docs .wp-block-details summary { cursor: pointer; font-weight: 600; }
.fc-docs .wp-block-details[open] summary { margin-bottom: .8rem; }
.fc-docs .wp-block-table td:last-child code { white-space: nowrap; }
.fc-docs pre.fc-bigcode, .fc-docs pre.fc-bigcode code { font-size: 1.25rem !important; text-align: center; display: block; color: #fff; }

/* Home hero: bigger first line (about h3 size) */
.fc-eyebrow--big { font-size: clamp(1.15rem, 2.2vw, 1.4rem) !important; letter-spacing: .1em; font-weight: 700; margin-bottom: .2rem; }
