/*
Theme Name: Catamount theme
Theme URI:
Author:
Author URI:
Description: Wordpress is resetting my theme styles every time I go to edit them. Trying to have a durable theme to work on that shows up in the style editor.
Requires at least: 6.7
Tested up to: 6.7
Requires PHP: 8.1
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Template: twentytwentyfour
Text Domain: catamount-theme
Tags:
*/

/* BEGIN TEXT STYLES */

h2 a, h3 a, h4 a, h5 a, h6 a {
	text-underline-offset: 4px;
	transition: color 0.3s ease, background-color 0.3s ease;
}

h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover, h6 a:hover {
	color: #000000;
	text-decoration: underline #FFD100;
	text-underline-offset: 4px;
}
h2 {
	line-height: 1.4 !important;
}
.has-large-font-size {
	line-height: 1.25 !important;
}

/* END Text styles */
:where(.wp-site-blocks *:focus-visible){outline-width:2px;outline-style:solid}

body .wp-block-__responsivenavigation-container-open:not(.always-shown) {
	display: block !important;
}
body .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
	display: none !important;
}

@media (min-width: 900px) {
	body .wp-block-navigation__responsive-container-open:not(.always-shown) {
		display: none !important;;
	}
	body .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
		display: block !important;
	}
}

.wp-container-core-group-is-layout-7351673c {
		flex-wrap: nowrap;
		justify-content: space-between;
		align-items: flex-start;
		padding-left: 32px;
		padding-right: 32px;
}

/* HAMBURGER ICON CUSTOMIZATION STARTS HERE */
.hamburger_flavor {
/* outline-width:1px; */
/* outline-style:solid; */
border-radius:180px;
/* color: #ffffff; */
/* padding:4px; */
}

.wp-block-navigation__responsive-container-close, .wp-block-navigation__responsive-container-open {
		background: rgba(0, 0, 0, 0.0);
		border: none;
		color: currentColor;
		cursor: pointer;
		margin: 0;
		padding: 0;
		text-transform: inherit;
		vertical-align: middle;
		color: #FFFFFF;
		padding: 12px!important;
		border-radius: 180px;
}


/* hover for hamburger bg */
.wp-block-navigation__responsive-container-open:hover, .wp-block-navigation__responsive-container-close:hover
{
		background: rgba(0, 0, 0, 0.3)
}
:where(.wp-site-blocks *:focus-visible) {
		outline: 1px solid #FFD100;
}
/* HAMBURGER ICON CUSTOMIZATION ENDS HERE */

/* Button hover */
.wp-block-button__link:hover {
		background-color: #154734;
		color: #ffffff;
}

/* Footer styling */
:where(.wp-site-blocks) > :last-child {
		margin-block-end: 0;
		margin-top: 112px;
}
/* being posts styling */
.wp-block-post-title {
		box-sizing: border-box;
		word-break: break-word;
 /*   margin-top: 96px; */
margin-bottom:16px;
}

h1.wp-block-post-title {
margin-top: 0px;
text-align: left;
}

/* zero success trying to get blog teasers to align left */
.wp-block-group is-layout-flow .wp-block-group-is-layout-flow .element.style {
 padding-left:0px;
margin-lefit:0px; }

.element.style {
		padding-top: 30px;
		padding-right: 30px;
		padding-bottom: 30px;
		padding-left: 0px;
}

/* END post custom css styling */

.wp-block-group {
		box-sizing: border-box;
		margin-top: 0px;
}

.wp-block-group.has-global-padding is-layout-constrained.wp-block-group-is-layout-constrained {background-color: #FF0000!important;}

#wp--skip-link--target > div.wp-block-group.has-global-padding.is-layout-constrained.wp-block-group-is-layout-constrained:first-child {
background-color: #154734; }

.home #wp--skip-link--target > div.wp-block-group.has-global-padding.is-layout-constrained.wp-block-group-is-layout-constrained:first-child {
background-color: #FFFFFF; }

#wp--skip-link--target > div.wp-block-group.has-global-padding.is-layout-constrained.wp-block-group-is-layout-constrained:first-child h1  {color: #FFFFFF; }

.home #wp--skip-link--target > div.wp-block-group.has-global-padding.is-layout-constrained.wp-block-group-is-layout-constrained:first-child h1 {
color: #26292c;
}

#wp--skip-link--target > div.entry-content.wp-block-post-content.has-global-padding.is-layout-constrained.wp-block-post-content-is-layout-constrained {margin-top:64px;}

/* BEGIN Style social icons */

