:root {
    --gold: #d4af37;
}

#vision-toggle {
    position: fixed;
    bottom: 30px;
    right: 30px;
    width: 85px;
    height: 85px;
    background: var(--gold, #d4af37);
    color: #1a1a1a;
    border: none;
    border-radius: 50%;
    cursor: pointer;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    user-select: none;
    transition: none;
    padding: 12px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.3);
    overflow: hidden;
}

#vision-toggle img {
    width: 55px;
    height: 55px;
    object-fit: contain;
    border-radius: 50%;
    flex-shrink: 0;
    display: block;
}

#vision-toggle .vision-text {
    display: none;
}

#vision-panel {
    position: fixed;
    top: -9999px;
    left: 0;
    right: 0;
    width: 100%;
    padding: 20px;
    z-index: 9998;
    transition: top 0.4s ease;
    background: #1a1a1a;
    color: white;
    box-shadow: 0 10px 40px rgba(0,0,0,0.5);
    box-sizing: border-box;
}

#vision-panel.open {
    top: 0;
}

#vision-panel h3 {
    margin-top: 0;
    margin-bottom: 15px;
    font-size: 24px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}

#vision-panel h3 button {
    border: none;
    padding: 8px 20px;
    border-radius: 5px;
    font-size: 16px;
    cursor: pointer;
    background: #1a73e8;
    color: white;
}

.panel-row {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 20px;
    align-items: center;
    margin-bottom: 8px;
    padding: 8px 10px;
    border-radius: 5px;
    background: #2a2a2a;
}

.panel-row:last-of-type {
    margin-bottom: 0;
}

.panel-row label {
    min-width: 180px;
    font-size: 16px;
    font-weight: bold;
}

.panel-row button {
    padding: 6px 14px;
    border-radius: 5px;
    cursor: pointer;
    font-size: 14px;
    background: #444;
    color: white;
    border: 2px solid transparent;
}

.panel-row button.active-style {
    background: #1a73e8;
}

.panel-row input[type="range"] {
    flex: 1;
    min-width: 100px;
    max-width: 200px;
    cursor: pointer;
    accent-color: #1a73e8;
}

.panel-row input[type="range"] + span {
    min-width: 40px;
    text-align: center;
    font-size: 14px;
}

body.images-hidden #vision-toggle {
    width: auto !important;
    height: auto !important;
    min-width: 140px;
    min-height: 55px;
    border-radius: 10px !important;
    padding: 10px 20px !important;
    background: var(--gold, #d4af37) !important;
}

body.images-hidden #vision-toggle img {
    display: none !important;
}

body.images-hidden #vision-toggle .vision-text {
    display: block !important;
    font-size: 14px;
    font-weight: bold;
    text-align: center;
    line-height: 1.2;
    color: #1a1a1a;
    padding: 0;
}

body.images-hidden #vision-toggle .vision-text span {
    display: block;
    font-size: 13px;
    font-weight: normal;
    color: #555;
}

