﻿/* PDCS Portal Responsive Styles 1.0 */

/* Medium Layout: 1280px. */

@media only screen and (min-width: 992px) and (max-width: 1200px) {}


/* Tablet Layout: 768px. */

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .mainmenu-area #primary-menu > ul > li > a {
        padding: 30px 5px; /* ## 30px 12px */
        font-size: 14px;
    }
    .header-area {
        padding-top: 80px;
    }
    .hide768 {
        display: none;
    }
    .yyy {
        display: none;
    }
    .price-table,
    .box {
        padding: 30px 15px;
    }
    .price-table.active {
        padding: 50px 15px;
    }
    .single-team {
        margin-bottom: 30px
    }
    .side-icon-boxes {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
    .resp-ctr {
        text-align: center;
    }

    /* Fieldset and legend responsive styles for tablet */
    fieldset {
        border: none;
        padding: 0;
        margin: 0 0 15px 0;
        width: 100%;
    }
    
    legend {
        width: 100%;
        padding: 0;
        margin-bottom: 12px;
        font-size: 14px;
        line-height: 1.4;
        word-wrap: break-word;
        overflow-wrap: break-word;
    }
    
    .control-group {
        width: 100%;
        margin-bottom: 12px;
        display: flex;
        align-items: flex-start;
    }
    
    .radioWidth {
        width: 25px;
        margin-right: 8px;
        flex-shrink: 0;
    }
    
    .labelWidth {
        flex: 1;
        word-wrap: break-word;
        overflow-wrap: break-word;
        font-size: 14px;
        line-height: 1.3;
    }

}


/* Mobile Layout: 320px. */

@media only screen and (max-width: 767px) {
    body,legend {
        font-size: 13px;
    }
    .rtemp {
        display: none;
    }
    .hide320 {
        display: none;
    }
    .xxx {
        display: block;
    }
    .yyy {
        display: none;
    }
    .resp-ctr {
        text-align: center;
    }
    .xhelp span {
        font-weight: 600;
    }
    .header-area {
        padding-top: 120px;
        padding-bottom: 100px;
        height: auto;
    }
    .page-title h2,    
    .header-text h2 {
        font-size: 20px;
    }
    .page-title h4 {
        font-size: 18px;
    }
    .forminfo h3 {
        font-size: 16px;
    }
    .mainmenu-area .navbar-toggle {
        margin-top: 20px;
    }
    .mainmenu-area .navbar-toggle .icon-bar {
        background-color: #ffffff;
    }
    .mainmenu-area #primary-menu {
        background-color: #244D9E;
    }
    .mainmenu-area #primary-menu ul {
        overflow-y: auto;
        max-height: 70vh;
        margin: 0;
    }
    .mainmenu-area #primary-menu > ul > li > a {
        padding: 15px;
        overflow: hidden;
    }
    .box {
        padding: 30px 15px;
    }
    .box .box-icon {
        height: auto;
    }
    .single-blog,
    .single-team,
    .price-table.active {
        margin-top: 30px;
    }
    .form-double input {
        width: 100%;
    }
    .footer-top {
        margin-bottom: 50px;
    }
    .x-left {
        text-align: left;
    }
    .g-recaptcha {
    transform:scale(0.80);
    -webkit-transform: scale(0.80);
    transform-origin:0 0;
    -webkit-transform-origin:0 0;
    }
    .mainmenu-area .logo {
        margin-left: 15px;
    }
/* Enhanced fieldset and legend responsive styles for mobile */
    fieldset {
        border: none;
        padding: 0;
        margin: 0 0 20px 0;
        width: 100%;
    }
    
    legend {
        width: 100%;
        padding: 0 10px 0 0;
        margin-bottom: 10px;
        font-size: 13px;
        line-height: 1.4;
        word-wrap: break-word;
        overflow-wrap: break-word;
        font-weight: 500;
    }
    
    .control-group {
        width: 100%;
        margin-bottom: 15px;
        display: flex;
        align-items: flex-start;
    }
    
    .radioWidth {
        width: 30px;
        margin-right: 5px;
        flex-shrink: 0;
    }
    
    .labelWidth {
        flex: 1;
        word-wrap: break-word;
        overflow-wrap: break-word;
        font-size: 13px;
        line-height: 1.3;
    }
}


/* Wide Mobile Layout: 480px. */

@media only screen and (min-width: 480px) and (max-width: 767px) {
    /* Specific adjustments for wide mobile if needed */
    legend {
        font-size: 14px;
    }
    
    .labelWidth {
        font-size: 14px;
    }
}