/* ==========================================================================
   Dayforshop — base, layout, header, footer, home, pages
   Design tokens are the original app's Tailwind/shadcn variables (src/index.css).
   ========================================================================== */

:root {
	--v-bg: #F7F8FA;
	--v-fg: #111418;
	--v-card: #fff;
	--v-primary: #2149D1;
	--v-primary-hover: #111418;
	--v-primary-fg: #fff;
	--v-secondary: #ECEFF4;
	--v-muted-fg: #5B6472;
	--v-accent: #ECEFF4;
	--v-border: #DFE3EA;
	--v-input: #CDD3DD;
	--v-destructive: hsl(0 72% 45%);
	--v-footer: #ECEFF4;
	--v-radius: 2px;
	--v-radius-md: 2px;
	--v-font-heading: 'Fraunces', Georgia, 'Times New Roman', serif;
	--v-font-body: 'Inter', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', sans-serif;
	--v-container: 72rem;
	--v-gutter: 1rem;
	--v-header-h: 4rem;
	--v-sticky-top: 0px;
}

@media (min-width: 640px) {
	:root { --v-gutter: 1.5rem; }
}

/* ---------- Base ---------- */
*, *::before, *::after { box-sizing: border-box; border: 0 solid var(--v-border); }
html { -webkit-text-size-adjust: 100%; scroll-padding-top: calc(var(--v-header-h) + 1rem); }
body {
	margin: 0;
	background: var(--v-bg);
	color: var(--v-fg);
	font-family: var(--v-font-body);
	font-size: 16px;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	overflow-x: hidden;
}
@supports (overflow: clip) { body { overflow-x: clip; } }
h1, h2, h3, h4 { font-family: var(--v-font-heading); font-weight: 500; letter-spacing: -0.01em; margin: 0; line-height: 1.2; overflow-wrap: break-word; }
p { margin: 0; }
img, svg, video { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; color: inherit; }
button { cursor: pointer; background: none; }
::selection { background: var(--v-primary); color: var(--v-primary-fg); }
:focus-visible { outline: 2px solid var(--v-primary); outline-offset: 2px; }
address { font-style: normal; }
table { border-collapse: collapse; }

.screen-reader-text {
	border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%);
	height: 1px; width: 1px; margin: -1px; overflow: hidden; padding: 0;
	position: absolute !important; word-wrap: normal !important;
}
.skip-link:focus {
	clip: auto; clip-path: none; height: auto; width: auto; margin: 0;
	z-index: 100000; top: 0.5rem; left: 0.5rem; padding: 0.75rem 1rem;
	background: var(--v-fg); color: var(--v-bg); border-radius: var(--v-radius-md);
}

.v-icon { width: 1.25rem; height: 1.25rem; flex-shrink: 0; }

/* ---------- Layout ---------- */
.site { display: flex; flex-direction: column; min-height: 100vh; min-height: 100dvh; }
.site-main { flex: 1 0 auto; outline: none; }
.container { width: 100%; max-width: var(--v-container); margin-inline: auto; padding-inline: var(--v-gutter); }
.container--mid { max-width: 64rem; }
.container--narrow { max-width: 48rem; }
.container--policy { max-width: 48rem; }
.container--about { max-width: 56rem; }
.section { padding-top: 5rem; }
@media (min-width: 640px) { .section { padding-top: 7rem; } }
.section-body { margin-top: 2rem; }
.page-wrap { padding-top: 2.5rem; }
@media (min-width: 640px) { .page-wrap { padding-top: 3.5rem; } }
.center-block { text-align: center; padding-bottom: 2rem; }

/* ---------- Type helpers ---------- */
.eyebrow { font-size: 0.75rem; line-height: 1rem; text-transform: uppercase; letter-spacing: 0.18em; color: var(--v-muted-fg); font-weight: 500; font-family: var(--v-font-body); }
.section-head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 1rem; }
.section-title { margin-top: 0.75rem; font-size: 1.875rem; line-height: 2.25rem; letter-spacing: -0.025em; }
.section-title--tight { line-height: 1.25; }
.section-title--sm { font-size: 1.5rem; line-height: 2rem; margin-top: 0; }
@media (min-width: 640px) { .section-title { font-size: 2.25rem; line-height: 2.5rem; } .section-title--tight { line-height: 1.25; } }
.lead-muted { margin-top: 1.25rem; font-size: 15px; line-height: 1.625; color: var(--v-muted-fg); }
.lead-muted + .lead-muted { margin-top: 1rem; }
.text-link { font-size: 14px; text-decoration: underline; text-underline-offset: 4px; transition: color .15s; }
.text-link:hover { color: var(--v-primary); }
.text-link--sm { display: inline-block; margin-top: 1rem; font-size: 13px; }

