/*
 * Wildscape theme.
 * Brand colors come from Appearance → Customize → Wildscape (CSS variables
 * printed in the page head). Everything else is here.
 */

/* Tokens ------------------------------------------------------------ */
:root {
	--wt-bg: #F7F2E4;
	--wt-card: #FFFDF7;
	--wt-parch: #EDE3C4;
	--wt-ink: #1B1B18;
	--wt-muted: #5E5A4E;
	--wt-border: #DDD3B6;
	--wt-cream: #F7F2E4;
	--wt-radius: 10px;
	--wt-shadow: 0 1px 2px rgba(27, 27, 24, .06), 0 6px 18px rgba(27, 27, 24, .07);
	--wt-font: "Source Sans 3", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	--wt-display: "Alfa Slab One", Rockwell, "Roboto Slab", Georgia, serif;
	--wt-gutter: 16px;
	--wt-header-h: 64px;
	--wt-topo: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='480' height='240' viewBox='0 0 480 240'><g fill='none' stroke='%23EDE3C4' stroke-opacity='.07' stroke-width='1.2'><polyline points='0,20.0 20,26.6 40,31.7 60,34.2 80,33.9 100,30.8 120,26.0 140,20.8 160,16.5 180,14.2 200,14.3 220,16.6 240,20.0 260,23.4 280,25.7 300,25.8 320,23.5 340,19.2 360,14.0 380,9.2 400,6.1 420,5.8 440,8.3 460,13.4 480,20.0'/><polyline points='0,66.9 20,69.6 40,69.3 60,66.1 80,60.8 100,54.8 120,49.4 140,45.9 160,45.0 180,46.5 200,49.8 220,53.6 240,56.8 260,58.2 280,57.3 300,54.4 320,50.1 340,45.9 360,42.9 380,42.3 400,44.4 420,49.1 440,55.3 460,61.7 480,66.9'/><polyline points='0,103.2 20,99.9 40,94.4 60,87.8 80,81.7 100,77.4 120,75.8 140,76.9 160,80.2 180,84.6 200,88.9 220,91.7 240,92.3 260,90.7 280,87.4 300,83.6 320,80.6 340,79.4 360,80.8 380,84.5 400,90.0 420,95.9 440,100.8 460,103.5 480,103.2'/><polyline points='0,127.1 20,120.5 40,114.1 60,109.4 80,107.3 100,108.3 120,111.8 140,116.9 160,122.1 180,126.2 200,128.3 220,127.9 240,125.4 260,121.9 280,118.5 300,116.6 320,116.8 340,119.3 360,123.7 380,128.8 400,133.3 420,135.8 440,135.7 460,132.6 480,127.1'/><polyline points='0,147.0 20,142.3 40,140.1 60,141.0 80,144.8 100,150.4 120,156.5 140,161.7 160,164.9 180,165.4 200,163.5 220,160.0 240,156.1 260,153.1 280,151.9 300,153.0 320,156.1 340,160.3 360,164.3 380,166.9 400,167.1 420,164.5 440,159.6 460,153.3 480,147.0'/><polyline points='0,174.5 20,175.4 40,179.2 60,185.0 80,191.7 100,197.6 120,201.5 140,202.7 160,201.1 180,197.4 200,192.8 220,188.6 240,186.0 260,185.6 280,187.4 300,190.8 320,194.5 340,197.3 360,198.1 380,196.4 400,192.4 420,186.8 440,181.1 460,176.6 480,174.5'/><polyline points='0,214.6 20,220.4 40,227.1 60,233.2 80,237.5 100,239.0 120,237.5 140,233.5 160,228.2 180,222.9 200,219.0 220,217.2 240,217.9 260,220.6 280,224.2 300,227.5 320,229.2 340,228.7 360,226.0 380,221.5 400,216.5 420,212.4 440,210.3 460,211.0 480,214.6'/></g></svg>");
	color-scheme: light;
}
@media (min-width: 700px) { :root { --wt-gutter: 24px; --wt-header-h: 76px; } }
@media (prefers-color-scheme: dark) {
	:root:not([data-theme="light"]) { --wt-bg: #141513; --wt-card: #1F211E; --wt-parch: #2A2B25; --wt-ink: #EDE3C4; --wt-muted: #A8A08A; --wt-border: #34362F; --wt-shadow: none; color-scheme: dark; }
}
:root[data-theme="dark"] { --wt-bg: #141513; --wt-card: #1F211E; --wt-parch: #2A2B25; --wt-ink: #EDE3C4; --wt-muted: #A8A08A; --wt-border: #34362F; --wt-shadow: none; color-scheme: dark; }

/* Base ------------------------------------------------------------ */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-padding-top: calc(var(--wt-header-h) + 12px); }
body { margin: 0; background: var(--wt-bg); color: var(--wt-ink); font: 400 1.0625rem/1.6 var(--wt-font); -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; overflow-x: clip; }
img, svg, video { max-width: 100%; height: auto; }
a { color: var(--wt-primary); text-underline-offset: 3px; text-decoration-thickness: 1px; }
a:hover { text-decoration-thickness: 2px; }
:focus-visible { outline: 3px solid var(--wt-accent); outline-offset: 2px; }
h1, h2, h3, h4 { line-height: 1.2; margin: 0 0 .5em; color: var(--wt-ink); }
p { margin: 0 0 1em; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.wt-icon { width: 1.25em; height: 1.25em; flex: none; vertical-align: -.25em; }
.wt-skip { position: absolute; left: 12px; top: -60px; z-index: 1000; padding: 10px 16px; border-radius: 8px; background: var(--wt-accent); color: var(--wt-on-accent); font-weight: 700; text-decoration: none; }
.wt-skip:focus { top: 12px; }
.wt-content:focus { outline: none; }

.wt-wrap { max-width: 1240px; margin: 0 auto; padding: 0 var(--wt-gutter); }
.wt-wrap--narrow { max-width: 808px; }
.wt-center { text-align: center; }
.wt-muted { color: var(--wt-muted); }
.wt-eyebrow { font-size: .78rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--wt-accent-ink); margin: 0 0 .6em; }
.wt-title { font: 400 clamp(1.9rem, 5vw, 2.9rem)/1.1 var(--wt-display); letter-spacing: .005em; }
.wt-display { font: 400 clamp(2.2rem, 7vw, 4rem)/1.04 var(--wt-display); }
.wt-display--sm { font-size: clamp(1.8rem, 5vw, 2.8rem); }
.wt-h2 { font: 400 clamp(1.45rem, 3.6vw, 2rem)/1.2 var(--wt-display); letter-spacing: .01em; }
.wt-intro { font-size: 1.15rem; color: var(--wt-muted); max-width: 62ch; }
.wt-meta { font-size: .9rem; color: var(--wt-muted); margin: 0 0 .5em; }
.wt-meta a { color: inherit; }

/* Buttons ------------------------------------------------------------ */
.wt-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 46px; padding: 0 22px; border-radius: 8px; border: 2px solid var(--wt-primary); background: var(--wt-primary); color: var(--wt-on-primary) !important; font: 700 1rem/1.1 var(--wt-font); text-decoration: none !important; cursor: pointer; transition: background .15s, border-color .15s, transform .1s; }
.wt-btn:hover { background: var(--wt-primary-dark); border-color: var(--wt-primary-dark); }
.wt-btn:active { transform: translateY(1px); }
.wt-btn--accent { background: var(--wt-accent); border-color: var(--wt-accent); color: var(--wt-on-accent) !important; }
.wt-btn--accent:hover { background: var(--wt-parch); border-color: var(--wt-parch); color: var(--wt-ink) !important; }
.wt-btn--ghost { background: transparent; color: var(--wt-primary) !important; }
.wt-btn--ghost:hover { background: var(--wt-primary); color: var(--wt-on-primary) !important; }
.wt-btn--ghost-light { background: transparent; border-color: rgba(237, 227, 196, .55); color: #F7F2E4 !important; }
.wt-btn--ghost-light:hover { background: rgba(237, 227, 196, .12); border-color: #EDE3C4; }
.wt-btn--small { min-height: 40px; padding: 0 16px; font-size: .95rem; }
.wt-btn--large { min-height: 54px; padding: 0 28px; font-size: 1.1rem; }
.wt-btn--block { display: flex; width: 100%; }
.wt-link-arrow { display: inline-flex; align-items: center; gap: 6px; font-weight: 700; text-decoration: none; }
.wt-link-arrow:hover { text-decoration: underline; }

/* Announcement ------------------------------------------------------------ */
.wt-announce { background: var(--wt-primary); color: var(--wt-on-primary); text-align: center; font-size: .92rem; font-weight: 600; }
.wt-announce p, .wt-announce a { display: flex; align-items: center; justify-content: center; gap: 6px; margin: 0; padding: 8px var(--wt-gutter); color: inherit; text-decoration: none; min-height: 40px; }
.wt-announce a:hover { text-decoration: underline; }
.wt-announce .wt-icon { width: 1em; height: 1em; }

/* Header ------------------------------------------------------------ */
.wt-header { position: sticky; top: 0; z-index: 100; background: var(--wt-header); color: var(--wt-on-header); transition: box-shadow .2s; }
.admin-bar .wt-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .wt-header { top: 46px; } }
@media (max-width: 600px) { .admin-bar .wt-header { top: 0; } }
.wt-header.is-scrolled { box-shadow: 0 2px 14px rgba(0, 0, 0, .35); }
.wt-header__bar { max-width: 1320px; margin: 0 auto; padding: 0 var(--wt-gutter); height: var(--wt-header-h); display: flex; align-items: center; gap: 16px; }
.wt-brand { display: flex; align-items: center; gap: 12px; color: inherit; text-decoration: none; min-width: 0; flex: 0 1 auto; }
.wt-logo { display: block; flex: none; }
.wt-logo picture, .wt-logo img { display: block; height: calc(var(--wt-header-h) - 14px); width: auto; }
.wt-wordmark { display: flex; flex-direction: column; min-width: 0; line-height: 1.05; }
.wt-wordmark__name { font: 400 1rem/1.08 var(--wt-display); color: var(--wt-on-header); letter-spacing: .02em; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; max-width: 11ch; }
.wt-wordmark__sub { display: none; margin-top: 4px; font-size: .68rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--wt-accent); white-space: nowrap; }
@media (min-width: 700px) { .wt-wordmark__name { font-size: 1.3rem; max-width: none; display: block; white-space: nowrap; } .wt-wordmark__sub { display: block; } }
@media (max-width: 359px) { .wt-wordmark { display: none; } }

