/* The contact photo fills the hero; the soft wash keeps its copy readable. */
.bsas-contact-page .bsas-contact-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    display: flex;
    align-items: center;
    min-height: clamp(340px, 33.333333vw, 640px);
}
.bsas-contact-page .bsas-contact-hero > picture {
    position: absolute;
    inset: 0;
    z-index: 0;
    min-height: 0;
}
.bsas-contact-page .bsas-contact-hero > picture img { object-position: 50% 0%; }
.bsas-contact-page .bsas-contact-hero::after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(90deg, rgba(255,255,255,.94), rgba(255,255,255,.8) 22%, rgba(255,255,255,.3) 42%, rgba(255,255,255,.03) 55%, transparent 64%);
    pointer-events: none;
}
.bsas-contact-page .bsas-contact-hero-copy {
    position: relative;
    z-index: 2;
    width: 100%;
    padding: 58px var(--content-edge);
    background: transparent;
    color: var(--ink);
}
@media (max-width: 700px) {
    .bsas-contact-page .bsas-contact-hero { min-height: clamp(460px, 123.076923vw, 560px); align-items: flex-end; }
    .bsas-contact-page .bsas-contact-hero > picture img { object-position: 73% 50%; }
    .bsas-contact-page .bsas-contact-hero::after {
        background: linear-gradient(180deg, transparent 35%, rgba(255,255,255,.04) 48%, rgba(255,255,255,.76) 70%, rgba(255,255,255,.94));
    }
    .bsas-contact-page .bsas-contact-hero-copy { padding: 285px var(--content-edge) 28px; gap: 18px; }
    .bsas-contact-page .bsas-contact-action { width: auto; min-width: 214px; max-width: 100%; }
}

/* Minimal line fields; all form behaviour belongs to BS SiteCore. */
.bs-contact { margin-top: 32px; font: 400 16px/1.6 var(--body); }
.bs-contact .bs-contact-test-note { max-width: none; padding: 12px 0; border-block: 1px solid var(--line); color: #5e564c; font-size: 13px; }
.bs-contact-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 27px 24px; }
.bs-contact-field { min-width: 0; }
.bs-contact-wide { grid-column: 1/-1; }
.bs-contact-field label { display: block; color: var(--ink); font-size: 16px; }
.bs-contact-field label span { font-size: 12px; color: #68635b; }
.bs-contact .bs-contact-field input,
.bs-contact .bs-contact-field textarea { box-sizing: border-box; display: block; width: 100%; min-height: 52px; padding: 13px 0 10px; border: 0; border-bottom: 1px solid #222; border-radius: 0; box-shadow: none; background: transparent; color: var(--ink); font: 400 16px/1.6 var(--body); }
.bs-contact .bs-contact-field textarea { min-height: 155px; resize: vertical; }
.bs-contact .bs-contact-field input:focus,
.bs-contact .bs-contact-field textarea:focus { outline: 0; border-bottom: 2px solid var(--red-button); padding-bottom: 9px; }
.bs-contact .bs-contact-field [aria-invalid="true"] { border-bottom-color: #a82716; }
.bs-contact-field small { display: block; padding-top: 5px; font-size: 12px; color: #68635b; }
.bs-contact .bs-contact-privacy { margin: 22px 0; font-size: 12px; line-height: 1.7; max-width: none; }
.bs-contact-submit { display: flex; justify-content: space-between; align-items: center; gap: 20px; width: 100%; min-height: 58px; padding: 15px 22px; border: 0; border-radius: 0; background: var(--red-button); color: #fff; font: 500 16px/1.5 var(--ui); text-transform: uppercase; cursor: pointer; }
.bs-contact-submit:hover { background: #a82716; }
.bs-contact-submit:focus-visible { outline: 2px solid #111; outline-offset: 4px; }
.bs-contact-submit:disabled { background: #6b6966; cursor: not-allowed; }
.bs-contact-submit span { font: 400 25px/1 var(--body); }
.bs-contact-trap { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.bs-contact-result { margin: 0 0 24px; padding: 17px 0; border-block: 2px solid var(--ink); color: var(--ink); overflow-wrap: anywhere; }
.bs-contact-result.is-error { border-color: #a82716; color: #8f2416; }
.bs-contact-result:focus { outline: 2px solid var(--red-button); outline-offset: 5px; }
.bs-contact .cf-turnstile { margin-top: 24px; }
@media(max-width: 1000px) { .bs-contact-fields { grid-template-columns: minmax(0,1fr); } }
@media(prefers-reduced-motion: reduce) { .bs-contact * { scroll-behavior: auto; } }

/* Reseller is a business variant of the same protected form. Imported copy stays intact. */
.bsas-reseller-page{max-width:1240px;margin:0 auto;padding:40px 32px 72px}
.bsas-reseller-page .page-heading{margin:0 0 32px}
.bsas-reseller-page .bsas-page-copy{padding:0}
.bsas-reseller-page .bsas-imported-content h1{max-width:850px;margin:12px 0 25px;font:400 clamp(34px,4.5vw,58px)/1.12 var(--heading);text-transform:uppercase}
.bsas-page-edasimuuja>.bsas-content-section:nth-child(2){display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:0 56px;align-items:start}
.bsas-page-edasimuuja>.bsas-content-section:nth-child(2) div:not(.bs-contact):not(.bs-contact *){display:contents}
.bsas-page-edasimuuja>.bsas-content-section:nth-child(2) img{grid-column:1;grid-row:1 / span 8;width:100%;height:640px;max-width:100%;object-fit:cover;object-position:center top}
.bsas-page-edasimuuja>.bsas-content-section:nth-child(2) :is(p,h3,ul,.bs-contact){grid-column:2}
.bsas-page-edasimuuja>.bsas-content-section:nth-child(2) :is(p,ul):empty{display:none}
.bsas-reseller-page .bs-contact{margin-top:16px}
@media(max-width:780px){.bsas-reseller-page{padding:28px 20px 56px}.bsas-page-edasimuuja>.bsas-content-section:nth-child(2){display:block}.bsas-page-edasimuuja>.bsas-content-section:nth-child(2) img{height:360px;margin:0 0 28px;object-position:center 25%}}
