

/* Start:/local/templates/fresco/css/slick/slick.css?16826553641776*/
/* Slider */
.slick-slider
{
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
    margin-left: auto;
    margin-right: auto;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}

/* End */


/* Start:/local/templates/fresco/css/contacts-modern.css?17822745649167*/
.contacts-modern-page a {
    text-decoration: none;
}

.contacts-hero {
    margin-top: 22px;
}

.contacts-hero__content {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 28px;
    align-items: stretch;
    padding: 34px;
    border-radius: 26px;
    background: linear-gradient(135deg, #f8faf4 0%, #ffffff 48%, #f0f7eb 100%);
    box-shadow: 0 18px 50px rgba(40, 65, 38, 0.08);
}

.contacts-hero__title {
    margin-bottom: 18px;
}

.contacts-hero__lead {
    max-width: 780px;
    margin: 0 0 24px;
    color: #4b4b4b;
    font-size: 18px;
    line-height: 1.55;
}

.contacts-hero__actions,
.contacts-modal__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
}

.contacts-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 13px 22px;
    border-radius: 999px;
    font-size: 16px;
    font-weight: 600;
    transition: 0.2s ease;
}

.contacts-btn--primary {
    color: #ffffff !important;
}

.contacts-btn--outline {
    color: #2f6d2d;
    border: 1px solid rgba(47, 109, 45, 0.35);
    background: #ffffff;
}

.contacts-btn--outline:hover {
    color: #ffffff;
    background: #2f6d2d;
}

.contacts-hero__card,
.contacts-info-card,
.contacts-audience-card,
.contacts-step {
    border: 1px solid rgba(47, 109, 45, 0.12);
    background: #ffffff;
    box-shadow: 0 12px 32px rgba(32, 55, 30, 0.07);
}

.contacts-hero__card {
    padding: 26px;
    border-radius: 22px;
}

.contacts-hero__card-title {
    margin-bottom: 18px;
    color: #222222;
    font-size: 20px;
    font-weight: 700;
}

.contacts-hero__line {
    display: block;
    margin-bottom: 10px;
    color: #222222;
    font-size: 18px;
    font-weight: 600;
}

.contacts-hero__line:hover {
    color: #2f6d2d;
}

.contacts-hero__time {
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid #e9efe4;
    color: #666666;
    font-size: 14px;
}

.contacts-info-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.contacts-info-card {
    padding: 22px;
    border-radius: 20px;
}

.contacts-info-card--accent {
    background: #f8faf4;
}

.contacts-info-card__label {
    margin-bottom: 14px;
    color: #2f6d2d;
    font-size: 18px;
    font-weight: 700;
}

.contacts-info-card p {
    margin-bottom: 9px;
    font-size: 16px;
    line-height: 1.45;
}

.contacts-info-card a {
    color: #222222;
    font-weight: 600;
}

.contacts-info-card a:hover {
    color: #2f6d2d;
}

.contacts-section-head {
    margin-bottom: 22px;
}

.contacts-section-head h2 {
    margin-bottom: 10px;
    color: #222222;
    font-size: 30px;
    font-weight: 700;
}

.contacts-section-head p {
    max-width: 760px;
    margin: 0;
    color: #666666;
    font-size: 17px;
    line-height: 1.55;
}

.contacts-audience__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.contacts-audience-card {
    display: flex;
    flex-direction: column;
    min-height: 178px;
    padding: 22px;
    border-radius: 22px;
    color: #222222;
    transition: 0.2s ease;
}

.contacts-audience-card:hover {
    transform: translateY(-3px);
    border-color: rgba(47, 109, 45, 0.35);
    color: #222222;
}

.contacts-audience-card__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    margin-bottom: 16px;
    border-radius: 50%;
    background: #edf6e7;
    color: #2f6d2d;
    font-weight: 700;
}

.contacts-audience-card b {
    margin-bottom: 8px;
    font-size: 18px;
}

.contacts-audience-card span:last-child {
    color: #666666;
    font-size: 15px;
    line-height: 1.45;
}

.contacts-steps__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.contacts-step {
    padding: 20px;
    border-radius: 20px;
}

.contacts-step b {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    margin-bottom: 14px;
    border-radius: 50%;
    background: #2f6d2d;
    color: #ffffff;
}

.contacts-step span {
    display: block;
    color: #555555;
    font-size: 15px;
    line-height: 1.45;
}

.contacts-faq__accordion {
    border-radius: 22px;
    overflow: hidden;
    border: 1px solid #e9efe4;
}

.contacts-faq__item {
    border: 0;
    border-bottom: 1px solid #e9efe4;
}

.contacts-faq__item:last-child {
    border-bottom: 0;
}

.contacts-faq__button {
    padding: 20px 22px;
    color: #222222;
    font-size: 17px;
    font-weight: 700;
    background: #ffffff;
    box-shadow: none !important;
}

.contacts-faq__button:not(.collapsed) {
    color: #2f6d2d;
    background: #f8faf4;
}

.contacts-faq__body {
    color: #555555;
    font-size: 16px;
    line-height: 1.6;
}

.contacts-seo-container .contacts-seo-text {
    margin-top: 0;
}

.contacts-modal__content {
    position: relative;
    padding: 34px;
    border: 0;
    border-radius: 26px;
    box-shadow: 0 28px 80px rgba(0, 0, 0, 0.2);
}

.contacts-modal__close {
    position: absolute;
    top: 18px;
    right: 20px;
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 50%;
    background: #f1f1f1;
    color: #333333;
    font-size: 24px;
    line-height: 1;
}

.contacts-modal__head {
    margin-bottom: 24px;
    padding-right: 40px;
}

.contacts-modal__mark {
    display: inline-block;
    margin-bottom: 10px;
    padding: 6px 12px;
    border-radius: 999px;
    background: #edf6e7;
    color: #2f6d2d;
    font-size: 13px;
    font-weight: 700;
}

.contacts-modal__head h3 {
    margin: 0 0 10px;
    color: #222222;
    font-size: 28px;
    font-weight: 700;
}

.contacts-modal__head p {
    max-width: 680px;
    margin: 0;
    color: #666666;
    font-size: 16px;
    line-height: 1.5;
}

.contacts-modal__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.contacts-modal__field {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin: 0;
}

.contacts-modal__field--wide {
    grid-column: 1 / -1;
}

.contacts-modal__field span {
    color: #444444;
    font-size: 14px;
    font-weight: 600;
}

.contacts-modal__field input,
.contacts-modal__field select,
.contacts-modal__field textarea {
    width: 100%;
    min-height: 46px;
    padding: 11px 14px;
    border: 1px solid #dfe8d8;
    border-radius: 14px;
    outline: none;
    background: #ffffff;
    color: #222222;
    font-size: 15px;
}

.contacts-modal__field textarea {
    resize: vertical;
}

.contacts-modal__field input:focus,
.contacts-modal__field select:focus,
.contacts-modal__field textarea:focus {
    border-color: #2f6d2d;
    box-shadow: 0 0 0 3px rgba(47, 109, 45, 0.1);
}



