/*
 Theme Name:   Photography Networks Scotland
 Author:       Street Level Photoworks
 Template:     my-listing
 Version:      1.1
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Tags:         one-column, two-columns, three-columns, left-sidebar, right-sidebar, grid-layout, custom-menu, custom-logo, featured-images, footer-widgets, full-width-template, sticky-post, theme-options, threaded-comments, translation-ready
 Text Domain:  my-listing-child
*/


/* =============================================================================
   FONTS
   Google Fonts import. Montserrat used for body/UI, Poppins for headings.
   Note: these may not load in local environments due to network restrictions.
============================================================================= */

@import url('https://fonts.googleapis.com/css?family=Montserrat:300,300i,500,500i,700,700i');


/* =============================================================================
   GLOBAL TYPOGRAPHY
   Base font styles for body text and common UI elements.
   Note: Elementor's global styles may override some of these via 'inherit' —
   this is expected behaviour in MyListing 2.16 and works correctly on the
   live site where Elementor global fonts are configured.
============================================================================= */

body, p, .elementor-widget-theme-post-content p {
	font-family: 'Montserrat', sans-serif;
	font-weight: 500;
	color: black;
	font-size: 13px;
}

.elementor-widget-text-editor {
	font-family: 'Montserrat', sans-serif;
}

.elementor-widget-nav-menu .elementor-nav-menu--main {
	font-family: 'Montserrat', sans-serif;
	font-weight: 500 !important;
	font-size: 13px !important;
}

/* Headings and primary text use Poppins */
.case27-primary-text,
.h1, .h2, .h3, .h4, .h5, .h6,
h1, h2, h3, h4, h5, h6,
.elementor-widget-button a.elementor-button,
.elementor-widget-button .elementor-button {
	font-family: 'Poppins', sans-serif !important;
	font-weight: 400 !important;
}

.case27-secondary-text {
	font-family: 'Poppins', sans-serif !important;
	font-weight: 500 !important;
	margin-bottom: 5px !important;
}

.title-style-1 h5 {
	font-family: 'Montserrat', sans-serif !important;
	font-weight: 700 !important;
	font-size: 12px !important;
}

.elementor-widget-post-info .elementor-icon-list-item {
	font-family: "Poppins", Sans-serif;
	font-weight: 400 !important;
	font-size: 14px !important;
}

.details-list li, .extra-details li div {
	color: black;
	font-size: 12px;
}

.listing-details-3 .details-list li {
	font-size: 11px;
}

.extra-details .item-attr {
	font-weight: 700;
}

.buttons {
	font-size: 12px;
}

.elementor-button-icon .material-icons {
	font-size: 18px !important;
}

.home-artitname {
	font-size: 10px !important;
}

/* Links within post content */
.elementor-widget-theme-post-content a {
	color: #000 !important;
	text-decoration: underline;
}

.elementor-widget-theme-post-content a:hover {
	color: #04cdd1 !important;
}

p a {
	color: #7b7b7b;
}

/* List items inside listing description */
.wp-editor-content .pf-body ol li,
.wp-editor-content .pf-body ul li {
	font-family: 'Montserrat', sans-serif;
	font-weight: 500;
	color: black;
	font-size: 12px;
	padding-left: 10px;
	margin-left: 20px;
	list-style-position: outside;
}

.text-season {
	line-height: 1.8;
}


/* =============================================================================
   NAVIGATION
   Header nav styles and mobile/desktop visibility toggles.
============================================================================= */

/* Force Montserrat on nav menu items */
.elementor-widget-nav-menu .elementor-nav-menu .elementor-item {
    font-family: 'Montserrat', sans-serif !important;
}

.i-nav ul li {
	font-size: 14px !important;
	color: black !important;
}

.i-nav > ul > li {
	font-weight: 600 !important;
}

.i-nav > ul > li > a:hover {
	color: #04cdd1 !important;
}

/* Fix add listing button visibility in header */
@media (min-width: 1025px) {
	.elementor:not(.elementor-edit-area-active) .elementor-hidden-desktop {
		display: none !important;
	}
}

