/*
 Theme Name:   Flinks Fastighetsförmedling
 Theme URI:    https://flinksfast.se
 Description:  Child-tema för Flinks Fastighetsförmedling byggt på GeneratePress.
 Author:       Flinks Fastighetsförmedling
 Author URI:   https://flinksfast.se
 Template:     generatepress
 Version:      1.0.0
 Requires at least: 6.4
 Tested up to: 6.8
 Requires PHP: 8.1
 Text Domain:  flinks-fastighetsformedling
 Tags:         custom-logo, featured-images, translation-ready
 License:      GPL-2.0-or-later
 License URI:  https://www.gnu.org/licenses/gpl-2.0.html
 Copyright:    2026 Flinks Fastighetsförmedling
*/

body {
	padding: 15px;
}

.main-navigation.navigation-clone {
	background-color: rgba(255,255,255,0.9);
}

.main-navigation.navigation-clone ul li a {
	color: #000000;
}

.main-navigation.navigation-clone ul li.current-menu-item a {
	color: #ffffff;
}

input[type="search"] {
    width: 50%;
}

.button {
    margin-bottom: 15px;
}

.button.grey {
	background: rgba(255, 255, 255, 0.35);
	-webkit-transition: 0.2s background linear;
	transition: 0.2s background linear;
}

.button.grey:hover {
	background: rgba(255, 255, 255, 0.55);
	-webkit-transition: 0.2s background linear;
	transition: 0.2s background linear;
}

.wpcf7 form.sent .wpcf7-response-output {
    background-color: #ffffff;
    padding: 15px;
    margin: 0;
    border: none;
}

.wpcf7 form.sent .wpcf7-response-output.error {
    color: #d15642;
}

/*
 Property cards
*/
.wp-show-posts-image {
	position: relative;
	overflow: hidden;
    margin-bottom: 0;
}

.wp-show-posts dl {
    list-style: none;
    margin: 0;
}

.wp-show-posts dl  {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    font-weight: inherit;
}

.wp-show-posts dt,
.wp-show-posts dd {
    margin: 0;
    font-weight: inherit;
}

.wp-show-posts dt:after {
    content: ': ';
    right: 0;
    padding-right: 5px;
}

.wp-show-posts dd {
    padding-right: 15px;
}

.wp-show-posts-image-overlay {
	display: block;
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	opacity: 0;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
	-webkit-transform: translate3d(0, 0, 0);
	-webkit-backface-visibility: hidden;
	-moz-backface-visibility: hidden;
	backface-visibility: hidden;

	-o-backface-visibility: hidden;
}

.wp-show-posts-image-overlay:hover:not(.no-icon):before {
	font-family: 'Font Awesome 5 Free';
    font-weight: 700;
	color: #FFF;
	font-size: 40px;
	top: 55%;
	top: calc(50% - 20px);
	left: 50%;
	margin: -20px 0 0 -20px;
	position: absolute;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
}

.wp-show-posts-image-overlay:hover.search:before {
	content: "\f002";
}

.wp-show-posts-image-overlay:hover.plus:before {
	content: "\f067";
}

.wp-show-posts-image-overlay:hover.heart:before {
	content: "\f004";
}

.wp-show-posts-image-overlay:hover.download:before {
	content: "\f019";
}

.wp-show-posts-image-overlay:hover.play:before {
	content: "\f04b";
}

.wp-show-posts-image-overlay:hover.eye:before {
	content: "\f06e";
}

.wp-show-posts-image-overlay:hover.cloud-download:before {
	content: "\f0ed";
}

.wp-show-posts-image-overlay:hover:before {
	top: 50%;
}

.wp-show-posts-image:hover .wp-show-posts-image-overlay,
.static-image-overlay .wp-show-posts-image .wp-show-posts-image-overlay {
	z-index: 3;
	opacity: 1;
}

.wpsp-load-more {
    text-align: center;
    margin-top: 0;
}

.wp-show-posts-inner {
    position: relative;
}

.property-status {
    position: absolute;
    top: 10px;
    left: 10px;
    color: #ffffff;
    background-color: #d15642d9;
    padding-right: 6px;
    padding-left: 6px;
}

/*
 Photo gallery
*/
.wp-block-gallery .blocks-gallery-item img {
    max-height: 180px;
}

/*
 Property details page
*/
.single-property .page-hero h2,
.single-property .page-hero h5 {
	text-transform: uppercase;
	margin-bottom: 15px;
}

.single-property .page-hero .button {
	margin-right: 10px;
}

.single-property .page-hero {
	background-repeat: no-repeat;
	position: relative;
	overflow: hidden;
}

.single-property .page-hero:before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: rgba(0, 0, 0, 0.5);
	z-index: 1;
	pointer-events: none;
}

.single-property .page-hero > * {
	position: relative;
	z-index: 2;
}

.single-property .page-hero button {
    margin-bottom: 15px;
}

.single-property dl,
.single-property dt,
.single-property dd {
    margin: 0;
}

.single-property ul.descriptions {
    list-style: none;
    margin-left: 0;
    margin-bottom: 15px;
}

.single-property ul.descriptions h4 {
    color: #d15642;
    font-size: 18px;
}

.single-property ul.documents {
    list-style: none;
    margin-left: 0;
    margin-bottom: 15px;
    justify-content: flex-start;
}

.single-property .documents .fas {
    font-size: 30px;
    vertical-align: middle;
    padding-right: 15px;
}

.single-property ul.documents li {
    padding-right: 20px;
    margin-bottom: 10px;
}

