/*
Theme Name: Highland Fly
Theme URI: https://highlandfly.ca
Author: Highland Fly
Description: A one-page block theme for Highland Fly, guided Atlantic salmon fishing. Fly-only, catch and release.
Version: 1.0.0
Requires at least: 6.6
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: highland-fly
*/

html { scroll-behavior: smooth; }
section, .hf-section { scroll-margin-top: 24px; }

/* Eyebrow labels */
.hf-eyebrow {
	font-size: 0.82rem;
	font-weight: 600;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--wp--preset--color--brass);
	margin-bottom: 0.75rem;
}
.has-paper-background-color .hf-eyebrow { color: var(--wp--preset--color--brass-dark); }

.hf-accent { color: var(--wp--preset--color--brass); font-style: italic; }
.hf-lede { font-size: 1.15rem; color: var(--wp--preset--color--mist); max-width: 34rem; }
.has-paper-background-color .hf-muted { color: #4A5651; }
.hf-muted { color: var(--wp--preset--color--mist); }

/* Header */
.hf-header { border-bottom: 1px solid var(--wp--preset--color--line); }
.hf-header .wp-block-site-title a { text-decoration: none; }

/* Photo placeholders: replace these groups with Image or Cover blocks */
.hf-photo {
	border: 1px dashed #4A6158;
	border-radius: 6px;
	background: var(--wp--preset--color--spruce-2);
	min-height: 440px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	color: #9FA99F;
	font-size: 0.9rem;
	padding: 24px;
}
.hf-photo.is-tall { min-height: 520px; }
.hf-photo p { margin: 0; }

/* Stats strip */
.hf-stats { border-top: 1px solid var(--wp--preset--color--line); border-bottom: 1px solid var(--wp--preset--color--line); }
.hf-stat-big {
	font-family: var(--wp--preset--font-family--display);
	font-size: 2.1rem;
	line-height: 1.2;
	color: var(--wp--preset--color--brass);
	margin: 0;
}
.hf-stat-small { margin: 0; font-size: 0.92rem; color: var(--wp--preset--color--mist); }

/* Trip cards */
.hf-card {
	background: #FFFFFF;
	border: 1px solid #DDD6C6;
	border-radius: 6px;
	padding: 32px !important;
	height: 100%;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
}
.hf-card .hf-price-row { margin-top: auto; padding-top: 16px; border-top: 1px solid #E6E0D2; }
.hf-card.is-featured { background: var(--wp--preset--color--ink); color: var(--wp--preset--color--bone); border-color: var(--wp--preset--color--ink); }
.hf-card.is-featured .hf-muted, .hf-card.is-featured li { color: var(--wp--preset--color--mist); }
.hf-card.is-featured .hf-price-row { border-top-color: var(--wp--preset--color--line); }
.hf-card.is-featured a { color: var(--wp--preset--color--brass); }
.hf-card:not(.is-featured) li { color: #4A5651; }
.hf-card:not(.is-featured) a { color: var(--wp--preset--color--brass-dark); }
.hf-price { font-family: var(--wp--preset--font-family--display); font-size: 1.9rem; margin: 0; }
.hf-badge {
	display: inline-block;
	font-size: 0.72rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	background: var(--wp--preset--color--brass);
	color: var(--wp--preset--color--spruce);
	padding: 4px 10px;
	border-radius: 3px;
	margin: 0;
}
.wp-block-columns.hf-cards > .wp-block-column { display: flex; }

/* Season grid */
.hf-season { border: 1px solid var(--wp--preset--color--line); border-radius: 6px; overflow: hidden; gap: 0 !important; }
.hf-season > .wp-block-column { padding: 28px; border-right: 1px solid var(--wp--preset--color--line); }
.hf-season > .wp-block-column:last-child { border-right: 0; }
.hf-season .hf-when { font-size: 0.82rem; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; color: var(--wp--preset--color--brass); margin: 0; }
@media (max-width: 781px) {
	.hf-season > .wp-block-column { border-right: 0; border-bottom: 1px solid var(--wp--preset--color--line); }
	.hf-season > .wp-block-column:last-child { border-bottom: 0; }
}

/* Guide */
.hf-band { border-top: 1px solid var(--wp--preset--color--line); border-bottom: 1px solid var(--wp--preset--color--line); }
.hf-band .wp-block-quote { border-left: 0; border-top: 1px solid var(--wp--preset--color--line); padding: 24px 0 0; margin: 0; }
.hf-band .wp-block-quote p { font-family: var(--wp--preset--font-family--display); font-style: italic; font-size: 1.5rem; line-height: 1.35; }
.hf-band .wp-block-quote cite { font-size: 0.9rem; color: #9FA99F; font-style: normal; }

/* FAQ */
.hf-faq .wp-block-details { border-top: 1px solid var(--wp--preset--color--line); padding: 22px 0; margin: 0; }
.hf-faq .wp-block-details:last-child { border-bottom: 1px solid var(--wp--preset--color--line); }
.hf-faq summary { font-weight: 600; font-size: 1.15rem; cursor: pointer; }
.hf-faq .wp-block-details p { color: var(--wp--preset--color--mist); margin: 12px 0 0; }

/* Booking */
.hf-form-box { background: #FFFFFF; border: 1px solid #DDD6C6; border-radius: 6px; padding: 32px !important; }
.has-paper-background-color a { color: var(--wp--preset--color--brass-dark); }

/* Footer */
.hf-footer { font-size: 0.88rem; color: #9FA99F; }
.hf-footer .hf-footer-name { font-family: var(--wp--preset--font-family--display); font-size: 1.4rem; color: var(--wp--preset--color--bone); margin: 0; }
