/*
 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
*/

/**breadcrumbs **/
nav.tsf-breadcrumb {
    padding-left: 50px;
}
.gb-element-e0b3d842 img{    width: 100%;
    height: 250px;
    object-fit: cover;}

.cjg-subcategories{display: grid;grid-template-columns: repeat(3, minmax(0, 1fr));gap: 20px;width: 100%;margin-bottom: 30px;}
.cjg-subcategory img {
    width: 100%;
    height: 280px;
    object-fit: cover;
    border-radius: 5px;
    margin-bottom: 10px;
}
.cjg-subcategory{text-align: center; background: white; padding: 15px; border-radius: 8px; box-shadow: 0 4px 8px rgba(0,0,0,0.1); transition: transform 0.3s ease;}
.cityguide-subtitle {width:100%;}
.wp-block-gallery{margin-bottom:20px;}
.cities-by-alphabet {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
	width: 100%;
}

.city-group {
    flex: 1 1 200px;
	break-inside: avoid-column;
    padding: 0 0 20px 30px;
    position: relative;
}

.city-group h3 {
    font-size: 1.5rem;
	position: absolute;
    top: 0;
    left: 0;
    width: 30px;
    padding: 5px 0;
    text-align: center;
    line-height: normal;
    color: #fff;
    background: #c75000;
    border-radius: 8px 8px 0 8px;
}

.city-group ul {
    list-style: none;
    padding: 0;
	margin-left: 20px;
}

.city-group li {
    font-size: 1rem;
    color: #666;
    margin-bottom: 5px;
}
.wp-block-bcn-breadcrumb-trail {
    margin: 20px 0;
}

/* ATTRACTION GRID */
.attractions-grid {
    display: grid;
    gap: 25px;
    margin-top: 25px;
}

.attractions-grid.cols-3 {
    grid-template-columns: repeat(3, 1fr);
}

.attractions-grid.cols-4 {
    grid-template-columns: repeat(4, 1fr);
}

/* RESPONSIVE */
@media (max-width: 1024px) {
    .attractions-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 600px) {
    .attractions-grid, .attractions-grid.cols-3 {
        grid-template-columns: 1fr;
    }
}

/* CITY CARD */
.attraction-card {
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 3px 10px rgba(0,0,0,0.1);
    transition: transform 0.3s ease;
}

.attraction-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 20px rgba(0,0,0,0.15);
}
section.city-section {
    width: 100%;
    margin-bottom: 20px;
}
.attraction-image {
    width: 100%;
    height: 200px;
    object-fit: cover;
    display: block;
}

.attraction-title {
    margin: 0;
    padding: 15px;
    font-size: 1.1rem;
    text-align: center;
    background: #fff;
}

.attraction-link {
    text-decoration: none;
    color: #333;
    display: block;
}

.attraction-card:hover .attraction-title {
    color: #0073aa;
}
#ftwp-postcontent a{color:#ed1313;}
#ftwp-postcontent a.gb-text{color:#fff;}
/** post image **/
.main-navigation ul ul{background:#fff;}
#ftwp-postcontent .wp-block-image{margin-bottom:30px;}
.is-layout-flex {display: flex;flex-wrap: wrap}
#page h3 a,#page ul li a, #page .site-main p a{color:#ed1313;}
#page .wp-block-list li{margin-bottom:20px;}
#page .wp-block-heading{margin-top:20px;}
.single-post .site-content .content-area {
    width: 90%;
}
.city-attractions-sidebar ul li {
    list-style: none;
}
.city-attractions-sidebar h2{font-size:22px;margin-left:15px;}
.city-attractions-sidebar ul {
    margin: 0;
}
#page .city-attractions-sidebar ul li a {
    padding: 10px 4px 9px 15px;
    border-top: 1px solid #e4e4e4;
    display: block;
    text-decoration: none;
    color: #000;
}
#page .city-attractions-sidebar ul li a:hover{background:#ed1313;color:#fff;}
@media (max-width: 767px) {.cjg-subcategories {display: grid;grid-template-columns: 1fr;} .city-group{flex: 1 1 100px;}
	.wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image){width:calc(100% - var(--wp--style--unstable-gallery-gap, 16px)/2)}
	nav.tsf-breadcrumb {padding-left: 30px;padding-right: 30px; word-break: break-all;}
	.wp-block-image .alignright,.wp-block-image .alignleft{float:none;}
	.single-post .site-content .content-area{width: 100%;}
	.single-post .site-content .content-area ol, ul{margin:0 0 1em 1em;}}