.wt-actions { display: flex; align-items: center; gap: 4px; margin-left: auto; flex: none; }
.wt-iconbtn { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border: 0; border-radius: 8px; background: transparent; color: inherit; cursor: pointer; }
.wt-iconbtn:hover { background: rgba(237, 227, 196, .1); }
.wt-iconbtn .wt-icon { width: 24px; height: 24px; }
.wt-actions .wt-btn { margin-left: 8px; }
.wt-hide-sm { display: none !important; }
@media (min-width: 1024px) { .wt-hide-sm { display: inline-flex !important; } }

/* Menu: phones get a full-screen panel; desktop a row. */
.wt-menu-toggle__close { display: none; }
.wt-menu-open .wt-menu-toggle__open { display: none; }
.wt-menu-open .wt-menu-toggle__close { display: inline-flex; }
.wt-nav { display: none; }
.wt-nav ul { list-style: none; margin: 0; padding: 0; }
.wt-nav a { color: inherit; text-decoration: none; }
.wt-menu-open .wt-nav { display: block; position: fixed; inset: var(--wt-nav-top, var(--wt-header-h)) 0 0 0; z-index: 99; overflow-y: auto; background: var(--wt-header) var(--wt-topo); padding: 12px var(--wt-gutter) 40px; border-top: 1px solid rgba(237, 227, 196, .12); }
.wt-menu-open body { overflow: hidden; }
.wt-menu-open .wt-nav__list > li > a { display: block; padding: 14px 4px; font: 400 1.5rem/1.2 var(--wt-display); border-bottom: 1px solid rgba(237, 227, 196, .1); }
.wt-menu-open .wt-nav__list .current-menu-item > a { color: var(--wt-accent); }
.wt-nav__list li { position: relative; }
.wt-nav__list .sub-menu a { display: block; padding: 10px 4px 10px 16px; font-size: 1.05rem; }
.wt-nav .sub-menu { display: none; }
.wt-nav .is-open > .sub-menu { display: block; }
.wt-sub-toggle { position: absolute; right: 0; top: 8px; width: 44px; height: 44px; border: 0; background: transparent; color: inherit; cursor: pointer; }
.wt-sub-toggle[aria-expanded="true"] svg { transform: rotate(180deg); }
.wt-nav__extra { margin-top: 20px !important; }
.wt-nav__extra a { display: flex; align-items: center; gap: 10px; padding: 12px 4px; font-weight: 600; color: var(--wt-accent) !important; }

