/* Restore a content-rich homepage service panel without changing its column structure. */
@media (max-width:768px) {
 .bsb-recommend-section .bsb-packages { grid-template-columns: minmax(0,1fr); gap: 18px; }
 .bsb-recommend-section .bsb-package { min-height: 260px; padding: 28px 25px; }
}
.bsb-home-service-grid .bsb-featured-description { font-size: clamp(12px,.72vw,15px); line-height: 1.8; margin-top: 8px; }
.bsb-home-panel .bsb-featured-steps strong { display: flex; align-items: center; min-height: 30px; font-size: clamp(15px,.84vw,19px); }
.bsb-home-panel .bsb-featured-steps small { font-size: clamp(12.5px,.66vw,14px); line-height: 1.75; }
.bsb-home-panel .bsb-featured-steps li > span { width: 30px; height: 30px; font-size: 14px; }
.bsb-home-panel .bsb-featured-steps li { display: grid; grid-template-columns: 30px minmax(0,1fr); gap: 10px; align-items: start; }
.bsb-home-panel .bsb-featured-steps li > div { display: block; min-width: 0; grid-column: 2; }
.bsb-home-panel .bsb-featured-steps strong { display: block; }
.bsb-home-panel .bsb-featured-steps small { display: block; margin-top: 4px; }
.bsb-home-panel-side > a { padding-left: 28px; }
@media (min-width:641px) and (max-width:1180px) {
 .bsb-home-panel-side > a { padding-left: 20px; }
}
.bsb-home-service-points { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 6px 14px; width: 100%; list-style: none; margin: 10px 0 0; padding: 0; color: #718198; font-size: clamp(11px,.62vw,13px); line-height: 1.6; }
.bsb-home-service-points li { position: relative; padding-left: 12px; }
.bsb-home-service-points li::before { content: ''; position: absolute; left: 0; top: .75em; width: 4px; height: 4px; border-radius: 50%; background: #a7bbd5; }
.bsb-home-panel .bsb-service-compact { padding-block: 16px; }
.bsb-home-panel .bsb-service-compact h3 { margin-bottom: 7px; }
.bsb-home-panel .bsb-service-compact .bsb-service-actions { padding-top: 12px; }
.bsb-home-panel .bsb-service-compact .bsb-service-detail { position: relative; top: -8px; }
@media (min-width:1181px) {
 .bsb-home-panel .bsb-service-compact { padding-top: 32px; }
 .bsb-home-panel .bsb-service-compact ~ .bsb-service-compact { padding-top: 26px; }
 .bsb-home-panel .bsb-home-faq { padding-top: 32px; }
}
.bsb-home-panel-side .bsb-home-guide-note { font-size: clamp(12px,.72vw,15px); line-height: 1.85; color: #ffffffe6; margin: 16px 0 0; max-width: none; }
.bsb-home-panel .bsb-guide-contact { margin-top: 20px; padding-top: 0; }
@media (max-width:640px) {
 .bsb-home-panel .bsb-service-compact { padding-block: 18px; }
 .bsb-home-service-points { font-size: 11px; gap: 6px 12px; }
 .bsb-home-panel-side .bsb-home-guide-note { max-width: calc(100% - 120px); margin-top: 12px; font-size: 12px; }
}

/* Tighten the space above and below the homepage category buttons. */
:root body.bsb-unified-headings .bsb-popular-section .bsb-standard-heading { padding-bottom: 0; margin-bottom: clamp(20px,2vw,32px); }
.bsb-popular-section .bsb-tabs { margin-bottom: clamp(24px,2.5vw,40px); }
@media (max-width:640px) {
 :root body.bsb-unified-headings .bsb-popular-section .bsb-standard-heading { margin-bottom: 14px; }
 .bsb-popular-section .bsb-tabs { margin-bottom: 18px; }
}

/* Keep step text at full width instead of squeezing it beside the illustration. */
@media(min-width:641px) {
 .bsb-home-panel .bsb-featured-body { grid-template-columns:minmax(0,1fr); align-content:start; gap:14px; }
 .bsb-home-panel .bsb-featured-body .bsb-service-document { width:96px; justify-self:end; }
}
/* Adjacent action cells leave no distributed white gap, including in WebKit. */
.bsb-site .bsb-popular-contact { display:grid; grid-template-columns:minmax(0,1fr) auto auto; justify-content:normal; gap:0; width:min(1040px,100%); margin-top:clamp(28px,3vw,48px); }
.bsb-site .bsb-popular-contact > div { min-width:0; gap:8px 18px; padding:16px 24px; }
.bsb-site .bsb-popular-contact > a { margin:0; min-width:0; padding:16px 26px; }
@media(max-width:640px) {
 .bsb-site .bsb-popular-contact { grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:28px; }
 .bsb-site .bsb-popular-contact > div { grid-column:1 / -1; justify-content:center; padding:16px; }
 .bsb-site .bsb-popular-contact > a { padding:12px 10px; gap:10px; }
 .bsb-site .bsb-popular-contact .bsb-name-check-button { border-top:0; border-left:1px solid #ffffff40; }
}
