@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Inter:wght@300;400;500;600&family=JetBrains+Mono:wght@400;500&display=swap');

:root {
    --black: #0F0F0F;
    --steel: #1C2128;
    --iron: #2D3440;
    --fog: #8B96A5;
    --light: #E8EBF0;
    --white: #F5F7FA;
    --green: #2ECC71;
    --green-dim: #1a7a44;
    /*--accent: #39a751;*/
	--accent: #22c55e;
	--accent-dim: rgba(34, 197, 94, 0.12);
	--accent-border: rgba(34, 197, 94, 0.25);
	--bg: #0f0f0f;
	--bg2: #141414;
	--bg4: #0f172a;
	--text-muted: #94a3b8;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    background: var(--black) !important;
    color: var(--light) !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 16px !important;
    line-height: 1.6 !important;
    overflow-x: hidden !important;
}


#header {
    height: 70px;
}

@media (min-width: 1000px) {
    height: 120px;
}

main#main .ct-container-full {
	padding-bottom: 0;
}

.ct-header .ct-container,
.ct-footer .ct-container {
	padding: 0 56px;
	max-width: 100%;
	width: 100%;
}

footer#footer {
	padding-top: 20px;
	padding-bottom: 20px;
}

footer#footer .ct-container {
	padding-top: 0;
	padding-bottom: 0;
}

#footer .ct-footer [data-column] {
	align-items: end;
}

.ct-footer .ct-container svg {
	width: 182px;
}

.footer-logo,
.site-title a {
    font-family: 'Bebas Neue', sans-serif !important;
    font-size: 26px !important;
    letter-spacing: 3px !important;
    color: var(--white) !important;
}

.footer-logo span,
.site-title a span {
    color: var(--accent);
}

/* SECTIONS */
section {
    padding: 96px 56px;
}

section.why,
section.categories,
section.geo,
section.cta-section,
section.hero,
section.process {
	margin-bottom: 0 !important;
}

.section-label {
	/*
    font-family: 'JetBrains Mono', monospace;
    font-size: 11px;
    color: var(--accent);
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    gap: 12px;
	*/

    font-family: 'Inter', sans-serif !important;
    font-size: 11px;
    color: var(--accent);
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.section-label::before {
    content: '';
    width: 20px;
    height: 1px;
    background: var(--accent);
    display: block;
}

.section-title {
    font-family: 'Bebas Neue', sans-serif;
    font-weight: bold;
    font-size: clamp(42px, 5vw, 62px);
    letter-spacing: 1px;
    line-height: 1;
    color: var(--white);
    margin-bottom: 60px;
}

.cta-form .wpforms-container {
    margin: 0 !important;
    width: 100%;
}

.cta-form .wpforms-container form div {
    /*width: calc(50%);*/
}

.cta-form .wpforms-container form .wpforms-field {
    padding: 0;
}

.cta-form .wpforms-container form .wpforms-field input {
    max-width: 100%;

    flex: 1;
    background: var(--black) !important;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-right: none;
    color: var(--white);
    padding: 14px 20px;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    outline: none;
}

.cta-form .wpforms-container form .wpforms-field input::placeholder {
    color: gray;
    opacity: 1; /* Убирает полупрозрачность в Firefox по умолчанию */
}

.cta-form .wpforms-container form .wpforms-field input:-ms-input-placeholder {
    color: gray;
}

.cta-form .wpforms-container form .wpforms-field-container {
    flex-shrink: 0;
}

.cta-form .wpforms-container form div.wpforms-submit-container {
    margin: 0;
    width: 100%;
}

.cta-form .wpforms-container form div.wpforms-submit-container button {
    display: block;
    width: 100%;

    background: var(--accent) !important;
    color: #fff;
    border: none;
    padding: 14px 28px;
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    cursor: pointer;
    transition: background 0.2s;
    white-space: nowrap;
}


#wpforms-form-1729 {
    display: flex;
}

#wpforms-form-1712 {
    display: flex;
}

@media (max-width: 900px) {
    nav { padding: 16px 24px; }
    .nav-links { display: none; }
    section, .hero { padding-left: 24px; padding-right: 24px; }
	.hero {margin-top: 20px !important;}
	.stat-item {width: 100%;}
    .process-steps, .categories-grid, .geo-list { grid-template-columns: 1fr 1fr; }
    .why-grid { grid-template-columns: 1fr; }
    .hero-stats { gap: 1px; flex-wrap: wrap; }
    footer { flex-direction: column; gap: 16px; text-align: center; }
    .cta-form { flex-direction: column; }
    .cta-input { border-right: 1px solid rgba(255,255,255,0.12); border-bottom: none; }
    #wpforms-form-1729 { flex-wrap: wrap; }
    #wpforms-form-1712 { flex-wrap: wrap; }
    .cta-form .wpforms-container form .wpforms-field-container {width: 100%;}
}