body.contrast-mode {
    background: #000000 !important;
    color: #ffffff !important;
}
body.contrast-mode *,
body.contrast-mode p,
body.contrast-mode span,
body.contrast-mode div,
body.contrast-mode h1,
body.contrast-mode h2,
body.contrast-mode h3,
body.contrast-mode h4,
body.contrast-mode h5,
body.contrast-mode li,
body.contrast-mode a,
body.contrast-mode label,
body.contrast-mode td,
body.contrast-mode th,
body.contrast-mode strong,
body.contrast-mode b,
body.contrast-mode .text,
body.contrast-mode .desc,
body.contrast-mode .price,
body.contrast-mode .subtitle,
body.contrast-mode .feature-text,
body.contrast-mode .review-card p,
body.contrast-mode .review-card h4,
body.contrast-mode .service-content p,
body.contrast-mode .service-content h3,
body.contrast-mode .location-info p,
body.contrast-mode .location-info a,
body.contrast-mode .booking-hint,
body.contrast-mode .logo,
body.contrast-mode .phone,
body.contrast-mode .feature-item span,
body.contrast-mode .hero-features-inline span,
body.contrast-mode .block-min .text,
body.contrast-mode .block-min span,
body.contrast-mode .info-text,
body.contrast-mode .data-text,
body.contrast-mode .btn,
body.contrast-mode .btn-outline,
body.contrast-mode .btn-block,
body.contrast-mode .links-information,
body.contrast-mode .address,
body.contrast-mode .classes,
body.contrast-mode .classes-name,
body.contrast-mode .name,
body.contrast-mode .map,
body.contrast-mode .application,
body.contrast-mode .reviews,
body.contrast-mode .WhyWe,
body.contrast-mode .process,
body.contrast-mode .price,
body.contrast-mode .address,
body.contrast-mode .container,
body.contrast-mode .info,
body.contrast-mode .info-block,
body.contrast-mode .el,
body.contrast-mode .block,
body.contrast-mode .block-min,
body.contrast-mode .money,
body.contrast-mode .block_service1,
body.contrast-mode .block_service2,
body.contrast-mode .block_service3,
body.contrast-mode .block_service4,
body.contrast-mode .service-item,
body.contrast-mode .service-content,
body.contrast-mode .modal-body,
body.contrast-mode .modal-header,
body.contrast-mode .modal-footer,
body.contrast-mode .modal-content,
body.contrast-mode .modal-dialog,
body.contrast-mode .menu-fixed,
body.contrast-mode .container-m,
body.contrast-mode .burger,
body.contrast-mode .hamburger,
body.contrast-mode .burger-open,
body.contrast-mode .menu-open,
body.contrast-mode .menu-a,
body.contrast-mode .social-menu,
body.contrast-mode .img-phone,
body.contrast-mode .phone-mob {
    color: #ffffff !important;
}
body.contrast-mode header,
body.contrast-mode footer,
body.contrast-mode .menu,
body.contrast-mode .content,
body.contrast-mode .card,
body.contrast-mode .block,
body.contrast-mode .service-item,
body.contrast-mode #hero,
body.contrast-mode #features,
body.contrast-mode #booking,
body.contrast-mode section,
body.contrast-mode .review-card,
body.contrast-mode .carousel-btn,
body.contrast-mode .dot,
body.contrast-mode .panel-row,
body.contrast-mode .info-block,
body.contrast-mode .btn-block,
body.contrast-mode .address,
body.contrast-mode .address .info-block,
body.contrast-mode .address .info-block .address-info,
body.contrast-mode .links-information,
body.contrast-mode .process .block,
body.contrast-mode .reviews .block,
body.contrast-mode .application .block,
body.contrast-mode .block-min,
body.contrast-mode .info-text,
body.contrast-mode .additionally,
body.contrast-mode .modal-header,
body.contrast-mode .modal-content,
body.contrast-mode .modal-body,
body.contrast-mode .modal-dialog,
body.contrast-mode .modal-footer,
body.contrast-mode .classes-name,
body.contrast-mode .classes,
body.contrast-mode .name,
body.contrast-mode .block_service1,
body.contrast-mode .block_service2,
body.contrast-mode .block_service3,
body.contrast-mode .block_service4,
body.contrast-mode .service-item,
body.contrast-mode .menu-fixed {
    background: #000000 !important;
    border-color: #ffffff !important;
}
body.contrast-mode #vision-panel {
    background: #000000 !important;
    color: #ffffff !important;
}
body.contrast-mode #vision-panel h3 button {
    background: #0052BD !important;
    color: #ffffff !important;
}
body.contrast-mode .panel-row {
    background: #1a1a1a !important;
}
body.contrast-mode .panel-row button {
    background: #333 !important;
    color: #ffffff !important;
}
body.contrast-mode .panel-row button.active-style {
    background: #0052BD !important;
}
body.contrast-mode .panel-row button#reset-all {
    background: #0052BD !important;
    color: #ffffff !important;
    border: 2px solid transparent;
}
body.contrast-mode .btn,
body.contrast-mode .button,
body.contrast-mode .btn-outline {
    background: #ffffff !important;
    color: #000000 !important;
    border-color: #ffffff !important;
}
body.contrast-mode input,
body.contrast-mode textarea,
body.contrast-mode select {
    color: black !important;
    border: 2px solid #ffffff !important;
}
body.contrast-mode input::placeholder,
body.contrast-mode textarea::placeholder {
    color: #999999 !important;
}
body.contrast-mode input:focus,
body.contrast-mode textarea:focus {
    border-color: #ffffff !important;
    outline-color: #ffffff !important;
}
body.contrast-mode .status-dot {
    background: #ffffff !important;
}
body.contrast-mode a {
    color: #66ccff !important;
}
body.contrast-mode .stars {
    color: #ffcc00 !important;
}
body.contrast-mode .block_service1,
body.contrast-mode .block_service2,
body.contrast-mode .block_service3,
body.contrast-mode .block_service4,
body.contrast-mode .block.el.el-show {
    background: transparent !important;
}
body.contrast-mode img {
    display: inline !important;
}
body.contrast-mode .burger .hamburger,
body.contrast-mode .burger .hamburger::before,
body.contrast-mode .burger .hamburger::after {
    background: #ffffff !important;
}
body.contrast-mode .burger-open .hamburger {
    background: transparent !important;
}
body.contrast-mode .burger-open .hamburger::before,
body.contrast-mode .burger-open .hamburger::after {
    background: #ffffff !important;
}
body.contrast-mode label,
body.contrast-mode label span,
body.contrast-mode label strong,
body.contrast-mode .form-label,
body.contrast-mode .control-label {
    background: transparent !important;
    color: #ffffff !important;
}
body.contrast-mode #vision-toggle {
    background: #ffffff !important;
}
body.contrast-mode #vision-toggle img {
    filter: none !important;
}
body.contrast-mode #vision-toggle .vision-text {
    color: #000000 !important;
}
body.contrast-mode #vision-toggle .vision-text span {
    color: #333333 !important;
}
body.contrast-mode .WhyWe .info-block .block .block-min::before {
    background: transparent !important;
}
body.contrast-mode .price .info-block .block.block_service1::before,
body.contrast-mode .price .info-block .block.block_service2::before,
body.contrast-mode .price .info-block .block.block_service3::before,
body.contrast-mode .price .info-block .block.block_service4::before {
    background: transparent !important;
}
body.contrast-mode .price .info-block .block .text .info {
    max-height: 450px !important;
    opacity: 1 !important;
    margin: 36px 0 !important;
    overflow: visible !important;
}
body.contrast-mode .price .info-block .block .text h2 {
    min-height: auto !important;
}