@media (max-width: 1024px) {
	.elementor:not(.elementor-edit-area-active) .elementor-hidden-tablet {
		display: none !important;
	}
}

/* Mobile nav styles */
@media only screen and (max-width: 900px) {
	.main nav {
		background-color: #CCC !important;
	}

	.i-nav > ul > li > a {
		color: black !important;
	}

	.header > .header-container > .header-top .logo a img {
		width: 60% !important;
		height: 60% !important;
	}

	.header-button > a {
		color: #04cdd1 !important;
	}

	.header-button > a:hover {
		color: #fff !important;
	}
}

/* Hide sign-in/account areas — site is view-only for public */
.user-area.signin-area {
	display: none !important;
}

.user-area {
	display: none !important;
}

.mob-sign-in {
	display: none !important;
}

.footer-bottom .social-links ul {
	display: none !important;
}


/* =============================================================================
   BUTTONS
   Global button colour overrides using the site's teal accent (#04cdd1).
============================================================================= */

@media only screen and (min-width: 901px) {
	.button-1 {
		color: #000 !important;
		background: #04cdd1 !important;
	}

	.button-1:visited {
		color: #000 !important;
	}

	.button-1:hover {
		color: #000 !important;
	}
}

.button-1:visited:hover {
	background: white !important;
}

/* Featured/priority badge colour — use site teal instead of theme default */
.level-featured .ad-badge, .lf-head .ad-badge {
	border-color: #04cdd1 !important;
	color: #04cdd1 !important;
}

.cover-buttons .button-plain {
	letter-spacing: 0.5px !important;
	font-size: 14px !important;
	text-decoration: underline;
}

.cover-buttons > ul > li {
	padding-left: 15px !important;
}


/* =============================================================================
   LISTING CARDS (All Listings / Feed Pages)
   Styles for cards shown on exhibition and event archive/feed pages.
============================================================================= */

/* Hide listing avatar thumbnail on cards */
.lf-avatar {
	display: none !important;
}

.has-logo .lf-item-default .lf-item-info {
	padding-left: 0px;
}

.no-info-fields .lf-item-default .lf-item-info {
	min-height: 0;
}

/* Uppercase date/year buttons on listing cards (e.g. APR 19 / JUN 13 / 2026) */
.lf-head-btn {
	text-transform: uppercase;
}

.listing-details .category-name {
	top: 8px;
	font-size: 12px;
	left: 10px;
	font-weight: 600;
}

.listing-feed-2 > .container > .row {
	margin-bottom: -15px !important;
}

.sbf-title a {
	font-weight: 600 !important;
}

/* Section padding for listing feed sections */
.i-section {
	padding-top: 40px;
	padding-bottom: 40px;
}


/* =============================================================================
   SINGLE LISTING PAGE — HEADER / COVER
   The white header area containing title, dates, and venue info.
   Note: .profile-header (tab bar) is intentionally hidden — tabs not used.
   Cover height set to 150px to match live site appearance after 2.16 update.
============================================================================= */

.profile-body {
	background: #e3e3e3;
}

.profile-cover.profile-cover-no-img {
	background: #fff;
}

/* Fixed cover height on desktop */
@media only screen and (min-width: 992px) {
	.profile-cover.profile-cover-no-img {
		height: 150px !important;
	}
}

/* Constrain listing info width on mid-range screens */
@media only screen and (min-width: 1200px) and (max-width: 1450px) {
	.listing-main-info {
		width: 1170px;
	}
}

.listing-main-info h1 {
	color: #000;
}

/* Hide the tab bar — tabs are not used on this site */
.profile-header {
	display: none !important;
	border-bottom: 0px !important;
}

.profile-cover-content {
	text-align: left !important;
}

/* Hide listing avatar/logo on single page */
.profile-avatar {
	display: none !important;
}

.profile-name {
	margin-left: 0px !important;
	padding-left: 0px;
}

.profile-name h1 {
	width: 100%;
}

.profile-name h2 {
	color: black !important;
	font-size: 17px !important;
	top: 0px;
}

