/**
 * Scell Corporate – 1:1 reference design stylesheet
 */

*, *::before, *::after { box-sizing: border-box; }

body {
	margin: 0;
	padding: 0;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 13px;
	line-height: 1.65;
	color: #333;
	background: #c8c8c8 url("data:image/svg+xml,%3Csvg width='4' height='4' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h1v1H0z' fill='%23bbb'/%3E%3C/svg%3E");
}

a { color: #006699; text-decoration: none; }
a:hover { color: #004466; text-decoration: underline; }

img { max-width: 100%; height: auto; display: block; }

/* ===== Site shell (980px white box) ===== */
#page.site {
	width: 980px;
	max-width: 100%;
	margin: 0 auto;
	background: #fff;
	box-shadow: 0 0 16px rgba(0,0,0,0.18);
}

.inner {
	width: 100%;
	padding: 0 8px;
}

.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
	height: 1px;
	width: 1px;
	overflow: hidden;
}

/* ===== Header ===== */
.site-header {
	background: #fff;
}

.header-top {
	display: grid;
	grid-template-columns: 70px 1fr 150px;
	align-items: center;
	min-height: 78px;
	padding: 6px 8px 4px;
}

.site-logo img,
.custom-logo-link img {
	max-height: 58px;
	width: auto;
}

.logo-default { display: block; line-height: 0; }

.site-title-wrap {
	text-align: center;
	padding: 0 10px;
}

.site-title {
	margin: 0;
	font-family: "Times New Roman", Georgia, serif;
	font-size: 34px;
	font-style: italic;
	font-weight: bold;
	line-height: 1.1;
	color: #b8d430;
	text-shadow: 2px 2px 0 #666, 0 0 1px #333;
}

.site-title a {
	color: inherit;
	text-decoration: none;
}

/* Language flags */
.header-lang { padding-right: 4px; }

