/* -------------------------------------------------------
   Minimal Reset & Global Box-Sizing
--------------------------------------------------------- */
*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

/* -------------------------------------------------------
   CSS Variables (Easily adjust theme colors here)
--------------------------------------------------------- */
:root {
  --color-bg: #010101;
  --color-text: #022840;
  --color-primary: #037f8c;
  --color-primary-hover: #025e73;
  --color-project: #4caf50;
  --color-project-hover: #388e3c;
  --color-white: #ffffff;
  --color-gray: #ccc;
  --shadow-low: 0 4px 10px rgba(0, 0, 0, 0.1);
  --shadow-med: 0 4px 8px rgba(0, 0, 0, 0.2);
  --font-family-main: 'Poppins', sans-serif;
  --font-size-base: 16px;
}

/* -------------------------------------------------------
   Base Typography & HTML Elements
--------------------------------------------------------- */
html {
  font-size: var(--font-size-base);
  font-family: var(--font-family-main);
  /* If you don't need to support old IE, you can use:
     scroll-behavior: smooth; */
}

body {
  background: var(--color-bg);
  color: var(--color-text);
  text-align: center;
}

img {
  border-style: none; /* remove default border in some browsers */
  max-width: 100%;    /* ensures images are responsive */
  height: auto;
}

a {
  background-color: transparent;
  text-decoration: none;
  color: inherit;
}

/* Buttons & Form Elements */
button,
input,
optgroup,
select,
textarea {
  font: inherit;       /* Match parent font properties */
  color: inherit;
  line-height: 1.15;
  border: none;
  background: none;
}

/* Minimal reset for textarea default scrollbar in IE */
textarea {
  overflow: auto;
  resize: none;        /* Disables user resizing (as requested) */
}

/* -------------------------------------------------------
   Layout: Container
--------------------------------------------------------- */
.container {
  width: 90%;
  max-width: 600px;
  margin: 40px auto;
  padding: 20px;
  background: var(--color-white);
  border-radius: 10px;
  box-shadow: var(--shadow-low);
}

/* -------------------------------------------------------
   Profile Section
--------------------------------------------------------- */
.profile img {
  width: 120px;
  height: 120px;
  border-radius: 50%;
  border: 4px solid var(--color-primary);
  box-shadow: var(--shadow-med);
}

.profile h1 {
  font-weight: 700;
  margin: 10px 0;
}

.tagline {
  font-size: 1.1em;
  color: var(--color-primary-hover);
  margin-bottom: 5px;
}

.quote {
  font-size: 1.1em;
  font-style: italic;
  margin: 10px 0;
  color: #444;
}

/* -------------------------------------------------------
   Links Section
--------------------------------------------------------- */
.links {
  margin: 20px 0;
}

/* Large, block-style buttons for main links */
.link-button {
  display: block;
  width: 100%;
  padding: 12px;
  margin: 10px 0;
  color: var(--color-white);
  background: var(--color-primary);
  border-radius: 30px;
  font-weight: bold;
  font-size: 1.1em;
  text-decoration: none;
  transition: background 0.3s ease;
  box-shadow: var(--shadow-low);
}

.link-button:hover {
  background: var(--color-primary-hover);
}

/* -------------------------------------------------------
   Special "Rovark Clothing" Button
--------------------------------------------------------- */
.project-button {
  display: inline-block;
  padding: 8px 12px;
  margin: 0 5px;
  color: var(--color-white);
  background: var(--color-project);
  border-radius: 20px;
  font-weight: bold;
  font-size: 1em;
  text-decoration: none;
  transition: background 0.3s ease;
  box-shadow: var(--shadow-low);
}

.project-button:hover {
  background: var(--color-project-hover);
}

/* -------------------------------------------------------
   Contact Form
--------------------------------------------------------- */
.contact-form {
  margin-top: 30px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.contact-form form {
  width: 100%;
  max-width: 600px;
}

/* Inputs & Textarea */
.contact-form input,
.contact-form textarea {
  width: 100%;
  padding: 12px;
  margin: 8px 0;
  border: 1px solid var(--color-gray);
  border-radius: 5px;
  background: var(--color-white);
  font-family: inherit;
  box-shadow: none;
}

/* Constrain textarea height with internal scrolling */
.contact-form textarea {
  overflow-y: auto;
  max-height: 200px;
}

/* Submit Button */
.contact-form button {
  width: 100%;
  padding: 12px;
  margin-top: 10px;
  background: var(--color-primary-hover);
  color: var(--color-white);
  border-radius: 5px;
  font-size: 1.1em;
  cursor: pointer;
  transition: background 0.3s ease;
  box-shadow: var(--shadow-low);
}

.contact-form button:hover {
  background: var(--color-primary);
}

/* -------------------------------------------------------
   Footer
--------------------------------------------------------- */
footer {
  margin-top: 30px;
  font-size: 0.9em;
  color: var(--color-primary-hover);
}