.profile-name > .case27-primary-text {
	font-weight: 500 !important;
	font-size: 20px !important;
	margin-top: 20px !important;
}

.profile-name .edit-listing i {
	color: #000;
}

.profile-name .pa-below-title {
	margin-top: 0px;
}

/* Right column — extra/venue info */
@media only screen and (min-width: 993px) {
	.col-md-6 .profile-extra {
		float: right;
		text-align: right;
	}

	.col-md-6 .profile-extra h2 {
		margin: 20px 0 5px 0;
	}
}

.col-md-6 .profile-extra h2 {
	font-size: 17px;
	font-weight: 500 !important;
	width: 100%;
}

.profile-extra h3 {
	margin-top: 0px;
	font-size: 15px;
	font-weight: 400;
	width: 100%;
}

@media only screen and (max-width: 992px) {
	.profile-extra h2 {
		margin-bottom: 5px;
	}

	.profile-extra h3 {
		padding-bottom: 15px;
	}
}

/* Mobile — centre cover buttons */
@media only screen and (max-width: 992px) {
	.profile-cover-content .cover-buttons > ul {
		margin-left: auto !important;
		margin-right: auto !important;
		text-align: center !important;
	}

	.profile-header .profile-name h1 {
		margin-top: 30px;
	}
}

@media only screen and (min-width: 993px) {
	.cover-buttons > ul {
		margin-left: -20px !important;
	}
}


/* =============================================================================
   SINGLE LISTING PAGE — COVER DETAILS
   Right column of the header: date range, venue label, action buttons.
============================================================================= */

.price-or-date .value {
	font-weight: 500;
	font-size: 17px;
	font-family: 'Poppins', sans-serif !important;
}

/* Second item slightly smaller */
.listing-main-buttons > ul > li:nth-child(2) > .value {
	font-size: 15px;
	font-weight: 400;
}

.listing-main-buttons > ul > li {
	margin-right: 0 !important;
}

.listing-main-buttons > ul > li:last-child {
	margin-bottom: 10px;
}

.listing-main-buttons > ul {
	flex-direction: column;
}

.featured-section {
	color: #000;
}

.event-host .host-name {
	font-size: 12px;
	font-weight: 400;
	color: black;
}

.quick-listing-actions > ul > li > a {
	font-size: 12px;
}

.quick-listing-actions {
	margin: 25px 0 10px 0;
}

#c27-single-listing .date .button-label {
	font-size: 13px;
	padding-left: 5px;
}

/* Hide phone call button on large screens */
@media only screen and (min-width: 1200px) {
	.callnow {
		display: none;
	}
}


/* =============================================================================
   SINGLE LISTING PAGE — CONTENT / DETAILS
   Tab content area below the header: description, table, social links.
============================================================================= */

#c27-single-listing > .tab-content {
	background-color: #f5f5f5;
}

/* Hide section headings — redundant on this site's layout */
.block-field-job_description > .content-block > .pf-head {
	display: none !important;
}

.block-field-job_description > .content-block > .pf-body {
	padding-top: 0px !important;
	margin-bottom: -15px !important;
}

.block-type-social_networks > .list-block > .pf-head {
	display: none !important;
}

.block-field-social_networks > .element > .pf-body {
	padding-top: 0px !important;
}

.table-block > .pf-head {
	display: none !important;
}

.table-block > .pf-body {
	padding-top: 0px !important;
}

.extra-details {
	margin-bottom: 0px !important;
}

.extra-details .buttons {
	font-size: 12px !important;
	font-weight: 400;
	padding: 10px 20px;
}

.pf-body > p {
	padding-bottom: 15px !important;
}

/* Hide listing action buttons (claim, report etc) — not used on this site */
#c27-single-listing .c27-listing-actions {
	display: none !important;
}

/* Hide login-required fieldset on submit listing form */
.c27-submit-listing-form .fieldset-login_required {
	display: none !important;
}


/* =============================================================================
   SOCIAL SHARING MODAL
   Hides unused sharing options and styles the modal.
============================================================================= */

/* Hide specific share options by position */
.share-options li:nth-child(4),
.share-options li:nth-child(5),
.share-options li:nth-child(7),
.share-options li:nth-child(8) {
	display: none;
}

