.elementor-28754 .elementor-element.elementor-element-f63070e{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:-100px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-28754 .elementor-element.elementor-element-edac671{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-28754 .elementor-element.elementor-element-27946ac{width:100%;max-width:100%;}.elementor-28754 .elementor-element.elementor-element-27946ac > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-28754 .elementor-element.elementor-element-1176db3{width:100%;max-width:100%;}.elementor-28754 .elementor-element.elementor-element-1176db3 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-28754 .elementor-element.elementor-element-85f7133{width:100%;max-width:100%;}.elementor-28754 .elementor-element.elementor-element-85f7133 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-28754 .elementor-element.elementor-element-1697a85{width:100%;max-width:100%;}.elementor-28754 .elementor-element.elementor-element-1697a85 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-28754 .elementor-element.elementor-element-c8a3177{width:100%;max-width:100%;}.elementor-28754 .elementor-element.elementor-element-c8a3177 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-28754 .elementor-element.elementor-element-cc5a2c2{width:100%;max-width:100%;}.elementor-28754 .elementor-element.elementor-element-cc5a2c2 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-28754 .elementor-element.elementor-element-78dcab3{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overlay-opacity:0.7;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-28754 .elementor-element.elementor-element-78dcab3::before, .elementor-28754 .elementor-element.elementor-element-78dcab3 > .elementor-background-video-container::before, .elementor-28754 .elementor-element.elementor-element-78dcab3 > .e-con-inner > .elementor-background-video-container::before, .elementor-28754 .elementor-element.elementor-element-78dcab3 > .elementor-background-slideshow::before, .elementor-28754 .elementor-element.elementor-element-78dcab3 > .e-con-inner > .elementor-background-slideshow::before, .elementor-28754 .elementor-element.elementor-element-78dcab3 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#000000;--background-overlay:'';}.elementor-28754 .elementor-element.elementor-element-78dcab3.e-con{--align-self:center;}.elementor-28754 .elementor-element.elementor-element-9c25fbd{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-28754 .elementor-element.elementor-element-9c25fbd > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-28754 .elementor-element.elementor-element-9c25fbd.elementor-element{--align-self:stretch;}.elementor-28754 .elementor-element.elementor-element-4d93ba0{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}/* Start custom CSS for html, class: .elementor-element-27946ac *//*
 * ==================================================
 * NAIL WITCHES - ЛОКАЛЬНЫЙ CSS СТРАНИЦЫ УСЛУГИ
 * Только: Hero, Прайс, Галерея, Контакты
 * ==================================================
 */

/* ===== 1. HERO SECTION (Главный экран услуги) ===== */
.nail-service-hero {
    position: relative;
    min-height: 80vh;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    padding: 5rem 1.5rem 4rem;
}

.nail-service-hero-bg { position: absolute; inset: 0; z-index: 0; }
.nail-service-hero-bg-image { position: absolute; inset: 0; background-size: cover; background-position: center; }
.nail-service-hero-overlay { position: absolute; inset: 0; background: rgba(41, 41, 42, 0.95); }

.nail-service-hero-statue {
    position: absolute; inset: 0; display: flex; align-items: flex-end;
    justify-content: center; opacity: 0.2; animation: nail-scale-in 1.5s ease-out;
}
.nail-service-hero-statue img { height: 75vh; object-fit: cover; object-position: bottom; mix-blend-mode: lighten; }

.nail-service-hero-gradient { position: absolute; inset: 0; }
.nail-service-hero-gradient-1 { background: radial-gradient(circle at 50% 50%, rgba(206, 167, 94, 0.15) 0%, transparent 70%); animation: nail-pulse 4s ease-in-out infinite; }
.nail-service-hero-gradient-2 { top: 25%; left: 25%; width: 384px; height: 384px; background: radial-gradient(circle, rgba(206, 167, 94, 0.15) 0%, transparent 70%); filter: blur(60px); animation: nail-pulse 6s ease-in-out infinite; }
.nail-service-hero-gradient-3 { bottom: 25%; right: 25%; width: 384px; height: 384px; background: radial-gradient(circle, rgba(160, 190, 214, 0.15) 0%, transparent 70%); filter: blur(60px); animation: nail-pulse 7s ease-in-out infinite 1s; }

.nail-service-hero-rays { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 100%; height: 100%; pointer-events: none; }
.nail-service-hero-ray { position: absolute; top: 50%; left: 50%; width: 2px; height: 120px; background: linear-gradient(to bottom, rgba(206, 167, 94, 0.3), transparent); transform-origin: top; animation: nail-pulse 3s ease-in-out infinite; }

.nail-service-hero-particles, .nail-service-hero-symbols { position: absolute; inset: 0; pointer-events: none; }
.nail-service-hero-particle { position: absolute; border-radius: 50%; animation: nail-float 4s ease-in-out infinite; }
.nail-service-hero-symbol { position: absolute; color: var(--nail-color-gold); opacity: 0.2; animation: nail-rotate 8s linear infinite, nail-pulse 3s ease-in-out infinite; }
.nail-service-hero-symbol svg { filter: drop-shadow(0 0 8px rgba(206, 167, 94, 0.6)); }

.nail-service-hero-corner { position: absolute; width: 96px; height: 96px; opacity: 0.3; animation: nail-scale-in 1s ease-out; }
.nail-service-hero-corner-tl { top: 2rem; left: 2rem; border-left: 2px solid rgba(206, 167, 94, 0.3); border-top: 2px solid rgba(206, 167, 94, 0.3); border-top-left-radius: 24px; }
.nail-service-hero-corner-tr { top: 2rem; right: 2rem; border-right: 2px solid rgba(206, 167, 94, 0.3); border-top: 2px solid rgba(206, 167, 94, 0.3); border-top-right-radius: 24px; animation-delay: 0.2s; }
.nail-service-hero-corner-bl { bottom: 2rem; left: 2rem; border-left: 2px solid rgba(160, 190, 214, 0.3); border-bottom: 2px solid rgba(160, 190, 214, 0.3); border-bottom-left-radius: 24px; animation-delay: 0.4s; }
.nail-service-hero-corner-br { bottom: 2rem; right: 2rem; border-right: 2px solid rgba(160, 190, 214, 0.3); border-bottom: 2px solid rgba(160, 190, 214, 0.3); border-bottom-right-radius: 24px; animation-delay: 0.6s; }

.nail-service-hero-content { position: relative; z-index: 10; max-width: 1280px; margin: 0 auto; text-align: center; padding: 0 1.5rem; }

.nail-service-hero-back { position: absolute; left: 1.5rem; top: 0; animation: nail-fade-in-left 0.8s ease-out; }
.nail-service-hero-back-link { display: inline-flex; align-items: center; gap: 0.5rem; color: var(--nail-color-light); text-decoration: none; padding: 0.5rem 1rem; border-radius: var(--nail-radius-md); transition: var(--nail-transition-base); position: relative; }
.nail-service-hero-back-link:hover { color: var(--nail-color-gold); background: rgba(206, 167, 94, 0.1); }
.nail-service-hero-back-link:hover svg { transform: translateX(-4px); }
.nail-service-hero-back-link svg { transition: var(--nail-transition-base); }

.nail-service-hero-header-decor { display: flex; align-items: center; justify-content: center; gap: 0.75rem; margin-bottom: 2rem; animation: nail-fade-in-up 0.8s ease-out 0.3s backwards; }
.nail-service-hero-icon { width: 20px; height: 20px; color: var(--nail-color-gold); filter: drop-shadow(0 0 10px rgba(206, 167, 94, 0.8)); }
.nail-service-hero-icon-rotate { animation: nail-rotate 8s linear infinite; }
.nail-service-hero-icon-rotate-reverse { animation: nail-rotate-reverse 8s linear infinite; }
.nail-service-hero-line { width: 64px; height: 1px; }
.nail-service-hero-line-1 { background: linear-gradient(to right, transparent, var(--nail-color-gold)); animation: nail-line-grow 3s ease-in-out infinite; }
.nail-service-hero-line-2 { background: linear-gradient(to left, transparent, var(--nail-color-gold)); animation: nail-line-grow 3s ease-in-out infinite 1.5s; }
.nail-service-hero-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--nail-color-gold); box-shadow: 0 0 20px rgba(206, 167, 94, 1); animation: nail-pulse 2s ease-in-out infinite; }

.nail-service-hero-title-wrapper { position: relative; animation: nail-fade-in-up 0.8s ease-out 0.4s backwards; }
.nail-service-hero-aura { position: absolute; inset: 0; background: rgba(206, 167, 94, 0.2); filter: blur(60px); z-index: -1; animation: nail-pulse 3s ease-in-out infinite; }
.nail-service-hero-title { font-size: clamp(2.5rem, 8vw, 5rem); font-weight: var(--nail-font-weight-bold); color: var(--nail-color-light); margin-bottom: 1.5rem; position: relative; display: inline-block; }

.nail-service-hero-title-decor { position: absolute; bottom: -3rem; left: 50%; transform: translateX(-50%); width: 100%; display: flex; flex-direction: column; align-items: center; gap: 0.5rem; }
.nail-service-hero-title-line-main { width: 192px; height: 2px; background: linear-gradient(to right, transparent, var(--nail-color-gold), transparent); animation: nail-line-grow 0.8s ease-out 0.8s backwards; }
.nail-service-hero-title-dots { display: flex; align-items: center; gap: 0.75rem; }
.nail-service-hero-title-dot-blue { width: 6px; height: 6px; border-radius: 50%; background: var(--nail-color-blue); box-shadow: 0 0 15px rgba(160, 190, 214, 0.8); }
.nail-service-hero-title-dot-pulse { animation: nail-pulse 2s ease-in-out infinite; }
.nail-service-hero-title-dot-pulse-delayed { animation: nail-pulse 2s ease-in-out infinite 0.5s; }
.nail-service-hero-title-line-secondary { width: 128px; height: 1px; background: linear-gradient(to right, transparent, var(--nail-color-blue), transparent); animation: nail-line-grow 0.6s ease-out 1s backwards; }

.nail-service-hero-description-wrapper { position: relative; max-width: 768px; margin: 4rem auto 0; animation: nail-fade-in-up 0.8s ease-out 0.6s backwards; }
.nail-service-hero-description-border { position: absolute; inset: -1.5rem; border: 1px solid rgba(206, 167, 94, 0.2); border-radius: var(--nail-radius-lg); opacity: 0.3; }
.nail-service-hero-description-glow { position: absolute; inset: -1.5rem; background: linear-gradient(to right, transparent, rgba(206, 167, 94, 0.1), transparent); border-radius: var(--nail-radius-lg); animation: nail-pulse 4s ease-in-out infinite; }
.nail-service-hero-description { font-size: clamp(1rem, 2vw, 1.25rem); color: rgba(249, 249, 249, 0.8); line-height: 1.8; position: relative; z-index: 10; padding: 0 1rem; }

.nail-service-hero-corner-dot { position: absolute; width: 8px; height: 8px; border-radius: 50%; background: var(--nail-color-gold); box-shadow: 0 0 15px rgba(206, 167, 94, 0.8); }
.nail-service-hero-corner-dot-1 { top: -24px; left: -24px; animation: nail-scale-in 0.5s ease-out 1.2s backwards; }
.nail-service-hero-corner-dot-2 { top: -24px; right: -24px; animation: nail-scale-in 0.5s ease-out 1.3s backwards; }
.nail-service-hero-corner-dot-3 { bottom: -24px; left: -24px; animation: nail-scale-in 0.5s ease-out 1.4s backwards; }
.nail-service-hero-corner-dot-4 { bottom: -24px; right: -24px; animation: nail-scale-in 0.5s ease-out 1.5s backwards; }

.nail-service-hero-footer-decor { display: flex; flex-direction: column; align-items: center; gap: 1.5rem; margin-top: 4rem; animation: nail-scale-in 1s ease-out 1s backwards; }
.nail-service-hero-footer-line-1 { display: flex; align-items: center; gap: 1rem; }
.nail-service-hero-footer-line-left, .nail-service-hero-footer-line-right { width: 96px; height: 1px; }
.nail-service-hero-footer-line-left { background: linear-gradient(to right, transparent, var(--nail-color-gold)); animation: nail-line-grow 3s ease-in-out infinite; }
.nail-service-hero-footer-line-right { background: linear-gradient(to left, transparent, var(--nail-color-gold)); animation: nail-line-grow 3s ease-in-out infinite 1.5s; }
.nail-service-hero-footer-heart { width: 20px; height: 20px; color: var(--nail-color-gold); filter: drop-shadow(0 0 10px rgba(206, 167, 94, 0.8)); animation: nail-rotate 4s linear infinite; }
.nail-service-hero-footer-line-2 { display: flex; align-items: center; gap: 0.75rem; }
.nail-service-hero-footer-dot { border-radius: 50%; background: var(--nail-color-blue); animation: nail-pulse 2s ease-in-out infinite; }
.nail-service-hero-footer-dot-1, .nail-service-hero-footer-dot-2, .nail-service-hero-footer-dot-4, .nail-service-hero-footer-dot-5 { width: 4px; height: 4px; box-shadow: 0 0 10px rgba(160, 190, 214, 0.6); }
.nail-service-hero-footer-dot-3 { width: 8px; height: 8px; box-shadow: 0 0 20px rgba(160, 190, 214, 1); animation-delay: 0.4s; }


/* ===== 2. PRICING SECTION (Прайс-лист) ===== */
.nail-pricing { position: relative; padding: 4rem 1.5rem; background: var(--nail-color-dark); overflow: hidden; }
.nail-pricing-bg { position: absolute; inset: 0; opacity: 0.1; }
.nail-pricing-glow { position: absolute; border-radius: 50%; filter: blur(80px); }
.nail-pricing-glow-1 { top: 5rem; left: 2.5rem; width: 384px; height: 384px; background: radial-gradient(circle, rgba(206, 167, 94, 0.5) 0%, transparent 70%); animation: nail-pulse 8s ease-in-out infinite; }
.nail-pricing-glow-2 { bottom: 5rem; right: 2.5rem; width: 384px; height: 384px; background: radial-gradient(circle, rgba(160, 190, 214, 0.5) 0%, transparent 70%); animation: nail-pulse 10s ease-in-out infinite 1s; }

.nail-pricing-particles { position: absolute; inset: 0; pointer-events: none; }
.nail-pricing-particle { position: absolute; width: 8px; height: 8px; border-radius: 50%; background: var(--nail-color-gold); animation: nail-float 4s ease-in-out infinite; }
.nail-pricing-particle-1 { left: 10%; top: 20%; }
.nail-pricing-particle-2 { left: 85%; top: 15%; width: 4px; height: 4px; animation-delay: 0.5s; }
.nail-pricing-particle-3 { left: 15%; top: 70%; width: 6px; height: 6px; animation-delay: 1s; }
.nail-pricing-particle-4 { left: 90%; top: 60%; animation-delay: 1.5s; }
.nail-pricing-particle-5 { left: 50%; top: 10%; width: 4px; height: 4px; animation-delay: 2s; }
.nail-pricing-particle-6 { left: 30%; top: 85%; animation-delay: 2.5s; }
.nail-pricing-particle-7 { left: 70%; top: 80%; width: 6px; height: 6px; animation-delay: 3s; }

.nail-pricing-edge-line { position: absolute; width: 1px; height: 128px; }
.nail-pricing-edge-line-left { left: 0; top: 25%; background: linear-gradient(to bottom, transparent, rgba(206, 167, 94, 0.3), transparent); }
.nail-pricing-edge-line-right { right: 0; top: 66%; background: linear-gradient(to bottom, transparent, rgba(160, 190, 214, 0.3), transparent); }

.nail-pricing-container { max-width: 1536px; margin: 0 auto; position: relative; z-index: 10; }
.nail-pricing-header { text-align: center; margin-bottom: 5rem; position: relative; }
.nail-pricing-star { position: absolute; color: var(--nail-color-gold); }
.nail-pricing-star-1 { top: -2rem; left: 50%; transform: translateX(-50%); opacity: 0.4; animation: nail-rotate 20s linear infinite, nail-pulse 3s ease-in-out infinite; }
.nail-pricing-star-2 { top: -1rem; left: 33%; opacity: 0.3; animation: nail-rotate-reverse 15s linear infinite, nail-pulse 2.5s ease-in-out infinite; }
.nail-pricing-star-3 { top: -1rem; right: 33%; opacity: 0.25; animation: nail-rotate 18s linear infinite, nail-pulse 3.5s ease-in-out infinite; }

.nail-pricing-title-wrapper { display: flex; align-items: center; justify-content: center; gap: 1rem; margin-bottom: 1.5rem; }
.nail-pricing-sparkle { width: 24px; height: 24px; color: var(--nail-color-gold); }
.nail-pricing-sparkle-left { animation: nail-rotate 4s linear infinite; }
.nail-pricing-sparkle-right { animation: nail-rotate-reverse 4s linear infinite; }
.nail-pricing-title { font-size: clamp(2rem, 5vw, 3rem); font-weight: var(--nail-font-weight-bold); color: var(--nail-color-light); }

.nail-pricing-title-decor { display: flex; align-items: center; justify-content: center; gap: 0.5rem; }
.nail-pricing-title-line { height: 2px; }
.nail-pricing-title-line-1 { width: 64px; background: linear-gradient(to right, transparent, var(--nail-color-blue), transparent); }
.nail-pricing-title-line-2 { width: 128px; background: linear-gradient(to right, transparent, var(--nail-color-gold), transparent); }
.nail-pricing-title-line-3 { width: 64px; background: linear-gradient(to left, transparent, var(--nail-color-blue), transparent); }
.nail-pricing-title-dot { width: 8px; height: 8px; border-radius: 50%; }
.nail-pricing-title-dot-1 { background: var(--nail-color-gold); box-shadow: 0 0 20px rgba(206, 167, 94, 0.8); animation: nail-pulse 2s ease-in-out infinite; }
.nail-pricing-title-dot-2 { background: var(--nail-color-blue); box-shadow: 0 0 20px rgba(160, 190, 214, 0.8); animation: nail-pulse 2s ease-in-out infinite 0.5s; }

/* Обновленная сетка в две колонки */
.nail-pricing-list { display: flex; flex-direction: column; gap: 5rem; }
.nail-pricing-category-header { text-align: center; margin-bottom: 3rem; }
.nail-pricing-category-title { font-size: 2.25rem; font-weight: var(--nail-font-weight-bold); color: var(--nail-color-gold); text-transform: uppercase; letter-spacing: 0.05em; margin-bottom: 1rem; }
.nail-pricing-category-divider { height: 1px; width: 120px; margin: 0 auto; background: linear-gradient(90deg, transparent, var(--nail-color-gold), transparent); }
.nail-pricing-category-items { display: grid; grid-template-columns: 1fr; gap: 1.5rem; }
@media (min-width: 1024px) { .nail-pricing-category-items { grid-template-columns: repeat(2, 1fr); gap: 2rem; } }

.nail-pricing-card-link { text-decoration: none; display: block; height: 100%; transition: transform var(--nail-transition-base); }
.nail-pricing-card-link:hover { transform: translateY(-4px); }

.nail-pricing-card { background: linear-gradient(to bottom right, #2f2f30, var(--nail-color-dark)); border: 1px solid rgba(249, 249, 249, 0.1); border-radius: var(--nail-radius-xl); padding: 2rem; position: relative; overflow: hidden; box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3); transition: var(--nail-transition-slow); height: 100%; }
.nail-pricing-card-link:hover .nail-pricing-card { border-color: rgba(206, 167, 94, 0.4); }

.nail-pricing-card-glow { position: absolute; inset: 0; background: radial-gradient(circle at 0% 50%, rgba(206, 167, 94, 0.15) 0%, transparent 60%); opacity: 0; transition: opacity 0.5s ease; }
.nail-pricing-card-link:hover .nail-pricing-card-glow { opacity: 1; }

.nail-pricing-card-spark { position: absolute; top: 1rem; right: 1rem; color: var(--nail-color-gold); filter: drop-shadow(0 0 8px rgba(206, 167, 94, 0.8)); opacity: 0; transition: opacity 0.3s ease; animation: nail-rotate 3s linear infinite; }
.nail-pricing-card-link:hover .nail-pricing-card-spark { opacity: 1; }

.nail-pricing-card-content { position: relative; z-index: 10; display: flex; align-items: flex-start; gap: 1.5rem; }
.nail-pricing-card-number { flex-shrink: 0; width: 48px; height: 48px; border-radius: 50%; background: linear-gradient(to bottom right, rgba(206, 167, 94, 0.2), rgba(160, 190, 214, 0.2)); border: 1px solid rgba(206, 167, 94, 0.3); box-shadow: 0 0 20px rgba(206, 167, 94, 0.2); display: flex; align-items: center; justify-content: center; color: var(--nail-color-gold); font-weight: var(--nail-font-weight-semibold); transition: var(--nail-transition-base); }
.nail-pricing-card-link:hover .nail-pricing-card-number { border-color: var(--nail-color-gold); }

.nail-pricing-card-info { flex: 1; }
.nail-pricing-card-name { font-size: clamp(1.125rem, 2vw, 1.5rem); font-weight: var(--nail-font-weight-semibold); color: var(--nail-color-light); margin-bottom: 0.75rem; transition: var(--nail-transition-base); }
.nail-pricing-card-link:hover .nail-pricing-card-name { color: var(--nail-color-gold); }
.nail-pricing-card-description { font-size: 0.875rem; color: rgba(249, 249, 249, 0.6); margin-bottom: 0.75rem; line-height: 1.6; }
.nail-pricing-card-duration { display: flex; align-items: center; gap: 0.5rem; color: var(--nail-color-blue); font-size: 0.875rem; }

.nail-pricing-card-price-wrapper { display: flex; align-items: center; gap: 0.75rem; flex-shrink: 0; }
.nail-pricing-card-price-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--nail-color-gold); box-shadow: 0 0 15px rgba(206, 167, 94, 0.8); opacity: 0; transition: opacity 0.3s ease; animation: nail-rotate 4s linear infinite; }
.nail-pricing-card-link:hover .nail-pricing-card-price-dot { opacity: 1; }
.nail-pricing-card-price { font-size: clamp(1.125rem, 2vw, 1.5rem); font-weight: var(--nail-font-weight-bold); color: var(--nail-color-gold); white-space: nowrap; }

.nail-pricing-card-line { position: absolute; bottom: 0; left: 0; right: 0; height: 2px; background: linear-gradient(to right, rgba(206, 167, 94, 0.4), rgba(160, 190, 214, 0.2), transparent); transform: scaleX(0); transform-origin: left; transition: transform 0.8s ease; }
.nail-pricing-item.nail-visible .nail-pricing-card-line { transform: scaleX(1); }
.nail-pricing-card-line-dot { position: absolute; bottom: 0; left: -10%; width: 8px; height: 8px; border-radius: 50%; background: var(--nail-color-gold); box-shadow: 0 0 20px rgba(206, 167, 94, 1); filter: blur(1px); opacity: 0; animation: nail-pricing-dot-move 3s linear infinite; }
.nail-pricing-card-link:hover .nail-pricing-card-line-dot { opacity: 1; }

.nail-pricing-footer { text-align: center; margin-top: 4rem; }
.nail-pricing-footer-content { position: relative; display: inline-block; }
.nail-pricing-footer-border { position: absolute; inset: -1rem; border: 1px solid rgba(206, 167, 94, 0.2); border-radius: var(--nail-radius-md); }
.nail-pricing-footer-glow { position: absolute; inset: -1rem; background: linear-gradient(to right, transparent, rgba(206, 167, 94, 0.05), transparent); border-radius: var(--nail-radius-md); animation: nail-pulse 3s ease-in-out infinite; }
.nail-pricing-footer-text { position: relative; z-index: 10; padding: 1rem 2rem; }
.nail-pricing-footer-main { font-size: 0.875rem; color: rgba(249, 249, 249, 0.7); margin-bottom: 0.5rem; }
.nail-pricing-footer-sub { font-size: 0.75rem; color: rgba(160, 190, 214, 0.6); }
.nail-pricing-footer-decor { display: flex; align-items: center; justify-content: center; gap: 0.75rem; margin-top: 2rem; }
.nail-pricing-footer-line { width: 64px; height: 1px; }
.nail-pricing-footer-line-left { background: linear-gradient(to right, transparent, var(--nail-color-blue)); }
.nail-pricing-footer-line-right { background: linear-gradient(to left, transparent, var(--nail-color-blue)); }
.nail-pricing-footer-star { color: var(--nail-color-blue); }

@keyframes nail-pricing-dot-move { from { left: -10%; } to { left: 110%; } }


/* ===== 3. GALLERY SECTION (Галерея страницы услуг) ===== */
.nail-service-gallery, .nail-gallery {
    position: relative;
    padding: 4rem 1.5rem;
    background: var(--nail-color-dark);
    overflow: hidden;
}

.nail-service-gallery-bg, .nail-gallery-bg { position: absolute; inset: 0; pointer-events: none; overflow: hidden; }
.nail-service-gallery-glow, .nail-gallery-glow-1, .nail-gallery-glow-2 { position: absolute; border-radius: 50%; filter: blur(100px); }
.nail-service-gallery-glow-1, .nail-gallery-glow-1 { top: 5rem; right: 0; width: 600px; height: 600px; background: radial-gradient(circle, rgba(206, 167, 94, 0.3) 0%, transparent 70%); animation: nail-pulse 10s ease-in-out infinite; }
.nail-service-gallery-glow-2, .nail-gallery-glow-2 { bottom: 0; left: 0; width: 500px; height: 500px; background: radial-gradient(circle, rgba(160, 190, 214, 0.25) 0%, transparent 70%); animation: nail-pulse 12s ease-in-out infinite 3s; }

.nail-service-gallery-container, .nail-gallery-container { max-width: 1280px; margin: 0 auto; position: relative; z-index: 10; }
.nail-service-gallery-header { text-align: center; margin-bottom: 4rem; }
.nail-service-gallery-title-wrapper { display: flex; align-items: center; justify-content: center; gap: 0.75rem; margin-bottom: 1rem; }
.nail-service-gallery-sparkle { width: 24px; height: 24px; color: var(--nail-color-gold); animation: nail-rotate 4s linear infinite; }
.nail-service-gallery-title { font-size: clamp(2rem, 5vw, 3rem); font-weight: var(--nail-font-weight-bold); color: var(--nail-color-light); }
.nail-service-gallery-description { font-size: clamp(1rem, 2vw, 1.25rem); color: rgba(249, 249, 249, 0.7); max-width: 768px; margin: 0 auto 1.5rem; }
.nail-service-gallery-title-line { width: 96px; height: 2px; background: linear-gradient(to right, transparent, var(--nail-color-gold), transparent); margin: 0 auto; }

.nail-gallery-grid { display: grid; grid-template-columns: repeat(1, 1fr); gap: 2rem; }
@media (min-width: 768px) { .nail-gallery-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .nail-gallery-grid { grid-template-columns: repeat(3, 1fr); } }

.nail-gallery-item {
    aspect-ratio: 1 / 1;
    position: relative;
    overflow: hidden;
    border-radius: var(--nail-radius-xl);
    box-shadow: var(--nail-shadow-xl);
    cursor: pointer;
    transition: all var(--nail-transition-base);
    background: linear-gradient(110deg, var(--nail-color-dark) 8%, #3a3a3b 18%, var(--nail-color-dark) 33%);
    background-size: 200% 100%;
    animation: 1.5s nail-skeleton-loading linear infinite;
}

@keyframes nail-skeleton-loading { to { background-position-x: -200%; } }

.nail-gallery-item:hover { transform: translateY(-12px); }
.nail-gallery-item-image { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform var(--nail-transition-slower); position: relative; z-index: 1; }
.nail-gallery-item:hover .nail-gallery-item-image { transform: scale(1.1); }

.nail-gallery-item-border { position: absolute; inset: 0; border-radius: var(--nail-radius-xl); background: linear-gradient(135deg, rgba(206, 167, 94, 0.6), rgba(160, 190, 214, 0.6)); padding: 3px; -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0); mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0); -webkit-mask-composite: xor; mask-composite: exclude; opacity: 0; transition: opacity var(--nail-transition-slow); pointer-events: none; z-index: 20; }
.nail-gallery-item:hover .nail-gallery-item-border { opacity: 1; }