body.blue-mode {
    background: #0a2a5e !important;
    color: #ffffff !important;
}
body.blue-mode *,
body.blue-mode p,
body.blue-mode span,
body.blue-mode div,
body.blue-mode h1,
body.blue-mode h2,
body.blue-mode h3,
body.blue-mode h4,
body.blue-mode h5,
body.blue-mode li,
body.blue-mode a,
body.blue-mode label,
body.blue-mode td,
body.blue-mode th,
body.blue-mode strong,
body.blue-mode b,
body.blue-mode .text,
body.blue-mode .desc,
body.blue-mode .price,
body.blue-mode .subtitle,
body.blue-mode .feature-text,
body.blue-mode .review-card p,
body.blue-mode .review-card h4,
body.blue-mode .service-content p,
body.blue-mode .service-content h3,
body.blue-mode .location-info p,
body.blue-mode .location-info a,
body.blue-mode .booking-hint,
body.blue-mode .logo,
body.blue-mode .phone,
body.blue-mode .feature-item span,
body.blue-mode .hero-features-inline span,
body.blue-mode .block-min .text,
body.blue-mode .block-min span,
body.blue-mode .info-text,
body.blue-mode .data-text,
body.blue-mode .btn,
body.blue-mode .btn-outline,
body.blue-mode .btn-block,
body.blue-mode .links-information,
body.blue-mode .address,
body.blue-mode .classes,
body.blue-mode .classes-name,
body.blue-mode .name,
body.blue-mode .map,
body.blue-mode .application,
body.blue-mode .reviews,
body.blue-mode .WhyWe,
body.blue-mode .process,
body.blue-mode .price,
body.blue-mode .address,
body.blue-mode .container,
body.blue-mode .info,
body.blue-mode .info-block,
body.blue-mode .el,
body.blue-mode .block,
body.blue-mode .block-min,
body.blue-mode .money,
body.blue-mode .block_service1,
body.blue-mode .block_service2,
body.blue-mode .block_service3,
body.blue-mode .block_service4,
body.blue-mode .service-item,
body.blue-mode .service-content,
body.blue-mode .modal-body,
body.blue-mode .modal-header,
body.blue-mode .modal-footer,
body.blue-mode .modal-content,
body.blue-mode .modal-dialog,
body.blue-mode .menu-fixed,
body.blue-mode .container-m,
body.blue-mode .burger,
body.blue-mode .hamburger,
body.blue-mode .burger-open,
body.blue-mode .menu-open,
body.blue-mode .menu-a,
body.blue-mode .social-menu,
body.blue-mode .img-phone,
body.blue-mode .phone-mob {
    color: #ffffff !important;
}
body.blue-mode header,
body.blue-mode footer,
body.blue-mode .menu,
body.blue-mode .content,
body.blue-mode .card,
body.blue-mode .block,
body.blue-mode .service-item,
body.blue-mode #hero,
body.blue-mode #features,
body.blue-mode #booking,
body.blue-mode section,
body.blue-mode .review-card,
body.blue-mode .carousel-btn,
body.blue-mode .dot,
body.blue-mode .panel-row,
body.blue-mode .info-block,
body.blue-mode .btn-block,
body.blue-mode .address,
body.blue-mode .address .info-block,
body.blue-mode .address .info-block .address-info,
body.blue-mode .links-information,
body.blue-mode .process .block,
body.blue-mode .reviews .block,
body.blue-mode .application .block,
body.blue-mode .block-min,
body.blue-mode .info-text,
body.blue-mode .additionally,
body.blue-mode .modal-header,
body.blue-mode .modal-content,
body.blue-mode .modal-body,
body.blue-mode .modal-dialog,
body.blue-mode .modal-footer,
body.blue-mode .classes-name,
body.blue-mode .classes,
body.blue-mode .name,
body.blue-mode .block_service1,
body.blue-mode .block_service2,
body.blue-mode .block_service3,
body.blue-mode .block_service4,
body.blue-mode .service-item,
body.blue-mode .menu-fixed {
    background: #0a2a5e !important;
    border-color: #0052BD !important;
}
body.blue-mode #vision-panel {
    background: #0a2a5e !important;
    color: #ffffff !important;
}
body.blue-mode #vision-panel h3 button {
    background: #0052BD !important;
    color: #ffffff !important;
}
body.blue-mode .panel-row {
    background: #1a3a7e !important;
}
body.blue-mode .panel-row button {
    background: #2a4a8e !important;
    color: #ffffff !important;
}
body.blue-mode .panel-row button.active-style {
    background: #0052BD !important;
}
body.blue-mode .panel-row button#reset-all {
    background: #0052BD !important;
    color: #ffffff !important;
    border: 2px solid transparent;
}
body.blue-mode .btn,
body.blue-mode .button,
body.blue-mode .btn-outline {
    background: #0052BD !important;
    color: #ffffff !important;
    border-color: #0052BD !important;
}
body.blue-mode input,
body.blue-mode textarea,
body.blue-mode select {
    color: #0052BD !important;
    border: 2px solid #0052BD !important;
}
body.blue-mode input::placeholder,
body.blue-mode textarea::placeholder {
    color: #88aadd !important;
}
body.blue-mode input:focus,
body.blue-mode textarea:focus {
    border-color: #0052BD !important;
    outline-color: #0052BD !important;
}
body.blue-mode .status-dot {
    background: #0052BD !important;
}
body.blue-mode .stars {
    color: #ffcc00 !important;
}
body.blue-mode img {
    display: inline !important;
}
body.blue-mode .block_service1,
body.blue-mode .block_service2,
body.blue-mode .block_service3,
body.blue-mode .block_service4,
body.blue-mode .block.el.el-show {
    background: transparent !important;
}
body.blue-mode .burger .hamburger,
body.blue-mode .burger .hamburger::before,
body.blue-mode .burger .hamburger::after {
    background: #ffffff !important;
}
body.blue-mode .burger-open .hamburger {
    background: transparent !important;
}
body.blue-mode .burger-open .hamburger::before,
body.blue-mode .burger-open .hamburger::after {
    background: #ffffff !important;
}
body.blue-mode label,
body.blue-mode label span,
body.blue-mode label strong,
body.blue-mode .form-label,
body.blue-mode .control-label {
    background: transparent !important;
    color: #ffffff !important;
}
body.blue-mode #vision-toggle {
    background: #0052BD !important;
}
body.blue-mode #vision-toggle img {
    filter: none !important;
}
body.blue-mode #vision-toggle .vision-text span {
    color: #cccccc !important;
}
body.blue-mode .WhyWe .info-block .block .block-min::before {
    background: transparent !important;
}
body.blue-mode .price .info-block .block.block_service1::before,
body.blue-mode .price .info-block .block.block_service2::before,
body.blue-mode .price .info-block .block.block_service3::before,
body.blue-mode .price .info-block .block.block_service4::before {
    background: transparent !important;
}
body.blue-mode .price .info-block .block .text .info {
    max-height: 450px !important;
    opacity: 1 !important;
    margin: 36px 0 !important;
    overflow: visible !important;
}
body.blue-mode .price .info-block .block .text h2 {
    min-height: auto !important;
}

