/*
Theme Name: Art Walk Porty
Theme URI: https://artwalkprojects.co.uk/
Description: A custom theme for Art Walk Porty
Author: Steven Park
Author URI: https://stevenpark.co.uk/
Version: 3.0.1
Text Domain: awp
*/

@media screen and (max-width: 1023px) {
	header .wp-block-navigation .wp-block-navigation__container > li > a {
		font-size: var(--wp--preset--font-size--large);		
		font-weight: bold;
	}
}
.site-logo {
	max-width: calc(100% - 100px);
}
.site-logo img {
  width: auto;
  height: clamp(86px, 8vw, 12vh);
  max-width: 300px;
  margin-top: 1rem;
}

figure:has(> a):hover + * > a {
  text-decoration: underline;
}
figure:has(> a):focus + * > a {
  text-decoration: underline dashed;
}

.wp-site-blocks {
  --wp--style--root--padding-top: 0;
  --wp--style--root--padding-bottom: 0;
}

.page-id-70 main, 
.parent-pageid-70 main {
  background-color: var(--wp--preset--color--brand-red-lighter);
}
.page-id-70 main + footer, 
.parent-pageid-70 main + footer {
  margin-block-start: 2px;
}


/* Button styles for festival pages */
.page-id-70 main .wp-element-button,
.page-id-70 main .wp-block-button__link,
.parent-pageid-70 main .wp-element-button,
.parent-pageid-70 main .wp-block-button__link {
  border-color: var(--wp--preset--color--primary-darker);
  color: var(--wp--preset--color--contrast);
}

/* Button text color on hover/focus */
.page-id-70 main .wp-element-button:hover,
.page-id-70 main .wp-block-button__link:hover,
.parent-pageid-70 main .wp-element-button:hover,
.parent-pageid-70 main .wp-block-button__link:hover,
.page-id-70 main .wp-element-button:focus,
.page-id-70 main .wp-block-button__link:focus,
.parent-pageid-70 main .wp-element-button:focus,
.parent-pageid-70 main .wp-block-button__link:focus {
  color: var(--wp--preset--color--brand-red-mid);
  border-color: var(--wp--preset--color--brand-red-mid);
}

/* Separator dot styling for festival pages */
.page-id-70 main .wp-block-separator,
.parent-pageid-70 main .wp-block-separator {
  border: none;
  height: 6px;
  margin: 1rem 0;
  background-image: radial-gradient(circle, var(--wp--preset--color--primary) 30%, transparent 30%);
  background-size: 15px 15px;
  background-repeat: repeat-x;
  background-position: center;
}

/* Larger dots style for festival pages */
.page-id-70 main .wp-block-separator.is-style-dots,
.parent-pageid-70 main .wp-block-separator.is-style-dots {
  border: none !important;
  border-top: none !important;
  height: 8px !important;
  margin: 1rem 0 !important;
  background-image: radial-gradient(circle, var(--wp--preset--color--primary) 30%, transparent 30%) !important;
  background-size: 20px 20px !important;
  background-repeat: repeat-x !important;
  background-position: center !important;
  background-color: transparent !important;
}

/* Hide the default pseudo-element for dots style */
.page-id-70 main .wp-block-separator.is-style-dots::before,
.parent-pageid-70 main .wp-block-separator.is-style-dots::before {
  content: none !important;
  display: none !important;
}


.wp-block-post-content .wp-block-image + .wp-block-image {
  margin-top: 2px;
}
.wp-block-post-content .wp-block-group.has-background + .wp-block-group.has-background {
  margin-top: 2px;
}

.wp-block-post-content ul {
  
}
.wp-block-post-content ul li {
  margin-bottom: 0.5em;
  padding-bottom: 0.5em;
  border-bottom: solid 1px var(--wp--preset--color--primary-light);
}
.wp-block-post-content ul:not(.wp-block-post-template) li {
  list-style: square;
}
.wp-block-post-content ul li::marker {
  /* content: '\27AE'; */
  color: var(--wp--preset--color--brand-green);
  font-size: 2em;
  line-height: 0.5em;
  letter-spacing: 0.5em;
}
.wp-block-post-content .is-layout-flex:not(.wp-block-columns) ul li::marker {
}
.wp-block-separator {
  border-color: var(--wp--preset--color--brand-yellow);
}

.wp-block-post-content em strong,
.wp-block-post-content strong em {
  padding: 0 0.35em;
  /* border-top: solid 2px var(--wp--preset--color--primary); */
  border-bottom: solid 2px var(--wp--preset--color--primary);
  border-right: solid 3px var(--wp--preset--color--primary);
}
.wp-block-post-content em strong {
  background-color: var(--wp--preset--color--secondary-light);
}

