/* LNTA Page Design — the shared treatment for interior pages.

   Each interior page was built separately in Elementor, so they had drifted
   into a dozen different card styles: hairline borders invisible against a
   white page, square boxes, 50px pill radii, and bullet lists set as plain
   discs. The classes below are applied by cards.js, which tags containers
   by shape rather than by element ID — see the note in that file.

   Palette, in step with the rest of the site:
     brand green #225321 · deep green #032902 · gold #f0a818
     surface #ffffff · hairline #e6e8de · body #39414d

   Colour declarations carry !important at two or more classes: the
   site-wide `.elementor * { color:#fff }` in so-css-tourm.css loads after
   plugin stylesheets and beats any single-class selector. */

/* ==========================================================================
   Cards
   ========================================================================== */

.elementor .lnta-card {
	background-color: #ffffff;
	border: 1px solid #e6e8de !important;
	/* The same green top rule the Vision & Mission cards carry, so a card
	   is recognisably a card across the whole site. Several of these pages
	   had a 1px pure-black border instead, which reads as a table cell. */
	border-top: 3px solid #225321 !important;
	border-radius: 16px !important;
	box-shadow: 0 2px 12px rgba(15, 47, 15, 0.07) !important;
	transition: box-shadow 0.25s ease, transform 0.25s ease, border-color 0.25s ease;
}

/* Cards whose title is bold text inside the editor rather than a heading
   widget: give that first line the weight and colour a title needs. */
.elementor .lnta-card--titleless .elementor-widget-text-editor p:first-child strong,
.elementor .lnta-card--titleless .elementor-widget-text-editor p:first-child b {
	display: block;
	margin-bottom: 8px;
	color: #225321 !important;
	font-size: 1.08rem;
	line-height: 1.3;
}

.elementor .lnta-card:hover {
	transform: translateY(-3px);
	border-color: #d9e2d6 !important;
	box-shadow: 0 14px 32px rgba(15, 47, 15, 0.11) !important;
}

/* A filled card already reads as a block; a border on top of the fill just
   draws a line around it. */
.elementor .lnta-card--dark {
	background-color: initial;
	border: 0 !important;
	box-shadow: 0 12px 30px rgba(3, 41, 2, 0.18) !important;
}

.elementor .lnta-card--dark:hover {
	border: 0 !important;
	box-shadow: 0 18px 40px rgba(3, 41, 2, 0.24) !important;
}

/* ==========================================================================
   Headings
   ========================================================================== */

/* A short gold rule above each card heading, the same marker the rest of
   the site uses, so a page of cards has something to scan by. */
.elementor .lnta-card .elementor-widget-heading:first-of-type .elementor-heading-title::before {
	content: '';
	display: block;
	width: 42px;
	height: 3px;
	margin-bottom: 14px;
	border-radius: 999px;
	background: #f0a818;
}

.elementor .lnta-card .elementor-heading-title {
	line-height: 1.3 !important;
}

.elementor .lnta-card:not(.lnta-card--dark) .elementor-heading-title {
	color: #225321 !important;
}

.elementor .lnta-card--dark .elementor-heading-title {
	color: #ffffff !important;
}

/* ==========================================================================
   Body copy and lists
   ========================================================================== */

.elementor .lnta-card:not(.lnta-card--dark) p {
	color: #39414d !important;
	line-height: 1.75 !important;
}

.elementor .lnta-card--dark p {
	color: rgba(255, 255, 255, 0.88) !important;
	line-height: 1.75 !important;
}

/* The theme's trailing paragraph margin leaves a band of empty space under
   a card's last line, on top of the card's own padding. */
.elementor .lnta-card .elementor-widget-container > p:last-child,
.elementor .lnta-card .elementor-widget-container > ul:last-child {
	margin-bottom: 0 !important;
}