body.brown-mode {
    background: #f5e6d3 !important;
    color: #4a2c1a !important;
}
body.brown-mode *,
body.brown-mode p,
body.brown-mode span,
body.brown-mode div,
body.brown-mode h1,
body.brown-mode h2,
body.brown-mode h3,
body.brown-mode h4,
body.brown-mode h5,
body.brown-mode li,
body.brown-mode a,
body.brown-mode label,
body.brown-mode td,
body.brown-mode th,
body.brown-mode strong,
body.brown-mode b,
body.brown-mode .text,
body.brown-mode .desc,
body.brown-mode .price,
body.brown-mode .subtitle,
body.brown-mode .feature-text,
body.brown-mode .review-card p,
body.brown-mode .review-card h4,
body.brown-mode .service-content p,
body.brown-mode .service-content h3,
body.brown-mode .location-info p,
body.brown-mode .location-info a,
body.brown-mode .booking-hint,
body.brown-mode .logo,
body.brown-mode .phone,
body.brown-mode .feature-item span,
body.brown-mode .hero-features-inline span,
body.brown-mode .block-min .text,
body.brown-mode .block-min span,
body.brown-mode .info-text,
body.brown-mode .data-text,
body.brown-mode .btn,
body.brown-mode .btn-outline,
body.brown-mode .btn-block,
body.brown-mode .links-information,
body.brown-mode .address,
body.brown-mode .classes,
body.brown-mode .classes-name,
body.brown-mode .name,
body.brown-mode .map,
body.brown-mode .application,
body.brown-mode .reviews,
body.brown-mode .WhyWe,
body.brown-mode .process,
body.brown-mode .price,
body.brown-mode .address,
body.brown-mode .container,
body.brown-mode .info,
body.brown-mode .info-block,
body.brown-mode .el,
body.brown-mode .block,
body.brown-mode .block-min,
body.brown-mode .money,
body.brown-mode .block_service1,
body.brown-mode .block_service2,
body.brown-mode .block_service3,
body.brown-mode .block_service4,
body.brown-mode .service-item,
body.brown-mode .service-content,
body.brown-mode .modal-body,
body.brown-mode .modal-header,
body.brown-mode .modal-footer,
body.brown-mode .modal-content,
body.brown-mode .modal-dialog,
body.brown-mode .menu-fixed,
body.brown-mode .container-m,
body.brown-mode .burger,
body.brown-mode .hamburger,
body.brown-mode .burger-open,
body.brown-mode .menu-open,
body.brown-mode .menu-a,
body.brown-mode .social-menu,
body.brown-mode .img-phone,
body.brown-mode .phone-mob {
    color: #4a2c1a !important;
}
body.brown-mode header,
body.brown-mode footer,
body.brown-mode .menu,
body.brown-mode .content,
body.brown-mode .card,
body.brown-mode .block,
body.brown-mode .service-item,
body.brown-mode #hero,
body.brown-mode #features,
body.brown-mode #booking,
body.brown-mode section,
body.brown-mode .review-card,
body.brown-mode .carousel-btn,
body.brown-mode .dot,
body.brown-mode .panel-row,
body.brown-mode .info-block,
body.brown-mode .btn-block,
body.brown-mode .address,
body.brown-mode .address .info-block,
body.brown-mode .address .info-block .address-info,
body.brown-mode .links-information,
body.brown-mode .process .block,
body.brown-mode .reviews .block,
body.brown-mode .application .block,
body.brown-mode .block-min,
body.brown-mode .info-text,
body.brown-mode .additionally,
body.brown-mode .modal-header,
body.brown-mode .modal-content,
body.brown-mode .modal-body,
body.brown-mode .modal-dialog,
body.brown-mode .modal-footer,
body.brown-mode .classes-name,
body.brown-mode .classes,
body.brown-mode .name,
body.brown-mode .block_service1,
body.brown-mode .block_service2,
body.brown-mode .block_service3,
body.brown-mode .block_service4,
body.brown-mode .service-item,
body.brown-mode .menu-fixed {
    background: #f5e6d3 !important;
    border-color: #5D4022 !important;
}
body.brown-mode #vision-panel {
    background: #f5e6d3 !important;
    color: #4a2c1a !important;
}
body.brown-mode #vision-panel h3 button {
    background: #5D4022 !important;
    color: #f5e6d3 !important;
}
body.brown-mode .panel-row {
    background: #e8d5c0 !important;
}
body.brown-mode .panel-row button {
    background: #F5E6D3 !important;
    color: #4a2c1a !important;
}
body.brown-mode .panel-row button.active-style {
    background: #5D4022 !important;
    color: #f5e6d3 !important;
}
body.brown-mode .panel-row button#reset-all {
    background: #5D4022 !important;
    color: #f5e6d3 !important;
    border: 2px solid transparent;
}
body.brown-mode .btn,
body.brown-mode .button,
body.brown-mode .btn-outline {
    background: #5D4022 !important;
    color: #f5e6d3 !important;
    border-color: #5D4022 !important;
}

