/*
Theme Name: TACA (6307a7c)
Theme URI: https://lyradesigns.com/wordpress
Author: Lyra Designs
Author URI: https://lyradesigns.com
Description: A consistent, flexible and reliable theme for WordPress sites.
Requires at least: 6.7
Tested up to: 6.8
Requires PHP: 7.2
Version: 1.4.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: taca-lux
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, wide-blocks, block-styles, style-variations, accessibility-ready, blog, portfolio, news
*/

/*
 * Smooth scroll for same-page anchor links.
 * scroll-padding-top matches the fixed header offset (4rem / 64px),
 * consistent with the article-topics block sidebar positioning.
 */
html {
	scroll-behavior: smooth;
	scroll-padding-top: 4rem;
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}
}

/*
 * CSS Reset - Remove browser default styles
 */
h1, h2, h3, h4, h5, h6 {
	margin: 0;
	padding: 0;
	font-weight: normal;
	font-size: inherit;
	line-height: 120%;
}

p {
	margin: 0;
	padding: 0;
	font-weight: normal;
	font-size: inherit;
}

/*
 * Link styles — underline behavior controlled via theme.json custom properties
 * (settings.custom.lux.underline). Override per-site in child theme or Additional CSS.
 */
a:where(:not(.wp-element-button)):where(:not(.lux-button)) {
	text-decoration: var(--wp--custom--lux--underline--body-links);
	text-decoration-thickness: var(--wp--custom--lux--underline--body-links-thickness);
	text-underline-offset: var(--wp--custom--lux--underline--body-links-offset);
}
a:where(:not(.wp-element-button)):where(:not(.lux-button)):hover {
	text-decoration: var(--wp--custom--lux--underline--body-links-hover);
}

/* Link color — palette is the single source of truth for colors.
   Moved from theme.json styles.elements.link to keep element definitions typography-only. */
a:where(:not(.wp-element-button)) {
	color: var(--wp--preset--color--link);
	font-family: inherit;
}

/* Button element fallback for .wp-element-button used outside core/button blocks */
.wp-element-button {
	background-color: var(--lux-button-fill);
	color: var(--lux-button-text);
}

h1 > a:where(:not(.wp-element-button)), 
h2 > a:where(:not(.wp-element-button)), 
h3 > a:where(:not(.wp-element-button)), 
h4 > a:where(:not(.wp-element-button)), 
h5 > a:where(:not(.wp-element-button)), 
h6 > a:where(:not(.wp-element-button)) {
	color: inherit;
	font-family: inherit;
}

/* Focus styles — only show on keyboard navigation, not mouse clicks. */
:where(.wp-site-blocks *:focus-visible) {
	outline-width: 2px;
	outline-style: solid;
}

/* Increase the bottom margin on submenus, so that the outline is visible. */
.wp-block-navigation .wp-block-navigation-submenu .wp-block-navigation-item:not(:last-child) {
	margin-bottom: 3px;
}

/* Increase the outline offset on the parent menu items, so that the outline does not touch the text. */
.wp-block-navigation .wp-block-navigation-item .wp-block-navigation-item__content {
	outline-offset: 4px;
}

/* Remove outline offset from the submenus, otherwise the outline is visible outside the submenu container. */
.wp-block-navigation .wp-block-navigation-item ul.wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	outline-offset: 0;
}

/*
 * Progressive enhancement to reduce widows and orphans
 * https://github.com/WordPress/gutenberg/issues/55190
 */
h1, h2, h3, h4, h5, h6, blockquote, caption, figcaption, p {
	text-wrap: pretty;
}

/*
 * Change the position of the more block on the front, by making it a block level element.
 * https://github.com/WordPress/gutenberg/issues/65934
*/
.more-link {
	display: block;
}

