/* === IMPORT MONTSERRAT FONT FROM GOOGLE FONTS === */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;600&display=swap');

/* === GLOBAL FONT RESET TO MONTSERRAT === */
body,
#outerframeContainer,
#main-row,
.container,
.outerframe,
.survey-page {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 300 !important;
    color: black !important;
}

/* === SURVEY TITLE === */
.survey-name,
h1.survey-name {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600 !important;
    color: black !important;
    text-align: left !important;
    font-size: 2rem !important;
}

/* === HEADINGS AND QUESTION TITLES === */
h1, h2, h3, h4,
.section-title,
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600 !important;
    color: black !important;
    line-height: 1 !important;
    font-size: 2rem !important;
}

/* === HEADINGS AND QUESTION TITLES === */
.question-title,
.question-text,
.group-title,
.question-container .question-title,
.question-container .question-text,
.survey-name.large-heading {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600 !important;
    color: black !important;
    line-height: 1 !important;
    font-size: 1.5rem !important;
}

/* === SURVEY DESCRIPTION (APPEARS ON FIRST PAGE OR BELOW TITLE) === */
.survey-description {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: bold !important;
    font-size: 1rem !important;
    color: black !important;
    margin-top: 0rem !important;
    margin-bottom: 80px !important;
}

/* === WELCOME MESSAGE TEXT ONLY (IF PRESENT) === */
.welcome-message,
.survey-welcome {
    font-family: 'Helvetica Neue', sans-serif !important;
    font-weight: 300 !important;
    font-size: 1rem !important;
    color: black !important;
    line-height: 1.2 !important;
    margin-bottom: 80px !important;
}

/* === PRIVACY SECTION TEXT === */
.privacy,
.privacy.row {
    font-family: 'Helvetica Neue', sans-serif !important;
    font-weight: 600 !important;
    font-size: 0.9rem !important;
    color: black !important;
    line-height: 1 !important;
    margin-top: 2rem !important;
}

/* === INPUTS, ANSWERS, SUBQUESTIONS === */
textarea,
input[type="text"],
input[type="number"],
select,
.answer-item label,
.array-flex-question td,
.array-flex-question th,
.subquestion-list label,
.subquestion-list td,
.subquestion-list th {
    font-family: 'Helvetica Neue', sans-serif !important;
    font-weight: 300 !important;
    font-size: 0.95rem !important;
    color: black !important;
}

/* === SURVEY NAVIGATION & PROGRESS BAR === */
#survey-nav,
#back-content,
.survey-progress {
    background: linear-gradient(to right, white, #C7EAFC) !important;
    box-shadow: none !important;
    padding: 0 !important;
    border-top: 6px solid #1559ED !important;
}

/* === SURVEY HEADER / LOGO CONTAINER === */
.navbar-brand.logo-container img {
    margin-left: 0 !important;
    padding-left: 0 !important;
}

.navbar-brand .logo-container {
    text-align: center !important;
}

/* === NAVIGATION MENU OVERRIDE === */
#navbar-menu,
.dropdown-menu {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 300 !important;
}

* {
  hyphens: none !important;
  -webkit-hyphens: none !important;
  -ms-hyphens: none !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}