.nail-gallery-item-badge { position: absolute; top: 1rem; left: 1rem; z-index: 10; background: linear-gradient(90deg, var(--nail-color-gold), var(--nail-color-gold-light)); padding: 0.5rem 1rem; border-radius: var(--nail-radius-full); box-shadow: var(--nail-shadow-lg); }
.nail-gallery-item-category { font-size: 0.75rem; font-weight: var(--nail-font-weight-semibold); color: var(--nail-color-dark); text-transform: uppercase; letter-spacing: 0.05em; }

.nail-gallery-item-overlay { position: absolute; inset: 0; background: linear-gradient(to top, rgba(41, 41, 42, 1) 0%, rgba(41, 41, 42, 0.8) 50%, transparent 100%); display: flex; flex-direction: column; justify-content: flex-end; padding: 1.5rem; opacity: 0; transition: opacity var(--nail-transition-slow); z-index: 10; }
.nail-gallery-item:hover .nail-gallery-item-overlay { opacity: 1; }
.nail-gallery-item-title { font-size: 1.5rem; font-weight: var(--nail-font-weight-medium); color: var(--nail-color-gold); margin-bottom: 0.75rem; }

.nail-gallery-item-glow { position: absolute; inset: 0; background: radial-gradient(circle at center, rgba(206, 167, 94, 0.15), transparent 60%); opacity: 0; transition: opacity var(--nail-transition-slower); pointer-events: none; }
.nail-gallery-item:hover .nail-gallery-item-glow { opacity: 1; }


