:root, body, [data-bs-theme="light"] {
    --bs-body-font-weight: 400;
    --bs-body-font-family: "Montserrat", sans-serif-apple-system,"Segoe UI","Helvetica Neue","Noto Sans","Liberation Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
    --bs-font-sans-serif: "Montserrat", sans-serifsystem-ui,-apple-system,"Segoe UI","Helvetica Neue","Noto Sans","Liberation Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
    --bs-body-line-height: 1.4;

    --bs-blue: #0d6efd;
    --bs-indigo: #6610f2;
    --bs-purple: #6f42c1;
    --bs-pink: #d63384;
    --bs-red: #dc3545;
    --bs-orange: #fd7e14;
    --bs-yellow: #ffc107;
    --bs-green: #198754;
    --bs-teal: #20c997;
    --bs-cyan: #0dcaf0;
    --bs-black: #000;
    --bs-white: #fff;
    --bs-gray: #798490;
    --bs-gray-dark: #4a545b;
    --bs-gray-100: #f9f9f9;
    --bs-gray-200: #eee;
    --bs-gray-300: #bcc1c7;
    --bs-gray-400: #ced4da;
    --bs-gray-500: #adb5bd;
    --bs-gray-600: #798490;
    --bs-gray-700: #495057;
    --bs-gray-800: #4a545b;
    --bs-gray-900: #212529;
    --bs-primary: #003B7B;
    --bs-primary-rgb: 0, 59, 123;

    --bs-secondary: #003A7B;
    --bs-secondary-rgb: 0, 58, 123;

    --bs-success: #3cc261;
    --bs-success-rgb: 60, 194, 97;

    --bs-info: #5E8ECC;
    --bs-info-rgb: 94, 142, 204;

    --bs-warning: #ffbd5d;
    --bs-warning-rgb: 255, 189, 93;

    --bs-danger: #e52427;
    --bs-danger-rgb: 229, 36, 39;

    --bs-light: #f9f9f9;
    --bs-light-rgb: 249, 249, 249;

    --bs-dark: #4a545b;
    --bs-dark-rgb: 74, 84, 91;
}

body {
    background: var(--bs-light);
    color: var(--bs-body-color);
    font-size: var(--bs-body-font-size);
    font-weight: var(--bs-body-font-weight);
    line-height: var(--bs-body-line-height);
}

a {
    color: var(--bs-link-color);
}

a:hover {
    color: var(--bs-link-hover-color);
}


/* ---------------------------------------------------
   Header
--------------------------------------------------- */

.site-header {


}

.site-header .navbar {
    min-height: 88px;
}

.site-logo img {
    display: block;
    width: auto;
    max-height: 48px;
}


/* ---------------------------------------------------
   Buttons
--------------------------------------------------- */
.upload-dropzone {
    padding: 2rem;
    border: 2px dashed var(--bs-border-color);
    background: var(--bs-light);
    text-align: center;
    cursor: pointer;
    transition: border-color 0.2s ease, background 0.2s ease;
}

@media (max-width: 768px) {
    .upload-dropzone {
        padding: 1.5rem;
        font-size: 0.9rem;
    }
}

.upload-dropzone:hover,
.upload-dropzone.is-dragover {
    border-color: var(--bs-primary);
    background: var(--bs-primary-bg-subtle);
}

.upload-dropzone p {
    margin: 0;
}

.file-list-item {
    padding: 0.5rem 0.75rem;
    border: 1px solid var(--bs-border-color);
    background: var(--bs-white);
    font-size: 0.95rem;
}


.btn-send {
    padding: 0.75rem 1.4rem;
    border-color: var(--bs-primary);
    border-radius: var(--bs-border-radius);
    background: var(--bs-primary);
    color: var(--bs-white);
    font-weight: 600;
}

.btn-send:hover,
.btn-send:focus {
    border-color: var(--bs-secondary);
    background: var(--bs-secondary);
    color: var(--bs-white);
}


/* ---------------------------------------------------
   Hero
--------------------------------------------------- */

.hero-simple {
    padding: 3rem 0 2rem;
    border-bottom: 1px solid var(--bs-border-color);
    background: var(--bs-white);
}

.hero-simple h1 {
    margin-bottom: 0.75rem;
    color: var(--bs-heading-color);
    font-size: clamp(2rem, 4vw, 3rem);
    font-weight: 700;
}

.hero-simple .lead {
    color: var(--bs-dark);
}


/* ---------------------------------------------------
   Content
--------------------------------------------------- */

.content-wrap {
    padding: 3rem 0 4rem;
}

.form-card {
    padding: 2rem;
    border: 1px solid var(--bs-border-color);
    background: var(--bs-white);
    box-shadow: var(--bs-box-shadow-sm);
}

.form-label {
    font-weight: 600;
}

.form-control,
.form-control:focus {
    border-radius: var(--bs-border-radius);
}

.upload-note {
    font-size: 0.9rem;
    color: var(--bs-secondary);
}


/* ---------------------------------------------------
   Product badge
--------------------------------------------------- */

.product-badge {
    /*
    display: inline-block;
    margin-bottom: 2rem;
    padding: 0.4rem 0.7rem;
    border: 1px solid var(--bs-info-border-subtle);
    background: var(--bs-info-bg-subtle);
    color: var(--bs-dark);

    font-weight: 600;
*/
    padding:.45rem .9rem;
    border-radius:6px;

    background:#e8f1fb;
    border:1px solid #c7d9f1;

    font-weight:600;
    color:#003B7B;
    margin-bottom: 2rem;
}


/* ---------------------------------------------------
   Footer
--------------------------------------------------- */

.site-footer {
    margin-top: 3rem;
    padding: 2.5rem 0;
    background: var(--bs-primary);
    color: var(--bs-white);

    font-weight: 300;
    text-align:center;
}

.site-footer h2,
.site-footer h3,
.site-footer h4{
    margin-bottom: 1rem;
    color: var(--bs-white);
    font-size: 1rem;
    letter-spacing:0.02rem;
    font-weight:300;
    padding-bottom:0.2rem;
    border-bottom:2px solid #ffffff;
    display:inline-block;

}

.site-footer a {
    color: var(--bs-white);
    text-decoration: underline;
}

.site-footer a:hover {
    color: var(--bs-light);
}

.footer-bottom {
    margin-top: 2rem;
    padding-top: 1rem;
    border-top: 1px solid rgba(var(--bs-white-rgb), 0.15);
    color: rgba(var(--bs-white-rgb), 0.8);
    font-size: 0.95rem;

}


.hp-field {
    position: absolute !important;
    left: -9999px !important;
    width: 1px;
    height: 1px;
    overflow: hidden;
}
.qr-status{
    display:flex;
    align-items:center;
    gap:.5rem;
    padding:.45rem .9rem;
    border-radius:6px;

    background:#e8f1fb;
    border:1px solid #c7d9f1;

    font-weight:600;
    color:#003B7B;
}

.qr-status .qr-icon{
    width:18px;
    height:18px;
    fill:#003B7B;
}