/**
 * Location detail pages (Rosengård, Ödåkra, Värnhem) — match design v3.
 * @see design/Malmo-Sweden.html, design/assets/css/style.css
 */

/* Hero */
.location-hero {
	padding: 0;
	margin-top: 0;
	background: #ab0a06;
	background: linear-gradient(0deg,
			rgba(171, 10, 6, 1) 0%,
			rgba(218, 16, 4, 1) 36%,
			rgba(241, 82, 14, 1) 61%,
			rgba(250, 178, 22, 1) 100%);
}

.location-hero .container {
	max-width: 100%;
	padding: 0;
	width: 100%;
}

.location-hero .hero-content {
	display: grid;
	grid-template-columns: 50% 50%;
	align-items: center;
}

body.locations-page-nw.inner-pages .page-location-main section.location-hero:first-of-type,
body.locations-page-nw.inner-pages .page-location-main .wp-block-html>section.location-hero:first-child {
	padding-top: 128px !important;
	margin-top: 0 !important;
}

.hero-left-con {
	max-width: 680px;
	margin-left: auto;
	padding: 80px 30px 80px 15px;
}

@media (max-width: 1269px) {

	body.locations-page-nw.inner-pages .page-location-main section.location-hero:first-of-type,
	body.locations-page-nw.inner-pages .page-location-main .wp-block-html>section.location-hero:first-child {
		padding-top: 0 !important;
	}
}

.hero-left-con ul li {
	margin-bottom: 15px;
	padding-bottom: 15px;
	border-bottom: 1px solid #ccc;
}

.hero-left-con ul li:last-child {
	margin: 0;
	padding: 0;
	border: none;
}

.hero-right-img,
.hero-right-img div {
	height: 100%;
}

.hero-right-img {
	max-height: 71vh;
}

.hero-right-img img {
	height: 100%;
	width: 100%;
	object-fit: cover;
	display: block;
}

.hero-img-slider .slick-slide {
	padding: 0;
}

/* Typography — match design/pages.css (override theme pages.css 50px / 110px clamps) */
body.locations-page-nw.inner-pages .location-hero .site-section-title h1 {
	font-size: clamp(26px, 2.5vw, 52px) !important;
	line-height: 1.2 !important;
	font-weight: 800 !important;
	letter-spacing: 0.005em;
	text-transform: capitalize;
	color: #fff !important;
	margin: 0;
}

body.locations-page-nw.inner-pages .location-menu .site-section-title h2,
body.locations-page-nw.inner-pages .feature-section .site-section-title h2,
body.locations-page-nw.inner-pages .catering-service-sec .site-section-title h2,
body.locations-page-nw.inner-pages .visit-us-sec .site-section-title h2 {
	font-size: clamp(24px, 2vw, 44px) !important;
	line-height: 1.2 !important;
	font-weight: 800 !important;
	text-transform: capitalize;
	margin-bottom: 30px;
}

body.locations-page-nw.inner-pages .location-menu .site-section-title p {
	font-size: 16px !important;
	font-weight: 400 !important;
	line-height: 1.6 !important;
	text-transform: none !important;
	letter-spacing: normal;
	color: #fff;
	margin: 12px 0 0;
}
.page-id-11596 .hero-left-con .site-section-title h1 {
	color: #fff !important;
}

.hero-left-con ul,
.hero-left-con ul li {
	font-size: 15px;
	line-height: 1.5;
}

.hero-left-con ul li strong {
	font-weight: 700;
}

.hero-left-con a.btn.btn-white {
	margin-top: 15px;
}

a.btn.btn-white {
	background: #fff;
	color: #000;
	border: 1.5px solid rgba(255, 246, 232, 0.5);
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 16px 26px;
	border-radius: 999px;
	font-weight: 700;
	font-size: 14px;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	text-decoration: none;
}

a.btn.btn-white:hover,
.hero-left-con .wp-block-button.deens-btn-wrap.btn-white .wp-block-button__link:hover {
	background: var(--cream);
	color: var(--black);
	transform: translateY(-2px);
}

.hero-left-con .wp-block-button.deens-btn-wrap.btn-white .wp-block-button__link {
	background: #fff !important;
	color: #000 !important;
	border: 1.5px solid rgba(255, 246, 232, 0.5) !important;
}

.location-menu .menu-card.wp-block-group,
.feature-box.wp-block-group {
	box-sizing: border-box;
}

.location-menu .features .feature-grid {
	grid-template-columns: 1fr;
}

.catering-service-sec .wp-block-buttons {
	justify-content: center;
}

/* Intro copy */
.location-center-content {
	padding: 72px 0;
	background: var(--cream);
}

.location-content {
	text-align: center;
	max-width: 850px;
	margin-inline: auto;
}

