
/**
 * Theme Name:		Control
 * Theme URI:		https://creativeworx.net
 *
 * Description:		Custom quickstart theme for specific use with Elementor
 * Tags:			custom-logo, featured-images, translation-ready
 * Version:			0.1.27
 *
 * Author:			Creative Worx
 * Author URI:		https://creativeworx.net
 *
 * License:			GNU General Public License v2 or later
 * License URI:		http://www.gnu.org/licenses/gpl-2.0.html
 *
 * Text Domain:		control
 * Domain Path:		/languages
 */

[data-elementor-device-mode=widescreen]	{
    --treshold: 60px;
    --header-height: 0px;
    --body-height: calc(100dvh - var(--header-height));
}
[data-elementor-device-mode=desktop]	{
    --treshold: 50px;
    --header-height: 0px;
    --body-height: calc(100dvh - var(--header-height));
}
[data-elementor-device-mode=laptop]		{
    --treshold: 40px;
    --header-height: 0px;
    --body-height: calc(100dvh - var(--header-height));
}
[data-elementor-device-mode=tablet]		{
    --treshold: 30px;
    --header-height: 50px;
    --body-height: calc(100dvh - var(--header-height));
}
[data-elementor-device-mode=mobile]		{
    --treshold: 20px;
    --header-height: 50px;
    --body-height: calc(100dvh - var(--header-height));
}

:root {
    
	--layout-outer-width: 		100%;
	--layout-inner-width: 		100%;	
    
    --container-default-padding-top: 0;
    --container-default-padding-left: 0;
    --container-default-padding-right: 0;
    --container-default-padding-bottom: 0;

    /* DEPRECATED */
    --brand-primary-color: 		#cf9595;
	--brand-secondary-color: 	#585e6a;
    
    /* NEW */
    --brand-color-primary: 		#cf9595;
	--brand-color-secondary: 	#2B303B;
    --brand-color-accent:       #585E6A;
    
}

a {color: var(--brand-primary-color);}
a:hover {color: var(--brand-secondary-color);}

html {
    font-family: Lato, "Helvetica Neue", Arial,sans-serif;
}

body {
	-webkit-font-smoothing: antialiased;
}

a, a:hover, a:focus {text-decoration: none;}

h2:first-letter,
h3:first-letter {
    font-size: 130%;
}

ul.bulleted {margin: 0; padding: 0; list-style: none;}
ul.bulleted li {padding: 0;}

table td {
    height: 46px;
    text-transform: uppercase;
    font-size: .9rem;
    letter-spacing: 1px;
}

/*
 * ##################################################
 * FORM
 * ##################################################
 */

form {
	position: relative;
}

form button,
form input[type=button],
form input[type=submit] {
    display: inline-block;
    border: none;
    margin: 0;
    text-decoration: none;
    font-size: .8rem;
    cursor: pointer;
    text-align: center;
    transition: background 250ms ease-in-out, 
                transform 150ms ease;
    -webkit-appearance: none;
    -moz-appearance: none;
}

form button:hover,
form button:focus,
form input[type=button]:hover,
form input[type=button]:focus,
form input[type=submit]:hover,
form input[type=submit]:focus {}

form button:focus,
form input[type=button]:focus,
form input[type=submit]:focus {
    outline: none;
    outline-offset: -4px;
}

form input[type=text],
form input[type=password],
form input[type=email],
form input[type=url],
form input[type=tel],
form input[type=search],
form input[type=number],
form input[type=date] {
    width: 100%;
    height: 46px;
    padding: 10px;

    border: 1px solid #E3E3E3;
	border-radius: 0;
    
    color: rgb( 100, 100, 100 );
    font-size: .8rem;
	font-family: inherit;
    line-height: 20px;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}

form input[type=text]:focus,
form input[type=password]:focus,
form input[type=email]:focus,
form input[type=url]:focus,
form input[type=tel]:focus,
form input[type=search]:focus, 
form input[type=number]:focus, 
form input[type=date]:focus,
form textarea:focus,
form select:focus {
    outline: none;
    border-color: rgb( 100, 100, 100 );
}

/*
 * TEXTAREA #########################################
 */

form textarea {
    width: 100%;
	min-width: 100%;
	max-width: 100%;
    padding: 10px;
    margin: 0 0 10px 0;
    
    border: 1px solid #E3E3E3;
	
    font-size: .8rem;
    font-family: inherit;
    line-height: 20px;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
}

/*
 * SELECT ###########################################
 */

form select {
	width: 100%;
	height: 46px;
	padding: 0 10px;
	font-size: .8rem;
	    
    border: 1px solid #E3E3E3;
	border-radius: 0;
	
    color: rgb( 100, 100, 100 );
	font-family: inherit;
    line-height: 20px;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
	
}