body.contrast-mode input,
body.contrast-mode textarea,
body.contrast-mode select {
    color: black !important;
    background: #fff !important;
    border: 2px solid black !important;
}

body.brown-mode input,
body.brown-mode textarea,
body.brown-mode select {
    color: #4a2c1a !important;
    background: #fff !important;
    border: 2px solid #4a2c1a !important;
}

body.blue-mode input,
body.blue-mode textarea,
body.blue-mode select {
    color: #003399  !important;
    background: #fff !important;
    border: 2px solid #003399 !important;
}

body.green-mode input,
body.green-mode textarea,
body.green-mode select {
    color: #4a2c1a !important;
    background: #fff !important;
    border: 2px solid #4a2c1a !important;}

body.brown-mode input::placeholder,
body.brown-mode textarea::placeholder {
    color: #5D4022 !important;
}
body.brown-mode input:focus,
body.brown-mode textarea:focus {
    border-color: #5D4022 !important;
    outline-color: #5D4022 !important;
}
body.brown-mode a {
    color: #4a2c1a !important;
}
body.brown-mode .stars {
    color: #5D4022 !important;
}
body.brown-mode img {
    display: inline !important;
}
body.brown-mode .block_service1,
body.brown-mode .block_service2,
body.brown-mode .block_service3,
body.brown-mode .block_service4,
body.brown-mode .block.el.el-show {
    background: transparent !important;
}
body.brown-mode .burger .hamburger,
body.brown-mode .burger .hamburger::before,
body.brown-mode .burger .hamburger::after {
    background: #4a2c1a !important;
}
body.brown-mode .burger-open .hamburger {
    background: transparent !important;
}
body.brown-mode .burger-open .hamburger::before,
body.brown-mode .burger-open .hamburger::after {
    background: #4a2c1a !important;
}
body.brown-mode label,
body.brown-mode label span,
body.brown-mode label strong,
body.brown-mode .form-label,
body.brown-mode .control-label {
    background: transparent !important;
    color: #4a2c1a !important;
}
body.brown-mode #vision-toggle {
    background: #5D4022 !important;
}
body.brown-mode #vision-toggle img {
    filter: none !important;
}
body.brown-mode #vision-toggle .vision-text {
    color: #f5e6d3 !important;
}
body.brown-mode #vision-toggle .vision-text span {
    color: #F5E6D3 !important;
}
body.brown-mode .WhyWe .info-block .block .block-min::before {
    background: transparent !important;
}
body.brown-mode .price .info-block .block.block_service1::before,
body.brown-mode .price .info-block .block.block_service2::before,
body.brown-mode .price .info-block .block.block_service3::before,
body.brown-mode .price .info-block .block.block_service4::before {
    background: transparent !important;
}
body.brown-mode .price .info-block .block .text .info {
    max-height: 450px !important;
    opacity: 1 !important;
    margin: 36px 0 !important;
    overflow: visible !important;
}
body.brown-mode .price .info-block .block .text h2 {
    min-height: auto !important;
}