@media (min-width: 1024px) {
	.wt-menu-toggle { display: none; }
	.wt-nav, .wt-menu-open .wt-nav { display: block; position: static; background: none; padding: 0; border: 0; overflow: visible; margin-left: 12px; }
	.wt-nav__list { display: flex; gap: 2px; }
	.wt-nav__list > li > a, .wt-menu-open .wt-nav__list > li > a { display: block; padding: 10px 12px; font: 600 1rem/1.2 var(--wt-font); border: 0; border-radius: 6px; position: relative; }
	.wt-nav__list > li > a::after { content: ""; position: absolute; left: 12px; right: 12px; bottom: 4px; height: 2px; background: var(--wt-accent); transform: scaleX(0); transition: transform .15s; }
	.wt-nav__list > li > a:hover::after, .wt-nav__list > .current-menu-item > a::after, .wt-nav__list > .current-menu-ancestor > a::after { transform: scaleX(1); }
	.wt-nav__list .sub-menu { position: absolute; top: 100%; left: 0; min-width: 220px; padding: 8px; background: var(--wt-header); border: 1px solid rgba(237, 227, 196, .14); border-radius: 8px; box-shadow: 0 10px 30px rgba(0, 0, 0, .35); }
	.wt-nav__list li:hover > .sub-menu, .wt-nav__list li:focus-within > .sub-menu { display: block; }
	.wt-nav__list .sub-menu a { padding: 8px 12px; border-radius: 6px; }
	.wt-nav__list .sub-menu a:hover { background: rgba(237, 227, 196, .08); }
	.wt-sub-toggle { display: none; }
	.wt-nav__extra { display: none; }
	.wt-menu-open body { overflow: auto; }
}