.elementor .lnta-card ul {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.elementor .lnta-card li {
	position: relative;
	margin: 0 0 11px !important;
	padding-left: 29px;
	line-height: 1.65;
	list-style: none !important;
}

.elementor .lnta-card li::marker {
	content: '';
}

/* A gold tick in place of a disc, drawn as a rotated corner rather than a
   glyph so it needs no icon font and renders identically everywhere. */
.elementor .lnta-card li::before {
	content: '';
	position: absolute;
	left: 2px;
	top: 0.46em;
	width: 7px;
	height: 12px;
	border: solid #f0a818;
	border-width: 0 2.5px 2.5px 0;
	transform: rotate(42deg);
}

.elementor .lnta-card:not(.lnta-card--dark) li {
	color: #39414d !important;
}

.elementor .lnta-card--dark li {
	color: rgba(255, 255, 255, 0.88) !important;
}

/* ==========================================================================
   Responsive
   ========================================================================== */

@media (max-width: 575px) {
	.elementor .lnta-card {
		border-radius: 14px !important;
	}

	/* Hover lift is meaningless on a touch screen and leaves cards stuck in
	   the raised state after a tap. */
	.elementor .lnta-card:hover {
		transform: none;
	}
}

/* ==========================================================================
   Tourism Investment (page 7977) — two dead video embeds
   ==========================================================================

   Four YouTube videos are embedded on that page. Two of them no longer
   resolve — YouTube's oEmbed endpoint returns 404 for both, which means the
   video is deleted, set to private, or the id is wrong:

     mZmz4ZB61UI  under "Reimagine Providence Island"
     ksqKIaCYVQ0  under "The Blue Lake Resort"

   (The other two, Robertsport Surf Hotel and Sapo National Park, are live on
   LNTA's own channel and are left alone.)

   A dead embed renders as a black panel reading "Video unavailable", which
   is worse than no video at all on a page aimed at investors. They are
   hidden here rather than deleted, so re-publishing the videos — or
   correcting the ids in Elementor — brings them straight back: remove this
   block and nothing else needs doing. */

.elementor-element-1be1602,
.elementor-element-b21e8de {
	display: none !important;
}

/* ==========================================================================
   National Responsibility (page 7675)
   ==========================================================================

   Restructured to the same system as Vision & Mission: green panels for the
   statements of standing, white cards with gold check lists for the working
   detail, and the six responsibilities numbered so the longest stretch of
   the page has a spine to follow.

   The page arrived as four full-width colour bands with the text sitting
   directly on them — nothing was a card, so the shared tagger in cards.js
   correctly found nothing to tag and this is all keyed to element IDs.

   Card titles here are a bold first line inside the text editor rather than
   a heading widget (`<b style="color:#000">`), so the inline colour has to
   be overridden rather than inherited. */

/* ---------- Green panels: the opening pair, and the closing pair ---------- */

.elementor-element-d495cea,
.elementor-element-bbd08b7 {
	/* The band itself steps back; the panels inside it become the objects. */
	background-color: transparent !important;
	padding: 30px 0 !important;
}

.elementor-element-d495cea > .e-con-inner,
.elementor-element-bbd08b7 > .e-con-inner,
.elementor-element-a9fe786 > .e-con-inner {
	gap: 26px !important;
	align-items: stretch !important;
}

.elementor-element-15a83ce,
.elementor-element-eec7b9f,
.elementor-element-3337227,
.elementor-element-a858c8e {
	position: relative;
	width: auto !important;
	flex: 1 1 0 !important;
	background-color: #032902 !important;
	border: 0 !important;
	border-radius: 18px !important;
	padding: 40px 36px !important;
	overflow: hidden;
	box-shadow: 0 14px 34px rgba(3, 41, 2, 0.18);
	/* Column containers that Elementor also set to wrap: see flexguard.js. */
	flex-wrap: nowrap !important;
}

.elementor-element-15a83ce::after,
.elementor-element-eec7b9f::after,
.elementor-element-3337227::after,
.elementor-element-a858c8e::after {
	content: '';
	position: absolute;
	inset: 0;
	pointer-events: none;
	background:
		radial-gradient(90% 70% at 100% 0%, rgba(240, 168, 24, 0.07), rgba(240, 168, 24, 0) 60%),
		radial-gradient(80% 60% at 0% 100%, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0) 60%);
}

.elementor-element-15a83ce > *,
.elementor-element-eec7b9f > *,
.elementor-element-3337227 > *,
.elementor-element-a858c8e > * {
	position: relative;
	z-index: 1;
}