/* ---------- Buttons ---------- */
.btn, .wp-block-button__link {
	display: inline-flex; align-items: center; justify-content: center; gap: 0.5rem;
	border-radius: var(--v-radius-md); padding: 0.75rem 1.5rem; font-size: 14px; font-weight: 500; line-height: 1.25rem;
	transition: background-color .15s, color .15s, border-color .15s; text-decoration: none; min-height: 44px; text-align: center;
}
.btn--primary, .wp-block-button__link { background: var(--v-primary); color: var(--v-primary-fg); }
.btn--primary:hover, .wp-block-button__link:hover { background: var(--v-primary-hover); color: var(--v-primary-fg); }
.btn--outline, .is-style-outline .wp-block-button__link { background: transparent; color: var(--v-fg); border: 1px solid var(--v-border); }
.btn--outline:hover, .is-style-outline .wp-block-button__link:hover { background: var(--v-secondary); }
.btn[disabled], .btn.is-disabled { opacity: .6; cursor: not-allowed; }
.btn-row { margin-top: 2rem; display: flex; flex-wrap: wrap; align-items: center; gap: 0.75rem; }
.btn-row--center { justify-content: center; }

/* ---------- Announcement + header ---------- */
.announcement {
	background: var(--v-fg); color: var(--v-bg); padding: 0.5rem var(--v-gutter); text-align: center;
	font-size: 11px; line-height: 1rem; text-transform: uppercase; letter-spacing: 0.16em; overflow-wrap: anywhere;
}
.site-header {
	position: sticky; top: var(--v-sticky-top); z-index: 40;
	border-bottom: 1px solid var(--v-border);
	background: rgb(247 248 250 / 0.95);
	-webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px);
}
.admin-bar { --v-sticky-top: 32px; }
@media (max-width: 782px) { .admin-bar { --v-sticky-top: 46px; } }
@media (max-width: 600px) { .admin-bar { --v-sticky-top: 0px; } }

.header-bar { display: flex; height: var(--v-header-h); align-items: center; justify-content: space-between; gap: 1rem; }
.icon-btn { display: inline-flex; align-items: center; justify-content: center; padding: 0.5rem; min-width: 40px; min-height: 40px; color: var(--v-fg); position: relative; border-radius: var(--v-radius-md); }
.menu-toggle { margin-left: -0.5rem; }
.menu-toggle__close { display: none; }
.menu-toggle[aria-expanded="true"] .menu-toggle__open { display: none; }
.menu-toggle[aria-expanded="true"] .menu-toggle__close { display: inline-flex; }
.brand { display: inline-flex; align-items: baseline; gap: 0.375rem; min-width: 0; }
.brand__name { font-family: var(--v-font-heading); font-size: 1.25rem; line-height: 1.75rem; letter-spacing: -0.025em; color: var(--v-fg); white-space: nowrap; }
.brand__dot { display: inline-block; width: 0.375rem; height: 0.375rem; border-radius: 9999px; background: var(--v-primary); margin-bottom: 0.125rem; flex-shrink: 0; }
.brand--logo img { max-height: 40px; width: auto; }
@media (min-width: 640px) { .site-header .brand__name { font-size: 1.5rem; line-height: 2rem; } }

.primary-nav { display: none; }
.primary-nav__list { display: flex; align-items: center; gap: 1.75rem; list-style: none; margin: 0; padding: 0; }
.primary-nav__list a { font-size: 13px; color: var(--v-muted-fg); transition: color .15s; white-space: nowrap; }
.primary-nav__list a:hover, .primary-nav__list a[aria-current="page"], .primary-nav__list .current-menu-item > a { color: var(--v-fg); }
.header-actions { display: flex; align-items: center; gap: 0.25rem; margin-right: -0.5rem; }

.cart-count {
	position: absolute; right: -2px; top: 2px; display: flex; align-items: center; justify-content: center;
	height: 1rem; min-width: 1rem; padding: 0 0.25rem; border-radius: 9999px; background: var(--v-primary); color: var(--v-primary-fg);
	font-size: 10px; font-weight: 600; line-height: 1;
}
.cart-count.is-empty { display: none; }

