/*
 * Front-page section styles.
 *
 * The second half of the homepage: the service path, the recognition list, the student
 * archive, the four media cards and the closing calls to action. Every rule either uses a
 * component already defined in homepage.css or extends one in the same vocabulary -- same
 * tokens, same radii, same accents, same 1240px measure.
 *
 * Loaded with homepage.css on the front page. The `argus-sb-` prefix is historical; the
 * class names are load-bearing in the page document, so renaming them is a separate,
 * deliberate change rather than something to do in passing.
 */

/* ---------------------------------------------------------------- the path
 * The service grid already existed in homepage.css, fully designed, and was never wired
 * up -- the section under it rendered a freight-logistics demo instead. These rules only
 * add the sixth "where do I start" cell and the numbering treatment.
 */
.argus-sb-path .argus-home-service-grid {
	margin-bottom: 0;
}

.argus-home-service-card > span {
	background: rgba(203, 60, 165, .09);
	border-radius: 999px;
	float: right;
	font-size: 12px;
	letter-spacing: .06em;
	margin: -4px -6px 0 0;
	padding: 6px 11px;
}

/* The sixth cell is an invitation, not a service, so it inverts. */
.argus-home-service-card--cta {
	background: linear-gradient(150deg, var(--argus-plum), #4a1a54);
	color: #fff;
}

.argus-home-service-card--cta:hover {
	box-shadow: 0 20px 48px rgba(46, 23, 53, .22);
}

.argus-home-service-card--cta small {
	color: rgba(255, 255, 255, .62);
}

.argus-home-service-card--cta h3 {
	color: #fff;
}

.argus-home-service-card--cta p {
	color: rgba(255, 255, 255, .72);
}

.argus-home-service-card--cta b,
.argus-home-service-card--cta > span {
	background: rgba(255, 255, 255, .10);
	color: var(--argus-orange);
}

.argus-home-service-card--cta b {
	background: none;
}

/* Symptoms, in the words the site already uses. People arrive describing a problem, not
 * asking for a service tier, so the row is a way in rather than decoration. */
.argus-sb-symptoms {
	align-items: baseline;
	border-top: 1px solid var(--argus-line);
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 42px;
	padding-top: 30px;
}

.argus-sb-symptoms > strong {
	color: var(--argus-muted);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .12em;
	margin-right: 6px;
	text-transform: uppercase;
}

.argus-sb-symptoms a {
	background: var(--argus-lavender);
	border: 1px solid transparent;
	border-radius: 999px;
	color: var(--argus-ink);
	font-size: 15px;
	font-weight: 600;
	padding: 9px 17px;
	text-decoration: none;
	transition: border-color .2s ease, transform .2s ease;
}

.argus-sb-symptoms a:hover {
	border-color: rgba(203, 60, 165, .35);
	color: var(--argus-magenta);
	transform: translateY(-2px);
}

/* --------------------------------------------------------- why at home
 * The theme decorates every blockquote with an oversized closing quote mark, which on this
 * one lands on top of the sentence. The orange rule in homepage.css is already the mark of
 * a quotation here, so the ornament is redundant as well as illegible.
 */
.argus-home-quote blockquote:after {
	content: none;
	display: none;
}

.argus-home-quote blockquote {
	background-image: none;
}

/* ------------------------------------------------- does any of this sound familiar
 * People do not arrive knowing that what they have is "άγχος αποχωρισμού". They arrive
 * saying the dog wakes the neighbourhood when they leave. So the visitor's own words come
 * first, at reading size, and the professional label follows in small type as a
 * translation -- which is also the route to the right programme or article.
 *
 * Deliberately not a card grid: there is already a six-card grid directly above this, and
 * a second one would read as the same thought twice. An indexed list of quoted lines is
 * closer to how the rest of the page behaves editorially.
 */
.argus-sb-recall {
	border-top: 1px solid var(--argus-line);
	margin-top: 8px;
}

.argus-sb-recall a {
	align-items: baseline;
	border-bottom: 1px solid var(--argus-line);
	color: var(--argus-ink);
	display: grid;
	gap: 10px 26px;
	grid-template-columns: 1fr auto 26px;
	padding: 25px 6px 25px 0;
	text-decoration: none;
	transition: background .2s ease, padding .2s ease;
}

.argus-sb-recall a:hover {
	background: rgba(203, 60, 165, .045);
	padding-left: 14px;
	padding-right: 0;
}

.argus-sb-recall q {
	color: var(--argus-ink);
	font-size: clamp(19px, 1.7vw, 25px);
	font-weight: 650;
	line-height: 1.32;
}

.argus-sb-recall a:hover q {
	color: var(--argus-magenta);
}

.argus-sb-recall em {
	color: var(--argus-muted);
	font-size: 12px;
	font-style: normal;
	font-weight: 800;
	letter-spacing: .11em;
	text-transform: uppercase;
	white-space: nowrap;
}

.argus-sb-recall b {
	color: var(--argus-magenta);
	font-size: 19px;
	justify-self: end;
	transition: transform .2s ease;
}

.argus-sb-recall a:hover b {
	transform: translateX(4px);
}

/* ------------------------------------------------------------------ Ζημιά
 * The approved Michalis block carried two empty image widgets, which rendered as
 * Elementor's own grey placeholder. They are filled with real photographs and laid out
 * side by side rather than stacked -- stacked, two full-width pictures ran to 1100px
 * against a 200px paragraph and pulled the whole section out of balance.
 *
 * No new picture styling: `.argus-home-teacher-photo` is the approved photo card for
 * exactly this section, gradient caption and all, and it was already in homepage.css.
 */
.argus-sb-dogs {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

/* ------------------------------------------------------------- the archive
 * The hero claims "σε όλη την Αττική". The student archive is the only thing on the site
 * that proves it, and until now the homepage showed eight cards and a button.
 */
.argus-sb-archive {
	border-top: 1px solid rgba(255, 255, 255, .16);
	border-bottom: 1px solid rgba(255, 255, 255, .16);
	display: grid;
	gap: 24px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin: 0 0 38px;
	padding: 28px 0;
}

.argus-sb-archive div {
	position: relative;
}

.argus-sb-archive div:not(:first-child):before {
	background: rgba(255, 255, 255, .16);
	content: "";
	height: 42px;
	left: -12px;
	position: absolute;
	top: 6px;
	width: 1px;
}

.argus-sb-archive strong {
	color: #fff;
	display: block;
	font-size: 40px;
	font-weight: 700;
	letter-spacing: -.01em;
	line-height: 1.05;
}

.argus-sb-archive span {
	color: rgba(255, 255, 255, .66);
	display: block;
	font-size: 14px;
	line-height: 1.45;
	margin-top: 7px;
}

.argus-sb-archive em {
	color: var(--argus-orange);
	font-size: 13px;
	font-style: normal;
	font-weight: 700;
}

/* Native Elementor counters replace the old archive shortcode. Their type mirrors the
 * former figures, while the three-column row remains editable in Elementor. */
.argus-sb-counter-row {
	border-bottom: 1px solid rgba(255, 255, 255, .16);
	border-top: 1px solid rgba(255, 255, 255, .16);
	margin: 0 0 38px;
	padding: 28px 0;
}

.argus-sb-counter-row > .elementor-container {
	display: flex;
	gap: 24px;
}

.argus-sb-counter-row > .elementor-container > .argus-sb-counter-col {
	flex: 0 0 calc((100% - 48px) / 3);
	position: relative;
	width: calc((100% - 48px) / 3) !important;
}

.argus-sb-counter-col + .argus-sb-counter-col::before {
	background: rgba(255, 255, 255, .16);
	content: "";
	height: 42px;
	left: -12px;
	position: absolute;
	top: 6px;
	width: 1px;
}

.argus-sb-counter .elementor-counter-number-wrapper {
	color: #fff;
	font-size: 40px;
	font-weight: 700;
	justify-content: flex-start;
	letter-spacing: -.01em;
	line-height: 1.05;
}

.argus-sb-counter .elementor-counter-title {
	color: rgba(255, 255, 255, .66);
	font-size: 14px;
	font-weight: 400;
	line-height: 1.45;
	margin-top: 7px;
	text-align: left;
	text-transform: none;
}

/* Documentary photographs, not a crop grid.
 * Columns rather than a fixed-ratio grid: each picture keeps the framing it was taken
 * with, and the caption sits underneath so nothing is printed across a dog. The rhythm
 * comes from the consistent radius, gap and caption block, not from forcing every subject
 * into the same rectangle.
 */
.argus-sb-archive-grid {
	column-gap: 18px;
	columns: 4;
	margin-bottom: 34px;
}

/* The eight documentary cards stay inside the locked content grid so their
 * edges align with the counters and the surrounding homepage copy. */

.elementor .argus-home-students-section .elementor-shortcode .argus-sb-archive-grid > .argus-sb-archive-card {
	background: #fff;
	border-radius: 20px;
	box-shadow: 0 10px 22px rgba(15, 6, 18, .13);
	break-inside: avoid;
	margin: 0 0 24px;
	overflow: hidden;
	page-break-inside: avoid;
	transition: transform .25s ease;
}

.argus-sb-archive-card:hover {
	transform: translateY(-3px);
}

.argus-sb-archive-card a {
	display: block;
	text-decoration: none;
}

.argus-sb-archive-photo {
	display: block;
}

.argus-sb-archive-photo img {
	display: block;
	height: auto;
	width: 100%;
}

.argus-sb-archive-card figcaption {
	padding: 15px 17px 17px;
}

.argus-sb-archive-card strong {
	color: var(--argus-plum);
	display: block;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.25;
}

.argus-sb-archive-card small {
	color: #704382;
	display: block;
	font-size: 12.5px;
	line-height: 1.4;
	margin-top: 5px;
}

/* The Google figure sat hard against the section title. */
.argus-home-students-section .argus-home-fact--google {
	margin-bottom: 26px;
}

/* --------------------------------------------------------------- the media
 * Four real areas of work instead of three, and photographs instead of the screenshots of
 * an older website that the current cards use -- two of which were the same file.
 */
.argus-sb-media-4 {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.argus-sb-media-4 .argus-home-media-card,
.argus-sb-media-4 .argus-home-media-card > a {
	min-height: 430px;
}

.argus-sb-media-4 .argus-home-media-overlay strong {
	font-size: 21px;
}

/* Four narrower cards put the label over the middle of the photograph rather than its
 * darkest corner, so the scrim has to start earlier and finish darker. */
.argus-sb-media-4 .argus-home-media-overlay {
	background: linear-gradient(transparent 6%, rgba(24, 8, 29, .58) 38%, rgba(19, 5, 23, .96) 78%);
}

/* ----------------------------------------------------------------- the FAQ
 * The heading column was vertically centred against an accordion that starts at the top,
 * which read as a misalignment rather than a decision.
 */
.argus-home-faq-section > .elementor-container {
	align-items: flex-start;
}

.argus-home-faq-section .elementor-widget-wrap {
	align-content: flex-start;
}

/* ------------------------------------------------------------- the last ask
 * Three ways to make contact were spread edge to edge by the column layout; grouped, they
 * read as one choice.
 */
.argus-cta-row > .elementor-container { gap: 14px; justify-content: center; }
.argus-cta-row { margin-top: 34px; }
.argus-cta-row .elementor-column { width: auto !important; flex: 0 0 auto; }
.argus-cta-row .elementor-widget-button { margin-bottom: 0; }

.argus-cta-row .elementor-button {
	border-radius: 999px;
	font-size: 17px;
	font-weight: 600;
	padding: 17px 26px;
	text-decoration: none;
	transition: transform .2s ease, background .2s ease, color .2s ease;
}

.argus-cta-row .elementor-button:hover {
	transform: translateY(-2px);
}

.argus-cta--primary .elementor-button {
	background: var(--argus-orange);
	color: #2a1232;
}

.argus-cta--ghost .elementor-button {
	background: rgba(255, 255, 255, .07);
	border: 1px solid rgba(255, 255, 255, .35);
	color: #fff;
}

.argus-cta--ghost .elementor-button:hover {
	background: #fff;
	color: var(--argus-plum);
}

.argus-cta-note {
	color: rgba(255, 255, 255, .62);
	font-size: 15px;
	margin-top: 22px;
	text-align: center;
}

.argus-cta-note a {
	color: #fff;
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* --------------------------------------------------------------- responsive
 * The approved design stops at 1024/767. The continuation below those widths is my
 * judgement, not an existing approved state: the site's own mobile visitors are currently
 * diverted to a separate legacy page, so there is nothing to match against.
 */
@media (max-width: 1024px) {
	.argus-sb-media-4,
	.argus-sb-path .argus-home-service-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.argus-sb-archive {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 26px 24px;
	}

	.argus-sb-archive-grid {
		columns: 3;
	}

	.argus-sb-archive div:nth-child(3):before {
		display: none;
	}
}

@media (max-width: 767px) {
	.argus-sb-counter-row {
		margin-bottom: 30px;
		padding: 24px 0;
	}

	.argus-sb-counter-row > .elementor-container {
		display: block;
	}

	.argus-sb-counter-row > .elementor-container > .argus-sb-counter-col {
		flex: 0 0 100%;
		width: 100% !important;
	}

	.argus-sb-counter-col + .argus-sb-counter-col {
		margin-top: 22px;
		padding-top: 22px;
	}

	.argus-sb-counter-col + .argus-sb-counter-col::before {
		height: 1px;
		left: 0;
		top: 0;
		width: 100%;
	}

	.argus-sb-counter .elementor-counter-number-wrapper {
		font-size: 32px;
	}

	.argus-sb-media-4,
	.argus-sb-path .argus-home-service-grid {
		grid-template-columns: 1fr;
	}

	.argus-home-service-card {
		min-height: 0;
		padding: 26px 24px 74px;
	}

	.argus-home-service-card h3 {
		font-size: 25px;
		margin-top: 34px;
	}

	.argus-home-service-card b {
		left: 24px;
	}

	.argus-sb-archive {
		gap: 22px 18px;
		margin-bottom: 30px;
	}

	.argus-sb-archive strong {
		font-size: 32px;
	}

	.argus-sb-archive div:before {
		display: none;
	}

	.argus-sb-archive-grid {
		column-gap: 14px;
		columns: 2;
	}

	.elementor .argus-home-students-section .elementor-shortcode .argus-sb-archive-grid > .argus-sb-archive-card {
		margin-bottom: 18px;
	}

	/* The label would otherwise be squeezed onto the same line as the quotation. */
	.argus-sb-recall a {
		grid-template-columns: 1fr 22px;
		padding: 20px 0;
	}

	.argus-sb-recall em {
		grid-column: 1;
		grid-row: 2;
	}

	.argus-sb-recall b {
		grid-row: 1 / span 2;
	}

	.argus-sb-dogs {
		gap: 12px;
	}

	.argus-sb-symptoms {
		margin-top: 32px;
		padding-top: 24px;
	}

	/* The Google figure centres itself below the tablet breakpoint while every other
	 * element on the page stays left-aligned, which reads as a stray. */
	.argus-home-students-section .argus-home-fact--google .elementor-icon-box-wrapper {
		align-items: center;
		display: flex;
		text-align: left;
	}

	.argus-home-students-section .argus-home-fact--google .elementor-icon-box-icon {
		margin: 0 14px 0 0;
	}

	.argus-sb-symptoms a {
		font-size: 14px;
		padding: 8px 14px;
	}

	.argus-cta-row .elementor-button {
		font-size: 16px;
		text-align: center;
		width: 100%;
	}

	.argus-sb-media-4 .argus-home-media-card,
	.argus-sb-media-4 .argus-home-media-card > a {
		min-height: 380px;
	}
}


/* ---------------------------------------------------------------- Ζημιά, her own section
   A full-viewport field of the palette's lightest plum, with the content on the site grid
   inside it. The colour is `--argus-lavender`, already used by the recognition section —
   not a new tone. It gives the page a pause between the cream of Michalis's story and the
   white of the services, and gives Ζημιά a moment that is hers.

   Her photographs are matted the way his gallery is matted: a pale surround, a hairline,
   a 30px outer radius against a 20px inner one, and the same hover. Two treatments of the
   same photographic idea, so the visitor reads them as one world. */
.argus-home-zimia { background: var(--argus-lavender); }
.argus-home-zimia > .elementor-container { align-items: center; }

/* Ζημιά's photographs: two native Image widgets, matted the way Michalis's gallery is
   matted — a pale surround, a hairline, a 30px outer radius against a 20px inner one — so
   the two sets read as one photographic world.

   The mat sits on the widget wrapper itself. This Elementor build renders optimised
   markup with no `.elementor-widget-container`, so the wrapper is the outermost element
   available; and `.elementor img { height: auto }` has to be outranked for the frame to
   keep the fixed height it had before the conversion. */
.argus-zimia-photos > .elementor-container { gap: 20px; }
.argus-zimia-photos .elementor-column { padding: 0; }

.argus-home-zimia .argus-zimia-photo {
	background: rgba(255, 255, 255, .72);
	border: 1px solid rgba(46, 23, 53, .10);
	border-radius: 30px;
	box-shadow: 0 10px 26px rgba(46, 23, 53, .08);
	box-sizing: border-box;
	overflow: hidden;
	padding: 10px;
	position: relative;
}
.argus-home-zimia .argus-zimia-photo figure { margin: 0; position: relative; }
/* Elementor renders the link as inline-block, so it shrink-wraps the image and the
   image's own `width: 100%` then resolves against itself. The link has to be the block. */
.argus-home-zimia .argus-zimia-photo figure > a { display: block; width: 100%; }

.argus-home-zimia .argus-zimia-photo img {
	border-radius: 20px;
	cursor: zoom-in;
	display: block;
	height: 298px;
	object-fit: cover;
	transition: transform .45s ease;
	width: 100%;
}
.argus-home-zimia .argus-zimia-photo--training img { object-position: center; }
.argus-home-zimia .argus-zimia-photo--portrait img { object-position: center 42%; }
.argus-home-zimia .argus-zimia-photo:hover img { transform: scale(1.035); }

/* The caption sits on the photograph, as it did before the conversion. */
.argus-home-zimia .argus-zimia-photo figcaption {
	background: linear-gradient(transparent, rgba(31, 11, 36, .88));
	border-radius: 0 0 20px 20px;
	bottom: 0;
	color: rgba(255, 255, 255, .92);
	font-size: 12px;
	font-weight: 700;
	left: 0;
	line-height: 1.35;
	padding: 44px 14px 13px;
	position: absolute;
	right: 0;
	text-align: left;
}
.argus-home-zimia .argus-zimia-photo a:focus-visible {
	outline: 3px solid var(--argus-magenta);
	outline-offset: 3px;
}

/* The current Elementor section uses TheGem Gallery rather than the earlier pair of
   native Image widgets. Keep the same approved photographic language: square crops,
   a muted lavender mat and the same 30px/22px outer-to-inner rhythm used by Michalis's
   gallery. The widget class is deliberately local to this one gallery. */
/* TheGem's gallery stylesheet is loaded after this component and restores
   `overflow: hidden` on each `li.gallery-item`. That clips the lower fade of
   the frame shadow at the item boundary, so the scoped override must win the
   cascade rather than making the shadow artificially smaller. */
.argus-home-zimia-gallery .gallery-item { overflow: visible !important; }
.argus-home-zimia-gallery .gem-wrapbox {
	background: rgb(192, 177, 192);
	border-radius: 30px;
	box-sizing: border-box;
	overflow: hidden;
	padding: 10px;
}

/* The two live TheGem galleries are one photographic component. The thick mat is
   enough definition on its own; a shared soft shadow gives it separation on both
   the dark Michalis field and the pale Zimia field without reintroducing a hairline. */
.argus-home-teacher-story.elementor-section-full_width .elementor-widget-thegem-gallery-grid .gem-wrapbox,
.argus-home-zimia-gallery .gem-wrapbox {
	border: 0;
	box-shadow: 0 10px 18px -14px rgba(46, 23, 53, .42);
}
.argus-home-zimia-gallery .overlay-wrap,
.argus-home-zimia-gallery .image-wrap,
.argus-home-zimia-gallery .image-wrap img { border-radius: 22px; }
.argus-home-zimia-gallery .image-wrap { overflow: hidden; }

/* Ζημιά's hover stays light and photographic. Keep the TheGem interaction and
   tune its surfaces to the approved gallery palette. */
.argus-home-zimia-gallery .gem-gallery-grid .gallery-item .overlay-wrap .overlay::before {
	background-color: rgba(255, 255, 255, .50);
}
.argus-home-zimia-gallery .gem-gallery-grid .gallery-item .overlay a.icon.photo i {
	background-color: #c352a5;
}

/* This widget currently emits the full-size gallery link but omits TheGem's
   a.icon.photo element. Restore the same native camera glyph on that existing
   link, scoped to Ζημιά so the Elementor gallery data remains untouched. */
.argus-home-zimia-gallery .gem-gallery-grid .gallery-item .gallery-item-link::before {
	background-color: #c352a5;
	border-radius: 50%;
	color: #fff;
	content: '\e629';
	font-family: 'thegem-icons';
	font-size: 35px;
	font-style: normal;
	height: 70px;
	left: 50%;
	line-height: 68px;
	margin: -35px 0 0 -35px;
	opacity: 0;
	position: absolute;
	text-align: center;
	top: 50%;
	transform: scale(0);
	transition: opacity .3s .2s, transform 0s .5s;
	width: 70px;
}
.argus-home-zimia-gallery .gem-gallery-grid .gallery-item:is(:hover, .hover-effect) .gallery-item-link::before {
	opacity: 1;
	transform: scale(1);
	transition: opacity .5s, transform .4s;
}

@media (max-width: 767px) {
	/* homepage.css stacks every Elementor column at mobile. Ζημιά's two photographs were
	   always a pair, at every width, so they opt out. */
	.argus-zimia-photos > .elementor-container { gap: 14px; }
	.argus-home-zimia .argus-zimia-photos .elementor-column {
		flex: 0 0 calc(50% - 7px);
		width: calc(50% - 7px) !important;
	}
	.argus-home-zimia .argus-zimia-photo { border-radius: 22px; padding: 7px; }
	.argus-home-zimia .argus-zimia-photo img { border-radius: 15px; height: 191px; }
	.argus-home-zimia .argus-zimia-photo figcaption {
		border-radius: 0 0 15px 15px; font-size: 10px; padding: 38px 11px 11px; }
}

/* ===========================================================================
   Converted components
   ---------------------------------------------------------------------------
   The service path, the recognition list and the media cards used to be three
   raw HTML widgets. They are now Elementor columns holding Heading, Text Editor,
   Image and Button widgets, so every word, link and photograph is editable in
   the panel.

   Each card is still one click target. Elementor Free has no widget that renders
   a multi-slot card as a single link, so the card's Button is stretched over its
   column with a pseudo-element — the ordinary way to do this, and better than
   nesting interactive elements, because it leaves exactly one <a> for a screen
   reader and keeps the visible link text meaningful.
   =========================================================================== */

.argus-card-row > .elementor-container { gap: 20px; }
.argus-card-row + .argus-card-row { margin-top: 20px; }
.argus-card-row .elementor-column { padding: 0; }
.argus-card-row .elementor-widget { margin-bottom: 0; }

/* The classic Elementor inner-section keeps the columns in an extra .elementor-container.
 * Scope the visible gutter correction to the homepage service path only. */
.argus-home-services .argus-card-row--3 > .elementor-container {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}

/* Four cards per row keep this homepage selection generous and legible. The
 * existing tablet and mobile breakpoints step down to three and two columns. */
.argus-home-services .argus-card-row--3 > .elementor-container > .elementor-column {
	width: calc((100% - 40px) / 3) !important;
	flex: 0 0 calc((100% - 40px) / 3);
}

/* --- the service path ---------------------------------------------------- */

.argus-home-service-card { display: flex; flex-direction: column; }
.argus-home-service-card.elementor-column > .elementor-widget-wrap { padding: 31px; position: relative; }
/* The number, which floated right of the card's first line. */
/* Elementor gives every widget a full-width box, so the badge has to be told to shrink
   to its own text before it can sit in the card's corner. */
.argus-home-service-card .argus-card-badge {
	position: absolute;
	right: 25px;
	top: 27px;
	width: auto;
}
.argus-home-service-card .argus-card-badge .elementor-heading-title { display: inline-block; }
.argus-home-service-card .argus-card-badge .elementor-heading-title {
	background: rgba(255, 122, 26, .10);
	border-radius: 999px;
	color: var(--argus-orange);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .06em;
	padding: 6px 11px;
}
.argus-home-service-card .argus-card-kicker .elementor-heading-title {
	color: var(--argus-muted);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .12em;
	line-height: 1.4;
	text-transform: uppercase;
}
.argus-home-service-card .argus-card-title .elementor-heading-title {
	color: var(--argus-ink);
	font-size: 29px;
	line-height: 1.1;
	margin: 55px 0 18px;
}
.argus-home-service-card .argus-card-body p {
	color: var(--argus-muted);
	font-size: 15px;
	line-height: 1.65;
	margin: 0;
}

/* The call to action sits at the foot of the card and carries the card's link. */
.argus-home-service-card .argus-card-more { margin-top: auto; padding-top: 24px; }
.argus-home-service-card .argus-card-more .elementor-button,
.argus-recall-item .argus-recall-go .elementor-button,
.argus-home-media-card .argus-media-more .elementor-button {
	background: none;
	border: 0;
	border-radius: 0;
	padding: 0;
}
.argus-home-service-card .argus-card-more .elementor-button {
	color: var(--argus-orange);
	font-size: 14px;
	font-weight: 700;
}
/* The stretched link: the whole card is the target, one <a> in the accessibility tree. */
.argus-home-service-card .argus-card-more .elementor-button::after,
.argus-recall-item .argus-recall-go .elementor-button::after,
.argus-home-media-card .argus-media-more .elementor-button::after {
	content: "";
	inset: 0;
	position: absolute;
	z-index: 2;
}
.argus-home-service-card .argus-card-more .elementor-button:focus-visible::after,
.argus-recall-item .argus-recall-go .elementor-button:focus-visible::after,
.argus-home-media-card .argus-media-more .elementor-button:focus-visible::after {
	outline: 3px solid var(--argus-magenta);
	outline-offset: -3px;
}
.argus-home-service-card:not(.argus-home-service-card--cta) .argus-card-more .elementor-button:focus-visible::after {
	outline-color: var(--argus-orange);
}

/* The sixth cell inverts: an invitation rather than a service. */
.argus-home-service-card--cta .argus-card-kicker .elementor-heading-title { color: rgba(255, 255, 255, .62); }
.argus-home-service-card--cta .argus-card-title .elementor-heading-title { color: #fff; }
.argus-home-service-card--cta .argus-card-body p { color: rgba(255, 255, 255, .72); }
.argus-home-service-card--cta .argus-card-more .elementor-button { color: var(--argus-orange); }
.argus-home-service-card--cta .argus-card-badge .elementor-heading-title {
	background: rgba(255, 255, 255, .10);
	color: var(--argus-orange);
}

/* --- does any of this sound familiar ------------------------------------- */

.argus-recall-row + .argus-recall-row { margin-top: 0; }
.argus-recall-row:first-child { border-top: 1px solid var(--argus-line); margin-top: 8px; }
.argus-recall-item {
	border-bottom: 1px solid var(--argus-line);
	position: relative;
	transition: background .2s ease, padding .2s ease;
}
/* Elementor's widget wrap is a flex column by default and its rule is more specific than
   a single class, so the grid has to be stated at the column's own specificity. */
.argus-recall-item.elementor-column > .elementor-widget-wrap {
	align-content: center;
	align-items: baseline;
	column-gap: 26px;
	display: grid;
	grid-template-columns: 1fr auto 26px;
	padding: 24px 0;
}
.argus-recall-item:hover { background: rgba(203, 60, 165, .045); padding-left: 14px; }
.argus-recall-item .elementor-widget { margin-bottom: 0; }

/* The question was a <q>, which the browser wrapped in Greek quotation marks, and it was
   sentence case. A Heading widget is neither by default: TheGem's heading styles uppercase
   it, and there are no quotes to inherit. Both are restored here rather than by typing the
   guillemets into the content, so the text stays the sentence Michalis wrote. */
.argus-recall-q .elementor-heading-title::before { content: "«"; }
.argus-recall-q .elementor-heading-title::after { content: "»"; }
.argus-recall-q .elementor-heading-title {
	text-transform: none;
	color: var(--argus-ink);
	font-size: clamp(19px, 1.7vw, 25px);
	font-weight: 650;
	line-height: 1.32;
}
.argus-recall-item:hover .argus-recall-q .elementor-heading-title { color: var(--argus-magenta); }
.argus-recall-label .elementor-heading-title {
	color: var(--argus-muted);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .11em;
	text-transform: uppercase;
	white-space: nowrap;
}
.argus-recall-go { justify-self: end; }
.argus-recall-go .elementor-button {
	color: var(--argus-magenta);
	font-size: 19px;
	transition: transform .2s ease;
}
.argus-recall-item:hover .argus-recall-go .elementor-button { transform: translateX(4px); }

/* Tina's pill-card direction. Background, hover colour and responsive radius now
   live on each Inner Section in Elementor; this rule keeps only shared structure
   and typography helpers that Elementor does not express cleanly. */
.argus-sb-recall-section .elementor-inner-section {
	--argus-recall-text: #fff;
	--argus-recall-meta: rgba(255, 255, 255, .84);
	overflow: hidden;
	position: relative;
	transition: background-color .2s ease;
}

.argus-sb-recall-section .elementor-inner-section + .elementor-inner-section { margin-top: 16px; }
.argus-sb-recall-section .elementor-inner-section > .elementor-container { position: static; }
.argus-sb-recall-section .elementor-inner-section .argus-recall-item {
	background: transparent !important;
	border: 0;
	padding-left: 0;
	position: static;
	transition: none;
}
.argus-sb-recall-section .elementor-inner-section .argus-recall-item:hover {
	background: transparent !important;
	padding-left: 0;
}
.argus-sb-recall-section .argus-recall-item.elementor-column > .elementor-widget-wrap {
	box-sizing: border-box;
	min-height: 112px;
	padding: 27px 44px;
	position: static;
}
.argus-sb-recall-section .elementor-inner-section .argus-recall-q .elementor-heading-title,
.argus-sb-recall-section .elementor-inner-section:hover .argus-recall-q .elementor-heading-title {
	color: var(--argus-recall-text);
	font-family: Roboto, sans-serif !important;
	font-size: 22px !important;
	font-weight: 700 !important;
	letter-spacing: normal !important;
	line-height: 1.32 !important;
}
.argus-sb-recall-section .elementor-inner-section .argus-recall-label .elementor-heading-title {
	color: var(--argus-recall-meta);
	font-family: Roboto, sans-serif !important;
	font-size: 12px !important;
	font-weight: 800 !important;
	letter-spacing: .11em !important;
	line-height: 1.35 !important;
}
.argus-sb-recall-section .elementor-inner-section .argus-recall-go .elementor-button {
	color: var(--argus-recall-text);
	font-size: 19px;
	transform: none;
	transition: none;
}
.argus-sb-recall-section .elementor-inner-section .argus-recall-go { position: static; }
.argus-sb-recall-section .elementor-inner-section .argus-recall-go .elementor-button::after { cursor: pointer; }
/* Keep the native Elementor canvas editable: the stretched link is a frontend hit
   target, but inside edit mode it must not cover the section and widget controls. */
.elementor-editor-active .argus-sb-recall-section .argus-recall-go .elementor-button::after { display: none; }
.argus-sb-recall-section .elementor-inner-section:hover .argus-recall-go .elementor-button { transform: none; }

/* The first native Elementor row predates the Button widgets used by the other five.
   Keep the visual language complete until its real service link is added in Elementor;
   the pseudo-element is deliberately non-interactive and does not fake clickability. */
.argus-sb-recall-section .elementor-element-cb590c5::after {
	color: #fff;
	content: "→";
	font-size: 19px;
	line-height: 1;
	pointer-events: none;
	position: absolute;
	right: calc(max(0px, (100% - 1140px) / 2) + 51px);
	top: 50%;
	transform: translateY(-50%);
}

/* --- beyond the lesson --------------------------------------------------- */

.argus-home-media-card {
	border-radius: 24px;
	min-height: 380px;
	overflow: hidden;
	position: relative;
}
.argus-home-media-card.elementor-column > .elementor-widget-wrap {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	min-height: 380px;
	padding: 30px 26px 28px;
	position: relative;
	z-index: 1;
}
/* The photograph fills the card behind the words. */
.argus-home-media-card .argus-media-photo {
	inset: 0;
	position: absolute;
	z-index: 0;
}
.argus-home-media-card .argus-media-photo img {
	display: block;
	height: 100%;
	object-fit: cover;
	transition: transform .45s ease;
	width: 100%;
}
.argus-home-media-card:hover .argus-media-photo img { transform: scale(1.035); }
.argus-home-media-card::before {
	background: linear-gradient(transparent 6%, rgba(24, 8, 29, .58) 38%, rgba(19, 5, 23, .96) 78%);
	content: "";
	inset: 0;
	position: absolute;
	z-index: 1;
}
.argus-media-kicker .elementor-heading-title {
	color: #ff9c4c;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .13em;
	text-transform: uppercase;
}
.argus-media-title .elementor-heading-title {
	color: #fff;
	font-size: 21px;
	line-height: 1.12;
	margin-top: 10px;
}
.argus-media-body p {
	color: rgba(255, 255, 255, .68);
	font-size: 14px;
	line-height: 1.55;
	margin: 12px 0 0;
}
.argus-media-more { margin-top: 20px; }
.argus-media-more .elementor-button { color: #fff; font-size: 12px; font-weight: 700; }

@media (max-width: 1024px) {
	/* The grids follow the breakpoints the stylesheet already set: three across for the
	   service path and four for the media cards at desktop, two at tablet, one at phone. */
	.argus-card-row--3 > .elementor-container,
	.argus-card-row--4 > .elementor-container { flex-wrap: wrap; }
	.argus-card-row--3 .elementor-column,
	.argus-card-row--4 .elementor-column { width: 50% !important; flex: 0 0 calc(50% - 10px); }
	.argus-card-row--3 .elementor-column:nth-child(n+3),
	.argus-card-row--4 .elementor-column:nth-child(n+3) { margin-top: 20px; }
	.argus-home-services .argus-card-row--3 > .elementor-container {
		flex-wrap: wrap;
	}
	.argus-home-services .argus-card-row--3 > .elementor-container > .elementor-column {
		width: calc(50% - 10px) !important;
		flex: 0 0 calc(50% - 10px);
	}
	.argus-home-services .argus-card-row--3 .elementor-column:nth-child(n+3) {
		margin-top: 0;
	}
}

/* --- beyond the lesson: airy comparison variant ------------------------ */

.argus-home-media-concept.argus-home-media-concept--airy .argus-media-concept-lead p {
	max-width: 820px;
	white-space: normal;
}
@media (min-width: 1025px) {
	.argus-home-media-concept.argus-home-media-concept--airy .argus-media-concept-lead p {
		max-width: none;
		white-space: nowrap;
	}
}
.argus-home-media-concept--airy .argus-media-feature-grid { margin-top: 56px; }
.argus-home-media-concept--airy .argus-media-feature-grid > .elementor-container,
.argus-home-media-concept--airy .argus-media-feature-side > .elementor-widget-wrap,
.argus-home-media-concept--airy .argus-media-feature-top > .elementor-container { gap: 24px; }
.argus-home-media-concept--airy .argus-media-feature-card--main { min-height: 564px; }
.argus-home-media-concept--airy .argus-media-feature-card--compact,
.argus-home-media-concept--airy .argus-media-feature-card--wide { min-height: 270px; }
.argus-home-media-concept--airy .argus-media-feature-card {
	border: 6px solid #baa7c3;
	box-sizing: border-box;
}
.argus-home-media-concept--airy .argus-media-feature-card--compact .argus-media-feature-body { display: none; }
.argus-home-media-concept--airy .argus-media-feature-card--compact .argus-media-feature-title {
	margin-top: auto;
	max-width: 92%;
}
.argus-home-media-concept--airy .argus-media-feature-card--compact .argus-media-feature-more--cover {
	inset: 0;
	margin: 0;
	opacity: 0;
	position: absolute !important;
	z-index: 3 !important;
}
.argus-home-media-concept--airy .argus-media-feature-card--compact .argus-media-feature-more--cover,
.argus-home-media-concept--airy .argus-media-feature-card--compact .argus-media-feature-more--cover > .elementor-widget-container,
.argus-home-media-concept--airy .argus-media-feature-card--compact .argus-media-feature-more--cover .elementor-button-wrapper,
.argus-home-media-concept--airy .argus-media-feature-card--compact .argus-media-feature-more--cover .elementor-button {
	height: 100%;
	width: 100%;
}
.argus-home-media-concept--airy .argus-media-feature-card--compact .argus-media-feature-more--cover .elementor-button {
	display: block;
	padding: 0;
}

@media (max-width: 1024px) {
	.argus-home-media-concept--airy .argus-media-feature-grid,
	.argus-home-media-concept--airy .argus-media-feature-side > .elementor-widget-wrap,
	.argus-home-media-concept--airy .argus-media-feature-top > .elementor-container { gap: 20px; }
	.argus-home-media-concept--airy .argus-media-feature-grid { margin-top: 46px; }
	.argus-home-media-concept--airy .argus-media-feature-card--main { min-height: 500px; }
	.argus-home-media-concept--airy .argus-media-feature-top .argus-media-feature-card,
	.argus-home-media-concept--airy .argus-media-feature-bottom .argus-media-feature-card { min-height: 320px; }
}

@media (max-width: 767px) {
	.argus-home-media-concept--airy .argus-media-feature-grid { margin-top: 40px; }
	.argus-home-media-concept--airy .argus-media-feature-card--main { min-height: 440px; }
	.argus-home-media-concept--airy .argus-media-feature-top .argus-media-feature-card { min-height: 310px; }
	.argus-home-media-concept--airy .argus-media-feature-bottom .argus-media-feature-card { min-height: 340px; }
}

@media (max-width: 767px) {
	.argus-card-row > .elementor-container { display: block; }
	.argus-home-services .argus-card-row--3 > .elementor-container {
		display: block;
	}
	.argus-home-services .argus-card-row--3 > .elementor-container > .elementor-column {
		width: 100% !important;
		flex: 0 0 100%;
	}
	.argus-home-services .argus-card-row--3 .elementor-column + .elementor-column {
		margin-top: 20px;
	}
	/* The tablet rule sets a flex basis as well as a width, so both have to be undone
	   here or the cards stay two-up on a phone. */
	.argus-card-row .elementor-column { flex: 0 0 100%; width: 100% !important; }
	.argus-card-row .elementor-column + .elementor-column { margin-top: 20px; }
	.argus-home-service-card > .elementor-widget-wrap { padding: 26px 24px; }
	.argus-home-service-card .argus-card-title .elementor-heading-title { font-size: 25px; margin-top: 34px; }
	.argus-home-service-card .argus-card-badge { right: 20px; top: 22px; }

	.argus-recall-item > .elementor-widget-wrap {
		grid-template-columns: 1fr 22px;
		padding: 20px 0;
	}
	.argus-recall-label { grid-column: 1; grid-row: 2; }
	.argus-recall-go { grid-column: 2; grid-row: 1 / span 2; }
	.argus-sb-recall-section .elementor-inner-section + .elementor-inner-section { margin-top: 12px; }
	.argus-sb-recall-section .argus-recall-item.elementor-column > .elementor-widget-wrap {
		padding: 22px 24px;
	}
	.argus-sb-recall-section .elementor-inner-section .argus-recall-q .elementor-heading-title { font-size: 19px !important; }
	.argus-sb-recall-section .argus-recall-label .elementor-heading-title { white-space: normal; }
	.argus-sb-recall-section .elementor-element-cb590c5::after { right: 31px; }

	.argus-home-media-card,
	.argus-home-media-card.elementor-column > .elementor-widget-wrap { min-height: 430px; }
}

/* --- beyond the lesson: selected editorial concept ---------------------- */

.argus-home-media-concept {
	background: var(--argus-cream);
	padding: 110px 34px 120px;
}
.argus-home-media-concept .argus-media-concept-kicker { margin-bottom: 22px; }
.argus-home-media-concept .argus-media-concept-title { margin-bottom: 26px; }
.argus-home-media-concept .argus-media-concept-lead {
	border-left: 0;
	margin-bottom: 0;
	padding-left: 0;
}
.argus-home-media-concept .argus-media-concept-lead p {
	font-size: 17px;
	line-height: 1.72;
	max-width: none;
}
.argus-media-feature-grid { margin-top: 44px; }
.argus-media-feature-grid > .elementor-container {
	margin-left: 0 !important;
	margin-right: 0 !important;
	max-width: none !important;
	width: 100%;
}
.argus-media-feature-grid > .elementor-container {
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	width: 100%;
}
.argus-media-feature-grid > .elementor-container > .elementor-column {
	min-width: 0;
	width: 100% !important;
}
.argus-media-feature-side > .elementor-widget-wrap {
	display: flex;
	flex-direction: column;
	gap: 18px;
	padding: 0 !important;
}
.argus-media-feature-top,
.argus-media-feature-bottom { margin: 0 !important; }
.argus-media-feature-top > .elementor-container,
.argus-media-feature-bottom > .elementor-container {
	margin-left: 0 !important;
	margin-right: 0 !important;
	max-width: none !important;
	width: 100%;
}
.argus-media-feature-top > .elementor-container {
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	width: 100%;
}
.argus-media-feature-top > .elementor-container > .elementor-column,
.argus-media-feature-bottom > .elementor-container > .elementor-column {
	min-width: 0;
	width: 100% !important;
}
.argus-media-feature-card {
	background: #23102a;
	border-radius: 24px;
	min-height: 285px;
	overflow: hidden;
	position: relative;
}
.argus-media-feature-card--main { min-height: 588px; }
.argus-media-feature-card.elementor-column > .elementor-widget-wrap {
	align-content: flex-end;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	min-height: inherit;
	padding: 28px 26px 26px;
	position: relative;
}
.argus-media-feature-card--main.elementor-column > .elementor-widget-wrap { padding: 34px 38px 34px; }
.argus-media-feature-card .argus-media-feature-photo {
	inset: 0;
	margin: 0;
	position: absolute;
	z-index: 0;
}
.argus-media-feature-card .argus-media-feature-photo,
.argus-media-feature-card .argus-media-feature-photo > .elementor-widget-container,
.argus-media-feature-card .argus-media-feature-photo .elementor-image,
.argus-media-feature-card .argus-media-feature-photo img {
	display: block;
	height: 100%;
	width: 100%;
}
.argus-media-feature-card .argus-media-feature-photo img {
	object-fit: cover;
	transition: filter .35s ease, transform .45s ease;
}
.argus-media-feature-card--main .argus-media-feature-photo img { object-position: 48% center; }
.argus-media-feature-card--advertising .argus-media-feature-photo img { object-position: 52% center; }
.argus-media-feature-card--cinema .argus-media-feature-photo img { object-position: 48% center; }
.argus-media-feature-card--photos .argus-media-feature-photo img { object-position: center 37%; }
.argus-media-feature-card:hover .argus-media-feature-photo img {
	filter: brightness(1.08) saturate(1.06);
	transform: scale(1.035);
}
.argus-media-feature-card > .elementor-widget-wrap::before {
	background: linear-gradient(180deg, rgba(18, 6, 22, .62) 0%, rgba(18, 6, 22, .48) 38%, rgba(42, 29, 45, .82) 68%, rgba(38, 22, 43, .98) 100%);
	content: "";
	inset: 0;
	opacity: 1;
	pointer-events: none;
	position: absolute;
	transition: opacity .35s ease;
	z-index: 1;
}
.argus-media-feature-card:hover > .elementor-widget-wrap::before { opacity: .84; }
.argus-media-feature-card .elementor-widget:not(.argus-media-feature-photo) {
	position: relative;
	z-index: 2;
}
.argus-media-feature-number {
	left: 26px;
	position: absolute !important;
	top: 23px;
}
.argus-media-feature-card--main .argus-media-feature-number { left: 38px; top: 34px; }
.argus-media-feature-number .elementor-heading-title {
	color: #fff;
	font-family: var(--argus-display-family);
	font-size: 34px;
	font-weight: 780;
	letter-spacing: -.04em;
	line-height: 1;
}
.argus-media-feature-card--main .argus-media-feature-number .elementor-heading-title { font-size: 41px; }
.argus-media-feature-kicker {
	left: 78px;
	position: absolute !important;
	top: 25px;
}
.argus-media-feature-card--main .argus-media-feature-kicker {
	left: 100px;
	top: 36px;
}
.argus-media-feature-kicker .elementor-heading-title {
	color: #e4b164;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .13em !important;
	line-height: 1.35;
	text-transform: uppercase;
}
.argus-media-feature-title { margin-top: 9px; }
.argus-media-feature-title .elementor-heading-title {
	color: #fff;
	font-family: var(--argus-display-family);
	font-size: 23px;
	font-weight: 720;
	letter-spacing: -.035em;
	line-height: 1.12;
	text-transform: uppercase;
}
.argus-media-feature-card--main .argus-media-feature-title .elementor-heading-title {
	font-size: clamp(31px, 2.65vw, 40px);
	max-width: 590px;
}
.argus-media-feature-card--wide .argus-media-feature-title .elementor-heading-title { font-size: 29px; }
.argus-home-media-concept .elementor-widget-heading h3.elementor-heading-title { line-height: 1.12; }
.argus-media-feature-body { margin-top: 12px; }
.argus-media-feature-body p {
	color: rgba(255, 255, 255, .76);
	font-size: 13px;
	line-height: 1.5;
	margin: 0;
}
.argus-media-feature-card--main .argus-media-feature-body p {
	font-size: 15px;
	line-height: 1.58;
	max-width: 550px;
}
.argus-media-feature-card--wide .argus-media-feature-body p { max-width: 500px; }
.argus-media-feature-more { margin-top: 16px; width: fit-content; }
.argus-media-feature-more .elementor-button {
	background: transparent;
	border: 0;
	box-shadow: none;
	color: #fff;
	font-size: 12px;
	font-weight: 750;
	letter-spacing: 0;
	padding: 0;
	text-transform: none;
	transition: color .25s ease, transform .25s ease;
}
.argus-media-feature-more .elementor-button:hover,
.argus-media-feature-more .elementor-button:focus-visible,
.argus-media-feature-card:hover .argus-media-feature-more .elementor-button {
	color: #e4b164;
	transform: translateX(4px);
}
.argus-media-feature-card--main .argus-media-feature-more { margin-top: 22px; }
.argus-media-feature-card--main .argus-media-feature-more .elementor-button {
	background: #641b72;
	border-radius: 999px;
	font-size: 14px;
	padding: 14px 22px;
	transition: background-color .25s ease, box-shadow .25s ease, color .25s ease, transform .25s ease;
}
.argus-media-feature-card--main .argus-media-feature-more .elementor-button:hover,
.argus-media-feature-card--main .argus-media-feature-more .elementor-button:focus-visible,
.argus-media-feature-card--main:hover .argus-media-feature-more .elementor-button {
	background: #7a248b;
	box-shadow: 0 10px 22px rgba(58, 14, 66, .28);
	color: #fff;
	transform: translateY(-2px);
}
.argus-media-feature-more .elementor-button::after {
	content: "";
	inset: 0;
	position: absolute;
}
.elementor-editor-active .argus-media-feature-more .elementor-button::after { display: none; }
.argus-media-feature-card:focus-within { outline: 3px solid #ff9c4c; outline-offset: 3px; }

@media (max-width: 1180px) {
	.argus-media-feature-card--compact .argus-media-feature-body { display: none; }
	.argus-media-feature-card--compact .argus-media-feature-title .elementor-heading-title { font-size: 21px; }
}

@media (min-width: 1025px) {
	.argus-home-media-concept .argus-media-concept-lead p { white-space: nowrap; }
}

@media (max-width: 1024px) {
	.argus-home-media-concept { padding: 92px 34px 104px; }
	.argus-media-feature-grid > .elementor-container {
		grid-template-columns: minmax(0, 1fr);
	}
	.argus-media-feature-card--main { min-height: 540px; }
	.argus-media-feature-card--compact .argus-media-feature-body { display: block; }
	.argus-media-feature-top .argus-media-feature-card { min-height: 330px; }
	.argus-media-feature-bottom .argus-media-feature-card { min-height: 340px; }
	.argus-home-media-concept .elementor-widget-heading h3.elementor-heading-title { line-height: 1.13; }
}

@media (max-width: 767px) {
	.argus-home-media-concept { padding: 72px var(--argus-gutter) 82px; }
	.argus-home-media-concept .argus-media-concept-kicker { margin-bottom: 18px; }
	.argus-home-media-concept .argus-media-concept-title { margin-bottom: 22px; }
	.argus-home-media-concept .argus-media-concept-lead p {
		font-size: 16px;
		line-height: 1.65;
	}
	.argus-media-feature-grid { margin-top: 34px; }
	.argus-media-feature-grid > .elementor-container,
	.argus-media-feature-side > .elementor-widget-wrap,
	.argus-media-feature-top > .elementor-container { gap: 16px; }
	.argus-media-feature-top > .elementor-container { grid-template-columns: minmax(0, 1fr); }
	.argus-media-feature-card,
	.argus-media-feature-top .argus-media-feature-card,
	.argus-media-feature-bottom .argus-media-feature-card { min-height: 385px; }
	.argus-media-feature-card--main { min-height: 500px; }
	.argus-media-feature-card.elementor-column > .elementor-widget-wrap,
	.argus-media-feature-card--main.elementor-column > .elementor-widget-wrap { padding: 28px 24px; }
	.argus-media-feature-number,
	.argus-media-feature-card--main .argus-media-feature-number { left: 24px; top: 24px; }
	.argus-media-feature-number .elementor-heading-title,
	.argus-media-feature-card--main .argus-media-feature-number .elementor-heading-title { font-size: 36px; }
	.argus-media-feature-kicker,
	.argus-media-feature-card--main .argus-media-feature-kicker { left: 76px; top: 26px; }
	.argus-media-feature-title .elementor-heading-title,
	.argus-media-feature-card--compact .argus-media-feature-title .elementor-heading-title,
	.argus-media-feature-card--wide .argus-media-feature-title .elementor-heading-title { font-size: 27px; }
	.argus-media-feature-card--main .argus-media-feature-title .elementor-heading-title { font-size: 32px; }
	.argus-home-media-concept .elementor-widget-heading h3.elementor-heading-title { line-height: 1.14; }
	.argus-media-feature-body p,
	.argus-media-feature-card--main .argus-media-feature-body p { font-size: 14px; }
	.argus-media-feature-card--main .argus-media-feature-more .elementor-button {
		font-size: 13px;
		padding: 13px 18px;
	}
}