/* The bold first line of each panel is its title. */
.elementor-element-15a83ce b,
.elementor-element-eec7b9f b,
.elementor-element-3337227 h5,
.elementor-element-a858c8e h5,
.elementor-element-3337227 b,
.elementor-element-a858c8e b {
	display: block;
	margin-bottom: 14px;
	color: #f0a818 !important;
	font-size: 1.3rem;
	font-weight: 800;
	line-height: 1.25;
}

/* A gold rule above each title, the marker used across the site.
   The four panel titles are not marked up the same way — two are <b>, one is
   an <h5>, one is a <b> with a <br> after it — so each has to be named. */
.elementor-element-15a83ce b::before,
.elementor-element-eec7b9f b::before,
.elementor-element-3337227 b::before,
.elementor-element-a858c8e b::before,
.elementor-element-3337227 h5::before,
.elementor-element-a858c8e h5::before {
	content: '';
	display: block;
	width: 46px;
	height: 4px;
	margin-bottom: 16px;
	border-radius: 999px;
	background: #f0a818;
}

.elementor-element-d495cea p,
.elementor-element-bbd08b7 p,
.elementor-element-bbd08b7 li {
	color: rgba(255, 255, 255, 0.88) !important;
	line-height: 1.8 !important;
}

/* The theme's <br> after the bold title doubles the gap the title already
   has below it. */
.elementor-element-15a83ce b + br,
.elementor-element-eec7b9f b + br,
.elementor-element-3337227 b + br,
.elementor-element-a858c8e b + br {
	display: none;
}

/* ---------- White pair: role and regulatory functions ---------- */

.elementor-element-15a6a39,
.elementor-element-3f1c4f9 {
	width: auto !important;
	flex: 1 1 0 !important;
	background-color: #ffffff !important;
	border: 1px solid #e6e8de !important;
	border-top: 4px solid #225321 !important;
	border-radius: 18px !important;
	padding: 36px 34px !important;
	box-shadow: 0 2px 12px rgba(15, 47, 15, 0.07) !important;
	flex-wrap: nowrap !important;
}

.elementor-element-15a6a39 h5,
.elementor-element-3f1c4f9 h5 {
	color: #225321 !important;
	font-size: clamp(1.25rem, 1.7vw, 1.5rem) !important;
	line-height: 1.3 !important;
}

.elementor-element-15a6a39 h5::before,
.elementor-element-3f1c4f9 h5::before {
	content: '';
	display: block;
	width: 46px;
	height: 4px;
	margin-bottom: 16px;
	border-radius: 999px;
	background: #f0a818;
}

.elementor-element-15a6a39 p,
.elementor-element-3f1c4f9 p {
	color: #39414d !important;
	line-height: 1.8 !important;
}

/* The same leftover frame inside the panels and the white pair. */
.elementor-element-d495cea .elementor-widget-text-editor > .elementor-widget-container,
.elementor-element-a9fe786 .elementor-widget-text-editor > .elementor-widget-container,
.elementor-element-bbd08b7 .elementor-widget-text-editor > .elementor-widget-container {
	border: 0 !important;
	padding: 0 !important;
}

/* ---------- Check lists ---------- */

