/* ===================================
   Service - Listing
====================================== */
.gn-service-listing-wrapper{
    padding: 16px;
    background-color: #fff;
    border-radius: var(--gigneo-border-radius-xl);
}

.gn-service-listing-wrapper > .gn-head{
    flex-direction: column;
    align-items: flex-start;
}

.gn-service-card {
    height: 100%;
    background: #FFF;
    border: 1px solid rgb(var(--gigneo-grey-color));
    border-radius: var(--gigneo-border-radius-xl);
    display: flex;
    flex-direction: column;
}

.gn-service-media-slider{
    max-height: 200px;
    overflow: hidden;
}

.gn-service-card > .gn-head{
    position: relative;
}

.gn-service-card > .gn-head > .gn-tags {
    position: absolute;
    left: 12px;
    top: 12px;
}

.gn-service-card .gn-service-media {
    margin: 0;
    height: 200px;
    position: relative;
    border-radius: var(--gigneo-border-radius-xl) var(--gigneo-border-radius-xl) 0 0;
    background-color: rgb(var(--gigneo-secondary-font-color));
}

.gn-service-card .gn-service-media img{
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    opacity: 0.8;
    border-radius: var(--gigneo-border-radius-xl) var(--gigneo-border-radius-xl) 0 0;
}

.gn-service-card .gn-service-media .gn-play-video-toggle{
    position: absolute;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    top: 50%;
    left: 50%;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background-color: #fff;
    border: 1px solid rgb(var(--gigneo-grey-color));
    -webkit-box-shadow: 0 1px 1px 0 rgba(var(--gigneo-primary-font-color),0.05), 0 2px 5px 0 rgba(var(--gigneo-primary-font-color),0.08);
            box-shadow: 0 1px 1px 0 rgba(var(--gigneo-primary-font-color),0.05), 0 2px 5px 0 rgba(var(--gigneo-primary-font-color),0.08);
}

.gn-play-video-toggle>i{
    color: rgb(var(--gigneo-primary-font-color));

}

.gn-service-card .gn-body{
    padding: 16px 12px;
}

.gn-service-card .gn-body > .gn-title{
    margin: 0;
    font-size: 16px;
}

.gn-service-card .gn-body > .gn-title a{
    color: rgb(var(--gigneo-secondary-font-color));
}

.gn-service-card .gn-body > .gn-meta{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 4px;
}

.gn-service-card .gn-body > .gn-meta .gn-orders,
.gn-service-card .gn-body > .gn-meta .gn-price{
    gap: 8px;
    display: flex;
    width: 100%;
    align-items: center;
    max-width: inherit;
}

.gn-service-card .gn-body > .gn-meta .gn-orders:before{
    width: 1px;
    background-color: rgb(var(--gigneo-grey-color));
    content: '';
    display: none;
    height: 24px;
    margin: 0 8px 0 16px;
}

.gn-service-card .gn-body > .gn-meta .gn-orders .gn-value,
.gn-service-card .gn-body > .gn-meta .gn-price .gn-value{
    font-size: 16px;
    font-weight: 500;
    font-family: var(--gigneo-secondary-font);
    color: rgb(var(--gigneo-secondary-font-color));
}

.gn-service-card .gn-footer{
    display: flex;
    gap: 8px;
    margin-top: auto;
    padding: 12px;
    align-items: center;
    border-top: 1px solid rgb(var(--gigneo-grey-color));
    background-color: rgb(var(--gigneo-light-grey-color));
    border-radius: 0 0 var(--gigneo-border-radius-xl) var(--gigneo-border-radius-xl);
}

.gn-service-card .gn-footer > .gn-actions{
    display: flex;
    gap: 8px;
    flex: 1;
    align-items: center;
}

.gn-service-card .gn-footer > .gn-actions .gn-btn-outline-grey{
    flex: 1;
    background-color: #fff;
    font-size: 0;
    gap: 0;
}

.gn-service-card .gn-footer > .gn-dropdown-container .gn-btn-outline-grey{
    padding: 0;
    width: 36px;
    background-color: #fff;
    height: 36px;
}

.gn-not-found-wrapper.gn-not-found-service_list{
    min-height: calc(100dvh - 419px);
    padding: 60px 0;
}

.gn-dashboard-layout-2.gn-dashboard-side-menu .gn-not-found-wrapper.gn-not-found-service_list{
    min-height: calc(100dvh - 459px);
}

.gn-dashboard-content-area:has(.gn-notices-wrapper .gn-notice) .gn-not-found-wrapper.gn-not-found-service_list{
    min-height: calc(100dvh - 530px);
}

.gn-dashboard-layout-1.gn-dashboard-top-menu .gn-not-found-wrapper.gn-not-found-service_list {
    min-height: calc(100dvh - 475px);
}

.gn-dashboard-layout-2.gn-dashboard-top-menu .gn-not-found-wrapper.gn-not-found-service_list {
    min-height: calc(100dvh - 488px);
}

/* ===================================
   Service - Create & Edit 
====================================== */
.gn-clone-service-modal .gn-modal-content {
    width: 900px;
}

.gn-clone-service-modal .gn-template-search {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    justify-content: space-between;
    align-items: center;
}

.gn-clone-service-modal .gn-template-search h3 {
    margin: 0;
    font-size: 18px;
}

.gn-form-field .gn-input-wrapper {
    position: relative;
}

.gn-clone-service-modal .gn-input-wrapper input {
    padding-right: 40px;
    min-width: 300px;
}

.gn-clone-service-modal .gn-input-wrapper i {
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    color: rgb(var(--gigneo-primary-font-color));
    font-size: 16px;
}

.gn-template-list {
    padding: 0;
    margin: 24px 0 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-height: 350px;
}

.gn-template-list.gn-no-services {
    display: none;
}

.gn-template-list .gn-template-item {
    list-style: none;
}

.gn-clone-service-modal .gn-not-found-wrapper {
    margin: 24px 0 0;
    min-height: auto;
    overflow: auto;
    flex-wrap: wrap;
}