/* BEGIN on-dark social footer */
footer .wp-block-social-links .wp-social-link a {
background-color: #154734;
border-radius:48px;
/* border: 0px solid #ffD100; */
}
footer .wp-block-social-links .wp-social-link a svg {
background-color: #154734;
fill: #FFD100;
border-radius:48px;
border: 1px solid #ffD100;
/* width: 32px;
height: 32px;*/
transition: all 0.13s;
}
footer .wp-block-social-links .wp-social-link a svg *  {
fill: #FFD100;
}

footer .wp-block-social-links .wp-social-link a:hover svg {
background-color: #FFD100;
border: 1px solid #ffD100;
}

footer .wp-block-social-links .wp-social-link a:hover svg *  {
fill: #154734;
}
/* END styling of on-dark social icons */

/* BEGIN SOCIAL ICONS ON-WHITE */
.wp-block-social-links .wp-social-link a, .wp-block-social-links .wp-social-link a:hover   {
background-color: #ffd10000;
border-radius:48px;
border: 0px solid #154734;
outline: 0;
}
.wp-block-social-links .wp-social-link   a svg {
background-color: none;
fill: #154734;
border-radius:48px;
border: 1px solid #154734;
padding:8px;
width: 32px;
height: 32px;
transition: all 0.13s;
}
.wp-block-social-links .wp-social-link  a svg *  {
fill: #154734;
}
.wp-block-social-links .wp-social-link  a:hover svg {
background-color: #154734;
border: 1px solid #154734;
}
.wp-block-social-links .wp-social-link a:hover svg *  {
fill: #FFFFFF;
}
/* social icons in footer accessibility */

footer .wp-block-social-links .wp-social-link a:focus-visible {
		background-color: #FFD100;
		border-radius: 45px;
		border: 0px solid #154734;
		outline: 0;

}
/* END on-light social icons */
/* END style social icons */


/* BEGIN FOOTER STYLING */
footer .wp-block-group a {
text-underline-offset: 4px; }

footer .wp-block-group a:hover {
text-decoration: underline #FFD100;
text-underline-offset: 4px; }

:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link {
background-color: transparent !important;
}
/* END FOOTER STYLING */