@media (min-width: 768px) {
	.menu-toggle, .mobile-nav { display: none !important; }
	.primary-nav { display: block; min-width: 0; }
}
@media (min-width: 768px) and (max-width: 1023px) {
	.primary-nav__list { gap: 1.1rem; }
}

.mobile-nav { border-top: 1px solid var(--v-border); background: var(--v-bg); padding: 0.75rem var(--v-gutter); max-height: calc(100dvh - var(--v-header-h)); overflow-y: auto; }
.mobile-nav__list { list-style: none; margin: 0; padding: 0; }
.mobile-nav__list a { display: block; padding: 0.625rem 0; font-size: 15px; color: var(--v-fg); }
.mobile-nav__list--extra { border-top: 1px solid var(--v-border); margin-top: 0.25rem; padding-top: 0.25rem; }

.header-search { border-top: 1px solid var(--v-border); background: var(--v-bg); padding: 0.75rem 0; }

/* ---------- Search form ---------- */
.search-form { position: relative; display: flex; gap: 0.5rem; max-width: 36rem; width: 100%; }
.search-form__icon { position: absolute; left: 0.75rem; top: 50%; transform: translateY(-50%); color: var(--v-muted-fg); pointer-events: none; }
.search-form__icon .v-icon { width: 1rem; height: 1rem; }
.search-form__field {
	flex: 1; min-width: 0; border: 1px solid var(--v-input); border-radius: var(--v-radius-md); background: var(--v-card);
	padding: 0.75rem 0.75rem 0.75rem 2.5rem; font-size: 15px; line-height: 1.25rem;
}
.search-form__field:focus { border-color: var(--v-fg); outline: none; }
.search-form .btn { flex-shrink: 0; }
.page-head .search-form { margin-top: 1.5rem; }

/* ---------- Images ---------- */
.v-img-placeholder { display: block; width: 100%; background: var(--v-secondary); }

