/** Business Forum UK: landing sections (Domain For Sale template). */
.sale-hero { background: linear-gradient(135deg, var(--bf-navy-deep) 0%, var(--bf-navy) 55%, var(--bf-blue) 100%); color: #fff; position: relative; overflow: hidden; }
.sale-hero::after { content: ""; position: absolute; right: -160px; top: -200px; width: 640px; height: 640px; border-radius: 50%; background: radial-gradient(circle, rgba(127, 209, 201, .28), rgba(127, 209, 201, 0) 70%); pointer-events: none; }
.sale-hero__inner { position: relative; z-index: 1; display: grid; gap: 36px; padding-top: 72px; padding-bottom: 80px; grid-template-columns: minmax(0, 1fr); align-items: center; }
@media (min-width: 960px) { .sale-hero__inner { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 64px; padding-top: 96px; padding-bottom: 104px; } }
.sale-hero h1 { color: #fff; max-width: 20ch; }
.sale-hero__lead { font-size: var(--bf-text-md); color: rgba(255, 255, 255, .84); max-width: 58ch; line-height: 1.6; }
.sale-stats { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.sale-stats li { background: rgba(255, 255, 255, .07); border: 1px solid rgba(255, 255, 255, .12); border-radius: var(--bf-radius); padding: 18px 20px; display: grid; gap: 4px; }
.sale-stats strong { font-size: clamp(1.6rem, 1.2rem + 1.2vw, 2.2rem); line-height: 1.1; letter-spacing: -.02em; color: #fff; }
.sale-stats span { font-size: 13px; color: rgba(255, 255, 255, .72); line-height: 1.4; }
.kicker--dark { color: var(--bf-teal); }
.sale-overview { background: var(--bf-surface); border-bottom: 1px solid var(--bf-line); }
.sale-overview__content { max-width: 78ch; }
.sale-grid { display: grid; gap: 16px; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); }
.sale-card { position: relative; background: var(--bf-surface); border: 1px solid var(--bf-line); border-top: 4px solid var(--bf-teal); border-radius: var(--bf-radius); padding: 22px 24px 24px; box-shadow: var(--bf-shadow); }
.sale-card__num { position: absolute; top: 18px; right: 20px; font-size: 13px; font-weight: 700; color: var(--bf-muted); }
.sale-card h3 { font-size: 1.1rem; margin: 0 40px 8px 0; }
.sale-card p { margin: 0; color: var(--bf-muted); font-size: var(--bf-text-sm); line-height: 1.55; }
.sale-why { background: var(--bf-surface); border-top: 1px solid var(--bf-line); border-bottom: 1px solid var(--bf-line); }
.sale-why__inner { display: grid; gap: 36px; grid-template-columns: minmax(0, 1fr); align-items: start; }
@media (min-width: 960px) { .sale-why__inner { grid-template-columns: minmax(0, 7fr) minmax(0, 4fr); gap: 64px; } }
.sale-why p { font-size: var(--bf-text-md); line-height: 1.65; max-width: 66ch; }
.sale-points { list-style: none; margin: 24px 0 0; padding: 0; display: grid; gap: 14px; }
.sale-points li { padding-left: 30px; position: relative; color: var(--bf-muted); font-size: var(--bf-text-sm); line-height: 1.5; }
.sale-points li::before { content: ""; position: absolute; left: 0; top: 4px; width: 18px; height: 18px; border-radius: 50%; background: var(--bf-teal-soft); box-shadow: inset 0 0 0 2px var(--bf-teal); }
.sale-points strong { display: block; color: var(--bf-navy); font-size: var(--bf-text-base); margin-bottom: 2px; }
.sale-aside { background: var(--bf-navy); color: #fff; border-radius: var(--bf-radius); padding: 26px 28px; }
.sale-aside h3 { color: #fff; font-size: 1.05rem; margin-bottom: 12px; }
.sale-aside ul { margin: 0; padding-left: 1.1em; display: grid; gap: 8px; font-size: var(--bf-text-sm); color: rgba(255, 255, 255, .88); }
.sale-aside__note { margin: 18px 0 0; font-size: 13px; color: rgba(255, 255, 255, .65); }
.sale-steps { list-style: none; margin: 0; padding: 0; display: grid; gap: 14px; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); counter-reset: step; }
.sale-steps li { counter-increment: step; background: var(--bf-surface); border: 1px solid var(--bf-line); border-radius: var(--bf-radius); padding: 22px 22px 22px 64px; position: relative; display: grid; gap: 6px; box-shadow: var(--bf-shadow); }
.sale-steps li::before { content: counter(step); position: absolute; left: 20px; top: 20px; width: 30px; height: 30px; border-radius: 50%; background: var(--bf-teal); color: #fff; font-weight: 700; display: grid; place-items: center; font-size: 14px; }
.sale-steps strong { color: var(--bf-navy); }
.sale-steps span { color: var(--bf-muted); font-size: var(--bf-text-sm); line-height: 1.5; }
.sale-form { background: var(--bf-surface); border-top: 1px solid var(--bf-line); }
.sale-form__inner { display: grid; gap: 36px; grid-template-columns: minmax(0, 1fr); align-items: start; }
@media (min-width: 960px) { .sale-form__inner { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 64px; } }
.sale-form__intro p { color: var(--bf-muted); font-size: var(--bf-text-md); line-height: 1.6; }
.sale-form__terms { margin: 20px 0 0; padding-left: 1.1em; color: var(--bf-muted); font-size: var(--bf-text-sm); display: grid; gap: 6px; }
.sale-form__card { background: var(--bf-bg); border: 1px solid var(--bf-line); border-radius: var(--bf-radius); padding: 28px; box-shadow: var(--bf-shadow); }
/* Gravity Forms inside the card */
.sale-form__card .gform_wrapper.gravity-theme .gfield_label, .sale-form__card .gform_wrapper .gfield_label { font-weight: 600; font-size: var(--bf-text-sm); color: var(--bf-navy); }
.sale-form__card .gform_wrapper input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]), .sale-form__card .gform_wrapper textarea, .sale-form__card .gform_wrapper select { width: 100%; padding: 11px 12px; border: 1px solid var(--bf-line); border-radius: var(--bf-radius-sm); background: #fff; font: inherit; }
.sale-form__card .gform_wrapper input:focus, .sale-form__card .gform_wrapper textarea:focus { border-color: var(--bf-navy); box-shadow: 0 0 0 3px rgba(20, 50, 79, .15); outline: 0; }
.sale-form__card .gform_wrapper .gfield_description, .sale-form__card .gform_wrapper .ginput_complex label { font-size: 12.5px; color: var(--bf-muted); }
.sale-form__card .gform_wrapper .gform_footer input[type="submit"], .sale-form__card .gform_wrapper .gform_button { background: var(--bf-teal); color: #fff; border: 0; border-radius: var(--bf-radius-sm); padding: 13px 24px; font-weight: 600; font-size: var(--bf-text-base); cursor: pointer; }
.sale-form__card .gform_wrapper .gform_footer input[type="submit"]:hover { background: var(--bf-teal-dark); }
.sale-form__card .gform_wrapper .gform_validation_errors, .sale-form__card .gform_wrapper .gfield_validation_message { border-radius: var(--bf-radius-sm); }
.sale-form__card .gform_confirmation_message { font-size: var(--bf-text-md); color: var(--bf-navy); font-weight: 600; }
