/*
Theme Name: Open Studios
Theme URI:
Author: Eye Division
Author URI:
Description: Open Studios theme is designed for use by Eye Division's Open Studios sites. It's a child theme of the default WordPress Twenty Twenty-Five block theme.
Requires at least: 6.7
Tested up to: 6.7
Requires PHP: 5.7
Version: 1.0.5.6
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Template: twentytwentyfive
Text Domain: open-studios
Tags:
*/


/* Other Formidable CSS */
.os-gallery h3,
.gallery-page .image-gallery a {
	margin: 10px;
}
.os-gallery img {
	max-width: 100%;

}
.os-gallery p {
	margin: 0.2rem 0;
	line-height: 1;
}
.os-gallery h3 {
	font-size: inherit;
	font-weight: bold;
}
.os-gallery h3 a {
	text-decoration: none;
}
.os-gallery .media {
	font-size: smaller;
}
.gallery-page .social {
	padding: 10px;
}
.gallery-page .facebook {
	color: rgb(59, 89, 152);
}
.gallery-page .twitter {
	color: rgb(15, 20, 25);
}
.gallery-page .etsy {
	color: #F56400;
}
.gallery-page .instagram {
	color: rgb(188, 42, 141);
}

.frm_form_field.padding-top-1 {
	padding-top: 1.3rem;
}

.private {
	background-color: #f8ecec;
	padding: 20px;
}

/*  Gallery with Studio link */
@media all and (min-width: 800px) {
	.gallery-page {
		display: flex;
		gap: 1rem;
	}
	.main-gallery {
		flex: 3;
	}
	.studio {
		flex: 1;
	}
}
.gallery-page .site-number {
	margin-bottom: 1rem !important;
}
.gallery-page img.entry-image {
	max-width: 100%;
	height: auto;
}

/* Drag & Drop CSS */

.ListContainer h3 {
	//font-size: 20px !important;
	line-height: 28px !important;
}

.divider-block {
	display: block;
	width: 100%;
	border-top: 2px dashed #eaeaea;
	margin-top: 50px;
	padding-top: 20px;
}

/* Entries */
.entrycard {
	text-align: center;
}
.entrycard a {
	display: block;
	position: relative;
}
.entrycard a .entrycard-info {
	display: none;
	transition: all 0.3s ease;
}
.entrycard a:hover .entrycard-info {
	display: block;
	text-align: center;
	background-color: rgba(0, 0, 0, 0.7);
	color: #fff;
	position: absolute;
	bottom: 0;
	margin: 0 auto;
	margin-bottom: 0px;
	width: 100%;
	padding: 0.5em 0;
	margin-bottom: 0.5em;
}
.entrycard-info h3 {
	color: white;
}
.entrycard .media {
	font-style: italic;
	font-size: 0.9rem;
}

.entry-title a {
	text-decoration: none;
	font-weight: 600;
	color: inherit;
}
.entry-title a:hover {
	color: var(--wp--preset--color--accent-3);
}
.entry-2025:hover {
	box-shadow: 4px 4px 8px rgba(0, 0, 0, 0.2);
}
.site-number:not(.is-empty) {
  margin: 0 auto;
  text-align: center;
  color: white;
  background-color: rgb(95, 117, 129);
  width: 40px;
  height: 40px;
  line-height: 40px;
  border-radius: 50%;
  font-weight: normal;
  font-size: 1.2rem;
}

.site-number-small {
	width: 30px;
	height: 30px;
	font-size: 1rem;
	line-height: 30px;
}
.padding-top-1 {
	padding-top: 1.3rem;
}

/* Formidable preview image in Entry, Membership, Profile. Workshop, Event */
.frm_pro_form .frm_dropzone .dz-preview .dz-image img {
    max-width: 100%;
    max-height: 100%;
}

/* Profiles search form */
#form_profilesearchform .frm_fields_container {
	align-items: center;
}
#frm_field_109_container {
	justify-self: center;
}
@media screen and (min-width: 600px) {
	#frm_field_109_container .frm_submit {
		padding-top: 30px;
	}
}

/* Formidable maps */
.frm-geolocation-map {
	height: 500px !important;
	width: 500px !important;
}
#frmgeo-map-10794 {
	height: 700px !important;
}

