.elementor-kit-21{--e-global-color-primary:#F3F7FA;--e-global-color-secondary:#F2C879;--e-global-color-text:#C4D3DE;--e-global-color-accent:#5EC1B6;--e-global-color-f898f31:#FFFEFE;--e-global-color-0d046a4:#E9E9E9;--e-global-color-c6c574f:#F9F9F9;--e-global-color-7ad78f4:#FFFFFFE6;--e-global-color-8630d9f:#7E222200;--e-global-color-b500f0a:#FFFFFF;--e-global-typography-primary-font-family:"Montserrat";--e-global-typography-primary-font-weight:300;--e-global-typography-secondary-font-family:"Montserrat";--e-global-typography-secondary-font-weight:300;--e-global-typography-text-font-family:"Montserrat";--e-global-typography-text-font-weight:300;--e-global-typography-accent-font-family:"Montserrat";--e-global-typography-accent-font-weight:300;--e-global-typography-accent-line-height:1.2em;background-color:#011826;}.elementor-kit-21 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1400px;}.e-con{--container-max-width:1400px;--container-default-padding-top:0%;--container-default-padding-right:3%;--container-default-padding-bottom:0%;--container-default-padding-left:3%;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-kit-21{--e-global-typography-primary-font-size:32px;--e-global-typography-secondary-font-size:18px;--e-global-typography-text-font-size:15px;--e-global-typography-accent-font-size:15px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-21{--e-global-typography-primary-font-size:30px;--e-global-typography-secondary-font-size:16px;--e-global-typography-text-font-size:15px;--e-global-typography-accent-font-size:15px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */body.page #comments {display: none;}

/* ** ELEMENTOR SYSTEM LOCK ** */
.elementor-widget-text-editor * {
  font-weight: var(--font-weight-light) !important;
}
/* ** ! ** */

/* ** COLOR SYSTEM VARIABLES ** */
:root {
  /* Surfaces */
  --color-bg-void: #011826;
  --color-bg-primary: #052D43;
  --color-bg-card: #031E2D;
  --color-bg-inset: #082A3D;

  /* Borders */
  --color-border-subtle: #1C3B4D;
  --color-border-strong: #3A7FA3;

  /* Text — tuned brighter for 300 weight */
  --color-text-primary: #F7FBFF;
  --color-text-secondary: #D3E0E8;
  --color-text-meta: #9FB6C5;
  --color-text-muted: #6F8898;

  /* Headings */
  --color-heading-1: #FFFFFF;
  --color-heading-2: #DCECF6;
  --color-heading-3: #F2C879;
  --color-heading-4: #9FD6F0;

  /* Links */
  --color-link-default: #E3D4A3;
  --color-link-hover: #E3D4A3;
  --color-link-visited: #C8B07A;

  /* External / Case Law */
  --color-link-external: #78B7D6;
  --color-link-external-hover: #A4D5EC;

  /* Taxonomy */
  --color-category: #5EC1B6;

  /* Quotes */
  --color-quote-text: #FFDFA3;
  --color-quote-border: #F2C879;
}

/* ** TYPOGRAPHY VARIABLES ** */

:root {
 --font-family-base: 'Montserrat', system-ui, -apple-system, sans-serif;
  --font-weight-light: 300;

  /* Body */
  --font-size-body: 1.0625rem;     /* 17px */
  --line-height-body: 1.65;
  --letter-spacing-body: 0.01em;

  /* Meta */
  --font-size-meta: 0.875rem;      /* 14px */
  --line-height-meta: 1.45;
  --letter-spacing-meta: 0.05em;

  /* Citations */
  --font-size-citation: 0.8125rem; /* 13px */
  --line-height-citation: 1.45;
  --letter-spacing-citation: 0.05em;

  /* Quotes */
  --font-size-quote: 1.1875rem;    /* 19px */
  --line-height-quote: 1.6;

  /* Headings */
  --font-size-h1: 2.75rem;         /* 44px */
  --line-height-h1: 1.15;
  --letter-spacing-h1: -0.01em;
  --font-weight-heading: 500;

  --font-size-h2: 1.875rem;        /* 30px */
  --line-height-h2: 1.3;
  --letter-spacing-h2: -0.005em;

  --font-size-h3: 1.5rem;          /* 24px */
  --line-height-h3: 1.4;

  --font-size-h4: 1.25rem;         /* 20px */
  --line-height-h4: 1.45;

  /* UI */
  --font-size-nav: 0.875rem;
  --letter-spacing-nav: 0.06em;

  /* Cards */
  --font-size-card-title: 1.375rem;
  --font-size-card-excerpt: 1rem;
  --font-size-card-category: 0.75rem;
  --letter-spacing-card-category: 0.07em;
}

/* ** SPACING VARIABLES ** */

:root {
  --space-xs: 0.5rem;
  --space-sm: 0.75rem;
  --space-md: 1.25rem;
  --space-lg: 1.75rem;
  --space-xl: 3.5rem;
  --space-xxl: 4.5rem;
}

/* ** BASE OVERRIDES ** */

body {
  font-family: var(--font-family-base);
  font-weight: var(--font-weight-light);
  font-size: var(--font-size-body);
  line-height: var(--line-height-body);
  letter-spacing: var(--letter-spacing-body);
  color: var(--color-text-primary);
  background-color: var(--color-bg-void);
}

h1 {
  font-size: var(--font-size-h1);
  line-height: var(--line-height-h1);
  letter-spacing: var(--letter-spacing-h1);
  color: var(--color-heading-1);
}

h2 {
  font-size: var(--font-size-h2);
  font-weight: var(--font-weight-heading);
  line-height: var(--line-height-h2);
  letter-spacing: var(--letter-spacing-h2);
  color: var(--color-heading-2);
}

h3 {
  font-size: var(--font-size-h3);
  font-weight: var(--font-weight-heading);
  line-height: var(--line-height-h3);
  color: var(--color-heading-3);
}

h4 {
  font-size: var(--font-size-h4);
  font-weight: var(--font-weight-heading);
  line-height: var(--line-height-h4);
  color: var(--color-heading-4);
}

a {
  color: var(--color-link-default);
}

a:hover {
  color: var(--color-link-hover);
  text-decoration: underline;
}

a:visited {
  color: var(--color-link-visited);
}

.primary-button a, .primary-button a:visited {
	color: var(--color-link-default);
	border: solid 1px var(--color-link-default);
	border-radius: 3rem;
	background: var(--color-bg-card);
}

.secondary-button a, .secondary-button a:visited {
	color: var(--color-link-visited);
	border: solid 1px var(--color-link-visited);
	border-radius: 3rem;
	background: var(--color-bg-void);
}

.primary-button a:hover, .secondary-button a:hover {
	color: var(--color-link-default);
	border: solid 1px var(--color-link-default);
	background: var(--color-bg-primary);
}

.footer {padding: var(--space-lg);background: var(--color-bg-primary);}

.footer p {font-size: var(--font-size-meta);}

.hero {
	background-size: cover !important;
	background-repeat: no-repeat !important;
}

.e-loop__load-more a {
	font-size: var(--font-size-h4);
	font-weight: var(--font-weight-heading);
	background: var(--color-bg-card);
	border: 1px solid var(--color-border-subtle);
	border-radius: 0;
}

.article-card {
  background: var(--color-bg-card);
  border: 1px solid var(--color-border-subtle);
  padding: var(--space-lg);
}

.article-card .excerpt {
  font-size: var(--font-size-card-excerpt);
  color: var(--color-text-secondary);
}

.article-card .category {
  font-size: var(--font-size-card-category);
  letter-spacing: var(--letter-spacing-card-category);
  color: var(--color-category);
  text-transform: uppercase;
}

.article-intro * {
	font-size: var(--font-size-h3);
	line-height: var(--line-height-h4);
}

.article-section-quote {
	font-size: var(--font-size-quote);
  line-height: var(--line-height-quote);
  color: var(--color-quote-text);
  background: var(--color-bg-inset);
  border-left: 3px solid var(--color-quote-border);
  padding: var(--space-lg);
  margin-top: var(--space-lg);
	margin-bottom: var(--space-xl) !important;
}

.article-section-callout {
	background: var(--color-bg-inset);
  border: 1px solid var(--color-border-subtle);
  padding: var(--space-lg);
  margin-top: var(--space-lg);
	margin-bottom: var(--space-xl) !important;
  color: var(--color-text-secondary);
}

.article-section-body ul {
	margin-bottom: 1rem;
}

.social.elementor-share-buttons--color-custom.elementor-share-buttons--skin-framed .elementor-share-btn__icon svg {
	fill: var(--color-link-default);
}

.elementor-share-buttons--color-custom.elementor-share-buttons--skin-framed .elementor-share-btn {
	border-color:var(--color-link-default);
}

/* Comments */

#comments #thrive-comments textarea, #comments #thrive-comments input {background-color: var(--color-bg-inset);
	border-color: var(--color-border-subtle);
	box-shadow: none;
	border-radius: 0;
	outline: none; 
}

