/* Modern Modal Styles - restored from original site */
.page-modal-content { display: block; width: 100%; min-width: 1140px; height: 100%; position: fixed; top: 0; left: 0; z-index: 100; background: #FFF; overflow: hidden; }
.page-modal-content .loading { display: block; width: 100%; height: 100%; background: #eaeff3 url(../images/loading-modal.gif) no-repeat center center; position: absolute; top: 0; left: 0; z-index: 10; -webkit-transition: all 800ms cubic-bezier(0.250, 0.460, 0.450, 0.940); -moz-transition: all 800ms cubic-bezier(0.250, 0.460, 0.450, 0.940); -o-transition: all 800ms cubic-bezier(0.250, 0.460, 0.450, 0.940); transition: all 800ms cubic-bezier(0.250, 0.460, 0.450, 0.940); }
.page-modal-content .loading.success { top: -100%; }
.page-modal-content .product-wrap { width: 100%; height: 100%; background: #eaeff3; position: absolute; top: 0; left: 0; overflow: auto; }
.page-modal-content .product-wrap .product-image { width: 50%; height: 100%; float: left; background: url(../images/product-image-bg.jpg) no-repeat center center; position: relative; background-size: cover; overflow: hidden; text-align: center; }
.page-modal-content .product-wrap .product-image img { max-width: 100%; height: auto; }
.page-modal-content .product-wrap .product-info { width: 50%; height: 100%; float: left; display: table; }
.page-modal-content .product-wrap .product-info .cell { width: 100%; height: 100%; display: table-cell; vertical-align: middle; }
.page-modal-content .product-wrap .product-info .text-wrap { padding: 0 0 60px 60px; width: 510px; font: normal 16px/20px 'TrocchiRegular', Arial, Helvetica, sans-serif; color: #475a65; }
.page-modal-content .product-wrap .product-info h2 { font: normal 26px/32px 'RobotoBlack', Arial, Helvetica, sans-serif; color: #475a65; padding: 0 0 15px; margin: 0 0 15px; position: relative; }
.page-modal-content .product-wrap .product-info h2:before { content: ""; display: block; width: 30px; height: 2px; background: #eb1c1c; position: absolute; bottom: 0; left: 0; }
.page-modal-content .product-wrap .product-info p { margin: 0 0 40px; }
.page-modal-content .product-wrap .product-info .get-info { display: inline-block; background: url(../images/pattern-bg.png) repeat 0 0; border-radius: 27px; font: normal 20px/34px 'RobotoBlack', Arial, Helvetica, sans-serif; color: #FFF; text-align: center; padding: 10px 40px; }
.page-modal-content .product-wrap .product-info ul { list-style: none; }
.page-modal-content .product-wrap .product-info ul li { padding-left: 40px; background: url(../images/list-icon.png) no-repeat 0 0; margin: 0 0 10px; }
.page-modal-content .product-wrap .product-info.fullwidth { width: 100%; }
.page-modal-content .product-wrap .product-info.fullwidth .text-wrap { padding: 40px 0 60px; width: 960px; margin: 0 auto; }
.page-modal-content .product-wrap .close-btn { display: block; width: 40px; height: 40px; background: url(../images/product-modal-close-bg.png) no-repeat 0 0; position: absolute; top: 31px; right: 31px; z-index: 20; cursor: pointer; }
.page-modal-content .product-wrap .product-menu { display: block; position: fixed; bottom: 0; left: 0; width: 100%; min-width: 1140px; height: 56px; z-index: 20; background: #eaeff3; }
.page-modal-content .product-wrap .product-menu ul { display: block; height: 100%; margin: 0 80px 0 82px; overflow: hidden; }
.page-modal-content .product-wrap .product-menu ul li { display: inline; width: 12.5%; float: left; }
.page-modal-content .product-wrap .product-menu ul li a { display: block; margin: 6px 2px 0 0; text-align: center; background: #ffffff; font: normal 12px/50px 'RobotoMedium', Arial, Helvetica, sans-serif; color: #475a65; text-align: center; text-decoration: none; }
.page-modal-content .product-wrap .product-menu ul li a span { display: inline-block; line-height: 16px; vertical-align: middle; }
.page-modal-content .product-wrap .product-menu ul li a.selected { border-top: 6px solid #eb1c1c; margin: 0 2px 0 0; }
.page-modal-content .product-wrap .product-menu ul li a:hover { background: #f5f5f5; }

/* Responsive: stack image and info on small screens */
@media (max-width: 900px) {
  .page-modal-content { min-width: 0; }
  .page-modal-content .product-wrap .product-image { width: 100%; height: 200px; float: none; }
  .page-modal-content .product-wrap .product-info { width: 100%; float: none; display: block; }
  .page-modal-content .product-wrap .product-info .text-wrap { padding: 30px; width: auto; }
  .page-modal-content .product-wrap .product-menu { min-width: 0; }
  .page-modal-content .product-wrap .product-menu ul { margin: 0 10px; }
}

/* GrayScale via CSS (replaces jquery.gray) */
.grayscale { filter: grayscale(100%); transition: filter 0.3s; }
.grayscale:hover { filter: grayscale(0%); }

/* Animation classes (preserved from original) */
.animated { animation-duration: 0.5s; animation-fill-mode: both; }
.fadeInDown { animation-name: fadeInDown; }
.fadeInUp { animation-name: fadeInUp; }
@keyframes fadeInDown {
    from { opacity: 0; transform: translate3d(0, -30px, 0); }
    to { opacity: 1; transform: translate3d(0, 0, 0); }
}
@keyframes fadeInUp {
    from { opacity: 0; transform: translate3d(0, 30px, 0); }
    to { opacity: 1; transform: translate3d(0, 0, 0); }
}

/* Custom checkbox CSS (replaces ezMark) */
.customChecbox input[type="checkbox"] { display: none; }
.customChecbox .customcheck01 { 
    display: inline-block; width: 20px; height: 20px; 
    border: 2px solid #ccc; border-radius: 3px; 
    cursor: pointer; vertical-align: middle; margin-right: 5px;
    position: relative;
}
.customChecbox .customcheck01checked {
    border-color: #c00; background: #c00;
}
.customChecbox .customcheck01checked:after {
    content: ""; position: absolute; top: 2px; left: 5px;
    width: 6px; height: 10px; border: solid #fff;
    border-width: 0 2px 2px 0; transform: rotate(45deg);
}
