.trade-page {
    --trade-orange: #f2531e;
    --trade-orange-dark: #d84211;
    --trade-dark: #18212a;
    --trade-heading: #2f3942;
    --trade-text: #55606a;
    --trade-soft: #f5f7f8;
    --trade-line: #e1e6e9;
    overflow: hidden;
}

.trade-page *,
.trade-page *::before,
.trade-page *::after {
    box-sizing: border-box;
}

.trade-hero {
    min-height: 620px;
    display: flex;
    align-items: center;
    padding: 110px 0 90px;
    color: #fff;
    background:
        radial-gradient(
            circle at 85% 20%,
            rgba(242, 83, 30, .28),
            transparent 34%
        ),
        linear-gradient(135deg, #18212a, #293641);
    background-size: cover;
    background-position: center;
}

.trade-hero-copy {
    max-width: 830px;
}

.trade-hero h1 {
    max-width: 820px;
    margin: 10px 0 22px;
    color: #fff;
    font-size: clamp(2.45rem, 5vw, 4.65rem);
    line-height: 1.04;
    letter-spacing: -.055em;
}

.trade-hero p {
    max-width: 760px;
    margin: 0;
    color: rgba(255, 255, 255, .82);
    font-size: 1.08rem;
    line-height: 1.8;
}

.trade-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 34px;
}

.trade-trust-strip {
    background: #fff;
    border-bottom: 1px solid var(--trade-line);
}

.trade-trust-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.trade-trust-grid > div {
    min-height: 125px;
    padding: 26px 22px;
    border-right: 1px solid var(--trade-line);
}

.trade-trust-grid > div:first-child {
    border-left: 1px solid var(--trade-line);
}

.trade-trust-grid strong {
    display: block;
    margin-bottom: 8px;
    color: var(--trade-heading);
    font-size: .92rem;
}

.trade-trust-grid span {
    display: block;
    color: var(--trade-text);
    font-size: .78rem;
    line-height: 1.65;
}

.trade-heading {
    max-width: 790px;
    margin-bottom: 34px;
}

.trade-heading h2,
.trade-heading-row h2,
.trade-main-copy h2,
.trade-information-grid h2,
.trade-request-heading h2 {
    margin: 7px 0 13px;
    color: var(--trade-heading);
    font-size: clamp(2rem, 4vw, 3.35rem);
    line-height: 1.12;
    letter-spacing: -.04em;
}

.trade-heading p,
.trade-main-copy p,
.trade-information-grid p,
.trade-request-heading p {
    color: var(--trade-text);
    line-height: 1.8;
}

.trade-services-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.trade-service-card {
    position: relative;
    min-height: 250px;
    padding: 28px 24px;
    background: #fff;
    border: 1px solid var(--trade-line);
    border-radius: 7px;
    transition: .22s ease;
}

.trade-service-card:hover {
    transform: translateY(-5px);
    border-color: rgba(242, 83, 30, .45);
    box-shadow: 0 22px 45px rgba(23, 33, 42, .09);
}

.trade-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    margin-bottom: 24px;
    border-radius: 5px;
    background: #fff1eb;
    color: var(--trade-orange);
    font-size: .78rem;
    font-weight: 800;
}

.trade-service-card h3,
.trade-process-card h3,
.trade-work-card h3 {
    margin: 0 0 10px;
    color: var(--trade-heading);
    font-size: 1.02rem;
    line-height: 1.4;
}

.trade-service-card p,
.trade-process-card p,
.trade-work-card p {
    margin: 0;
    color: var(--trade-text);
    font-size: .84rem;
    line-height: 1.75;
}

.trade-main-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.03fr) minmax(0, .97fr);
    gap: 54px;
    align-items: center;
}

.trade-main-image {
    min-height: 560px;
}

.trade-main-image img,
.trade-image-placeholder {
    width: 100%;
    height: 560px;
    object-fit: cover;
    border-radius: 8px;
}

.trade-image-placeholder {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 30px;
    text-align: center;
    background:
        linear-gradient(
            135deg,
            #26343f,
            #19222a
        );
    color: #fff;
}

.trade-image-placeholder strong {
    font-size: 1.3rem;
}

.trade-image-placeholder span {
    max-width: 390px;
    margin-top: 10px;
    color: rgba(255, 255, 255, .7);
    font-size: .82rem;
    line-height: 1.65;
}

.trade-check-list {
    display: grid;
    gap: 13px;
    margin: 25px 0 30px;
    padding: 0;
    list-style: none;
}

.trade-check-list li {
    position: relative;
    padding-left: 29px;
    color: #34404a;
    font-size: .9rem;
    line-height: 1.6;
}

.trade-check-list li::before {
    content: "✓";
    position: absolute;
    left: 0;
    top: 0;
    color: var(--trade-orange);
    font-weight: 800;
}

.trade-process-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.trade-process-card {
    padding: 28px 24px;
    border-top: 4px solid var(--trade-orange);
    background: var(--trade-dark);
    border-radius: 6px;
}

.trade-process-card b {
    display: block;
    margin-bottom: 35px;
    color: var(--trade-orange);
    font-size: 1.6rem;
}

.trade-process-card h3 {
    color: #fff;
}

.trade-process-card p {
    color: rgba(255, 255, 255, .68);
}