.wp-block-post-content strong em {
  background-color: var(--wp--preset--color--secondary-lighter);
  font-style: normal;
}

.blend-logo {
  mix-blend-mode: darken;
}



/* Global */
.wp-block-image {
	position: relative;
}
.wp-block-image .wp-element-caption {
	position: absolute;
	bottom: 1em;
	right: -1em;
  background-color: var(--wp--preset--color--base);
  border: solid 3px var(--wp--preset--color--secondary);
  padding: 1em 2em 1em 1em;
  font-size: var(--wp--preset--font-size--small);
  margin: 0;
  max-width: 85%;
  text-align: right;
}
.page-id-70 main .wp-block-image .wp-element-caption, 
.parent-pageid-70 main .wp-block-image .wp-element-caption {
  border-color: var(--wp--preset--color--primary-dark);
}
.meta-label {
	display: inline-block;
	padding: 0.35em 0.5em;
	line-height: 1.1;
/* 	background-color: var(--wp--preset--color--primary-lightest); */
    background-color: var(--wp--preset--color--base);
    border-radius: 0;
    border-color: var(--wp--preset--color--tone-mid);
    border-width: 1px;
    border-style: solid;
}
a.meta-label {
    background-color: var(--wp--preset--color--base);
    border-color: var(--wp--preset--color--secondary-light);
    border-style: solid;
    color: var(--wp--preset--color--contrast);
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    text-decoration: none;
    border-width: 1px;
}
a.meta-label--small {
	line-height: 1.1;
}
a.meta-label:hover,
a.meta-label:focus {
    border-color: var(--wp--preset--color--secondary-darker);
}
.meta-label-list {
	display: flex;
	list-style: none;
	gap: 0.5em;
	padding: 0;
	flex-wrap: wrap;
}
.meta-label-list li {
	width: auto;
	list-style: none;
}
.meta-label-list a.meta-label {
    border-width: 3px;
    border-color: var(--wp--preset--color--secondary-light);
    padding: 0.5rem 1rem;
    background-color: var(--wp--preset--color--brand-yellow);
    color: var(--wp--preset--color--contrast);
}
.meta-label-list a.meta-label:hover,
.meta-label-list a.meta-label:focus {
    background-color: var(--wp--preset--color--base);
    border-color: var(--wp--preset--color--black);
    color: var(--wp--preset--color--contrast);
}
/*
.meta-label--small {
    font-size: var(--wp--preset--font-size--small);
}
*/
figure.is-provider-soundcloud.wp-block-embed-soundcloud iframe,
figure.is-provider-vimeo.wp-block-embed-vimeo iframe {
	width: 100%;
}
.forminator-ui#forminator-module-5642.forminator-design--default .forminator-error-message {
  font-size: 1rem;
}

/* Forminator Forms */
.forminator-button-submit {
  font-size: inherit !important;
  padding: calc(0.667em + 2px) calc(1.333em + 2px) !important;
}
/* .forminator-button-submit {
  font-size: inherit !important;
  padding: calc(0.667em + 2px) calc(1.333em + 2px) !important;
  background-color: var(--wp--preset--color--black) !important;
}
.forminator-button-submit:hover,
.forminator-button-submit:focus {
  background-color: var(--wp--preset--color--contrast) !important;
  box-shadow: none !important;
  transition: none !important;
}
.forminator-button-submit:active {
  background-color: var(--wp--preset--color--primary) !important;
} */
.forminator-input,
.forminator-textarea {
  border: solid 1px var(--wp--preset--color--tone-mid-light) !important;
}
.forminator-input:hover,
.forminator-textarea:hover,
.forminator-input:focus,
.forminator-textarea:focus {
  border-color: var(--wp--preset--color--primary-dark) !important;
}
.forminator-consent__label > :first-child {
    margin-top: 0;
}

/* Forminator Forms - footer */
footer .forminator-field .forminator-label,
footer .forminator-field .forminator-required {
  color: var(--wp--preset--color--base) !important;
}
footer .forminator-button.forminator-button-submit {
  background-color: var(--wp--preset--color--base) !important;
  color: var(--wp--preset--color--black) !important;
}

/* Forminator Forms - submission form */
.forminator-custom-form-5642 .wp-block-post-content ul li::marker {
    color: var(--wp--preset--color--brand-green);
}
.form-highlight-box {
  border: solid var(--wp--preset--color--brand-red-light);
  padding: 1rem 1.25rem;
  margin: 1rem 0;
  font-weight: 500;
}

