/* Shared styles for all pages — virtua-trading.com (v1.3.0) */

/* Inquiry form: "What do you need?" choice cards */
.service-choice { border: 0; padding: 0; margin: 0 0 25px; }
.service-choice legend { font-weight: 700; color: #0B2265; font-size: 15px; margin-bottom: 12px; text-transform: uppercase; letter-spacing: .5px; }
.service-options { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 10px; }
.service-option { position: relative; display: block; cursor: pointer; }
.service-option input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; }
.service-option > span {
    display: block; height: 100%; padding: 14px 16px; border: 1px solid #E2E8F0; border-radius: 8px; background: #fff;
    font-size: 14px; color: #1E293B; transition: border-color .2s, box-shadow .2s, background .2s;
}
.service-option > span strong { display: block; color: #0B2265; font-size: 15px; margin-bottom: 2px; }
.service-option > span small { color: #64748B; font-size: 12.5px; }
.service-option input:checked + span { border-color: #C59B27; background: #FFFBEF; box-shadow: 0 0 0 1px #C59B27 inset; }
.service-option input:focus-visible + span { outline: 3px solid #0B2265; outline-offset: 2px; }

.form-control:invalid:focus { border-color: #B42318; }
select.form-control { background: #fff; }

/* Submission result */
.form-status { margin-top: 18px; padding: 16px 18px; border-radius: 8px; font-size: 15px; }
.form-status.success { background: #E8F5EC; border: 1px solid #9AD3AE; color: #14532D; }
.form-status.error { background: #FDECEA; border: 1px solid #F3B4AE; color: #7A1A12; }
.form-status h4 { margin: 0 0 6px; font-size: 18px; }
.form-status p { margin: 0; }
.form-status a { color: inherit; font-weight: 600; }
.submit-btn[disabled] { opacity: .6; cursor: wait; }

/* Header: Home and Buyer log in buttons on every page (v3.4.0) */
.site-actions { display: flex; align-items: center; gap: 10px; font-family: 'Segoe UI', -apple-system, Roboto, sans-serif; }
.site-actions a { display: inline-flex; align-items: center; gap: 6px; text-decoration: none; font-weight: 700; font-size: 14px; line-height: 1;
    padding: 9px 14px; border-radius: 6px; border: 2px solid #0B2265; white-space: nowrap; transition: background .2s, color .2s; }
.site-actions svg { width: 16px; height: 16px; flex: none; }
.site-actions .nav-home { color: #0B2265; background: #fff; }
.site-actions .nav-home:hover, .site-actions .nav-home:focus-visible { background: #F1F5F9; }
.site-actions .nav-login { color: #C59B27; background: #0B2265; }
.site-actions .nav-login:hover, .site-actions .nav-login:focus-visible { color: #fff; }
.site-actions .short { display: none; }
@media (max-width: 640px) {
    .site-actions { gap: 6px; }
    .site-actions a { padding: 8px 9px; font-size: 13px; }
    .site-actions .nav-home span { display: none; }
    .site-actions .long { display: none; }
    .site-actions .short { display: inline; }
    /* Phones: logo + Home/Log in on the first row, language choices on the second. */
    header .header-container { flex-wrap: wrap; row-gap: 8px; }
    header .header-right { display: contents; }
    header .site-actions { margin-inline-start: auto; }
    header .lang-links, header .language-selector-wrapper, header .gtranslate_wrapper { order: 3; }
    header .lang-links { width: 100%; justify-content: center; }
}
@media (max-width: 400px) {
    header .brand-home span, header .company-title h1 { font-size: 11px !important; letter-spacing: .5px !important; }
    header .brand-home, header .logo-section { gap: 8px !important; }
}