/* Main nav Drawer */
.wp-block-navigation__container  {
	margin:auto !important;
	border-left: 2px dotted #FFD100;
	border-style: none;
	border-left-style: dotted;
	border-radius: 0;
	padding-left: 24px !important;
}
.wp-block-navigation__container, .wp-block-navigation__submenu-container, .wp-block-navigation-item.has-child {
		display: flex !important;
		flex-direction: column !important;
		justify-content: flex-start !important;
		align-items: flex-start !important;
}
.wp-block-navigation__submenu-container {
	padding-top: 4px !important;
}
.wp-block-navigation__submenu-container, .wp-block-navigation-item__content {
	padding-left: 0 !important;
}
.wp-block-navigation.items-justified-right {
		--navigation-layout-justification-setting: initial !important;

}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item {
font-family: Roboto;
font-size: 14px;
font-weight: 700;
line-height: 19px;
color: var(--modal-white-modalWhite-80, rgba(255, 255, 255, 0.80)) !important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item:hover {
	color: white !important;
}

.wp-block-navigation li.wp-block-navigation-item.current-menu-item {
	padding-left: 8px;
	margin-left: -8px;
	color: white !important;
}
.wp-block-navigation .wp-block-navigation-item.current-menu-item:before {
		content: '';
		height: 19px;
		width: 4px;
		background-color: #FFD100;
		display: inline;
		position: absolute;
		margin-left: -8px;
}
.wp-block-navigation .current-menu-ancestor .wp-block-navigation-item.current-menu-item:before {
	top: .5em;
}

.wp-block-navigation .wp-block-page-list {
	gap: 16px;
}

.wp-block-navigation .wp-block-page-list li.has-child ul {
	margin-left:8px;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container {
gap: 0px;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container li a{
font-weight: 400;
text-underline-offset: 4px;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content  li a {
text-underline-offset: 4px;
}


/* =========================================================
	 Catamount: Post tiles (Query Loop cards)
	 Apply by adding class "catamount-post-card" to the per-post Group
	 ========================================================= */

.catamount-post-card {
	border-radius: 8px;
	border: 1px solid rgba(0, 0, 0, 0.1);
	background: #fff;
	//box-shadow: 0px 3px 12px 0px rgba(38, 43, 48, 0.06), 0px 0px 6px -2px rgba(38, 43, 48, 0.08);
	margin-bottom: 32px;
	display: grid;
	grid-template-columns: 1fr 40%; /* text | image */
	gap: 32px;
	align-items: center;
	padding: 32px;
}
.catamount-post-card > .wp-block-group {
	width: 100%;
}
/* Ensure featured image sits on the right */
.catamount-post-card .wp-block-post-featured-image {
	grid-column: 2;
	margin: 0;
	justify-self: end;
	width: 100%;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	isolation: isolate;
}

.catamount-post-card .wp-block-post-featured-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	border-radius: 0;
}

/* Text column (your Stack) */
.catamount-post-card .wp-block-post-date {
	color: #5D646B;
	font-size: 14px;
	font-weight: 400;
	line-height: 19px;
	margin-bottom: 8px;
}

.catamount-post-card .wp-block-post-title {
	margin: 0;
	font-size: 26px;
	font-family: Roboto,sans-serif;
	font-weight: 700;
}

.catamount-post-card .wp-block-post-title a {
	color: #26292c;
}

.catamount-post-card .wp-block-post-author-name {
	margin-top: 4px;
}
.catamount-post-card .wp-block-post-excerpt {
	margin: 4px 0 0;
	color: #5D646B;
}

/* If Post Meta exists, keep it subtle */
.catamount-post-card .wp-block-post-author,
.catamount-post-card .wp-block-post-terms,
.catamount-post-card .wp-block-post-author-name {
	font-size: 0.9rem;
	opacity: 0.8;
}
/* If no featured image, let text span full width */
.catamount-post-card:not(:has(.wp-block-post-featured-image img)) {
	grid-template-columns: 1fr;
}

@media (max-width: 1010px) {
	.catamount-post-card .wp-block-post-author-name, .catamount-post-card .wp-block-post-excerpt {
		display: none;
	}

}
/* Mobile stack */
@media (max-width: 767px) {
	.catamount-post-card {
		border-radius: 0;
		border: none;
		border-bottom: 1px solid rgba(0, 0, 0, 0.1);
		box-shadow: none;
		margin-bottom: 0;
		grid-template-columns: 1fr 136px; /* text | image */
		gap: 20px;
		padding: 20px;
	}
	.catamount-post-card .wp-block-post-featured-image {
		aspect-ratio: 1 / 1;
	}
	.catamount-post-card .wp-block-post-title {
		font-size: 18px;
	}
}

/* =========================================================
	 Catamount: Latest Posts → match .catamount-post-card tiles
	 (DEFAULT Latest Posts markup)
	 ========================================================= */

ul.wp-block-latest-posts__list.wp-block-latest-posts{
	list-style: none;
	padding: 0;
	margin: 0;
	font-size: var(--wp--preset--font-size--small);

}

/* Card */
ul.wp-block-latest-posts__list.wp-block-latest-posts > li{
	border-radius: 8px;
	border: 1px solid rgba(0, 0, 0, 0.1);
	background: #fff;
	margin-bottom: 16px;
	padding: 24px;

	/* key change */
	display: flex;
	flex-wrap: wrap;
	gap: 10px 32px; /* row-gap | column-gap */
	align-items: flex-start;
}

/* kill any legacy floats from alignleft/alignright variants */
ul.wp-block-latest-posts__list.wp-block-latest-posts > li > .wp-block-latest-posts__featured-image{
	float: none !important;
	clear: none !important;
	margin: 0 !important;

	/* right column */
	order: 2;
	flex: 0 0 40%;
	margin-left: auto;

	aspect-ratio: 16 / 9;
	overflow: hidden;
	isolation: isolate;

	align-self: center;
}

/* Crop */
ul.wp-block-latest-posts__list.wp-block-latest-posts > li > .wp-block-latest-posts__featured-image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	margin: 0 !important;
}

/* All text items: left column, stacked */
ul.wp-block-latest-posts__list.wp-block-latest-posts > li > :not(.wp-block-latest-posts__featured-image){
	order: 1;
	flex: 1 1 calc(60% - 32px); /* left column */
	min-width: 280px;
	margin: 0;
}

/* Typography */
ul.wp-block-latest-posts__list.wp-block-latest-posts .wp-block-latest-posts__post-date{
	color: #5D646B;
	font-size: 14px;
	font-weight: 400;
	line-height: 19px;
	display: block;
	margin-top: 0;
}

ul.wp-block-latest-posts__list.wp-block-latest-posts .wp-block-latest-posts__post-title{
	font-size: 19px;
	font-family: Roboto, sans-serif;
	font-weight: 700;
	color: #26292C;
	line-height: 1.2;
	display: inline-block;
	text-decoration: none;
	text-underline-offset: 4px;
	transition: color 0.3s ease, background-color 0.3s ease;
}
ul.wp-block-latest-posts__list.wp-block-latest-posts .wp-block-latest-posts__post-title:hover {
	color: #000000;
	text-decoration: underline #FFD100;
	text-underline-offset: 4px;
}

ul.wp-block-latest-posts__list.wp-block-latest-posts .wp-block-latest-posts__post-author{
	font-size: 0.9rem;
	opacity: 0.8;
}

ul.wp-block-latest-posts__list.wp-block-latest-posts .wp-block-latest-posts__post-excerpt{
	margin-top: 4px;
	color: #5D646B;
}

/* No image: full width */
ul.wp-block-latest-posts__list.wp-block-latest-posts > li > .wp-block-latest-posts__featured-image:empty{
	display: none;
}
ul.wp-block-latest-posts__list.wp-block-latest-posts > li:not(:has(.wp-block-latest-posts__featured-image img)) > :not(.wp-block-latest-posts__featured-image){
	flex-basis: 100%;
	min-width: 0;
}

/* Match your <=1010 behavior */
@media (max-width: 1010px){
	ul.wp-block-latest-posts__list.wp-block-latest-posts .wp-block-latest-posts__post-author,
	ul.wp-block-latest-posts__list.wp-block-latest-posts .wp-block-latest-posts__post-excerpt{
		display: none;
	}
}

/* Mobile matches .catamount-post-card */
@media (max-width: 767px){
	ul.wp-block-latest-posts__list.wp-block-latest-posts > li{
		border-radius: 0;
		border: none;
		border-bottom: 1px solid rgba(0, 0, 0, 0.1);
		box-shadow: none;
		margin-bottom: 0;
		padding: 20px;
		gap: 8px 20px;
	}

	ul.wp-block-latest-posts__list.wp-block-latest-posts > li > .wp-block-latest-posts__featured-image{
		flex: 0 0 136px;
		aspect-ratio: 1 / 1;
	}

	ul.wp-block-latest-posts__list.wp-block-latest-posts > li > :not(.wp-block-latest-posts__featured-image){
		flex: 1 1 calc(100% - 156px);
		min-width: 0;
	}

	ul.wp-block-latest-posts__list.wp-block-latest-posts .wp-block-latest-posts__post-title{
		font-size: 18px;
	}
}


/* =========================================================
	Post nav: equal-height tiles with min-height, centered content
 ========================================================= */

.catamount-post-nav{
	display: flex;
	gap: 32px;
	align-items: stretch;           /* both boxes match tallest */
	flex-wrap: wrap;                /* allows stacking if tight */
}

/* Boxes */
.catamount-post-nav .wp-block-post-navigation-link{
	flex: 1 1 320px;                /* equal widths; wraps on small screens */
	min-height: 64px;               /* minimum, not fixed */
	height: auto;

	border: 1px solid #BEC3C8;
	border-radius: 2px;
	padding: 24px 32px;
	box-sizing: border-box;

	display: flex;                  /* vertical centering */
	align-items: center;
	gap: 12px;                      /* space between arrow and link */
}

/* Make the link fill remaining space */
.catamount-post-nav .wp-block-post-navigation-link > a{
	flex: 1 1 auto;
	display: flex;
	align-items: center;            /* center label/title vertically */
	min-height: 64px;               /* keeps single-line nice */
	text-decoration: none;
}

/* Label + title behave nicely when long */
.catamount-post-nav .post-navigation-link__label{
	white-space: nowrap;
}

.catamount-post-nav .post-navigation-link__title{
	overflow-wrap: anywhere;
	line-height: 1.35;
}

/* Arrows don’t collapse and stay aligned */
.catamount-post-nav .wp-block-post-navigation-link__arrow-previous,
.catamount-post-nav .wp-block-post-navigation-link__arrow-next{
	flex: 0 0 auto;
}


/* Force 16:9 featured images everywhere */

.wp-block-post-featured-image {
	aspect-ratio: 16 / 9;
	width: 100%;
	overflow: hidden;
}

/* Ensure the img fills the ratio box */
.wp-block-post-featured-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}


/* TABLE ZEBRA COLOR */
.wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
		background-color: rgba(0, 0, 0, 0.02);
}

/* Hide excerpt's READ MORE */
.wp-block-latest-posts__post-excerpt .wp-block-latest-posts__read-more {
display: none;
}


.header-pipe{
	width: 1px;
	height: 40px;
	background: white;
	margin: 0;
}
.header-pipe.wp-block-separator{
	border: 0;
}
.header-logo { min-width: 130px; }
.header-brand { flex-wrap: nowrap; }

@media (max-width: 767px) {
	.header-brand {
		flex-direction: column;
		align-items: flex-start;
		gap: 15px !important;
	}
	.header-pipe{
		display: none;
	}
}
.wp-block-button__link.has-contrast-color.has-accent-3-background-color.has-text-color.has-background.has-system-sans-serif-font-family.has-custom-font-size.wp-element-button {
color: #FFD100; }

.entry-content > :first-child {
	padding-top: 0 !important;
}
a:where(:not(.wp-element-button)):hover {
  text-decoration-color: #4A8374;
}