:root {
	--sidebar-width: 25rem;
	--narrow-content-width: 36rem;
	--normal-content-width: 42rem;
	--wide-content-width: 46rem;
	--very-wide-content-width: 60rem;
	--very-narrow-page-width: 70rem;
	--narrow-page-width: 80rem;
	--normal-page-width: 90rem;
	--wide-page-width: 105rem;
	--very-wide-page-width: 150rem;
	--full-page-width: 100%;
	--side-padding: 1rem;
	--section-height-small: 15rem;
	--section-height-medium: 25rem;
	--section-height-large: 35rem;

	--color-primary-button-background: var(--wp--preset--color--link);
	--color-primary-button-text: var(--wp--preset--color--high-contrast);

	--color-background: var(--wp--preset--color--base-1);
	--color-text: var(--wp--preset--color--high-contrast);
	--color-link: var(--wp--preset--color--link);
	--color-button-background: var(--wp--preset--color--button-fill);
	--color-button-text: var(--wp--preset--color--button-text);
	--color-high-contrast: var(--wp--preset--color--high-contrast);
	--color-medium-contrast: var(--wp--preset--color--medium-contrast);
	--color-low-contrast: var(--wp--preset--color--low-contrast);
	--fill-1: var(--wp--preset--color--base-1);
	--fill-2: var(--wp--preset--color--base-2);
	--fill-3: var(--wp--preset--color--base-3);
}

@media (min-width: 24rem) {
	:root {
		--side-padding: 1.25rem;
	}
}

@media (min-width: 48rem) {
	:root {
		--side-padding: 2.25rem;
	}
}

@media (min-width: 80rem) {
	:root {
		--side-padding: 4rem;
	}
}

/* Color Scheme Classes - legacy bridges for backward compatibility */
.scheme-light {
	--color-background: var(--wp--preset--color--base-1);
	--color-text: var(--wp--preset--color--high-contrast);
	--color-link: var(--wp--preset--color--link);
	--color-button-background: var(--wp--preset--color--button-fill);
	--color-button-text: var(--wp--preset--color--button-text);
	--color-high-contrast: var(--wp--preset--color--high-contrast);
	--color-medium-contrast: var(--wp--preset--color--medium-contrast);
	--color-low-contrast: var(--wp--preset--color--low-contrast);
	--fill-1: var(--wp--preset--color--base-1);
	--fill-2: var(--wp--preset--color--base-2);
	--fill-3: var(--wp--preset--color--base-3);
}

.scheme-dark {
	--color-background: var(--wp--preset--color--dark-base-1);
	--color-text: var(--wp--preset--color--dark-high-contrast);
	--color-link: var(--wp--preset--color--link-dark);
	--color-button-background: var(--wp--preset--color--button-dark-fill);
	--color-button-text: var(--wp--preset--color--button-dark-text);
	--color-high-contrast: var(--wp--preset--color--dark-high-contrast);
	--color-medium-contrast: var(--wp--preset--color--dark-medium-contrast);
	--color-low-contrast: var(--wp--preset--color--dark-low-contrast);
	--fill-1: var(--wp--preset--color--dark-base-1);
	--fill-2: var(--wp--preset--color--dark-base-2);
	--fill-3: var(--wp--preset--color--dark-base-3);

	/* Override global link color for dark scheme.
	   WP global styles only supports one link color, so dark
	   scheme links must be set explicitly here. */
	a:where(:not(.wp-element-button)) {
		color: var(--color-link);
	}
}

/* Decorative borders (bubbles) to show at one end of images */
.bubbles--right{
	position: relative;
}
.bubbles--right::after {
	content: "";
	position: absolute;
	bottom: 0;
	right: 0;
	width: 100px;
	height: 100px;
	background-image: url(assets/images/decorative-border.svg);
	background-size: cover;
	pointer-events: none;
}

header {
	position: relative;
	z-index: 10;
}

/* Typography Styles */
.h1, .h2, .h3, .h4, .h5, .h6, .h7 {
  font-weight: 400;
  line-height: 1.125;
  letter-spacing: -0.1px;
  word-wrap: break-word;
}
h1, .h1 {
	font-size: var(--wp--preset--font-size--h-1);
}
h2, .h2 {
	font-size: var(--wp--preset--font-size--h-2);
}
h3, .h3 {
	font-size: var(--wp--preset--font-size--h-3);
}
h4, .h4 {
	font-size: var(--wp--preset--font-size--h-4);
}
h5, .h5 {
	font-size: var(--wp--preset--font-size--h-5);
	letter-spacing: 0.5px;
}
h6, .h6 {
	font-size: var(--wp--preset--font-size--h-6);
	font-weight: 400;
	letter-spacing: 0%;
}
h7, .h7 {
	font-size: var(--wp--preset--font-size--h-7);
	font-weight: 400;
	letter-spacing: 0%;
}

