.samples {
	padding: 40px 40px;
	/*display: flex;*/
	min-height: 470px;
	
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
}
.samples h1 {
	font-size: 2em;
}
.samples p {
	margin: auto;
	color: #525252;
	width: 80%;
	margin-bottom: 20px;
}
.samples > div.article {
	display: inline-block;
	/*display: flex;
	flex-direction: column;*/
	margin-right: 2px;
	width: 32.5%;
	text-align: center;
	margin-bottom: 50px;/*vertical-align: top;*/
}
.samples > div.items {
	display: inline-block;
	margin-right: 2px;
	width: 15%;
	text-align: center;
	margin-bottom: 30px;
}
.samples .article .top, .samples .article .bottom {
	display: block;
}
.samples .article .top a {
	color: #c71c22;
}
.samples .article .top a:hover {
	text-decoration: underline;
}
.light-gray {
	background-color: #f7f7f7;
}
.article img {
	max-width: 100%;
	height: auto;
}
.api-features ul {
	list-style: square url('../images/arrow.png');
	margin-bottom: 20px;
}
.api-features li {
	vertical-align: middle;
	padding-bottom: 7px;
}
.items a {
	color: #c71c22;
}
.card-section {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
}
.card {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 23%;
	margin: 1%;
	border: 1px solid #ccc;
	box-shadow: 2px 2px 6px 0px rgba(0,0,0,0.3);
	padding: 10px;
	background-color: #fefefe;
}
.card img {
	max-width: 40%;
	margin-left: 10px;
	margin-right: 10px;
	margin-bottom: 10px;
}
.card-links {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	flex-grow: 1;
	text-align: center;
}
.card-links h3 {
	margin-bottom: 15px;
}
.card-links a {
	text-decoration: none;
	color: #b53c5a;
	margin-top: 10px;
	font-size: 1em;
}
.card-image-container {
	width: 60%;
	height: 100%;
	position: relative;
	display: flex;
	align-items: center;
}
.card-image {
	width: auto;
	max-width: 100%;
	object-fit: contain;
	position: absolute;
	transition: all 0.3s ease-in-out;
}
.card-image-single {
  width: auto;
  max-width: 100%;
  object-fit: contain;
  position: absolute;
  transition: all 0.3s ease-in-out;
  left: 50%;
  transform: translateX(-50%);
  box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.2);
}.card-image:nth-child(2) {
	left: 1%;
	top: 7%;
	z-index: 1;
}
.card-image:nth-child(1) {
	left: 50%;
	transform: translateX(-50%);
	top: 1%;
	z-index: 2;
}
.card-image:nth-child(3) {
	right: 1%;
	top: 7%;
	z-index: 1;
}
.bulleted-list {
	flex-grow: 1;
	display: flex;
	flex-direction: column;
	justify-content: space-around;
}
.bulleted-list li {
	padding: 10px 0;
}
.demo {
	width: 100%;
	display: flex;
	align-items: stretch;
	justify-content: space-around;
	position: absolute;
	bottom: 20px;
	left: 0;
}
.run-demo, .download-demo {
	display: inline-block;
	background: #2e47b4;
	border: none;
	color: white;
	line-height: 40px;
	cursor: pointer;
	padding: 0;
	width: 40%;
	border-radius: 5px;
	text-align: center;
	text-decoration: none;
	transition: background-color 0.3s ease;
	margin-top: 20px;
	font-size: 16px;
	font-family: Roboto;
}
.run-demo:hover, .download-demo:hover {
	background: #081b63;
}
.run-demo:active, .download-demo:active {
	background: #4b1313;
}
.run-demo:focus, .download-demo:focus {
	outline: none;
}
.run-demo img, .download-demo img {
	vertical-align: middle;
	min-width: 24px;
	width: 15%;
}
.run-demo.deactivated {
	background-color: #adadad;
	cursor: default;
}
.download-demo a {
	display: none;
}
.download-demo.focused {
	background-color: #8b1818;
	display: flex;
}
.download-demo.focused a {
	text-decoration: none;
	color: white;
	flex: 1 1 0;
	display: inline-block;
	transition: background-color 0.3s ease;
}
.download-demo.focused a:hover {
	background-color: #4b1313;
}
.download-demo.focused a:active {
	background-color: black;
}
.download-demo.focused a:first-of-type {
	border-bottom-left-radius: 5px;
	border-top-left-radius: 5px;
	border-right: 1px solid white;
}
.download-demo.focused a:last-of-type {
	border-bottom-right-radius: 5px;
	border-top-right-radius: 5px;
}
.download-demo.focused img, .download-demo.focused .text {
	display: none;
}
.more-samples {
	margin-bottom: 50px;
}
/* this is the magic */
.more-samples a {
	text-decoration: none;
	border-bottom: 1px solid #2e47b4;
	box-shadow: inset 0 -2px 0 #2e47b4;
	line-height: 1.8;
	font-size: 1.4em;
	font-style: normal;
	color: inherit;
	transition: background-color 0.5s ease;
	padding: 5px;
}
.more-samples a:hover {
	background: #081b63;
	color: white;
	border-radius: 5px;
	border-bottom: 1px solid white;
	box-shadow: inset 0 -2px 0 white;
	transition: background-color 0.5s ease;
}
.toolButton {
	float: left;
	width: 30px;
	height: 30px;
	margin: 0px;
	text-align: center;
	vertical-align: middle;
	cursor: pointer;
	background-repeat: no-repeat;
}
.toolButton div {
	width: 16px;
	height: 16px;
	margin-left: 7px;
	margin-top: 7px;
	background-image: url('icons.png');
}
.toolButton:hover {
	background-color: #cfcfcf;
}
.toolSelect {
	height: 30px;
}
.toolSeparator {
	float: left;
	width: 1px;
	height: 30px;
	margin: 0px 2px;
	background-color: #e2e4e7;
}
#header {
	background-color: #fafafa;
	border-bottom: 1px solid #e2e4e7;
	overflow: auto;
	padding: 5px;
	font: 12px/18px "Trebuchet MS", sans-serif;
	margin-left: 10px;
}