/* Basic Layout
================================================== */

.site-wrapper {
	margin: 0 auto;
    /*overflow: hidden;*/
    position: relative;
}

@media only screen and (min-width: 1600px) {

    .site-wrapper {
        width: var(--layout-outer-width);
        max-width: var(--layout-outer-width);
    }

}

[data-elementor-device-mode=widescreen] .site-wrapper,
[data-elementor-device-mode=desktop] .site-wrapper {
    display: flex;
}

[data-elementor-device-mode=widescreen] .site-header,
[data-elementor-device-mode=desktop] .site-header {
    width: 320px;
}

[data-elementor-device-mode=widescreen] .site-main,
[data-elementor-device-mode=desktop] .site-main {
    width: calc(100% - 320px);
}

/*
.logo img {transform: scale(2); transition: all .3s;}
.elementor-sticky--active .logo img {transform: scale(1);}
*/
/* WordPress CSS
================================================== */

.aligncenter,
div.aligncenter {
	display: block;
	margin-right: auto;
	margin-left: auto;
}

.aligncenter {
	margin-top: 5px;
    margin-bottom: 15px;
}

div.aligncenter {
	margin-top: 0;
}

.alignleft,
.alignright {
	width: auto;
	margin: 0 auto 20px;
}

@media only screen and (min-width: 768px) {

	.alignleft {
		float: left;
		margin-left: 0;
		margin-right: 20px;
	}
	
	.alignright {
		float: right;
		margin-left: 20px;
		margin-right: 0;
	}

}

.alignnone {}

.wp-caption {
	max-width: 100%;
	margin-bottom: 20px;
}

.wp-caption.aligncenter,
.wp-caption.alignnone {
	margin: 30px 0;
}

.wp-caption.aligncenter:first-child,
.wp-caption.alignnone:first-child {
	margin-top: 0;
}

.wp-caption.aligncenter {
	margin-left: auto;
	margin-right: auto;
}

.wp-caption img {
	float: none;
	padding: 0px;
	border: none;
}

.wp-caption-text {
	margin: 0 0 -10px;
	padding: 10px 0;
	font-size: 13px;
	font-style: italic;
}

.gallery-icon img {
	border: none !important;
}

.gallery-item .wp-caption-text {
	margin: 10px 0 0;
	padding: 0;
	background: none;
}

.sticky {}

.bypostauthor {}

.widget_recent_entries ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.widget_recent_entries li {
	border-bottom: 1px solid rgba(219,219,219,.75);
	margin-bottom: 10px;
	padding-bottom: 10px;
}

.site-bottom .widget_recent_entries li {
	border-bottom-color: rgba(255,255,255,.1);
}

.widget_recent_entries li:last-child {
	border-bottom: 0;
	margin-bottom: 0;
	padding-bottom: 0;
}

.widget_recent_entries .post-date {
	display: block;
	font-size: 14px;
}

/*---- Genral classes end -------*/

/*
 * ##################################################
 * SCROLLBAR STYLES #################################
 * for webkit (and blink) browsers ##################
 * ##################################################
 */

::-webkit-scrollbar {
	width: 3px;
	height: 0;
	background-color: transparent;
}

::-webkit-scrollbar-button:start:decrement,
::-webkit-scrollbar-button:end:increment {
	height: 0;
	display: block;
	background-color: #a2c4b9;
}

::-webkit-scrollbar-track-piece {
	background-color: transparent;
}

::-webkit-scrollbar-thumb:vertical {
	height: 50px;
	background-color: rgb( 100, 100, 100 ) !important; /* $brand */
}

/* Define Text Mark Color */
::-webkit-selection {
    color: #FFF;
    background: #444;
}
::-moz-selection {
    color: #FFF;
    background: #444;
}
::selection {
    color: #FFF;
    background: #444;
}









/**
 * GRAVITY FORMS > BASE STYLES
 */


/**
 * GRAVITYVIEW
 */

.gv-table-view {border-collapse: collapse}

.gv-table-view thead th,
.gv-table-view tfoot th {text-transform: uppercase; letter-spacing: 1px;}

