body {
    font-family: 'Inter', sans-serif;
    background-color: #f9fafc;
    color: #1e2a3a;
}
h1, h2, h3 {
    font-weight: 700;
    letter-spacing: -0.02em;
}
h1 {
    font-size: calc(2rem + 1.5vw);
}
h2 {
    font-size: calc(1.5rem + 1vw);
}
.section {
    padding: 4rem 0;
}
.section:nth-child(even) {
    background-color: #ffffff;
}
.section:first-of-type {
    padding-top: 5rem;
}
.placeholder-img {
    /*background: linear-gradient(145deg, #e0e5ec, #f0f4fa);*/
    border-radius: 2rem;
    /*box-shadow: 0 20px 30px -10px rgba(0, 0, 0, 0.1);*/
    display: flex;
    align-items: center;
    justify-content: center;
    color: #4a5b6e;
    font-weight: 500;
    font-size: 1.2rem;
    min-height: 200px;
    width: 100%;
   /* border: 2px dashed #a0b3cc;*/
   transition: transform 0.3s ease;
}
.placeholder-img:hover {
    transform: scale(1.02);
}
.qr-placeholder {
    background: #fff;
    border-radius: 2rem;
    padding: 1.5rem;
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);
    border: 1px solid #dee7f0;
}
.qr-placeholder .placeholder-img {
    min-height: 180px;
    background: #fff;
    border: 2px dashed #2c3e50;
    color: #2c3e50;
}
.carousel-control-prev-icon, .carousel-control-next-icon {
    margin-left: auto;
    margin-right: auto;    
    border-radius: 8px;    
    background-color: gray;
}

footer {
    background-color: #1e2a3a;
    color: #adb5bd;
    padding: 2rem 0;
}
footer a {
    color: #f8f9fa;
    text-decoration: none;
}
footer a:hover {
    text-decoration: underline;
}
/* небольшая кастомизация отступов для мобильных */
@media (max-width: 768px) {
    .section {
        padding: 3rem 0;
    }
    h2 {
        margin-top: 1.5rem;
    }
}