/* Drag & Drop CSS for Formidable Profiles editing */

.ListContainer h3 {
	//font-size: 20px !important;
	line-height: 28px !important;
}

.divider-block {
	display: block;
	width: 100%;
	border-top: 2px dashed #eaeaea;
	margin-top: 50px;
	padding-top: 20px;
}

.ListContainer {
	overflow: hidden;
}

.ListContainer>div {
	white-space: nowrap;
	overflow-x: auto;
	overflow-y: hidden;
}

.frm_repeat_sec,
.frm_repeat_inline {
	background-color: #fff;
	border: 1px solid #eaeaea !important;
	padding: 20px !important;
	margin: -1px 0 auto !important;
}

.frm_repeat_grid {
	background-color: #fff;
	border: 1px solid #eaeaea !important;
	padding: 20px 20px 0 20px !important;
	margin: -1px 0 auto !important;
}

#sortable {
	margin: 0 !important;
}

.ui-sortable>div {
	cursor: move;
	cursor: grab;
	cursor: -moz-grab;
	cursor: -webkit-grab;
}

.ui-sortable>div:before {
	content: "\f047";
	display: block;
	position: absolute;
	top: 5px;
	right: 10px;
	font-size: 22px;
	color: #999;
	font-family: FontAwesome;
}

.ListContainer .form-field {
	animation-name: none !important;
}

.ui-sortable-helper {
	box-shadow: 0 10px 50px rgba(0, 0, 0, 0.08), 0 13px 45px rgba(0, 0, 0, 0.08);
}

.frm_repeat_sec:first-of-type,
.frm_repeat_inline:first-of-type,
.frm_repeat_grid:first-of-type {
	border-top-right-radius: 4px;
	border-top-left-radius: 4px;
}

.frm_repeat_sec:last-child,
.frm_repeat_inline:last-child,
.frm_repeat_grid:last-child {
	border-bottom-right-radius: 4px;
	border-bottom-left-radius: 4px;
}

.ListContainer>div {
	padding-top: 1px;
}

/* Entry Form - Group Member - show Venue dynamic date field */
.venue-dates {
  background: #efefef;
  padding: 10px;
  border: 1px solid gray;
  border-radius: 10px;
}
.venue-dates p.frm_show_it {
  font-weight: bold !important;
}
.venue-dates p.frm_show_it::before {
  display: block;
  content: "June";
  float: left;
  margin-right: 10px;
}

/* Formidable Workshops */
.workshops {
	display: block;
}
.workshop {
	display: grid;
    gap: 20px;
    margin-bottom: 20px;
}
.workshop p {
    margin: 0;
}
.workshop__details {
    padding: 10px;
    text-align: center;
}
.workshop__title-with-link {
    font-weight: 600;
    transition: all .3s ease;
    text-decoration: none;
    outline: none;
}
.workshop__title-with-link:hover {
    color: black;
}
.workshop__featured-image-with-link {
    display: block;
    position: relative;
    width: 100%;
    padding-top: 62.5%;
    outline: none;
}
.workshop__featured-image-with-link-image {
    border: 1px solid #f4f4f4;
    border-radius: 0;
    bottom: 0;
    height: 100%;
    width: 100%;
    max-width: 100%;
    left: 0;
    object-fit: cover;
    object-position: center;
    position: absolute;
    right: 0;
    top: 0;
}
.workshop .meta {
    font-size: smaller;
}

@media screen and (min-width: 768px) {
    .workshop {
        grid-template-columns: 1fr 3fr;
		grid-template-areas: "image main";
        /*align-items: center;*/
    }
	.workshop__featured-image-with-link {
		grid-area: image;
	}

    .workshop__details {
        text-align: left;
		grid-area: main;
    }

}


/* Custom Post Types */
.acf-map {
    width: 100%;
    height: 400px;
    border: #ccc solid 1px;
    margin: 20px 0;
}



/* Dates table in entry form */

