/* KSU / winter 2026–27. Lightweight CSS and SVG; no canvas, video or external fonts. */
:root{--winter-pine:#153e37;--winter-deep:#142d2a;--winter-cream:#fbf8f0;--winter-red:#aa3d3b;--winter-gold:#f1bb51}
[hidden]{display:none!important}html{scroll-padding-top:105px}.icon-definitions{position:absolute;overflow:hidden;pointer-events:none}body{overflow-x:clip}.container{min-width:0}.button{white-space:normal}.button.is-pressed,.service-save.is-pressed{transform:scale(.98)}.page-heading h1,.detail-hero h1{overflow-wrap:anywhere}.page-heading p{color:#52605c}.detail-hero .detail-art{overflow:hidden;border-radius:22px}.detail-art img{object-fit:cover}.detail-price{display:flex;flex-wrap:wrap;column-gap:8px;align-items:baseline}.price-kicker{flex-basis:100%;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#596762}.included-box{border:1px solid #dce3dd;border-radius:20px;background:#fff;box-shadow:0 14px 40px #19362c07}.included-box h2{font-size:27px}.check-list li{line-height:1.65}
.holiday-ribbon{background:var(--winter-pine);color:#f8f1dd;position:relative;z-index:25;font-size:12px}.holiday-ribbon-inner{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:18px}.holiday-ribbon a{color:#f9efda;text-decoration:none}.holiday-ribbon b{letter-spacing:.15em;color:#f1bb51}.holiday-ribbon button{font:inherit;color:#f8f1dd;background:none;border:1px solid #668278;padding:5px 10px;border-radius:20px;cursor:pointer;flex-shrink:0}.holiday-ribbon button:hover{background:#ffffff14}.garland{position:absolute;top:38px;left:0;width:100%;height:34px;z-index:24;pointer-events:none;overflow:hidden}.garland svg{width:100%;height:34px}.bulb{transform:translate(calc(var(--lamp)*110px - 15px),24px);fill:#f4c36b;animation:lamp-glow 5s ease-in-out infinite alternate;animation-delay:calc(var(--lamp)*-.4s)}.bulb:nth-child(3n){fill:#d87566}.bulb:nth-child(3n + 1){fill:#d8e6b9}.winter-section{padding:48px 0;background:#fff}.winter-event{position:relative;isolation:isolate;overflow:hidden;border:1px solid #244e44;border-radius:28px;background:var(--winter-pine);padding:52px;display:grid;grid-template-columns:1.35fr .75fr;gap:32px;color:#fff;box-shadow:0 20px 50px #16332a10}.winter-event::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(circle,#e6eee04d 1px,transparent 2px),radial-gradient(circle,#e6eee02e 1px,transparent 2px);background-size:53px 73px,79px 97px;background-position:8px 12px,38px 44px;opacity:.5;z-index:-1}.winter-copy{position:relative;z-index:2}.winter-copy .eyebrow{color:#efce91}.winter-copy h2{font-size:clamp(28px,3vw,42px);line-height:1.14;letter-spacing:-.035em;color:#fff;margin:18px 0 24px}.winter-copy>p:not(.eyebrow){color:#dbe7df;max-width:640px;line-height:1.75}.winter-copy .text-link{color:#f7e6c0}.winter-copy .button{font-size:14px}.winter-right{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0}.winter-gifts{width:min(100%,290px);height:auto;animation:gift-float 8s ease-in-out infinite;transform-origin:50% 100%}.winter-note{border-top:1px solid #698475;padding-top:18px;width:100%;z-index:1}.winter-note .eyebrow{color:#f4c96f;font-size:10px}.winter-note p{color:#e5ece6;font-size:14px;line-height:1.6;margin:8px 0}.winter-note a{color:#fff;font-size:14px;font-weight:600;text-decoration:none;border-bottom:1px solid #8fa79a}.winter-orbit{width:350px;height:350px;border:1px solid #b0c49b29;border-radius:50%;position:absolute;right:-120px;top:-150px;z-index:-1}.winter-star{display:inline-block;font-size:22px;margin-right:8px;vertical-align:middle}.service-steps{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px!important}.service-steps .step-card,.steps>article{position:relative;border:1px solid #d9e1db;border-radius:18px;background:#fff;padding:24px!important;min-height:208px;box-shadow:0 5px 18px #173f2e04;transition:transform .25s,box-shadow .25s,border-color .25s;transition-delay:var(--delay,0ms)}.service-steps .step-card::before,.steps>article::before{display:none!important}.step-number,.steps>article>span:first-child{display:inline-grid!important;place-items:center;width:40px;height:40px;background:#edf4ef;color:#285747!important;border-radius:12px;font-weight:700;font-size:14px;margin:0 0 25px!important}.service-steps h3,.steps>article h3{font-size:19px!important;line-height:1.35!important;letter-spacing:-.015em;margin:0!important;max-width:100%;font-weight:650}.steps>article p{font-size:15px;line-height:1.7;color:#53625b}.step-mark{position:absolute;right:20px;top:24px;color:#8a987e;font-size:20px}.benefits-heading{margin-top:64px;max-width:760px}.benefits-heading h2{margin-top:10px!important;margin-bottom:16px!important}.benefits-heading p:last-child{color:#5a695f}.benefits-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:28px}.benefit-card{padding:28px;background:#eaf1eb;border:1px solid #cfddce;border-radius:18px;min-height:164px;transition:transform .25s,background .25s}.benefit-icon{display:grid;place-items:center;width:34px;height:34px;background:#d0e3cd;color:#285537;border-radius:50%;margin-bottom:20px}.benefit-card h3{font-size:19px;line-height:1.4;margin:0;font-weight:600;color:#183c30}.section-heading h2{line-height:1.14}.services-grid:empty{display:none}.service-card{border-radius:18px;overflow:hidden}.service-card .service-visual{aspect-ratio:4/3}.service-card .card-body{padding:24px}.service-card .card-bottom{gap:14px;align-items:end;flex-wrap:wrap}.service-card h3{font-size:24px;line-height:1.22}.service-card .service-save{min-width:44px;min-height:44px}.service-visual img{height:100%;width:100%;object-fit:cover}.service-card .service-index{letter-spacing:.09em}.how-price{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:40px}.how-price article{border:1px solid #d9e1db;border-radius:18px;padding:28px}.how-price h2{font-size:23px;margin:18px 0}.how-price b{color:#96700a;font-size:15px}.how-price p{color:#52635a;line-height:1.6}.price-directory{margin-top:32px}.price-table th{white-space:normal}.price-table td:last-child{white-space:nowrap}.price-table small{max-width:760px}.calc-panel,.form-panel{border-radius:22px}.work-presets{grid-template-columns:repeat(3,minmax(0,1fr))}.work-presets button{min-height:86px}.well-options{display:grid;gap:12px;margin:18px 0}.calc-step legend{font-size:clamp(23px,2.5vw,34px)}.calc-final-note{word-break:normal}.calc-progress{border-radius:10px}.result-price{overflow-wrap:anywhere}.page-heading{padding-top:58px}.form-grid>label{min-width:0}.price-directory th:first-child{width:65%}.button:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid #c58b15;outline-offset:4px}body[data-holiday="on"] .page-heading{background:radial-gradient(ellipse at 95% 10%,#ecdfbd77,transparent 45%),linear-gradient(120deg,#f7f7ef,#edf3ed)}body[data-holiday="on"] .page-heading::after{content:"✧";position:absolute;right:5%;top:18%;font-size:80px;color:#b1b99455;pointer-events:none}.page-heading{position:relative}.page-heading>.container{position:relative;z-index:1}body[data-holiday="on"] .header{background:#182f2b}body[data-holiday="off"] .garland,body[data-holiday="off"] .winter-gifts{display:none}body[data-holiday="off"] .winter-event::before{display:none}body[data-holiday="off"] .winter-event{background:#1e302c}.holiday-ribbon a:hover{color:#f3c05a}.mobile-actions svg{width:22px;height:22px}.mobile-actions a{min-width:44px;min-height:54px}.service-steps .step-card:hover{transform:translateY(-5px);border-color:#b1c6b5;box-shadow:0 14px 28px #163c2610}.benefit-card:hover{transform:translateY(-4px);background:#e0ecdf}@keyframes gift-float{50%{transform:translateY(-7px) rotate(1deg)}}@keyframes lamp-glow{from{opacity:.65}to{opacity:1}}
@media(min-width:1500px){.service-steps h3{font-size:21px!important}}
@media(max-width:1100px){.service-steps{grid-template-columns:repeat(3,minmax(0,1fr))}.benefits-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.winter-event{padding:36px;grid-template-columns:1.3fr .8fr}.holiday-ribbon-inner>a{display:none}}
@media(max-width:800px){.service-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.winter-event{grid-template-columns:1fr;padding:30px;border-radius:22px}.winter-right{display:grid;grid-template-columns:120px 1fr;gap:20px;align-items:center}.winter-gifts{width:120px}.winter-note{padding-top:0;border-top:0}.winter-note .eyebrow{line-height:1.5}.winter-section{padding:28px 0}.winter-copy h2 br{display:none}.how-price{grid-template-columns:1fr}.how-price article{padding:24px}.how-price h2{margin:8px 0}.holiday-ribbon-inner{font-size:10px;min-height:36px;gap:10px}.garland{top:36px;height:24px}.holiday-ribbon button{font-size:10px}.benefits-heading{margin-top:42px}.page-heading::after{display:none}.page-heading{padding-top:38px}.service-card .card-body{padding:22px}}
@media(max-width:560px){.service-steps{grid-template-columns:1fr!important;gap:12px!important}.service-steps .step-card{min-height:108px;padding:22px 40px 22px 82px!important;display:flex;align-items:center}.step-number{position:absolute;left:20px;top:22px}.step-mark{right:16px;top:18px}.benefits-grid{grid-template-columns:1fr;gap:12px}.benefit-card{min-height:100px;padding:23px 22px 23px 76px;position:relative;display:flex;align-items:center}.benefit-icon{position:absolute;left:22px;top:25px}.benefit-card h3{font-size:18px}.winter-event{padding:26px 22px}.winter-right{grid-template-columns:80px 1fr;gap:12px}.winter-gifts{width:80px}.winter-note p{font-size:13px}.winter-copy .button-row{align-items:stretch}.winter-copy .button{width:100%;justify-content:center}.winter-copy .text-link{align-self:flex-start}.work-presets{grid-template-columns:repeat(2,minmax(0,1fr))}.calc-panel{padding:22px 16px}.calc-actions{gap:10px}.calc-actions button{padding:14px 16px}.form-panel{padding:24px 18px}.contact-method-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-method-buttons button{font-size:13px}.price-table td:last-child{white-space:normal}.service-card h3{font-size:23px}.holiday-ribbon-inner>span{font-size:9px}.holiday-ribbon button{padding:4px 7px}.result-price{font-size:34px;line-height:1.18}.price-directory table,.price-directory tbody,.price-directory tr,.price-directory td{display:block;width:100%}.price-directory thead{display:none}.price-directory tr{padding:16px 0;border-bottom:1px solid #dce3da}.price-directory td{border:none;padding:5px 0}.price-directory td[data-label]::before{content:attr(data-label) " · ";color:#66746b;font-size:13px}.section{padding-top:46px;padding-bottom:46px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important}.bulb,.winter-gifts{animation:none!important}.step-card,.benefit-card,.button,.service-card{transition:none!important;transform:none!important}}body.high-contrast .holiday-ribbon{background:#10251c}body.high-contrast .step-number{color:#173827!important}body.high-contrast .benefit-card{background:#fff;border:2px solid #163d2b}
@media print{.holiday-ribbon,.garland,.winter-section{display:none!important}}

/* Keep lights clear of utility text. */
body[data-holiday="on"] .topline{padding-top:20px}body[data-holiday="off"] .topline{padding-top:0}
@media(max-width:800px){body[data-holiday="on"] .header{padding-top:12px}}

.link-arrow{display:inline-block;width:18px;height:18px;vertical-align:-3px;flex-shrink:0}.visual-arrow .link-arrow{width:22px;height:22px}.button .link-arrow{transition:transform .2s}.button:hover .link-arrow{transform:translate(2px,-2px)}
/* Новогодняя гирлянда */
.garland {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    height: clamp(36px, 5vw, 75px);
    overflow: hidden;
    background: #0d211b;
    pointer-events: none;
}

.garland img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Освобождаем прежнее место под старую гирлянду */
body[data-holiday="on"] .topline,
body[data-holiday="on"] .header {
    padding-top: 0;
}

/* Учитываем настройку уменьшения анимации */
@media (prefers-reduced-motion: reduce) {
    .garland {
        display: none;
    }
}