.elementor-34226 .elementor-element.elementor-element-352b0fc{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-34226 .elementor-element.elementor-element-ef7bcf5{--display:flex;--justify-content:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-34226 .elementor-element.elementor-element-6545523{color:#000000;}.elementor-34226 .elementor-element.elementor-element-62d9983{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:50px;--margin-left:0px;--margin-right:0px;}.elementor-34226 .elementor-element.elementor-element-bffc956{--display:flex;}.elementor-widget-divider{--divider-color:var( --e-global-color-secondary );}.elementor-widget-divider .elementor-divider__text{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-divider.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-34226 .elementor-element.elementor-element-0028b31{--divider-border-style:solid;--divider-color:#000;--divider-border-width:1px;}.elementor-34226 .elementor-element.elementor-element-0028b31 .elementor-divider-separator{width:100%;}.elementor-34226 .elementor-element.elementor-element-0028b31 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-34226 .elementor-element.elementor-element-88427af{color:var( --e-global-color-accent );}.elementor-34226 .elementor-element.elementor-element-2c53bad{color:var( --e-global-color-accent );}.elementor-34226 .elementor-element.elementor-element-8a35e02{color:var( --e-global-color-accent );}.elementor-34226 .elementor-element.elementor-element-36562f2 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-34226 .elementor-element.elementor-element-36562f2{color:var( --e-global-color-accent );}.elementor-34226 .elementor-element.elementor-element-fb78f1c > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-34226 .elementor-element.elementor-element-fb78f1c{color:var( --e-global-color-accent );}.elementor-34226 .elementor-element.elementor-element-2234031 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-34226 .elementor-element.elementor-element-2234031{font-family:"Poppins", Sans-serif;font-weight:400;color:var( --e-global-color-accent );}.elementor-34226 .elementor-element.elementor-element-f487a69{--divider-border-style:solid;--divider-color:#000;--divider-border-width:1px;}.elementor-34226 .elementor-element.elementor-element-f487a69 .elementor-divider-separator{width:100%;}.elementor-34226 .elementor-element.elementor-element-f487a69 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-34226 .elementor-element.elementor-element-186c5a7 > .elementor-widget-container{padding:0px 0px 10px 0px;}.elementor-34226 .elementor-element.elementor-element-186c5a7.elementor-element{--align-self:flex-start;}.elementor-34226 .elementor-element.elementor-element-186c5a7{text-align:start;}.elementor-34226 .elementor-element.elementor-element-186c5a7 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:2.2rem;font-weight:700;color:#28249F;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-34226 .elementor-element.elementor-element-a103f82 img{width:100%;max-width:100%;}.elementor-34226 .elementor-element.elementor-element-37feafe{--divider-border-style:solid;--divider-color:#000;--divider-border-width:1px;}.elementor-34226 .elementor-element.elementor-element-37feafe .elementor-divider-separator{width:100%;}.elementor-34226 .elementor-element.elementor-element-37feafe .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-34226 .elementor-element.elementor-element-9b5de4d > .elementor-widget-container{padding:0px 0px 10px 0px;}.elementor-34226 .elementor-element.elementor-element-9b5de4d.elementor-element{--align-self:flex-start;}.elementor-34226 .elementor-element.elementor-element-9b5de4d{text-align:start;}.elementor-34226 .elementor-element.elementor-element-9b5de4d .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:2.2rem;font-weight:700;color:#28249F;}.elementor-34226 .elementor-element.elementor-element-1621021 img{width:100%;max-width:100%;}.elementor-34226 .elementor-element.elementor-element-8f78f0e{--display:flex;}.elementor-34226 .elementor-element.elementor-element-5b42ac1 > .elementor-widget-container{padding:0px 0px 0px 20px;}.elementor-34226 .elementor-element.elementor-element-5b42ac1{color:var( --e-global-color-primary );}.elementor-34226 .elementor-element.elementor-element-25370fb{--display:flex;}.elementor-34226 .elementor-element.elementor-element-3d67e55{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:400;color:#5B5B5B;}.elementor-34226 .elementor-element.elementor-element-1263e00{--display:flex;}.elementor-34226 .elementor-element.elementor-element-497e350{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:400;color:#5B5B5B;}.elementor-34226 .elementor-element.elementor-element-cf32cb5{--display:flex;}.elementor-34226 .elementor-element.elementor-element-0309eaf{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:400;color:#5B5B5B;}.elementor-34226 .elementor-element.elementor-element-fad96f0{--display:flex;}.elementor-34226 .elementor-element.elementor-element-003af8a{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:400;color:#5B5B5B;}.elementor-34226 .elementor-element.elementor-element-f7b08d0{--display:flex;}.elementor-34226 .elementor-element.elementor-element-a336d58{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:400;color:#5B5B5B;}.elementor-34226 .elementor-element.elementor-element-6af3d45{--display:flex;}.elementor-34226 .elementor-element.elementor-element-33517ab{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:400;color:#5B5B5B;}.elementor-34226 .elementor-element.elementor-element-e992cee{--display:flex;}.elementor-34226 .elementor-element.elementor-element-04aed8e{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:400;color:#5B5B5B;}.elementor-34226 .elementor-element.elementor-element-033aad5{--n-accordion-title-font-size:1rem;--n-accordion-title-justify-content:space-between;--n-accordion-title-flex-grow:1;--n-accordion-title-icon-order:initial;--n-accordion-item-title-space-between:0px;--n-accordion-item-title-distance-from-content:0px;--n-accordion-icon-size:16px;}.elementor-34226 .elementor-element.elementor-element-033aad5 > .elementor-widget-container > .e-n-accordion > .e-n-accordion-item > .e-n-accordion-item-title{border-style:none;}:where( .elementor-34226 .elementor-element.elementor-element-033aad5 > .elementor-widget-container > .e-n-accordion > .e-n-accordion-item > .e-n-accordion-item-title > .e-n-accordion-item-title-header ) > .e-n-accordion-item-title-text{font-family:"Poppins", Sans-serif;font-weight:600;}.elementor-34226 .elementor-element.elementor-element-183317d{--divider-border-style:solid;--divider-color:#000;--divider-border-width:1px;}.elementor-34226 .elementor-element.elementor-element-183317d .elementor-divider-separator{width:100%;}.elementor-34226 .elementor-element.elementor-element-183317d .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-34226 .elementor-element.elementor-element-195742d img{width:100%;max-width:100%;}.elementor-34226 .elementor-element.elementor-element-c314f8d{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--margin-top:0px;--margin-bottom:50px;--margin-left:0px;--margin-right:0px;}.elementor-34226 .elementor-element.elementor-element-aab9dda{width:100%;max-width:100%;}.elementor-34226 .elementor-element.elementor-element-cf4bb5a{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--margin-top:0px;--margin-bottom:50px;--margin-left:0px;--margin-right:0px;}@media(max-width:1024px){.elementor-34226 .elementor-element.elementor-element-352b0fc{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-34226 .elementor-element.elementor-element-62d9983{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-34226 .elementor-element.elementor-element-c314f8d{--margin-top:4px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}@media(max-width:767px){.elementor-34226 .elementor-element.elementor-element-186c5a7 .elementor-heading-title{font-size:24px;}.elementor-34226 .elementor-element.elementor-element-9b5de4d .elementor-heading-title{font-size:24px;}.elementor-34226 .elementor-element.elementor-element-3d67e55{font-size:16px;}.elementor-34226 .elementor-element.elementor-element-497e350{font-size:16px;}.elementor-34226 .elementor-element.elementor-element-0309eaf{font-size:16px;}.elementor-34226 .elementor-element.elementor-element-003af8a{font-size:16px;}.elementor-34226 .elementor-element.elementor-element-a336d58{font-size:16px;}.elementor-34226 .elementor-element.elementor-element-33517ab{font-size:16px;}.elementor-34226 .elementor-element.elementor-element-04aed8e{font-size:16px;}.elementor-34226 .elementor-element.elementor-element-c314f8d.e-con{--order:8;}.elementor-34226 .elementor-element.elementor-element-cf4bb5a{--padding-top:50px;--padding-bottom:60px;--padding-left:0px;--padding-right:0px;}.elementor-34226 .elementor-element.elementor-element-cf4bb5a.e-con{--order:9;}}@media(min-width:768px){.elementor-34226 .elementor-element.elementor-element-c314f8d{--content-width:1650px;}}@media(max-width:1024px) and (min-width:768px){.elementor-34226 .elementor-element.elementor-element-c314f8d{--content-width:695px;}}/* Start custom CSS for text-editor, class: .elementor-element-6545523 *//* ==========================================================================
   Title with accent border + content
   ========================================================================== */

.title-with-accent {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 4rem;
	align-items: start;
	margin: 2.5rem 0;
	font-family: "Poppins", sans-serif;
}

.title-with-accent__heading {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
}

.title-with-accent__title {
	margin: 0;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	line-height: 1.2;
	color: #28249F;
}

.title-with-accent__border {
	width: 14rem; /* 224px */
	height: 0.625rem; /* 10px */
	background-image: url("http://staging.thedmccollective.com/wp-content/uploads/2024/09/red-and-blue-border-min.jpg");
	background-size: 100% 100%;
	background-repeat: no-repeat;
	background-position: left center;
}

.title-with-accent__content p {
	margin: 0 0 1rem 0;
	font-size: 0.9375rem; /* 15px */
	line-height: 1.7;
	color: #333;
}

.title-with-accent__content p:last-child {
	margin-bottom: 0;
}

/* ==========================================================================
   Responsive
   ========================================================================== */

@media (max-width: 47.9375rem) { /* 767px */
	.title-with-accent {
		grid-template-columns: 1fr;
		gap: 1.25rem;
	}

	.title-with-accent__title {
		font-size: 1.625rem; /* 26px */
	}

	.title-with-accent__border {
		width: 12rem;
	}
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a5a64c3 *//* ==========================================================================
   GROUP ACCOMMODATION — intro + CTA panel
   ========================================================================== */

.group-accom {
	margin: 0 0 32px 0;
}

/* ----- Top intro: two columns ----- */

.group-accom__intro {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 64px;
	align-items: start;
	margin-bottom: 32px;
}

.group-accom__title {
	margin: 0 0 18px 0;
	font-size: 28px;
	font-weight: 700;
	line-height: 1.25;
	color: #28249F;
}

.group-accom__subtitle {
	margin: 0;
	font-size: 1.2rem;
	line-height: 1.65;
	color: #A7A7A7;
}

.group-accom__intro-right p {
	margin: 0 0 14px 0;
	font-size: 1.2rem;
	line-height: 1.65;
	color: #000;
}

.group-accom__intro-right p:last-child {
	margin-bottom: 0;
}

/* ==========================================================================
   CTA panel — purple block with light blue accents
   ========================================================================== */

.group-accom__cta {
	background: #28249F;
	border-radius: 20px;
	padding: 36px 40px 40px;
	text-align: center;
	color: #fff;
}

.group-accom__cta-heading {
	margin: 0 0 14px 0;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.3;
	color: #75C3EE;
}

.group-accom__cta-copy {
	margin: 0 auto;
	max-width: 620px;
	font-size: 1.2rem;
	line-height: 1.6;
	color: #fff;
}

.group-accom__cta-divider {
	width: 100%;
	max-width: 620px;
	height: 1px;
	margin: 22px auto 18px;
	border-top: 1px dashed rgba(255, 255, 255, 0.5);
	background: transparent;
}

.group-accom__cta-label {
	margin: 0 0 18px 0;
	font-size: 1.2rem;
	font-weight: 700;
	color: #75C3EE;
}

.group-accom__cta-buttons {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 14px;
}

/* Light-blue pill button */
.btn-pill-light {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 180px;
	padding: 14px 28px;
	background: #75C3EE;
	color: #28249F !important;
	font-size: 1rem;
	font-weight: 700;
	text-decoration: none;
	border-radius: 999px;
	transition: background-color 0.2s ease, transform 0.15s ease;
}

.btn-pill-light:hover,
.btn-pill-light:focus {
	background: #5fb4e3;
	color: #28249F !important;
	text-decoration: none;
}

.btn-pill-light:focus-visible {
	outline: 2px solid #fff;
	outline-offset: 3px;
}

.btn-pill-light:active {
	transform: translateY(1px);
}

/* ==========================================================================
   Responsive
   ========================================================================== */

@media (max-width: 991px) {
	.group-accom__intro {
		grid-template-columns: 1fr;
		gap: 24px;
	}

	.group-accom__title {
		font-size: 24px;
	}
}

@media (max-width: 575px) {
	.group-accom__cta {
		padding: 28px 22px 32px;
		border-radius: 16px;
	}

	.group-accom__cta-heading {
		font-size: 1rem;
	}

	.group-accom__cta-buttons {
		flex-direction: column;
		gap: 10px;
	}

	.btn-pill-light {
		width: 100%;
		min-width: 0;
	}
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-88427af */.two-col-text__col b {
	color: #28249F;
	font-weight: 700;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-2c53bad *//* ==========================================================================
   Gallery grid — desktop layout (1 main + 2 stacked)
   ========================================================================== */

.gallery-grid {
	display: grid;
	grid-template-columns: 2fr 1fr;
	gap: 1rem;
	margin: 1.5rem 0 2rem 0;
}

.gallery-grid__main {
	border-radius: 0.75rem;
	overflow: hidden;
}

.gallery-grid__main img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	min-height: 25rem; /* 400px — keeps the main image substantial */
}

.gallery-grid__side {
	display: grid;
	grid-template-rows: 1fr 1fr;
	gap: 1rem;
}

.gallery-grid__item {
	border-radius: 0.75rem;
	overflow: hidden;
}

.gallery-grid__item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* ==========================================================================
   Gallery carousel — mobile only
   ========================================================================== */

.gallery-carousel {
	display: none;
	width: 100%;
	margin: 1.5rem 0 2rem 0;
}

.gallery-carousel__carousel {
	position: relative;
	width: 100%;
	overflow: hidden;
	border-radius: 0.75rem;
}

.gallery-carousel__track {
	display: flex;
	flex-wrap: nowrap;
	width: 100%;
}

.gallery-carousel__slide {
	flex: 0 0 100%;
	width: 100%;
	min-width: 100%;
	display: none;
}

.gallery-carousel__slide.is-active {
	display: block;
}

.gallery-carousel__slide img {
	width: 100%;
	height: auto;
	display: block;
	object-fit: cover;
}

/* ----- Carousel arrows ----- */

.gallery-carousel__arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 3;
	width: 2.5rem;
	height: 2.5rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: transparent;
	color: #fff;
	border: none;
	padding: 0;
	cursor: pointer;
	filter: drop-shadow(0 1px 3px rgba(0, 0, 0, 0.5));
	transition: opacity 0.2s ease;
}

.gallery-carousel__arrow:hover,
.gallery-carousel__arrow:focus {
	background: transparent;
	outline: none;
	opacity: 0.85;
}

.gallery-carousel__arrow svg {
	width: 1.5rem;
	height: 1.5rem;
}

.gallery-carousel__arrow--prev { left: 0.75rem; }
.gallery-carousel__arrow--next { right: 0.75rem; }

/* ----- Carousel dots ----- */

.gallery-carousel__dots {
	position: absolute;
	bottom: 0.875rem;
	left: 50%;
	transform: translateX(-50%);
	z-index: 3;
	display: flex;
	gap: 0.5rem;
	padding: 0.375rem 0.625rem;
	background: rgba(0, 0, 0, 0.25);
	border-radius: 999px;
}

.gallery-carousel__dot {
	width: 0.5rem;
	height: 0.5rem;
	padding: 0;
	border: none;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.5);
	cursor: pointer;
	transition: background-color 0.2s ease, transform 0.2s ease;
}

.gallery-carousel__dot.is-active {
	background: #fff;
	transform: scale(1.2);
}

/* ==========================================================================
   Responsive — swap grid for carousel on mobile
   ========================================================================== */

@media (max-width: 47.9375rem) { /* 767px */
	.gallery-grid {
		display: none;
	}

	.gallery-carousel {
		display: block;
	}
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-8a35e02 *//* ==========================================================================
   Team Experiences — 2-column layout with gray info panel
   ========================================================================== */

.team-experiences {
	display: grid;
	grid-template-columns: 1fr 1.2fr;
	gap: 3.5rem;
	align-items: start;
	margin: 1.5rem 0 2rem 0;
	font-family: "Poppins", sans-serif;
}

/* ----- LEFT column: copy ----- */

.team-experiences__left p {
	margin: 0 0 1.5rem 0;
	font-size: 0.9375rem; /* 15px */
	line-height: 1.7;
	color: #333;
}

.team-experiences__left p:last-child {
	margin-bottom: 0;
}

.team-experiences__left b {
	color: #000;
	font-weight: 700;
}

/* ----- RIGHT column: gray info panel ----- */

.team-experiences__panel {
	background: #F1F2F2;
	border-radius: 0.75rem;
	padding: 2rem 2.25rem;
	align-self: start; /* keeps panel its natural height, doesn't stretch */
}

.team-experiences__panel p {
	margin: 0 0 0.75rem 0;
	font-size: 14px;
	line-height: 1.65;
	color: #333;
}

.team-experiences__panel p:last-child {
    	font-size: 14px;
	margin-bottom: 0;
}

.team-experiences__panel b {
	color: #000;
		font-size: 14px;
	font-weight: 700;
}

/* Tighter spacing for lists inside the panel */
.team-experiences__panel .bonn-services-list {
    	font-size: 14px;
	margin: 0.25rem 0 1.25rem 0;
}

.team-experiences__panel .bonn-services-list:last-child {
    	font-size: 14px;
	margin-bottom: 0;
}

/* ==========================================================================
   CTA button row — centered below the two columns
   ========================================================================== */

.team-experiences__cta {
	display: flex;
	justify-content: center;
	margin: 2rem 0 2.5rem 0;
}

.team-experiences__cta .btn-solid {
	min-width: 22rem;
}

/* ==========================================================================
   Responsive
   ========================================================================== */

@media (max-width: 47.9375rem) { /* 767px */
	.team-experiences {
		grid-template-columns: 1fr;
		gap: 1.5rem;
	}

	.team-experiences__left p {
		margin-bottom: 1rem;
	}

	.team-experiences__panel {
		padding: 1.5rem 1.5rem;
	}

	.team-experiences__cta .btn-solid {
		min-width: 0;
		width: 100%;
	}
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-36562f2 *//* ==========================================================================
   Gallery grid — desktop layout (1 main + 2 stacked)
   ========================================================================== */

.gallery-grid {
	display: grid;
	grid-template-columns: 2fr 1fr;
	gap: 1rem;
	margin: 1.5rem 0 2rem 0;
}

.gallery-grid__main {
	border-radius: 0.75rem;
	overflow: hidden;
}

.gallery-grid__main img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	min-height: 25rem; /* 400px — keeps the main image substantial */
}

.gallery-grid__side {
	display: grid;
	grid-template-rows: 1fr 1fr;
	gap: 1rem;
}

.gallery-grid__item {
	border-radius: 0.75rem;
	overflow: hidden;
}

.gallery-grid__item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* ==========================================================================
   Gallery carousel — mobile only
   ========================================================================== */

.gallery-carousel {
	display: none;
	width: 100%;
	margin: 1.5rem 0 2rem 0;
}

.gallery-carousel__carousel {
	position: relative;
	width: 100%;
	overflow: hidden;
	border-radius: 0.75rem;
}

.gallery-carousel__track {
	display: flex;
	flex-wrap: nowrap;
	width: 100%;
}

.gallery-carousel__slide {
	flex: 0 0 100%;
	width: 100%;
	min-width: 100%;
	display: none;
}

.gallery-carousel__slide.is-active {
	display: block;
}

.gallery-carousel__slide img {
	width: 100%;
	height: auto;
	display: block;
	object-fit: cover;
}

/* ----- Carousel arrows ----- */

.gallery-carousel__arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 3;
	width: 2.5rem;
	height: 2.5rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: transparent;
	color: #fff;
	border: none;
	padding: 0;
	cursor: pointer;
	filter: drop-shadow(0 1px 3px rgba(0, 0, 0, 0.5));
	transition: opacity 0.2s ease;
}

.gallery-carousel__arrow:hover,
.gallery-carousel__arrow:focus {
	background: transparent;
	outline: none;
	opacity: 0.85;
}

.gallery-carousel__arrow svg {
	width: 1.5rem;
	height: 1.5rem;
}

.gallery-carousel__arrow--prev { left: 0.75rem; }
.gallery-carousel__arrow--next { right: 0.75rem; }

/* ----- Carousel dots ----- */

.gallery-carousel__dots {
	position: absolute;
	bottom: 0.875rem;
	left: 50%;
	transform: translateX(-50%);
	z-index: 3;
	display: flex;
	gap: 0.5rem;
	padding: 0.375rem 0.625rem;
	background: rgba(0, 0, 0, 0.25);
	border-radius: 999px;
}

.gallery-carousel__dot {
	width: 0.5rem;
	height: 0.5rem;
	padding: 0;
	border: none;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.5);
	cursor: pointer;
	transition: background-color 0.2s ease, transform 0.2s ease;
}

.gallery-carousel__dot.is-active {
	background: #fff;
	transform: scale(1.2);
}

/* ==========================================================================
   Responsive — swap grid for carousel on mobile
   ========================================================================== */

@media (max-width: 47.9375rem) { /* 767px */
	.gallery-grid {
		display: none;
	}

	.gallery-carousel {
		display: block;
	}
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-2234031 *//* ==========================================================================
   Locations grid — 2-column country list with dashed dividers
   ========================================================================== */
     
.section-title-3{
 font-weight: 700;
    max-width: 50%;
}

.locations-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0 3rem;
	margin: 1.5rem 0 1rem 0;
	font-family: "Poppins", sans-serif;
}

.locations-grid__item {
	padding: 1.25rem 0;
	border-bottom: 1px dashed #B0B0B0;
}

.locations-grid__item:first-child,
.locations-grid__item:nth-child(2) {
	padding-top: 0.5rem;
}

.locations-grid__title {
	margin: 0 0 0.75rem 0;
	font-family: "Poppins", sans-serif;
	font-size: 1rem; /* 16px */
	font-weight: 700;
	line-height: 1.3;
	color: #000;
}

.locations-grid__copy {
	margin: 0;
	font-size: 0.9375rem; /* 15px */
	line-height: 1.65;
	color: #333;
}

.locations-grid__copy a {
	color: #28249F;
	text-decoration: none;
	transition: opacity 0.2s ease;
}

.locations-grid__copy a:hover,
.locations-grid__copy a:focus {
	color: #28249F;
	text-decoration: underline;
}

/* ==========================================================================
   CTA button row — centered below the grid
   ========================================================================== */

.locations-grid__cta {
	display: flex;
	justify-content: center;
	margin: 2rem 0 2.5rem 0;
}

.locations-grid__cta .btn-solid {
	min-width: 18rem;
}

/* ==========================================================================
   Responsive
   ========================================================================== */

@media (max-width: 47.9375rem) { /* 767px */
	.locations-grid {
		grid-template-columns: 1fr;
		gap: 0;
	}
  
.section-title-3{
    font-size:1.5rem;
    font-weight: 700;
    max-width: 100%;
}
	.locations-grid__item:first-child,
	.locations-grid__item:nth-child(2) {
		padding-top: 1.25rem;
	}

	.locations-grid__item:first-child {
		padding-top: 0.5rem;
	}

	.locations-grid__cta .btn-solid {
		min-width: 0;
		width: 100%;
	}
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-59b7894 *//* ==========================================================================
   Brief section — title left + body content right
   ========================================================================== */
   
   

.brief-section__cta {
	display: flex;
	justify-content: center;
	margin: 2rem 0 2.5rem 0;
}

.brief-section__cta .btn-solid {
	min-width: 22rem;
}

@media (max-width: 47.9375rem) { /* 767px */
	.brief-section__cta .btn-solid {
		min-width: 0;
		width: 100%;
	}
}

.brief-section {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 4rem;
	align-items: start;
	margin: 2rem 0;
	font-family: "Poppins", sans-serif;
}

.brief-section__title {
	max-width: 100%; 
}

.brief-section__title h2 {
	margin: 0;
	font-family: "Poppins", sans-serif;
	font-size: 1.875rem; /* 30px */
	font-weight: 700;
	line-height: 1.2;
	color: #28249F;
}

.brief-section__content p {
	margin: 0 0 1rem 0;
	font-size: 0.9375rem; /* 15px */
	line-height: 1.7;
	color: #333;
}

.brief-section__content p:last-child {
	margin-bottom: 0;
}

/* ==========================================================================
   Responsive
   ========================================================================== */

@media (max-width: 47.9375rem) { /* 767px */
	.brief-section {
		grid-template-columns: 1fr;
		gap: 1rem;
	}

	.brief-section__title {
		max-width: 100%;
	}

	.brief-section__title h2 {
		font-size: 1.5rem; /* 24px */
	}
}/* End custom CSS */