.lang-switcher {
	display: flex;
	justify-content: flex-end;
	gap: 2px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.lang-switcher a {
	display: grid;
	place-items: center;
	width: 24px;
	height: 16px;
	padding: 0;
	border: 1px solid #8aa7b6;
	background: #fff;
	text-decoration: none;
	overflow: hidden;
}

.lang-switcher .lang-flag {
	display: block;
	width: 100%;
	height: 100%;
	background: linear-gradient(#012169 0 33%, #fff 33% 42%, #c8102e 42% 58%, #fff 58% 67%, #012169 67%);
}

.lang-switcher li:nth-child(2) .lang-flag {
	background: linear-gradient(90deg, #aa151b 0 25%, #f1bf00 25% 75%, #aa151b 75%);
}

.lang-switcher li:nth-child(3) .lang-flag {
	background: linear-gradient(#006c35 0 38%, #fff 38% 62%, #006c35 62%);
}

.lang-switcher li:nth-child(3) .lang-flag::after {
	content: "●";
	display: block;
	color: #fff;
	font-size: 9px;
	line-height: 14px;
	text-align: center;
}

.lang-switcher a:hover { border-color: #006699; }

.lang-switcher .screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.lang-switcher .current-lang a {
	border-color: #006699;
	outline: 1px solid #006699;
}

/* ===== Mobile menu controls (hidden on desktop) ===== */
.menu-toggle {
	display: none;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: 5px;
	width: 40px;
	height: 40px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	cursor: pointer;
	box-shadow: none;
}

.menu-toggle__bar {
	display: block;
	width: 24px;
	height: 3px;
	background: #1678ad;
	border-radius: 1px;
}

.menu-close {
	display: none;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: #fff;
	font-size: 28px;
	line-height: 1;
	cursor: pointer;
}

.mobile-drawer-header,
.mobile-drawer-lang,
.mobile-section-chips,
.nav-backdrop {
	display: none;
}

/* ===== Navigation ===== */
.main-navigation {
	background: linear-gradient(180deg, #9fdcf5 0%, #6ec5e8 35%, #4db3de 70%, #3da2d5 100%);
	border-top: 1px solid #b5e3f7;
	border-bottom: 2px solid #2b8fd4;
}

.nav-inner { padding: 0 4px; }

.primary-menu {
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	list-style: none;
	margin: 0;
	padding: 0;
}

.primary-menu li { margin: 0; }

.primary-menu a {
	display: block;
	padding: 8px 14px;
	color: #fff;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	font-weight: bold;
	text-decoration: none;
	text-shadow: 0 1px 1px rgba(0,0,0,0.25);
	white-space: nowrap;
}

.primary-menu a:hover,
.primary-menu .current-menu-item a,
.primary-menu .current_page_item a {
	background: rgba(255,255,255,0.18);
}

/* ===== Banner (full width inside shell) ===== */
.banner-wrap {
	padding: 0;
	background: #0a5a8c;
}

.hero-banner {
	position: relative;
	overflow: hidden;
	background: #0a5a8c;
}

.banner-slider { position: relative; height: 248px; }

.banner-slide {
	position: absolute;
	inset: 0;
	opacity: 0;
	transition: opacity 0.45s ease;
}

.banner-slide.is-active { opacity: 1; z-index: 1; }

.banner-slide a {
	display: block;
	line-height: 0;
}

.banner-slide img {
	width: 100%;
	height: 248px;
	object-fit: cover;
	display: block;
}

.banner-nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 2;
	width: 22px;
	height: 36px;
	border: none;
	background: rgba(0,0,0,0.4);
	color: #fff;
	font-size: 18px;
	cursor: pointer;
	line-height: 1;
	padding: 0;
}

.banner-prev { left: 0; }
.banner-next { right: 0; }

.banner-dots {
	position: absolute;
	bottom: 6px;
	right: 8px;
	z-index: 2;
	display: flex;
	gap: 4px;
	padding: 3px 5px;
	background: rgba(0,0,0,0.55);
}

.banner-dot {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	border: 1px solid #fff;
	background: rgba(255,255,255,0.3);
	cursor: pointer;
	padding: 0;
}

.banner-dot.is-active { background: #e63333; }

/* ===== Main layout ===== */
.site-content { background: #fff; }

.three-columns {
	display: grid;
	grid-template-columns: 200px minmax(0, 1fr) 220px;
	gap: 12px;
	padding: 12px 10px 10px;
	align-items: start;
}

.three-columns > .column {
	min-width: 0;
}

.three-columns > .column > .panel-box:last-child,
.three-columns > .column > .video-panel:last-child {
	margin-bottom: 0;
}

/* ===== Panel boxes ===== */
.panel-box {
	margin-bottom: 10px;
	border: 1px solid #b0b0b0;
	background: #fff;
	box-shadow: inset 0 0 0 1px #fff, 0 1px 4px rgba(0,0,0,0.08);
	border-radius: 2px;
	overflow: hidden;
}

.panel-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 5px 8px;
	min-height: 26px;
	border-bottom: 1px solid #aaa;
}

.panel-header--blue {
	background: linear-gradient(180deg, #c5ecf9 0%, #8fd4ef 40%, #6ec0e6 100%);
}

.panel-header--pink {
	background: linear-gradient(180deg, #f0c0c0 0%, #e0a0a0 45%, #d49090 100%);
}

.panel-title {
	margin: 0;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 13px;
	font-weight: bold;
	color: #cc0000;
}

.panel-title--blue { color: #005588; }

.panel-more {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 11px;
	color: #006699;
	text-decoration: none;
}

.panel-more:hover { text-decoration: underline; }

.panel-body {
	padding: 8px 9px 9px;
}

.panel-body .widget { margin: 0; }

/* Lists */
.panel-list,
.panel-body .widget ul {
	list-style: none;
	margin: 0;
	padding: 0;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 11px;
	line-height: 1.45;
}

.panel-list li,
.panel-body .widget ul li {
	padding: 4px 0;
	border-bottom: 1px dotted #bbb;
}

.panel-list li:last-child,
.panel-body .widget ul li:last-child { border-bottom: none; }

.panel-list a,
.panel-body .widget ul li a { color: #333; text-decoration: none; }
.panel-list a:hover { color: #006699; text-decoration: underline; }

.panel-list--news a {
	display: block;
	line-height: 1.4;
}

.panel-list--news img,
.panel-list--news .gallery,
.panel-list--news .cert-grid {
	display: none;
}

.panel-list--services li {
	padding: 4px 0 4px 14px;
	position: relative;
}

.panel-list--services li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.7em;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #1678ad;
}

/* Homepage desktop: keep three columns close in height */
@media (min-width: 769px) {
	.front-page-main .three-columns {
		align-items: stretch;
	}

	.front-page-main .column-left,
	.front-page-main .column-center,
	.front-page-main .column-right {
		display: flex;
		flex-direction: column;
	}

	.front-page-main .column-left > .panel-box:last-child,
	.front-page-main .column-center > .panel-box,
	.front-page-main .column-right > .panel-box:last-child {
		flex: 1 1 auto;
		display: flex;
		flex-direction: column;
		margin-bottom: 0;
	}

	.front-page-main .column-left > .panel-box:last-child .panel-body,
	.front-page-main .column-center > .panel-box .panel-body,
	.front-page-main .column-right > .panel-box:last-child .panel-body {
		flex: 1 1 auto;
		display: flex;
		flex-direction: column;
	}

	.front-page-main .column-left > .panel-box:last-child .cert-grid {
		flex: 1 1 auto;
		grid-template-rows: 1fr 1fr;
		min-height: 0;
		align-content: stretch;
	}

	.front-page-main .column-left > .panel-box:last-child .cert-item {
		min-height: 0;
		height: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.front-page-main .column-left > .panel-box:last-child .cert-item img {
		height: 100%;
		max-height: 110px;
		width: auto;
		max-width: 100%;
	}

	.front-page-main .column-right > .panel-box:last-child .panel-list--services {
		flex: 1 1 auto;
		display: flex;
		flex-direction: column;
		justify-content: space-evenly;
	}

	.front-page-main .column-center .panel-body {
		padding: 8px 9px 9px;
		min-height: 0;
	}

	.front-page-main .column-center .home-about-feature {
		flex: 1 1 auto;
		min-height: 0;
		display: flex;
		flex-direction: column;
	}

	.front-page-main .column-center .home-about-feature__title {
		flex: 0 0 auto;
	}

	.front-page-main .column-center .home-about-feature__content {
		flex: 1 1 auto;
		min-height: 0;
		overflow: hidden;
		font-size: 12px;
		line-height: 1.6;
	}

	.front-page-main .column-center .home-about-feature__content p {
		margin: 0 0 8px;
	}

	.front-page-main .column-center .home-about-feature__content p:last-child {
		margin-bottom: 0;
	}

	.front-page-main .column-center .home-about-feature__more {
		flex: 0 0 auto;
		margin: 8px 0 0;
		display: none;
	}

	.front-page-main .column-center .home-about-feature.is-overflow .home-about-feature__more {
		display: block;
	}

	.front-page-main .column-center .home-featured-images {
		gap: 6px;
		margin-bottom: 8px;
	}

	.front-page-main .column-center .home-featured-images img {
		height: 120px;
	}

	.front-page-main .column-left .panel-list--news li {
		padding: 4px 0;
	}

	.front-page-main .column-right .video-panel {
		margin-bottom: 8px;
		flex: 0 0 auto;
	}

	.front-page-main .column-right .video-teaser {
		gap: 4px;
		padding: 0;
	}

	.front-page-main .column-right .video-box img,
	.front-page-main .column-right .video-box .video-cover,
	.front-page-main .column-right .video-panel img,
	.front-page-main .column-right .video-panel .video-cover {
		height: 92px;
	}

	.front-page-main .column-right .video-box__play::before {
		width: 34px;
		height: 34px;
		background-size: 18px 18px;
	}

	.front-page-main .column-right .video-teaser__title {
		margin: 0 0 2px;
		font-size: 11px;
		line-height: 1.3;
	}

	.front-page-main .column-right .video-teaser__desc {
		-webkit-line-clamp: 2;
		line-clamp: 2;
		margin: 0 0 2px;
		font-size: 10px;
		line-height: 1.35;
	}

	.front-page-main .column-right .video-teaser__more {
		font-size: 10px;
	}

	.front-page-main .column-right .panel-body {
		padding: 5px 7px 6px;
	}

	.front-page-main .column-right .panel-list--services li {
		padding: 3px 0 3px 12px;
		font-size: 10px;
		line-height: 1.3;
	}

	.front-page-main .column-right .panel-list--services li::before {
		top: 0.55em;
		width: 6px;
		height: 6px;
	}
}

/* Certificate 2x2 */
.cert-grid,
.panel-body .gallery {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 6px;
}

.cert-item,
.panel-body .gallery-item {
	border: 1px solid #ccc;
	padding: 3px;
	background: #fff;
	text-align: center;
}

.cert-item img {
	width: 100%;
	height: 78px;
	object-fit: contain;
	margin: 0 auto;
}

/* About Us center */
.home-featured-images {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 6px;
	margin-bottom: 10px;
}

.home-featured-images img {
	width: 100%;
	height: 128px;
	object-fit: cover;
	border: 1px solid #aaa;
}

.entry-content {
	text-align: justify;
	font-size: 12px;
	line-height: 1.7;
	color: #222;
}

.entry-content p { margin: 0 0 10px; }
.entry-content p:last-child { margin-bottom: 0; }

/* Video */
.video-panel { margin-bottom: 10px; }
.video-panel > .panel-box { margin-bottom: 0; }

.video-teaser {
	display: grid;
	gap: 7px;
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
	border-radius: 0;
}

.panel-body > .video-teaser {
	gap: 6px;
}

.video-box,
.video-box.video-box--link,
.video-panel .textwidget {
	position: relative;
	border: 1px solid #aaa;
	background: #111;
	line-height: 0;
	display: block;
	text-decoration: none;
	overflow: hidden;
}

.video-box--link:hover {
	outline: 2px solid #006699;
	outline-offset: -2px;
}

.video-box img,
.video-box .video-cover,
.video-panel img,
.video-panel .video-cover {
	width: 100%;
	height: 118px;
	min-height: 0;
	aspect-ratio: auto;
	object-fit: cover;
	display: block;
}

.video-box__play {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(0, 0, 0, 0.18);
	pointer-events: none;
}

.video-box__play::before {
	content: "";
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: rgba(0, 0, 0, 0.62);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.28);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fff'%3E%3Cpath d='M9 7.5v9l8-4.5z'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: 55% 50%;
	background-size: 22px 22px;
}

.video-teaser__meta {
	padding: 0 1px 1px;
	font-family: Arial, Helvetica, sans-serif;
}

.video-teaser__title {
	margin: 0 0 4px;
	font-size: 12px;
	font-weight: bold;
	line-height: 1.35;
	color: #006699;
}

.video-teaser__desc {
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	line-clamp: 3;
	overflow: hidden;
	margin: 0 0 5px;
	font-size: 11px;
	line-height: 1.4;
	color: #555;
}

.video-teaser__more {
	margin: 0;
	font-size: 11px;
}

.video-teaser__more a {
	color: #006699;
	text-decoration: none;
}

.video-teaser__more a:hover {
	text-decoration: underline;
}

.video-panel .widget-title { display: none; }

/* Video list page – card grid (4 per row) */
.page-layout--videos {
	padding-top: 20px;
	padding-bottom: 40px;
}

.videos-page-header {
	margin-bottom: 4px;
}

.entry-content--videos > p:empty {
	display: none;
}

.video-card-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px 14px;
	margin: 14px 0 0;
	font-family: Arial, Helvetica, sans-serif;
}

.video-card-grid__empty {
	margin: 16px 0;
	font-family: Arial, Helvetica, sans-serif;
	color: #666;
}

.video-card {
	min-width: 0;
}

.video-card__link {
	display: block;
	color: inherit;
	text-decoration: none;
}

.video-card__link:hover {
	text-decoration: none;
	color: inherit;
}

.video-card__thumb {
	position: relative;
	display: block;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	background: #1a1a1a;
	border: 1px solid #b0b0b0;
	border-radius: 4px;
}

.video-card__image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.25s ease;
}

.video-card__play {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(0, 0, 0, 0.18);
	opacity: 0;
	transition: opacity 0.2s ease;
	pointer-events: none;
}

.video-card__play::before {
	content: "";
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: rgba(0, 0, 0, 0.62);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.28);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fff'%3E%3Cpath d='M9 7.5v9l8-4.5z'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: 55% 50%;
	background-size: 22px 22px;
}

.video-card__link:hover .video-card__play,
.video-card__link:focus-visible .video-card__play {
	opacity: 1;
}

.video-card__link:hover .video-card__image,
.video-card__link:focus-visible .video-card__image {
	transform: scale(1.04);
}

.video-card__link:focus-visible .video-card__thumb {
	outline: 2px solid #006699;
	outline-offset: 2px;
}

.video-card__body {
	display: block;
	padding: 8px 2px 0;
}

.video-card__title {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	line-clamp: 2;
	overflow: hidden;
	font-size: 13px;
	font-weight: bold;
	line-height: 1.35;
	color: #222;
	min-height: 2.7em;
}

.video-card__desc {
	display: none;
	margin-top: 4px;
	font-size: 12px;
	line-height: 1.4;
	color: #555;
}

.video-card__link:hover .video-card__title {
	color: #006699;
}

.video-card__meta {
	display: block;
	margin-top: 4px;
	font-size: 11px;
	line-height: 1.3;
	color: #888;
}

/* Single video page */
.video-single__back {
	margin: 0 0 12px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
}

.video-single__back a {
	color: #006699;
	text-decoration: none;
}

.video-player {
	max-width: 720px;
	margin: 0 auto;
	background: #111;
	border: 1px solid #aaa;
}

.video-player video {
	width: 100%;
	height: auto;
	display: block;
}

.video-player--embed iframe {
	width: 100%;
	min-height: 405px;
	display: block;
}

.video-player__empty {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 13px;
}

/* ===== Footer gallery ===== */
.footer-gallery-wrap {
	--footer-gallery-gap: 3px;
	--footer-gallery-count: 8;
	--footer-gallery-size: calc((100% - (var(--footer-gallery-count) - 1) * var(--footer-gallery-gap)) / var(--footer-gallery-count));
	background: #fff;
	border-top: 1px solid #ccc;
	padding: 8px 10px;
	margin-top: 0;
}

.footer-gallery-grid {
	display: flex;
	flex-wrap: nowrap;
	gap: var(--footer-gallery-gap);
}

.footer-gallery-carousel {
	overflow: hidden;
	position: relative;
}

.footer-gallery-track {
	display: flex;
	gap: var(--footer-gallery-gap);
	width: max-content;
	will-change: transform;
	animation: scell-footer-gallery-scroll 36s linear infinite;
}

.footer-gallery-carousel:hover .footer-gallery-track {
	animation-play-state: paused;
}

.footer-gallery-carousel .footer-gallery-item {
	flex: 0 0 var(--footer-gallery-size);
	width: var(--footer-gallery-size);
}

@keyframes scell-footer-gallery-scroll {
	from { transform: translateX(0); }
	to { transform: translateX(-50%); }
}

.footer-gallery-item {
	display: block;
	flex: 1 1 0;
	min-width: 0;
	width: auto;
	aspect-ratio: 1 / 1;
	border: 1px solid #aaa;
	background: #f8f8f8;
	overflow: hidden;
}

.footer-gallery-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border: 0;
	display: block;
}

.footer-gallery-widget .gallery {
	display: flex !important;
	flex-wrap: wrap;
	gap: 3px;
	margin: 0 !important;
	padding: 0 !important;
}

.footer-gallery-widget .gallery-item {
	float: none !important;
	width: var(--footer-gallery-size) !important;
	margin: 0 !important;
	aspect-ratio: 1 / 1;
}

.footer-gallery-widget .gallery-icon img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	border: 1px solid #aaa;
}

/* ===== Footer ===== */
.site-footer {
	background: #fff;
	padding: 8px 8px 14px;
	text-align: center;
	border-top: 1px solid #ddd;
}

.site-info {
	margin: 0;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 10px;
	color: #666;
}

.site-beian {
	margin: 4px 0 0;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 10px;
	line-height: 1.4;
}

.site-beian a {
	color: #666;
	text-decoration: none;
}

.site-beian a:hover {
	color: #333;
	text-decoration: underline;
}

/* Inner pages */
.section-title {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 18px;
	font-weight: bold;
	margin: 0 0 12px;
	color: #cc0000;
}

.page-layout { padding: 16px 8px 36px; }

/* Archive list pages */
.archive-list {
	list-style: none;
	margin: 0;
	padding: 0;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 13px;
	line-height: 1.5;
}

.archive-list li {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: space-between;
	gap: 8px 16px;
	padding: 10px 0;
	border-bottom: 1px dotted #bbb;
}

.archive-list li:last-child {
	border-bottom: none;
}

.archive-list a {
	color: #333;
	text-decoration: none;
}

.archive-list a:hover {
	color: #006699;
	text-decoration: underline;
}

.archive-list__date {
	font-size: 11px;
	color: #888;
	white-space: nowrap;
}

.cert-grid--archive {
	grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
	gap: 12px;
	margin-top: 12px;
}

.cert-grid--archive .cert-item img {
	height: 130px;
}

.posts-navigation {
	margin-top: 20px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
}

.posts-navigation a {
	color: #006699;
}

.archive-pagination {
	margin: 18px 0 8px;
	font-family: Arial, Helvetica, sans-serif;
}

.archive-pagination .page-numbers {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 0;
	list-style: none;
}

.archive-pagination .page-numbers li {
	margin: 0;
}

.archive-pagination .page-numbers a,
.archive-pagination .page-numbers span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 32px;
	height: 32px;
	padding: 0 8px;
	border: 1px solid #1678ad;
	border-radius: 3px;
	background: #fff;
	color: #006699;
	font-size: 13px;
	font-weight: bold;
	line-height: 1;
	text-decoration: none;
	box-sizing: border-box;
}

.archive-pagination .page-numbers a:hover,
.archive-pagination .page-numbers a:focus {
	background: #e8f7fc;
	text-decoration: none;
}

.archive-pagination .page-numbers .current {
	background: #1678ad;
	border-color: #1678ad;
	color: #fff;
}

.archive-pagination .page-numbers .dots {
	border-color: transparent;
	background: transparent;
	color: #888;
	font-weight: normal;
}

/* Enterprise inner pages */
.enterprise-page {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 13px;
	line-height: 1.55;
}

.enterprise-intro {
	margin-bottom: 18px;
	color: #444;
}

.enterprise-empty {
	padding: 14px;
	border: 1px dotted #aaa;
	color: #777;
}

.enterprise-link,
.story-single__back a {
	color: #006699;
	text-decoration: none;
	font-size: 12px;
}

.enterprise-link:hover,
.story-single__back a:hover { text-decoration: underline; }

.treatment-list,
.story-list {
	display: grid;
	gap: 16px;
}

.treatment-card,
.story-card {
	display: grid;
	grid-template-columns: 180px 1fr;
	gap: 14px;
	padding: 0 0 15px;
	border-bottom: 1px dotted #aaa;
}

.story-card--no-image {
	grid-template-columns: minmax(0, 1fr);
}

.treatment-card__image,
.story-card__image {
	width: 100%;
	height: auto;
	object-fit: cover;
	border: 1px solid #ddd;
}

.treatment-card__title,
.story-card__title,
.expert-card__name {
	margin: 0 0 5px;
	font-size: 15px;
	color: #006699;
}

.story-card__title a {
	color: inherit;
	text-decoration: none;
}

.story-card__label,
.expert-card__role {
	margin: 0 0 7px;
	font-size: 12px;
	color: #888;
}

.expert-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.expert-card {
	padding: 10px;
	text-align: center;
	border: 1px solid #ddd;
	background: #fafafa;
}

.expert-card__image {
	width: 100%;
	max-width: 180px;
	height: auto;
	object-fit: cover;
	border: 1px solid #ccc;
}

.expert-card__bio {
	margin: 7px 0;
	text-align: left;
	font-size: 12px;
	color: #555;
}

.faq-list { border-top: 1px solid #ddd; }

.faq-category { margin: 0 0 14px; }
.faq-category__title {
	margin: 0 0 8px;
	padding: 0 0 4px;
	border-bottom: 1px solid #8db4cf;
	font-size: 13px;
	color: #075e90;
}
.reference-page--faq .faq-list { border-top: 0; }
.reference-page--faq .faq-category__title {
	margin: 0 0 6px;
	font-size: 13px;
	color: #006699;
}

.faq-item { border-bottom: 1px solid #ddd; }

.faq-item summary {
	padding: 10px 28px 10px 9px;
	cursor: pointer;
	font-weight: bold;
	color: #006699;
}

.faq-item__answer { padding: 0 10px 12px; }

.story-single__image { margin: 0 0 15px; }
.story-single__image img { max-width: 100%; height: auto; border: 1px solid #ddd; }

.contact-layout {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(220px, .8fr);
	gap: 24px;
}

.contact-form,
.contact-details {
	padding: 14px;
	border: 1px solid #d3d3d3;
	background: #fafafa;
}

.contact-form p { margin: 0 0 12px; }
.contact-form label { display: block; margin-bottom: 4px; font-weight: bold; }
.contact-form input,
.contact-form textarea {
	box-sizing: border-box;
	width: 100%;
	padding: 7px;
	border: 1px solid #bbb;
	font: inherit;
}

.contact-form button {
	padding: 7px 16px;
	border: 1px solid #005f91;
	background: #087eb8;
	color: #fff;
	cursor: pointer;
}

.contact-form__honeypot { position: absolute; left: -9999px; }
.contact-office { padding: 10px 0; border-top: 1px dotted #bbb; }
.contact-office:first-of-type { border-top: 0; }
.contact-office h3,
.contact-details h2 { margin: 0 0 5px; color: #006699; font-size: 15px; }
.contact-office p,
.contact-details p { margin: 4px 0; }

.contact-notice { padding: 9px 12px; }
.contact-notice--success { border: 1px solid #91c98e; background: #edf8ec; color: #276628; }
.contact-notice--error { border: 1px solid #d49b9b; background: #fff0f0; color: #9c2424; }

/* Reference inner-page restoration */
.reference-page-shell {
	display: grid;
	grid-template-columns: 200px minmax(0, 1fr) 220px;
	gap: 12px;
	padding: 12px 10px 10px;
	font-family: Arial, Helvetica, sans-serif;
	align-items: start;
}
.reference-sidebar .panel-box { margin-bottom: 9px; }
.reference-main-column { min-width: 0; }
.reference-page .panel-box { margin: 0; }
.reference-page .panel-body { padding: 9px 10px; }
.reference-page__intro { margin: 0 0 8px; font-size: 11px; line-height: 1.45; color: #555; }
.reference-page__intro p { margin: 0 0 6px; }
.reference-video-panel { margin: 0 0 9px; }
.reference-video-panel .panel-box { margin-bottom: 0; }
.reference-video-panel .video-box { min-height: 0; }
.reference-video-panel .video-box .video-cover { min-height: 0; }

/* Inner pages desktop: sidebars keep natural height (do not stretch with main column) */
@media (min-width: 769px) {
	.reference-sidebar--left,
	.reference-sidebar--right,
	.reference-main-column {
		min-width: 0;
	}

	.reference-sidebar--left > *:last-child .panel-box,
	.reference-sidebar--right > *:last-child .panel-box {
		margin-bottom: 0;
	}

	.reference-sidebar--left > *:last-child .cert-item img {
		max-height: 110px;
		width: auto;
		max-width: 100%;
		height: auto;
	}

	.reference-sidebar--right .video-teaser {
		gap: 4px;
		padding: 0;
	}

	.reference-sidebar--right .video-box img,
	.reference-sidebar--right .video-box .video-cover,
	.reference-sidebar--right .video-cover {
		height: 92px;
		min-height: 0;
		aspect-ratio: auto;
	}

	.reference-sidebar--right .video-box__play::before {
		width: 34px;
		height: 34px;
		background-size: 18px 18px;
	}

	.reference-sidebar--right .video-teaser__title {
		margin: 0 0 2px;
		font-size: 11px;
		line-height: 1.3;
	}

	.reference-sidebar--right .video-teaser__desc {
		-webkit-line-clamp: 2;
		line-clamp: 2;
		margin: 0 0 2px;
		font-size: 10px;
		line-height: 1.35;
	}

	.reference-sidebar--right .video-teaser__more {
		font-size: 10px;
	}

	.reference-sidebar--right .panel-body {
		padding: 5px 7px 6px;
	}

	.reference-sidebar--right .panel-list--services li {
		padding: 3px 0 3px 12px;
		font-size: 10px;
		line-height: 1.3;
	}

	.reference-sidebar--left .panel-list--news li {
		padding: 4px 0;
	}
}
.reference-media-row { display: grid; grid-template-columns: 118px minmax(0, 1fr); gap: 9px; padding: 8px 0; border-bottom: 1px dotted #aaa; }
.reference-media-row:first-child { padding-top: 0; }
.reference-media-row--no-image { grid-template-columns: minmax(0, 1fr); }
.reference-media-row__image { width: 118px; height: 78px; object-fit: cover; border: 1px solid #b5b5b5; }
.reference-media-row__content h2, .reference-expert h2 { margin: 0 0 3px; font-size: 12px; line-height: 1.2; color: #006699; }
.reference-expert h2 a { color: inherit; text-decoration: none; }
.reference-media-row__content p, .reference-expert p { margin: 0 0 4px; font-size: 11px; line-height: 1.35; color: #4d4d4d; }
.reference-more-link { color: #006699; font-size: 10px; text-decoration: none; }
.reference-expert-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px 10px; }
.reference-expert { display: grid; grid-template-columns: 60px minmax(0, 1fr); gap: 6px; padding: 7px 0; border-bottom: 1px dotted #aaa; }
.reference-expert--no-image { grid-template-columns: minmax(0, 1fr); }
.reference-expert__image { width: 58px; height: 72px; object-fit: cover; border: 1px solid #aaa; }
.reference-expert__role { color: #777 !important; font-size: 10px !important; }
.reference-about-intro { display: grid; grid-template-columns: 230px minmax(0, 1fr); gap: 10px; }
.reference-about-intro > img { width: 230px; height: 150px; object-fit: cover; border: 1px solid #aaa; }
.reference-about-intro .entry-content { font-size: 11px; line-height: 1.45; }
.reference-about-intro .entry-content p { margin: 0 0 7px; }
.reference-about-gallery { display: grid; grid-template-columns: repeat(6, 1fr); gap: 5px; margin-top: 10px; }
.reference-about-gallery img { width: 100%; height: 48px; object-fit: cover; border: 1px solid #aaa; }
.reference-page--stories .story-list { display: block; }
.reference-page--stories .story-card { display: grid; grid-template-columns: 118px minmax(0, 1fr); gap: 9px; padding: 8px 0; border-bottom: 1px dotted #aaa; }
.reference-page--stories .story-card--no-image { grid-template-columns: minmax(0, 1fr); }
.reference-page--stories .story-card__image { width: 118px; height: 78px; object-fit: cover; }
.reference-page--stories .story-card__title { margin: 0 0 3px; font-size: 12px; }
.reference-page--stories .story-card__label, .reference-page--stories .story-card__content p { margin: 0 0 4px; font-size: 11px; }
.reference-page--faq .faq-list { border: 0; }
.reference-page--faq .faq-category { margin: 0 0 12px; }
.reference-page--faq .faq-item { margin-bottom: 5px; border: 1px solid #8db4cf; background: #eff8fd; }
.reference-page--faq .faq-item summary { padding: 6px 8px; color: #006699; font-size: 12px; list-style: none; }
.reference-page--faq .faq-item summary::-webkit-details-marker { display: none; }
.reference-page--faq .faq-item summary::before { content: '+'; display: inline-grid; place-items: center; width: 12px; height: 12px; margin-right: 6px; background: #1678ad; color: #fff; font-size: 12px; line-height: 12px; }
.reference-page--faq .faq-item[open] summary::before { content: '−'; }
.reference-page--faq .faq-item__answer { padding: 2px 10px 8px 26px; font-size: 11px; line-height: 1.4; }
.reference-contact { display: grid; gap: 16px; }
.reference-contact__section-title {
	margin: 0 0 10px;
	padding: 0 0 6px;
	border-bottom: 1px solid #8db4cf;
	font-size: 13px;
	line-height: 1.3;
	color: #006699;
}
.reference-contact__top {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(220px, 0.9fr);
	gap: 16px;
	align-items: start;
}
.reference-contact__form-panel,
.reference-contact__hq {
	min-width: 0;
}
.reference-contact-form__row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
}
.reference-contact-form p { margin: 0 0 10px; }
.reference-contact-form label { display: block; margin: 0 0 4px; font-size: 11px; color: #555; }
.reference-contact-form input,
.reference-contact-form textarea {
	box-sizing: border-box;
	width: 100%;
	padding: 7px 8px;
	border: 1px solid #aaa;
	background: #fff;
	font: 12px Arial, Helvetica, sans-serif;
	color: #333;
}
.reference-contact-form textarea { min-height: 120px; resize: vertical; }
.reference-contact-form button {
	padding: 7px 18px;
	border: 1px solid #075e90;
	background: #1582bb;
	color: #fff;
	font: 12px/1.2 Arial, Helvetica, sans-serif;
	cursor: pointer;
}
.reference-contact-form button:hover { background: #0f6fa3; }
.reference-contact-map {
	margin: 0 0 10px;
	border: 1px solid #aaa;
	background: #f7fbfd;
}
.reference-contact-map img,
.reference-contact-map__image {
	display: block;
	width: 100%;
	height: 140px;
	object-fit: cover;
}
.reference-contact-hq-card {
	font-size: 12px;
	line-height: 1.45;
	color: #4d4d4d;
}
.reference-contact-hq-card p { margin: 0 0 6px; }
.reference-contact-hq-card__label { margin: 0 0 4px; color: #075e90; font-weight: bold; }
.reference-contact-org {
	display: block;
	margin: 0 0 6px;
	font-size: 13px;
	color: #006699;
}
.reference-contact-meta {
	display: inline-block;
	min-width: 3.2em;
	margin-inline-end: 4px;
	color: #777;
}
/* Keep phone/fax digits LTR in all languages (incl. Arabic RTL) */
.scell-tel {
	display: inline-block;
	direction: ltr;
	unicode-bidi: isolate;
	text-align: left;
}
.reference-contact-form input[name="scell_contact_phone"],
.scell-contact-office input[name*="[phone]"],
.scell-contact-office input[name*="[fax]"] {
	direction: ltr;
	unicode-bidi: isolate;
	text-align: left;
}
.reference-contact__regions { margin-top: 2px; }
.reference-contact-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px 18px;
}
.reference-contact-office {
	padding: 0;
	border: 0;
	font-size: 11px;
	line-height: 1.4;
	color: #4d4d4d;
}
.reference-contact-office h4 {
	margin: 0 0 4px;
	font-size: 12px;
	line-height: 1.25;
	color: #006699;
}
.reference-contact-office__person {
	margin: 0 0 4px;
	font-weight: bold;
	color: #333;
}
.reference-contact-office__address,
.reference-contact-office p { margin: 0 0 3px; }
.reference-contact-office a { color: #006699; text-decoration: none; }
.reference-contact-office a:hover { text-decoration: underline; }
.reference-story-single__back { margin: 0 0 8px; font-size: 11px; }
.reference-story-single__image img { width: 180px; height: auto; margin: 0 10px 6px 0; float: left; }

.reference-treatment-single__back { margin: 0 0 10px; font-size: 11px; }
.reference-treatment-single__image { margin: 0 0 12px; }
.reference-treatment-single__image img { max-width: 100%; height: auto; }
.reference-about-single-gallery {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
	margin: 0 0 12px;
}
.reference-about-single-gallery__item {
	margin: 0;
	border: 1px solid #aaa;
	background: #fff;
	overflow: hidden;
}
.reference-about-single-gallery__item img {
	display: block;
	width: 100%;
	height: 120px;
	object-fit: cover;
}
.home-about-feature__title {
	margin: 0 0 8px;
	font-size: 13px;
	line-height: 1.3;
	color: #006699;
}
.home-about-feature__title a {
	color: inherit;
	text-decoration: none;
}
.home-about-feature__title a:hover,
.home-about-feature__title a:focus {
	text-decoration: underline;
}
.home-about-feature__content {
	font-size: 12px;
	line-height: 1.55;
	color: #333;
}
.home-about-feature__content p {
	margin: 0 0 10px;
}
.home-about-feature__more {
	margin: 4px 0 0;
}
.reference-expert-single__back { margin: 0 0 8px; font-size: 11px; }
.reference-expert-single__role { margin: 0 0 10px; color: #555; font-size: 12px; }
.reference-expert-single__image { margin: 0 0 12px; }
.reference-expert-single__image img { max-width: 220px; height: auto; }
.entry-content--expert h3 {
	margin: 14px 0 6px;
	font-size: 13px;
	color: #006699;
}
.entry-content--expert h3:first-child { margin-top: 0; }
.entry-content--expert p { margin: 0 0 8px; line-height: 1.5; }
.entry-content--expert ol,
.entry-content--expert ul { margin: 0 0 10px 18px; padding: 0; }
.entry-content--expert li { margin: 0 0 6px; line-height: 1.45; }
.entry-content--treatment h3 {
	margin: 14px 0 6px;
	font-size: 13px;
	color: #c44;
}
.entry-content--treatment h3:first-child { margin-top: 0; }
.entry-content--treatment p { margin: 0 0 8px; line-height: 1.5; }
.entry-content--treatment ul { margin: 0 0 8px 18px; padding: 0; }
.entry-content--treatment li { margin: 0 0 8px; line-height: 1.45; }
.entry-content--treatment li strong { display: block; margin: 0 0 4px; }
.entry-content--treatment li p { margin: 0 0 6px; }
.entry-content--treatment ol { margin: 0 0 10px 18px; padding: 0; }

/* ===== Responsive: tablet / phone ===== */
@media (max-width: 768px) {
	body.nav-open {
		overflow: hidden;
	}

	#page.site {
		width: 100%;
		box-shadow: none;
	}

	/* Header: logo | title | hamburger + flags row */
	.header-top {
		display: grid;
		grid-template-columns: 48px minmax(0, 1fr) 44px;
		grid-template-areas:
			"logo title toggle"
			"lang lang lang";
		align-items: center;
		gap: 4px 8px;
		min-height: 0;
		padding: 8px;
	}

	.site-logo { grid-area: logo; }
	.site-title-wrap {
		grid-area: title;
		text-align: center;
		padding: 0 4px;
		min-width: 0;
	}
	.header-lang {
		grid-area: lang;
		padding: 2px 0 0;
	}
	.menu-toggle {
		grid-area: toggle;
		display: flex;
		border: 0;
		background: transparent;
	}

	.menu-toggle__bar {
		width: 24px;
		height: 3px;
		background: #1678ad;
	}

	/* Design: blue nav strip above banner (drawer replaces menu links) */
	.site-header::after {
		content: "";
		display: block;
		height: 28px;
		background: linear-gradient(180deg, #9fdcf5 0%, #6ec5e8 35%, #4db3de 70%, #3da2d5 100%);
		border-top: 1px solid #b5e3f7;
		border-bottom: 2px solid #2b8fd4;
	}

	.site-logo img,
	.custom-logo-link img {
		max-height: 44px;
	}

	.site-title {
		font-size: clamp(18px, 5.2vw, 24px);
		line-height: 1.15;
		word-break: break-word;
	}

	.lang-switcher {
		justify-content: center;
	}

	/* Right slide-out drawer */
	.nav-backdrop {
		display: block;
		position: fixed;
		inset: 0;
		z-index: 998;
		background: rgba(0, 0, 0, 0.45);
		opacity: 0;
		visibility: hidden;
		transition: opacity 0.25s ease, visibility 0.25s ease;
	}

	body.nav-open .nav-backdrop {
		opacity: 1;
		visibility: visible;
	}

	.nav-backdrop[hidden] {
		display: none !important;
	}

	html {
		scroll-behavior: smooth;
	}

	#sidebar-news,
	#sidebar-certificate,
	#sidebar-video,
	#sidebar-services {
		scroll-margin-top: 12px;
	}

	.main-navigation {
		position: fixed;
		top: 0;
		right: 0;
		z-index: 999;
		display: flex;
		flex-direction: column;
		width: min(82vw, 320px);
		height: 100%;
		margin: 0;
		padding: 0 0 20px;
		border: 0;
		background: linear-gradient(180deg, #6ec5e8 0%, #3da2d5 45%, #2b8fd4 100%);
		box-shadow: -4px 0 18px rgba(0, 0, 0, 0.22);
		transform: translateX(105%);
		transition: transform 0.28s ease;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
	}

	body.nav-open .main-navigation {
		transform: translateX(0);
	}

	.mobile-drawer-header {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 10px;
		padding: 14px 14px 10px;
		border-bottom: 1px solid rgba(255, 255, 255, 0.28);
	}

	.mobile-drawer-brand {
		font-family: "Times New Roman", Georgia, serif;
		font-size: 16px;
		font-style: italic;
		font-weight: bold;
		color: #e8f56a;
		text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.35);
		line-height: 1.2;
	}

	.menu-close {
		display: flex;
		flex-shrink: 0;
	}

	.nav-inner {
		padding: 8px 0;
		flex: 1;
	}

	.primary-menu {
		flex-direction: column;
		align-items: stretch;
		justify-content: flex-start;
	}

	.primary-menu a {
		padding: 14px 18px;
		font-size: 15px;
		border-bottom: 1px solid rgba(255, 255, 255, 0.18);
		text-shadow: none;
	}

	.primary-menu a:hover,
	.primary-menu .current-menu-item a,
	.primary-menu .current_page_item a {
		background: rgba(255, 255, 255, 0.22);
	}

	.mobile-drawer-lang {
		display: block;
		padding: 14px 18px 8px;
		border-top: 1px solid rgba(255, 255, 255, 0.28);
		margin-top: auto;
	}

	.mobile-drawer-lang__label {
		margin: 0 0 8px;
		font-family: Arial, Helvetica, sans-serif;
		font-size: 12px;
		font-weight: bold;
		color: #fff;
	}

	.mobile-drawer-lang .lang-switcher {
		justify-content: flex-start;
		gap: 8px;
	}

	.mobile-drawer-lang .lang-switcher a {
		width: 32px;
		height: 22px;
	}

	/* Banner */
	.banner-slider,
	.banner-slide img {
		height: 190px;
	}

	.banner-nav {
		width: 28px;
		height: 44px;
		font-size: 20px;
	}

	/* Homepage: About → News/Cert → Video/Services */
	.three-columns {
		display: flex;
		flex-direction: column;
		align-items: stretch; /* override desktop align-items:start so columns go full width */
		gap: 12px;
		padding: 12px 10px 20px;
	}

	.column-left,
	.column-center,
	.column-right {
		width: 100%;
		max-width: 100%;
		min-width: 0;
		box-sizing: border-box;
	}

	.column-center { order: 1; }
	.column-left { order: 2; }
	.column-right { order: 3; }

	.panel-box {
		margin-bottom: 0;
	}

	.panel-header {
		min-height: 36px;
		padding: 8px 10px;
	}

	.panel-title {
		font-size: 15px;
	}

	.panel-more {
		font-size: 13px;
		padding: 4px 2px;
		min-height: 28px;
		display: inline-flex;
		align-items: center;
	}

	.panel-body {
		padding: 10px;
	}

	.panel-list,
	.panel-body .widget ul {
		font-size: 13px;
		line-height: 1.5;
	}

	.panel-list li,
	.panel-body .widget ul li {
		padding: 7px 0;
	}

	.panel-list--news a {
		color: #006699;
	}

	.entry-content {
		font-size: 14px;
		line-height: 1.7;
	}

	.home-featured-images {
		gap: 6px;
		margin-bottom: 10px;
	}

	.home-featured-images img {
		height: 110px;
	}

	/* Design: one row of 3 certificates */
	.cert-grid:not(.cert-grid--archive),
	.panel-body .gallery {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 6px;
	}

	.cert-grid:not(.cert-grid--archive) .cert-item:nth-child(n + 4),
	.panel-body .gallery .gallery-item:nth-child(n + 4) {
		display: none;
	}

	.cert-grid:not(.cert-grid--archive) .cert-item {
		padding: 3px;
	}

	.cert-grid:not(.cert-grid--archive) .cert-item img {
		height: auto;
		aspect-ratio: 3 / 4;
		max-height: 120px;
		object-fit: contain;
	}

	/* Design: video thumb left + title/desc right */
	.video-teaser {
		display: grid;
		grid-template-columns: minmax(120px, 42%) minmax(0, 1fr);
		align-items: center;
		gap: 10px;
		padding: 8px;
		border: 1px solid #b0b0b0;
		background: #fff;
		box-shadow: inset 0 0 0 1px #fff, 0 1px 4px rgba(0, 0, 0, 0.08);
	}

	.video-teaser .video-box {
		border: 1px solid #aaa;
	}

	.video-box img,
	.video-box .video-cover,
	.video-panel img,
	.video-panel .video-cover {
		min-height: 0;
		height: auto;
		aspect-ratio: 4 / 3;
	}

	.video-box__play::before {
		width: 44px;
		height: 44px;
		background-size: 22px 22px;
	}

	.video-teaser__meta {
		padding: 0 2px 0 0;
	}

	.video-teaser__title {
		font-size: 14px;
		margin: 0 0 6px;
	}

	.video-teaser__desc {
		font-size: 12px;
		line-height: 1.45;
		margin: 0 0 6px;
	}

	.video-teaser__more {
		display: none;
	}

	.panel-list--news li:nth-child(n + 4) {
		display: none;
	}

	/* Design: two-column checklist */
	.panel-list--services {
		display: grid;
		grid-template-columns: 1fr 1fr;
		column-gap: 12px;
		row-gap: 0;
		font-size: 12px;
		line-height: 1.35;
	}

	.panel-list--services li {
		position: relative;
		padding: 9px 2px 9px 20px;
		border-bottom: 1px dotted #bbb;
		min-width: 0;
	}

	.panel-list--services li:nth-last-child(-n + 2) {
		border-bottom: none;
	}

	.panel-list--services a {
		display: block;
		color: #333;
		word-break: break-word;
	}

	.panel-list--services li::before {
		content: "";
		position: absolute;
		left: 0;
		top: 11px;
		width: 13px;
		height: 13px;
		border-radius: 50%;
		background: #1678ad url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23fff' d='M6.2 11.2 2.8 7.8l1.1-1.1 2.3 2.3 5-5 1.1 1.1z'/%3E%3C/svg%3E") center / 9px 9px no-repeat;
	}

	/* Inner pages: chips + main first, sidebars below */
	.mobile-section-chips {
		display: flex;
		gap: 6px;
		order: 0;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		padding: 2px 0 6px;
		margin: 0 0 4px;
		scrollbar-width: none;
	}

	.mobile-section-chips::-webkit-scrollbar {
		display: none;
	}

	.mobile-section-chips__item {
		flex: 0 0 auto;
		padding: 8px 14px;
		border: 1px solid #8db4cf;
		border-radius: 999px;
		background: #fff;
		color: #005588;
		font-family: Arial, Helvetica, sans-serif;
		font-size: 13px;
		font-weight: bold;
		text-decoration: none;
		white-space: nowrap;
	}

	.mobile-section-chips__item:hover,
	.mobile-section-chips__item:focus {
		background: #e8f7fc;
		color: #004466;
		text-decoration: none;
	}

	.mobile-section-chips__item.is-active {
		background: #1678ad;
		border-color: #1678ad;
		color: #fff;
	}

	.reference-page-shell {
		display: flex;
		flex-direction: column;
		align-items: stretch;
		gap: 12px;
		padding: 12px 10px 24px;
		font-size: 14px;
	}

	.reference-main-column,
	.reference-sidebar--left,
	.reference-sidebar--right {
		width: 100%;
		max-width: 100%;
		min-width: 0;
		box-sizing: border-box;
	}

	.reference-main-column { order: 1; }
	.reference-sidebar--left { order: 2; display: block; }
	.reference-sidebar--right { order: 3; display: block; }

	.reference-page__intro,
	.reference-about-intro .entry-content {
		font-size: 14px;
		line-height: 1.6;
	}

	.mobile-section-chips__item {
		padding: 8px 14px;
		font-size: 13px;
	}

	.reference-about-intro {
		grid-template-columns: 1fr;
	}

	.reference-about-intro > img {
		width: 100%;
		height: auto;
		max-height: 200px;
	}

	.reference-about-gallery {
		grid-template-columns: repeat(3, 1fr);
	}

	.reference-about-gallery img {
		height: 64px;
	}

	.reference-about-single-gallery {
		grid-template-columns: 1fr;
	}

	.reference-about-single-gallery__item img {
		height: 160px;
	}

	/* Design: keep thumb + text side-by-side */
	.reference-media-row,
	.reference-page--stories .story-card {
		grid-template-columns: 108px minmax(0, 1fr);
		gap: 10px;
		align-items: start;
	}

	.reference-media-row--no-image,
	.reference-page--stories .story-card--no-image {
		grid-template-columns: minmax(0, 1fr);
	}

	.reference-media-row__image,
	.reference-page--stories .story-card__image {
		width: 108px;
		height: 78px;
		object-fit: cover;
	}

	.reference-media-row__content h2 {
		font-size: 14px;
	}

	.reference-media-row__content p {
		font-size: 12px;
	}

	.reference-more-link {
		font-size: 12px;
	}

	.reference-contact-form input,
	.reference-contact-form textarea {
		padding: 10px;
		font-size: 14px;
		border-radius: 4px;
	}

	.reference-contact-form button {
		width: 100%;
		padding: 12px 16px;
		font-size: 15px;
		border-radius: 4px;
	}

	.reference-contact-map img,
	.reference-contact-map__image {
		height: 180px;
	}

	.reference-contact__top {
		grid-template-columns: 1fr;
		gap: 18px;
	}

	.reference-contact-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.reference-contact__section-title {
		font-size: 15px;
	}

	.reference-contact-hq-card,
	.reference-contact-office {
		font-size: 13px;
		line-height: 1.5;
	}

	.reference-expert-grid {
		grid-template-columns: 1fr;
	}

	.reference-story-single__image img {
		float: none;
		display: block;
		width: 100%;
		max-width: 280px;
		margin: 0 0 10px;
	}

	.contact-layout {
		grid-template-columns: 1fr;
	}

	.expert-grid {
		grid-template-columns: 1fr;
	}

	.treatment-card,
	.story-card {
		grid-template-columns: 120px minmax(0, 1fr);
		gap: 10px;
	}

	.page-layout--videos {
		padding: 12px 10px 24px;
	}

	.video-card-grid {
		grid-template-columns: 1fr;
		gap: 12px;
		margin-top: 10px;
	}

	.video-card__link {
		display: grid;
		grid-template-columns: 128px minmax(0, 1fr);
		gap: 10px;
		align-items: center;
	}

	.video-card__thumb {
		border-radius: 4px;
	}

	.video-card__play {
		opacity: 1;
	}

	.video-card__play::before {
		width: 34px;
		height: 34px;
		background-size: 18px 18px;
	}

	.video-card__body {
		padding: 0;
	}

	.video-card__title {
		min-height: 0;
		font-size: 14px;
		color: #006699;
	}

	.video-card__desc {
		display: -webkit-box;
		-webkit-line-clamp: 2;
		-webkit-box-orient: vertical;
		line-clamp: 2;
		overflow: hidden;
	}

	.video-card__meta {
		font-size: 12px;
	}

	.video-player--embed iframe {
		min-height: 220px;
	}

	/* Footer gallery: one horizontal strip, ~4 thumbs visible */
	.footer-gallery-wrap {
		--footer-gallery-size: calc((100% - 9px) / 4);
		padding: 10px 0;
	}

	.footer-gallery-wrap > .inner {
		padding: 0;
		max-width: 100%;
	}

	.footer-gallery-grid,
	.footer-gallery-carousel {
		overflow-x: auto;
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
		padding: 0 10px;
	}

	.footer-gallery-grid::-webkit-scrollbar,
	.footer-gallery-carousel::-webkit-scrollbar {
		display: none;
	}

	.footer-gallery-grid {
		flex-wrap: nowrap;
		gap: 3px;
	}

	.footer-gallery-track {
		animation: none;
	}

	.footer-gallery-item {
		flex: 0 0 var(--footer-gallery-size);
		width: var(--footer-gallery-size);
		max-width: 96px;
	}

	.footer-gallery-item img {
		object-fit: cover;
	}

	.site-footer {
		padding: 12px 14px 20px;
	}

	.site-info,
	.site-beian {
		font-size: 11px;
		line-height: 1.55;
		word-break: break-word;
	}

	.page-layout {
		padding: 12px 8px 28px;
	}

	.section-title {
		font-size: 16px;
	}
}

@media (max-width: 480px) {
	/* Keep About images side-by-side like design */
	.home-featured-images img {
		height: 96px;
	}

	.treatment-card {
		grid-template-columns: 1fr;
	}

	.treatment-card__image {
		width: 100%;
		max-width: none;
		height: auto;
		aspect-ratio: 16 / 10;
	}

	/* Keep list cards side-by-side on small phones (match design) */
	.reference-media-row,
	.reference-page--stories .story-card,
	.story-card {
		grid-template-columns: 96px minmax(0, 1fr);
	}

	.reference-media-row--no-image,
	.reference-page--stories .story-card--no-image,
	.story-card--no-image {
		grid-template-columns: minmax(0, 1fr);
	}

	.reference-media-row__image,
	.reference-page--stories .story-card__image,
	.story-card__image {
		width: 96px;
		height: 70px;
		max-width: none;
		aspect-ratio: auto;
		object-fit: cover;
	}

	.reference-about-gallery {
		grid-template-columns: repeat(2, 1fr);
	}

	.reference-about-gallery img {
		height: 72px;
	}

	.reference-expert {
		grid-template-columns: 72px minmax(0, 1fr);
		gap: 10px;
		padding: 10px 0;
	}

	.reference-expert--no-image {
		grid-template-columns: minmax(0, 1fr);
	}

	.reference-expert__image {
		width: 72px;
		height: 90px;
	}

	.reference-media-row__content h2,
	.reference-expert h2 {
		font-size: 14px;
	}

	.reference-media-row__content p,
	.reference-expert p {
		font-size: 12px;
		line-height: 1.45;
	}

	.reference-more-link {
		font-size: 12px;
	}

	.reference-page--faq .faq-item summary {
		padding: 10px 12px;
		font-size: 14px;
	}

	.reference-contact-form label {
		font-size: 13px;
		margin-bottom: 4px;
	}

	.reference-contact-form input,
	.reference-contact-form textarea {
		padding: 10px;
		font-size: 14px;
	}

	.reference-contact-form button {
		width: 100%;
		padding: 12px 16px;
		font-size: 15px;
	}

	.reference-contact-form__row,
	.reference-contact-grid {
		grid-template-columns: 1fr;
	}

	.video-card__link {
		grid-template-columns: 112px minmax(0, 1fr);
		gap: 8px;
	}

	.video-card__title {
		font-size: 13px;
	}

	.banner-slider,
	.banner-slide img {
		height: 168px;
	}

	.footer-gallery-wrap {
		--footer-gallery-size: calc((100% - 9px) / 4);
	}

	.footer-gallery-item {
		max-width: none;
	}

	.archive-list li {
		flex-direction: column;
		align-items: flex-start;
		gap: 2px;
	}

	.panel-list--services {
		grid-template-columns: 1fr 1fr;
		font-size: 11px;
		column-gap: 8px;
	}

	.panel-list--services li {
		padding: 8px 0 8px 18px;
	}
}

/* Keep shell layout stable across languages */
.site-header,
.header-top,
.header-lang,
.main-navigation,
.primary-menu,
.menu-toggle,
.mobile-section-chips,
.three-columns,
.panel-header,
.footer-gallery-wrap,
.site-footer {
	direction: ltr;
}

body.lang-es .primary-menu a,
body.lang-ar .primary-menu a {
	padding: 8px 10px;
	font-size: 11px;
}

/* Arabic: RTL text only inside content areas */
body.lang-ar .entry-content,
body.lang-ar .panel-body,
body.lang-ar .site-info,
body.lang-ar .archive-list,
body.lang-ar .enterprise-page {
	direction: rtl;
	text-align: right;
}