/* ---------- Home: hero ---------- */
.hero { padding-top: 2rem; }
@media (min-width: 640px) { .hero { padding-top: 3rem; } }
.hero__grid { display: grid; align-items: center; gap: 2rem; }
.hero__text { order: 2; min-width: 0; }
.hero__media { order: 1; min-width: 0; }
.hero__title { margin-top: 1rem; font-size: 2.6rem; line-height: 1.05; letter-spacing: -0.025em; }
.hero__lead { margin-top: 1.25rem; max-width: 28rem; font-size: 16px; line-height: 1.625; color: var(--v-muted-fg); }
.hero__note { margin-top: 1.5rem; font-size: 13px; color: var(--v-muted-fg); }
.hero__img, .hero__media .v-img-placeholder { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
@media (min-width: 640px) { .hero__title { font-size: 3.75rem; } }
@media (min-width: 1024px) {
	.hero__grid { grid-template-columns: 1.05fr 1fr; gap: 3.5rem; }
	.hero__text { order: 1; }
	.hero__media { order: 2; }
	.hero__img, .hero__media .v-img-placeholder { aspect-ratio: 5 / 6; }
}

/* ---------- Home: collections ---------- */
.collection-grid { margin-top: 2rem; display: grid; gap: 0.75rem; }
@media (min-width: 640px) { .collection-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1024px) { .collection-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (min-width: 640px) { .collection-grid:has(> :nth-child(3):last-child) { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.collection-tile { position: relative; display: block; overflow: hidden; background: var(--v-secondary); }
.collection-tile__img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; transition: transform .5s; }
.collection-tile:hover .collection-tile__img { transform: scale(1.03); }
.collection-tile__caption {
	pointer-events: none; position: absolute; inset: auto 0 0 0; padding: 1rem; display: block;
	background: linear-gradient(to top, rgb(0 0 0 / .7), rgb(0 0 0 / .25), transparent);
}
.collection-tile__name { display: block; font-family: var(--v-font-heading); font-size: 1.125rem; line-height: 1.75rem; color: #fff; }
.collection-tile__tagline { display: block; margin-top: 0.25rem; font-size: 12px; line-height: 1.375; color: rgb(255 255 255 / .75); }

/* ---------- Home: promise row ---------- */
.promise-row { display: grid; gap: 1px; overflow: hidden; border: 1px solid var(--v-border); background: var(--v-border); }
@media (min-width: 640px) { .promise-row { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.promise { background: var(--v-bg); padding: 1.5rem; }
@media (min-width: 640px) { .promise { padding: 2rem; } }
.promise__title { font-size: 1.125rem; line-height: 1.75rem; }
.promise__body { margin-top: 0.5rem; font-size: 14px; line-height: 1.625; color: var(--v-muted-fg); }

/* ---------- Home: editorial ---------- */
.editorial { display: grid; align-items: center; gap: 2rem; }
.editorial__img, .editorial__media .v-img-placeholder { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.editorial .btn { margin-top: 1.75rem; }
@media (min-width: 1024px) { .editorial { grid-template-columns: 1fr 1fr; gap: 3.5rem; } }

/* ---------- Empty state ---------- */
.empty-state { border: 1px solid var(--v-border); padding: 4rem 1.5rem; text-align: center; }
.empty-state h2 { font-size: 1.5rem; line-height: 2rem; }
.empty-state p { margin: 0.75rem auto 0; max-width: 28rem; font-size: 15px; color: var(--v-muted-fg); }
.empty-state .btn { margin-top: 1.75rem; }

/* ---------- Pages ---------- */
.page-head { margin-bottom: 2.5rem; }
.page-head .eyebrow + .page-title { margin-top: 0.75rem; }
.page-title { font-size: 2.25rem; line-height: 1.15; letter-spacing: -0.025em; }
@media (min-width: 640px) { .page-title { font-size: 3rem; } .page-title--md { font-size: 2.25rem; } }
.page-intro { margin-top: 1rem; font-size: 15px; line-height: 1.625; color: var(--v-muted-fg); }
.page-sub { margin-top: 0.5rem; font-size: 14px; color: var(--v-muted-fg); }
.page-updated { margin-top: 0.75rem; font-size: 12px; text-transform: uppercase; letter-spacing: 0.14em; color: var(--v-muted-fg); }
.result-count { font-size: 13px; color: var(--v-muted-fg); margin-bottom: 1.5rem; }
.post-list { display: grid; gap: 2rem; }
.post-card__title { font-size: 1.5rem; }
.post-card__meta { font-size: 13px; color: var(--v-muted-fg); margin-top: .25rem; }
.post-card__excerpt { margin-top: .5rem; color: var(--v-muted-fg); font-size: 15px; }
.nav-links { display: flex; gap: .75rem; margin-top: 2rem; flex-wrap: wrap; }
.nav-links .page-numbers { padding: .375rem .75rem; border: 1px solid var(--v-border); border-radius: var(--v-radius-md); font-size: 14px; }
.nav-links .current { background: var(--v-fg); color: var(--v-bg); border-color: var(--v-fg); }

/* ---------- Prose (page content) ---------- */
.prose { overflow-wrap: break-word; }
.prose > * + * { margin-top: 1rem; }
.prose p, .prose li { font-size: 15px; line-height: 1.625; color: var(--v-muted-fg); }
.prose h2 { font-size: 1.5rem; line-height: 2rem; margin-top: 2.5rem; margin-bottom: 0.75rem; color: var(--v-fg); }
.prose h3 { font-family: var(--v-font-body); font-size: 1.125rem; font-weight: 600; margin-top: 1.5rem; margin-bottom: .5rem; letter-spacing: 0; }
.prose > h2:first-child { margin-top: 0; }
.prose ul, .prose ol { padding-left: 1.25rem; margin-bottom: 1rem; }
.prose ul { list-style: disc; }
.prose li + li { margin-top: 0.5rem; }
.prose strong { color: var(--v-fg); font-weight: 600; }
.prose a { color: var(--v-fg); text-decoration: underline; text-underline-offset: 4px; text-decoration-color: rgb(33 73 209 / .5); }
.prose a:hover { text-decoration-color: var(--v-primary); }
.prose a.btn, .prose .wp-block-button__link { text-decoration: none; }
.prose .btn--primary, .prose .wp-block-button__link { color: var(--v-primary-fg); }
.prose table, .prose .wp-block-table table { width: 100%; text-align: left; font-size: 15px; margin-bottom: 1.5rem; border-collapse: collapse; }
.prose .wp-block-table { overflow-x: auto; margin: 0 0 1.5rem; }
.prose .wp-block-table td, .prose .wp-block-table th { border: 0; }
.prose th, .prose .wp-block-table th, .prose thead td { padding: 0 1rem 0.5rem 0; font-weight: 600; color: var(--v-fg); border-bottom: 1px solid var(--v-border) !important; }
.prose td { padding: 0.5rem 1rem 0.5rem 0; vertical-align: top; color: var(--v-muted-fg); border-bottom: 1px solid var(--v-border) !important; }
.prose .wp-block-table thead { border-bottom: 0; }
.prose figure { margin: 0; }
.prose img { height: auto; }
.prose dl { margin: 0; }

/* Policy rows (legal notice / contact details) */
.v-rows { margin: 0.5rem 0 0; }
.v-row { display: grid; gap: 0.25rem; border-bottom: 1px solid var(--v-border); padding: 0.75rem 0; font-size: 15px; }
.v-row dt { color: var(--v-muted-fg); }
.v-row dd { margin: 0; color: var(--v-fg); }
@media (min-width: 640px) { .v-row { grid-template-columns: 200px 1fr; gap: 1rem; } }

/* FAQ accordions (core Details block) */
.prose details, .wp-block-details { border-bottom: 1px solid var(--v-border); padding: 1.25rem 0; margin: 0; }
.prose details + details { margin-top: 0; }
.prose details summary {
	display: flex; cursor: pointer; list-style: none; align-items: flex-start; justify-content: space-between; gap: 1rem;
	font-size: 16px; font-weight: 500; color: var(--v-fg);
}
.prose details summary::-webkit-details-marker { display: none; }
.prose details summary::after { content: "+"; color: var(--v-muted-fg); transition: transform .2s; margin-top: 0.1rem; flex-shrink: 0; }
.prose details[open] summary::after { transform: rotate(45deg); }
.prose details > :not(summary) { margin-top: 0.75rem; }
.v-faq { border-top: 0; }

/* Editorial (About) page blocks */
.prose-editorial h1 { font-size: 2.25rem; line-height: 1.15; letter-spacing: -0.025em; color: var(--v-fg); margin-top: 0.75rem; }
@media (min-width: 640px) { .prose-editorial h1 { font-size: 3rem; } }
.prose-editorial .v-lead { font-size: 16px; max-width: 42rem; margin-top: 1.25rem; }
.prose-editorial .v-about-image { margin-top: 2.5rem; }
.prose-editorial .v-about-image img, .prose-editorial .v-about-image .v-img-placeholder { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.v-about-grid { margin-top: 3rem; display: grid; gap: 2.5rem; }
.v-about-grid h2 { margin-top: 0; }
.v-about-grid > * { margin: 0; }
@media (min-width: 640px) { .v-about-grid { grid-template-columns: 1fr 1fr; } }
.v-about-grid.wp-block-columns { flex-wrap: wrap !important; }
.v-about-business { margin-top: 3.5rem !important; border-top: 1px solid var(--v-border); padding-top: 2rem; }
.v-about-business h2 { margin-top: 0; }

/* ---------- Forms (shared) ---------- */
.v-field label, .v-label { display: block; margin-bottom: 0.375rem; font-size: 13px; color: var(--v-fg); }
.v-input, .v-field input, .v-field select, .v-field textarea {
	width: 100%; border: 1px solid var(--v-input); border-radius: var(--v-radius-md); background: var(--v-card);
	padding: 0.625rem 0.75rem; font-size: 15px; line-height: 1.5; color: var(--v-fg); min-height: 44px;
}
.v-field input:focus, .v-field select:focus, .v-field textarea:focus { border-color: var(--v-fg); outline: none; }
.v-form-grid { display: grid; gap: 1rem; }
@media (min-width: 640px) { .v-form-grid--2 { grid-template-columns: 1fr 1fr; } }
.v-form > * + * { margin-top: 1rem; }
.v-notice { display: flex; gap: 0.5rem; align-items: flex-start; font-size: 14px; }
.v-notice .v-icon { width: 1rem; height: 1rem; margin-top: .2rem; }
.v-notice--error { color: var(--v-destructive); }
.v-notice--ok { color: var(--v-fg); }
.v-notice--ok .v-icon { color: var(--v-primary); }
.v-hp { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }

.v-contact { display: grid; gap: 2.5rem; }
@media (min-width: 640px) { .v-contact { grid-template-columns: 220px minmax(0, 1fr); } }
.v-contact-details { margin: 0; }
.v-contact-details > div + div { margin-top: 1.25rem; }
.v-contact-details dt { font-size: 12px; text-transform: uppercase; letter-spacing: 0.14em; color: var(--v-muted-fg); }
.v-contact-details dd { margin: 0.25rem 0 0; font-size: 15px; }
.v-contact-details dd.is-muted { color: var(--v-muted-fg); }

/* ---------- Footer ---------- */
.site-footer { margin-top: 6rem; background: var(--v-footer); color: #fff; }
.site-footer__inner { padding-top: 4rem; padding-bottom: 4rem; }
.footer-grid { display: grid; gap: 3rem; }
@media (min-width: 640px) { .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1024px) { .footer-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.footer-col { min-width: 0; }
.brand--footer .brand__name { color: #fff; font-size: 1.25rem; }
.footer-about { margin-top: 1rem; max-width: 20rem; font-size: 14px; line-height: 1.625; color: rgb(255 255 255 / .7); }
.footer-contact { margin-top: 1.5rem; }
.footer-contact > * + * { margin-top: 0.5rem; }
.footer-contact a, .footer-links a { font-size: 14px; color: rgb(255 255 255 / .8); transition: color .15s; overflow-wrap: anywhere; }
.footer-contact a:hover, .footer-links a:hover { color: #fff; }
.footer-contact address { font-size: 14px; line-height: 1.625; color: rgb(255 255 255 / .7); }
.footer-contact address span { display: block; }
.footer-heading { font-family: var(--v-font-body); font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.18em; color: rgb(255 255 255 / .6); }
.footer-links { list-style: none; margin: 1rem 0 0; padding: 0; }
.footer-links li + li { margin-top: 0.625rem; }
.footer-terms { margin-top: 1rem; font-size: 14px; color: rgb(255 255 255 / .7); }
.footer-terms > * + * { margin-top: 1rem; }
.pay-badges { list-style: none; margin: 0; padding: 0.25rem 0 0; display: flex; flex-wrap: wrap; gap: 0.5rem; }
.pay-badges li { border: 1px solid rgb(255 255 255 / .2); border-radius: 0.25rem; padding: 0.25rem 0.5rem; font-size: 11px; text-transform: uppercase; letter-spacing: 0.025em; color: rgb(255 255 255 / .8); }
.footer-inline-links { display: flex; flex-wrap: wrap; gap: 0.5rem 1rem; }
.footer-inline-links a, .footer-terms a { text-decoration: underline; text-underline-offset: 4px; }
.footer-bottom {
	margin-top: 3.5rem; display: flex; flex-direction: column; gap: 1rem; border-top: 1px solid rgb(255 255 255 / .15);
	padding-top: 1.5rem; font-size: 13px; color: rgb(255 255 255 / .6);
}
.footer-bottom__links { display: flex; flex-wrap: wrap; align-items: center; gap: 0.5rem 1rem; }
.footer-bottom a { overflow-wrap: anywhere; }
.footer-bottom a:hover { color: #fff; }
@media (min-width: 640px) { .footer-bottom { flex-direction: row; align-items: center; justify-content: space-between; } }

/* ---------- WordPress core alignment helpers ---------- */
.alignleft { float: left; margin-right: 1.5rem; }
.alignright { float: right; margin-left: 1.5rem; }
.aligncenter { margin-inline: auto; }
.wp-caption-text, figcaption { font-size: 13px; color: var(--v-muted-fg); margin-top: .5rem; }

/* ---------- Dayforshop: light footer ---------- */
.site-footer { color: var(--v-fg); border-top: 1px solid var(--v-border); }
.brand--footer .brand__name { color: var(--v-fg); }
.footer-about, .footer-contact address, .footer-terms { color: rgb(17 20 24 / .7); }
.footer-contact a, .footer-links a { color: rgb(17 20 24 / .75); }
.footer-contact a:hover, .footer-links a:hover, .footer-bottom a:hover { color: var(--v-primary); }
.footer-heading { color: var(--v-fg); }
.pay-badges li { border-color: var(--v-border); background: var(--v-bg); color: rgb(17 20 24 / .7); border-radius: 2px; }
.footer-bottom { border-top-color: var(--v-border); color: rgb(17 20 24 / .55); }
::selection { background: rgba(33, 73, 209, 0.16); }

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { transition-duration: 0.01ms !important; animation-duration: 0.01ms !important; scroll-behavior: auto !important; }
}
