* {
    margin: 0;
    padding: 0;
}

a[href^="tel"] {
    color: #d6d6d6 !important; 
    text-decoration: none;
}

.logo-container {

    text-align: center;
    min-height: 120px;
}

.logo-img {
    width: 280px;
    
}

.container {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.nav-panel {
    text-align: center;
    margin-top: 10px;
    margin-bottom: 15px;
    letter-spacing: 0.5px;
    border-bottom-color: rgb(176, 5, 113);
    border-bottom-style: solid;
    border-bottom-width: 3px;
    padding-bottom: 5px;
    text-transform: uppercase;
}

.nav-panel>ul>li {
    font-size: 12.5px;
}

.menu {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

li {
    display: inline;
    margin-right: 40px;
}

a {
    text-decoration: none;
    color: black;
}

a:hover {
    color: #a03d5e;
    /* Changing color */
}

/* BODY */

.main-photo-container {
    position: relative;
}

.main-photo-container>img {
    width: 100%;
    max-height: 800px;
    margin-bottom: 50px;
}

.text-main-photo {
   position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: white;
    font-size: 48px;
    text-align: center;
    color: rgb(255, 245, 253);
    font-size: 75px;
    text-shadow:
        0 1px 0 #3b3b3b,
        0 1px 0 #313131,
        0 3px 5px rgba(0,0,0,0.35);
         width: 80%;          /* ← ширина блока */
    max-width: 1200px;   /* ← чтобы не был слишком огромным */
}

.text-main-photo .logo-text-mini{
    font-size: 30px;
}

@media (max-width: 640px){
   .text-main-photo .logo-text-mini{
    font-size: 20px;
}
    .text-main-photo {
    font-size: 30px;
    }

}


.line {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 50px;
    margin-top: 1px;
    margin-bottom: 50px;
    }

.line>img{
    width:70%;
}    

.top-container {
    padding-top: 0;
    margin-bottom: 1px;
}

.menu-names-bold {
    display: flex;
    font-size: clamp(30px, 5vw, 70px);
    font-weight: bold;
    justify-content: center;
    font-optical-sizing: auto;
  font-weight: 100;
  font-style: normal;
  font-variation-settings:
    "wdth" 100;
    margin-bottom: 1px;
}

.whatsapp-circle {
    position: fixed;
    bottom: 80px;            /* чуть выше кнопки звонка */
    right: 70px;
    width: 60px;
    height: 60px;
    background-color: #25D366; /* фирменный зелёный WhatsApp */
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.25);
    text-decoration: none;
    transition: 0.3s;
    z-index: 999;
    animation: blink 3.2s infinite ease-in-out;
}

@keyframes blink {
    0%, 100% {
        opacity: 1;
    }
    50% {
        opacity: 0.3;
    }
}

.whatsapp-circle:hover {
    background-color: #1ebe5d;
    transform: scale(1.07);
}

/* иконка WhatsApp */
.whatsapp-icon {
    width: 28px;
    height: 28px;
    background-image: url("data:image/svg+xml,%3Csvg fill='white' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath d='M16.01 3C9.38 3 4 8.38 4 15.01c0 2.64.86 5.09 2.33 7.07L4 29l7.17-2.29A12.9 12.9 0 0016.01 27C22.63 27 28 21.62 28 15.01 28 8.38 22.63 3 16.01 3zm0 22c-1.94 0-3.77-.57-5.31-1.55l-.38-.24-4.25 1.36 1.4-4.14-.25-.4A10.02 10.02 0 016.01 15c0-5.54 4.46-10 10-10s10 4.46 10 10-4.46 10-10 10zm5.12-7.47c-.28-.14-1.64-.81-1.89-.9-.25-.1-.43-.14-.61.14-.18.28-.7.9-.86 1.08-.16.18-.32.2-.6.07-.28-.14-1.18-.44-2.25-1.41-.83-.74-1.39-1.65-1.55-1.93-.16-.28-.02-.43.12-.57.12-.12.28-.32.42-.48.14-.16.18-.28.28-.46.1-.18.05-.34-.02-.48-.07-.14-.61-1.48-.84-2.04-.22-.54-.45-.47-.61-.48h-.52c-.18 0-.48.07-.73.34-.25.28-.96.94-.96 2.28 0 1.34.98 2.63 1.12 2.81.14.18 1.93 2.95 4.77 4.14 2.84 1.18 2.84.79 3.35.74.51-.05 1.64-.66 1.87-1.3.23-.64.23-1.19.16-1.3-.07-.11-.25-.18-.53-.32z'/%3E%3C/svg%3E");
    background-size: cover;
}

/*Main columns*/

.center-container {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(3, 1fr);
}

.product-container {
    margin: 1em;
    text-align: center;
    margin: 1rem;
    border: 1px solid rgb(217, 217, 217);
    padding-bottom: 20px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
}

.product-container>img {
    width: 100%;
}

.bouquet-name {
    font-weight: bold;
    font-size: large;
    margin-bottom: 20px;
}

.button-contact {
    display: inline-block;
    font-size: 10 px;
    font-weight: bold;
    margin-top: 30px;
    border: 2px solid black;
    padding: 10px;
    font-size: 16px;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    margin-bottom: 12px;
}

.card-info {
    text-align: center;
    margin-top: 20px;
}


/*Flower-subscription*/


.tabs>span {
    cursor: pointer;
    font-size: clamp(30px, 3vw, 70px);
    margin-bottom: 40px;

}



.tabs {
    display: flex;
    justify-content: space-evenly;
    gap: 80px;
    margin: 30px;

    font-family: "Raleway", sans-serif;
}

.tab {
    position: relative;
    font-size: 16px;
    font-weight: 600;
    color: #8c8c8c;
    cursor: pointer;
    text-transform: uppercase;
    transition: color 0.3s ease;
}

.tab::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -10px;
    width: 0%;
    height: 2px;
    background-color: #000000;
    transition: width 0.3s ease;
}

.tab:hover {
    color: #7a7a7a;
}