body.green-mode {
    background: #2d1f14 !important;
    color: #c8e6c9 !important;
}
body.green-mode *,
body.green-mode p,
body.green-mode span,
body.green-mode div,
body.green-mode h1,
body.green-mode h2,
body.green-mode h3,
body.green-mode h4,
body.green-mode h5,
body.green-mode li,
body.green-mode a,
body.green-mode label,
body.green-mode td,
body.green-mode th,
body.green-mode strong,
body.green-mode b,
body.green-mode .text,
body.green-mode .desc,
body.green-mode .price,
body.green-mode .subtitle,
body.green-mode .feature-text,
body.green-mode .review-card p,
body.green-mode .review-card h4,
body.green-mode .service-content p,
body.green-mode .service-content h3,
body.green-mode .location-info p,
body.green-mode .location-info a,
body.green-mode .booking-hint,
body.green-mode .logo,
body.green-mode .phone,
body.green-mode .feature-item span,
body.green-mode .hero-features-inline span,
body.green-mode .block-min .text,
body.green-mode .block-min span,
body.green-mode .info-text,
body.green-mode .data-text,
body.green-mode .btn,
body.green-mode .btn-outline,
body.green-mode .btn-block,
body.green-mode .links-information,
body.green-mode .address,
body.green-mode .classes,
body.green-mode .classes-name,
body.green-mode .name,
body.green-mode .map,
body.green-mode .application,
body.green-mode .reviews,
body.green-mode .WhyWe,
body.green-mode .process,
body.green-mode .price,
body.green-mode .address,
body.green-mode .container,
body.green-mode .info,
body.green-mode .info-block,
body.green-mode .el,
body.green-mode .block,
body.green-mode .block-min,
body.green-mode .money,
body.green-mode .block_service1,
body.green-mode .block_service2,
body.green-mode .block_service3,
body.green-mode .block_service4,
body.green-mode .service-item,
body.green-mode .service-content,
body.green-mode .modal-body,
body.green-mode .modal-header,
body.green-mode .modal-footer,
body.green-mode .modal-content,
body.green-mode .modal-dialog,
body.green-mode .menu-fixed,
body.green-mode .container-m,
body.green-mode .burger,
body.green-mode .hamburger,
body.green-mode .burger-open,
body.green-mode .menu-open,
body.green-mode .menu-a,
body.green-mode .social-menu,
body.green-mode .img-phone,
body.green-mode .phone-mob {
    color: #c8e6c9 !important;
}
body.green-mode header,
body.green-mode footer,
body.green-mode .menu,
body.green-mode .content,
body.green-mode .card,
body.green-mode .block,
body.green-mode .service-item,
body.green-mode #hero,
body.green-mode #features,
body.green-mode #booking,
body.green-mode section,
body.green-mode .review-card,
body.green-mode .carousel-btn,
body.green-mode .dot,
body.green-mode .panel-row,
body.green-mode .info-block,
body.green-mode .btn-block,
body.green-mode .address,
body.green-mode .address .info-block,
body.green-mode .address .info-block .address-info,
body.green-mode .links-information,
body.green-mode .process .block,
body.green-mode .reviews .block,
body.green-mode .application .block,
body.green-mode .block-min,
body.green-mode .info-text,
body.green-mode .additionally,
body.green-mode .modal-header,
body.green-mode .modal-content,
body.green-mode .modal-body,
body.green-mode .modal-dialog,
body.green-mode .modal-footer,
body.green-mode .classes-name,
body.green-mode .classes,
body.green-mode .name,
body.green-mode .block_service1,
body.green-mode .block_service2,
body.green-mode .block_service3,
body.green-mode .block_service4,
body.green-mode .service-item,
body.green-mode .menu-fixed {
    background: #2d1f14 !important;
    border-color: #65C869 !important;
}
body.green-mode #vision-panel {
    background: #2d1f14 !important;
    color: #c8e6c9 !important;
}
body.green-mode #vision-panel h3 button {
    background: #65C869 !important;
    color: #2d1f14 !important;
}
body.green-mode .panel-row {
    background: #3d2b1f !important;
}
body.green-mode .panel-row button {
    background: #4a3a2a !important;
    color: #c8e6c9 !important;
}
body.green-mode .panel-row button.active-style {
    background: #65C869 !important;
    color: #2d1f14 !important;
}
body.green-mode .panel-row button#reset-all {
    background: #65C869 !important;
    color: #2d1f14 !important;
    border: 2px solid transparent;
}
body.green-mode .btn,
body.green-mode .button,
body.green-mode .btn-outline {
    background: #65C869 !important;
    color: #2d1f14 !important;
    border-color: #65C869 !important;
}
body.green-mode input,
body.green-mode textarea,
body.green-mode select {
    color: #2d1f14 !important;
    border: 2px solid #65C869 !important;
}
body.green-mode input::placeholder,
body.green-mode textarea::placeholder {
    color: #88aa88 !important;
}
body.green-mode input:focus,
body.green-mode textarea:focus {
    border-color: #65C869 !important;
    outline-color: #65C869 !important;
}
body.green-mode a {
    color: #C8E6C9 !important;
}
body.green-mode .stars {
    color: #65C869 !important;
}
body.green-mode img {
    display: inline !important;
}
body.green-mode .block_service1,
body.green-mode .block_service2,
body.green-mode .block_service3,
body.green-mode .block_service4,
body.green-mode .block.el.el-show {
    background: transparent !important;
}
body.green-mode .burger .hamburger,
body.green-mode .burger .hamburger::before,
body.green-mode .burger .hamburger::after {
    background: #c8e6c9 !important;
}
body.green-mode .burger-open .hamburger {
    background: transparent !important;
}
body.green-mode .burger-open .hamburger::before,
body.green-mode .burger-open .hamburger::after {
    background: #c8e6c9 !important;
}
body.green-mode label,
body.green-mode label span,
body.green-mode label strong,
body.green-mode .form-label,
body.green-mode .control-label {
    background: transparent !important;
    color: #c8e6c9 !important;
}
body.green-mode #vision-toggle {
    background: #65C869 !important;
}
body.green-mode #vision-toggle img {
    filter: none !important;
}
body.green-mode #vision-toggle .vision-text {
    color: #2d1f14 !important;
}
body.green-mode #vision-toggle .vision-text span {
    color: #2d1f14 !important;
}
body.green-mode .WhyWe .info-block .block .block-min::before {
    background: transparent !important;
}
body.green-mode .price .info-block .block.block_service1::before,
body.green-mode .price .info-block .block.block_service2::before,
body.green-mode .price .info-block .block.block_service3::before,
body.green-mode .price .info-block .block.block_service4::before {
    background: transparent !important;
}
body.green-mode .price .info-block .block .text .info {
    max-height: 450px !important;
    opacity: 1 !important;
    margin: 36px 0 !important;
    overflow: visible !important;
}
body.green-mode .price .info-block .block .text h2 {
    min-height: auto !important;
}