.elementor-element-a9fe786 ul,
.elementor-element-bbd08b7 ul {
	margin: 14px 0 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.elementor-element-a9fe786 li,
.elementor-element-bbd08b7 li {
	position: relative;
	margin: 0 0 12px !important;
	padding-left: 30px;
	line-height: 1.65;
	list-style: none !important;
}

.elementor-element-a9fe786 li::marker,
.elementor-element-bbd08b7 li::marker {
	content: '';
}

.elementor-element-a9fe786 li::before,
.elementor-element-bbd08b7 li::before {
	content: '';
	position: absolute;
	left: 2px;
	top: 0.46em;
	width: 7px;
	height: 12px;
	border: solid #f0a818;
	border-width: 0 2.5px 2.5px 0;
	transform: rotate(42deg);
}

.elementor-element-a9fe786 li {
	color: #39414d !important;
}

/* ---------- Section heading ---------- */

.elementor-element-7513884 {
	padding-top: 44px !important;
	padding-bottom: 6px !important;
}

.elementor-element-7513884 h2 {
	color: #225321 !important;
	font-size: clamp(1.6rem, 2.4vw, 2.1rem) !important;
}

/* Centred, because the standfirst under it is centred too — orphaning that
   line to the left would read worse than matching Vision & Mission exactly. */
.elementor-element-7513884 h2::before {
	content: '';
	display: block;
	width: 46px;
	height: 4px;
	margin: 0 auto 16px;
	border-radius: 999px;
	background: #f0a818;
}

.elementor-element-7513884 p {
	color: #6b7280 !important;
}

/* ---------- The six responsibilities, numbered ---------- */

/* The two rows are separate containers, so the counter resets on the page
   wrapper and runs across both in document order. */
.elementor-7675 {
	counter-reset: lnr-duty;
}

.elementor-element-f1366ef > .e-con-inner,
.elementor-element-1236e89 > .e-con-inner {
	gap: 26px !important;
	align-items: stretch !important;
}

.elementor-element-f1366ef,
.elementor-element-1236e89 {
	padding-top: 13px !important;
	padding-bottom: 13px !important;
}

.elementor-element-cc7639e,
.elementor-element-5b42979,
.elementor-element-97747ed,
.elementor-element-2feca73,
.elementor-element-c14186d,
.elementor-element-ff5b7e5 {
	position: relative;
	counter-increment: lnr-duty;
	width: auto !important;
	flex: 1 1 0 !important;
	overflow: hidden;
	background-color: #ffffff !important;
	border: 1px solid #e6e8de !important;
	border-top: 4px solid #225321 !important;
	border-radius: 18px !important;
	padding: 34px 30px !important;
	box-shadow: 0 2px 12px rgba(15, 47, 15, 0.07) !important;
	flex-wrap: nowrap !important;
	transition: box-shadow 0.25s ease, transform 0.25s ease, border-color 0.25s ease;
}

.elementor-element-cc7639e:hover,
.elementor-element-5b42979:hover,
.elementor-element-97747ed:hover,
.elementor-element-2feca73:hover,
.elementor-element-c14186d:hover,
.elementor-element-ff5b7e5:hover {
	transform: translateY(-4px);
	border-color: #d9e2d6 !important;
	box-shadow: 0 16px 36px rgba(15, 47, 15, 0.12) !important;
}

/* Elementor gives every container a ::before of its own for the background
   overlay, and its stylesheet loads after plugin stylesheets — hence
   !important on content, and `inset: auto` so the box does not stretch
   across the card and print the numeral over the title. */
.elementor-7675 .elementor-element-cc7639e::before,
.elementor-7675 .elementor-element-5b42979::before,
.elementor-7675 .elementor-element-97747ed::before,
.elementor-7675 .elementor-element-2feca73::before,
.elementor-7675 .elementor-element-c14186d::before,
.elementor-7675 .elementor-element-ff5b7e5::before {
	content: counter(lnr-duty, decimal-leading-zero) !important;
	display: block !important;
	position: absolute !important;
	inset: auto !important;
	top: 4px !important;
	right: 20px !important;
	left: auto !important;
	bottom: auto !important;
	width: auto !important;
	height: auto !important;
	font-size: 4.6rem;
	font-weight: 800;
	line-height: 1;
	color: rgba(34, 83, 33, 0.10) !important;
	background: none !important;
	pointer-events: none;
	z-index: 0;
}

.elementor-element-f1366ef .elementor-widget,
.elementor-element-1236e89 .elementor-widget {
	position: relative;
	z-index: 1;
}

/* Each text widget inside these cards carries its own 1px black border and
   28px of padding — from the original design, where the text box WAS the
   card. Now that the container is the card, that leaves a box drawn inside
   a box. */
.elementor-element-f1366ef .elementor-widget-text-editor > .elementor-widget-container,
.elementor-element-1236e89 .elementor-widget-text-editor > .elementor-widget-container {
	border: 0 !important;
	padding: 0 !important;
}

/* The bold first line is the card's title. */
.elementor-element-f1366ef b,
.elementor-element-1236e89 b {
	display: block;
	margin-bottom: 10px;
	padding-right: 52px;
	color: #225321 !important;
	font-size: 1.12rem;
	font-weight: 700;
	line-height: 1.35;
}

.elementor-element-f1366ef p,
.elementor-element-1236e89 p {
	margin-bottom: 0 !important;
	color: #39414d !important;
	font-size: 0.97rem;
	line-height: 1.7;
}

/* ---------- Responsive ---------- */

@media (max-width: 991px) {
	.elementor-element-d495cea > .e-con-inner,
	.elementor-element-bbd08b7 > .e-con-inner,
	.elementor-element-a9fe786 > .e-con-inner,
	.elementor-element-f1366ef > .e-con-inner,
	.elementor-element-1236e89 > .e-con-inner {
		flex-direction: column !important;
		gap: 20px !important;
	}

	/* `flex: 1 1 0` shares a row evenly on a wide screen and then shares the
	   COLUMN evenly once stacked, padding the shorter card out to match the
	   taller one. */
	.elementor-element-15a83ce,
	.elementor-element-eec7b9f,
	.elementor-element-3337227,
	.elementor-element-a858c8e,
	.elementor-element-15a6a39,
	.elementor-element-3f1c4f9,
	.elementor-element-cc7639e,
	.elementor-element-5b42979,
	.elementor-element-97747ed,
	.elementor-element-2feca73,
	.elementor-element-c14186d,
	.elementor-element-ff5b7e5 {
		flex: 0 0 auto !important;
		padding: 28px 24px !important;
	}
}

@media (max-width: 575px) {
	.elementor-7675 .elementor-element-cc7639e::before,
	.elementor-7675 .elementor-element-5b42979::before,
	.elementor-7675 .elementor-element-97747ed::before,
	.elementor-7675 .elementor-element-2feca73::before,
	.elementor-7675 .elementor-element-c14186d::before,
	.elementor-7675 .elementor-element-ff5b7e5::before {
		font-size: 3.6rem;
		right: 16px;
	}
}

/* ==========================================================================
   The band-and-tile pages
   ==========================================================================

   Tourism Development Fund, Research & Product Development, Standards &
   Certification, Tourism Investment and Domestic Tourists are all built from
   the same kit, so they share this treatment rather than several hundred
   per-element selectors. The classes are applied by assets/js/structure.js,
   which reads each section's SHAPE — see the note in that file.

   The system matches Vision & Mission: green panels for statements of
   standing, white tiles with green top rules for the working detail, a gold
   rule above every section heading, gold check lists. */

/* ---------- Sections ---------- */

.lnta-sec--hero,
.lnta-sec--pair,
.lnta-sec--row,
.lnta-sec--statement {
	padding-top: 30px !important;
	padding-bottom: 30px !important;
}

.lnta-sec--hero,
.lnta-sec--row.lnta-sec--dark,
.lnta-sec--pair.lnta-sec--dark {
	/* The band steps back so the panels inside it become the objects. */
	background-color: transparent !important;
}

.lnta-sec--hero > .e-con-inner,
.lnta-sec--pair > .e-con-inner,
.lnta-sec--row > .e-con-inner {
	gap: 26px !important;
	align-items: stretch !important;
}

/* ---------- Statement bands ---------- */

.lnta-sec--statement {
	text-align: center;
}

.lnta-sec--statement h2 {
	margin-bottom: 12px !important;
	color: #225321 !important;
	font-size: clamp(1.5rem, 2.3vw, 2rem) !important;
	line-height: 1.25 !important;
}

.lnta-sec--statement h2::before {
	content: '';
	display: block;
	width: 46px;
	height: 4px;
	margin: 0 auto 16px;
	border-radius: 999px;
	background: #f0a818;
}

.lnta-sec--statement p {
	max-width: 70ch;
	margin-left: auto !important;
	margin-right: auto !important;
	color: #4b5563 !important;
	line-height: 1.75 !important;
}

/* A statement band that is itself dark reverses out. */
.lnta-sec--statement.lnta-sec--dark h2 {
	color: #ffffff !important;
}

.lnta-sec--statement.lnta-sec--dark p {
	color: rgba(255, 255, 255, 0.86) !important;
}

/* ---------- Green panels ---------- */

.lnta-panel {
	position: relative;
	width: auto !important;
	flex: 1 1 0 !important;
	background-color: #032902 !important;
	border: 0 !important;
	border-radius: 18px !important;
	padding: 40px 36px !important;
	overflow: hidden;
	box-shadow: 0 14px 34px rgba(3, 41, 2, 0.18);
	/* Column containers Elementor also set to wrap — see flexguard.js. */
	flex-wrap: nowrap !important;
}

.lnta-panel::after {
	content: '';
	position: absolute;
	inset: 0;
	pointer-events: none;
	background:
		radial-gradient(90% 70% at 100% 0%, rgba(240, 168, 24, 0.07), rgba(240, 168, 24, 0) 60%),
		radial-gradient(80% 60% at 0% 100%, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0) 60%);
}