@media (min-width: 1000px) {
    #header {height: 120px;}
}




:root {
    --accent-dim: rgba(57, 167, 81, 0.12);
    --accent-border: rgba(57, 167, 81, 0.3);
}

/* Модальное окно – форма идентична блоку Contacts */
.modal-overlay .modal-container .wpforms-container {
    margin: 0 !important;
    background: transparent !important;
}

.modal-overlay .modal-container .wpforms-form {
    background: transparent !important;
    padding: 0 !important;
    display: flex;
    flex-wrap: wrap;
    gap: 0 20px;
}

.modal-overlay .modal-container .wpforms-field {
    flex: 1 1 calc(50% - 10px);
    min-width: 0;
    padding: 0 0 20px 0 !important;
}

.modal-overlay .modal-container .wpforms-field-textarea {
    flex: 1 1 100%;
}

.modal-overlay .modal-container .wpforms-submit-container {
    flex: 1 1 100%;
    padding: 0 !important;
    text-align: left !important;
}

.modal-overlay .modal-container .wpforms-field-label {
    display: flex !important;
    margin-bottom: 0 !important;
    align-items: center !important;
    gap: 12px !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    color: var(--fog) !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
}

.modal-overlay .modal-container .wpforms-required-label {
    color: var(--accent) !important;
    font-size: 11px !important;
}

.modal-overlay .modal-container input[type="text"],
.modal-overlay .modal-container input[type="email"],
.modal-overlay .modal-container textarea {
    width: 100% !important;
    max-width: 100% !important;
    background: var(--black) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-radius: 0 !important;
    color: var(--white) !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    padding: 14px 16px !important;
    outline: none !important;
    transition: border-color 0.2s !important;
    height: auto !important;
    line-height: 1.5 !important;
    box-sizing: border-box !important;
}

.modal-overlay .modal-container input:focus,
.modal-overlay .modal-container textarea:focus {
    border-color: var(--accent) !important;
    box-shadow: none !important;
}

.modal-overlay .modal-container input::placeholder,
.modal-overlay .modal-container textarea::placeholder {
    color: rgba(139, 150, 165, 0.5) !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 14px !important;
}

.modal-overlay .modal-container textarea {
    min-height: 120px !important;
    resize: vertical;
}

.modal-overlay .modal-container .wpforms-submit {
    background: var(--accent) !important;
    color: #fff !important;
    border: none !important;
    padding: 16px 36px !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
    transition: background 0.2s, transform 0.15s !important;
    border-radius: 0 !important;
    width: 100% !important;
    height: auto !important;
    line-height: 1.2 !important;
}

.modal-overlay .modal-container .wpforms-submit:hover {
    background: #2d8f42 !important;
    transform: translateY(-1px) !important;
}

.modal-overlay .modal-container .wpforms-submit-spinner {
    display: none !important;
}

.modal-overlay .modal-container .wpforms-error-noscript,
.modal-overlay .modal-container #wpforms-error-noscript,
.modal-overlay .modal-container div[style*="position: absolute"] {
    display: none !important;
}

/* Чекбокс в модалке */
.modal-overlay .modal-container .wpforms-field-checkbox {
    flex: 1 1 100% !important;
}

.modal-overlay .modal-container .wpforms-field-checkbox ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.modal-overlay .modal-container .wpforms-field-checkbox li {
    display: flex !important;
    align-items: flex-start !important;
    gap: 12px !important;
}

.modal-overlay .modal-container .wpforms-field-checkbox input[type="checkbox"] {
    appearance: none !important;
    -webkit-appearance: none !important;
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    background: var(--black) !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    cursor: pointer !important;
    position: relative !important;
    margin-top: 2px !important;
    padding: 0 !important;
    flex-shrink: 0 !important;
}

.modal-overlay .modal-container .wpforms-field-checkbox input[type="checkbox"]:checked {
    background: var(--accent) !important;
    border-color: var(--accent) !important;
}

.modal-overlay .modal-container .wpforms-field-checkbox input[type="checkbox"]:checked::after {
    content: '' !important;
    position: absolute !important;
    left: 5px !important;
    top: 2px !important;
    width: 6px !important;
    height: 10px !important;
    border: solid #fff !important;
    border-width: 0 2px 2px 0 !important;
    transform: rotate(45deg) !important;
}

.modal-overlay .modal-container .wpforms-field-checkbox label {
    font-family: 'Inter', sans-serif !important;
    font-size: 13px !important;
    color: var(--fog) !important;
    line-height: 1.5 !important;
    cursor: pointer !important;
}

.modal-overlay .modal-container .wpforms-field-checkbox label a {
    color: var(--accent) !important;
    text-decoration: underline !important;
}

.modal-overlay .modal-container .wpforms-field-checkbox.wpforms-has-error input[type="checkbox"] {
    border-color: #e05a5a !important;
}