body.images-hidden img,
body.images-hidden video {
    display: none !important;
}
body.images-hidden .service-img {
    display: none !important;
}
body.images-hidden .review-avatar {
    display: none !important;
}
body.images-hidden * {
    background-image: none !important;
}
body.images-hidden video[autoplay],
body.images-hidden video[loop] {
    display: none !important;
}

body.font-times-mode * {
    font-family: 'Times New Roman', Times, serif !important;
}

body.font-medium-mode p,
body.font-medium-mode li,
body.font-medium-mode .text,
body.font-medium-mode .desc,
body.font-medium-mode .card,
body.font-medium-mode .block,
body.font-medium-mode .content,
body.font-medium-mode .menu,
body.font-medium-mode .footer,
body.font-medium-mode .header,
body.font-medium-mode td,
body.font-medium-mode th,
body.font-medium-mode label,
body.font-medium-mode input,
body.font-medium-mode textarea,
body.font-medium-mode .panel-row,
body.font-medium-mode span,
body.font-medium-mode .review-card p,
body.font-medium-mode .service-content p,
body.font-medium-mode .location-info p,
body.font-medium-mode .booking-hint,
body.font-medium-mode .price,
body.font-medium-mode .subtitle,
body.font-medium-mode .feature-text,
body.font-medium-mode .info-text,
body.font-medium-mode .data-text,
body.font-medium-mode .phone,
body.font-medium-mode .logo-text,
body.font-medium-mode .btn,
body.font-medium-mode .btn-outline,
body.font-medium-mode .btn-block,
body.font-medium-mode .links-information,
body.font-medium-mode .address,
body.font-medium-mode .classes,
body.font-medium-mode .classes-name,
body.font-medium-mode .name,
body.font-medium-mode .map,
body.font-medium-mode .application,
body.font-medium-mode .reviews,
body.font-medium-mode .WhyWe,
body.font-medium-mode .process,
body.font-medium-mode .price,
body.font-medium-mode .address,
body.font-medium-mode .container,
body.font-medium-mode .info,
body.font-medium-mode .info-block,
body.font-medium-mode .el,
body.font-medium-mode .block,
body.font-medium-mode .block-min,
body.font-medium-mode .money,
body.font-medium-mode .block_service1,
body.font-medium-mode .block_service2,
body.font-medium-mode .block_service3,
body.font-medium-mode .block_service4,
body.font-medium-mode .service-item,
body.font-medium-mode .service-content {
    font-size: 22px !important;
    line-height: 1.7 !important;
}
body.font-medium-mode h1 {
    font-size: 44px !important;
}
body.font-medium-mode h2 {
    font-size: 38px !important;
}
body.font-medium-mode h3 {
    font-size: 32px !important;
}
body.font-medium-mode .logo {
    font-size: 1.8rem !important;
}
body.font-medium-mode .phone {
    font-size: 1.4rem !important;
}
body.font-medium-mode #vision-toggle {
    width: 72px !important;
    height: 72px !important;
}
body.font-medium-mode .panel-row button {
    font-size: 22px !important;
    padding: 10px 22px !important;
}
body.font-medium-mode .panel-row label {
    font-size: 20px !important;
}
body.font-medium-mode #vision-panel h3 {
    font-size: 30px !important;
}
body.font-medium-mode #vision-panel h3 button {
    font-size: 20px !important;
}