.feature-tiles-section {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 30px; /* Spacing between tiles */
    padding: 40px 20px; /* Padding for the whole section */
    max-width: 1200px; /* Limits the container width to hold max 2 tiles */
    margin: 0 auto; /* Centers the container on the page */
}


.feature-tile {
    background-color: #f7f7f7; /* Light gray background */
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    padding: 25px;
    text-align: center;
    box-shadow: 0 2px 5px rgba(0,0,0,0.05);

    /* --- Sizing for two-column layout --- */
    display: flex;
    flex-direction: column;
    align-items: center;
    flex-basis: calc(50% - 30px); /* 50% width minus half the gap for spacing */
    max-width: 550px; /* Optional: An upper limit to prevent tiles becoming too wide */
}

.feature-tile img {
    max-width: 100%; /* Make image responsive */
    height: auto;
    max-height: 400px; /* As per your suggestion for larger images */
    margin-bottom: 20px;
    border-radius: 5px;
}

.feature-tile-content h3 {
    font-size: 1.5em;
    margin-bottom: 15px;
}

.feature-tile-content p {
    font-size: 1em;
    color: #525252;
    line-height: 1.6;
}

/* Media query to stack to a single column on smaller screens */
@media (max-width: 992px) {
    .feature-tile {
        flex-basis: 100%; /* Take up full width on smaller screens */
    }
}


/* Main container for the section with images grid two-column layout */
.feature-spotlight {
    display: flex;
    flex-wrap: wrap; /* Allows columns to stack on smaller screens */
    align-items: center;
    justify-content: center;
    gap: 40px;
    padding: 50px 20px;
    background-color: #f7f7f7; /* Optional: light gray background for the whole section */
    border-top: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
    max-width: 1300px;  /*Limits the max width of the entire section */
    margin: 0 auto; /* Centers the section on the page */
}


/* Left column for text content */
.feature-spotlight-text {
    flex: 1; /* Takes up 50% of the space */
    min-width: 320px; /* Minimum width before stacking */
    padding-right: 100px;
}

.feature-spotlight-text h2 {
    font-size: 2.2em;
    font-family: 'Roboto', sans-serif;
    margin-bottom: 15px;
}

.feature-spotlight-text p {
    font-size: 1.1em;
    line-height: 1.6;
    margin-bottom: 20px;
}

.feature-spotlight-text ul {
    list-style-type: square;
    padding-left: 25px;
    margin-bottom: 30px;
    line-height: 1.7;
	text-align:left;
}

/* Right column for the 2x2 image grid */
.feature-spotlight-grid {
    flex: 1; /* Takes up 50% of the space */
    min-width: 320px; /* Minimum width before stacking */
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr);
    gap: 15px; /* Spacing between images */
    max-width: 500px; /* Controls the max size of the grid */
}

.feature-spotlight-grid img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* Ensures images fill the grid cell without distortion */
    border-radius: 8px;
    box-shadow: 0 4px 10px rgba(0,0,0,0.1);
    aspect-ratio: 1 / 1; /* Enforces a square shape */
}

.feature-grid-section {
    padding: 40px 20px;
    text-align: center;
    background-color: #f7f7f7;
}

