/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
  text-decoration: none !important;
}

.home .inside-article { padding: 0px; }
.home .site-main { margin: 0px; }

.mobile-menu-control-wrapper .menu-toggle { background-color: transparent; }
.mobile-menu-control-wrapper .menu-toggle:hover { background-color: transparent; }
.mobile-menu-control-wrapper .menu-toggle { font-size: 26px; }

.top-bar p { margin: 0; }

@font-face {
    font-family: 'CaslonRounded';
    src: url('fonts/CaslonRounded-Regular.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
}
.editor-styles-wrapper h1 {
            font-family: 'CaslonRounded', sans-serif !important;
        }

.copyright-bar { display: none; }

.inside-site-info { align-items: unset;}

.footer-widgets .widget :last-child, .sidebar .widget :last-child { margin-bottom: revert; }

.p-margin-custom { margin-bottom: 3px; margin-top: 3px; }

/* --- WP CORE IMAGE: zoom class on figure --- */
figure.wp-block-image.zoom {
  overflow: hidden;
  background-color: #000;
  position: relative;
}

figure.wp-block-image.zoom img {
  display: block;
  transition: transform 0.4s ease, opacity 0.4s ease;
}

figure.wp-block-image.zoom:hover img {
  transform: scale(1.05);
  opacity: 0.8;
  cursor: pointer;
}


/* --- GENERATEBLOCKS IMAGE: only when img has .zoom --- */
figure.gb-block-image:has(img.zoom) {
  position: relative;
  overflow: hidden;
}

figure.gb-block-image:has(img.zoom) img.zoom {
  display: block;
  transition: transform 0.4s ease, opacity 0.4s ease;
  position: relative;
  z-index: 0;
}

/* Dark overlay */
figure.gb-block-image:has(img.zoom)::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0);
  transition: background 0.4s ease;
  pointer-events: none;
  z-index: 1;
}

/* Hover state */
figure.gb-block-image:has(img.zoom):hover img.zoom {
  transform: scale(1.05);
  opacity: 0.8;
  cursor: pointer;
}
figure.gb-block-image:has(img.zoom):hover::after {
  background: rgba(0,0,0,0.4);
}


/* Style container */
details {

  border-radius: 6px;
}

details ul {

  padding-left: 60px;

}


/* Style summary row */
details summary {
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  list-style: none;
  border-top: 1px #F22727 solid;
  font-size: 20px;
  padding: 20px 60px 20px 60px;
}

@media (max-width: 930px) {
details summary {
  padding: 20px 20px 20px 20px;
  }
}

details p { padding: 20px 60px 20px 60px; margin-bottom: 0px; }

/* Hide native marker */
details summary::-webkit-details-marker {
  display: none;
}

/* Add Dashicon */
details summary::after {
  font-family: "Dashicons";
  content: "\f132";   /* plus icon */
  font-size: 16px;
  transition: transform 0.3s ease;
}

/* Change to minus when open */
details[open] summary::after {
  content: "\f460";   /* minus icon */
}

/* Reverse every 2nd query loop item only on pages 24180572 & 24180574 */
.page-id-24180572 .gb-query-loop-item:nth-child(even) .gb-grid-wrapper,
.page-id-24180574 .gb-query-loop-item:nth-child(even) .gb-grid-wrapper {
  display: flex;               
  flex-direction: row-reverse; 
}

.mailerlite-form .mailerlite-form-field { margin-bottom: 0; }

.mailerlite-form-inputs input[type="email"] { 
  display: inline-flex;
  padding: 10px 15px;
  margin-right: 20px;
  border-radius: 20px;
  border: 1px solid var(--contrast);
  color: var(--contrast-2);
  text-decoration: none; 
  background: transparent; 
  }