table.dates {
	min-width: 300px;
}
table.dates th {
	padding: 10px !important;
	text-align: center;
}
table.dates td  {
	padding: 10px !important;
	border-bottom: 1px solid #ddd;
    border-left: 1px solid #ddd;
}
table.dates th {
	background-color: #dad8d8;
}
table.dates th.weekend {
	background-color: rgb(95, 95, 95);
	color: white;
}
table.dates td.open {
	background-color: #9D3306;
	border-radius: 100%;
	color: #fff;
}
table.dates td.closed {
	background-color: #eee;
	font-size: 1.1rem;
    text-align: center;
}
table.dates .frm_checkbox input[type="checkbox"] {
	width: 20px !important;
	height: 20px !important;
}
table.dates label {
	font-size: 1rem !important;
}

/* Responsive Table Styles */
@media screen and (max-width: 780px) {
    table.dates {
		min-width: auto;
        display: block;
        width: 100%;
    }

    table.dates caption {
        font-size: 1.3em;
    }

    table.dates thead {
        border: none;
        clip: rect(0 0 0 0);
        height: 1px;
        margin: -1px;
        overflow: hidden;
        padding: 0;
        position: absolute;
        width: 1px;
    }

    table.dates tr {
        border-bottom: 3px solid 3px solid #a6442b;
        display: block;
        margin-bottom: .625em;
		min-width: 200px;
    }


    table.dates td {
        border-bottom: 1px solid #ddd;
        display: block;
        font-size: .8em;
        padding: .625em;
    }

    table.dates td::before {
        content: attr(data-label);

        font-weight: bold;
        text-transform: uppercase;
    }
	table.dates td.closed {
		font-size: 1rem;
		text-align: left;
	}
	table.dates td.closed::before {
		padding-right: 10px;
	}
    table.dates td:last-child {
        border-bottom: 0;
    }
}
/* Dates grid on Post */
.dates-table {
	display: grid;
	grid-template-columns: repeat(7,50px);
	grid-auto-rows: 50px;
	grid-row-gap: 5px;
	grid-column-gap: 10px;
	margin: 2rem 0;
	max-width: 600px;

}
@media only screen and (max-width: 640px) {
	.dates-table {
		display: grid;
		grid-template-columns: repeat(7,40px);
		grid-column-gap: 5px;
	}
}
.dates-table span {
	text-align: center;
	padding: 0.5em 0;
}
.dates-table .header {
	background-color: #CE5D43;
	color: white;
}
.dates-table .weekend {
	background-color: #90412e;
}
.dates-table .closed {
	color: #6f6f6f;
}
.dates-table .open {
	background-color: #9D3306;
	color: #fff;
}

.days {
	color: lightgray;
}
.day_1,
.day_2,
.day_3,
.day_4,
.day_5,
.day_6 {
	color: white;
	font-weight: bold;
}
.day_1 {
	background:
  no-repeat url("/wp-content/themes/open-studios/assets/images/day_1.png");
	background-size: auto;
	background-size: contain;
}
.day_2 {
	background:
  no-repeat url("/wp-content/themes/open-studios/assets/images/day_2.png");
	background-size: auto;
	background-size: contain;
}
.day_3 {
    background: no-repeat url("/wp-content/themes/open-studios/assets/images/day_3.png");
	background-size: contain;
}
.day_4 {
    background: no-repeat url("/wp-content/themes/open-studios/assets/images/day_4.png");
	background-size: contain;
}
.day_5 {
    background: no-repeat url("/wp-content/themes/open-studios/assets/images/day_5.png");
	background-size: contain;
}
.day_6 {
    background: no-repeat url("/wp-content/themes/open-studios/assets/images/day_6.png");
	background-size: contain;
}

.dates-table-key {
	display: grid;
	grid-template-columns: 50px auto;
	grid-column-gap:
  10px;
	max-width: 100%;
	font-size: smaller;
}
.dates-table-key span {
	text-align: left;
}

.sites-nearby img {
	max-width: 100%;
	height: auto;
}

/* hide Facet elements */
body.single-entry-2025 .facetwp-map-filtering,
body.single-entry-2025 .facetwp-type-proximity,
body.single-individual-entry-26 .facetwp-map-filtering,
body.single-individual-entry-26 .facetwp-type-proximity,
body.single-group-member-26 .facetwp-map-filtering,
body.single-group-member-26 .facetwp-type-proximity {
	display: none;
}

