/*
 * Mobile layout overrides — max-width: 1023.98px only.
 *
 * This file is enqueued globally (every page) so sticky bar padding
 * and footer stacking work site-wide. Section overrides only affect
 * elements that are actually present on each page.
 *
 * Source: Figma node 266:578 (390 × 5179 px mobile design).
 *
 * @package Azuri_Group
 */

/* ==========================================================================
   Global — overflow-x fix + sticky bar body padding
   ========================================================================== */

@media (max-width: 1023.98px) {
	html,
	body {
		overflow-x: hidden; /* prevent any element from causing horizontal scroll */
		width: 100%;
	}

	body.azuri-sticky-bar-active {
		padding-bottom: 72px; /* height of the sticky bar */
	}

	/* Prevent images and media from stretching wider than their container */
	img,
	video,
	iframe,
	svg {
		max-width: 100%;
	}

	/* Constrain any azuri-container that might overflow */
	.azuri-container {
		box-sizing: border-box;
		max-width: 100%;
	}
}

/* ==========================================================================
   Header Top (announcement bar) — mobile: centered hours text only
   ========================================================================== */

@media (max-width: 1023.98px) {
	/* Hide the search form on mobile — it's available via the sticky bar Search */
	.azuri-header-top__search {
		display: none !important;
	}

	/* Hide the CTA pill on mobile */
	.azuri-header-top__item--cta {
		display: none !important;
	}

	/* Center the remaining notice text */
	.azuri-header-top__inner {
		justify-content: center;
		padding: 6px var(--azuri-space-4);
	}

	.azuri-header-top__list {
		justify-content: center;
	}

	/* Show only the first notice item */
	.azuri-header-top__item:not(:first-child) {
		display: none;
	}
}

/* ==========================================================================
   Main Header — mobile: logo + search icon + hamburger only
   ========================================================================== */

/* Desktop: hide the mobile search icon */
.azuri-header-actions__mobile-search {
	display: none;
}

@media (max-width: 1023.98px) {
	/* Show the search icon */
	.azuri-header-actions__mobile-search {
		align-items: center;
		color: var(--azuri-color-navy, #1c2160);
		display: inline-flex;
		justify-content: center;
		padding: 4px;
		text-decoration: none;
	}

	.azuri-header-actions__mobile-search-icon {
		--azuri-icon-size: 18px;
	}

	/* Hide phone number and booking buttons — replaced by mobile-booking-bar sub-bar */
	.azuri-header-actions__phone,
	.azuri-header-actions .azuri-btn--medical,
	.azuri-header-actions .azuri-btn--cosmetic {
		display: none !important;
	}

	/*
	 * Counter GeneratePress' @media (max-width:768px) rule which applies
	 * `flex-direction: column` to `.inside-header`.  Our header must remain
	 * a single horizontal row: [logo] [nav/hamburger] [actions].
	 */
	.azuri-header__inner,
	.inside-header.azuri-header__inner,
	.site-header .inside-header.azuri-header__inner {
		align-items: center !important;
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		justify-content: space-between;
		min-height: 64px;
		padding: var(--azuri-space-3) var(--azuri-space-4);
		text-align: left !important;
	}

	/* Logo stays left */
	.azuri-header__logo {
		flex: 0 0 auto;
		order: 1;
	}

	/* Nav (hamburger) sits in the middle / push to right */
	.azuri-header__nav,
	nav#site-navigation.main-navigation {
		flex: 1 1 auto !important;
		justify-content: flex-end;
		order: 2;
	}

	/* Actions cluster (search icon) sits last */
	.azuri-header__actions {
		flex: 0 0 auto;
		order: 3;
	}

	/* Prevent GP mobile-nav reset from interfering */
	.site-header .inside-header {
		flex-direction: row !important;
	}
}

/* ==========================================================================
   Hero
   ========================================================================== */