#comments #thrive-comments input::placeholder, #comments #thrive-comments textarea::placeholder, #comments #thrive-comments textarea, #comments #thrive-comments input {color: var(--color-text-muted)}

#comments #thrive-comments .tcm-comments-filters, #comments #thrive-comments .tcm-comments-filters label, .right #tcm-sort-by.tcm-dropdown .tcm-toggle-button, #comments #thrive-comments .tcm-logout-label a {color: var(--color-text-muted)}

#comments {
  margin: var(--space-2xl) auto;
  padding: var(--space-lg);
  background: var(--color-bg-secondary);
  border-top: 1px solid var(--color-border-subtle);
}

#comments #thrive-comments .tcm-comments-list .tcm-comment-item.tcm-main-parent {
	background: var(--color-bg-card);
  border: 1px solid var(--color-border-subtle);
}
#comments #thrive-comments .tcm-color-ac, #comments #thrive-comments .tcm-comment-header .tcm-author-content .tcm-comment-author-name
 {
font-weight: var(--font-weight-light);
	color: var(--color-text-secondary);}

#comments #thrive-comments span {
  font-size: var(--font-size-meta);
  line-height: var(--line-height-meta);
  letter-spacing: var(--letter-spacing-meta);
  color: var(--color-text-meta);
  margin-bottom: var(--space-sm);
}

