/*
Theme Name: Golden Years
Template: twentytwentyfive
Description: Child theme for Golden Years Health Plans. Core blocks only.
Version: 1.0.0
Requires at least: 6.7
Requires PHP: 8.1
Text Domain: golden-years
*/

/* Rounded cards + images */
.gy-card { border-radius: 16px; }
.gy-round img { border-radius: 16px; }
.gy-avatar img { border-radius: 50%; aspect-ratio: 1; object-fit: cover; }

/* Link cards in the "Medicare, explained" grid */
.gy-guide { transition: transform .15s ease, box-shadow .15s ease; }
.gy-guide:hover, .gy-guide:focus-within { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(31, 43, 42, .12); }
.gy-guide a { text-decoration: none; }
.gy-guide a::after { content: ""; position: absolute; inset: 0; }
.gy-guide { position: relative; }

/* Question list */
.gy-questions { list-style: none; padding-left: 0; }
.gy-questions li { padding: .6rem 0 .6rem 2.2rem; position: relative; border-bottom: 1px solid var(--wp--preset--color--accent-6); }
.gy-questions li::before { content: "?"; position: absolute; left: 0; top: .55rem; width: 1.5rem; height: 1.5rem; border-radius: 50%; background: var(--wp--preset--color--accent-1); color: var(--wp--preset--color--contrast); font-weight: 700; font-size: .9rem; display: grid; place-items: center; }

/* Anchor targets clear the sticky header */
:where(section, .wp-block-group)[id] { scroll-margin-top: 90px; }

/* Sticky header */
.gy-header { position: sticky; top: 0; z-index: 50; box-shadow: 0 1px 0 var(--wp--preset--color--accent-6); }
body.admin-bar .gy-header { top: 32px; }

/* Contact form */
.wpcf7 label { display: block; font-weight: 600; margin-bottom: 1rem; }
.wpcf7 input[type=text], .wpcf7 input[type=tel], .wpcf7 input[type=email], .wpcf7 textarea {
	width: 100%; box-sizing: border-box; margin-top: .35rem; padding: .75rem .9rem; font: inherit; font-weight: 400;
	border: 1px solid #b9b3a2; border-radius: 10px; background: #fff; color: var(--wp--preset--color--contrast);
}
.wpcf7 textarea { height: 9rem; }
.wpcf7 input:focus, .wpcf7 textarea:focus { outline: 3px solid var(--wp--preset--color--accent-1); outline-offset: 1px; }
.wpcf7 input[type=submit] {
	background: var(--wp--preset--color--accent-3); color: #fff; border: 0; border-radius: 999px;
	padding: .9rem 2rem; font: inherit; font-weight: 700; cursor: pointer;
}
.wpcf7 input[type=submit]:hover { background: var(--wp--preset--color--contrast); }
.wpcf7-spinner { vertical-align: middle; }

/* Mobile tap-to-call bar */
.gy-callbar { display: none; }
@media (max-width: 781px) {
	.gy-callbar {
		display: block; position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; text-align: center;
		padding: .9rem 1rem calc(.9rem + env(safe-area-inset-bottom)); font-weight: 700; text-decoration: none;
		background: var(--wp--preset--color--accent-1); color: var(--wp--preset--color--contrast);
		box-shadow: 0 -2px 12px rgba(0, 0, 0, .15);
	}
	body { padding-bottom: 3.5rem; }
	.gy-header-phone { display: none !important; }
	#home .wp-block-image img { width: 200px !important; }
}

/* Mobile menu overlay: bigger, left-aligned tap targets */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { align-items: flex-start; padding-top: 3rem; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item { font-size: 1.4rem; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { align-items: flex-start; gap: 1.1rem; }