.contacts-modal__hint {
    display: block;
    margin-top: -2px;
    color: #777777;
    font-size: 13px;
    line-height: 1.35;
}

.contacts-modal__field input:invalid,
.contacts-modal__field select:invalid,
.contacts-modal__field textarea:invalid {
    box-shadow: none;
}

.contacts-modal__form.was-validated .contacts-modal__field input:invalid,
.contacts-modal__form.was-validated .contacts-modal__field select:invalid,
.contacts-modal__form.was-validated .contacts-modal__field textarea:invalid {
    border-color: #b42318;
}

.contacts-modal__field--file input[type="file"] {
    padding: 10px 14px;
    cursor: pointer;
}

.contacts-modal__agree {
    display: flex;
    gap: 10px;
    margin: 18px 0;
    color: #666666;
    font-size: 13px;
    line-height: 1.35;
}

.contacts-modal__agree input {
    margin-top: 2px;
}

.contacts-modal__submit {
    min-height: 48px;
    padding: 13px 24px;
    border: 0;
    border-radius: 999px;
    background: #dfe8d8 !important;
    color: #ffffff !important;
    font-weight: 700;
    box-shadow: none;
    cursor: pointer;
    transition: background 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.contacts-modal__form.is-ready .contacts-modal__submit {
    background: #2f6d2d !important;
    color: #ffffff !important;
    box-shadow: 0 10px 24px rgba(47, 109, 45, 0.22);
}

.contacts-modal__form.is-ready .contacts-modal__submit:hover {
    background: #245823 !important;
    transform: translateY(-1px);
}

.contacts-modal__submit[disabled] {
    background: #9db793 !important;
    opacity: 1;
    cursor: wait;
    transform: none;
}

.contacts-modal__result {
    margin-top: 14px;
    font-size: 15px;
    line-height: 1.4;
}

.contacts-modal__result--success {
    color: #2f6d2d;
}

.contacts-modal__result--error {
    color: #b42318;
}

@media (max-width: 991px) {
    .contacts-hero__content,
    .contacts-info-grid,
    .contacts-audience__grid,
    .contacts-steps__grid {
        grid-template-columns: 1fr;
    }

    .contacts-hero__content {
        padding: 24px;
    }
}

@media (max-width: 575px) {
    .contacts-hero__lead,
    .contacts-info-card p {
        font-size: 15px;
    }

    .contacts-section-head h2 {
        font-size: 24px;
    }

    .contacts-modal__content {
        padding: 26px 18px;
        border-radius: 20px;
    }

    .contacts-modal__grid {
        grid-template-columns: 1fr;
    }
}

/* End */


/* Start:/freski/css/index-v2.css?178722899943508*/
.fresco-v2 {
    --fresco-red: #7d0808;
    --fresco-red-dark: #620505;
    --fresco-text: #2d2d2d;
    --fresco-muted: #717171;
    --fresco-line: #e5e1de;
    --fresco-soft: #f7f6f5;
    --fresco-soft-red: #faf5f4;
    --fresco-white: #fff;
    --fresco-header-offset: 0px;
    --fresco-nav-height: 56px;
    --fresco-sticky-gap: 0px;
    color: var(--fresco-text);
    overflow: visible;
}

.fresco-v2 *, .fresco-v2 *::before, .fresco-v2 *::after { box-sizing: border-box; }
.fresco-v2 img { max-width: 100%; display: block; }
.fresco-v2 section[id] {
    scroll-margin-top: calc(
        var(--fresco-header-offset, 0px) +
        var(--fresco-nav-height, 56px) +
        var(--fresco-sticky-gap, 0px) +
        20px
    );
}
.fresco-v2 h1, .fresco-v2 h2, .fresco-v2 h3, .fresco-v2 p { margin-top: 0; }

.fresco-v2__hero {
    overflow: clip;
    padding: 56px 0 48px;
    background:
        radial-gradient(circle at 88% 12%, rgba(125, 8, 8, .07), transparent 28%),
        linear-gradient(180deg, #fff 0%, #fbfaf9 100%);
}

.fresco-v2__hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(420px, .9fr);
    align-items: center;
    gap: clamp(38px, 5vw, 82px);
}

.fresco-v2__eyebrow {
    margin-bottom: 14px;
    color: var(--fresco-red);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.fresco-v2 h1 {
    max-width: 750px;
    margin-bottom: 22px;
    font-size: clamp(42px, 4.6vw, 68px);
    line-height: .98;
    letter-spacing: -.04em;
    font-weight: 600;
}

.fresco-v2 h2 {
    margin-bottom: 18px;
    font-size: clamp(32px, 3.2vw, 48px);
    line-height: 1.05;
    letter-spacing: -.03em;
    font-weight: 600;
}

.fresco-v2 h3 { font-size: 20px; line-height: 1.2; font-weight: 600; }

.fresco-v2__hero-lead, .fresco-v2__lead {
    max-width: 720px;
    margin-bottom: 24px;
    font-size: 19px;
    line-height: 1.58;
}

.fresco-v2__hero-lead strong { font-weight: 600; }

.fresco-v2__hero-price {
    display: flex;
    align-items: baseline;
    gap: 16px;
    margin: 28px 0;
}
.fresco-v2__hero-price span { color: var(--fresco-muted); font-size: 14px; }
.fresco-v2__hero-price strong { color: var(--fresco-red); font-size: 28px; font-weight: 650; }

.fresco-v2__hero-actions, .fresco-v2__center-action { display: flex; gap: 12px; flex-wrap: wrap; }
.fresco-v2__center-action { justify-content: center; margin-top: 34px; }

.fresco-v2__button {
    min-height: 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 24px;
    border: 1px solid transparent;
    border-radius: 6px;
    text-decoration: none !important;
    font-size: 15px;
    font-weight: 600;
    transition: transform .2s ease, background-color .2s ease, border-color .2s ease, color .2s ease, box-shadow .2s ease;
}
.fresco-v2__button:hover { transform: translateY(-1px); }
.fresco-v2__button--primary { background: var(--fresco-red); color: #fff !important; box-shadow: 0 10px 28px rgba(125,8,8,.14); }
/* Keep CTA text readable even if the global site link hover styles override anchors. */
.fresco-v2 a.fresco-v2__button--primary:hover,
.fresco-v2 a.fresco-v2__button--primary:focus,
.fresco-v2 a.fresco-v2__button--primary:active,
.fresco-v2 button.fresco-v2__button--primary:hover,
.fresco-v2 button.fresco-v2__button--primary:focus,
.fresco-v2 button.fresco-v2__button--primary:active {
    background: var(--fresco-red-dark);
    color: #fff !important;
}

.fresco-v2__button--secondary { border-color: #cfc9c5; color: var(--fresco-text) !important; background: #fff; }
.fresco-v2__button--secondary:hover { border-color: var(--fresco-red); color: var(--fresco-red) !important; }

.fresco-v2__hero-facts {
    counter-reset: fresco-hero-fact;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;
    list-style: none;
    padding: 0;
    margin: 38px 0 0;
    overflow: hidden;
    border: 1px solid #e7e1dd;
    border-radius: 10px;
    background: rgba(255,255,255,.88);
    box-shadow: 0 14px 34px rgba(45,45,45,.055);
}
.fresco-v2__hero-facts li {
    counter-increment: fresco-hero-fact;
    position: relative;
    min-width: 0;
    min-height: 122px;
    padding: 20px 18px 18px;
    background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(250,248,247,.96));
    transition: background-color .2s ease, transform .2s ease, box-shadow .2s ease;
}
.fresco-v2__hero-facts li + li { border-left: 1px solid #ebe6e3; }
.fresco-v2__hero-facts li::before {
    content: counter(fresco-hero-fact, decimal-leading-zero);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 28px;
    height: 22px;
    margin-bottom: 15px;
    padding: 0 7px;
    border: 1px solid rgba(125,8,8,.16);
    border-radius: 999px;
    background: rgba(125,8,8,.045);
    color: var(--fresco-red);
    font-size: 10px;
    font-weight: 750;
    line-height: 1;
    letter-spacing: .08em;
}
.fresco-v2__hero-facts li::after {
    content: '';
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 0;
    height: 2px;
    background: var(--fresco-red);
    opacity: 0;
    transform: scaleX(.45);
    transform-origin: left center;
    transition: opacity .2s ease, transform .2s ease;
}
.fresco-v2__hero-facts strong,
.fresco-v2__hero-facts span { display: block; }
.fresco-v2__hero-facts strong {
    color: var(--fresco-text);
    font-size: clamp(16px, 1.25vw, 19px);
    font-weight: 680;
    line-height: 1.12;
    letter-spacing: -.01em;
}
.fresco-v2__hero-facts span {
    margin-top: 7px;
    color: #77716e;
    font-size: 12px;
    line-height: 1.38;
}
@media (hover:hover) and (pointer:fine) {
    .fresco-v2__hero-facts li:hover {
        z-index: 1;
        background: #fff;
        transform: translateY(-2px);
        box-shadow: 0 12px 26px rgba(45,45,45,.075);
    }
    .fresco-v2__hero-facts li:hover::after {
        opacity: 1;
        transform: scaleX(1);
    }
}

.fresco-v2__hero-media { position: relative; min-width: 0; }
.fresco-v2__hero-media .fresco-v2__media-overlay { left: 125px; }
.fresco-v2__media-placeholder {
    min-height: 360px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 32px;
    text-align: center;
    color: #77716e;
    border: 1px dashed #cfc7c2;
    background:
        linear-gradient(135deg, rgba(125,8,8,.025), rgba(45,45,45,.025)),
        repeating-linear-gradient(135deg, transparent 0 18px, rgba(45,45,45,.018) 18px 19px);
}
.fresco-v2__media-placeholder span { color: var(--fresco-red); font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.fresco-v2__media-placeholder strong { color: var(--fresco-text); font-size: 22px; font-weight: 600; }
.fresco-v2__media-placeholder small { max-width: 340px; font-size: 13px; line-height: 1.5; }
.fresco-v2__media-placeholder--hero { min-height: 570px; border-radius: 2px; }
.fresco-v2__texture-bubble {
    width: 150px; height: 150px;
    position: absolute; left: -36px; bottom: -26px;
    display: flex; flex-direction: column; justify-content: center; align-items: center;
    border-radius: 50%; background: var(--fresco-red); color: #fff; box-shadow: 0 18px 42px rgba(125,8,8,.18); z-index:100;
}
.fresco-v2__texture-bubble span { font-size: 11px; text-transform: uppercase; letter-spacing: .12em; opacity: .75; }
.fresco-v2__texture-bubble strong { font-size: 17px; }
.fresco-v2__texture-bubble--image {
    overflow: hidden;
    border: 7px solid #fff;
    background: #f3f0ed;
    box-shadow: 0 18px 42px rgba(45,45,45,.16);
}
.fresco-v2__texture-bubble--image img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.fresco-v2__texture-bubble--image::after {
    content: '';
    position: absolute;
    inset: 55% 0 0;
    background: linear-gradient(180deg, transparent, rgba(0,0,0,.62));
}
.fresco-v2__texture-bubble--image span {
    position: absolute;
    z-index: 2;
    left: 10px;
    right: 10px;
    bottom: 10px;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    letter-spacing: .08em;
    text-transform: uppercase;
    opacity: 1;
}

.fresco-v2__nav {
    position: sticky;
    top: calc(var(--fresco-header-offset, 0px) + var(--fresco-sticky-gap, 0px));
    z-index: 80;
    border-top: 1px solid rgba(45,45,45,.07);
    border-bottom: 1px solid rgba(45,45,45,.08);
    background: rgba(255,255,255,.94);
    backdrop-filter: blur(14px);
}
.fresco-v2__nav-scroll { display: flex; overflow-x: auto; scrollbar-width: none; }
.fresco-v2__nav-scroll::-webkit-scrollbar { display: none; }
.fresco-v2__nav a {
    position: relative; flex: 0 0 auto; padding: 17px 20px; color: #5e5a57; text-decoration: none !important; font-size: 13px; font-weight: 550;
}
.fresco-v2__nav a::after { content: ''; position: absolute; left: 20px; right: 20px; bottom: -1px; height: 2px; background: var(--fresco-red); transform: scaleX(0); transition: transform .2s ease; }
.fresco-v2__nav a.is-active { color: var(--fresco-red); }
.fresco-v2__nav a.is-active::after { transform: scaleX(1); }

.fresco-v2__section { padding: clamp(70px, 7vw, 112px) 0; }
.fresco-v2__section--light { background: #fbfaf9; }
.fresco-v2__section--soft { background: var(--fresco-soft); }
.fresco-v2__section-heading { max-width: 820px; margin: 0 0 42px; }
.fresco-v2__section-heading > p:last-child { color: #66615e; font-size: 17px; line-height: 1.65; }
.fresco-v2__section-heading--split { max-width: none; display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, 460px); gap: 50px; align-items: end; }
.fresco-v2__section-heading--split > p { margin-bottom: 17px; }

.fresco-v2__about-grid { display: grid; grid-template-columns: minmax(360px,.85fr) minmax(0,1fr); gap: clamp(44px, 6vw, 96px); align-items: center; }
.fresco-v2__media-placeholder--texture { min-height: 620px; }
.fresco-v2__section-copy > p:not(.fresco-v2__eyebrow) { color: #5f5a57; line-height: 1.7; }
.fresco-v2__feature-list { margin-top: 34px; border-top: 1px solid var(--fresco-line); }
.fresco-v2__feature-list article { display: grid; grid-template-columns: 48px 1fr; gap: 18px; padding: 22px 0; border-bottom: 1px solid var(--fresco-line); }
.fresco-v2__feature-list article > span { color: var(--fresco-red); font-size: 13px; font-weight: 700; }
.fresco-v2__feature-list h3 { margin-bottom: 7px; }
.fresco-v2__feature-list p { margin: 0; color: var(--fresco-muted); line-height: 1.55; }

.fresco-v2__search {
    max-width: 980px; min-height: 64px; margin-bottom: 42px; display: grid; grid-template-columns: 1fr 62px auto; align-items: stretch;
    border: 1px solid #d9d4d0; border-radius: 7px; background: #fff; box-shadow: 0 10px 34px rgba(40,28,20,.05); overflow: hidden;
}
.fresco-v2__search-field input { width: 100%; height: 100%; min-height: 62px; padding: 0 22px; border: 0; outline: 0; font-size: 16px; color: var(--fresco-text); background: transparent; }
.fresco-v2__search-submit, .fresco-v2__search-image { border: 0; border-left: 1px solid #ebe7e4; background: #fff; display: flex; align-items: center; justify-content: center; cursor: pointer; }
.fresco-v2__search-submit img { width: 22px; }
.fresco-v2__search-image { gap: 8px; padding: 0 18px; color: #5f5b58; font-size: 13px; }
.fresco-v2__search-image img { width: 24px; }

.fresco-v2__collection-wrap { margin-top: 24px; }
.fresco-v2__collection-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 16px; }
.fresco-v2__collection-card { position: relative; min-height: 240px; overflow: hidden; background: #eee; color: #fff !important; text-decoration: none !important; }
.fresco-v2__collection-card::after { content:''; position:absolute; inset:35% 0 0; background:linear-gradient(transparent,rgba(0,0,0,.58)); }
.fresco-v2__collection-card img { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; transition: transform .45s ease; }
.fresco-v2__collection-card span { position:absolute; z-index:2; left:20px; right:20px; bottom:18px; font-size:18px; font-weight:600; }
.fresco-v2__collection-card:hover img { transform: scale(1.025); }

.fresco-v2__popular-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.fresco-v2__product-card { min-width:0; background:#fff; border:1px solid #ebe7e4; transition:transform .2s ease, box-shadow .2s ease; }
.fresco-v2__product-card:hover { transform:translateY(-3px); box-shadow:0 16px 34px rgba(45,45,45,.07); }
.fresco-v2__product-image { display:block; aspect-ratio:1/1.08; overflow:hidden; background:#f0eeec; }
.fresco-v2__product-image img { width:100%; height:100%; object-fit:cover; transition:transform .35s ease; }
.fresco-v2__product-card:hover .fresco-v2__product-image img { transform:scale(1.02); }
.fresco-v2__product-body { padding:18px; }
.fresco-v2__product-body h3 { margin-bottom:6px; font-size:17px; }
.fresco-v2__product-body h3 a { color:var(--fresco-text); text-decoration:none; }
.fresco-v2__product-body small { color:#8a8581; }
.fresco-v2__product-price { margin:16px 0 12px; color:#6d6865; font-size:13px; }
.fresco-v2__product-price strong { color:var(--fresco-text); font-size:15px; }
.fresco-v2__product-link { color:var(--fresco-red)!important; font-weight:600; font-size:13px; text-decoration:none!important; }

.fresco-v2__interior-grid { display:grid; grid-template-columns:1.5fr 1fr; grid-template-rows:repeat(2,280px); gap:16px; }
.fresco-v2__interior-card { position:relative; min-width:0; overflow:hidden; color:#fff!important; text-decoration:none!important; background:#eee; }
.fresco-v2__interior-card--wide { grid-row:1 / span 2; }
.fresco-v2__interior-card::after { content:''; position:absolute; inset:45% 0 0; background:linear-gradient(transparent,rgba(0,0,0,.52)); }
.fresco-v2__interior-card img { width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.fresco-v2__interior-card:hover img { transform:scale(1.02); }
.fresco-v2__interior-card span { position:absolute; z-index:2; left:22px; bottom:20px; }
.fresco-v2__interior-card strong, .fresco-v2__interior-card small { display:block; }
.fresco-v2__interior-card strong { font-size:20px; }
.fresco-v2__interior-card small { margin-top:4px; opacity:.84; }

.fresco-v2__compare { border-top:1px solid #d9d4d0; }
.fresco-v2__compare > div { display:grid; grid-template-columns:minmax(150px,.7fr) repeat(2,minmax(0,1fr)); border-bottom:1px solid #ded9d5; }
.fresco-v2__compare > div > * { margin:0; padding:18px 22px; }
.fresco-v2__compare-head strong { font-size:18px; }
.fresco-v2__compare-head strong:first-of-type { color:var(--fresco-red); }
.fresco-v2__compare span { color:#77716e; font-size:13px; font-weight:600; }
.fresco-v2__compare p { line-height:1.5; }
.fresco-v2__compare-note { max-width:760px; margin:30px 0 0; font-size:18px; line-height:1.6; }

.fresco-v2__facture-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.fresco-v2__facture-card { display:flex; flex-direction:column; min-width:0; border:1px solid #e5e0dc; background:#fff; transition:transform .2s ease,box-shadow .2s ease; }
.fresco-v2__facture-card:hover { transform:translateY(-3px); box-shadow:0 18px 40px rgba(45,45,45,.07); }
.fresco-v2__facture-image { position:relative; display:block; aspect-ratio:1.12/1; overflow:hidden; background:#f0eeec; }
.fresco-v2__facture-image img { width:100%; height:100%; object-fit:cover; transition:transform .4s ease; }
.fresco-v2__facture-card:hover img { transform:scale(1.025); }
.fresco-v2__badge { position:absolute; left:12px; top:12px; padding:6px 9px; border-radius:3px; background:var(--fresco-red); color:#fff; font-size:10px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; }
.fresco-v2__facture-body { display:flex; flex:1; flex-direction:column; padding:18px; }
.fresco-v2__facture-body h3 { margin-bottom:10px; }
.fresco-v2__facture-body p { flex:1; margin-bottom:18px; color:#736e6b; font-size:13px; line-height:1.55; }
.fresco-v2__facture-bottom { display:flex; justify-content:space-between; gap:14px; align-items:center; padding-top:14px; border-top:1px solid #eeeae7; }
.fresco-v2__facture-bottom strong { font-size:15px; }
.fresco-v2__facture-bottom a { color:var(--fresco-red)!important; font-size:12px; font-weight:600; text-decoration:none!important; }

.fresco-v2__one-image-grid { display:grid; grid-template-columns:minmax(320px,.7fr) minmax(0,1fr); gap:clamp(44px,6vw,90px); align-items:center; }
.fresco-v2__facture-tabs { display:flex; gap:8px; flex-wrap:wrap; margin:26px 0 22px; }
.fresco-v2__facture-tabs button { padding:10px 15px; border:1px solid #d5cfcb; background:#fff; color:#5e5956; border-radius:4px; cursor:pointer; }
.fresco-v2__facture-tabs button[aria-selected="true"] { border-color:var(--fresco-red); background:var(--fresco-red); color:#fff; }
.fresco-v2__media-note { padding:16px 18px; border-left:2px solid var(--fresco-red); background:#fff; font-size:13px; line-height:1.55!important; }
.fresco-v2__comparison-media { min-width:0; }
.fresco-v2__comparison-panel { display:none; position:relative; }
.fresco-v2__comparison-panel.is-active { display:block; animation:frescoFade .32s ease; }
.fresco-v2__media-placeholder--comparison { min-height:0; aspect-ratio:3/4; background:#303638; }
.fresco-v2__comparison-macro { width:150px; height:150px; position:absolute; right:-22px; bottom:-24px; overflow:hidden; border:7px solid #fff; border-radius:50%; box-shadow:0 16px 34px rgba(45,45,45,.14); z-index:100; }
.fresco-v2__comparison-macro img { width:100%; height:100%; object-fit:cover; }
.fresco-v2__comparison-macro span { position:absolute; inset:auto 0 0; padding:8px 5px 12px; background:linear-gradient(transparent,rgba(0,0,0,.68)); color:#fff; text-align:center; font-size:10px; }

.fresco-v2__prototype-end { padding:34px 0; border-top:1px dashed #d6d0cc; background:#fff8e8; }
.fresco-v2__prototype-end strong { display:block; margin-bottom:5px; }
.fresco-v2__prototype-end p { margin:0; color:#736b59; font-size:13px; }

.fresco-v2--reveal-ready [data-fresco-reveal] { opacity:0; transform:translateY(18px); transition:opacity .6s ease,transform .6s ease; }
.fresco-v2--reveal-ready [data-fresco-reveal].is-visible { opacity:1; transform:none; }
@keyframes frescoFade { from{opacity:0;transform:translateY(4px)} to{opacity:1;transform:none} }

@media (max-width: 1100px) {
    .fresco-v2__hero-grid { grid-template-columns:1fr 1fr; gap:38px; }
    .fresco-v2__hero-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .fresco-v2__hero-facts li:nth-child(odd) { border-left:0; }
    .fresco-v2__hero-facts li:nth-child(n+3) { border-top:1px solid #ebe6e3; }
    .fresco-v2__collection-grid, .fresco-v2__popular-grid, .fresco-v2__facture-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .fresco-v2__about-grid { grid-template-columns:.8fr 1fr; gap:44px; }
}

@media (max-width: 820px) {
    .fresco-v2__hero { padding-top:38px; }
    .fresco-v2__hero-grid, .fresco-v2__about-grid, .fresco-v2__one-image-grid { grid-template-columns:1fr; }
    .fresco-v2__hero-media { margin-top:8px; }
    .fresco-v2__media-placeholder--hero { min-height:420px; }
    .fresco-v2__texture-bubble { left:auto; right:18px; bottom:-32px; width:126px; height:126px; }
    .fresco-v2__media-placeholder--texture { min-height:420px; order:2; }
    .fresco-v2__section-heading--split { grid-template-columns:1fr; gap:6px; }
    .fresco-v2__interior-grid { grid-template-columns:1fr 1fr; grid-template-rows:360px 240px; }
    .fresco-v2__interior-card--wide { grid-column:1 / span 2; grid-row:auto; }
    .fresco-v2__compare { overflow-x:auto; }
    .fresco-v2__compare > div { min-width:700px; }
    .fresco-v2__comparison-macro { right:14px; }
}

@media (max-width: 560px) {
    .fresco-v2 { overflow:hidden; }
    .fresco-v2__hero { padding:28px 0 34px; }
    .fresco-v2 h1 { font-size:38px; line-height:1.02; }
    .fresco-v2 h2 { font-size:30px; }
    .fresco-v2__hero-lead, .fresco-v2__lead { font-size:16px; line-height:1.58; }
    .fresco-v2__hero-actions { display:grid; grid-template-columns:1fr; }
    .fresco-v2__button { width:100%; }
    .fresco-v2__hero-price { display:block; }
    .fresco-v2__hero-price span { display:block; margin-bottom:5px; }
    .fresco-v2__hero-facts { margin-top:28px; border-radius:8px; }
    .fresco-v2__hero-facts li { min-width:0; min-height:112px; padding:17px 14px 15px; }
    .fresco-v2__hero-facts li::before { margin-bottom:12px; }
    .fresco-v2__hero-facts li::after { left:14px; right:14px; }
    .fresco-v2__hero-facts strong { font-size:15px; }
    .fresco-v2__hero-facts span { font-size:11px; line-height:1.35; }
    .fresco-v2__media-placeholder--hero, .fresco-v2__media-placeholder--texture { min-height:310px; }
    .fresco-v2__texture-bubble { width:105px; height:105px; right:14px; bottom:-22px; }
    .fresco-v2 { --fresco-sticky-gap: 0px; }
    .fresco-v2__nav a { padding:14px 14px; }
    .fresco-v2__section { padding:58px 0; }
    .fresco-v2__section-heading { margin-bottom:30px; }
    .fresco-v2__search { grid-template-columns:1fr 54px; min-height:56px; }
    .fresco-v2__search-field input { min-height:54px; padding:0 15px; font-size:14px; }
    .fresco-v2__search-image { grid-column:1 / span 2; min-height:46px; border-left:0; border-top:1px solid #ebe7e4; }
    .fresco-v2__collection-grid, .fresco-v2__popular-grid, .fresco-v2__facture-grid { display:flex; overflow-x:auto; gap:12px; margin-right:-15px; padding-right:15px; scroll-snap-type:x mandatory; }
    .fresco-v2__collection-card, .fresco-v2__product-card, .fresco-v2__facture-card { flex:0 0 84%; scroll-snap-align:start; }
    .fresco-v2__collection-card { min-height:250px; }
    .fresco-v2__center-action .fresco-v2__button { width:auto; }
    .fresco-v2__interior-grid { display:flex; overflow-x:auto; gap:12px; margin-right:-15px; padding-right:15px; scroll-snap-type:x mandatory; }
    .fresco-v2__interior-card, .fresco-v2__interior-card--wide { flex:0 0 88%; height:330px; scroll-snap-align:start; }
    .fresco-v2__compare > div { min-width:640px; grid-template-columns:120px repeat(2,260px); }
    .fresco-v2__compare > div > * { padding:14px; font-size:13px; }
    .fresco-v2__media-placeholder--comparison { min-height:0; }
    .fresco-v2__comparison-macro { width:112px; height:112px; bottom:-18px; }
}

@media (prefers-reduced-motion: reduce) {
    .fresco-v2 *, .fresco-v2 *::before, .fresco-v2 *::after { scroll-behavior:auto!important; transition-duration:.01ms!important; animation-duration:.01ms!important; animation-iteration-count:1!important; }
    .fresco-v2--reveal-ready [data-fresco-reveal] { opacity:1!important; transform:none!important; }
}

/* Prototype media replacements: generated images instead of placeholders */
.fresco-v2__media-placeholder.is-filled {
    position: relative;
    padding: 0;
    border: none;
    overflow: hidden;
    background: #f3f0ed;
    color: #fff;
}
.fresco-v2__media-placeholder.is-filled::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0,0,0,0) 38%, rgba(0,0,0,.42) 100%);
    z-index: 1;
    pointer-events: none;
}
.fresco-v2__media-placeholder.is-filled > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.fresco-v2__media-overlay {
    position: absolute;
    left: 22px;
    right: 22px;
    bottom: 18px;
    z-index: 2;
    display: flex;
    flex-direction: column;
    gap: 5px;
    text-align: left;
}
.fresco-v2__media-overlay span,
.fresco-v2__media-overlay strong,
.fresco-v2__media-overlay small {
    color: #fff;
    margin: 0;
}
.fresco-v2__media-overlay span {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .11em;
    text-transform: uppercase;
    opacity: .86;
}
.fresco-v2__media-overlay strong {
    font-size: 22px;
    font-weight: 600;
    line-height: 1.18;
}
.fresco-v2__media-overlay small {
    max-width: 360px;
    font-size: 13px;
    line-height: 1.45;
    opacity: .92;
}
.fresco-v2__media-placeholder--texture.is-filled > img {
    object-position: center center;
}
.fresco-v2__media-placeholder--comparison.is-filled > img {
    width:100%;
    height:100%;
    object-fit:contain;
    object-position:center center;
    background:#303638;
}
@media (max-width: 1199.98px) {
    .fresco-v2__hero-media .fresco-v2__media-overlay { left: 108px; }
}
@media (max-width: 767.98px) {
    .fresco-v2__hero-media .fresco-v2__media-overlay,
    .fresco-v2__media-overlay { left: 16px; right: 16px; bottom: 14px; }
    .fresco-v2__media-overlay strong { font-size: 18px; }
    .fresco-v2__media-overlay small { font-size: 12px; }
}

/* Stage 2 — lower half */
.fresco-v2__custom-grid,
.fresco-v2__seamless-grid,
.fresco-v2__proof-grid,
.fresco-v2__certificate-grid,
.fresco-v2__faq-grid,
.fresco-v2__final-grid {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(420px, 1.1fr);
    gap: clamp(44px, 6vw, 92px);
    align-items: center;
}

.fresco-v2__check-list { margin: 28px 0 30px; padding: 0; list-style: none; }
.fresco-v2__check-list li { position: relative; padding: 10px 0 10px 28px; border-bottom: 1px solid var(--fresco-line); color: #625d5a; line-height: 1.5; }
.fresco-v2__check-list li::before { content: '✓'; position: absolute; left: 0; top: 10px; color: var(--fresco-red); font-weight: 700; }

.fresco-v2__design-media { position: relative; min-height: 590px; }
.fresco-v2__design-screen { position: absolute; inset: 0 13% 13% 0; overflow: hidden; background: #eeeae6; box-shadow: 0 24px 54px rgba(45,45,45,.1); }
.fresco-v2__design-screen img { width: 100%; height: 100%; object-fit: cover; }
.fresco-v2__design-label { position: absolute; z-index: 2; top: 18px; left: 18px; padding: 8px 11px; background: rgba(255,255,255,.9); color: #625d5a; font-size: 11px; letter-spacing: .07em; text-transform: uppercase; }
.fresco-v2__design-result { position: absolute; right: 0; bottom: 0; width: 42%; aspect-ratio: 4/5; overflow: hidden; border: 8px solid #fff; box-shadow: 0 18px 40px rgba(45,45,45,.15); }
.fresco-v2__design-result img { width: 100%; height: 100%; object-fit: cover; }
.fresco-v2__design-result span { position: absolute; left: 0; right: 0; bottom: 0; padding: 26px 12px 12px; background: linear-gradient(transparent,rgba(0,0,0,.55)); color:#fff; font-size: 11px; text-align:center; }

.fresco-v2__size-visual { min-width: 0; position: relative; }
.fresco-v2__size-wall { position: relative; min-height: 390px; overflow: hidden; border: 1px solid #ded9d5; background: #eeeae7; box-shadow: 0 16px 38px rgba(45,45,45,.07); }
.fresco-v2__size-wall--long { min-height: 430px; }
.fresco-v2__size-wall img { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; }
.fresco-v2__size-wall::after { content:''; position:absolute; inset:0; background:linear-gradient(180deg,rgba(0,0,0,0) 45%,rgba(0,0,0,.28)); }
.fresco-v2__size-wall > span { position:absolute; z-index:2; left:20px; right:20px; bottom:18px; color:#fff; font-size:14px; font-weight:600; text-transform:uppercase; letter-spacing:.08em; }

.fresco-v2__property-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.fresco-v2__property-grid article { min-height:250px; padding:28px; border:1px solid var(--fresco-line); background:#fff; transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.fresco-v2__property-grid article:hover { transform:translateY(-3px); border-color:#d8cfcb; box-shadow:0 16px 34px rgba(45,45,45,.06); }
.fresco-v2__property-grid article > span { display:inline-flex; width:38px; height:38px; align-items:center; justify-content:center; margin-bottom:42px; border:1px solid rgba(125,8,8,.18); border-radius:50%; color:var(--fresco-red); font-size:11px; font-weight:700; }
.fresco-v2__property-grid h3 { margin-bottom:12px; }
.fresco-v2__property-grid p { margin:0; color:#716c69; font-size:14px; line-height:1.6; }

.fresco-v2__proof-media { position:relative; min-height:610px; overflow:hidden; background:#eeeae7; }
.fresco-v2__proof-media > img { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; }

.fresco-v2__proof-media--real {
    background: #202326;
}
.fresco-v2__proof-media--real > img {
    object-fit: contain;
    object-position: center;
}

.fresco-v2__proof-media::after { content:''; position:absolute; inset:0; background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.25)); }
.fresco-v2__proof-media > span { position:absolute; z-index:3; left:20px; bottom:18px; color:#fff; font-size:11px; letter-spacing:.08em; text-transform:uppercase; }
.fresco-v2__proof-sample { position:absolute; z-index:2; width:105px; height:140px; right:24px; border:6px solid #fff; box-shadow:0 12px 28px rgba(45,45,45,.18); background-size:cover; }
.fresco-v2__proof-sample--1 { top:42px; transform:rotate(4deg); background:#d8cfc4; }
.fresco-v2__proof-sample--2 { top:152px; right:54px; transform:rotate(-5deg); background:#b8aaa0; }
.fresco-v2__proof-sample--3 { top:270px; transform:rotate(3deg); background:#efe7dc; }
.fresco-v2__proof-offer { display:flex; flex-direction:column; gap:5px; margin:28px 0 24px; padding:18px 20px; border-left:3px solid var(--fresco-red); background:var(--fresco-soft-red); }
.fresco-v2__proof-offer strong { color:var(--fresco-red); font-size:19px; }
.fresco-v2__proof-offer span { color:#6f6966; font-size:13px; }
.fresco-v2__proof-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.fresco-v2__proof-form label:not(.fresco-v2__consent) { display:flex; flex-direction:column; gap:7px; }
.fresco-v2__proof-form label > span { color:#6f6966; font-size:12px; }
.fresco-v2__proof-form input[type="text"], .fresco-v2__proof-form input[type="tel"], .fresco-v2__proof-form input[type="email"] { min-height:50px; padding:0 14px; border:1px solid #d8d2ce; border-radius:4px; background:#fff; color:var(--fresco-text); outline:none; }
.fresco-v2__proof-form input:focus { border-color:var(--fresco-red); box-shadow:0 0 0 3px rgba(125,8,8,.07); }
.fresco-v2__proof-form label:nth-of-type(3), .fresco-v2__consent, .fresco-v2__proof-form .fresco-v2__button, .fresco-v2__form-status { grid-column:1 / -1; }
.fresco-v2__consent { display:grid; grid-template-columns:18px 1fr; gap:9px; align-items:start; }
.fresco-v2__consent input { margin-top:3px; }
.fresco-v2__consent a { color:var(--fresco-red)!important; }
.fresco-v2__form-status { min-height:18px; margin:0; font-size:13px; color:#5f5a57; }
.fresco-v2__form-status.is-success { color:#2e6c3c; }
.fresco-v2__form-status.is-error { color:var(--fresco-red); }

.fresco-v2__order-steps { margin:0; padding:0; list-style:none; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); border-top:1px solid var(--fresco-line); border-bottom:1px solid var(--fresco-line); }
.fresco-v2__order-steps li { position:relative; padding:28px 24px 30px 0; }
.fresco-v2__order-steps li:not(:last-child)::after { content:'→'; position:absolute; top:30px; right:12px; color:#b6aeaa; }
.fresco-v2__order-steps li > span { display:block; margin-bottom:38px; color:var(--fresco-red); font-size:12px; font-weight:700; }
.fresco-v2__order-steps h3 { margin-bottom:10px; font-size:17px; }
.fresco-v2__order-steps p { margin:0; padding-right:18px; color:#77716e; font-size:13px; line-height:1.55; }

.fresco-v2__trust-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.fresco-v2__trust-grid article { padding:28px; border-top:2px solid var(--fresco-red); background:#fff; }
.fresco-v2__trust-grid strong { display:block; margin-bottom:12px; font-size:18px; }
.fresco-v2__trust-grid p { margin:0; color:#706b68; font-size:14px; line-height:1.6; }

.fresco-v2__certificate-grid { align-items:start; }
.fresco-v2__certificate-facts {
    counter-reset: fresco-certificate-fact;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:0;
    margin-top:30px;
    overflow:hidden;
    border:1px solid #e7e1dd;
    border-radius:10px;
    background:rgba(255,255,255,.88);
    box-shadow:0 14px 34px rgba(45,45,45,.055);
}
.fresco-v2__certificate-facts span {
    counter-increment: fresco-certificate-fact;
    position:relative;
    display:flex;
    flex-direction:column;
    gap:7px;
    min-height:122px;
    padding:20px 18px 18px;
    background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(250,248,247,.96));
    color:#77716e;
    font-size:12px;
    line-height:1.38;
    transition: background-color .2s ease, transform .2s ease, box-shadow .2s ease;
}
.fresco-v2__certificate-facts span + span { border-left:1px solid #ebe6e3; }
.fresco-v2__certificate-facts span::before {
    content: counter(fresco-certificate-fact, decimal-leading-zero);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    align-self:flex-start;
    min-width:28px;
    height:22px;
    margin-bottom:8px;
    padding:0 7px;
    border:1px solid rgba(125,8,8,.16);
    border-radius:999px;
    background:rgba(125,8,8,.045);
    color:var(--fresco-red);
    font-size:10px;
    font-weight:750;
    line-height:1;
    letter-spacing:.08em;
}
.fresco-v2__certificate-facts span::after {
    content:'';
    position:absolute;
    left:18px;
    right:18px;
    bottom:0;
    height:2px;
    background:var(--fresco-red);
    opacity:0;
    transform:scaleX(.45);
    transform-origin:left center;
    transition:opacity .2s ease, transform .2s ease;
}
.fresco-v2__certificate-facts strong {
    display:block;
    color:var(--fresco-text);
    font-size:clamp(16px, 1.25vw, 19px);
    font-weight:680;
    line-height:1.12;
    letter-spacing:-.01em;
}
@media (hover:hover) and (pointer:fine) {
    .fresco-v2__certificate-facts span:hover {
        z-index:1;
        background:#fff;
        transform:translateY(-2px);
        box-shadow:0 12px 26px rgba(45,45,45,.075);
    }
    .fresco-v2__certificate-facts span:hover::after {
        opacity:1;
        transform:scaleX(1);
    }
}
.fresco-v2__certificate-cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.fresco-v2__certificate-card { position:relative; padding:0; border:1px solid var(--fresco-line); background:#f4f1ef; cursor:zoom-in; overflow:hidden; }
.fresco-v2__certificate-card img { width:100%; aspect-ratio:.72; object-fit:cover; object-position:top center; transition:transform .25s ease; }
.fresco-v2__certificate-card:hover img { transform:scale(1.02); }
.fresco-v2__certificate-card span { position:absolute; right:10px; bottom:10px; padding:7px 10px; border-radius:3px; background:rgba(255,255,255,.92); color:var(--fresco-red); font-size:11px; font-weight:600; }
.fresco-v2__cert-dialog { width:min(900px,94vw); max-height:92vh; padding:20px; border:0; background:#fff; box-shadow:0 24px 80px rgba(0,0,0,.25); }
.fresco-v2__cert-dialog::backdrop { background:rgba(20,18,17,.72); backdrop-filter:blur(3px); }
.fresco-v2__cert-dialog img { max-width:100%; max-height:84vh; margin:auto; object-fit:contain; }
.fresco-v2__cert-close { position:absolute; z-index:2; right:10px; top:10px; width:42px; height:42px; border:0; border-radius:50%; background:#fff; color:#2d2d2d; font-size:28px; line-height:1; cursor:pointer; box-shadow:0 6px 20px rgba(0,0,0,.12); }

.fresco-v2__reviews-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.fresco-v2__review-card { min-width:0; border:1px solid var(--fresco-line); background:#fff; color:var(--fresco-text)!important; text-decoration:none!important; overflow:hidden; transition:transform .2s ease, box-shadow .2s ease; }
.fresco-v2__review-card:hover { transform:translateY(-3px); box-shadow:0 16px 34px rgba(45,45,45,.06); }
.fresco-v2__review-image { aspect-ratio:1.2; background:#eeeae7; overflow:hidden; }
.fresco-v2__review-image img { width:100%; height:100%; object-fit:cover; }
.fresco-v2__review-image--empty { display:flex; align-items:center; justify-content:center; color:#8a8581; font-size:13px; }
.fresco-v2__review-body { padding:18px; }
.fresco-v2__review-meta { display:flex; justify-content:space-between; gap:10px; align-items:center; margin-bottom:12px; }
.fresco-v2__review-meta strong { font-size:15px; }
.fresco-v2__review-meta span { color:#99928e; font-size:11px; }
.fresco-v2__review-body p { margin:0; color:#6f6a67; font-size:13px; line-height:1.55; }

.fresco-v2__faq-grid { grid-template-columns:minmax(260px,.55fr) minmax(0,1fr); align-items:start; }
.fresco-v2__faq details { border-top:1px solid var(--fresco-line); }
.fresco-v2__faq details:last-child { border-bottom:1px solid var(--fresco-line); }
.fresco-v2__faq summary { position:relative; padding:22px 52px 22px 0; cursor:pointer; list-style:none; font-size:17px; font-weight:600; }
.fresco-v2__faq summary::-webkit-details-marker { display:none; }
.fresco-v2__faq summary::after { content:'+'; position:absolute; right:4px; top:17px; color:var(--fresco-red); font-size:28px; font-weight:300; }
.fresco-v2__faq details[open] summary::after { content:'−'; }
.fresco-v2__faq details p { max-width:760px; margin:0; padding:0 45px 22px 0; color:#706b68; line-height:1.65; }
.fresco-v2__faq details a { color:var(--fresco-red)!important; }

.fresco-v2__final { padding:clamp(70px,7vw,112px) 0; background:linear-gradient(110deg,#f7f4f2 0%,#fff 56%); }
.fresco-v2__final-grid { grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr); }
.fresco-v2__final-copy > p:not(.fresco-v2__eyebrow) { max-width:700px; color:#625d5a; font-size:17px; line-height:1.65; }
.fresco-v2__final-media { position:relative; min-height:470px; overflow:hidden; }
.fresco-v2__final-media img { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; }
.fresco-v2__final-media::after { content:''; position:absolute; inset:55% 0 0; background:linear-gradient(transparent,rgba(0,0,0,.4)); }
.fresco-v2__final-media span { position:absolute; z-index:2; left:18px; bottom:16px; color:#fff; font-size:11px; text-transform:uppercase; letter-spacing:.08em; }

@media (max-width: 1100px) {
    .fresco-v2__property-grid, .fresco-v2__trust-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .fresco-v2__order-steps { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .fresco-v2__order-steps li:nth-child(3)::after { display:none; }
}

@media (max-width: 820px) {
    .fresco-v2__custom-grid, .fresco-v2__seamless-grid, .fresco-v2__proof-grid, .fresco-v2__certificate-grid, .fresco-v2__faq-grid, .fresco-v2__final-grid { grid-template-columns:1fr; }
    .fresco-v2__design-media { min-height:500px; }
    .fresco-v2__proof-media { min-height:470px; order:2; }
    .fresco-v2__size-visual { max-width: 100%; margin:auto; }
    .fresco-v2__order-steps { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .fresco-v2__order-steps li:nth-child(2)::after, .fresco-v2__order-steps li:nth-child(4)::after { display:none; }
    .fresco-v2__order-steps li:nth-child(3)::after { display:block; }
    .fresco-v2__reviews-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .fresco-v2__final-media { min-height:420px; }
}

@media (max-width: 560px) {
    .fresco-v2__design-media { min-height:410px; }
    .fresco-v2__design-screen { inset:0 9% 12% 0; }
    .fresco-v2__design-result { width:40%; border-width:5px; }
    .fresco-v2__size-visual { padding:0; }
    .fresco-v2__size-wall { min-height:290px; }
    .fresco-v2__size-wall--long { min-height: 250px; }
    .fresco-v2__property-grid, .fresco-v2__trust-grid { grid-template-columns:1fr; }
    .fresco-v2__property-grid article { min-height:auto; }
    .fresco-v2__property-grid article > span { margin-bottom:22px; }
    .fresco-v2__proof-media { min-height:360px; }
    .fresco-v2__proof-form { grid-template-columns:1fr; }
    .fresco-v2__proof-form > * { grid-column:1!important; }
    .fresco-v2__order-steps { grid-template-columns:1fr; }
    .fresco-v2__order-steps li { padding:22px 0; border-bottom:1px solid var(--fresco-line); }
    .fresco-v2__order-steps li::after { display:none!important; }
    .fresco-v2__order-steps li > span { margin-bottom:18px; }
    .fresco-v2__certificate-facts { grid-template-columns:1fr; }
    .fresco-v2__certificate-cards { gap:8px; }
    .fresco-v2__reviews-grid { display:flex; overflow-x:auto; gap:12px; margin-right:-15px; padding-right:15px; scroll-snap-type:x mandatory; }
    .fresco-v2__review-card { flex:0 0 86%; scroll-snap-align:start; }
    .fresco-v2__faq summary { font-size:15px; }
    .fresco-v2__final-media { min-height:330px; }
}
html.fresco-v2-cert-open { overflow: hidden; }
.fresco-v2__proof-form button:disabled { opacity:.65; cursor:wait; transform:none; }

/* ======================================================================
   Stage 5 — reliable JS affix navigation
   CSS sticky intentionally disabled: index-v2.js controls fixed state.
   ====================================================================== */
.fresco-v2__nav {
    position: relative;
    top: auto;
}

.fresco-v2__nav.is-fixed {
    position: fixed;
    z-index: 100;
    margin-top: 0;
}

.fresco-v2__nav-spacer {
    display: block;
    width: 100%;
    height: 0;
    margin: 0;
    padding: 0;
    border: 0;
}

/* Stage 6 — prelaunch hardening */
.fresco-v2 :where(a, button, input, select, textarea, summary):focus-visible {
    outline: 2px solid rgba(125, 8, 8, .55);
    outline-offset: 3px;
}

.fresco-v2__search-field input:focus-visible {
    outline: none;
    box-shadow: inset 0 0 0 2px rgba(125, 8, 8, .28);
}

.fresco-v2__social-proof {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 18px;
    margin: -18px 0 26px;
    padding: 15px 18px;
    border: 1px solid #e5e0dc;
    background: #fbfaf9;
    color: #68625f;
    font-size: 13px;
}
.fresco-v2__social-proof a {
    flex: 0 0 auto;
    color: var(--fresco-red) !important;
    font-weight: 650;
    text-decoration: none !important;
}

.fresco-v2__swipe-hint {
    display: none;
    margin: 0 0 10px;
    color: #7a7470;
    font-size: 12px;
}

.fresco-v2__proof-actions {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    margin-top: 22px;
}
.fresco-v2__proof-actions small {
    max-width: 520px;
    color: #746e6a;
    font-size: 12px;
    line-height: 1.5;
}

.fresco-v2__production-photo {
    position: relative;
    margin: 0 0 24px;
    overflow: hidden;
    border-radius: 4px;
    background: #ece9e6;
}
.fresco-v2__production-photo img {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 7;
    object-fit: cover;
    object-position: center;
}
.fresco-v2__production-photo figcaption {
    position: absolute;
    right: 14px;
    bottom: 12px;
    max-width: min(420px, calc(100% - 28px));
    padding: 8px 11px;
    background: rgba(255,255,255,.92);
    color: #4f4a47;
    font-size: 11px;
    line-height: 1.4;
    backdrop-filter: blur(8px);
}

@media (max-width: 767.98px) {
    .fresco-v2__social-proof {
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
        margin-top: -8px;
    }
    .fresco-v2__swipe-hint { display: block; }
    .fresco-v2__production-photo img { aspect-ratio: 4 / 3; }
    .fresco-v2__production-photo figcaption {
        position: static;
        max-width: none;
        padding: 10px 12px;
        background: #fff;
    }
}

/* End */
/* /local/templates/fresco/css/slick/slick.css?16826553641776 */
/* /local/templates/fresco/css/contacts-modern.css?17822745649167 */
/* /freski/css/index-v2.css?178722899943508 */