#comments #thrive-comments .tcm-comments-create .tcm-create-post-container .left .tcm-client-avatar, .tcm-comment-header .tcm-comment-author-img {border: solid 2px var(--color-category)}

#comments #thrive-comments .tcm-comments-list .tcm-comment-item .tcm-comment-content .tcm-comment-text, #comments #thrive-comments p {
  font-size: var(--font-size-body);
  line-height: var(--line-height-body);
  letter-spacing: var(--letter-spacing-body);
  color: var(--color-text-primary);
}

#comments #thrive-comments .tcm-border-color-ac, #comments #thrive-comments button {border-color: var(--color-link-default);
color: var(--color-link-default);}

#comments #thrive-comments .tcm-border-color-ac:hover, #comments #thrive-comments button:hover {border-color: var(--color-link-default);
color: var(--color-link-hover);}

#comments #thrive-comments .tcm-svg-fill-ac {fill: var(--color-link-default)}

#comments #thrive-comments .tcm-svg-fill-ac:hover {fill: var(--color-link-hover)}

#comments #thrive-comments .tcm-comments-list .tcm-comment-item {background-color: var(--color-bg-inset);border-left:0 !important;}

#comments #thrive-comments .tcm-voting-container .tcm-voting-input {border-color: var(--color-text-muted) !important;}

#comments #thrive-comments .tcm_remember_me {color: var(--color-text-muted) !important;}

/* Author Box */

.author-box {
	margin: var(--space-2xl) auto 0;
  padding: var(--space-xl);
  background: var(--color-bg-card);
  border-top: 2px solid var(--color-border-strong);
}

.elementor-author-box__name {
font-size: var(--font-size-h4);
  letter-spacing: var(--letter-spacing-heading);
  color: var(--color-text-primary);
	margin-bottom: var(--space-xs); }

.elementor-author-box .elementor-author-box__bio {
	 font-size: var(--font-size-body);
  line-height: var(--line-height-body);
  letter-spacing: var(--letter-spacing-body);
  color: var(--color-text-secondary);
  margin-bottom: var(--space-md);
}

/* Citations */

.citations {
	margin: var(--space-lg) 0;
	padding: var(--space-lg) 0;
	color: var(--color-text-meta);
	border-top: solid 1px var(--color-border-subtle)
}

.disclaimer-text {font-size: var(--font-size-meta); line-height: var(--line-height-body); font-style: italic}

/* Disclaimer Box */

.disclaimer {
	padding-top: var(--space-lg);
	color: var(--color-text-muted);
	border-top: solid 1px var(--color-border-subtle)
}

.disclaimer-text {font-size: var(--font-size-meta); line-height: var(--line-height-body); font-style: italic;
	
}