.location-content p {
	font-size: 16px;
	line-height: 1.65;
	margin: 0 0 18px;
	color: var(--ink);
}

.location-content p:last-child {
	margin-bottom: 0;
}

/* Menu + sides */
.location-menu {
	background: var(--ink);
	color: var(--cream);
	position: relative;
	overflow: hidden;
	padding: 72px 0;
}

.location-menu .site-section-title {
	margin-bottom: 25px;
}

.site-section-title.text-white h1,
.site-section-title.text-white h2 {
	color: #fff;
}

.location-menu .menu-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 25px;
}

.location-menu-grid {
	display: grid;
	grid-template-columns: minmax(0, 800px) 1fr;
	gap: 50px;
	align-items: start;
}

.location-menu .menu-card {
	background: #1b1b1b;
	border-radius: 14px;
	overflow: hidden;
	transition: transform 0.3s ease;
	border: 1px solid #2d2d2d;
	display: grid;
	grid-template-columns: 250px 1fr;
}

.location-menu .menu-card:hover {
	transform: translateY(-6px);
}

.location-menu .menu-card img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	max-height: 310px;
	display: block;
}

.location-menu .menu-content {
	padding: 24px;
}

.location-menu .menu-content h3 {
	margin: 0 0 12px;
	color: #f32a22;
	font-size: 26px;
	text-transform: uppercase;
}

.location-menu .menu-list {
    margin: 0;
    padding-left: 20px;
    color: #fff;
    justify-content: start;
}
.location-menu .menu-list li {
	margin-bottom: 10px;
}

.location-menu .feature-box {
	padding: 25px 20px;
}

.features .site-section-title {
	margin-bottom: 25px;
}

.feature-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(330px,1fr));
    gap: 25px;
    margin-bottom: 25px;
}

.feature-box {
	background: #222;
	padding: 30px;
	border-radius: 12px;
	border-left: 4px solid #f32a22;
}

.feature-box h4 {
	font-size: 22px;
	color: #ffb703;
	margin: 0 0 8px;
}

.feature-box p {
	color: #fff;
	margin: 0;
}

/* Why choose */
.feature-section {
	background: #f2f2f2;
	padding: 72px 0;
}

.feature-section .site-section-title {
	margin-bottom: 50px;
	text-align: center;
}

.feature-section .feature-box {
	background: #222;
	border-left-color: #f32a22;
}

/* Catering CTA band */
.catering-service-sec {
	background-size: cover !important;
	background-position: center !important;
	text-align: center;
	background-attachment: fixed !important;
	padding: 72px 0;
	color: #fff;
}

.catering-service-sec p {
	max-width: 850px;
	margin: 20px auto;
	color: #fff;
}

.catering-service-sec .btn-bx {
	margin-top: 28px;
}

.catering-service-sec .btn-bx .btn {
	display: inline-flex;
	align-items: center;
	gap: 10px;
}

/* Visit us + map */
.visit-us-sec {
	padding: 72px 0;
	background: var(--cream);
}

.visit-us-sec .site-section-title {
	margin-bottom: 15px;
}

.location-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 40px;
	align-items: center;
}

.location-info p {
	margin: 0 0 14px;
	line-height: 1.6;
	color: var(--ink);
}

.location-info a {
	color: inherit;
}

.location-image iframe,
.visit-us-sec iframe {
	width: 100%;
	height: 350px;
	border: 0;
	border-radius: 12px;
	display: block;
}

#location-hero {
	padding: 121px 0px 0px 0px !important;
	position: relative;
}

.hero-img-slider1 div {
	position: absolute;
	right: 0;
	width: 100%;
	max-width: 50%;
	height: 100%;
}

.hero-img-slider1 div img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}


/* Responsive */
@media (max-width: 1024px) {
	
	.location-hero .hero-content {
		grid-template-columns: 1fr;
	}

	.hero-left-con {
		order: 2;
		max-width: 100%;
		margin-left: auto;
		padding: 40px 15px;
	}

	.hero-right-img {
		order: 1;
		max-height: 50vh;
	}

	.location-menu-grid {
		grid-template-columns: 1fr;
		gap: 50px;
	}

	.location-menu .menu-card {
		grid-template-columns: 1fr;
	}

	.location-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 768px) {
	body.locations-page-nw.inner-pages .location-hero .site-section-title h1 {
		font-size: 35px !important;
		line-height: 1.15 !important;
	}

	body.locations-page-nw.inner-pages .location-menu .site-section-title h2,
	body.locations-page-nw.inner-pages .feature-section .site-section-title h2,
	body.locations-page-nw.inner-pages .catering-service-sec .site-section-title h2,
	body.locations-page-nw.inner-pages .visit-us-sec .site-section-title h2 {
		font-size: 35px !important;
		line-height: 1.2 !important;
	}
}