@media (max-width: 1023.98px) {
	.azuri-hero {
		min-height: calc(100svh - 64px);
		min-height: calc(100vh - 64px);
	}

	.azuri-hero__inner {
		align-items: flex-end;
		padding: var(--azuri-space-8) var(--azuri-space-4) var(--azuri-space-10);
	}

	.azuri-hero__content {
		gap: var(--azuri-space-4);
		max-width: 100%;
	}

	/* Eyebrow / kicker text above heading */
	.azuri-hero__eyebrow {
		color: rgba(255, 255, 255, 0.5);
		font-size: 10px;
		font-weight: 500;
		letter-spacing: 1.12px;
		line-height: 1.4;
		text-transform: uppercase;
	}

	.azuri-hero__heading {
		font-size: 48px;
		letter-spacing: -0.036em;
		line-height: 1.0;
	}

	.azuri-hero__subheading {
		color: rgba(255, 255, 255, 0.7);
		font-size: 13px;
		line-height: 1.6;
	}

	.azuri-hero__actions {
		flex-direction: row;
		flex-wrap: wrap;
		gap: 10px;
		justify-content: flex-start;
	}

	/* Base button shape */
	.azuri-hero__actions .azuri-btn {
		border-radius: 20px;
		font-size: 13px;
		font-weight: 500;
		height: 41px;
		justify-content: center;
		min-width: 138px;
		padding: 0 20px;
	}

	/* Medical (teal filled) */
	.azuri-hero__actions .azuri-btn--medical {
		background-color: #2aadb5;
		border-color: #2aadb5;
		color: #ffffff;
	}

	/* Cosmetic (ghost / outline on dark bg) */
	.azuri-hero__actions .azuri-btn--cosmetic {
		background-color: transparent;
		border: 1px solid rgba(255, 255, 255, 0.55);
		color: #ffffff;
		min-width: 148px;
	}
}

/* ==========================================================================
   Stats bar
   ========================================================================== */

@media (max-width: 1023.98px) {
	.azuri-stats__inner {
		padding: 0 var(--azuri-space-4);
		--azuri-stats-min-height: auto;
	}

	/* 2×2 grid — each stat is 50% wide, overrides azuri_xs_col_12 (100%) */
	.azuri-stats__col {
		width: 50% !important;
		flex: 0 0 50% !important;
		max-width: 50%;
	}

	.azuri-stats__item {
		align-items: center;
		gap: 3px;
		padding: 14px var(--azuri-space-3);
	}

	.azuri-stats__value {
		font-size: 22px;
		letter-spacing: -0.03em;
	}

	.azuri-stats__label {
		font-size: 11px;
		line-height: 1.4;
	}

	/*
	 * Dividers: vertical between the two columns, horizontal between the rows.
	 * The ::before pseudo is used for vertical dividers.
	 * stats.css @768px turns them horizontal — we restore vertical here.
	 */
	.azuri-stats__col + .azuri-stats__col::before {
		bottom: 8px;
		height: auto;
		left: 0;
		right: auto;
		top: 8px;
		width: 0.86px;
	}

	/* Col 3 starts the second row — no vertical divider before it */
	.azuri-stats__col:nth-child(3)::before {
		display: none;
	}

	/* Horizontal border between rows: top border on row-2 items */
	.azuri-stats__col:nth-child(n+3) .azuri-stats__item {
		border-top: 0.86px solid rgba(255, 255, 255, 0.22);
	}
}

/* ==========================================================================
   Speciality Services — peek carousel on mobile (Slick.js)
   ========================================================================== */