/* Search */

	.elementor-widget-search .e-search .e-search-submit {
	background-color: var(--color-link-visited);
	}
	
	.page-template .jetpack-instant-search__overlay.jetpack-instant-search__overlay--dark .jetpack-instant-search__search-results, .jetpack-instant-search__overlay.jetpack-instant-search__overlay--dark input.jetpack-instant-search__box-input.search-field, .jetpack-instant-search__overlay.jetpack-instant-search__overlay--dark input.jetpack-instant-search__box-input.search-field:hover, .jetpack-instant-search__overlay.jetpack-instant-search__overlay--dark input.jetpack-instant-search__box-input.search-field:active, .jetpack-instant-search__overlay.jetpack-instant-search__overlay--dark input.jetpack-instant-search__box-input.search-field:focus
 {
	background: var(--color-bg-void);
}

.jetpack-instant-search__overlay.jetpack-instant-search__overlay--dark a:hover, .jetpack-instant-search__overlay.jetpack-instant-search__overlay--dark .jetpack-instant-search__search-form-controls .jetpack-instant-search__search-sort button.jetpack-instant-search__search-sort-option.is-selected 
 {
	color: var(--color-link-hover);
}

	/* Hide search input initially */
	.fullscreen-search {
		position: fixed;
		top: 0;
		left: 0;
		width: 100vw;
		height: 100vh;
		background: #000000D9; /* Dark overlay */
		display: flex;
		flex-direction: row; /* Elements align horizontally */
		align-items: center; /* Center vertically */
		justify-content: center; /* Center horizontally, no space-between */
		opacity: 0;
		visibility: hidden;
		transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
		z-index: 9999;
	}

	/* Center the search form */
	.fullscreen-search .elementor-widget-container {
		display: flex;
		justify-content: center;
		align-items: center;
		flex: 0 1 auto; /* Size naturally, no stretching */
	}

	/* Style the search form as a flex row */
	.fullscreen-search .elementor-search-form {
		display: flex;
		align-items: center; /* Align input and submit vertically */
		flex-wrap: nowrap; /* Default: no wrapping above 720px */
	}

	/* Style the input */
	.fullscreen-search .elementor-search-form input {
		padding: 15px;
		font-size: 18px;
		border: none;
		outline: none;
	}

	/* Style the submit button */
	.fullscreen-search .elementor-search-form button[type="submit"] {
		padding: 15px;
		font-size: 18px;
		background: none;
		border: none;
		cursor: pointer;
	}

	/* Close button positioned next to the form */
	.fullscreen-search .close-search {
		font-size: 18px; /* Adjust size */
		color: white;
		cursor: pointer;
		background: none;
		border: none;
		display: flex;
		align-items: center; /* Vertically center with form */
		margin-left: 10px; /* Small gap between form and close button */
	}

	/* Media query for screens smaller than 720px */
	@media (max-width: 720px) {
		.fullscreen-search .elementor-search-form {
			flex-wrap: wrap; /* Enable wrapping within the form */
			width: 90%; /* Constrain width to force wrapping */
			max-width: 100%; /* Ensure it fits the screen */
			justify-content: center; /* Center items */
		}

		/* Input on row 1 */
		.fullscreen-search .elementor-search-form input {
			flex: 1 0 100%; /* Force input to full width and wrap */
			margin-bottom: 10px; /* Space between input and buttons */
		}

		/* Submit and close on row 2 */
		.fullscreen-search .elementor-search-form button[type="submit"] {
			margin-right: 10px; /* Space before close button */
		}

		.fullscreen-search .close-search {
			margin-left: 0; /* Reset margin-left */
		}

		/* Ensure vertical centering of wrapped content */
		.fullscreen-search {
			align-content: center; /* Center the wrapped rows vertically */
		}
	}
	
/* Topics */

.topics .dce-menu.horizontal li {
	width: 23%;
	margin: 1%;
	padding: var(--space-lg);
	border: 1px solid var(--color-border-subtle);
	background: var(--color-bg-card);
	text-align: center;
}

.topics .dce-menu.horizontal li a {
	width: 100%;
	font-size: var(--font-size-h4);
	text-align: center;
}	

/* Mobile */

@media screen and (max-width: 768px) {
	.topics .dce-menu.horizontal li {
	width: 100%;
}
.elementor-nav-menu--dropdown a {
	padding: var(--space-lg);
	font-size: var(--font-size-h4);
}
}/* End custom CSS */