/* ===== 4. CONTACT SECTION (Контакты на странице услуги) ===== */
.nail-service-contact, .nail-contact {
    position: relative;
    padding: 4rem 1.5rem;
    background: var(--nail-color-dark);
    overflow: hidden;
}

.nail-service-contact-bg { position: absolute; inset: 0; opacity: 0.3; }
.nail-service-contact-glow { position: absolute; top: 50%; left: 30%; width: 600px; height: 600px; background: radial-gradient(circle, rgba(160, 190, 214, 0.3), transparent 70%); border-radius: 50%; filter: blur(80px); }

.nail-service-contact-container, .nail-contact-container { max-width: 1280px; margin: 0 auto; position: relative; z-index: 10; }
.nail-service-contact-header { text-align: center; margin-bottom: 4rem; }
.nail-service-contact-title-decor { display: flex; align-items: center; justify-content: center; gap: 0.75rem; margin-bottom: 1rem; }
.nail-service-contact-line { width: 48px; height: 2px; }
.nail-service-contact-line:first-child { background: linear-gradient(to right, transparent, var(--nail-color-gold)); }
.nail-service-contact-line:last-child { background: linear-gradient(to left, transparent, var(--nail-color-gold)); }
.nail-service-contact-icon { width: 20px; height: 20px; color: var(--nail-color-gold); flex-shrink: 0; }
.nail-service-contact-subtitle { font-size: 0.875rem; letter-spacing: 0.3em; color: var(--nail-color-gold); text-transform: uppercase; }
.nail-service-contact-title { font-size: clamp(2rem, 5vw, 3.5rem); font-weight: var(--nail-font-weight-bold); color: var(--nail-color-light); margin-bottom: 1.5rem; }
.nail-service-contact-title-line-wrapper { display: flex; align-items: center; justify-content: center; gap: 0.75rem; margin-bottom: 1.5rem; }
.nail-service-contact-title-line-1, .nail-service-contact-title-line-2 { width: 96px; height: 2px; }
.nail-service-contact-title-line-1 { background: linear-gradient(to right, transparent, var(--nail-color-gold), var(--nail-color-blue)); }
.nail-service-contact-title-line-2 { background: linear-gradient(to left, transparent, var(--nail-color-blue), var(--nail-color-gold)); }
.nail-service-contact-title-icon { width: 16px; height: 16px; color: var(--nail-color-gold); flex-shrink: 0; }
.nail-service-contact-description { font-size: clamp(1rem, 2vw, 1.25rem); color: rgba(249, 249, 249, 0.7); max-width: 700px; margin: 0 auto; }