.single-property ul.documents,
.single-property dl.property-meta  {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

.single-property .property-meta dt {
    font-weight: inherit;
}

.single-property .property-meta dt:after {
    content: ': ';
    right: 0;
    padding-right: 5px;
}

.single-property .property-meta dd:not(:last-child):after {
    content: '\2022';
    right: 0;
    padding-left: 5px;
    padding-right: 5px;
}

.single-property .property-agents {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}

.single-property .property-agent-card {
	flex: 1 1 220px;
	max-width: 280px;
}

.single-property .property-agent-card__image {
	margin: 0 0 10px;
}

.single-property .property-agent-card__image img {
	display: block;
	width: 140px;
	max-width: 100%;
	height: auto;
}

.single-property .property-agent-card h5 {
	margin: 0 0 4px;
	line-height: 1.2;
}

.single-property .property-agent-card h3 {
	margin: 0 0 10px;
	line-height: 1.2;
}

/*
 Widgets
*/

/* Bidding */
.widget .show-bidding-history::before {
    content: "";
    border-style: solid;
    border-width: 0.15em 0.15em 0 0;
    width: 0.45em;
    height: 0.45em;
    margin-left: 0;
    margin-right: 0.6em;
    margin-top: 0.69em;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    float: left;
}
 
.widget .show-bidding-history.active::before {
    margin-top: 0.57em;
    margin-left: 0.15em;
    margin-right: 0.45em;
    -webkit-transform: rotate(135deg);
    -moz-transform: rotate(135deg);
    -o-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg);
}

.widget .show-bidding-history {
    cursor: pointer;
}

.widget .show-bidding-history:hover {
    color: #d15642;
}

/* Showings */
.single-property .property-showings h4 {
    margin-bottom: 0;
}

.single-property .property-showing {
    margin-bottom: 15px;
}

.single-property .property-showing-header {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
}

.single-property .property-showing-book a,
.single-property .property-showing-book a:hover {
    color: #FFFFFF;
}

/*
 Property details
*/
.single-property .energy-class {
    background-image: url(assets/images/Energiklassningweb.png);
    max-width: 55px;
    height: 57px;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}


.single-property .energy-class- {
    background-image:none
}

.single-property .energy-class-A {
    background-position:0, 0
}

.single-property .energy-class-B {
    background-position:-59px, 0
}

.single-property .energy-class-C {
    background-position:-120px, 0
}

.single-property .energy-class-D {
    background-position:-181px, 0
}

.single-property .energy-class-E {
    background-position:-242px, 0
}

.single-property .energy-class-F {
    background-position:-303px, 0
}

.single-property .energy-class-G {
    background-position:-364px, 0
}

/* .property-card-read-more {
	background: rgba(209,86,66,0.7);
	position: absolute;
	height: 100%;
	width: 100%;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
	opacity: 0;
	-webkit-transition: all 0.4s ease-in-out 0s;
	transition: all 0.4s ease-in-out 0s;
} */

/*
 Cordions - collapsible content
*/
.collapsible ~ * {
    display: none;
}

.collapsible-list.open,
.collapsible-list .open {
    margin: 0;
    overflow: hidden;
    transition: all 0.3s;
    -moz-transition: all 0.3s;    /* Firefox 4 */
    -webkit-transition: all 0.3s;    /* Safari and Chrome */
    -o-transition: all 0.3s;    /* Opera */
    display: block;
}
  
ul.descriptions.collapsible-list h4.active,
ul.descriptions.collapsible-list li .open {
    background-color: rgba(247,249,250,0.6);
}

ul.descriptions.collapsible-list li .open {
    padding: 30px;
}

ul.descriptions.collapsible-list li h4 {
    padding: 8px 0 8px 0;
    cursor: pointer;
}

h4.collapsible {
    margin-bottom: 0;
}

h4.collapsible::before {
    content: "";
    border-style: solid;
    border-width: 0.15em 0.15em 0 0;
    width: 0.45em;
    height: 0.45em;
    margin-left: 0.2em;
    margin-right: 0.6em;
    margin-top: 0.45em;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    float: left;
}

h4.collapsible.active::before {
    margin-top: 0.4em;
    margin-left: 0.3em;
    margin-right: 0.5em;
    -webkit-transform: rotate(135deg);
    -moz-transform: rotate(135deg);
    -o-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg);
}

.single-property #property_map {
    height: 550px;
}

/*
 Property showings dropdown list in contact form
 */
.property-showings-select {
    position: relative;
    border: 1px solid #dddddd;
    background: #ffffff;
    -webkit-appearance: none;
    -moz-appearance: none;
    margin-bottom: 1.5em;
    color: #808080;
}

/* Documents list styling outside single property context */
ul.documents {
    list-style: none;
    margin: 0 0 15px;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 10px 20px;
}

ul.documents li {
    margin: 0;
    padding: 0;
}

ul.documents li a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 14px;
    border: 1px solid #d9d3cd;
    border-radius: 999px;
    color: #2a2a2a;
    text-decoration: none;
}

ul.documents li a:hover {
    border-color: #c65d45;
    color: #c65d45;
}

/* Legacy shortcode gallery layout compatibility */
.wp-block-gallery .blocks-gallery-grid {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.wp-block-gallery .blocks-gallery-item {
    margin: 0;
}

.wp-block-gallery .blocks-gallery-item figure {
    margin: 0;
}

.wp-block-gallery .blocks-gallery-item a {
    display: block;
    line-height: 0;
}

.wp-block-gallery .blocks-gallery-item img {
    width: 100%;
    height: 180px;
    object-fit: cover;
    display: block;
    border-radius: 8px;
}

@media (max-width: 1024px) {
    .wp-block-gallery .blocks-gallery-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 768px) {
    .wp-block-gallery .blocks-gallery-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 480px) {
    .wp-block-gallery .blocks-gallery-grid {
        grid-template-columns: 1fr;
    }
}