/* Override third-party heading style pollution (EveryAction) */
body h1, body h2, body h3, body h4, body h5, body h6 {
	font-family: var(--wp--custom--heading--font-family);
	color: inherit;
}

/* Fix RangeControl + input overflow in the editor sidebar.
 * Flex children inside the inspector panel have no min-width: 0,
 * causing the slider wrapper and InputBase to exceed their column width. */
.components-range-control__wrapper,
.components-input-base {
	min-width: 0;
}

/* Restore system font and size for WordPress editor UI headings */
.editor-sidebar h1,
.editor-sidebar h2,
.editor-sidebar h3,
.editor-sidebar h4,
.editor-sidebar h5,
.editor-sidebar h6,
.interface-complementary-area h1,
.interface-complementary-area h2,
.interface-complementary-area h3,
.interface-complementary-area h4,
.interface-complementary-area h5,
.interface-complementary-area h6 {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
	font-size: revert;
	letter-spacing: revert;
	line-height: revert;
}

.body-1 {
	font-size: var(--wp--preset--font-size--body-1);
	line-height: 1.4em;
}
.body-2 {
	font-size: var(--wp--preset--font-size--body-2);
	line-height: 1.25em;
}
.body-3 {
	font-size: var(--wp--preset--font-size--body-3);
	line-height: 1em;
}


.position-static {
	position: static !important;
}

.no-border {
	border: none !important;
}
.border-top {
	border-top: 1px solid var(--wp--preset--color--low-contrast, #777) !important;
}
.border-bottom {
	border-bottom: 1px solid var(--wp--preset--color--low-contrast, #777) !important;
}

.rounded, .rounded img {
	border-radius: 100%;
}

/* -----------------------------------------------------------------------
 * Native WordPress block typography — restore browser-default spacing
 * so that post content reads naturally without theme resets stripping it.
 * Scoped to post-content so layout/nav blocks are unaffected.
 * --------------------------------------------------------------------- */
.wp-block-post-content .wp-block-heading {
	margin-top: 1.5em;
	margin-bottom: 0.5em;
}

.wp-block-post-content .wp-block-heading:first-child {
	margin-top: 0;
}

.wp-block-post-content p {
	margin-top: 0;
	margin-bottom: 1em;
}

/* Slightly larger body text on single articles */
.single-post .wp-block-post-content p,
.single-post .wp-block-post-content .wp-block-list {
	font-size: var(--wp--custom--article--font-size, 1.0625rem);
	line-height: var(--wp--custom--article--line-height, 1.7);
}

.wp-block-post-content .wp-block-list {
	margin-top: 0;
	margin-bottom: 1em;
	padding-left: 1.5em;
}

.wp-block-post-content .wp-block-list li {
	margin-bottom: 0.25em;
}

/* Nested lists */
.wp-block-post-content .wp-block-list .wp-block-list {
	margin-top: 0.25em;
	margin-bottom: 0;
}


/* Fix full width styling on legacy classic editor paragraphs, in editor */

.is-root-container.is-desktop-preview.wp-block-post-content .wp-block-freeform p:not(.wp-block) {
	max-width: 700px;
	margin: 0 auto;
}

/* Fix Inputs growing and spilling out next to range sliders */
.components-input-control__backdrop {
    width: auto;
}

/* Hide utility classes */

@media(min-width:1025px) {
  .hidden-desktop {
    display: none !important
  }
}

@media(min-width:569px)and (max-width:1024px) {
  .hidden-tablet {
    display: none !important
  }
}

@media(max-width:568px) {
  .hidden-mobile {
    display: none !important
  }
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

/* Social Links */

.wp-block-social-links {
	gap: 8px;
}

.no-wrap {
	white-space: nowrap;
}