.nail-service-contact-info, .nail-contact-info { display: grid; grid-template-columns: repeat(1, 1fr); gap: 2rem; margin-bottom: 3rem; }
@media (min-width: 768px) { .nail-service-contact-info, .nail-contact-content { grid-template-columns: repeat(3, 1fr); } } /* Или 3 в зависимости от дизайна */

.nail-service-contact-item, .nail-contact-item { position: relative; display: flex; flex-direction: column; align-items: center; text-align: center; padding: 2rem; background: rgba(58, 58, 59, 0.5); border-radius: var(--nail-radius-lg); border: 1px solid rgba(249, 249, 249, 0.1); transition: var(--nail-transition-slow); }
.nail-service-contact-item:hover, .nail-contact-item:hover { border-color: rgba(206, 167, 94, 0.3); transform: translateY(-8px); }
.nail-service-contact-item-glow { position: absolute; inset: -1rem; border-radius: var(--nail-radius-lg); filter: blur(40px); background: radial-gradient(circle, rgba(160, 190, 214, 0.4) 0%, transparent 70%); opacity: 0; transition: opacity 0.5s ease; z-index: 0; }
.nail-service-contact-item:hover .nail-service-contact-item-glow { opacity: 0.4; }
.nail-service-contact-item-icon { width: 48px; height: 48px; color: var(--nail-color-gold); margin-bottom: 1rem; position: relative; z-index: 10; }
.nail-service-contact-item-content { position: relative; z-index: 10; }
.nail-service-contact-item-title { font-size: 1.125rem; font-weight: var(--nail-font-weight-semibold); color: var(--nail-color-light); margin-bottom: 0.5rem; }
.nail-service-contact-item-link, .nail-service-contact-item-text { font-size: 1rem; color: rgba(249, 249, 249, 0.7); text-decoration: none; transition: var(--nail-transition-base); }
.nail-service-contact-item-link:hover { color: var(--nail-color-gold); }

