/* ================================
   Base HTML & Body
================================ */
html,
body {
    height: 100%;    /* Fill entire window height */
    margin: 0;       /* Reset default margin */
    padding: 0;      /* Reset default padding */
    font-size: clamp(16px, 2vw, 18px);
    background: var(--bs-body-bg);
    box-sizing: border-box;
}

/* body as a flex container */
body {
    display: flex;
    flex-direction: column;
    background: rgb(255, 255, 255);
    font-family: 'Truculenta', sans-serif; /* fallback if Truculenta doesn't load */
}

/* .section (main content) grows to fill remaining space */
.section {
    flex: 1;
}

a {
    word-wrap: break-word;   /* Allows long words or links to break and wrap */
    overflow-wrap: break-word;
    word-break: break-all;   /* Break if link overflows */
}

/* ----- Extracted Inline Styles ----- */

/* For <html data-bs-theme="light" lang="en" style="background: var(--bs-body-bg);"> */
.html-bg {
    background: var(--bs-body-bg);
}

/* For <body style="background: rgb(255, 255, 255); font-family: 'Truculenta';"> */
.bg-white-truculenta {
    background: rgb(255, 255, 255);
    font-family: 'Truculenta', sans-serif;
}

/* -----------------------------------
   Navbar and Header
   ----------------------------------- */

/* Navbar Background */
.navbar-bg {
    background: rgb(255, 255, 255);
}

/* Logo Icon */
.logo-icon {
    background: url('/assets/img/dearhire_logo1.webp') center / contain;
    width: 40px;
    height: 40px;
}

/* Transparent Logo Button */
.btn-logo {
    background: transparent;
    border-style: none;
    padding-right: 0px;
    padding-left: 0px;
    font-size: 2rem;
    font-weight: bold;
    color: rgb(48, 163, 166);
}

/* Login / Register Button */
.btn-login-register {
    background: #258b8d;
    border-style: none;
    font-size: 1.25rem;
}

/* For the <form style="margin-top: 30px;"> */
.form-top-spacing {
    margin-top: 30px;
}

/* Big Main title <p> style */
.main-title {
    font-family: 'Truculenta', sans-serif;
    font-size: 2rem;
    color: #30a3a6;
    font-weight: bold;
    margin-bottom: 30px
}

/* Generic paragraphs used in body content where margin-top/bottom: 30px; font-size: 1rem; etc. */
.custom-paragraph {
    font-family: 'Truculenta', sans-serif;
    margin-top: 30px;
    margin-bottom: 30px;
    font-size: 1rem;
}

/* h3 headings (font-size: 1.5rem; color: #30a3a6;) */
.section-header {
    font-family: 'Truculenta', sans-serif;
    font-size: 1.5rem;
    color: #30a3a6;
}

/* h3 sub-headings (font-size: 1.3rem) */
.sub-section-header {
    font-family: 'Truculenta', sans-serif;
    font-size: 1.3rem;
}

/* Table of contents UL (no bullets, custom font-size) */
.toc-list {
    font-family: 'Truculenta', sans-serif;
    font-size: 1rem;
    list-style: none;
}

/* -----------------------------------
   OVERRIDE: Navbar Brand Hover
----------------------------------- */
.navbar-brand:hover,
.navbar-brand:focus,
.navbar-brand:active {
    background-color: transparent !important;
    color: inherit !important;
    outline: none !important;
    box-shadow: none !important;
    border-color: transparent !important;
}

/* -----------------------------------
   OVERRIDE: Logo Button Hover
----------------------------------- */
/* If a button has .btn-logo but NOT .btn-primary: */
.btn-logo:hover,
.btn-logo:focus,
.btn-logo:active {
    background-color: transparent !important;
    color: rgb(48, 163, 166) !important;
    outline: none !important;
    box-shadow: none !important;
    border-color: transparent !important;
}

/* -----------------------------------
   OVERRIDE: .btn-primary + .btn-transparent
----------------------------------- */
/* Specifically target a button that is .btn.btn-primary.btn-transparent */
.btn.btn-primary.btn-transparent:hover,
.btn.btn-primary.btn-transparent:focus,
.btn.btn-primary.btn-transparent:active {
    background-color: transparent !important;
    border-color: transparent !important;
    color: rgb(48, 163, 166) !important;
    outline: none !important;
    box-shadow: none !important;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
    background-color: #a0674b !important;
    border-color: #a0674b !important;
    color: #fff !important;
}

/* ================================
   Footer Styles
================================ */
.footer-link {
    color: #30a3a6;
    font-family: 'Truculenta';
}

.footer-social-icon {
    color: #30a3a6;
}

/* -----------------------------------
   OVERRIDE: Default in text Link Color 
----------------------------------- */
a {
    color: #30a3a6; 
    text-decoration: none; /* optional if you want to remove underlines */
  }
