/* Complete Contact page. All styles are scoped to .sedasend-contact. */
.sedasend-contact {
    --contact-orange: #e25541;
    --contact-black: #111;
    --contact-line: #e5e5e5;
    width: 100%;
    overflow: hidden;
    background: #fff;
    color: var(--contact-black);
}

.sedasend-contact *,
.sedasend-contact *::before,
.sedasend-contact *::after { box-sizing: border-box; }

.sedasend-contact__hero { padding: clamp(86px, 10vw, 140px) 20px clamp(58px, 7vw, 92px); text-align: center; animation: sedasend-contact-fade .7s ease both; }
.sedasend-contact__hero h1 { margin: 0; color: var(--contact-black); font-size: clamp(2.7rem, 6vw, 5.3rem); font-weight: 900; line-height: 1.03; letter-spacing: -.05em; }
.sedasend-contact__hero h1 span { color: var(--contact-orange); }
.sedasend-contact__hero p { margin: 18px 0 0; color: var(--contact-black); font-size: clamp(1.05rem, 2vw, 1.3rem); }
@keyframes sedasend-contact-fade { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: none; } }

.sedasend-contact__section { width: min(1080px, calc(100% - 40px)); margin: 0 auto; padding-bottom: clamp(72px, 9vw, 116px); }
.sedasend-contact__section > h2 { margin: 0 0 clamp(30px, 5vw, 46px); color: var(--contact-black); font-size: clamp(1.8rem, 4vw, 3rem); font-weight: 900; text-align: center; }

.sedasend-contact__form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; max-width: 820px; margin: 0 auto; padding: clamp(24px, 4vw, 40px); border: 1px solid var(--contact-line); border-radius: 18px; background: #fff; }
.sedasend-contact__field { display: flex; flex-direction: column; gap: 7px; }
.sedasend-contact__field--wide { grid-column: 1 / -1; }
.sedasend-contact__field label { color: var(--contact-black); font-weight: 700; }
.sedasend-contact__field input,
.sedasend-contact__field textarea { width: 100%; padding: 13px 15px; border: 1px solid #d8d8d8; border-radius: 9px; background: #fff; color: var(--contact-black); font: inherit; outline: 0; transition: border-color .2s ease, box-shadow .2s ease; }
.sedasend-contact__field textarea { resize: vertical; }
.sedasend-contact__field input:focus,
.sedasend-contact__field textarea:focus { border-color: var(--contact-orange); box-shadow: 0 0 0 3px rgba(226,85,65,.12); }
.sedasend-contact__field .is-invalid { border-color: var(--contact-orange); }
.sedasend-contact__feedback { grid-column: 1 / -1; min-height: 1.4em; margin: 0; color: var(--contact-orange); text-align: center; }
.sedasend-contact__form button { grid-column: 1 / -1; justify-self: center; min-width: 190px; padding: 14px 26px; border: 0; border-radius: 10px; background: var(--contact-orange); color: #fff; font: inherit; font-weight: 900; cursor: pointer; transition: box-shadow .2s ease, transform .2s ease; }
.sedasend-contact__form button:hover,
.sedasend-contact__form button:focus-visible { box-shadow: 0 0 18px rgba(226,85,65,.42); transform: translateY(-2px); }

.sedasend-contact__info-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.sedasend-contact__info-card { padding: 30px 20px; border: 1px solid var(--contact-line); border-radius: 16px; background: #fff; text-align: center; transition: border-color .2s ease; }
.sedasend-contact__info-icon { width: 32px; height: 32px; fill: none; stroke: var(--contact-orange); stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; transition: transform .2s ease; }
.sedasend-contact__info-card:hover { border-color: rgba(226,85,65,.65); }
.sedasend-contact__info-card:hover .sedasend-contact__info-icon { transform: scale(1.1); }
.sedasend-contact__info-card h3 { margin: 15px 0 8px; color: var(--contact-black); font-size: 1.25rem; }
.sedasend-contact__info-card a,
.sedasend-contact__info-card p { margin: 0; color: var(--contact-black); overflow-wrap: anywhere; }
.sedasend-contact__info-card a:hover { color: var(--contact-orange); }

.sedasend-contact__cta { display: grid; grid-template-columns: minmax(0, 1fr) minmax(220px, .55fr); align-items: center; width: min(1080px, calc(100% - 40px)); margin: 0 auto clamp(72px, 9vw, 116px); padding: clamp(28px, 5vw, 54px); gap: 30px; border: 0; border-radius: 20px; background: #fff; }
.sedasend-contact__cta h2 { margin: 0 0 24px; color: var(--contact-black); font-size: clamp(2rem, 4vw, 3.4rem); font-weight: 900; line-height: 1.1; }
.sedasend-contact__cta a { display: inline-flex; padding: 14px 28px; border-radius: 999px; background: var(--contact-orange); color: #fff; font-weight: 900; transition: transform .2s ease; }
.sedasend-contact__cta a:hover,
.sedasend-contact__cta a:focus-visible { color: #fff; transform: scale(1.05); }
.sedasend-contact__cta img { width: min(260px, 100%); max-height: 430px; justify-self: center; object-fit: contain; }

@media (max-width: 900px) and (min-width: 701px) {
    .sedasend-contact__info-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 700px) {
    .sedasend-contact__form,
    .sedasend-contact__info-grid,
    .sedasend-contact__cta { grid-template-columns: 1fr; }
    .sedasend-contact__field--wide { grid-column: auto; }
    .sedasend-contact__cta img { order: -1; }
    .sedasend-contact__cta { text-align: center; }
}

@media (prefers-reduced-motion: reduce) {
    .sedasend-contact__hero { animation: none; }
    .sedasend-contact * { transition: none !important; }
}