/* Кнопка записи */
.nail-service-contact-cta { text-align: center; }
.nail-service-contact-btn { display: inline-flex; align-items: center; gap: 0.75rem; padding: 1rem 2.5rem; background: linear-gradient(90deg, var(--nail-color-gold), var(--nail-color-gold-light)); color: var(--nail-color-dark); text-decoration: none; font-size: 1.125rem; font-weight: var(--nail-font-weight-semibold); border-radius: var(--nail-radius-full); box-shadow: 0 8px 24px rgba(206, 167, 94, 0.3); transition: var(--nail-transition-base); position: relative; overflow: hidden; }
.nail-service-contact-btn:hover { transform: translateY(-4px); box-shadow: 0 12px 32px rgba(206, 167, 94, 0.5); }
.nail-service-contact-btn-text, .nail-service-contact-btn-icon { position: relative; z-index: 10; }
.nail-service-contact-btn-icon { width: 20px; height: 20px; }
.nail-service-contact-btn-decor { display: flex; align-items: center; justify-content: center; gap: 0.5rem; margin-top: 2rem; }
.nail-service-contact-btn-dot { width: 4px; height: 4px; border-radius: 50%; background: var(--nail-color-gold); animation: nail-pulse 2s ease-in-out infinite; }
.nail-service-contact-btn-dot-1 { animation-delay: 0s; }
.nail-service-contact-btn-dot-2 { animation-delay: 0.3s; width: 6px; height: 6px; }
.nail-service-contact-btn-dot-3 { animation-delay: 0.6s; }