@media (max-width: 1023.98px) {
	.azuri-services__inner {
		padding: 40px 0 48px;
		overflow: hidden; /* contains slick track */
	}

	/* Section header — full horizontal padding */
	.azuri-services__header.equal-height {
		align-items: flex-start;
		flex-direction: column;
		gap: var(--azuri-space-4);
		padding-left: var(--azuri-space-4);
		padding-right: var(--azuri-space-4);
	}

	.azuri-services__intro-col,
	.azuri-services__cta-col {
		width: 100% !important;
	}

	.azuri-services__intro,
	.azuri-services__intro-col .azuri_inner {
		max-width: 100%;
	}

	.azuri-services__cta-col .azuri_inner,
	.azuri-services__cta-wrap {
		justify-content: flex-start;
	}

	.azuri-services__heading {
		font-size: 28px;
	}

	/* -----------------------------------------------------------------------
	   Slick carousel — activated when .azuri-services__grid--slick is present
	   ----------------------------------------------------------------------- */

	/* Reset native grid gutter margins Slick will manage its own layout */
	.azuri-services__grid--slick {
		margin-left: 0;
		margin-right: 0;
		padding-left: 0;
		padding-right: 0;
		width: 100%;
	}

	/* Slick list: show peek of next card by leaving padding on the right */
	.azuri-services__grid--slick .slick-list {
		overflow: hidden;
		padding-left: 0 !important;
		padding-right: 24px !important;  /* subtle peek at wider breakpoints */
	}

	/* Slides: each .azuri-services__col is one slide */
	.azuri-services__grid--slick .azuri-services__col,
	.azuri-services__grid--slick .slick-slide {
		box-sizing: border-box;
		padding-right: 12px !important;
		width: auto;
		margin-bottom: 0;
	}

	/* ≤767px: 2 slides — restore larger peek */
	@media (max-width: 767px) {
		.azuri-services__grid--slick .slick-list {
			padding-right: 48px !important;
		}
	}

	/* Restore the inner card wrapper full width */
	.azuri-services__grid--slick .azuri_inner {
		height: 100%;
	}

	.azuri-services__grid--slick .azuri-services__card {
		height: 100%;
	}
    .azuri-services__grid {
        display: block !important;
    }
	/* Card link: set min-height so image fills slide on mobile */
	.azuri-services__card-link {
		min-height: 280px;
	}

	/* Card body — compact overlay on mobile */
	.azuri-services__card-body {
		gap: var(--azuri-space-2);
		padding: var(--azuri-space-4);
	}

	.azuri-services__card-title {
		font-size: 14px;
	}

	/* Mobile: clamp excerpt to 2 lines */
	.azuri-services__card-excerpt {
		display: -webkit-box;
		font-size: 12px;
		overflow: hidden;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
	}

	.azuri-services__card-cta {
		font-size: 11px;
	}

	/* -----------------------------------------------------------------------
	   Slick dots — match Figma (small teal dots, active wider pill)
	   ----------------------------------------------------------------------- */

	.azuri-services__dots {
		bottom: -32px;
		display: flex !important;
		gap: 6px;
		justify-content: center;
		left: 0;
		list-style: none;
		margin: 20px 0 0;
		padding: 0 16px 0;
		position: relative;
		text-align: center;
		width: 100%;
	}

	.azuri-services__dots li {
		display: inline-flex;
		line-height: 0;
		margin: 0;
		padding: 0;
	}

	.azuri-services__dots li button {
		background-color: #ccd2da;
		border: none;
		border-radius: 3px;
		cursor: pointer;
		font-size: 0;
		height: 6px;
		padding: 0;
		transition: background-color 0.2s ease, width 0.2s ease;
		width: 6px;
	}

	.azuri-services__dots li button:hover {
		background-color: #2aadb5;
	}

	.azuri-services__dots li.slick-active button {
		background-color: #2aadb5;
		width: 14px; /* active dot is a wider pill */
	}

	/*
	 * Desktop: CTA sits in the right column of the header (beside heading).
	 * Mobile:  hide the header CTA col — the standalone bottom CTA takes over.
	 */
	.azuri-services__cta-col {
		display: none !important;
	}

	/* Mobile-only bottom CTA — shown after the carousel + dots */
	.azuri-services__mobile-cta {
		display: flex;
		justify-content: center;
		margin-top: 20px;
		padding: 0 var(--azuri-space-4);
	}

	.azuri-services__mobile-cta .azuri-btn {
		border-radius: 20px;
		font-size: 13px;
		font-weight: 500;
		justify-content: center;
		padding: 10px 28px;
		width: 100%;
	}
}

/* ==========================================================================
   Mission / Brand statement
   ========================================================================== */

@media (max-width: 1023.98px) {
	.azuri-mission {
		--azuri-mission-top-pad: 56px;
		--azuri-mission-bottom-pad: 56px;
	}

	/* Center all inner content on mobile */
	.azuri-mission__inner {
		align-items: center;
		text-align: center;
	}

	/* Logo / brand mark centred at top */
	.azuri-mission__logo {
		display: block;
		margin-left: auto;
		margin-right: auto;
		max-width: 120px;
	}

	.azuri-mission__heading {
		font-size: 40px;
		letter-spacing: -0.03em;
		line-height: 1.05;
	}

	.azuri-mission__description {
		font-size: 14px;
		line-height: 1.65;
		max-width: 100%;
	}

	/* Stack buttons full-width vertically */
	.azuri-mission__actions {
		flex-direction: column;
		gap: var(--azuri-space-3);
		width: 100%;
	}

	.azuri-mission__actions .azuri-btn {
		justify-content: center;
		width: 100%;
	}

	/* Phone/call button styling on mission section */
	.azuri-mission__actions .azuri-btn--outline,
	.azuri-mission__actions .azuri-btn--ghost {
		border-radius: 20px;
	}
}

