
body{
    margin:0;
    font-family:Inter,Arial,sans-serif;
    background:#f8fafc;
    color:#1f2937;
}

.hero{
    background:linear-gradient(135deg,#2563eb,#3b82f6);
    color:white;
    text-align:center;
    padding:70px 20px;
    border-radius:0 0 20px 20px;
}

.hero-title{
    font-size:56px;
    margin-bottom:15px;
}

.hero-subtitle{
    font-size:30px;
    font-weight:600;
    margin-bottom:20px;
}

.hero-description{
    max-width:700px;
    margin:auto;
    line-height:1.8;
    font-size:18px;
}

.hero input{
    margin-top:35px;
}
.main-content {
    width: min(1100px, 92%);
    margin: 36px auto;
}
button {
    font-family: inherit;
}

button[id^="generate-button-"] {
    background: #2563eb;
    color: white;
    border: none;
    border-radius: 9px;
    padding: 11px 18px;
    font-weight: 600;
    cursor: pointer;
    transition: transform 0.15s ease, background 0.15s ease;
}

button[id^="generate-button-"]:hover {
    background: #1d4ed8;
    transform: translateY(-1px);
}

button[id^="copy-button-"] {
    background: white;
    color: #2563eb;
    border: 1px solid #2563eb;
    border-radius: 9px;
    padding: 10px 16px;
    font-weight: 600;
    cursor: pointer;
}
#reviews-list article {
    padding: 22px !important;
    border-radius: 14px !important;
    box-shadow: 0 6px 20px rgba(15, 23, 42, 0.07) !important;
}

#reviews-list article p {
    line-height: 1.65;
}
[id^="reply-output-"] {
    background: #f8fafc !important;
    border-left: 4px solid #2563eb;
    line-height: 1.55;
}
#business-details > div:first-child {
    border-radius: 14px !important;
    box-shadow: 0 6px 20px rgba(15, 23, 42, 0.06);
}
#business-details {
    color: #1f2937;
    text-align: left;
}

#reviews-list {
    display: grid;
    gap: 20px;
}

#reviews-list article {
    color: #1f2937;
    text-align: left;
    min-height: auto;
}
.hero-trust {
    margin-top: 18px;
    font-size: 15px;
}#business-search{

    width:650px;
    max-width:90%;

    padding:18px 22px;

    font-size:18px;

    border:2px solid transparent;

    border-radius:14px;

    background:white;

    transition:all .25s ease;

    box-shadow:0 8px 25px rgba(0,0,0,.15);

    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;

}
#business-search:focus {
    outline: none;
    border-color: #fbbf24;

    box-shadow:
        0 0 0 5px rgba(251, 191, 36, 0.35),
        0 15px 35px rgba(0, 0, 0, 0.22);
}
@media (max-width: 700px) {
    .hero {
        padding: 48px 16px;
    }

    .hero-title {
        font-size: 40px;
    }

    .hero-subtitle {
        font-size: 24px;
    }

    .hero-description {
        font-size: 16px;
    }

    #business-search {
        width: 100%;
        max-width: 100%;
    }

    .main-content {
        width: 94%;
        margin-top: 24px;
    }
}