#social-share-modal .share-options {
	padding: 30px;
}

#social-share-modal .share-options li a {
	color: #888;
	font-size: 11px;
}

#social-share-modal .share-options li a:hover {
	color: #000;
}

.cts-open-popup i, .c27-copy-link i {
	background-color: #000 !important;
}

.cts-open-popup:focus {
	color: #000;
}

.social-nav li a:hover i.fa-link {
	background: #04cdd1 !important;
	border-color: #04cdd1 !important;
}

.elementor-social-icon {
	background: black;
	border: 1px solid white;
	color: white;
}

.elementor-social-icon:hover {
	color: red;
}


/* =============================================================================
   EXPLORE PAGE
   Search and filter page styles.
============================================================================= */

.finder-listings {
	height: 100% !important;
	padding-bottom: 20px !important;
}

#finderSearch {
	height: 100% !important;
}

.md-group input:focus ~ label {
	font-weight: 400 !important;
}

.md-group {
	padding-top: 22px !important;
}

/* Only show first two category tabs */
.finder-tabs .nav-tabs li {
	width: 50% !important;
}

.nav-tabs li:nth-of-type(1n+3) {
	display: none !important;
}

/* Hide all select2 dropdown options — intentional, prevents category browsing */
.select2-results__options li:nth-of-type(1n+1) {
	display: none !important;
}


/* =============================================================================
   FORMS (Add Listing / Submit Listing)
   Hides unnecessary form fields and tidies spacing.
============================================================================= */

.job-manager-form fieldset div.field.account-sign-in {
	display: none !important;
}

.job-manager-form fieldset label {
	display: none !important;
}

.job-manager-form fieldset {
	margin: 0 !important;
	padding: 0 !important;
}

.field > .md-checkbox {
	display: none !important;
}

.field > .job-manager-uploaded-files {
	padding-bottom: 0px !important;
}

.form-group > label {
	margin-top: 10px !important;
}

.form-group {
	margin-bottom: 25px !important;
}

.light-forms > .form-group {
	margin-bottom: 15px !important;
}

.form-group > .field > input {
	padding: 10px 0 !important;
}

.elementor-widget-container .job_listing_preview_title {
	background: #000 !important;
}

.job_listing_preview_title input[type=submit].job-manager-button-submit-listing.button.button-2 {
	color: #000 !important;
}


/* =============================================================================
   QUICK VIEW MODAL
============================================================================= */

.quick-view .pf-body {
	padding-top: 0px !important;
}

.quick-view-modal .element {
	padding-bottom: 30px !important;
}


/* =============================================================================
   BLOG / NEWS
============================================================================= */

/* Hide social sharing, tags, and post navigation — not used on this site */
#share-links {
	display: none !important;
}

.tags-list {
	display: none !important;
}

.c27-post-changer {
	display: none !important;
}

.blogpost-section .container {
	max-width: 900px !important;
	padding-top: 20px !important;
	padding-bottom: 20px !important;
	padding-left: 10% !important;
	padding-right: 10% !important;
}

.archive-heading h1 {
	font-size: 22px;
}

/* Limit publication/news card text to 3 lines to maintain consistent grid height */
.sbf-title p {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}



/* =============================================================================
   FOOTER
   Page-specific footer background overrides and copyright styling.
   Page IDs are specific to this installation:
   27 = Homepage, 329 = About, 337 = Disclaimer, 595 = (mailing list page)
============================================================================= */

.copyright {
	margin-left: auto !important;
	margin-right: auto !important;
	float: none !important;
}

.copyright p {
	text-align: center !important;
}

.copyright-text {
	text-align: center !important;
	color: black;
	font-size: 13px;
}

/* Homepage — black footer */
.page-id-27 {
	background: black !important;
}

.page-id-27 > .footer {
	background: black !important;
	border-top: 0px !important;
}

.page-id-27 .copyright {
	margin-bottom: 20px !important;
}

.page-id-27 .copyright p, a {
	color: #D5D5D5;
}