.tab.active {
    color: #000000;
}

.tab.active::after {
    width: 100%;
}

.subscribtion-img {
    min-width: 550px;
}

.subscribtion-img>img {
    width: 100%;
}

.fs-center-container>p {
    padding-right: 60px;
}

.fs-content {
    display: flex;
    flex-direction: row;
}

.fs-content2 {
    display: flex;
}

.fs-text {
    max-width: 600px;
    margin-right: 40px;
}

.fs-text>p {
    font-size: 20px;
    margin-bottom: 50px;
    font-family: "Raleway", sans-serif;
    font-optical-sizing: auto;
}

/*Кнопка заказа подписки*/



.fs-button-container {
    display: block;
    margin-bottom: 60px;
}

.fs-button {
    display: inline-block;
    padding: 14px 34px;
    font-size: 16px;
    font-weight: 600;
    color: #fff;
    background: linear-gradient(135deg, #ff8fb1 0%, #ff4e70 100%);
    border: none;
    border-radius: 50px;
    box-shadow: 0 4px 10px rgba(255, 79, 112, 0.4);
    cursor: pointer;
    transition: all 0.3s ease;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin: 20px;
}

.fs-button:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(255, 79, 112, 0.5);
    background: linear-gradient(135deg, #ff6e90 0%, #ff2e50 100%);
}

.fs-button:active {
    transform: translateY(1px);
    box-shadow: 0 2px 6px rgba(255, 79, 112, 0.4);
}

.fs-button:focus {
    outline: none;
    box-shadow: 0 0 0 3px rgba(255, 120, 150, 0.4);
}

/* ===== FLOWER SUBSCRIPTION MODAL ===== */

.fs-modal {
    position: fixed;
    inset: 0; /* top:0; right:0; bottom:0; left:0 */
    background: rgba(0, 0, 0, 0.45);
    display: none;              /* по умолчанию скрыто */
    justify-content: center;
    align-items: center;
    z-index: 9999;
    padding: 20px;
}

.fs-modal.active {
    display: flex;
}

.fs-modal-content {
    background: #ffffff;
    max-width: 480px;
    width: 100%;
    border-radius: 18px;
    padding: 28px 24px 24px;
    position: relative;
    box-shadow: 0 16px 40px rgba(0,0,0,0.18);
    font-family: "Raleway", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    animation: fs-modal-fade-in 0.25s ease-out;
}

.fs-modal-title {
    font-size: 22px;
    margin: 0 0 18px;
    text-align: center;
    letter-spacing: 0.04em;
}

/* крестик */
.fs-modal-close {
    position: absolute;
    right: 16px;
    top: 10px;
    font-size: 26px;
    cursor: pointer;
    color: #888;
}

/* карточки планов */
.fs-modal-options {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 18px;
}

.fs-option {
    display: block;
    border-radius: 14px;
    border: 1px solid #f1d4de;
    background: #fff7fa;
    cursor: pointer;
    transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
    padding: 10px 12px;
}

.fs-option input[type="radio"] {
    display: none;
}

.fs-option-body {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.fs-option-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.fs-option-size {
    font-size: 20px;
    font-weight: 700;
    padding: 5px 11px;
    border-radius: 999px;
    background: #f4b6c9;
    color: #ffffff;
}

.fs-option-price {
    font-size: 16px;
    font-weight: 600;
    color: #c36a87;
}

.fs-option-text {
    font-size: 13px;
    line-height: 1.35;
    color: #555;
    margin: 4px 0 0;
}

/* состояние выбранного плана 
.fs-option input[type="radio"]:checked + .fs-option-body,
.fs-option:hover .fs-option-body {
сам .fs-option стилизуем через :has, но не везде есть поддержка, поэтому делаем через JS-класс ниже 
}
*/


.fs-option.fs-option--active {
    border-color: #e28aa6;
    background: #ffeaf2;
    box-shadow: 0 0 0 1px rgba(226, 138, 166, 0.3);
}

/* кнопка отправки */
.fs-modal-order-btn {
    width: 100%;
    border: none;
    border-radius: 999px;
    padding: 12px 18px;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    background: #d86a8a;
    color: #ffffff;
    cursor: pointer;
    transition: background 0.2s ease, transform 0.1s ease, box-shadow 0.2s ease;
}

.fs-modal-order-btn:hover {
    background: #c55878;
    box-shadow: 0 8px 18px rgba(216, 106, 138, 0.35);
}

.fs-modal-order-btn:active {
    transform: translateY(1px);
    box-shadow: 0 4px 10px rgba(216, 106, 138, 0.25);
}

/* анимация появления */
@keyframes fs-modal-fade-in {
    from {
        transform: translateY(12px);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

/* адаптация под мобилки */
@media (max-width: 480px) {
    .fs-modal-content {
        padding: 22px 18px 18px;
        border-radius: 14px;
    }
}


.fs-field {
    margin-bottom: 12px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.fs-field label {
    font-size: 13px;
    font-weight: 600;
}

.fs-field input,
.fs-field textarea {
    padding: 8px 10px;
    border-radius: 8px;
    border: 1px solid #e5d0da;
    font-size: 14px;
    font-family: inherit;
}

.fs-field textarea {
    min-height: 60px;
    resize: vertical;
}

.fs-checkbox {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-size: 13px;
    margin: 6px 0 14px;
}

.fs-checkbox input {
    margin-top: 3px;
}


.fs-field input[type="date"],
.fs-field input[type="time"] {
    padding: 8px 10px;
    border-radius: 8px;
    border: 1px solid #e5d0da;
    font-size: 14px;
}


/**/


.fs-title {
    font-size: 20px;
    font-family: "Raleway", sans-serif;
    font-optical-sizing: auto;
    text-align: center;
    margin: 30px;
}


.fs-subscribrion-text {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    font-size: 20px;
}


.fs-subscribrion-text>h2 {
    font-weight: bold;
}

.fs-all {
    display: block;
    grid-column: 1/13;
}

.fs-grid-in{
  display: grid;
  grid-template-columns: minmax(320px, 1fr) minmax(320px, 1fr);
  gap: 60px;
  align-items: stretch;
}

.fs-grid-block{
  margin: 0;                 /* важно: вместо margin используем gap */
  display: flex;
  flex-direction: column;
  min-width: 0;              /* важно: чтобы текст нормально ужимался */
}

.fs-grid-block>img{
     width: 100%;
    height: 100%;
    display: block;


    /* Скругление */
    border-radius: 19px;

    /* Корректное масштабирование */
    object-fit: cover;

    /* Воздух вокруг */
    margin: 0;
    
    /* Глубина */
    box-shadow:
        0 1px 22px rgba(0, 0, 0, 0.12),
        0 12px 6px rgba(0, 0, 0, 0.06);

    /* Плавность */
    transition:
        transform 0.4s ease,
        box-shadow 0.4s ease;
}

.margin-block{
    margin-top: 30px;
}


/* ЛЕВАЯ КОЛОНКА С ФОТО: пусть фото заполняет всю высоту */
.fs-grid-block:first-child{
  overflow: hidden;
  border-radius: 10px;
}

.fs-grid-block:first-child > img{
  width: 100%;
  height: 100%;
  object-fit: contain;   /* НЕ обрезает */
  display: block;
  margin-top: 0;         /* убираем старый отступ */
}

/* основной текст (у тебя это <span> внутри правого блока) */
.fs-grid-block span{
  font-size: clamp(14px, 1.1vw, 18px);
  line-height: 1.55;
}

/* заголовки справа */
.fs-grid-block .fs-h2{
  font-size: clamp(16px, 1.4vw, 22px);
}



.fs-grid-block>h2{
    margin-top: 25px;
    margin-bottom: 10px;
}

.fs-h2 {
    position: relative;
    margin-bottom: 7px;
}

.block-fs{
    display: block;
}

.fs-text-themes{
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.icon {
    position: absolute;
    left: -46px;
    top: 30%;
    transform: translateY(-50%);
    /* чтобы выровнять по центру вертикали */
    width: 45px;
    height: 45px;
}

/*Contacts*/

.con-center-container {
    grid-column: 1/13;
}

.google-map {
    max-width: 50%;
}

.con-info {
    display: flex;

}

.con-text {
    flex: 1;
    background-color: #8c8c8c;
    font-weight: bold;
}


.con-text-main {
    color: #fff;
    padding-top: 60px;
    padding-left: 90px;
}

.icon2 {
    position: absolute;
    left: -30px;
    top: 45%;
    transform: translateY(-50%);
    width: 30px;
    height: 30px;
}

.con-text-2 {
    padding-top: 2.5rem;
}

.con-text-2>h3{
    margin-bottom: 8px;
}

.relative {
    position: relative;
}

.relative a{
    color: rgb(255, 255, 255);
}
/*Bouquet-main*/

.bm-card {
    text-align: center;
    margin: 1rem;
    border: 1px solid rgb(217, 217, 217);
    padding-bottom: 20px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
}

.bm-card>img {
    width: 100%;
}

.bm-card-text>h2 {
    font-size: 2rem;
    font-weight: bold;
    margin-top: 2rem;
}

.bm-card-text>h4 {
    margin-top: 0.5rem;
    color: #7a7a7a;
}

.bm-button-contact {
    display: inline-block;
    font-size: 50 px;
    font-weight: bold;
    margin-top: 30px;
    border: 0,8px solid rgb(129, 129, 129);
    padding: 10px;
    width: 100px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
    background: linear-gradient(to right, #ff8fb1, #ff4e70);
    border-radius: 50px;
    color: white;
    transition: 0.3s; /* плавность */

}

.bm-button-contact:hover{
        background: linear-gradient(to right, #fb5889, #ff4e70);

}


/*About-us.html*/

.au-main-container{
    display: grid;
    grid-template-columns: repeat(24, 1fr);
}

.au-left-column{
    grid-column: 1/6;
}

.au-center-container{
    grid-column: 6/21;
}

.au-right-column{
    grid-column: 21/25;
}

.au-content{
    display: grid;
    grid-template-columns: repeat(10, 1fr);

}

.left-6{
    grid-column: 1/7;
    margin-bottom: 40px;
}

.right-10{
    grid-column: 7/11;
    margin-bottom: 40px;
    text-align: center;
}


 body {
            margin: 0;
            background: #fffdfe;
            color: #333;
        }

.team-section>img{
    width: 400px;
}

        .page-wrapper {
            min-height: 100vh;
            display: flex;
            flex-direction: column;
            justify-content: flex-start;
            align-items: stretch;
        }

        /* Шапка чисто для красоты */
        header {
            padding: 20px 40px;
            background: #ffffff;
            box-shadow: 0 2px 10px rgba(0,0,0,0.05);
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

        .logo {
            font-weight: 800;
            font-size: 22px;
            letter-spacing: 0.06em;
        }

        .logo span {
            color: #c76bcf;
        }

        .fake-menu {
            display: flex;
            gap: 24px;
            font-size: 14px;
            color: #777;
        }

        .fake-menu span {
            cursor: default;
        }

        .fake-menu span.active {
            color: #c76bcf;
            font-weight: 600;
        }

        /* Секция Наша команда */
        .team-section {
            padding: 60px 20px 80px;
            text-align: center;
        }

        .team-title {
            font-size: 36px;
            margin-bottom: 10px;
            font-weight: 700;
            color: #000000;
            text-transform: uppercase;
        }

        .team-subtitle {
            font-size: 18px;
            color: #777;
            margin-bottom: 40px;
        }

        .team-grid {
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
            gap: 30px;
            margin: 1 auto;
        }

        .team-card {
            background: #ffffff;
            padding: 20px;
            border-radius: 20px;
            box-shadow: 0 8px 20px rgba(0,0,0,0.06);
            transition: transform 0.3s ease, box-shadow 0.3s ease;
        }

        .team-card:hover {
            transform: translateY(-8px);
            box-shadow: 0 12px 28px rgba(0,0,0,0.14);
        }

        .team-photo-wrapper {
            width: 200px;
            border-radius: 50%;
            margin: 0 auto 18px;
            overflow: hidden;
            border: 4px solid #f4e0ff;
        }

        .team-photo {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
        }

        .team-name {
            font-size: 20px;
            font-weight: 600;
            margin-bottom: 4px;
        }

        .team-role {
            font-size: 14px;
            color: #9c6fb5;
            margin-bottom: 10px;
            text-transform: uppercase;
            letter-spacing: 0.08em;
        }

        .team-desc {
            font-size: 14px;
            color: #666;
            line-height: 1.5;
        }

        @media (max-width: 600px) {
            header {
                padding: 16px 20px;
            }
            .team-title {
                font-size: 28px;
            }
        }

.big-team-card {
    display: flex;
    align-items: center;
    gap: 40px;
    background: #ffffff;
    padding: 40px;
    border-radius: 28px;
    box-shadow: 0 8px 24px rgba(0,0,0,0.08);
    max-width: 950px;
    margin: 40px auto;
}

@media(max-width: 600px) {
   .big-team-card{
    display: block;
   } 
}

.big-photo-wrap {
    display: block;
    height: 300px;
    flex-shrink: 0;
    border: 6px solid #f4e0ff;
    border-radius: 8px;
}

.big-photo-wrap>img{
    width: 100%;
}

.big-photo {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 3px;

}

.big-info {
    max-width: 600px;
    display: block;
}

.big-name {
    font-size: 28px;
    font-weight: 700;
    margin: 0 0 5px;
}

.big-role {
    font-size: 16px;
    color: #9c6fb5;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    margin-bottom: 12px;
}

.big-desc {
    font-size: 17px;
    line-height: 1.55;
    color: #444;
}


.down-space{
    display: none;
}

@media(max-width: 940px){
    .down-space{
        display: block;
        height: 40px;
    }
}

/*wedding-decoration.html*/

/*
body {
    font-family: "Raleway", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    color: #333333;
    background-color: #f8f5f7;
    line-height: 1.6;
}

/* Минимальный ресет — влияет только на страницу, где подключен этот файл */


/* Локальный контейнер только для свадебной страницы */
.wedding-container {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

/* Кнопки (можешь убрать, если у тебя уже есть глобальные классы кнопок и хочешь их использовать) */
.btn-primary {
    display: inline-block;
    padding: 12px 26px;
    border-radius: 999px;
    border: none;
    cursor: pointer;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    font-weight: 600;
    background-color: #c77f98;
    color: #ffffff;
    text-decoration: none;
    transition: transform 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease;
}

.btn-primary:hover {
    background-color: #b36f87;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.14);
    transform: translateY(-1px);
}

.btn-full {
    width: 100%;
    text-align: center;
}

/* HERO блок */
.wedding-hero {
    position: relative;
    min-height: 60vh;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    text-align: center;
    padding: 60px 20px;
    overflow: hidden;

    /* задний фон — можно заменить на реальное фото */
    background-image: url("../images/wedding-hero-placeholder.jpg");
    background-size: cover;
    background-position: center;
}

.wedding-hero-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to bottom,
        rgba(0, 0, 0, 0.35),
        rgba(0, 0, 0, 0.45)
    );
}

.wedding-hero-content {
    position: relative;
    max-width: 700px;
    z-index: 1;
}

.wedding-hero h1 {
    font-size: 40px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    margin-bottom: 18px;
}

.wedding-hero p {
    font-size: 16px;
    margin-bottom: 26px;
}

/* Intro */
.wedding-intro {
    padding: 60px 0 40px;
}

.wedding-intro h2 {
    font-size: 28px;
    margin-bottom: 16px;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.wedding-intro p {
    max-width: 820px;
    margin: 0 auto;
    font-size: 16px;
    color: #555555;
}

/* What we offer */
.wedding-offers {
    padding: 40px 0 60px;
}

.wedding-offers h2 {
    font-size: 26px;
    margin-bottom: 26px;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.wedding-offers-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 20px;
}

.offer-card {
    background-color: #ffffff;
    border-radius: 20px;
    padding: 22px 20px 26px;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06);
}

.offer-card h3 {
    font-size: 18px;
    margin-bottom: 10px;
}

.offer-card p {
    font-size: 14px;
    color: #555555;
}

/* Why choose us */
.wedding-why {
    padding: 60px 0;
    background: radial-gradient(circle at top left, #f2dbe3 0, #f8f5f7 48%, #f8f5f7 100%);
}

.wedding-why h2 {
    font-size: 26px;
    margin-bottom: 26px;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.wedding-why-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
    gap: 20px;
}

.why-item {
    background-color: #ffffff;
    border-radius: 20px;
    padding: 20px 20px 24px;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.06);
}

.why-icon {
    width: 40px;
    height: 40px;
    border-radius: 999px;
    border: 1px solid #c77f98;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    font-weight: 600;
    margin-bottom: 10px;
    color: #c77f98;
}

.why-item h3 {
    font-size: 16px;
    margin-bottom: 8px;
}

.why-item p {
    font-size: 14px;
    color: #555555;
}

/* Process */
.wedding-process {
    padding: 60px 0;
}

.wedding-process h2 {
    font-size: 26px;
    margin-bottom: 22px;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.process-list {
    max-width: 620px;
    margin: 0 auto;
    list-style: none;
    counter-reset: process;
    
}

.process-list li {
    counter-increment: process;
    padding-left: 42px;
    margin-bottom: 16px;
    position: relative;
    font-size: 15px;
    color: #444444;
}

.process-list li::before {
    content: counter(process);
    position: absolute;
    left: 8px;
    top: -4px;
    width: 26px;
    height: 26px;
    border-radius: 999px;
    background-color: #c77f98;
    color: #ffffff;
    font-size: 13px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.process-list>li{
    display: block;
    margin-bottom: 15px; /* чуть-чуть отступа, чтобы красиво */
}

.process-list li strong {
    display: block;
    margin-bottom: 4px; /* чуть-чуть отступа, чтобы красиво */
}

/* Contact / форма */
.wedding-contact {
    padding: 60px 0 80px;
    background-color: #ffffff;
}

.wedding-contact-inner {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
    gap: 30px;
    align-items: flex-start;
}

.wedding-contact h2 {
    font-size: 26px;
    margin-bottom: 16px;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.wedding-contact p {
    font-size: 15px;
    color: #555555;
    margin-bottom: 16px;
}

.contact-list {
    list-style: none;
    font-size: 13.5px;
    color: #444444;
}

.contact-list li + li {
    margin-top: 6px;
}

/* ФОРМА */
.wedding-form {
    background-color: #f8f5f7;
    border-radius: 20px;
    padding: 22px 20px 24px;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.05);
}

.form-group {
    margin-bottom: 14px;
}

.form-group label {
    display: block;
    font-size: 13px;
    margin-bottom: 4px;
    color: #555555;
}

.form-group input,
.form-group textarea {
    width: 100%;
    padding: 10px 10px;
    border-radius: 10px;
    border: 1px solid #dddddd;
    font-size: 14px;
    font-family: inherit;
    outline: none;
    transition: border-color 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease;
    background-color: #ffffff;
}

.form-group input:focus,
.form-group textarea:focus {
    border-color: #c77f98;
    box-shadow: 0 0 0 1px rgba(199, 127, 152, 0.2);
    background-color: #ffffff;
}

.form-note {
    margin-top: 10px;
    font-size: 11px;
    color: #777777;
}

/* Адаптив */
@media (max-width: 900px) {
    .wedding-contact-inner {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .wedding-hero {
        min-height: 50vh;
        padding: 50px 20px;
    }

    .wedding-hero h1 {
        font-size: 30px;
    }

    .wedding-intro,
    .wedding-offers,
    .wedding-why,
    .wedding-process,
    .wedding-contact {
        padding-left: 0;
        padding-right: 0;
    }
}

@media (max-width: 480px) {
    .wedding-hero h1 {
        font-size: 24px;
        letter-spacing: 0.08em;
    }

    .wedding-hero p {
        font-size: 14px;
    }
}

.video-banner__video{
    width: 100%;
}











/*footer*/

.fm-footer {
    background: #f6f2f4;
    padding: 60px 0 30px;
    color: #555;
    font-family: 'Raleway', sans-serif;
}

.fm-footer-container {
    max-width: 1200px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 40px;
    padding: 0 20px;
}

.fm-footer-col h4 {
    font-size: 18px;
    font-weight: 700;
    color: #c77f98;
    margin-bottom: 16px;
}

.fm-footer-col p,
.fm-footer-col a,
.fm-footer-col li {
    font-size: 14px;
    line-height: 1.6;
    color: #444;
    text-decoration: none;
}

.fm-footer-col ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.fm-footer-col ul li {
    margin-bottom: 8px;
}

.fm-footer-col>ul>li{
    display: block;
}

.fm-footer-col a:hover {
    color: #c77f98;
}

.fm-footer-socials {
    display: flex;
    gap: 12px;
    margin-top: 10px;
}

.fm-footer-socials img {
    width: 50px;
    height: 50px;
    filter: brightness(0) saturate(100%) invert(35%) sepia(80%) saturate(500%) hue-rotate(300deg);
    transition: 0.2s;
}


.fm-footer-bottom {
    border-top: 1px solid #ddd;
    margin-top: 40px;
    padding-top: 20px;
    text-align: center;
}

.fm-footer-bottom p {
    font-size: 13px;
    color: #777;
}


.fm-footer-col>img{
    width: 170px;
}

/*baskets.html*/

/* Сетка карточек – чуть больше воздуха между ними */

/* Карточка товара */
.product-container {
    background: #ffffff;
    border-radius: 5px;
    overflow: hidden; /* скругление углов для картинки и низа */
    box-shadow: 0 10px 26px rgba(0, 0, 0, 0.08);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
    text-align: left;
    display: flex;
    flex-direction: column;
}

/* Ховер эффект карточки */
.product-container:hover {
    transform: translateY(-6px);
    box-shadow: 0 16px 36px rgba(0, 0, 0, 0.12);
}

/* Фото – размер не меняем, только делаем красиво по краям */
.product-container > img {
    width: 100%;
    display: block;
}

/* Блок с текстом */
.card-info {
    padding: 14x 18px 18px;
    text-align: center;
}

/* Название букета */
.bouquet-name {
    font-weight: 700;
    font-size: 18px;
    margin-bottom: 6px;
    font-family: "Raleway", sans-serif;
}

.price{
    color: #000000;
}


/* Цена (второй <p> внутри .card-info) */
.card-info p:not(.bouquet-name) {
    font-size: 12px;
    font-weight: 600;
    color: #eaeaea;
    margin-bottom: 10px;
}

.price{
    color: #c77f98;
}

/* Обёртка кнопки */
.border {
    margin-top: 10px;
    display: flex;
    justify-content: center;
}

/* Ссылка-кнопка: убираем подчёркивания и делаем кликабельный блок */
.border a {
    text-decoration: none;
}

/* Кнопка "Order" */
.button-contact {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 22px;
    border-radius: 999px;
    background: linear-gradient(135deg, #ff8fb1 0%, #ff4e70 100%);
    color: #ffffff;
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    border: none;
    box-shadow: 0 6px 14px rgba(255, 79, 112, 0.4);
    cursor: pointer;
    transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
    margin: 0; /* чтобы не было лишних отступов от p */
}

/* Ховер кнопки */
.product-container:hover .button-contact {
    transform: translateY(-1px);
    box-shadow: 0 10px 20px rgba(236, 225, 225, 0.925);
    background: linear-gradient(135deg, #ff6e90 0%, #ff2e50 100%);
}

/* Активное нажатие */
.button-contact:active {
    transform: translateY(1px);
    box-shadow: 0 4px 10px rgba(255, 79, 112, 0.35);
}


/*ny-collection.html*/

.ny-body {
    background-color: #faf6f7;
    font-family: "Raleway", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

/* страница */
.ny-page {
    max-width: 1180px;
    margin: 0 auto;
    padding: 40px 16px 60px;
}

/* HERO */
.ny-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
    gap: 40px;
    margin-bottom: 56px;
}

.ny-hero-text h1 {
    font-size: 34px;
    line-height: 1.15;
    margin-bottom: 12px;
}

.ny-eyebrow {
    text-transform: uppercase;
    letter-spacing: 0.16em;
    font-size: 11px;
    color: #b57d8a;
    margin-bottom: 6px;
}

.ny-hero-subtitle {
    font-size: 15px;
    line-height: 1.6;
    color: #555;
    max-width: 480px;
    margin-bottom: 20px;
}

.ny-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 18px;
}

.ny-main-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 11px 26px;
    border-radius: 999px;
    background: linear-gradient(135deg, #ff8fb1 0%, #ff4e70 100%);
    color: #fff;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-decoration: none;
    box-shadow: 0 8px 20px rgba(255, 79, 112, 0.4);
    transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.ny-main-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 12px 24px rgba(255, 79, 112, 0.55);
    background: linear-gradient(135deg, #ff6e90 0%, #ff2e50 100%);
}

.ny-secondary-link {
    font-size: 13px;
    color: #b0627d;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.ny-hero-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    gap: 4px;
    font-size: 13px;
    color: #666;
}

.ny-hero-image img {
    width: 100%;
    border-radius: 24px;
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.16);
    object-fit: cover;
}

.ny-item-image1 img{
    width: 100%;
    border-radius: 24px;
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.16);
    object-fit: cover;
}


/* КОЛЛЕКЦИЯ */
.ny-collection h2 {
    font-size: 26px;
    margin-bottom: 8px;
}

.ny-collection-intro {
    font-size: 14px;
    color: #666;
    max-width: 640px;
    margin-bottom: 24px;
}

.ny-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 26px;
}

/* карточки */
.ny-card {
    background: #ffffff;
    border-radius: 20px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    box-shadow: 0 10px 26px rgba(0, 0, 0, 0.06);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.ny-card-image img {
    width: 100%;
    height: 260px;
    object-fit: cover;
    display: block;
}

.ny-card-body {
    padding: 14px 16px 18px;
}

.ny-card h3 {
    font-size: 17px;
    margin-bottom: 6px;
}

.ny-card-text {
    font-size: 13px;
    line-height: 1.5;
    color: #555;
    margin-bottom: 10px;
}

.ny-card-price {
    font-size: 14px;
    font-weight: 600;
    color: #c36a87;
    margin-bottom: 10px;
}

.ny-card-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 9px 18px;
    border-radius: 999px;
    background: #d86a8a;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    text-decoration: none;
    box-shadow: 0 6px 16px rgba(216, 106, 138, 0.45);
    transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.ny-card-btn:hover {
    background: #c55878;
    transform: translateY(-1px);
    box-shadow: 0 10px 22px rgba(216, 106, 138, 0.6);
}

.ny-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 16px 34px rgba(0, 0, 0, 0.12);
}

/* Блок про доставку */
.ny-delivery {
    margin-top: 54px;
    background: #fff;
    border-radius: 18px;
    padding: 18px 22px;
    box-shadow: 0 10px 26px rgba(0, 0, 0, 0.06);
}

.ny-delivery h2 {
    font-size: 20px;
    margin-bottom: 6px;
}

.ny-delivery p {
    font-size: 13px;
    color: #555;
    margin-bottom: 8px;
}

.ny-delivery ul {
    list-style: disc;
    padding-left: 18px;
    margin: 0;
    font-size: 13px;
    color: #555;
}

/* футер только на этой странице */
.ny-footer-inner {
    max-width: 1180px;
    margin: 0 auto;
    padding: 18px 16px 26px;
    font-size: 12px;
    color: #777;
    display: flex;
    justify-content: space-between;
    gap: 10px;
}

/* адаптив */
@media (max-width: 900px) {
    .ny-hero {
        grid-template-columns: 1fr;
    }

    .ny-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .ny-page {
        padding-top: 26px;
    }

    .ny-grid {
        grid-template-columns: 1fr;
    }

    .ny-card-image img {
        height: 260px;
    }

    .ny-footer-inner {
        flex-direction: column;
        align-items: flex-start;
    }
}

/* длинные блоки-истории вместо карточек */
.ny-collection {
    margin-top: 10px;
}

.ny-collection-intro {
    font-size: 14px;
    color: #666;
    max-width: 720px;
    margin-bottom: 10px;
}

.ny-collection-intro-secondary {
    margin-bottom: 30px;
}

.ny-item {
    display: flex;
    gap: 26px;
    align-items: stretch;
    margin-bottom: 0px;
}

.ny-item--reverse {
    flex-direction: row-reverse;
}

/* одна или две фотки в блоке */
.ny-item-image {
    flex: 1.1;
    display: block;
    flex-direction: column;
    gap: 10px;
    padding-top: 65px;
}

.ny-item-image1 {
    flex: 1.1;
    display: block;
    flex-direction: column;
    gap: 10px;
    padding-top: 0px;

}

.ny-item-image1 img {
    flex: 1.1;
    display: block;
    flex-direction: column;
    gap: 10px;

}


.ny-item-image img {
    width: 100%;
    height: 500px;
    object-fit: cover;
    border-radius: 22px;
    box-shadow: 0 16px 34px rgba(0, 0, 0, 0.14);
}

.oleg-zhanna{
  display: block;
}

.ny-1{
    width: 550px;
}

.ny-1>img{
   width: 100%;
}

.ny-item-image-double img {
    height: 380px;
}


/* текстовая часть */
.ny-item-text {
    flex: 1;
    border-radius: 20px;
    padding: 18px 20px 20px;
    box-shadow: 0 10px 26px rgba(0, 0, 0, 0.06);
    display: flex;
    flex-direction: column;
}

.ny-item-text h3 {
    font-size: 20px;
    margin-bottom: 19px;
}

.ny-item-text p {
    font-size: 14px;
    line-height: 1.6;
    color: #e4e4e4;
    margin-bottom: 8px;
}

.ny-item-text1 {
    flex: 1;
    border-radius: 20px;
    padding: 18px 20px 20px;
    box-shadow: 0 10px 26px rgba(0, 0, 0, 0.06);
    display: flex;
    flex-direction: column;
}

.ny-item-text1 h3 {
    font-size: 20px;
    margin-bottom: 5px;
    margin-top: 10px;
}

.ny-item-text1 a{
    margin-bottom: 25px;
}

.ny-item-text1 p {
    font-size: 14px;
    line-height: 1.6;
    color: #0a0a0a;
    margin-bottom: 8px;
}


.ny-item-price {
    font-weight: 600;
    color: #c36a87;
    margin-top: 4px;
    margin-bottom: 12px;
}

/* кнопка */
.ny-item-btn {
    align-self: flex-start;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 22px;
    margin-top: 25px;
    border-radius: 999px;
    background: linear-gradient(135deg, #ff8fb1 0%, #ff4e70 100%);
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-decoration: none;
    box-shadow: 0 8px 20px rgba(255, 79, 112, 0.4);
    transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.ny-item-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 12px 24px rgba(255, 79, 112, 0.55);
    background: linear-gradient(135deg, #ff6e90 0%, #ff2e50 100%);
}


/* адаптив: на телефоне всё в колонку */
@media (max-width: 900px) {
    .ny-item,
    .ny-item--reverse {
        flex-direction: column;
    }

    .ny-item-image img,
    .ny-item-image-double img {
        height: 260px;
    }

    .ny-item-text {
        padding: 16px 16px 18px;
    }
}

#amarilys{
    padding-top: 1px;
}

#amarilys-text{
    color: #000000;
}

.ny-collection .ny-item-image {
    position: relative;
    overflow: hidden;
}

.ny-collection .ny-item-image1 {
    position: relative;
    overflow: hidden;
}
/* Оверлей для всех .ny-item-image только на новогодней странице */

.ny-page .ny-item-image {
    position: relative;
    overflow: hidden;
}

.ny-page .ny-item-image1 {
    position: relative;
    overflow: hidden;
}

/* полупрозрачное окно */
.ny-page .ny-img-overlay {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;

    background: rgba(0, 0, 0, 0.55);  /* серый полупрозрачный */
    color: #fff;
    padding: 10px 18px;
    border-bottom-right-radius: 25px;
    border-bottom-left-radius: 25px;

    transform: translateY(70%);       /* спрятано внизу */
    transition: transform 0.35s ease;

    display: flex;
    flex-direction: column;
    gap: 4px;           
}

.ny-page .ny-img-overlay h4 {
    margin: 0;
    font-size: 15px;
    font-weight: 600;
}

.ny-page .ny-img-overlay p {
    margin: 0;
    font-size: 12px;
    line-height: 1.4;
}

/* при наведении поднимаем плашку */
.ny-page .ny-item-image:hover .ny-img-overlay {
    transform: translateY(0);
}

.ny-page .ny-item-image1:hover .ny-img-overlay {
    transform: translateY(0);
}

/* чтобы padding не раздувал ширину элементов */
*, *::before, *::after {
  box-sizing: border-box;
}

@media (max-width: 600px) {
  .big-team-card{
    padding: 16px;       /* вместо 40px */
    margin: 16px 12px;   /* чтобы не упираться в края */
    width: auto;
  }

  .big-photo-wrap{
    width: 100%;
  }

  .big-photo{
    display: block;
    width: 100%;
    max-width: 100%;
  }
}

/* страховка от горизонтального скролла */
html, body { overflow-x: hidden; }

@media(max-width: 750px){
    .text-main-photo{
        width: 80%;          
        max-width: 1200px;   /* ← чтобы не был слишком огромным */
        font-size: 55px;
        top: 30%;
    }
    .line{
        display: none;
    }
}

@media(max-width: 400px){
    .text-main-photo{
        font-size: 30px;
        text-align: center;
        top: 30%;

    }
}

@media(max-width:400px){
    .bm-card{
        margin-left: 0;
        margin-right: 0;
    }
}

@media(max-width: 800px){
    .fs-all{
        grid-column: 2/12;
    }
}


/*СЛАЙДЕР*/
.slider-heading {
  text-align: center;
  margin-bottom: 40px;
}

.slider-heading h2 {
  font-family: 'Playfair Display', serif;
  font-size: clamp(28px, 4vw, 48px);
  font-weight: 500;
  letter-spacing: 0.04em;
  color: #1a1a1a;
  margin-bottom: 12px;
}

.slider-heading p {
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(14px, 2vw, 20px);
  font-weight: 400;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: #b90000;
}

.bouquet-carousel4{
  max-width: 1400px;
  margin: 70px auto;
  position: relative;
  display: grid;
  grid-template-columns: 52px 1fr 52px;
  align-items: center;
  gap: 10px;
}

.bc-window{
  overflow: hidden;
  width: 100%;
}

.bc-track{
  display: flex;
  gap: 14px;
  will-change: transform;
  transition: transform 0.55s ease;
}

.bc-card{
  flex: 0 0 calc((100% - 14px * 3) / 4); /* всегда 4 в кадре */
}

.bc-media{
  position: relative;
  width: 100%;
  aspect-ratio: 3 / 4;   /* сохраняем пропорции при сужении */
  border-radius: 18px;
  overflow: hidden;
}

.bc-media img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.bc-order{
  position: absolute;
  left: 50%;
  bottom: 14px;
  transform: translateX(-50%);
  padding: 8px 18px;
  border-radius: 999px;
  background: rgba(255,255,255,0.72);
  color: #000;
  text-decoration: none;
  font-size: 13px;
  letter-spacing: 0.5px;
  backdrop-filter: blur(7px);
}

.bc-order:hover{
  background: rgba(255,255,255,0.92);
}

.bc-btn{
  width: 52px;
  height: 52px;
  border-radius: 50%;
  border: none;
  cursor: pointer;
  font-size: 36px;
  line-height: 1;
  background: rgba(255,255,255,0.75);
}

.bc-btn:hover{
  background: rgba(255,255,255,0.95);
}

@media (max-width: 940px){
  .bc-card{
  flex: 0 0 calc((100% - 13px * 3) / 3);
}
}

@media (max-width: 700px){
  .bc-card{
  flex: 0 0 calc((100% - 9px * 3) / 2);
}

}

@media (max-width: 400px){
  .bc-card{
  flex: 0 0 calc((100% - 4px * 3) / 1);
}
}



.hero-intro {
  position: relative;
  height: 100dvh;
  width: 100%;
  overflow: hidden;
}

.hero-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 35%;
}

.hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to bottom,
    rgba(0,0,0,0.35),
    rgba(0,0,0,0.55)
  );
}

.hero-content {
  position: relative;
  z-index: 2;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  color: #fff;
  padding: 0 20px;
}

.hero-content h1 {
  font-size: clamp(36px, 10vw, 72px);
  letter-spacing: 0.2em;
}

.hero-content p {
  margin-top: 12px;
  font-size: 16px;
  letter-spacing: 0.15em;
  opacity: 0.9;
}

/* SCROLL BUTTON */
.hero-scroll {
  position: absolute;
  bottom: 28px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 3;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,0.6);
  background: rgba(0,0,0,0.35);
  color: #fff;
  font-size: 24px;
  cursor: pointer;
  animation: bounce 2s infinite;
}

@keyframes bounce {
  0%, 100% { transform: translate(-50%, 0); }
  50% { transform: translate(-50%, 8px); }
}

/* DESKTOP — отключаем интро */
@media (min-width: 900px) {
  .hero-intro {
    display: none;
  }
}

@media (max-width: 900px){
    .main-photo-container{
        display: none;
    }
    }


    /* GLASS HEADER on HERO */
.glass-header{
  position: absolute;
  top: 12px;
  left: 12px;
  right: 12px;
  z-index: 10;

  display: flex;
  align-items: center;
  justify-content: space-between;

  padding: 10px 12px;
  border-radius: 16px;

  background: rgb(209 209 209 / 82%);
  border: 1px solid rgba(255,255,255,0.35);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  box-shadow: 0 10px 26px rgba(0,0,0,0.18);
}

.glass-logo img{
  height: 34px;
  width: auto;
  display: block;
  filter: drop-shadow(0 2px 10px rgba(0,0,0,0.25));
}

.glass-logo{
  font-size: 16px;              /* было меньше */
  padding: 10px 6px;            /* зона тапа */
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;

  color: #fff;
  text-shadow: 0 2px 10px rgba(0,0,0,0.35);
}

.glass-burger{
  width: 44px;
  height: 40px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,0.35);
  background: rgba(0,0,0,0.18);
  color: #fff;
  font-size: 20px;
  cursor: pointer;
}

.glass-menu{
  position: absolute;
  top: calc(100% + 10px);
  left: 0;
  right: 0;

  display: none;
  flex-direction: column;
  gap: 2px;

  padding: 14px 14px;
  border-radius: 16px;

  background: rgba(255,255,255,0.22);
  border: 1px solid rgba(255,255,255,0.35);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.glass-menu a{
 font-size: 12px;              /* было меньше */
  padding: 9px 6px;            /* зона тапа */
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;

  color: #fff;
  text-shadow: 0 2px 5px rgba(0, 0, 0, 70%);
}

/* open state */
.glass-header.is-open .glass-menu{
  display: flex;
}

@media (max-width: 900px){
  .logo-container, .nav-panel, .dropdown-menu { display: none; }
}

@media (min-width: 901px){
  .glass-header { display: none; 
}

  
}

/* ===== NO HERO PAGE (bouquet-main.html) ===== */

/* НЕ прячем секцию целиком, чтобы glass-header остался */
.no-hero .hero-intro{
  height: auto;
  min-height: 0;
  overflow: visible;
}

/* прячем только визуал hero */
.no-hero .hero-bg,
.no-hero .hero-overlay,
.no-hero .hero-content,
.no-hero .hero-scroll{
  display: none !important;
}

/* glass-header становится обычной шапкой */
.no-hero .glass-header{
  position: sticky;
  top: 12px;
  margin: 12px;
  background: rgba(191, 191, 191, 0.75);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

/* меню тёмное, т.к. фон светлый */
.no-hero .glass-menu a{
  color: hsl(0, 0%, 100%);
}

.no-hero .glass-burger{
  color: #ebebeb;
}

.no-hero .glass-header{
  position: sticky;     /* или relative */
  top: 12px;
}

/* ===== Glass header PUSH mode (same style, but pushes content down) ===== */

.glass-header--push{
  /* чтобы шапка была в потоке и могла увеличивать высоту */
  position: sticky;     /* можно relative, но sticky красивее */
  top: 12px;
  margin: 12px;

  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 10px;
}

/* верхняя строка: ссылка + бургер */
.glass-header--push .glass-header-top{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

/* ВАЖНО: меню НЕ absolute -> теперь оно толкает контент */
.glass-header--push .glass-menu{
  position: static;
  display: none;              /* закрыто */
  flex-direction: column;
  gap: 10px;

  margin-top: 6px;
  padding: 14px 14px;

  border-radius: 16px;

  /* визуально — как на index (не меняем стиль) */
  background: rgba(255,255,255,0.22);
  border: 1px solid rgba(255,255,255,0.35);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

/* открытие */
.glass-header--push.is-open .glass-menu{
  display: flex;
}


/* video as full-cover background */
.wedding-hero{
  position: relative;
  overflow: hidden;
}

.wedding-hero-overlay{
  position: absolute;
  inset: 0;
}

.wedding-hero-overlay .video-banner__video{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;      /* ключ */
  object-position: center;
  display: block;
}