/* ==========================================================================
   Why Choose Us
   ========================================================================== */

@media (max-width: 1023.98px) {
	/* Dark navy background matching Figma */
	.azuri-why {
		background-color: #07111c;
	}

	.azuri-why__container {
		padding: 48px var(--azuri-space-4) 56px;
	}

	/* Stack: content on top, image below */
	.azuri-why__row .azuri_col {
		width: 100% !important;
	}

	.azuri-why__row {
		flex-direction: column;
		gap: var(--azuri-space-6);
	}

	/* Content first, image second on mobile */
	.azuri-why__media-col { order: 2; }
	.azuri-why__content-col { order: 1; }

	.azuri-why__heading {
		font-size: 40px;
		letter-spacing: -0.03em;
		line-height: 1.05;
	}

	.azuri-why__description {
		font-size: 14px;
		line-height: 1.65;
	}

	/* Checklist items */
	.azuri-why__list {
		gap: var(--azuri-space-3);
	}

	.azuri-why__list-item {
		font-size: 14px;
		gap: var(--azuri-space-2);
	}

	/* Teal check icon */
	.azuri-why__check-icon {
		color: #2aadb5;
		flex-shrink: 0;
	}

	.azuri-why__media {
		border-radius: 12px;
		height: 200px;
		min-height: 160px;
		object-fit: cover;
		overflow: hidden;
		width: 100%;
	}

	/* Image wrapper */
	.azuri-why__media-wrap {
		border-radius: 12px;
		overflow: hidden;
		width: 100%;
	}

	.azuri-why__media-wrap img {
		border-radius: 12px;
		height: 200px;
		object-fit: cover;
		width: 100%;
	}

	/* CTA button full-width */
	.azuri-why__cta {
		align-self: stretch;
		border-radius: 20px;
		justify-content: center;
		width: 100%;
	}
}

/* ==========================================================================
   Cosmetics — already has ≤600px override, bridge to 767px
   ========================================================================== */

@media (max-width: 1023.98px) {
	.azuri-cosmetics__inner {
		flex-direction: column;
		gap: 24px;
		padding: 40px 16px 48px;
	}

	.azuri-cosmetics__left {
		gap: 16px;
		padding-top: 0;
		width: 100%;
	}

	.azuri-cosmetics__heading {
		font-size: 40px;
		letter-spacing: -0.03em;
		line-height: 1.05;
	}

	.azuri-cosmetics__description {
		font-size: 14px;
		line-height: 1.65;
	}

	/* 2-column treatment grid (3 rows = 6 cards) */
	.azuri-cosmetics__grid {
		gap: 8px;
		grid-template-columns: repeat(2, 1fr);
		width: 100%;
	}

	.azuri-cosmetics__card-wrap {
		aspect-ratio: 1 / 1;
	}

	.azuri-cosmetics__card-label {
		font-size: 12px;
		font-weight: 500;
	}

	/* Mobile CTA below grid — pink pill */
	.azuri-cosmetics__cta--desktop { display: none !important; }
	.azuri-cosmetics__cta--mobile {
		align-self: flex-start;
		background-color: #d4789a;
		border-color: #d4789a;
		border-radius: 20px;
		color: #ffffff;
		display: inline-flex;
		font-size: 13px;
		font-weight: 500;
		padding: 10px 22px;
	}
}

/* ==========================================================================
   Team
   ========================================================================== */

