.belivo-search-form-inner {
width: 100%;
max-width: 720px;
margin: 0 auto;
box-sizing: border-box;
} .belivo-search-wrapper {
display: flex;
align-items: stretch;
width: 100%;
box-sizing: border-box;
position: relative; } .belivo-input {
flex: 1;
font-size: clamp(1rem, 2vw, 1.35rem) !important;
height: clamp(40px, 6vw, 48px) !important;
padding: clamp(12px, 2vw, 16px) clamp(18px, 3vw, 22px) !important;
border: 1px solid #007148 !important;
border-right: none !important; 
border-radius: 8px 0 0 8px !important;
outline: none !important;
transition: all 0.25s ease !important;
box-sizing: border-box;
background: #fff;
min-width: 0;
}
.belivo-input:focus {
border-color: #007148;
box-shadow: 0 0 0 1px #007148;
} .belivo-btn {
background: #007148 !important;
color: #fff !important;
border: 1px solid #007148 !important;
border-left: none !important;
border-radius: 0 20px 20px 0 !important;
font-size: clamp(1rem, 2vw, 1.25rem) !important;
height: clamp(40px, 6vw, 48px) !important;
padding: 0 clamp(15px, 3vw, 36px) !important;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
transition: background 0.25s ease, transform 0.15s ease;
white-space: nowrap;
box-sizing: border-box;
font-weight: 600 !important;
letter-spacing: 0.3px;
flex-shrink: 0;
}
.belivo-btn-text {
display: inline-flex;
align-items: center;
line-height: 1;
font-weight: 600;
transform: translateY(-4px);
}
.belivo-btn-icon {
display: inline-flex;
align-items: center;
justify-content: center;
margin-right: 0;
flex-shrink: 0;
}
.belivo-btn .belivo-icon-search {
width: clamp(20px, 3vw, 26px);
height: clamp(20px, 3vw, 26px);
fill: currentColor; display: block;
transform: translateY(2px) !important;
}
.belivo-btn:hover {
background: #b38f39;
border-color: #b38f39;
transform: translateY(-1px);
} .kmu-autocomplete-list {
position: absolute;
top: 100%; left: 0;
width: calc(100% - var(--button-width, 0px)); background: #fff;
border: 1px solid #007148;
border-radius: 8px;
z-index: 9999;
list-style: none;
margin: 0;
padding: 0;
max-height: 280px;
overflow-y: auto;
box-shadow: 0 4px 8px rgba(0,0,0,0.1);
}
.kmu-autocomplete-item {
padding: 10px 16px;
cursor: pointer;
display: flex;
justify-content: space-between;
align-items: center;
border-bottom: 1px solid #eee;
transition: background 0.2s ease;
}
.kmu-autocomplete-item:last-child {
border-bottom: none;
}
.kmu-autocomplete-item:hover {
background: #f2f8f5;
} .kmu-autocomplete-item .firm-name {
font-weight: 600;
color: #666;
font-size: 1rem;
flex: 1;
margin-right: 8px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
} .kmu-autocomplete-item .meta {
display: flex;
flex-wrap: nowrap;
gap: 6px;
align-items: center;
font-size: 0.85rem;
color: #666;
white-space: nowrap;
}
.kmu-autocomplete-item .meta span {
background: #f0f0f0;
border-radius: 4px;
padding: 2px 6px;
line-height: 1.2;
}  .kmu-card1 {
display: flex;
flex-direction: column;
height: 100%; border-radius: 10px;
overflow: hidden;
transition: transform 0.2s ease, box-shadow 0.2s ease;
background: #fff;
} .kmu-card1:hover {
transform: translateY(-3px);
box-shadow: 0 6px 12px rgba(0,0,0,0.1);
} .kmu-card1 img {
width: 100%;
height: auto;
max-height: 140px;
object-fit: contain;
} .kmu-card1 .card-body {
flex: 1;
display: flex;
flex-direction: column;
justify-content: center; } .kmu-results-grid {
display: flex;
flex-wrap: wrap;
margin: -10px;
}
.kmu-results-grid__item {
width: 100%;
padding: 10px;
box-sizing: border-box;
display: flex;
}
@media (min-width: 768px) {
.kmu-results-grid__item {
width: 50%;
}
}
.kmu-results-grid__item .kmu-card1 {
flex: 1;
width: 100%;
.belivo-btn {
flex: 0.3;
padding: 0 clamp(16px, 2vw, 24px);
}
} @media (max-width: 1024px) {
.search-box {
transform: translateY(-140px) !important;
position: relative;
z-index: 5;
}
.belivo-search-form-inner {
max-width: 92%;
margin-top: -30px;
}
.belivo-input {
flex: 2.8;
}
.belivo-btn {
flex: 0.3;
padding: 0 clamp(16px, 2vw, 24px);
} .belivo-btn-text {
display: none !important;
} .belivo-btn-icon {
display: inline-flex !important;
}
.belivo-btn .belivo-icon-search {
width: 1.5em;
height: 1.5em;
fill: currentColor;
transform: translateY(5px) !important;
}
.kmu-autocomplete-item .firm-name {
font-size: 0.95rem;
}
.kmu-autocomplete-item .meta span {
font-size: 0.8rem;
}
} @media (max-width: 600px) {
.belivo-input {
height: 46px;
font-size: 1rem;
}
.belivo-btn {
height: 46px;
font-size: 1rem;
padding: 0 20px;
} .belivo-btn-icon {
display: inline-flex !important;
}
.belivo-btn .belivo-icon-search {
width: 1.5em;
height: 1.5em;
fill: currentColor;
transform: translateY(5px) !important;
}
}