* { box-sizing: border-box; }
        body { margin: 0; }
        html.overflow-hidden, body.overflow-hidden { overflow: hidden; }
        img { max-width: 100%; height: auto; vertical-align: middle; }
        .bg-img{ display: flex; justify-content: center; align-items: center; background-repeat: no-repeat; background-size: cover; background-position: center center; height: 100vh; position: relative; }
        .bg-img .btn-box { text-align: right; }
        .bg-img .btn { display: inline-block; background-color: #005AC3; color: #fff; font-weight: 400; padding: 14px 35px 14px 35px; border-radius: 5px; font-size: 20px; border: none; cursor: pointer; transition: all 0.3s ease-in-out; position: relative; line-height: normal; position: relative; text-decoration: none; white-space: nowrap; }        
        .bg-img .btn .arrow { margin-left: 15px; transition: all 0.3s ease-in-out; position: relative; left: 0; }
        .bg-img .btn:hover, .bg-img .btn:focus { background-color: #02357e; }
        .bg-img .btn:hover .arrow { left: 5px; }
        
        .cnc-popup.layout2 .bg-img{ background-repeat: no-repeat; background-size: cover; background-position: center center; height: 100vh; position: relative; }        
        .cnc-popup.layout2 .cnc-popup-content { margin: 0 auto; max-width: 465px; width: 100%; position: relative;    background-color: #005BC5; border-radius: 30px; overflow: hidden; }        
        .cnc-popup.layout2 .cnc-popup-content .cnc-inner-popup-content { max-height: 95vh; overflow-y: auto; }
        .cnc-popup.layout2 .cnc-popup-content .top-box { background-color: #FFF; box-shadow: 0 4px 10px 4px rgba(0, 0, 0, 0.15); border-radius: 30px; padding: 32px 55px; text-align: center;  }
        .cnc-popup.layout2 .cnc-popup-content .top-box .image { width: 70px; height: 88px; margin: 0 auto 29px; }
        .cnc-popup.layout2 .cnc-popup-content .top-box .image img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
        :where(.cnc-popup.layout2 .cnc-popup-content .top-box) :is(h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6) { font-size: 48px; color: #005BC5; line-height: normal; margin: 0 0 10px; }
        :where(.cnc-popup.layout2 .cnc-popup-content .top-box) :is(p) { font-size: 20px; line-height: normal; margin: 0 0 10px; color: #000; } 
        :where(.cnc-popup.layout2 .cnc-popup-content .top-box) :is(p):last-child { margin-bottom: 0; }        
        .cnc-popup.layout2 .cnc-popup-content .bottom-box { text-align: center; padding: 34px 24px; }
        :where(.cnc-popup.layout2 .cnc-popup-content .bottom-box) .btn { display: inline-block; border: none; cursor: pointer; text-decoration: none; background-color: #fff; border: 2px dashed #005BC5; color: #005BC5; box-shadow: 0 0 0 11px #fff; padding: 14px 24px; border-radius: 10px; font-size: 20px; font-weight: 700; transition: all 0.3s ease-in-out; }                        
        :where(.cnc-popup.layout2 .cnc-popup-content .bottom-box) .btn:hover, :where(.cnc-popup.layout2 .cnc-popup-content .content-box) .btn:focus { background-color: #02357e; box-shadow: 0 0 0 11px #02357e; color: #fff; border-color: #fff; }
        :where(.cnc-popup.layout2 .cnc-popup-content .bottom-box) .btn:hover:before, :where(.cnc-popup.layout2 .cnc-popup-content .content-box) .btn:focus:before { border-color: #02357e; }
        :where(.cnc-popup.layout2 .cnc-popup-content) .close-btn { width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; background-color: #005BC5; filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.25)); border-radius: 50%; position: absolute; right: 12px; top: 12px; transition: all 0.3s ease-in-out; }        
        :where(.cnc-popup.layout2 .cnc-popup-content) .close-btn img { padding: 11px; object-fit: contain; object-position: center; }
        :where(.cnc-popup.layout2 .cnc-popup-content) .close-btn:hover, :where(.cnc-popup.layout2 .cnc-popup-content) .close-btn:focus { background-color: #02357e; }
                
        @media (max-width: 1024px) {
            .cnc-popup.layout2 .cnc-popup-content .top-box :is(h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6) { font-size: 40px; }
            .cnc-popup.layout2 .cnc-popup-content .top-box :is(p), .cnc-popup.layout2 .cnc-popup-content .bottom-box .btn { font-size: 18px; }
        }
        
        @media (max-width: 767px) {
            .cnc-popup.layout2 .cnc-popup-content { margin: 0 auto; width: 95%; }
            .cnc-popup.layout2 .cnc-popup-content .top-box { padding: 25px 35px; }
            .cnc-popup.layout2 .cnc-popup-content .top-box :is(h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6) { font-size: 30px; }
            .cnc-popup.layout2 .cnc-popup-content .top-box :is(p) { font-size: 16px; }
            .cnc-popup.layout2 .cnc-popup-content .top-box .image { margin: 0 auto 20px; }
            .cnc-popup.layout2 .cnc-popup-content .bottom-box .btn { padding: 10px 12px; font-size: 16px; }
            .cnc-popup.layout2 .cnc-popup-content .close-btn { width: 30px; height: 30px; top: 10px; right: 10px; }
            .cnc-popup.layout2 .cnc-popup-content .close-btn img { padding: 9px; }
        }