.page-id-27 .copyright-text {
	color: white !important;
}

/* About page — black footer */
.page-id-329 {
	background: black !important;
}

.page-id-329 > .footer {
	background: black !important;
	border-top: 0px !important;
}

.page-id-329 .copyright {
	margin-bottom: 20px !important;
}

.page-id-329 .copyright p {
	color: #D5D5D5;
}

.page-id-329 .copyright-text {
	color: white !important;
}

/* Disclaimer page — white background */
.page-id-337 {
	background: white !important;
}

/* Hide mailing list form on page 595 */
.page-id-595 .footer-mailing {
	display: none;
}

.footer-mailing {
	margin-bottom: 30px !important;
}

.footer-mailing input {
	color: white !important;
	font-size: 12px !important;
}

.footer-mailing input:focus {
	border-width: 0px !important;
	box-shadow: 0px 0px 0px 0px #ffffff !important;
}


/* =============================================================================
   MAILING LIST — MAILCHIMP (MC4WP)
   Styles for the mailing list signup form.
============================================================================= */

.mc4wp-form-fields input[type=submit] {
	background: #383838 !important;
}

.mc4wp-form-fields input:focus, textarea:focus {
	border-color: #fff !important;
}

.mc4wp-form-fields input[type=email] {
	box-shadow: 0px 1px 0px 0px #fff;
	color: #04cdd1;
	text-align: center !important;
	font-size: 15px !important;
}

.mailing-list .mc4wp-form-fields input[type=email] {
	box-shadow: 0px 0px 0px 0px #000;
	color: #000 !important;
}

.mc4wp-form-fields input::placeholder {
	color: #5f5f5f !important;
	text-align: center !important;
}

.mc4wp-form-fields input:focus::-webkit-input-placeholder { color: transparent !important; }
.mc4wp-form-fields input:focus:-moz-placeholder { color: transparent !important; }

.mc4wp-form-fields .tick {
	color: #5f5f5f !important;
	padding-left: 10px;
}

.mc4wp-form-fields label {
	margin-bottom: 10px !important;
}

.mc4wp-success {
	text-align: center;
}

.mc4wp-notice {
	padding-top: 20px !important;
}

.mc4wp-notice p {
	font-size: 16px;
	color: black;
}

/* Hide location-based signup widget */
.signuplocation {
	display: none !important;
}


/* =============================================================================
   MAILING LIST — CONSTANT CONTACT (CTCT)
   Legacy styles — may no longer be needed if fully moved to Mailchimp.
   Flag for removal once confirmed unused.
============================================================================= */

.ctct-button {
	display: none !important;
}

.ctct-form-field-email label {
	display: none !important;
}

.ctct-input-container label {
	display: inline !important;
	padding-left: 10px;
}

.ctct-form-field input::placeholder {
	color: #EBEBEB !important;
	text-align: center !important;
}

#email___49e8d778cd5e68643f23aba34e53f0aa {
	box-shadow: 0px 1px 0px 0px #fff;
	color: #04cdd1;
	text-align: center !important;
	font-size: 13px !important;
	letter-spacing: 1px !important;
}

.ctct-form-wrapper input[type="email"]:required:valid {
	padding-left: 0px !important;
	border-color: #fff !important;
	background: none !important;
}

.ctct-form-field {
	margin-top: 20px !important;
}

.ctct-form-field input:focus, textarea:focus {
	border-color: #fff !important;
}

.ctct-form-field-submit input[type=submit] {
	background: #383838 !important;
}

.ctct-form-field-submit input[type=submit]:hover {
	background: #04cdd1 !important;
}

.ctct-form-wrapper .success {
	margin-top: 20px;
	text-align: center;
	color: #04cdd1 !important;
	border-color: #04cdd1 !important;
}


/* =============================================================================
   COOKIE BAR
============================================================================= */

#catapult-cookie-bar span {
	font-size: 0.8em;
}

#catapult-cookie-bar h3 {
	font-size: 1em;
}

#catapult-cookie-bar {
	bottom: 3% !important;
	width: 220px !important;
	padding: 5px 10px 5px !important;
}