@media (max-width: 1023.98px) {
	/* Light grey outer background */
	.azuri-team {
		background-color: #f5f7fa;
		padding: 16px 0;
	}

	/* White card inner */
	.azuri-team__container {
		background-color: #ffffff;
		border-radius: 16px;
		margin-left: 16px;
		margin-right: 16px;
		padding: var(--azuri-space-6) var(--azuri-space-4);
	}

	.azuri-team__head {
		align-items: flex-start;
		flex-direction: column;
		gap: var(--azuri-space-3);
	}

	/* Force all cols to full width */
	.azuri-team__head .azuri_col,
	.azuri-team__foot .azuri_col {
		width: 100% !important;
	}

	.azuri-team__cta-wrap,
	.azuri-team__profiles-wrap {
		align-items: flex-start;
		justify-content: flex-start;
	}

	.azuri-team__cta,
	.azuri-team__profiles { margin-left: 0; }

	.azuri-team__count {
		text-align: left;
	}

	.azuri-team__heading {
		font-size: 24px;
		font-weight: 700;
		line-height: 1.2;
	}

	/* Doctor name pills — wrap naturally */
	.azuri-team__profiles {
		display: flex;
		flex-wrap: wrap;
		gap: 8px;
	}

	.azuri-team__profile-pill {
		border-radius: 20px;
		font-size: 12px;
		padding: 6px 14px;
		white-space: nowrap;
	}

	/* "Meet the Full Team" teal CTA */
	.azuri-team__cta {
		background-color: #2aadb5;
		border-color: #2aadb5;
		border-radius: 20px;
		color: #ffffff;
		font-size: 13px;
		font-weight: 500;
		justify-content: center;
		padding: 10px 22px;
		width: 100%;
	}

	/* "View doctor profiles" text link */
	.azuri-team__link {
		color: #2aadb5;
		font-size: 12px;
		font-weight: 500;
		padding: 0;
		text-decoration: underline;
	}
}

/* ==========================================================================
   Urgent CTA bar
   ========================================================================== */

@media (max-width: 1023.98px) {
	/* Teal background full-bleed */
	.azuri-urgent {
		background-color: #2aadb5;
	}

	.azuri-urgent__container {
		padding: var(--azuri-space-4) var(--azuri-space-4);
	}

	/* Single row: icon + text + button side by side */
	.azuri-urgent__row.equal-height {
		align-items: center;
		flex-direction: row;
		flex-wrap: nowrap;
		gap: var(--azuri-space-3);
	}

	/* Icon + text col — flex grow */
	.azuri-urgent__row .azuri_col:first-child {
		flex: 1 1 auto;
		width: auto !important;
	}

	/* Button col — don't shrink */
	.azuri-urgent__row .azuri_col:last-child {
		flex: 0 0 auto;
		width: auto !important;
	}

	.azuri-urgent__icon {
		color: #ffffff;
		flex-shrink: 0;
	}

	.azuri-urgent__lead {
		color: #ffffff;
		font-size: 14px;
		font-weight: 600;
		line-height: 1.35;
	}

	.azuri-urgent__cta-wrap {
		justify-content: flex-end;
		margin-top: 0;
	}

	/* White "Call Now" button */
	.azuri-urgent__btn {
		background-color: #ffffff;
		border-color: #ffffff;
		border-radius: 20px;
		color: #2aadb5;
		font-size: 13px;
		font-weight: 600;
		justify-content: center;
		padding: 10px 18px;
		white-space: nowrap;
		width: auto;
	}
}

/* ==========================================================================
   Footer CTA
   ========================================================================== */