body.single-entry-2025 h4 {
	margin-bottom: 0;
}
body.single-entry-2025 img.entry-image,
body.single-individual-entry-26 img.entry-image,
body.single-group-member-26 img.entry-image {
	max-width: 100%;
	height: auto;
}
.single-entry-2025 .venue-profiles,
.single-individual-entry-26 .venue-profiles,
.single-group-member-26 .venue-profiles {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
	text-align: center;
}
.single-entry-2025 .venue-profiles img,
.single-individual-entry-26 .venue-profiles img,
.single-group-member-26 .venue-profiles img {
	max-width: 100%;
	height: auto;
}
.single-individual-entry-26 .venue-profiles a,
.single-group-member-26 .venue-profiles a {
	color: var(--wp--preset--color--accent-4);
	text-decoration: none;
}
@media only screen and (min-width: 790px) {
	.single-individual-entry-26 .venue-profiles,
	.single-group-member-26 .venue-profiles {
		grid-template-columns: 1fr 1fr 1fr 1fr;
	}
}

.entry-page .site-number {
	display: inline-block;
}
.entry-artform {
	font-size: smaller;
	font-style: italic;
}

@media only screen and (min-width: 640px) {
	.flex-page {
		display: flex;
		gap: 20px;
	}

	.flex-page .studio {
		min-width: 25%;
	}

}

.flex-page .studio img {
	max-width: 100%;
	height: auto;
}
.flex-page .studio .entry-2025 {
	padding: 10px;
}
/* Facet styling */
.facetwp-map-filtering {
	display: none;
}
@media only screen and (max-width: 640px) {

	.facet-filters {
		display: grid;
		grid-template-columns: 1fr;
		grid-gap-column: 10px;
		grid-gap-row: 20px;
	}
	.facet-filters > * {
		max-width: 200px !important;
	}
}
@media only screen and (min-width: 641px) and (max-width: 1061px) {
	.facet-filters {
		grid-template-columns: 1fr 1fr;
	}
}

.fwpl-result > .fwpl-row.is-active {
	box-shadow: 4px 4px 8px rgba(164, 2, 2, 0.2);
}

.facet-filters input,
.facet-filters select,
.facet-filters textarea {
	background-color: #fff;
	border: 1px solid black;
	box-shadow: 0 0 5px #f8f8f8 inset;
	font-size: inherit;
	padding: 16px;
}
.facet-filters select {
	/* for Mac and iOS */
	-webkit-appearance: none;
	line-height: 22px;
	-webkit-border-radius: 0;
    border-radius: 0;
}
@media only screen and (min-width: 600px) {
	.facet-filters input[type="email"],
	.facet-filters input[type="text"]  {
		min-width: 300px;
	}
}
.facet-filters input[type="checkbox"],
.facet-filters input[type="image"],
.facet-filters input[type="radio"] {
	width: auto;
}
.facet-filters input[type="radio"] {
	float: left;
	margin-right: 1em;
}
.facet-filters input:focus,
.facet-filters textarea:focus {
	border: 1px solid #999;
	outline: none;
}

.facet-filters button,
.facet-filters input[type="button"],
.facet-filters input[type="reset"],
.facet-filters input[type="submit"] {
	background-color: rgba(35,26,81,1);
	box-shadow: none;
	border: none;
	color: #fff;
	cursor: pointer;
	padding: 16px 24px;
	width: auto;
	font-size: large;
}
.facet-filters button:hover {
	background-color: rgba(35,26,81,0.8);
}


/* hide Facet on Individual and Group Member Entry 26 page */
body.single-individual-entry-26 .facetwp-template,
body.single-individual-entry-26 .facetwp-map-filtering,
body.single-group-member-26 .facetwp-template,
body.single-group-member-26 .facetwp-map-filtering {
	display: none;
}

/* Resize site number search box */
@media only screen and (min-width: 600px) {
	.facet-filters .facetwp-facet-site_number input[type="text"]  {
		max-width: 120px;
		min-width: 120px;
	}
}


.no-link a:link,
.no-link a:visited {
	text-decoration: none;
}

/* hide studio space Facet template */
.studiospace-template {
	display: none !important;
}

/* WooCommerce Customizations */
/* WooCommerce CSS */
.woocommerce-order-received .order-again {
	display: none;
}
/* hide product variations on single product page */
.woocommerce div.product form.cart .variations {
	display: none;
}