.gn-clone-service-modal .gn-not-found-wrapper:hover::-webkit-scrollbar-thumb {
    background-color: rgb(var(--gigneo-grey-color));
    border: 5px solid rgb(var(--gigneo-grey-color));
}

.gn-clone-service-modal .gn-not-found-wrapper::-webkit-scrollbar {
    width: 5px;
}

.gn-clone-service-modal .gn-not-found-wrapper::-webkit-scrollbar-thumb {
    border-radius: 16px;
}

.gn-template-card {
    display: flex;
    align-items: center;
    gap: 10px;
}

.gn-service-listing-item:not(.gn-active),
.gn-service-listing:not(.gn-no-services)~.gn-not-found-wrapper,
.gn-template-list:not(.gn-no-services)~.gn-not-found-wrapper {
    display: none;
}

.gn-template-card.gn-radio>label {
    width: 100%;
    gap: 10px;
    display: flex;
    align-items: center;
    padding-left: 0;
    padding-right: 25px;
    padding: 12px;
    transition: all 0.3s ease;
    border: 1px solid rgb(var(--gigneo-grey-color));
    background: #fff;
    -webkit-box-shadow: 0 1px 8px 0 rgba(0, 0, 0, 0.02);
            box-shadow: 0 1px 8px 0 rgba(0, 0, 0, 0.02);
    border-radius: var(--gigneo-border-radius-md);
}