@media (max-width: 1023.98px) {
	.azuri-fcta {
		--azuri-fcta-top-pad: 46px;
		--azuri-fcta-bottom-pad: 56px;
		/* Mobile Figma gradient (275:4456) */
		background: linear-gradient(157.72deg, #0c2035 8.49%, #0d3345 91.51%);
	}

	.azuri-fcta__container {
		align-items: center;
		padding-left: var(--azuri-space-4);
		padding-right: var(--azuri-space-4);
		text-align: center;
	}

	.azuri-fcta__inner {
		align-items: center;
		text-align: center;
	}

	.azuri-fcta__heading {
		font-size: 32px;
		font-weight: 300;
		letter-spacing: -0.025em;
		line-height: 1.15;
	}

	.azuri-fcta__description {
		color: rgba(255, 255, 255, 0.70);
		font-size: 13px;
		line-height: 1.6;
	}

	/* Stack buttons VERTICALLY, centred */
	.azuri-fcta__actions {
		align-items: center;
		flex-direction: column;
		gap: 10px;
		width: 100%;
	}

	/* Buttons: fixed width matching Figma pill */
	.azuri-fcta__actions .azuri-btn {
		border-radius: 20px;
		font-size: 13px;
		font-weight: 500;
		height: 39px;
		justify-content: center;
		min-width: 138px;
		padding: 0 24px;
		width: auto;
	}

	/* Medical button — teal solid */
	.azuri-fcta__actions .azuri-btn--medical {
		background-color: #2aadb5;
		border-color: #2aadb5;
		color: #ffffff;
	}

	/* Cosmetic button — pink solid */
	.azuri-fcta__actions .azuri-btn--cosmetic {
		background-color: #d4789a;
		border-color: #d4789a;
		color: #ffffff;
	}

	/* Note text below buttons */
	.azuri-fcta__note {
		color: rgba(255, 255, 255, 0.35);
		font-size: 10px;
	}
}

/* ==========================================================================
   Site footer — stack columns
   ========================================================================== */

@media (max-width: 1023.98px) {
	/* Deep navy background */
	.azuri-footer {
		background-color: #090b28;
		padding-bottom: 0;
	}

	.azuri-footer__container {
		padding: 24px var(--azuri-space-4) var(--azuri-space-6);
	}

	/*
	 * Mobile brand column — Figma 275:4472
	 * Row 1: logo (left) + social icons (right)   [order 1 + 2]
	 * Row 2: tagline (full width)                  [order 3]
	 */
	.azuri-footer__brand {
		align-items: center;
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		gap: 0;
		row-gap: 16px;
	}

	/* Logo: grows to fill available row space, pushes social right */
	.azuri-footer__logo {
		flex: 1 1 auto;
		order: 1;
	}

	.azuri-footer__logo img {
		height: auto;
		max-height: 70px;
		width: auto;
	}

	/* Tagline: second row, full width */
	.azuri-footer__tagline {
		flex: 0 0 100%;
		font-size: 13px;
		margin-top: 0;
		order: 3;
		width: 100%;
	}

	/* Social icons: same row as logo, pinned right (order 2) */
	.azuri-footer__social {
		align-items: center;
		display: flex;
		flex-direction: row;
		flex-shrink: 0;
		gap: 10px;
		justify-content: flex-end;
		margin-top: 0;
		order: 2;
	}

	.azuri-footer__social-link {
		align-items: center;
		border: 1px solid rgba(42, 173, 181, 0.15);
		border-radius: 16px;
		display: inline-flex;
		height: 32px;
		justify-content: center;
		width: 32px;
	}

	.azuri-footer__social-link:hover,
	.azuri-footer__social-link:focus-visible {
		background-color: rgba(42, 173, 181, 0.1);
		border-color: #2aadb5;
	}

	/* Brand + contact cols stay full-width; menu cols are 50% (azuri_xs_col_6) */
	.azuri-footer__top .azuri_col.azuri_xs_col_12,
	.azuri-footer__bottom .azuri_col {
		width: 100% !important;
	}

	/* azuri_xs_col_6 menu cols — 50% each, side-by-side */
	.azuri-footer__top .azuri_col.azuri_xs_col_6 {
		flex: 0 0 50% !important;
		max-width: 50% !important;
		width: 50% !important;
	}

	.azuri-footer__top .azuri_xs_col_6 .azuri_inner {
		box-sizing: border-box;
		padding-right: var(--azuri-space-4);
	}

	.azuri-footer__top {
		flex-direction: row;
		flex-wrap: wrap;
		gap: 0;
		row-gap: var(--azuri-space-6);
	}

	/* Brand col full row */
	.azuri-footer__top .azuri_col.azuri_xs_col_12:first-child {
		width: 100% !important;
	}

	.azuri-footer__col {
		gap: var(--azuri-space-3);
	}

	.azuri-footer__contact {
		width: 100%;
	}

	/* Nav link sizing */
	.azuri-footer__heading {
		font-size: 11px;
		letter-spacing: 0.09em;
	}

	.azuri-footer__links a {
		font-size: 13px;
		line-height: 1.6;
	}

	.azuri-footer__bottom {
		flex-direction: column;
		gap: var(--azuri-space-3);
		margin-top: var(--azuri-space-6);
	}

	.azuri-footer__small-wrap {
		justify-content: flex-start;
		text-align: left;
		width: 100%;
	}

	.azuri-footer__copyright,
	.azuri-footer__small-print {
		font-size: 11px;
	}

	/* Contact section — mobile: hide icons, compact text */
	.azuri-footer__contact-icon {
		display: none;
	}

	.azuri-footer__contact-block {
		gap: 0;
	}

	.azuri-footer__contact-phone {
		font-size: 13px;
	}

	.azuri-footer__contact-hours,
	.azuri-footer__contact-address {
		font-size: 13px;
		line-height: 1.6;
	}
	.mobile-navigation .mobile-nav ul.show {
		transform: translateX(-100%);
		overflow: visible;
	}
	ul.mobile-menu1 > li.hide {
        display: flex !important; 
        position: static;
    }
    .mobile-navigation .mobile-nav ul.sub-menu.open {
        display: block;
        opacity: 1;
        visibility: visible;
    }
    .mobile-wrap .sub-menu {
        opacity: 0;        
        z-index: 99 !important;
        left: 100% !important;
        right: auto !important;
        display: block !important
    }
    .mobile-wrap .mobile-back {
        display: flex !important;
        flex: 1 1 auto !important;
        padding: var(--azuri-space-4) var(--azuri-space-6) !important;
        font-family: var(--azuri-font-family-base) !important;
        font-size: 13px !important;
        font-weight: var(--azuri-font-weight-semibold, 600) !important;
        color: var(--azuri-color-teal, #2aadb5) !important;
    }
	.equal-height,
	.azuri_col,
	.azuri_inner{
		margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
	}
    header#masthead {
        display: none !important;
    }
    .azuri-btn {
        width: 160px !important;
    }
	.azuri-container,
	.site-footer .inside-site-info.grid-container{
		padding-left: 20px !important;
		padding-right: 20px !important;
	}
    .azuri-header-actions.buttons_ span.azuri-btn {
        display: block !important;
        width: auto !important;
    }
}
@media only screen and ( min-width:768px) and (max-width:1023px) {
    .azuri-fcta__actions {
        align-items: center;
        flex-direction: row;
    }
	.azuri-footer__top .azuri_col.azuri_xs_col_12:first-child {
        width: 100% !important;
        flex: 0 0 100% !important;
        max-width: 100% !important;
        width: 100% !important;
    }
    .azuri-footer__top .azuri_col.azuri_xs_col_6,
    footer.azuri-footer .azuri_col.azuri_col_3.azuri_xs_col_12{
        flex: 0 0 33% !important;
        max-width: 33% !important;
        width: 33% !important;
    }
	.mobile-header .azuri_col.azuri_xs_col_6 {
		width: auto;
	}
}
@media only screen and ( min-width:1023px) and (max-width:1119px) {
	.equal-height.azuri-footer__top {
		width: 100%;
		justify-content: space-between;
	}
	.azuri-footer__top .azuri_col.azuri_xs_col_6, 
	footer.azuri-footer .azuri_col.azuri_col_3.azuri_xs_col_12 {
        flex: 0 0 23% !important;
        max-width: 23% !important;
        width: 23% !important;
    }
	a.azuri-footer__logo img {
		max-height: 70px;
	}
}
@media only screen and ( min-width:1024px) and (max-width:1119px) {
	header#masthead .inside-header.azuri-header__inner,
    header#masthead .azuri-header-top .azuri-header-top__inner{
		padding-left: 24px !important;
		padding-right: 24px !important;
	}
    .azuri-header__inner .custom-logo, 
    .azuri-header__inner .azuri-logo {
        height: 77px;
        width: 203px;
        max-height: 77px;
        margin-left: -20px;
    }
    .site-header .inside-header.azuri-header__inner .azuri-header__actions .azuri-header-actions {
        row-gap: 6px;
        flex-direction: column;
        padding: 10px 0;
    }
    .site-header .inside-header.azuri-header__inner .azuri-phone-link__number {
        display: block;
    }
    .azuri-header-top__search {
        width: 0;
    }
	.site-footer .inside-site-info.grid-container {
		padding-left: 24px;
		padding-right: 24px;
	}
}