/*
Theme Name: West Fork Wharf
Theme URI: https://wfw.lav8.co
Author: LAV8
Description: Custom block theme for West Fork Wharf, a supper club and lounge in Sheffield, Iowa. Badge & Brick design: black, white and Wharf red, with the checkered basket-liner motif.
Requires at least: 6.6
Tested up to: 7.1
Requires PHP: 8.1
Version: 1.0.3
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: west-fork-wharf
*/

/* Checkered basket-liner strip */
.wfw-checker {
	height: 18px;
	background: repeating-conic-gradient(var(--wp--preset--color--wharf-red) 0 25%, var(--wp--preset--color--white) 0 50%) 0 0 / 18px 18px;
}

/* Header */
.wfw-header .wfw-header__logo img { width: 72px; height: 72px; display: block; }
.wfw-header .wp-block-navigation a { text-decoration: none; }
.wfw-header .wp-block-navigation a:hover { color: var(--wp--preset--color--wharf-red); }
@media (max-width: 600px) {
	.wfw-header .wfw-header__logo img { width: 56px; height: 56px; }
	.wfw-header .wfw-header__call { display: none; }
}

/* Eyebrow label with a short rule */
.wfw-eyebrow { display: inline-flex; align-items: center; gap: 10px; }
.wfw-eyebrow::before { content: ""; width: 28px; height: 3px; background: currentColor; }

/* Hero photo with the badge tucked into the corner */
.wfw-photo-badge { position: relative; }
.wfw-photo-badge .wfw-photo-badge__photo img { width: 100%; height: 560px; object-fit: cover; border-radius: 10px; display: block; }
.wfw-photo-badge .wfw-photo-badge__badge { position: absolute; left: -36px; bottom: -36px; margin: 0; }
.wfw-photo-badge .wfw-photo-badge__badge img { width: 140px; height: 140px; filter: drop-shadow(0 6px 14px rgba(0,0,0,.25)); }
@media (max-width: 781px) {
	.wfw-photo-badge .wfw-photo-badge__photo img { height: 380px; }
	.wfw-photo-badge .wfw-photo-badge__badge { left: 12px; bottom: -28px; }
	.wfw-photo-badge .wfw-photo-badge__badge img { width: 104px; height: 104px; }
}

/* Special cards */
.wfw-special { border-top: 6px solid var(--wp--preset--color--wharf-red); border-radius: 8px; height: 100%; }
.wfw-special .wfw-special__when { color: #ff6b74; }

/* Menu rows: name ... price */
.wfw-menu-row { gap: 12px; }
.wfw-menu-row > p { margin: 0; }
.wfw-menu-row > p:last-child { white-space: nowrap; }
.wfw-menu-section h3 { border-bottom: 3px solid var(--wp--preset--color--ink); padding-bottom: 10px; }
.wfw-menu-note { color: var(--wp--preset--color--gray); font-weight: 400; }

/* Rounded photos */
.wfw-rounded img { border-radius: 10px; }

/* Bar cover: left-to-right fade so the text reads over the photo */
.wfw-bar .wp-block-cover__background { background: linear-gradient(90deg, rgba(17,17,17,.94) 0%, rgba(17,17,17,.78) 45%, rgba(17,17,17,.12) 100%) !important; opacity: 1 !important; }

/* Review placeholders */
.wfw-outline-card { border: 2px solid var(--wp--preset--color--ink); border-radius: 8px; }

/* Hours list from the Wharf Info settings */
.wfw-hours { display: grid; grid-template-columns: auto 1fr; gap: 8px 24px; margin: 0; }
.wfw-hours dt { font-weight: 700; margin: 0; }
.wfw-hours dd { margin: 0; }
.wfw-status { display: inline-flex; align-items: center; gap: 10px; font-weight: 600; }
.wfw-status::before { content: ""; width: 10px; height: 10px; border-radius: 50%; background: #2e9a5a; }
.wfw-status.is-closed::before { background: var(--wp--preset--color--wharf-red); }
.wfw-notice { background: var(--wp--preset--color--ink); color: var(--wp--preset--color--white); text-align: center; padding: 10px 24px; font-weight: 600; }

/* Map */
.wfw-map iframe { width: 100%; min-height: 380px; border: 0; border-radius: 10px; display: block; }

/* Footer */
.wfw-footer a { color: var(--wp--preset--color--white); }
.wfw-footer .wfw-hours dt { color: var(--wp--preset--color--white); }

/* Keyboard focus */
:where(a, button, input, select, textarea, .wp-element-button):focus-visible { outline: 3px solid var(--wp--preset--color--wharf-red); outline-offset: 2px; }

/* Full-width sections sit flush against each other */
.wp-block-post-content > .alignfull { margin-block-start: 0; margin-block-end: 0; }
.wfw-stat { white-space: nowrap; flex-shrink: 0; }
.wfw-bar.wp-block-cover { padding: var(--wp--preset--spacing--60) var(--wp--style--root--padding-right, 24px) var(--wp--preset--spacing--60) var(--wp--style--root--padding-left, 24px); }
.wp-block-cover.wfw-bar .wp-block-cover__inner-container { max-width: var(--wp--style--global--wide-size, 1200px); margin-inline: auto; width: 100%; }
.wfw-bar .wp-block-cover__inner-container > .alignwide { max-width: none; margin-inline: 0; }
.wfw-bar .wp-block-cover__image-background { object-position: 55% 28%; }
.wfw-guide-photo img { aspect-ratio: 3 / 4; object-fit: cover; width: 100%; }
.wfw-hours dd { white-space: nowrap; }
