/* RESET */
html, body {
  margin: 0;
  padding: 0;
  font-family: "Poppins", sans-serif;
  color: #333;
  
}

/* MAIN CONTAINER */
#container {
  margin: 0 auto;
  min-height: 100vh;
  position: relative;
}

/* CONTENT COLUMN */
#content {
  width: 40%;
  float: left;
  padding: 20px;
  position: relative;
  z-index: 2;
}

/* EMPTY COLUMN */
#empty {
  width: 50%;
  float: left;
}

/* IMAGE BASE */
#image {
  position: absolute;
  top: 0;
  z-index: 1;
}
#image img {
  display: block;
  width: 100%;
  height: auto;
}


body {
    font-family: "Poppins", sans-seriff;
    color: #949393;
    margin: 0;
    line-height: 1.2em;
}



/* TYPOGRAPHY */
h1, h2, h3, h4, h5 {
    margin: 0 0 20px 0;
}

h1 { font-size: 44px; font-weight: 300; letter-spacing: -2px;
    line-height: 1.2em; color:#000; }

h2 { font-size: 34px; font-weight: 700; letter-spacing: -2px; line-height: 1em; }

h3, h4, h5 { font-size: 44px; font-weight: 100; letter-spacing: -2px; }


hr {  margin-left: 0; /* Align to the left */
  margin-right: auto; /* Allow the right margin to expand */ } 

.main-content p {
    font-size: 1.2em;
    color: #666;
    width: 100%;
	line-height: 30px;;
}


.maxwidth { max-width: 400px; }

.border { border: 1px solid #999; }

.footer-keywords { color: #e458f3; font-size: 10px; } 

.footer-credit { margin-bottom:100px; }

/* --- FOOTER FIX --- */
/* Ensure footer elements are 100% width and styled consistently */
.footer-credit,
.footer-keywords {
    /* Ensures they take up the entire width available within the #container */
    width: 100%; 
    /* Add any other specific styling needed here (e.g., text alignment) */
    text-align: center; 
    padding: 10px 0;
	font-size: 10px;
	color: #999;
}


/* Utility class to stop the floating columns above it */
.clear {
    clear: both;
    height: 0; /* Optional: keeps the div from adding vertical space */
}

/* CONTACT AREA */


.contact {
    Xpadding: 25px;
    max-width: 600px;
    font-family: 'Poppins', sans-serif;
    margin-bottom: 90px;
}

.contact-item {
    display: flex;
    align-items: center;
    margin-top: 14px;
}

.contact-item i {
    color: #a100ff; /* vibrant purple accent */
    font-size: 22px;
    margin-right: 12px;
}

.contact-item .label {
    font-weight: 600;
    color: #a100ff; /* accent for labels */
    margin-right: 8px;
}

.contact-item .value {
    color: #000; /* black for readability */
    font-size: 16px;
}

.contact-item.phone .value {
    font-size: 20px; /* larger phone number */
    font-weight: 700;
    color: #000;
}


/* ELEMENT BOXES */
.logo,
.tagline,
.company,
.contact {

    display: block; /* stack vertically */
    width: fit-content;
    padding-bottom: 25px;
    background: rgba(255,255,255,0.85);
    text-align: left;
}

.company {
	color: #ff00fb;
    margin-top: 90px;
	padding-bottom: 10px!important;
	margin-bottom: 0px!important;
}

.logo {
    position: relative;
    left: -20px;
    margin-bottom: 90px;
}
.logo img {
    display: block;
    max-width: 200px;
}

.tagline {
    font-weight: 700;
    text-align: left;
    background: rgba(255,255,255,0.85);
    max-width: 600px;
	color: #a100ff;
    font-size: 20px;
}

/* --- BREAKPOINTS --- */

/* 1. Mobile (stacked) */
@media screen and (max-width: 600px) {
  #container { width: 100%; }
  #content, #empty { float: none; width: 100%; text-align: center; }
  #image { position: relative; width: 100%; margin: 20px auto; }
  #image img { width: 100%; height: auto; }
}

/* 2. Tablet Vertical (portrait ~768px) */
@media screen and (min-width: 601px) and (max-width: 1024px) {
  #container { width: 850px; }
  #image { left: calc(24vw + 25%); width: 560px; top: -60px;  }
}

/* 4. Desktop (>=1025px) */
@media screen and (min-width: 1025px) {
  #container { width: 900px; }
  #image { left: calc(10vw + 30% + 100px);; width: 800px; top: -100px; }
}