.trade-heading-row {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 25px;
    margin-bottom: 34px;
}

.trade-work-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
}

.trade-work-card {
    overflow: hidden;
    background: #fff;
    border: 1px solid var(--trade-line);
    border-radius: 8px;
}

.trade-work-image {
    display: block;
    height: 290px;
    overflow: hidden;
}

.trade-work-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .3s ease;
}

.trade-work-card:hover .trade-work-image img {
    transform: scale(1.035);
}

.trade-work-content {
    padding: 25px;
}

.trade-work-content > span {
    display: block;
    margin-bottom: 9px;
    color: var(--trade-orange);
    font-size: .72rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .05em;
}

.trade-work-content a {
    display: inline-flex;
    margin-top: 18px;
    color: var(--trade-orange);
    font-size: .82rem;
    font-weight: 800;
    text-decoration: none;
}

.trade-gallery {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.trade-gallery a {
    display: block;
    height: 280px;
    overflow: hidden;
    border-radius: 7px;
}

.trade-gallery img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .3s ease;
}

.trade-gallery a:hover img {
    transform: scale(1.04);
}

.trade-information-grid {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    gap: 55px;
    align-items: center;
}

.trade-audience-grid,
.trade-location-panel > div {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 11px;
}

.trade-audience-grid span,
.trade-location-panel span {
    padding: 15px 16px;
    background: #fff;
    border: 1px solid var(--trade-line);
    border-radius: 5px;
    color: #36424c;
    font-size: .79rem;
    font-weight: 700;
}

.trade-location-panel {
    padding: 28px;
    background: var(--trade-dark);
    border-radius: 8px;
}

.trade-location-panel > strong {
    display: block;
    margin-bottom: 18px;
    color: #fff;
    font-size: 1rem;
}

.trade-location-panel span {
    background: rgba(255, 255, 255, .06);
    border-color: rgba(255, 255, 255, .1);
    color: rgba(255, 255, 255, .85);
}

.trade-request-heading {
    max-width: 850px;
    margin-bottom: 30px;
}

.trade-form-shell {
    overflow: hidden;
    padding: 18px;
    background: #fff;
    border: 1px solid var(--trade-line);
    border-radius: 8px;
    box-shadow: 0 18px 45px rgba(22, 32, 40, .07);
}

.trade-form-frame {
    display: block;
    width: 100%;
    height: 1020px;
    border: 0;
    background: #fff;
}

.trade-faq-list {
    display: grid;
    gap: 12px;
    max-width: 930px;
}

.trade-faq {
    background: #fff;
    border: 1px solid var(--trade-line);
    border-radius: 6px;
}

.trade-faq summary {
    position: relative;
    padding: 20px 52px 20px 20px;
    cursor: pointer;
    color: var(--trade-heading);
    font-size: .91rem;
    font-weight: 800;
    list-style: none;
}

.trade-faq summary::-webkit-details-marker {
    display: none;
}

.trade-faq summary::after {
    content: "+";
    position: absolute;
    right: 20px;
    top: 15px;
    color: var(--trade-orange);
    font-size: 1.5rem;
}

.trade-faq[open] summary::after {
    content: "−";
}

.trade-faq p {
    margin: 0;
    padding: 0 20px 22px;
    color: var(--trade-text);
    font-size: .84rem;
    line-height: 1.75;
}

@media (max-width: 1050px) {
    .trade-services-grid,
    .trade-process-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .trade-trust-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .trade-trust-grid > div:nth-child(3) {
        border-left: 1px solid var(--trade-line);
    }
}

@media (max-width: 820px) {
    .trade-hero {
        min-height: auto;
        padding: 90px 0 75px;
        background-position: 62% center;
    }

    .trade-main-grid,
    .trade-information-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .trade-main-image,
    .trade-main-image img,
    .trade-image-placeholder {
        min-height: 390px;
        height: 390px;
    }

    .trade-work-grid {
        grid-template-columns: 1fr;
    }

    .trade-gallery {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .trade-heading-row {
        align-items: start;
        flex-direction: column;
    }
}

@media (max-width: 580px) {
    .trade-hero {
        padding: 74px 0 62px;
    }

    .trade-hero h1 {
        font-size: 2.35rem;
        line-height: 1.08;
    }

    .trade-hero p {
        font-size: .94rem;
    }

    .trade-actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .trade-actions .btn {
        width: 100%;
        justify-content: center;
    }

    .trade-trust-grid,
    .trade-services-grid,
    .trade-process-grid,
    .trade-gallery,
    .trade-audience-grid,
    .trade-location-panel > div {
        grid-template-columns: 1fr;
    }

    .trade-trust-grid > div,
    .trade-trust-grid > div:first-child,
    .trade-trust-grid > div:nth-child(3) {
        min-height: auto;
        border-left: 1px solid var(--trade-line);
        border-right: 1px solid var(--trade-line);
        border-bottom: 1px solid var(--trade-line);
    }

    .trade-main-image,
    .trade-main-image img,
    .trade-image-placeholder {
        min-height: 310px;
        height: 310px;
    }

    .trade-work-image,
    .trade-gallery a {
        height: 235px;
    }

    .trade-form-shell {
        padding: 5px;
    }

    .trade-form-frame {
        height: 1200px;
    }
}