.gv-table-view tbody tr {border-top: 1px solid #DDD;}
.gv-table-view tbody tr:hover {background: #eee;}

.gv-table-view tbody tr td,
.gv-table-view tbody tr td a {text-transform: uppercase; font-size: .9rem; letter-spacing: 1px;}

.gv-field-large .gv-field-label {font-size: 1em !important; font-weight: bold !important; text-transform: uppercase;}
.gv-field-large .gv-grid-value {font-size: 1.6em !important; font-weight: bold !important;}

.gv-table-view .text-success {color: #090;}
.gv-table-view .text-error {color: #900;}

.gv-table-view-content {
    border: 1px solid #eee;
    background: #fff;
    padding: 20px;
}

.control-theme .dataTables_wrapper .dataTables_scrollBody {
    height: calc(var(--body-height) - 300px);
    background: none;
}

.control-theme .dataTables_wrapper .dataTables_info,
.control-theme .dataTables_wrapper .dataTables_filter {
    display: none;
}


.gform_required_legend {display: none;}

.gform_footer {
	margin: 10px 0;
}

input.gv-button-update {
	top: -1px;
	position: relative;
}

a.gv-button-delete,
a.gv-button-cancel {
	margin: 0 0 0 10px;
	padding: 10px 25px!important;
	background: #444;
	display: inline-block;
	text-transform: uppercase;
	letter-spacing: 1px;
    font-size: 0.8rem;
	color: #FFF;
    border-radius: 50px;
}

a.gv-button-delete {
	color: #444;
    border: 1px solid #444;
    background: transparent;
}

.control-theme table.dataTable.dtr-inline.collapsed>tbody>tr>td.dtr-control,
.control-theme table.dataTable.dtr-inline.collapsed>tbody>tr>th.dtr-control {
    padding-left: 25px;
}

.control-theme table.dataTable.dtr-inline.collapsed>tbody>tr>td.dtr-control:before,
.control-theme table.dataTable.dtr-inline.collapsed>tbody>tr>th.dtr-control:before {
    background: none;
    color: #666;
    box-shadow: none;
    border: none;
    margin-top: -6px;
}

.control-theme table.dataTable.dtr-inline.collapsed>tbody>tr.parent>td.dtr-control:before,
.control-theme table.dataTable.dtr-inline.collapsed>tbody>tr.parent>th.dtr-control:before {
    background: none;
}


.control-theme .gv-container-no-results thead,
.control-theme .gv-container-no-results tfoot {
    display: none;
}

.control-theme .gv-container-no-results .gv-no-results-text {
    text-align: left;
}

.control-theme .gv-container-no-results .gv-no-results-text p {
    margin: 0;
}

.control-theme .gv-container-no-results .gv-no-results-text p:before {
    content: "\f00c";
    font-family: "Font Awesome 5 Pro";
    width: 32px;
    height: 32px;
    margin-right: 10px;
    border: 1px solid;
    border-radius: 100px;
    text-align: center;
    vertical-align: middle;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.control-theme .gv-container-no-results .gv-table-view tbody tr {
    border-top: none;
}

.control-theme .gv-container-no-results .gv-table-view tbody tr:hover {
    background: none;
}

/**
 * GRAVITYVIEW > FANCYBOX
 */

.control-theme .fancybox__content>.carousel__button.is-close {
    top: -40px;
    width: auto;
    height: auto;
    padding: 7px 25px;
}

.control-theme .fancybox__content>.carousel__button.is-close i {
    transform: rotate(45deg);
    transition: all .2s;
}

.control-theme .fancybox__content>.carousel__button.is-close:hover i {
    transform: rotate(-45deg);
}

/*
 * SHIFTNAV
 */
/*
@media screen and (min-width:1024px){
    #shiftnav-main {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
        visibility:visible;
        opacity:1;
    }
    .site-main {padding-left: 290px;}
}

#shiftnav-toggle-main .shiftnav-toggle-burger {border-radius: 0;}
#shiftnav-toggle-main {}

/*
 * SHIFTCONTROLLER
 */

.control-theme .hc-table {background: #FFF;}
.control-theme .hc-border-gray {border-color: #DDD;}

.control-theme .hc-fs1 {text-transform: uppercase; letter-spacing: 2px;}


/*
 * GP Autoload Notice
 */
.control-theme .gpasc-auto-load-notice {
    padding: 10px 20px;
    color: #FFF;
    background: #2B303B;
    border-radius: 5px;
}

.control-theme .gpasc-auto-load-notice p {
    margin: 0;
}

.control-theme .gpasc-auto-load-notice a {
    color: #B87D7E;
}


/*
 * Gravity Forms > Progress/Steps
 */
.control-theme .gform_wrapper.gravity-theme .gf_page_steps {
    white-space: nowrap;
    overflow: scroll;
}

.control-theme .gform_wrapper.gravity-theme .gf_step_number {
    color: var(--brand-secondary-color);
    border: 1px solid var(--brand-secondary-color);
}

.control-theme .gform_wrapper.gravity-theme .gf_step_active .gf_step_number {
    color: #fff;
    background: var(--brand-primary-color);
    border-color: var(--brand-primary-color);
}

.control-theme .gform_wrapper.gravity-theme .gf_step_completed .gf_step_number::before {
    top: -1px;
    left: -1px;
    border: none;
}

.control-theme .gform_wrapper.gravity-theme .gf_step_label {
    text-transform: uppercase;
    letter-spacing: 1px;
    color: var(--brand-secondary-color);
}

/*
 * Profile PIN CSS
 */
.ppl-wrapper .ppl-profile {
    width: 120px;
    padding: 0;
    border-radius: 0;
    background: none;
}

.ppl-wrapper .ppl-profile:active {
    transform: scale(0.9);
}

.ppl-wrapper .ppl-profile:focus,
.ppl-wrapper .ppl-profile:hover {
    background: none !important;
    transform: scale(1.2);
}

.ppl-wrapper .ppl-profile-avatar {
    display: none;
    width: 100%;
    aspect-ratio: 1 / 1;
    border-radius: 999px;
    object-fit: cover;
}

.ppl-wrapper .ppl-profile-name {
    color: #333;
    background: rgba(255,255,255,1);
    border: 2px solid #FFF;
    width: 120px;
    height: 120px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 100%;
    text-transform: capitalize;
    font-size: 1.2rem;
    text-align: center;
    word-break: break-word;
    font-family: "Breathing", 'Open Sans', Sans-serif;
    letter-spacing: 2px;
}

.ppl-wrapper .ppl-back {
    margin: 0 auto 8px;
    background: transparent;
    border: none;
    cursor: pointer;
    font-size: .95rem;
    padding: 0;
}

.ppl-wrapper .ppl-back:active, .ppl-wrapper .ppl-back:focus {
    background: none !important;
}

.ppl-wrapper .ppl-selected {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    margin: 0 0 20px;
    justify-content: center;
}

.ppl-wrapper .ppl-selected-avatar {
    width: 80px;
    height: 80px;
    border-radius: 999px;
    display: none;
}

.ppl-wrapper .ppl-selected-name {
    letter-spacing: 1px;
    width: 120px;
    height: 120px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #FFF;
    border-radius: 100%;
    color: #333;
    font-family: 'Breathing';
    text-transform: capitalize;
    font-size: 1.2rem;
    font-weight: normal;
}

.ppl-wrapper .ppl-pin-label {
    display: block;
    margin-bottom: 8px;
}

.ppl-wrapper .ppl-pin-label span {
    /* display: none; */
    color: #fff;
    width: 150px;
    background: #d3b052;
    height: 48px;
    border-radius: 25px 0 0 25px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 20px 0 0;
    font-weight: 600;
    letter-spacing: 2px;
    font-size: .9rem;
}
.ppl-wrapper .ppl-pin-label span:after {
    content: '';
    width: 25px;
    height: 50px;
    display: block;
    background: #fff;
    position: absolute;
    top: -1px;
    right: 0;
    border-radius: 25px 0 0 25px;
}
.ppl-wrapper .ppl-pin-input-wrap {
    display: flex;
    align-items: center;
    padding: 0px;
    border-radius: 25px;
    background: #fff;
    position: relative;
    max-width: 300px;
}

.ppl-wrapper .ppl-pin-input {
    text-align: center;
    min-width: 0;
    border: none;
    outline: none;
    font-size: 1.2rem;
    letter-spacing: .2em;
    background: transparent;
    margin-right: 30px;
    width: 200px;
}

.ppl-wrapper .ppl-toggle-visibility {
    justify-content: center;
    width: 60px;
    height: 48px;
    -webkit-user-select: none;
    user-select: none;
    color: #EED;
    border-radius: 25px;
    text-align: center;
    position: relative;
}

.ppl-wrapper .ppl-toggle-visibility i {
    font-size: 1.1rem;
    line-height: 2;
    pointer-events: none;
    position: absolute;
    left: 50%;
    top: 8px;
    transform: translate(-10px, 0);
}

.ppl-wrapper .ppl-submit {
    width: 100%;
    margin-top: 10px;
    padding: 12px 25px;
    color: #fff;
    border-radius: 25px;
    cursor: pointer;
    font-size: .9rem;
    font-weight: 600;
    font-family: 'Open Sans';
    letter-spacing: 2px;
}

.ppl-wrapper .ppl-submit:disabled {
    opacity: .6;
    cursor: not-allowed;
}

.ppl-wrapper .ppl-error {
    color: #b91c1c;
    margin-top: 10px;
    min-height: 1.2em;
    display: block;
}

@media (hover: hover) {
    .ppl-wrapper .ppl-profile:hover {
        background: none;
        transform: scale(1.2);
    }

    .ppl-wrapper .ppl-profile:hover .ppl-profile-name {
        border-width: 3px;
        background: var(--brand-color-primary);
        color: #FFF;
    }

    .ppl-wrapper .ppl-submit:hover {
        filter: brightness(1.02);
    }

    .ppl-wrapper .ppl-back:hover {
        background: none;
    }
}

@media (max-width: 400px) {
    .ppl-wrapper .ppl-profiles {
        gap: 12px;
    }
}