.wt-search { background: rgba(0, 0, 0, .25); border-top: 1px solid rgba(237, 227, 196, .1); }
.wt-search[hidden] { display: none; }
.wt-search__form { display: flex; gap: 8px; max-width: 760px; margin: 0 auto; padding: 14px var(--wt-gutter); }
.wt-search__form input { flex: 1; min-width: 0; min-height: 48px; padding: 0 14px; border: 2px solid transparent; border-radius: 8px; background: #FFFDF7; color: #1B1B18; font: inherit; font-size: 1rem; }
.wt-search__form input:focus { border-color: var(--wt-accent); outline: none; }
.wt-search__form .wt-btn { min-height: 48px; }
.wt-search__form--page { padding: 0; margin: 20px 0 32px; }
.wt-search__form--page input { border-color: var(--wt-border); }

/* Content pages ------------------------------------------------------------ */
.wt-main { padding: 28px 0 56px; }
.wt-main--full { padding: 0; }
.wt-pagehead { padding-top: 12px; padding-bottom: 20px; }
.wt-hero-img { margin: 0 auto 28px; }
.wt-hero-img img { display: block; width: 100%; max-height: 560px; object-fit: cover; border-radius: var(--wt-radius); }

.wt-prose { font-size: 1.1rem; line-height: 1.7; }
.wt-prose > * { margin-top: 0; margin-bottom: 1.1em; }
.wt-prose h2 { font-size: 1.6rem; font-weight: 800; margin-top: 1.8em; }
.wt-prose h3 { font-size: 1.25rem; font-weight: 700; margin-top: 1.6em; }
.wt-prose blockquote { margin: 1.6em 0; padding: 4px 0 4px 20px; border-left: 4px solid var(--wt-accent); font-size: 1.2rem; }
.wt-prose img { border-radius: 8px; }
.wt-prose figcaption { font-size: .9rem; color: var(--wt-muted); margin-top: 6px; }
.wt-prose ul, .wt-prose ol { padding-left: 1.3em; }
.wt-prose li { margin-bottom: .4em; }
.wt-prose hr { border: 0; border-top: 1px solid var(--wt-border); margin: 2em 0; }
.wt-prose table { width: 100%; border-collapse: collapse; font-size: 1rem; }
.wt-prose th, .wt-prose td { padding: 8px 10px; border-bottom: 1px solid var(--wt-border); text-align: left; }
.wt-prose .alignwide { max-width: 1192px; margin-left: 50%; transform: translateX(-50%); width: calc(100vw - 2 * var(--wt-gutter)); }
.wt-prose .alignfull { width: 100vw; max-width: none; margin-left: 50%; transform: translateX(-50%); }
.wt-prose .wp-block-button__link { background: var(--wt-primary); color: var(--wt-on-primary); border-radius: 8px; font-weight: 700; padding: 12px 22px; text-decoration: none; }
.wt-prose--full > *:not(.alignfull):not(.alignwide) { max-width: 760px; margin-left: auto; margin-right: auto; padding-left: var(--wt-gutter); padding-right: var(--wt-gutter); }
.wt-prose--full .alignwide { margin-left: auto; margin-right: auto; transform: none; width: auto; max-width: 1192px; }
.wt-prose--full .alignfull { margin-left: 0; transform: none; }
.has-forest-color { color: #1E5631; } .has-forest-background-color { background-color: #1E5631; }
.has-brass-color { color: #B39B6A; } .has-brass-background-color { background-color: #B39B6A; }
.has-parchment-color { color: #EDE3C4; } .has-parchment-background-color { background-color: #EDE3C4; }
.has-charcoal-color { color: #171818; } .has-charcoal-background-color { background-color: #171818; }
.has-ink-color { color: #1B1B18; } .has-ink-background-color { background-color: #1B1B18; }
.has-cream-color { color: #F7F2E4; } .has-cream-background-color { background-color: #F7F2E4; }
.wt-article__foot { margin-top: 32px; padding-top: 20px; border-top: 1px solid var(--wt-border); }
.wt-tags a { display: inline-block; margin: 0 6px 6px 0; padding: 3px 10px; border-radius: 999px; background: var(--wt-parch); color: var(--wt-ink); font-size: .85rem; text-decoration: none; }
.post-navigation .nav-links { display: grid; gap: 12px; }
@media (min-width: 700px) { .post-navigation .nav-links { grid-template-columns: 1fr 1fr; } .post-navigation .nav-next { text-align: right; } }
.post-navigation a { display: block; padding: 14px 16px; border: 1px solid var(--wt-border); border-radius: var(--wt-radius); background: var(--wt-card); color: var(--wt-ink); text-decoration: none; font-weight: 700; }
.post-navigation .wt-meta { display: block; font-weight: 400; }

.wt-postgrid { display: grid; gap: 20px; }
@media (min-width: 700px) { .wt-postgrid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1100px) { .wt-postgrid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.wt-postcard { background: var(--wt-card); border: 1px solid var(--wt-border); border-radius: var(--wt-radius); overflow: hidden; transition: box-shadow .15s, transform .15s; }
.wt-postcard:hover { box-shadow: var(--wt-shadow); transform: translateY(-2px); }
.wt-postcard__link { display: block; height: 100%; color: inherit; text-decoration: none; }
.wt-postcard__img { aspect-ratio: 16 / 10; background: var(--wt-parch) var(--wt-topo); }
.wt-postcard__img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.wt-postcard__body { padding: 16px 18px 20px; }
.wt-postcard__title { font: 400 1.3rem/1.2 var(--wt-display); margin: 0 0 8px; }
.wt-pagination { margin-top: 32px; }
.wt-pagination .nav-links { display: flex; flex-wrap: wrap; gap: 6px; justify-content: center; }
.wt-pagination .page-numbers { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 0 12px; border-radius: 8px; border: 1px solid var(--wt-border); background: var(--wt-card); color: var(--wt-ink); text-decoration: none; font-weight: 600; }
.wt-pagination .current { background: var(--wt-primary); border-color: var(--wt-primary); color: var(--wt-on-primary); }
.wt-empty { padding: 40px 20px; text-align: center; border: 1px dashed var(--wt-border); border-radius: var(--wt-radius); background: var(--wt-card); }
.wt-404 { padding-top: 24px; }
.wt-chips { list-style: none; padding: 0; margin: 0 0 32px; display: flex; flex-wrap: wrap; gap: 8px; }
.wt-chips a { display: inline-flex; align-items: center; min-height: 44px; padding: 0 16px; border-radius: 999px; border: 1px solid var(--wt-border); background: var(--wt-card); color: var(--wt-ink); text-decoration: none; font-weight: 600; }
.wt-chips a:hover { border-color: var(--wt-primary); color: var(--wt-primary); }

.wt-comments { margin-top: 40px; }
.wt-comments__list { list-style: none; padding: 0; }
.wt-comments__list .comment-body { padding: 14px 0; border-bottom: 1px solid var(--wt-border); }
.comment-form label { display: block; font-weight: 600; margin-bottom: 4px; }
.comment-form input[type="text"], .comment-form input[type="email"], .comment-form input[type="url"], .comment-form textarea { width: 100%; padding: 10px 12px; border: 1px solid var(--wt-border); border-radius: 8px; background: var(--wt-card); color: var(--wt-ink); font: inherit; }

/* Promise strip and footer ------------------------------------------------------------ */
.wt-promise { background: var(--wt-parch); border-top: 1px solid var(--wt-border); }
.wt-promise__list { list-style: none; margin: 0 auto; padding-top: 28px; padding-bottom: 28px; display: grid; gap: 18px; }
@media (min-width: 800px) { .wt-promise__list { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; } }
.wt-promise li { display: flex; gap: 14px; align-items: flex-start; font-size: .98rem; color: var(--wt-muted); }
.wt-promise strong { display: block; color: var(--wt-ink); font-size: 1.05rem; }
.wt-promise__icon { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; flex: none; border-radius: 50%; background: var(--wt-primary); color: var(--wt-on-primary); }
.wt-promise__icon .wt-icon { width: 22px; height: 22px; }

.wt-footer { background: var(--wt-header) var(--wt-topo); color: rgba(237, 227, 196, .82); font-size: .98rem; }
.wt-footer a { color: #EDE3C4; text-decoration: none; }
.wt-footer a:hover { color: var(--wt-accent); text-decoration: underline; }
.wt-footer__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 28px 20px; padding-top: 44px; padding-bottom: 36px; }
.wt-footer__brand { grid-column: 1 / -1; }
@media (min-width: 700px) { .wt-footer__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } .wt-footer__brand { grid-column: 1 / -1; } }
@media (min-width: 1100px) { .wt-footer__grid { grid-template-columns: 1.6fr repeat(3, minmax(0, 1fr)); } .wt-footer__brand { grid-column: auto; } }
.wt-footer__logo img, .wt-footer__logo picture { display: block; width: 150px; height: auto; margin-bottom: 14px; }
.wt-footer__brand p { max-width: 42ch; }
.wt-footer__h { font: 700 .8rem/1.2 var(--wt-font); letter-spacing: .16em; text-transform: uppercase; color: var(--wt-accent); margin: 4px 0 12px; }
.wt-footer__menu, .wt-social, .wt-footer__legal { list-style: none; margin: 0; padding: 0; }
.wt-footer__menu a { display: inline-block; padding: 6px 0; }
.wt-social { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.wt-social a { display: inline-flex; align-items: center; min-height: 40px; padding: 0 14px; border: 1px solid rgba(237, 227, 196, .25); border-radius: 999px; font-weight: 600; font-size: .92rem; }
.wt-social a:hover { border-color: var(--wt-accent); text-decoration: none; }
.wt-footer__bottom { background: rgba(0, 0, 0, .28); font-size: .88rem; }
.wt-footer__bottomin { display: flex; flex-wrap: wrap; gap: 8px 24px; align-items: center; justify-content: space-between; padding-top: 16px; padding-bottom: calc(16px + env(safe-area-inset-bottom)); }
.wt-footer__bottomin p { margin: 0; }
.wt-footer__legal { display: flex; flex-wrap: wrap; gap: 4px 18px; }
.wt-footer__legal a { display: inline-block; padding: 6px 0; }

/* Marketplace pages (Storefront plugin) ------------------------------------------------------------ */
body.wt .wsm-sf { --sf-display: var(--wt-display); font-family: var(--wt-font); padding-bottom: 56px; }
body.wt .wsm-sf-hero { background: var(--wt-header) var(--wt-topo); }
body.wt .wsm-sf-hero::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 6px; background: linear-gradient(90deg, var(--wt-primary) 0 33.3%, var(--wt-accent) 33.3% 66.6%, var(--wt-primary) 66.6%); opacity: .9; }
body.wt .wsm-sf-hero__title { letter-spacing: .005em; }
/* The welcome band is always dark, so its controls stay light in dark mode too. */
body.wt .wsm-sf-hero .wsm-sf-btn--light { background: #EDE3C4; border-color: #EDE3C4; color: #1B1B18 !important; }
body.wt .wsm-sf-hero .wsm-sf-btn--light:hover { background: #F7F2E4; border-color: #F7F2E4; }
body.wt .wsm-sf-hero .wsm-sf-search input { background: #FFFDF7; color: #1B1B18; border-color: transparent; }
body.wt .wsm-sf-h2 { font-family: var(--wt-display); font-weight: 400; letter-spacing: .01em; }
body.wt .wsm-sf-card { transition: box-shadow .15s, transform .15s; }
body.wt .wsm-sf-card:hover { transform: translateY(-2px); }
body.wt .wsm-sf-maker-cta { background: var(--wt-primary) var(--wt-topo); }
body.wt .wsm-sf-campaign { background: var(--wt-parch); }

/* Become a Maker ------------------------------------------------------------ */
.wt-maker { padding: 0; }
.wt-maker__hero { background: var(--wt-header) var(--wt-topo); color: #EDE3C4; padding: 44px 0 52px; overflow: hidden; }
.wt-maker__hero .wt-display, .wt-maker__hero h1 { color: #F7F2E4; }
.wt-maker__hero .wt-eyebrow { color: var(--wt-accent); }
.wt-maker__herogrid { display: grid; gap: 28px; align-items: center; }
@media (min-width: 900px) { .wt-maker__herogrid { grid-template-columns: 1.25fr 1fr; } .wt-maker__hero { padding: 72px 0 80px; } }
.wt-maker__lede { font-size: 1.2rem; max-width: 56ch; color: rgba(237, 227, 196, .9); }
.wt-maker__ctas { display: flex; flex-wrap: wrap; gap: 12px; margin: 24px 0 18px; }
.wt-maker__facts { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 8px 22px; font-weight: 600; font-size: .98rem; }
.wt-maker__facts li::before { content: "★"; color: var(--wt-accent); margin-right: 8px; }
.wt-maker__badge { display: none; }
.wt-maker__badge img, .wt-maker__badge picture { display: block; width: 100%; max-width: 460px; height: auto; margin: 0 auto; filter: drop-shadow(0 18px 30px rgba(0, 0, 0, .45)); }
@media (min-width: 900px) { .wt-maker__badge { display: block; } }
.wt-founding { background: var(--wt-accent); color: var(--wt-on-accent); text-align: center; padding: 12px 0; font-size: 1.02rem; }
.wt-section { padding: 52px 0; }
.wt-section--tint { background: var(--wt-parch); }
.wt-steps { list-style: none; padding: 0; margin: 28px 0 0; display: grid; gap: 16px; counter-reset: step; }
@media (min-width: 700px) { .wt-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1100px) { .wt-steps { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.wt-step { position: relative; padding: 22px 20px; background: var(--wt-card); border: 1px solid var(--wt-border); border-radius: var(--wt-radius); counter-increment: step; }
.wt-step::before { content: counter(step); position: absolute; top: 18px; right: 18px; font: 400 1.6rem/1 var(--wt-display); color: var(--wt-border); }
.wt-step h3 { font-size: 1.15rem; margin-top: 12px; }
.wt-step p { margin: 0; color: var(--wt-muted); }
.wt-step__icon, .wt-features__icon { display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; border-radius: 12px; background: var(--wt-primary); color: var(--wt-on-primary); }
.wt-plans { display: grid; gap: 20px; margin: 28px auto 0; max-width: 920px; }
@media (min-width: 760px) { .wt-plans { grid-template-columns: 1fr 1fr; align-items: start; } }
.wt-plan { position: relative; padding: 28px 24px 24px; background: var(--wt-card); border: 1px solid var(--wt-border); border-radius: 14px; }
.wt-plan--featured { border: 2px solid var(--wt-accent); box-shadow: var(--wt-shadow); }
.wt-plan__flag { position: absolute; top: -13px; left: 24px; margin: 0; padding: 3px 12px; border-radius: 999px; background: var(--wt-accent); color: var(--wt-on-accent); font-size: .78rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.wt-plan__name { font: 400 1.6rem/1.15 var(--wt-display); margin: 0 0 8px; }
.wt-plan__price { display: flex; align-items: baseline; gap: 6px; margin: 0; }
.wt-plan__price strong { font-size: 2.4rem; line-height: 1; font-weight: 800; color: var(--wt-ink); }
.wt-plan__price span { color: var(--wt-muted); }
.wt-plan__price s { margin-left: 8px; color: var(--wt-muted); }
.wt-plan__note { margin: 4px 0 0; font-size: .9rem; font-weight: 700; color: var(--wt-accent-ink); }
.wt-plan__limit { margin: 14px 0 10px; font-weight: 700; }
.wt-plan__perks { list-style: none; margin: 0 0 22px; padding: 0; }
.wt-plan__perks li { display: flex; gap: 10px; padding: 6px 0; border-top: 1px solid var(--wt-border); }
.wt-plan__perks .wt-icon { color: var(--wt-primary); margin-top: 2px; }
.wt-features { list-style: none; padding: 0; margin: 28px 0 24px; display: grid; gap: 22px 28px; }
@media (min-width: 700px) { .wt-features { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1100px) { .wt-features { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.wt-features h3 { font-size: 1.15rem; margin: 12px 0 6px; }
.wt-features p { color: var(--wt-muted); margin: 0; }
.wt-handshake { background: var(--wt-primary) var(--wt-topo); color: var(--wt-on-primary); padding: 44px 0; }
.wt-handshake h2 { color: inherit; font-family: var(--wt-display); font-weight: 400; }
.wt-handshake a { color: inherit; font-weight: 700; }
.wt-handshake__in { display: flex; gap: 22px; align-items: flex-start; max-width: 900px; font-size: 1.12rem; }
.wt-handshake__icon { display: none; }
@media (min-width: 700px) { .wt-handshake__icon { display: inline-flex; align-items: center; justify-content: center; width: 72px; height: 72px; flex: none; border-radius: 50%; border: 2px solid currentColor; } .wt-handshake__icon .wt-icon { width: 36px; height: 36px; } }
.wt-faq { margin-top: 24px; }
.wt-faq details { border: 1px solid var(--wt-border); border-radius: var(--wt-radius); background: var(--wt-card); margin-bottom: 10px; }
.wt-faq summary { cursor: pointer; list-style: none; padding: 16px 48px 16px 18px; font-weight: 700; font-size: 1.08rem; position: relative; min-height: 44px; }
.wt-faq summary::-webkit-details-marker { display: none; }
.wt-faq summary::after { content: "+"; position: absolute; right: 18px; top: 50%; transform: translateY(-50%); font-size: 1.5rem; color: var(--wt-primary); }
.wt-faq details[open] summary::after { content: "−"; }
.wt-faq details p { padding: 0 18px 16px; margin: 0; color: var(--wt-muted); }
.wt-maker__more { margin-top: 36px; }
.wt-cta { background: var(--wt-header) var(--wt-topo); color: #EDE3C4; padding: 56px 0; }
.wt-cta h2 { color: #F7F2E4; }
.wt-cta__small a { color: var(--wt-accent); }

/* Respect reduced motion. */
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; } }

/* Print: just the content. */
@media print { .wt-header, .wt-announce, .wt-footer, .wt-promise { display: none !important; } body { background: #fff; color: #000; } }