/* ===== 5. АДАПТИВНОСТЬ (RESPONSIVE) ДЛЯ ЛОКАЛЬНЫХ СЕКЦИЙ ===== */

/* Мобильные устройства (< 640px) */
@media (max-width: 639px) {
    .nail-service-hero { padding: 4rem 1rem 3rem; }
    .nail-service-hero-back { position: static; margin-bottom: 2rem; }
    .nail-service-hero-corner { width: 48px; height: 48px; }
    
    .nail-pricing, .nail-service-gallery, .nail-service-contact, .nail-gallery, .nail-contact { padding: 3rem 1rem; }
    
    .nail-pricing-card { padding: 1.5rem; }
    .nail-pricing-card-content { flex-direction: column; }
    
    .nail-service-contact-info { gap: 1.5rem; }
    .nail-service-contact-item { padding: 1.5rem; }
}

/* Планшеты (640px - 1024px) */
@media (min-width: 640px) and (max-width: 1023px) {
    .nail-service-hero { padding: 4.5rem 1.5rem 3.5rem; }
    .nail-pricing, .nail-service-gallery, .nail-service-contact, .nail-gallery, .nail-contact { padding: 3.5rem 1.5rem; }
}

/* Десктопы (>= 1280px) */
@media (min-width: 1280px) {
    .nail-service-hero, .nail-pricing, .nail-service-gallery, .nail-service-contact, .nail-gallery, .nail-contact {
        padding-top: 5rem;
        padding-bottom: 5rem;
    }
}/* End custom CSS */