body.font-large-mode p,
body.font-large-mode li,
body.font-large-mode .text,
body.font-large-mode .desc,
body.font-large-mode .card,
body.font-large-mode .block,
body.font-large-mode .content,
body.font-large-mode .menu,
body.font-large-mode .footer,
body.font-large-mode .header,
body.font-large-mode td,
body.font-large-mode th,
body.font-large-mode label,
body.font-large-mode input,
body.font-large-mode textarea,
body.font-large-mode .panel-row,
body.font-large-mode span,
body.font-large-mode .review-card p,
body.font-large-mode .service-content p,
body.font-large-mode .location-info p,
body.font-large-mode .booking-hint,
body.font-large-mode .price,
body.font-large-mode .subtitle,
body.font-large-mode .feature-text,
body.font-large-mode .info-text,
body.font-large-mode .data-text,
body.font-large-mode .phone,
body.font-large-mode .logo-text,
body.font-large-mode .btn,
body.font-large-mode .btn-outline,
body.font-large-mode .btn-block,
body.font-large-mode .links-information,
body.font-large-mode .address,
body.font-large-mode .classes,
body.font-large-mode .classes-name,
body.font-large-mode .name,
body.font-large-mode .map,
body.font-large-mode .application,
body.font-large-mode .reviews,
body.font-large-mode .WhyWe,
body.font-large-mode .process,
body.font-large-mode .price,
body.font-large-mode .address,
body.font-large-mode .container,
body.font-large-mode .info,
body.font-large-mode .info-block,
body.font-large-mode .el,
body.font-large-mode .block,
body.font-large-mode .block-min,
body.font-large-mode .money,
body.font-large-mode .block_service1,
body.font-large-mode .block_service2,
body.font-large-mode .block_service3,
body.font-large-mode .block_service4,
body.font-large-mode .service-item,
body.font-large-mode .service-content {
    font-size: 30px !important;
    line-height: 1.8 !important;
}
body.font-large-mode h1 {
    font-size: 60px !important;
}
body.font-large-mode h2 {
    font-size: 52px !important;
}
body.font-large-mode h3 {
    font-size: 44px !important;
}
body.font-large-mode .logo {
    font-size: 2rem !important;
}
body.font-large-mode .phone {
    font-size: 1.6rem !important;
}
body.font-large-mode #vision-toggle {
    width: 80px !important;
    height: 80px !important;
}
body.font-large-mode .panel-row button {
    font-size: 30px !important;
    padding: 14px 30px !important;
}
body.font-large-mode .panel-row label {
    font-size: 26px !important;
}
body.font-large-mode #vision-panel h3 {
    font-size: 38px !important;
}
body.font-large-mode #vision-panel h3 button {
    font-size: 26px !important;
}



@media (max-width: 600px) {
    #vision-toggle {
        right: 20px !important;
        bottom: 20px !important;
        width: 70px !important;
        height: 70px !important;
        padding: 10px !important;
    }
    #vision-toggle img {
        width: 45px !important;
        height: 45px !important;
    }
    #vision-panel {
        padding: 15px;
    }
    .panel-row {
        flex-direction: column;
        align-items: stretch;
    }
    .panel-row label {
        min-width: auto;
    }
    .panel-row input[type="range"] {
        max-width: 100%;
    }
    body.images-hidden #vision-toggle {
        min-width: 110px !important;
        min-height: 45px !important;
        padding: 8px 15px !important;
    }
    body.images-hidden #vision-toggle .vision-text {
        font-size: 12px !important;
    }
    body.images-hidden #vision-toggle .vision-text span {
        font-size: 11px !important;
    }
    body.font-medium-mode p,
    body.font-medium-mode li,
    body.font-medium-mode .text,
    body.font-medium-mode .desc {
        font-size: 18px !important;
    }
    body.font-medium-mode h1 {
        font-size: 32px !important;
    }
    body.font-medium-mode h2 {
        font-size: 28px !important;
    }
    body.font-medium-mode #vision-toggle {
        width: 60px !important;
        height: 60px !important;
    }
    body.font-medium-mode .panel-row button {
        font-size: 18px !important;
        padding: 8px 18px !important;
    }
    body.font-medium-mode .panel-row label {
        font-size: 16px !important;
    }
    body.font-medium-mode #vision-panel h3 {
        font-size: 24px !important;
    }
    body.font-medium-mode #vision-panel h3 button {
        font-size: 16px !important;
    }
    body.font-large-mode p,
    body.font-large-mode li,
    body.font-large-mode .text,
    body.font-large-mode .desc {
        font-size: 24px !important;
    }
    body.font-large-mode h1 {
        font-size: 40px !important;
    }
    body.font-large-mode h2 {
        font-size: 34px !important;
    }
    body.font-large-mode #vision-toggle {
        width: 65px !important;
        height: 65px !important;
    }
    body.font-large-mode .panel-row button {
        font-size: 24px !important;
        padding: 10px 24px !important;
    }
    body.font-large-mode .panel-row label {
        font-size: 20px !important;
    }
    body.font-large-mode #vision-panel h3 {
        font-size: 30px !important;
    }
    body.font-large-mode #vision-panel h3 button {
        font-size: 20px !important;
    }
    
    .panel-row button#reset-all {
        font-weight: bold !important;
        color: white !important;
        padding: 10px 30px !important;
        border-radius: 8px !important;
        transition: all 0.2s ease !important;
        width: 100% !important;
        letter-spacing: 0.5px !important;
    }
    
    #speech-btn {
        min-width: 140px;
    }
    #speech-btn.reading {
        background: #65C869 !important;
        color: white !important;
    }
    #speech-btn:not(.reading) {
        background: #666 !important;
        color: white !important;
    }
    
    #speech-selection-btn {
        min-width: 160px;
    }
    #speech-selection-btn.active {
        background: #1a73e8;
        color: white;
    }
    #speech-selection-btn:not(.active) {
        background: #555 !important;
        color: #aaa !important;
        border-color: #555 !important;
    }
    
    .speech-status {
        display: none !important;
    }
}

@media (max-width: 400px) {
    #vision-toggle {
        width: 60px !important;
        height: 60px !important;
        padding: 8px !important;
    }
    #vision-toggle img {
        width: 38px !important;
        height: 38px !important;
    }
    body.images-hidden #vision-toggle {
        min-width: 90px !important;
        min-height: 40px !important;
        padding: 6px 12px !important;
    }
    body.images-hidden #vision-toggle .vision-text {
        font-size: 10px !important;
    }
    body.images-hidden #vision-toggle .vision-text span {
        font-size: 9px !important;
    }
}