.lnta-panel > * {
	position: relative;
	z-index: 1;
}

/* The eyebrow these panels open with, and the gold rule above it. */
.lnta-panel h5 {
	margin-bottom: 10px !important;
	color: #f0a818 !important;
	font-size: 0.78rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.lnta-panel h5::before {
	content: '';
	display: block;
	width: 46px;
	height: 4px;
	margin-bottom: 16px;
	border-radius: 999px;
	background: #f0a818;
}

.lnta-panel p > b:first-child {
	display: block;
	margin-bottom: 10px;
	color: #ffffff !important;
	font-size: 1.3rem;
	font-weight: 800;
	line-height: 1.25;
}

.lnta-panel p > b:first-child + br {
	display: none;
}

.lnta-panel p,
.lnta-panel li {
	color: rgba(255, 255, 255, 0.88) !important;
	line-height: 1.8 !important;
}

/* ---------- White tiles ---------- */

.lnta-tile {
	position: relative;
	width: auto !important;
	flex: 1 1 0 !important;
	background-color: #ffffff !important;
	border: 1px solid #e6e8de !important;
	border-top: 4px solid #225321 !important;
	border-radius: 18px !important;
	padding: 34px 30px !important;
	box-shadow: 0 2px 12px rgba(15, 47, 15, 0.07) !important;
	flex-wrap: nowrap !important;
	transition: box-shadow 0.25s ease, transform 0.25s ease, border-color 0.25s ease;
}

.lnta-sec--row .lnta-tile:hover {
	transform: translateY(-4px);
	border-color: #d9e2d6 !important;
	box-shadow: 0 16px 36px rgba(15, 47, 15, 0.12) !important;
}

/* Every text widget on these pages carries its own 1px border and padding,
   from the original design where the text box WAS the card. */
.lnta-panel .elementor-widget-text-editor > .elementor-widget-container,
.lnta-tile .elementor-widget-text-editor > .elementor-widget-container {
	border: 0 !important;
	padding: 0 !important;
}

.lnta-tile h4,
.lnta-tile h5 {
	color: #225321 !important;
	font-size: clamp(1.15rem, 1.5vw, 1.4rem) !important;
	line-height: 1.3 !important;
}

.lnta-tile h5::before,
.lnta-sec--pair .lnta-tile h4::before {
	content: '';
	display: block;
	width: 46px;
	height: 4px;
	margin-bottom: 16px;
	border-radius: 999px;
	background: #f0a818;
}

.lnta-tile > .elementor-widget b:first-child,
.lnta-tile .elementor-widget-container > b:first-child {
	display: block;
	margin-bottom: 10px;
	color: #225321 !important;
	font-size: 1.1rem;
	font-weight: 700;
	line-height: 1.35;
}

.lnta-tile .elementor-widget-container > b:first-child + br {
	display: none;
}

.lnta-tile p,
.lnta-tile li {
	color: #39414d !important;
	line-height: 1.75 !important;
}

/* ---------- Figure tiles ---------- */

/* Label, a line of context, then the number — the number is the point, so
   it leads at size rather than trailing the sentence. */
.lnta-tile--stat {
	text-align: center;
}

.lnta-tile--stat .elementor-widget-container > b:first-child {
	color: #14181f !important;
	font-size: 1rem;
}

.lnta-tile--stat i {
	display: block;
	margin-bottom: 14px;
	color: #6b7280 !important;
	font-size: 0.88rem;
	font-style: normal;
}

.lnta-tile--stat h4 {
	margin: 0 !important;
	color: #225321 !important;
	font-size: clamp(1.9rem, 3vw, 2.6rem) !important;
	font-weight: 800 !important;
	line-height: 1 !important;
}

.lnta-tile--stat br {
	display: none;
}

/* ---------- Media columns ---------- */

/* A PDF or a video draws its own frame; a card around it is a frame too. */
.lnta-media {
	width: auto !important;
	flex: 1 1 0 !important;
	background-color: transparent !important;
	border: 0 !important;
	padding: 0 !important;
	flex-wrap: nowrap !important;
}

.lnta-media iframe,
.lnta-media video {
	border-radius: 12px;
}

/* ---------- Check lists ---------- */

.lnta-panel ul,
.lnta-tile ul {
	margin: 14px 0 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.lnta-panel li,
.lnta-tile li {
	position: relative;
	margin: 0 0 12px !important;
	padding-left: 30px;
	line-height: 1.65;
	list-style: none !important;
}

.lnta-panel li::marker,
.lnta-tile li::marker {
	content: '';
}

.lnta-panel li::before,
.lnta-tile li::before {
	content: '';
	position: absolute;
	left: 2px;
	top: 0.46em;
	width: 7px;
	height: 12px;
	border: solid #f0a818;
	border-width: 0 2.5px 2.5px 0;
	transform: rotate(42deg);
}

/* ---------- Responsive ---------- */

/* Links written into the body of a tile — the directory links on Standards,
   for instance — are 20px of plain text. They are the action the tile exists
   for, so they read as links and carry a fingertip's worth of height. */
.lnta-tile a:not(.th-btn),
.lnta-panel a:not(.th-btn) {
	color: #b8790b !important;
	font-weight: 700;
	text-decoration: none;
}

.lnta-panel a:not(.th-btn) {
	color: #f0a818 !important;
}

.lnta-tile a:not(.th-btn):hover,
.lnta-panel a:not(.th-btn):hover {
	text-decoration: underline;
}

@media (max-width: 991px) {
	.lnta-tile a:not(.th-btn),
	.lnta-panel a:not(.th-btn) {
		display: inline-flex;
		align-items: center;
		min-height: 44px;
	}

	/* Two shapes to cover: a BOXED container holds its columns inside an
	   .e-con-inner, a FULL one holds them directly. Targeting only the inner
	   left the full-width rows in a row — four cards 1778px wide inside a
	   390px phone, clipped rather than stacked. */
	.lnta-sec--hero,
	.lnta-sec--pair,
	.lnta-sec--row,
	.lnta-sec--hero > .e-con-inner,
	.lnta-sec--pair > .e-con-inner,
	.lnta-sec--row > .e-con-inner {
		flex-direction: column !important;
		gap: 20px !important;
	}

	/* `flex: 1 1 0` shares a row evenly, then shares the COLUMN evenly once
	   stacked — padding the shorter card out to match the taller one. */
	.lnta-panel,
	.lnta-tile,
	.lnta-media {
		flex: 0 0 auto !important;
	}

	.lnta-panel,
	.lnta-tile {
		padding: 28px 24px !important;
	}
}

/* The header and footer are Elementor templates with their own `.elementor`
   wrappers, so these classes must never take effect there even if something
   tags them by mistake. This is the stylesheet half of the same guard that
   structure.js applies when tagging. */
footer .lnta-card,
footer .lnta-panel,
footer .lnta-tile,
footer .lnta-sec--hero,
footer .lnta-sec--pair,
footer .lnta-sec--row,
footer .lnta-sec--statement,
header .lnta-card,
header .lnta-panel,
header .lnta-tile {
	background-color: initial !important;
	border: 0 !important;
	border-radius: 0 !important;
	padding: revert !important;
	box-shadow: none !important;
}

footer .lnta-card li::before,
footer .lnta-panel li::before,
footer .lnta-tile li::before,
header .lnta-card li::before,
header .lnta-panel li::before,
header .lnta-tile li::before {
	content: none !important;
}

footer .lnta-card li,
footer .lnta-panel li,
footer .lnta-tile li,
header .lnta-card li,
header .lnta-panel li,
header .lnta-tile li {
	padding-left: 0 !important;
}

footer .lnta-card a:not(.th-btn),
footer .lnta-panel a:not(.th-btn),
footer .lnta-tile a:not(.th-btn),
header .lnta-card a:not(.th-btn),
header .lnta-panel a:not(.th-btn),
header .lnta-tile a:not(.th-btn) {
	color: inherit !important;
	font-weight: inherit;
	min-height: 0;
}