.feature-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
    max-width: 1200px;
    margin: 30px auto;
}

.feature-card {
    background-color: white;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    padding: 25px;
    box-shadow: 0 4px 8px rgba(0,0,0,0.05);
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    transition: transform 0.2s ease-in-out;
}



.feature-card-icon {
    font-size: 3em;
    color: #c71c22;
    margin-bottom: 15px;
}

.feature-card h3 {
    font-size: 1.5em;
    margin-bottom: 10px;
    color: #333;
}

.feature-card p {
    font-size: 1em;
    color: #525252;
    line-height: 1.6;
}

.how-it-works-section {
    padding: 40px 20px;
    text-align: center;
    max-width: 1200px;
    margin: 0 auto;
}

.how-it-works-section .image-gallery {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
    margin-top: 30px;
}

.how-it-works-section .image-gallery img {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
}

/* Media query to ensure single-column layout on smaller screens */
@media (max-width: 800px) {
    .feature-spotlight-text {
        text-align: center;
        padding-right: 0;
    }
    .feature-spotlight-grid {
        margin: 0 auto; /* Center the grid when stacked */
    }
}

/* Custom bullet styling for lists within the feature-spotlight-text */
.feature-spotlight-text ul {
    list-style: none; /* Remove default bullet */
    padding-left: 0; /* Remove default left padding */
    margin: 30px 0px;
    line-height: 1.7;
}

.feature-spotlight-text ul li {
    display: flex; /* Use flexbox to align the custom bullet and text */
    align-items: flex-start; /* Aligns the bullet to the top of the text */
    margin-bottom: 10px; /* Spacing between list items */
}

.feature-spotlight-text ul li::before {
    content: ""; /* Empty content, as we'll use background-image */
    display: inline-block;
    width: 1.2em; /* Size of the custom bullet */
    height: 1.2em;
    min-width: 1.2em; /* Prevent bullet from shrinking */
    min-height: 1.2em; /* Prevent bullet from shrinking */
    border-radius: 50%; /* Makes it a circle */
    border: 2px solid #c71c22; /* Circle border color (using your theme color) */
    background-color: transparent;
    margin-right: 10px; /* Space between bullet and text */
    flex-shrink: 0; /* Prevent bullet from shrinking if text is long */

    /* Embed the SVG checkmark as a background image */
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c71c22' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12' /%3E%3C/svg%3E");
    background-size: 70%; /* Size of the checkmark inside the circle */
    background-position: center;
    background-repeat: no-repeat;
}

 
 @media (min-width: 1400px) {
.samples > div.items {
	width: 12%;
}
}
 @media (max-width: 1200px) {
	 .samples > div.items {
	width: 20%;
}
.card {
	width: 30%;
}
.card-image:nth-child(1) {
	top: 10%;
}
.card-image:nth-child(2), .card-image:nth-child(3) {
	/* Adjust other images if they exist for this layout  top: 15%;*/
	display: none;
}
}
@media (max-width: 992px) {
    .card-image-container {
        width: 35%;
    }
}
 @media (max-width: 900px) {
.card {
	width: 45%;
}
.samples > div.items {
	width: 30%;
}
.card-image:nth-child(1) {
	top: 30%;
}
.card-image:nth-child(2), .card-image:nth-child(3) {
	/* Adjust other images if they exist for this layout top: 25%;*/
	display: none;
}
}
 @media (max-width: 768px) {
.card-image:nth-child(1) {
	top: -8%;
}
.card-image:nth-child(2), .card-image:nth-child(3) {
	/* Adjust other images if they exist for this layout top: 5%;*/
	display: none;
}
.card-image-container {
        width: 90%;
        height: 300px;
        margin-top: 20px;
  }
.feature-grid {
        grid-template-columns: 1fr;
  }
}
@media screen and (max-width:750px) {
.samples {
/*flex-direction: column;*/
}
.samples > div.article {
	width: 100%;
	margin-bottom: 20px;
}
.samples .article > img {
	margin-bottom: 5px;
}
.api-features ul {
	list-style: none;
	width: 100%;
}
}
 @media (max-width: 600px) {
.card {
	width: 90%;
}
.samples > div.items {
	width: 45%;
}
}
/*
 * Enforce a uniform height for the image container in article cards
 * and align the image to the bottom to prevent layout misalignment.
 */
.content-section .samples .article .top {
	height: 280px;
	display: flex;
	align-items: flex-end;
	justify-content: center;
}
/* Ensure the image itself scales properly without stretching. */
.content-section .samples .article .top img {
	max-height: 100%;
	max-width: 100%;
	width: auto;
	height: auto;
}