/* Keep Prev/Next buttons side-by-side on mobile */
@media (max-width: 782px) {
  .forminator-custom-form-5642 .forminator-pagination-footer {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: space-between !important;
  }
  .forminator-custom-form-5642 .forminator-pagination-footer .forminator-button {
    width: auto !important;
    flex: 0 0 auto !important;
  }
  .forminator-custom-form-5642 .forminator-pagination-footer .forminator-button:not(.forminator-button-back) {
    margin-left: auto !important;
  }
  .forminator-custom-form-5642 .forminator-pagination-footer .forminator-save-draft-link {
    width: 100% !important;
    order: 3 !important;
    text-align: center;
    margin-top: 10px;
  }
}


@media screen and (max-width: 1023px) {
  /* hamburger button */
  .wp-block-navigation__responsive-container-open  {
    display: block !important;
  }

  /* full menu */
  .wp-block-navigation__responsive-container:not(.is-menu-open.has-modal-open) {
    display: none !important;
  }
}


.awp-banner--countdown-button {
  background-color: var(--wp--preset--color--primary-darker);
  color: #fff;

  display: inline-flex;
  justify-self: inherit;
  flex-direction: column;
  justify-content: center;
  padding: 1em;
  border-radius: 50%;
  height: 6em;
  width: 6em;
  line-height: 1.2;
  align-items: center;
  text-align: center;
  position: absolute;
  top: -4em;
  transform: rotate(12deg);
}

@media screen and (min-width: 780px) {

  .awp-banner--countdown-button {
    top: -1em;
  }
  
}
.awp-banner--countdown-button strong {
  display: block;
  font-size: var(--wp--preset--font-size--x-large);
}



figcaption {
  pointer-events: none;
}
.event-item {
	 flex: 0 0 100%;
}
@media (min-width: 600px) {
	.event-item {
		 flex: 0 0 calc(50% - 1em);
	}
}

.wp-block-navigation__responsive-container-close {
  right: 36px;
}

.wp-block-navigation__responsive-container-close svg, .wp-block-navigation__responsive-container-open svg {
  width: 36px;
  height: 36px;
}

.wp-block-navigation .wp-block-navigation-item__content:focus {
  color: inherit !important;
}

/* Rebrand: Heading color variable safety net */
h1, h2, h3, h4, h5, h6 {
  --wp--preset--color--primary-darker: var(--wp--preset--color--black);
  --wp--preset--color--primary-dark: var(--wp--preset--color--contrast);
}

/* Archive listings: black post/heading titles */
.wp-block-query .wp-block-post-title a,
.project-loop h2 a,
.publication-loop h3 a,
.publication-loop__columns h3 a,
.wp-block-post-content .publication-loop h3 a,
.wp-block-post-content .publication-loop__columns h3 a {
  color: var(--wp--preset--color--black);
  text-decoration: none;
}
.wp-block-query .wp-block-post-title a:hover,
.project-loop h2 a:hover,
.publication-loop h3 a:hover,
.publication-loop__columns h3 a:hover {
  color: var(--wp--preset--color--brand-red-mid);
  text-decoration: underline;
}



/* Footer red panel link states */
footer .has-brand-red-mid-background-color a:hover,
footer .has-brand-red-mid-background-color a:focus,
footer .has-brand-red-mid-background-color a:active {
  color: var(--wp--preset--color--base) !important;
}

/* Footer address link */
.footer-address a {
  text-decoration: none;
}
.footer-address a:hover,
.footer-address a:focus {
  text-decoration: underline;
}

/* Social links: keep background, red icon on hover */
footer .has-brand-red-mid-background-color .wp-social-link:hover,
footer .has-brand-red-mid-background-color .wp-social-link:focus,
footer .has-brand-red-mid-background-color .wp-social-link:active {
  color: var(--wp--preset--color--brand-red-mid) !important;
}
footer .has-brand-red-mid-background-color .wp-social-link:hover a,
footer .has-brand-red-mid-background-color .wp-social-link:focus a,
footer .has-brand-red-mid-background-color .wp-social-link:active a,
footer .has-brand-red-mid-background-color .wp-social-link:hover svg,
footer .has-brand-red-mid-background-color .wp-social-link:focus svg,
footer .has-brand-red-mid-background-color .wp-social-link:active svg {
  color: var(--wp--preset--color--brand-red-mid) !important;
  fill: var(--wp--preset--color--brand-red-mid) !important;
}

/* Single project: swap mushroom-brown background for border */
.single-project .has-mushroom-brown-background-color {
  background-color: transparent !important;
  border: 4px solid var(--wp--preset--color--mushroom-brown);
}