.gn-template-card.gn-radio>label::after {
    right: 10px;
    left: auto;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

.gn-template-card.gn-radio:has(input[type="radio"]:checked)>label::before {
    left: auto;
    right: 15px;
}

.gn-template-card.gn-radio:has(input[type="radio"]:checked)>label,
.gn-template-card.gn-radio:has(input[type="radio"]:hover)>label,
.gn-template-card.gn-radio>label:hover {
    border-color: rgb(var(--gigneo-grey-color));
}

.gn-radio.gn-template-card:hover>label::after {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
}

.gn-clone-service-modal .gn-template-list {
    overflow: auto;
    padding-right: 8px;
    margin-right: -8px;
    min-height: auto;
}

.gn-template-item.gn-active .gn-template-card {
    background: #FAFAFA;
    border-color: rgb(var(--gigneo-grey-color));
}

.gn-template-item.gn-active .gn-radio {
    visibility: visible;
    opacity: 1;
}

.gn-template-card-body {
    flex: 1;
    gap: 10px;
    display: flex;
    align-items: center;
}

.gn-template-card-info {
    line-height: var(--gigneo-line-height);
}

.gn-template-card-body img {
    width: 100%;
    height: 100%;
    max-height: 44px;
    max-width: 61px;
    -o-object-fit: cover;
       object-fit: cover;
    -ms-flex-item-align: start;
        align-self: flex-start;
    border-radius: 4px;
}

.gn-template-card-body .gn-title {
    margin: 0;
    font-size: 16px;
    font-weight: 500;
    color: rgb(var(--gigneo-secondary-font-color));
}

.gn-template-card-body .gn-price {
    display: flex;
    align-items: center;
    gap: 5px;
}

.gn-template-card-body .gn-price .gn-starting-from {
    font-size: 12px;
}

.gn-template-card-body .gn-price .gn-amount {
    font-size: 12px;
}

.gn-template-card .gn-radio {
    visibility: hidden;
    opacity: 0;
}

/* ===================================
   Service - Create & Edit Steps
====================================== */

/* Create Service Basic Step */

.gn-service-edit-steps{
    margin-bottom: 24px;
}

.gn-service-edit-steps .gn-head{
    gap: 10px;
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 16px;
    justify-content: space-between;
}

.gn-service-edit-steps .gn-heading-area .gn-heading{
    margin: 0 0 4px;
    font-size: 16px;
}

.gn-service-edit-steps .gn-heading-area .gn-description{
    margin: 0;
    font-size: 14px;
}

.gn-service-edit-step .gn-aside,
.gn-service-edit-step .gn-service-edit-form,
.gn-service-edit-steps{
    padding: 16px;
    background-color: #fff;
    border-radius: var(--gigneo-border-radius-xl);
}

.gn-service-edit-step .gn-service-edit-form .gn-onsite-delivery-type {
    flex-direction: column;
}

.gn-edit-service-section~.gn-edit-service-section {
    margin-top: 36px;
    padding-top: 36px;
    border-top: 1px solid rgb(var(--gigneo-grey-color));
}

.gn-edit-service-section .gn-map {
    border-radius: var(--gigneo-border-radius-xl);
}

.gn-edit-service-section > .gn-head{
    gap: 10px;
    display: flex;
    margin: 0 0 24px;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}

.gn-edit-service-section > .gn-head > .gn-actions {
    flex: none;
}

.gn-edit-service-section > .gn-head .gn-heading-area .gn-title{
    font-size: 16px;
    margin: 0 0 4px;
}

.gn-edit-service-section > .gn-head .gn-heading-area .gn-description {
    margin: 0;
}

.gn-edit-service-section .gn-actions:has(.gn-switch){
    margin-left: auto;
    flex: none;
}

.gn-form-fields .gn-form-field.gn-service-type label {
    gap: 0;
    padding: 16px;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    border: 1px solid rgb(var(--gigneo-grey-color));
    border-radius: var(--gigneo-border-radius-lg);
}

.gn-form-fields .gn-form-field.gn-service-type .gn-radio+.gn-radio{
    margin: 0;
}

.gn-service-type{
    gap: 12px;
}

.gn-service-type .gn-radio {
    align-items: inherit;
    flex: 1;
}

.gn-service-type label span{
    display: block;
    font-size: 14px;
    font-weight: 500;
    font-family: var(--gigneo-secondary-font);
    color: rgb(var(--gigneo-secondary-font-color));
}

.gn-service-type label em {
    font-weight: 400;
    font-style: normal;
    margin: 4px 0 0;
    font-size: 14px;
    color: rgb(var(--gigneo-primary-font-color));
}

.gn-service-type i {
    font-size: 24px;
    margin: 0 0 24px;
    color: rgba(var(--gigneo-primary-font-color),0.8);
}

.gn-service-type .gn-radio:has(input[type="radio"]:hover)>label {
    border-color: rgb(var(--gigneo-grey-color));
}

.gn-service-type .gn-radio:has(input[type="radio"]:checked)>label {
    border-color: rgb(var(--gigneo-primary-color));
}

.gn-service-type .gn-radio>label::after {
    width: 16px;
    height: 16px;
    left: auto;
    top: 20px;
    right: 16px;
    border-color: rgb(var(--gigneo-grey-color));
    transform: none;
}

.gn-service-type .gn-radio:has(input[type="radio"]:checked)>label::before {
    left: auto;
    right: 21px;
    width: 6px;
    height: 6px;
    top: 25px;
    transform: none;
}

.gn-service-edit-form > .gn-actions{
    gap: 8px;
    display: flex;
    flex-wrap: wrap;
    margin-top: 36px;
    padding-top: 36px;
    border-top: 1px solid rgb(var(--gigneo-grey-color));
}

.gn-service-edit-form > .gn-actions:has(.gn-loading){
    pointer-events: none;
}

.gn-service-edit-form > .gn-actions:has(.gn-loading) .gn-btn:not([disabled]){
    opacity: 0.8;
}

.gn-service-edit-form > .gn-actions .gn-service-save:first-child{
    margin-right: auto;
}

.gn-service-edit-form > .gn-actions .gn-btn{
    width: 100%;
}

.gn-service-edit-step .gn-aside {
    height: 100%;
}

.gn-service-edit-step .gn-aside .gn-aside-content{
    gap: 12px;
    display: flex;
    flex-direction: column;
    position: sticky;
    top: 0;
}

.gn-service-edit-step .gn-aside .gn-aside-content .gn-aside-body {
    gap: 12px;
    display: flex;
    flex-direction: column;
}

.gn-service-edit-step .gn-aside .gn-title{
    margin: 0;
    font-size: 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.gn-service-edit-step .gn-aside .gn-title:first-child:after {
    content: "\e970";
    font-size: 16px;
    font-family: 'hero-icons';
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    -o-transition: transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}

.gn-service-edit-step .gn-aside .gn-title.gn-active:after {
    transform: rotate(-180deg);
}

.gn-service-edit-step .gn-aside .gn-aside-body .gn-title {
    margin-top: 12px;
}

.gn-service-edit-step .gn-aside .gn-description {
    margin: 0;
}

.gn-service-edit-step .gn-aside .gn-list {
    gap: 12px;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
}

.gn-service-edit-step .gn-aside .gn-list li{
    display: flex;
    gap: 12px
}

.gn-service-edit-step .gn-aside .gn-list li:before{
    content: "\e96b";
    font-family: 'hero-icons';
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 1px solid rgb(var(--gigneo-grey-color));
    background: rgb(var(--gigneo-light-grey-color));
    flex: none;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 1px;
    font-size: 12px;

}

.gn-service-edit-step .gn-aside .gn-list p{
    margin: 0;
}

.gn-service-edit-step .gn-aside .gn-list span{
    display: block;
}

.gn-service-edit-step .gn-aside .gn-ol-list {
    gap: 12px;
    display: flex;
    flex-direction: column;
    margin: 0;
    list-style: disc;
    line-height: var(--gigneo-line-height);
    -webkit-padding-start: 20px;
            padding-inline-start: 20px;
}

.gn-service-edit-step .gn-aside .gn-ol-list li {
    line-height: inherit;
}

.gn-plan-tiers-content{
    gap: 12px;
    display: flex;
}

.gn-plan-tier-tabs-info{
    gap: 24px;
    display: flex;
    width: auto;
    flex-direction: column;
    flex: auto;
}

.gn-plan-tiers-content:has(.gn-plan-tier-tabs-content .gn-tab-content .gn-plan-title) .gn-plan-tier-tabs-info{
    width: 220px;
    -webkit-box-flex: inherit;
        -ms-flex: inherit;
            flex: inherit;
    padding-top: 29px;

}

.gn-plan-field-label {
    margin: 0;
    font-size: 14px;
    display: block;
}

.gn-plan-field-label.gn-plan-field-price,
.gn-plan-field-label.gn-plan-field-revisions,
.gn-plan-field-label.gn-plan-field-title{
    min-height: 40px;
}

.gn-plan-field-label.gn-plan-field-description {
    min-height: 148px;
}

.gn-plan-field-label.gn-plan-field-delivery-time {
    min-height: 88px;
}

.gn-plan-tier-tabs-content{
    gap: 12px;
    -webkit-box-flex: inherit;
        -ms-flex: inherit;
            flex: inherit;
    display: flex;
}

.gn-plan-tiers-content:has(.gn-plan-tier-tabs-content .gn-tab-content .gn-plan-title) .gn-plan-tier-tabs-content{
    flex: auto;
}

.gn-plan-tier-tabs-content .gn-tab-content{
    flex: 1;
}

.gn-plan-tier-tabs-content .gn-tab-content:not(.gn-active) {
    display: none;
}

.gn-plan-tier-tabs-content .gn-switch .gn-radio{
    width: 36px;
    margin-left: auto;
    margin-right: auto;
}

.gn-plan-tier-tabs-content .gn-tab-content .gn-plan-title{
    margin: 0 0 8px;
    font-size: 14px;
}

.gn-plan-tier-tabs-content .gn-tab-content > .gn-form-fields{
    gap: 24px;
    display: flex;
    flex-direction: column;
}

.gn-plan-tier-tabs-content .gn-tab-content .gn-form-field textarea{
    height: 122px;
}

.gn-show-plan-tiers .gn-plan-tier-tabs li.gn-tab-plan-standard,
.gn-show-plan-tiers .gn-plan-tier-tabs li.gn-tab-plan-premium{
    display: block;
}

.gn-plan-tier-tabs li.gn-tab-plan-standard,
.gn-plan-tier-tabs li.gn-tab-plan-premium{
    display: none;
}

.gn-plan-tier-tabs {
    padding: 0;
    list-style: none;
    display: flex;
    margin: 0 0 20px;
    border-bottom: 1px solid rgb(var(--gigneo-grey-color));
}

.gn-plan-tier-tabs li {
    cursor: pointer;
    padding: 15px 16px;
    position: relative;
}

.gn-plan-tier-tabs li:after {
    position: absolute;
    height: 2px;
    width: 100%;
    background-color: rgb(var(--gigneo-primary-color));
    content: '';
    bottom: -1px;
    left: 0;
    opacity: 0;
    -webkit-transition: opacity .3s ease-in-out;
    -o-transition: opacity .3s ease-in-out;
    transition: opacity .3s ease-in-out;
} 

.gn-plan-tier-tabs .gn-active{
    color: rgb(var(--gigneo-primary-color));
}

.gn-plan-tier-tabs li.gn-active:after{
    opacity: 1;
}

.gn-plan-field .gn-checkbox{
    display: flex;
    min-height: 21px;
    align-items: center;
    justify-content: flex-end;
}

.gn-plan-field .gn-checkbox > label{
    width: auto;
}

.gn-edit-service-offers > .gn-head{
    margin-bottom: 0;
}

.gn-edit-service-offers:has(.gn-plan-field) > .gn-head {
    margin-bottom: 24px;
}

.gn-edit-service-offers .gn-form-fields {
    gap: 24px;
    display: flex;
    flex-direction: column;
}

.gn-plan-tier-tabs-info .gn-plan-field.gn-plan-field-offer {
    flex-wrap: wrap;
    -webkit-box-orient: initial;
    -webkit-box-direction: initial;
        -ms-flex-direction: initial;
            flex-direction: initial;
}

.gn-plan-tier-tabs-info .gn-plan-field.gn-plan-field-offer input[type=text]{
    flex: auto;
    width: auto;
    background-color: #fff;
    max-width: calc(100% - 48px);
    min-height: 40px;
    padding-top: 8px;
    padding-bottom: 8px;
}

.gn-plan-tier-tabs-info .gn-plan-field.gn-plan-field-offer .gn-remove-custom-offer{
    padding: 0;
    width: 40px;
    min-height: 40px;
}

.gn-plan-tier-tabs-info .gn-plan-field.gn-plan-field-offer .gn-remove-custom-offer i {
    font-size: 16px;
}

.gn-plan-tier-tabs-info .gn-plan-field.gn-plan-field-offer .gn-remove-custom-offer:not(:hover){
    border: 1px solid rgb(var(--gigneo-grey-color));
    color: rgb(var(--gigneo-primary-font-color));
}

.gn-plan-tier-tabs-info .gn-plan-field.gn-plan-field-offer .gn-remove-custom-offer:hover{
    color: #fff;
    border-color: rgb(var(--gigneo-danger-color));
    background-color: rgb(var(--gigneo-danger-color));
}

.gn-plan-tier-tabs-info .gn-plan-field.gn-plan-field-offer .gn-remove-custom-offer:focus{
    color: #fff;
    border-color: rgb(var(--gigneo-danger-color));
    background-color: rgb(var(--gigneo-danger-color));
    -webkit-box-shadow: 0 4px 18px 0 rgba(232, 223, 255, 0.10) inset, 0 0 0 3px rgba(var(--gigneo-danger-color), .2);
            box-shadow: 0 4px 18px 0 rgba(232, 223, 255, 0.10) inset, 0 0 0 3px rgba(var(--gigneo-danger-color), .2);
}

.gn-edit-service-offers .gn-plan-tier-tabs-content .gn-plan-field .gn-checkbox{
    min-height: 40px;
}

.gn-edit-service-section .gn-plan-field .gn-checkbox :not(input[type=checkbox]:checked) + label:before {
    background-color: rgb(var(--gigneo-light-grey-color));
}

.gn-edit-service-offers .gn-plan-tier-tabs-content .gn-plan-field {
    min-height: 69px;
    justify-content: flex-end;
}

.gn-requirements .gn-requirement,
.gn-faqs .gn-faq,
.gn-edit-service-addons .gn-custom-addon {
    padding: 16px;
    background: rgb(var(--gigneo-light-grey-color));
    border: 1px solid rgb(var(--gigneo-grey-color));
    border-radius: var(--gigneo-border-radius-lg);
}

.gn-requirements .gn-requirement ~ .gn-requirement,
.gn-faqs .gn-faq ~ .gn-faq,
.gn-edit-service-addons .gn-custom-addon ~ .gn-custom-addon{
    margin-top: 24px;
}

.gn-requirements .gn-requirement .gn-form-field:has(.gn-remove-requirement),
.gn-faqs .gn-faq .gn-form-field:has(.gn-remove-faq),
.gn-edit-service-addons .gn-custom-addon .gn-form-field:has(.gn-remove-custom-addon) {
    flex-wrap: wrap;
    -webkit-box-orient: initial;
    -webkit-box-direction: initial;
        -ms-flex-direction: initial;
            flex-direction: initial;
}

.gn-requirements .gn-requirement .gn-form-field:has(.gn-remove-requirement) label,
.gn-faqs .gn-faq .gn-form-field:has(.gn-remove-faq) label,
.gn-edit-service-addons .gn-custom-addon .gn-form-field:has(.gn-remove-custom-addon) label {
    width: auto;
}

.gn-requirements .gn-requirement .gn-remove-requirement,
.gn-faqs .gn-faq .gn-form-field .gn-remove-faq,
.gn-edit-service-addons .gn-custom-addon .gn-form-field .gn-remove-custom-addon {
    padding: 0;
    width: auto;
    min-height: inherit;
    font-size: 14px;
    margin: 0 0 0 auto;
    color: rgb(var(--gigneo-primary-font-color));
    border: 0;
    box-shadow: none;
    background-color: transparent;
}

.gn-requirements .gn-requirement .gn-remove-requirement > i,
.gn-faqs .gn-faq .gn-form-field .gn-remove-faq  > i,
.gn-edit-service-addons .gn-custom-addon .gn-form-field .gn-remove-custom-addon > i {
    font-size: 16px;
}

.gn-requirements .gn-requirement .gn-remove-requirement:hover,
.gn-faqs .gn-faq .gn-form-field .gn-remove-faq:hover,
.gn-edit-service-addons .gn-custom-addon .gn-form-field .gn-remove-custom-addon:hover{
    color: rgb(var(--gigneo-danger-color));
}

.gn-requirements .gn-requirement .gn-form-fields,
.gn-faqs .gn-faq .gn-form-fields,
.gn-edit-service-addons .gn-custom-addon .gn-form-fields{
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

.gn-requirements .gn-requirement .gn-form-fields .gn-form-field input[type="text"],
.gn-requirements .gn-requirement .gn-form-fields .gn-form-field input[type="number"],
.gn-requirements .gn-requirement .gn-form-fields .gn-form-field .gn-select2-dropdown.select2-container .select2-selection,
.gn-requirements .gn-requirement .gn-form-fields .gn-form-field textarea,
.gn-faqs .gn-faq .gn-form-fields .gn-form-field input[type="text"],
.gn-faqs .gn-faq .gn-form-fields .gn-form-field input[type="number"],
.gn-faqs .gn-faq .gn-form-fields .gn-form-field .gn-select2-dropdown.select2-container .select2-selection,
.gn-faqs .gn-faq .gn-form-fields .gn-form-field textarea,
.gn-edit-service-addons .gn-custom-addon .gn-form-fields .gn-form-field input[type="text"],
.gn-edit-service-addons .gn-custom-addon .gn-form-fields .gn-form-field input[type="number"],
.gn-edit-service-addons .gn-custom-addon .gn-form-fields .gn-form-field .gn-select2-dropdown.select2-container .select2-selection,
.gn-edit-service-addons .gn-custom-addon .gn-form-fields .gn-form-field textarea{
    background-color: #fff;
}

.gn-edit-service-addons .gn-custom-addon .gn-form-fields .gn-form-field .gntc-counter {
    margin: 0;
}

.gn-edit-service-addons .gn-custom-addon .gn-form-fields > .row {
    flex: auto;
    margin-left: -6px;
    margin-right: -6px;
}

.gn-edit-service-addons .gn-custom-addon .gn-form-fields > .row > div {
    padding-left: 6px;
    padding-right: 6px;
}

.gn-intake-form-type,
.gn-onsite-delivery-type{
    flex-direction: column;
    gap: 12px;
}

.gn-form-fields .gn-form-field.gn-intake-form-type .gn-radio+.gn-radio,
.gn-form-fields .gn-form-field.gn-onsite-delivery-type .gn-radio+.gn-radio {
    margin: 0;
}

.gn-intake-form-type .gn-radio,
.gn-onsite-delivery-type .gn-radio{
    flex: auto;
}

.gn-form-fields .gn-form-field.gn-intake-form-type label,
.gn-form-fields .gn-form-field.gn-onsite-delivery-type label {
    gap: 0;
    padding: 16px;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    border: 1px solid rgb(var(--gigneo-grey-color));
    border-radius: var(--gigneo-border-radius-lg);
}

.gn-intake-form-type .gn-radio:has(input[type="radio"]:checked)>label,
.gn-onsite-delivery-type .gn-radio:has(input[type="radio"]:checked)>label {
    border-color: rgb(var(--gigneo-primary-color));
}

.gn-onsite-delivery-type .gn-radio>label::after,
.gn-intake-form-type .gn-radio>label::after {
    width: 16px;
    height: 16px;
    left: auto;
    top: 20px;
    right: 16px;
    border-color: rgb(var(--gigneo-grey-color));
    transform: none;
}

.gn-onsite-delivery-type .gn-radio:has(input[type="radio"]:checked)>label::before,
.gn-intake-form-type .gn-radio:has(input[type="radio"]:checked)>label::before {
    left: auto;
    right: 21px;
    width: 6px;
    height: 6px;
    top: 25px;
    transform: none;
}

.gn-onsite-delivery-type i,
.gn-intake-form-type i {
    font-size: 24px;
    margin: 0 0 24px;
    color: rgb(var(--gigneo-primary-font-color));
}

.gn-onsite-delivery-type label span,
.gn-intake-form-type label span {
    display: block;
    font-size: 14px;
    font-weight: 500;
    font-family: var(--gigneo-secondary-font);
    color: rgb(var(--gigneo-secondary-font-color));
}

.gn-onsite-delivery-type label em,
.gn-intake-form-type label em {
    font-weight: 400;
    font-style: normal;
    margin: 4px 0 0;
    font-size: 14px;
    color: rgb(var(--gigneo-primary-font-color));
}

/* Service - Location */

.gn-location {
    background-color: rgb(var(--gigneo-light-grey-color));
    border-radius: var(--gigneo-border-radius-xl);
    border: 1px solid rgb(var(--gigneo-grey-color));
    padding: 16px;
    margin-bottom: 16px;
    display: flex;
    gap: 8px;
    align-items: center;
    flex-wrap: wrap;
}

.gn-location .gn-icon {
    font-size: 24px;
    background-color: #fff;
    width: 48px;
    height: 48px;
    flex: none;
    border-radius: 50%;
    display: flex;
    order: 0;
    align-items: center;
    justify-content: center;
    border: 1px solid rgb(var(--gigneo-grey-color));
    color: rgb(var(--gigneo-primary-font-color));
}

.gn-location .gn-info {
    order: 2;
    width: 100%;
}

.gn-location .gn-info .gn-country-state {
    gap: 8px;
    display: flex;
    margin: 0 0 8px;
    font-size: 14px;
    flex-wrap: wrap;
    align-items: center;
}

.gn-location .gn-info .gn-address {
    margin: 0;
}

.gn-location .gn-actions{
    margin-left: auto;
    display: flex;
    gap: 8px;
    align-items: center;
    order: 1;
}

.gn-location .gn-actions .gn-btn {
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    min-height: inherit;
    border-radius: var(--gigneo-border-radius-md);
    background-color: #fff;
    color: rgb(var(--gigneo-primary-font-color));
    border: 1px solid rgb(var(--gigneo-grey-color));
}

.gn-location .gn-actions .gn-btn i {
    font-size: 14px;
}

.gn-location .gn-actions .gn-btn:not(.gn-remove-location):hover {
    background-color: rgb(var(--gigneo-grey-color));
}

.gn-location .gn-actions .gn-btn.gn-remove-location:hover {
    background-color: rgb(var(--gigneo-danger-color));
    color: #fff;
    border-color: rgb(var(--gigneo-danger-color));
}

.gn-location .gn-actions .gn-btn.gn-remove-location:focus{
    -webkit-box-shadow: 0 4px 18px 0 rgba(232, 223, 255, 0.10) inset, 0 0 0 3px rgba(var(--gigneo-danger-color), .2);
            box-shadow: 0 4px 18px 0 rgba(232, 223, 255, 0.10) inset, 0 0 0 3px rgba(var(--gigneo-danger-color), .2);
}

.gn-service-notice,
.gn-edit-service-notice {
    gap: 10px;
    display: flex;
    padding: 12px 16px;
    border-radius: var(--gigneo-border-radius-lg);
    border: 1px solid rgb(var(--gigneo-info-color));
    background: rgba(var(--gigneo-info-color), 0.05);
}

.gn-service-notice i,
.gn-edit-service-notice i {
    margin: 2.5px 0;
    font-size: 16px;
    color: rgb(var(--gigneo-info-color));
}

.gn-service-notice p,
.gn-edit-service-notice p {
    margin: 0;
    color: rgb(var(--gigneo-primary-font-color));
}

/* Service - Media */
.gn-service-media-list {
    display: flex;
    flex-wrap: wrap;
    margin: -6px;
    list-style: none;
    padding: 0;
}

.gn-service-media-list li {
    width: 100%;
    padding: 6px;
    max-width: 100%;
    position: relative;
    margin: 0;
    list-style-type: none;
}

.gn-service-media:not(.gn-service-media-placeholder) .gn-service-media-upload {
    display: none;
}

.gn-service-media-placeholder~.gn-service-media-placeholder {
    display: none;
}

.gn-service-media.gn-service-media-placeholder .gn-service-media-info {
    display: none;
}

.gn-service-media-info {
    position: relative;
}

.gn-service-media-info>video {
    width: 100%;
    height: 100%;
    display: block;
    border-radius: var(--gigneo-border-radius-lg);
}

.gn-service-media-upload {
    text-align: center;
    border: 1px dashed rgb(var(--gigneo-grey-color));
    padding: 20px;
    border-radius: var(--gigneo-border-radius-lg);
    background: rgb(var(--gigneo-light-grey-color));
    display: flex;
    flex-direction: column;
    align-items: center;
    min-height: 172px;
    gap: 8px;
    position: relative;
    justify-content: center;
}

.gn-service-media-upload>i {
    font-size: 24px;
    color: rgb(var(--gigneo-secondary-font-color));
}

.gn-service-media-upload-info {
    text-align: center;
}

.gn-service-media-upload-info .gn-description {
    margin: 0;
    font-size: 12px;
    color: rgba(var(--gigneo-primary-font-color), 0.7);
}

.gn-service-media-upload-info button {
    padding: 0;
    border: 0;
    font-size: 14px;
    display: block;
    margin: 8px auto 0;
    font-weight: 500;
    box-shadow: none;
    cursor: pointer;
    color: rgb(var(--gigneo-primary-color));
    background: transparent;
}

.gn-service-media-upload-info button:hover,
.gn-service-media-upload-info button:focus {
    background: transparent;
    outline: none;
    text-decoration: underline;
    color: rgb(var(--gigneo-primary-color));
}

.gn-service-media-info figure {
    margin: 0;
    border-radius: var(--gigneo-border-radius-lg);
    overflow: hidden;
    height: 172px;
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-box-shadow: inset 0px 0 1px 1px rgb(var(--gigneo-grey-color));
            box-shadow: inset 0px 0 1px 1px rgb(var(--gigneo-grey-color));
}

.gn-service-media-info figure>img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}

.gn-service-media-action {
    top: 0;
    right: 0;
    padding: 8px;
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
    position: absolute;
    width: auto;
    height: auto;
    gap: 8px;
    background-color: transparent;
}

.gn-service-media-action button[type=button] {
    width: 28px;
    height: 28px;
    display: flex;
    padding: 0;
    border: 0;
    box-shadow: none;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    border-radius: var(--gigneo-border-radius-md);
    background: #fff;
    border: 1px solid rgb(var(--gigneo-grey-color));
    color: rgb(var(--gigneo-primary-font-color));
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out;
}

.gn-service-media-action button[type=button] i {
    font-size: 14px;
}

.gn-service-media-action button[type=button].gn-service-media-upload-toggle:hover {
    background-color: rgb(var(--gigneo-info-color));
    color: #fff;
    border-color: rgb(var(--gigneo-info-color));
}

.gn-service-media-action button[type=button].gn-service-media-remove:hover {
    background-color: rgb(var(--gigneo-danger-color));
    color: #fff;
    border-color: rgb(var(--gigneo-danger-color));
}

.gn-service-video-link-wrapper label {
    display: block;
    position: relative;
}

.gn-media-tooltip {
    right: 12px;
    top: 50%;
    z-index: 999;
    position: absolute;
    transform: translateY(-50%);
}

.gn-tooltip i,
.gn-media-tooltip i {
    font-size: 16px;
    color: rgb(var(--gigneo-dark-grey-color));
}

.gn-tooltip span,
.gn-media-tooltip span {
    position: absolute;
    z-index: 999;
    transition: all 0.3s ease;
    border-radius: 10px;
    background: #18181B;
    box-shadow: 4px 8px 48px -8px rgba(99, 115, 146, 0.12);
    padding: 12px;
    opacity: 0;
    visibility: hidden;
    bottom: 120%;
    left: 50%;
    transform: translateX(-50%);
    margin: 0;
    font-size: 12px;
    font-weight: 500;
    color: #fff;
    line-height: 18px;
    width: max-content;
    max-width: 270px;
}

.gn-tooltip span::after,
.gn-media-tooltip span::after {
    content: "";
    margin-top: -1px;
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    border-width: 6px;
    border-style: solid;
    border-color: #18181B transparent transparent transparent;
}

.gn-tooltip:hover>span,
.gn-media-tooltip:hover>span {
    opacity: 1;
    visibility: visible;
}

.gn-service-video-link-wrapper label input {
    font-size: 14px;
    line-height: 26px;
    font-weight: 400;
    width: 100%;
    max-width: 100%;
    border: 1px solid rgba(var(--gigneo-grey-color), 0.3);
    outline: none;
    box-shadow: none;
    padding: 6px 12px;
    color: rgb(var(--gigneo-secondary-font-color));
    border-radius: var(--gigneo-border-radius-md);
    background-color: rgb(var(--gigneo-light-grey-color));
}

.gn-service-video-link-wrapper label input:hover,
.gn-service-video-link-wrapper label input:focus {
    border-color: rgb(var(--gigneo-grey-color));
}

.gn-service-media-documents .gn-service-image {
    box-shadow: none;
    flex-direction: column;
    border: 1px solid rgb(var(--gigneo-grey-color));
    background: rgb(var(--gigneo-light-grey-color));
}

.gn-service-image figcaption {
    margin: 12px 0 0;
    font-size: 12px;
    font-style: normal;
    padding: 10px;
    text-align: center;
    word-break: break-word;
    color: rgb(var(--gigneo-secondary-font-color));
}

.gn-service-image figcaption:empty {
    display: none;
}

.gn-service-media-documents .gn-service-image img {
    max-width: 40px;
    max-height: 40px;
}

/* Radio Switch Style */
.gn-radio-switch-btn {
    gap: 4px;
    display: flex;
    background: rgb(var(--gigneo-light-grey-color));
    border-radius: var(--gigneo-border-radius-lg);
    padding: 4px;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    position: relative;
}

.gn-radio-switch-btn label {
    margin: 0;
}

.gn-radio-switch-btn input[type="radio"] {
    display: none;
}

.gn-radio-switch-btn label span {
    z-index: 1;
    display: block;
    cursor: pointer;
    text-align: center;
    padding: 8px 16px;
    border-radius: var(--gigneo-border-radius-md);
    transition: all 0.3s ease;
    line-height: 20px;
    color: rgb(var(--gigneo-primary-font-color));
}

.gn-radio-switch-btn input[type="radio"]:checked+span {
    background: #FFF;
    color: rgb(var(--gigneo-primary-color));
    box-shadow: 0px 4px 8px -2px rgba(16, 24, 40, 0.10), 0px 2px 4px -2px rgba(16, 24, 40, 0.06);
}

.gn-requirement .gn-field-stack{
    display: flex;
    gap: 8px;
    flex-direction: column;
}

.gn-requirement .gn-field-stack .gn-checkbox{
    display: flex;
}

.gn-requirement .gn-field-stack .gn-select {
    flex: auto;
}

.gn-requirement .gn-field-stack .gn-select .gn-select2-dropdown.select2-container .select2-selection,
.gn-requirement .gn-field-stack .gn-select > select{
    background-color: #fff;
}

.gn-requirement .gn-field-stack .gn-select:has(.select2-selection__arrow):before{
    display: none;
}

.gn-requirement .gn-form-fields .gn-form-field .gn-field-stack .gn-checkbox label{
    color: rgb(var(--gigneo-primary-font-color));
    font-weight: 400;
    align-items: center;
    gap: 8px;
}

.gn-requirement .gn-form-fields .gn-form-field .gn-field-stack .gn-checkbox input[type=checkbox]:checked+label{
    color: rgb(var(--gigneo-secondary-font-color));
}

.gn-requirement .gn-form-fields .gn-form-field .gn-requirement-choices{
    gap: 8px;
    display: flex;
    flex-direction: column;
}

.gn-requirement .gn-form-fields .gn-form-field .gn-requirement-choices .gn-remove-requirement-choice {
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    background-color: transparent;
    border: none;
    padding: 0;
    margin: 0;
    font-size: 16px;
    color: rgb(var(--gigneo-primary-font-color));
    cursor: pointer;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.gn-requirement .gn-form-fields .gn-form-field .gn-requirement-choices .gn-requirement-choice {
    position: relative;
}

.gn-requirement .gn-form-fields .gn-form-field .gn-requirement-choices .gn-remove-requirement-choice:hover {
    color: rgb(var(--gigneo-danger-color));
}

.gn-requirements .gn-requirement .gn-form-fields .gn-form-field input[type="text"] {
    padding-right: 40px;
}

.gn-requirement .gn-form-fields .gn-form-field .gn-requirement-choices .gn-requirement-choice-actions {
    display: flex;
    gap: 8px;
    flex-direction: column;
    justify-content: space-between;
}

.gn-requirement .gn-form-fields .gn-form-field .gn-requirement-choices .gn-requirement-choice-actions .gn-checkbox label,
.gn-requirement .gn-form-fields .gn-form-field .gn-requirement-choices .gn-requirement-choice-actions .gn-add-requirement-choice {
    font-size: 12px;
}

.gn-requirement .gn-form-fields .gn-form-field .gn-requirement-choices .gn-requirement-choice-actions .gn-checkbox label{
    color: rgb(var(--gigneo-primary-font-color));
    gap: 8px;
    align-items: center;
    display: flex !important;
}

.gn-requirement .gn-form-fields .gn-form-field .gn-requirement-choices .gn-requirement-choice-actions .gn-checkbox input[type=checkbox]:checked+label{
    color: rgb(var(--gigneo-secondary-font-color));
}

.gn-edit-service-textarea{
    position: relative;
}

.gn-edit-service-textarea span {
    position: absolute;
    top: 8px;
    left: 15px;
    pointer-events: none;
    color: rgba(var(--gigneo-primary-font-color), 0.7);
}

.gn-service-publish-form .gn-form-fields .gn-form-field .gn-form-field-checkbox>label a{
    font-weight: 400;
    color: rgb(var(--gigneo-secondary-font-color));
}

.gn-service-publish-form .gn-form-fields .gn-form-field .gn-form-field-checkbox>label a:hover {
    color: rgb(var(--gigneo-primary-color));
}

.gn-service-edit-form .gn-category-fields{
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
}

.gn-service-edit-form .gn-specific-types {
    grid-column: auto;
    min-width: 100%;
}

/* ===================================
   Service - Responsive
====================================== */

@media (min-width: 391px) {
    .gn-service-card .gn-footer > .gn-actions .gn-btn-outline-grey {
        gap: 8px;
        font-size: inherit;
    }
    .gn-edit-service-section > .gn-head {
        flex-wrap: nowrap;
    }    
}

@media (min-width: 421px) {
    .gn-intake-form-type,
    .gn-onsite-delivery-type{
        flex-direction: row;
    }
    .gn-requirement .gn-field-stack{
        gap: 12px;
        flex-direction: row;
        align-items: center;
    }

    .gn-requirement .gn-form-fields .gn-form-field .gn-requirement-choices .gn-requirement-choice-actions {
        align-items: center;
        flex-direction: row;
    }
}

@media screen and (min-device-width: 481px) and (max-device-width: 767px) { 
    .gn-service-card .gn-body > .gn-meta {
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
        gap: 0;
    }
    .gn-service-card .gn-body > .gn-meta .gn-orders,
    .gn-service-card .gn-body > .gn-meta .gn-price {
        width: auto;
    }
    .gn-service-card .gn-body > .gn-meta .gn-orders:before {
        display: block;
    }
}

@media (min-width: 768px) {
    .gn-location {
        flex-wrap: nowrap;
    }
    .gn-location .gn-info {
        width: auto;
    }
    .gn-location .gn-actions {
        order: 3;
    }
    
    .gn-service-edit-step .gn-service-edit-form .gn-onsite-delivery-type {
        flex-direction: row;
    }
    .gn-service-type{
        flex-direction: row;
    }
    .gn-service-edit-form .gn-category-fields{
        -ms-grid-columns: 1fr 1fr;
        grid-template-columns: 1fr 1fr;
    }

    .gn-service-edit-form .gn-specific-types {
        -ms-grid-column: 1;
        -ms-grid-column-span: 2;
        grid-column: 1 / span 2;
    }

    .gn-service-edit-form > .gn-actions .gn-btn{
        width: auto;
    }

    .gn-service-media-list li{
        max-width: 50%;
    }
    .gn-edit-service-textarea span {
        left: 16px;
        top: 12px;
    }
}

@media (min-width: 992px) {
    .gn-service-card .gn-body > .gn-meta {
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
        gap: 0;
    }
    .gn-service-card .gn-body > .gn-meta .gn-orders,
    .gn-service-card .gn-body > .gn-meta .gn-price {
        width: auto;
    }
    .gn-service-card .gn-body > .gn-meta .gn-orders:before {
        display: block;
    }
    .gn-service-edit-steps{
        padding: 24px;
    }
    .gn-service-edit-step .gn-aside .gn-title:after {
        display: none;
    }
    .gn-service-edit-step .gn-aside {
        padding: 24px;
    }
    .gn-show-plan-tiers .gn-edit-service-section .gn-tab-content.gn-tab-content-plan-premium,
    .gn-show-plan-tiers .gn-edit-service-section .gn-tab-content.gn-tab-content-plan-standard{
        display: block;
    }
    
    .gn-edit-service-section .gn-tab-content.gn-tab-content-plan-premium,
    .gn-plan-tier-tabs-content .gn-tab-content.gn-tab-content-plan-standard{
        display: none;
    }

    .gn-plan-tier-tabs{
        display: none;
    }
    .gn-plan-field .gn-checkbox {
        justify-content: center;
    }
    .gn-plan-tier-tabs-info {
        width: 220px;
        flex: inherit;
    }
    .gn-plan-tier-tabs-content {
        flex: auto;
    }
    .gn-service-media-list li{
        max-width: 33.33%;
    }
}

@media (min-width: 1400px) {
    .gn-plan-field-label.gn-plan-field-price,
    .gn-plan-field-label.gn-plan-field-revisions,
    .gn-plan-field-label.gn-plan-field-title{
        min-height: 48px;
    }

    .gn-plan-field-label.gn-plan-field-delivery-time{
        min-height: 104px;
    }

    .gn-plan-tier-tabs-info .gn-plan-field.gn-plan-field-offer .gn-remove-custom-offer{
        width: 48px;
        min-height: 48px;
    }

    .gn-plan-tier-tabs-info .gn-plan-field.gn-plan-field-offer input[type=text] {
        max-width: calc(100% - 56px);
        min-height: 48px;
    }

    .gn-edit-service-offers .gn-plan-tier-tabs-content .gn-plan-field {
        min-height: 77px;
    }
    .gn-edit-service-offers .gn-plan-tier-tabs-content .gn-plan-field .gn-checkbox{
        min-height: 48px;
    }
   
}