.mailerlite-subscribe-submit {
  display: inline-flex;
  padding: 10px 15px;
  border-radius: 20px;
  border: 0px solid var(--contrast);
  background-color: var(--contrast);
  color: var(--base-3);
  text-decoration: none;
}
.mailerlite-form-inputs {
  display: flex;
  align-items: center;   /* vertical align */
  flex-wrap: wrap;       /* allows wrapping on small screens */
  margin-bottom: 20px;
}

/* MailerLite form: keep email + submit on one row on mobile */
@media (max-width: 930px) {
  .mailerlite-form-inputs {
    display: flex;
    flex-wrap: nowrap;      /* prevent stacking */
    align-items: stretch;
    gap: 12px;              /* replace input margin-right */
  }
  .mailerlite-form-inputs input[type="email"] {
    flex: 1 1 auto;         /* grow to fill */
    min-width: 0;           /* allow shrinking */
    margin-right: 0;
  }
  .mailerlite-subscribe-submit {
    flex: 0 0 auto;         /* keep button width */
    white-space: nowrap;    /* avoid line break */
  }
}


/* LANG SWITCHER EXHIBITS */

.lang { display: none; }
.lang.active { display: block; }

/* container */
.lang-switch {
  display: inline-flex;
  gap: .5rem;
  align-items: center;
  margin: 0;                 /* remove <p> default margin */
  padding: .25rem;
  border-radius: 20px;     /* full pill */
  padding-bottom: 30px;
}

/* buttons */
.lang-switch a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 3.2rem;
  padding: .5rem .9rem;
  border-radius: 20px;
  border: 1px solid #000;
  background: #ffffff;
  color: #111827;
  line-height: 1;
  text-decoration: none;
  transition: background .2s, border-color .2s, color .2s, box-shadow .2s, transform .02s;
}

.lang-switch a:hover {
  background: #f9fafb;
  border-color: #000;
}

.lang-switch a:active { transform: translateY(1px); }

.lang-switch a:focus-visible {
  outline: 2px solid #0ea5e9; /* accessible focus */
  outline-offset: 2px;
}

/* active state (JS will toggle .is-active or aria-pressed) */
.lang-switch a.is-active,
.lang-switch a[aria-pressed="true"] {
  background: #111827;
  color: #ffffff;
  border-color: #111827;
}
/* LANG SWITCHER EXHIBITS END */

.lang-separator {
  display: inline-block;
  padding: 0 6px;
  color: #000; /* optional */
  pointer-events: none; /* make sure it's not clickable */
}

.lang-item.current-lang > a {
  text-decoration: underline;
  color: #505050 !important;
}
.lang-item-14 > a { 
padding-left: 0px !important;
}
.lang-item-11 > a {
padding-right: 0px !important;
}
.main-navigation .main-nav ul li a:hover,
.main-navigation .main-nav ul li[class*="current-menu-"] > a {
    text-decoration: underline;
}

/* Hide Polylang language items + separator in mobile menu */
@media (max-width: 1026px) {
  .main-navigation .menu .lang-item,
  .main-navigation .menu .lang-separator {
    display: none !important;
  }
}

@media (max-width: 1026px) {
  .has-inline-mobile-toggle .mobile-menu-control-wrapper {
flex-direction: row-reverse;
	}
}

@media (max-width: 1026px) {
  #mobile-menu-control-wrapper .mobile-languages-menu {
    display: flex !important; /* override GP rule */
  }
}

.menu-toggle { 
margin-right: 10px; 
background-color: transparent;
}

button.menu-toggle .gp-icon {
  display: inline-block;
  position: relative;
  top: 0px; /* adjust value */
  font-size: 30px;
}
.main-navigation.toggled .main-nav li {
border-bottom: 1px solid #F22727;
}
.main-navigation.toggled .main-nav li:first-child {
  border-top: 1px solid #F22727; 
}

.page-id-24181282 .dynamic-entry-content h2,
.page-id-24181386 .dynamic-entry-content h2 {
  font-size: 20px;
  font-family: Inter, sans-serif;
}