
/* Main container */
.scaled{
	transform: scale(0.87);
}

.scaled-album{
	transform: scale(0.87);
}

.lucassette-container{
	text-align: center;
	height: 500px;
    margin-top: 100px;
	margin-bottom: 50px;
	position: relative;
}

/* Tape elements */
.lucassette-tape-wrapper{
	-webkit-perspective: 800px;	
	-moz-perspective: 800px;
	-o-perspective: 800px;
	-ms-perspective: 800px;
	perspective: 800px;
}
.lucassette-tape{
	width: 586px;
	height: 379px;
	margin: 30px auto 0;
	position: relative;
	-webkit-transition: all .4s ease-in-out;	
	-moz-transition: all .4s ease-in-out;
	-o-transition: all .4s ease-in-out;
	-ms-transition: all .4s ease-in-out;
	transition: all .4s ease-in-out;
}
.lucassette-loader{
	position: absolute;
	width: 31px;
	height: 31px;
	bottom: 50px;
	left: 50%;
	margin: -15px 0 0 -15px;
	background: transparent url(../../../img/music/tape/ajax-loader.gif) no-repeat center center;
	display: none;
}
.lucassette-tape-back{
	width: 100%;
	height: 100%;
	position: relative;
	background: transparent url(../../../img/music/tape/cs_back.png) no-repeat center center;
}
.lucassette-tape-wheel{
	width: 125px;
	height: 125px;
	position: absolute;
	top: 110px;
	background: transparent;
	border-radius: 50%;
}
.lucassette-tape-wheel-left{
	left: 109px;
	box-shadow: 0 0 0 70px #000;
}
.lucassette-tape-wheel-right{
	right: 113px;
}
@-webkit-keyframes rotateLeft {
	0% { -webkit-transform: rotate(0deg) translateZ(-1px); }
	100% { -webkit-transform: rotate(-360deg) translateZ(-1px); }
}
@-webkit-keyframes rotateRight {
	0% { -webkit-transform: rotate(0deg) translateZ(-1px); }
	100% { -webkit-transform: rotate(360deg) translateZ(-1px); }
}
@-moz-keyframes rotateLeft {
	0% { -moz-transform: rotate(0deg) translateZ(-1px); }
	100% { -moz-transform: rotate(-360deg) translateZ(-1px); }
}
@-moz-keyframes rotateRight {
	0% { -moz-transform: rotate(0deg) translateZ(-1px); }
	100% { -moz-transform: rotate(360deg) translateZ(-1px); }
}
@-o-keyframes rotateLeft {
	0% { -o-transform: rotate(0deg) translateZ(-1px); }
	100% { -o-transform: rotate(-360deg) translateZ(-1px); }
}
@-o-keyframes rotateRight {
	0% { -o-transform: rotate(0deg) translateZ(-1px); }
	100% { -o-transform: rotate(360deg) translateZ(-1px); }
}
@-ms-keyframes rotateLeft {
	0% { -ms-transform: rotate(0deg) translateZ(-1px); }
	100% { -ms-transform: rotate(-360deg) translateZ(-1px); }
}
@-ms-keyframes rotateRight {
	0% { -ms-transform: rotate(0deg) translateZ(-1px); }
	100% { -ms-transform: rotate(360deg) translateZ(-1px); }
}
@keyframes rotateLeft {
	0% { transform: rotate(0deg) translateZ(-10px); }
	100% { transform: rotate(-360deg) translateZ(-1px); }
}
@keyframes rotateRight {
	0% { transform: rotate(0deg) translateZ(-1px); }
	100% { transform: rotate(360deg) translateZ(-1px); }
}
.lucassette-tape-wheel div{
	width: 100%;
	height: 100%;
	background: transparent url(../../../img/music/tape/cs_wheel.png) no-repeat center center;
}
.lucassette-tape-front{
	width: 100%;
	height: 100%;
	position: absolute;
	background: transparent url(../../../img/music/tape/cs_front.png) no-repeat center center;
	top: 0px;
	left: 0px;
}
.lucassette-tape-front1{
	width: 100%;
	height: 100%;
	position: absolute;
	background: transparent url(../../../img/music/tape/cs_front1.png) no-repeat center center;
	top: 0px;
	left: 0px;
}
.lucassette-tape-front2{
	width: 100%;
	height: 100%;
	position: absolute;
	background: transparent url(../../../img/music/tape/cs_front2.png) no-repeat center center;
	top: 0px;
	left: 0px;
}
.lucassette-tape-front3{
	width: 100%;
	height: 100%;
	position: absolute;
	background: transparent url(../../../img/music/tape/cs_front3.png) no-repeat center center;
	top: 0px;
	left: 0px;
}
.lucassette-tape-front4{
	width: 100%;
	height: 100%;
	position: absolute;
	background: transparent url(../../../img/music/tape/cs_front4.png) no-repeat center center;
	top: 0px;
	left: 0px;
}
.lucassette-tape-front5{
	width: 100%;
	height: 100%;
	position: absolute;
	background: transparent url(../../../img/music/tape/cs_front5.png) no-repeat center center;
	top: 0px;
	left: 0px;
}
.lucassette-tape-front6{
	width: 100%;
	height: 100%;
	position: absolute;
	background: transparent url(../../../img/music/tape/cs_front6.png) no-repeat center center;
	top: 0px;
	left: 0px;
}

.lucassette-tape-front7{
	width: 100%;
	height: 100%;
	position: absolute;
	background: transparent url(../../../img/music/tape/cs_front7.png) no-repeat center center;
	top: 0px;
	left: 0px;
}
.lucassette-tape-front8{
	width: 100%;
	height: 100%;
	position: absolute;
	background: transparent url(../../../img/music/tape/cs_front8.png) no-repeat center center;
	top: 0px;
	left: 0px;
}

.lucassette-tape-front9{
	width: 100%;
	height: 100%;
	position: absolute;
	background: transparent url(../../../img/music/tape/cs_front9.png) no-repeat center center;
	top: 0px;
	left: 0px;
}


.lucassette-tape-side-b{
	display: none;
	-webkit-transform: rotate3d(0, 1, 0, 180deg);
	-moz-transform: rotate3d(0, 1, 0, 180deg);
	-o-transform: rotate3d(0, 1, 0, 180deg);
	-ms-transform: rotate3d(0, 1, 0, 180deg);
	transform: rotate3d(0, 1, 0, 180deg);
}

.lucassette-tape-front span{
	color: rgba(0, 0, 0, 0.6);
	position: absolute;
	top: 83px;
	left: 67px;
	font-family: Arial;
	font-weight: bold;
	font-size: 20px;
}

.lucassette-tape-front1 span{
	color: rgba(0, 0, 0, 0.6);
	position: absolute;
	top: 83px;
	left: 67px;
	font-family: Arial;
	font-weight: bold;
	font-size: 20px;
}

.lucassette-tape-front2 span{
	color: rgba(0, 0, 0, 0.6);
	position: absolute;
	top: 83px;
	left: 67px;
	font-family: Arial;
	font-weight: bold;
	font-size: 20px;
}

.lucassette-tape-front3 span{
	color: rgba(0, 0, 0, 0.6);
	position: absolute;
	top: 83px;
	left: 67px;
	font-family: Arial;
	font-weight: bold;
	font-size: 20px;
}

.lucassette-tape-front4 span{
	color: rgba(0, 0, 0, 0.6);
	position: absolute;
	top: 83px;
	left: 67px;
	font-family: Arial;
	font-weight: bold;
	font-size: 20px;
}

.lucassette-tape-front5 span{
	color: rgba(0, 0, 0, 0.6);
	position: absolute;
	top: 83px;
	left: 67px;
	font-family: Arial;
	font-weight: bold;
	font-size: 20px;
}

.lucassette-tape-front6 span{
	color: rgba(0, 0, 0, 0.6);
	position: absolute;
	top: 83px;
	left: 67px;
	font-family: Arial;
	font-weight: bold;
	font-size: 20px;
}

.lucassette-tape-front7 span{
	color: rgba(0, 0, 0, 0.6);
	position: absolute;
	top: 83px;
	left: 67px;
	font-family: Arial;
	font-weight: bold;
	font-size: 20px;
}

.lucassette-tape-front8 span{
	color: rgba(0, 0, 0, 0.6);
	position: absolute;
	top: 83px;
	left: 67px;
	font-family: Arial;
	font-weight: bold;
	font-size: 20px;
}

.lucassette-tape-front9 span{
	color: rgba(0, 0, 0, 0.6);
	position: absolute;
	top: 83px;
	left: 67px;
	font-family: Arial;
	font-weight: bold;
	font-size: 20px;
}

/* Controls list */
ul.lucassette-controls{
	list-style: none;
	padding: 0;
	width: 440px;
	position: absolute;
	bottom: 30px;
	left: 42.5%;
	margin: 0 0 0 -235px;
	background: -moz-linear-gradient(top, rgba(170,170,170,0.35) 0%, rgba(255,255,255,0.44) 50%, rgba(255,255,255,0.53) 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(170,170,170,0.35)), color-stop(50%,rgba(255,255,255,0.44)), color-stop(100%,rgba(255,255,255,0.53)));
	background: -webkit-linear-gradient(top, rgba(170,170,170,0.35) 0%,rgba(255,255,255,0.44) 50%,rgba(255,255,255,0.53) 100%);
	background: -o-linear-gradient(top, rgba(170,170,170,0.35) 0%,rgba(255,255,255,0.44) 50%,rgba(255,255,255,0.53) 100%);
	background: -ms-linear-gradient(top, rgba(170,170,170,0.35) 0%,rgba(255,255,255,0.44) 50%,rgba(255,255,255,0.53) 100%);
	background: linear-gradient(to bottom, rgba(170,170,170,0.35) 0%,rgba(255,255,255,0.44) 50%,rgba(255,255,255,0.53) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#59aaaaaa', endColorstr='#87ffffff',GradientType=0 );
	border: 1px solid rgba(0,0,0,0.1);
	border-bottom-color: rgba(255,255,255,0.6);
	padding: 8px;
	height: 54px;
	box-shadow: 
		inset 0 1px 0px rgba(0,0,0,0.05),
		0 1px 0 rgba(255,255,255,0.8),
		0 -1px 0 rgba(255,255,255,0.4),
		inset 0 2px 19px rgba(0,0,0,0.05),
		0 2px 1px rgba(0,0,0,0.06);
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	border-radius: 12px;
}

/* Controls list items */
ul.lucassette-controls li {
	display: block;
	float: left;
	width: 80px;
    height: 50px;
	line-height: 55px;
	text-align: left;
    padding: 10px;
	margin: 0;
    cursor: pointer;
    background: #ddd url(../../../img/music/tape/metal.jpg) no-repeat center top;
	box-shadow: 
		inset 0 0 0 1px rgba(0,0,0, 0.2), 
		inset 0 0 1px 2px rgba(255,255,255,0.9),
		inset 0 -6px 5px rgba(0,0,0,0.1),
		0 6px 7px rgba(0,0,0,0.3),
		0 4px 1px rgba(0,0,0,0.5);
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

ul.lucassette-controls li:first-child{
	border-radius: 8px 0 0 8px;
}

ul.lucassette-controls li:last-child{
	border-radius: 0px 8px 8px 0px;
}

ul.lucassette-controls li.lucassette-control-play{
	width: 120px;
}
/*
ul.lucassette-controls li.lucassette-control-rewind{
	width: 120px;
}
ul.lucassette-controls li.lucassette-control-fforward{
	width: 120px;
	padding-left:60px;
}
ul.lucassette-controls li.lucassette-control-stop{
	width: 80px;
}
ul.lucassette-controls li.lucassette-control-pause{
	width: 80px;
}

	Control icons */
ul.lucassette-controls li span:before{
	font-size: 16px;
	line-height: 50px;
	text-align: center;
	float: left;
	color: #444;
	font-family: 'playericons';
	text-shadow:  1px 1px 1px rgba(255,255,255,0.9);
	font-style: normal;
	font-weight: normal;
	text-transform: none;
	speak: none;
	display: inline-block;
	text-decoration: inherit;
	width: 1em;
	margin-right: 0.2em;
	text-align: center;
}

li.lucassette-control-pause span:before { content: '\50'; } 
li.lucassette-control-fforward span:before { content: '\23e9'; } 
li.lucassette-control-rewind span:before { content: '\23ea'; } 
li.lucassette-control-stop span:before { content: '\25aa'; } 
li.lucassette-control-play span:before { content: '\70'; } 
li.lucassette-control-volume-off span:before { content: 'ðŸ”‡'; } 
li.lucassette-control-volume-down span:before { content: 'ðŸ”‰'; } 
li.lucassette-control-volume-up span:before { content: 'ðŸ”Š'; } 

ul.lucassette-controls li:hover{
	box-shadow: 
		inset 0 0 0 1px rgba(0,0,0, 0.2), 
		inset 0 0 1px 2px rgba(255,255,255,0.9),
		inset 0 -10px 15px rgba(0,0,0,0.1),
		0 6px 7px rgba(0,0,0,0.3),
		0 4px 1px rgba(0,0,0,0.5);
}

/* Pressed (active) */
ul.lucassette-controls li.lucassette-control-active{
	height: 50px;
	margin-top: 2px;
	background-image: url(../../../img/music/tape/metal_dark.jpg);
	box-shadow: 
		inset 0 0 0 1px rgba(0,0,0, 0.18), 
		inset 0 0 1px 2px rgba(255,255,255,0.5),
		inset 0 -16px 5px rgba(0,0,0,0.7),
		0 6px 7px rgba(0,0,0,0.3),
		0 2px 1px rgba(0,0,0,0.5);

}

/* Activated */
ul.lucassette-controls li.lucassette-control-pressed,
ul.lucassette-controls li.lucassette-control-active.lucassette-control-pressed{
	height: 50px;
	background-image: url(../../../img/music/tape/metal_dark.jpg);
	margin-top: 4px;
	box-shadow: 
		inset 0 0 0 1px rgba(0,0,0, 0.2), 
		inset 0 0 5px 1px rgba(255,255,255,0.5),
		inset 0 -10px 15px rgba(0,0,0,0.2),
		0 7px 5px rgba(255,255,255,0.5);
}

/* 	
Background for the volume knob 
See knobKnob.css for the knob style*/

.lucassette-volume-wrap{
    display: none !important;
	transform: scale(0.8);
	width: 80px;
	height: 80px;
	position: absolute;
	bottom: 20px;	
	left: 84%;
	right: 16%;
	margin: 0;
	background: -moz-linear-gradient(top, rgba(170,170,170,0.35) 0%, rgba(255,255,255,0.44) 50%, rgba(255,255,255,0.53) 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(170,170,170,0.35)), color-stop(50%,rgba(255,255,255,0.44)), color-stop(100%,rgba(255,255,255,0.53)));
	background: -webkit-linear-gradient(top, rgba(170,170,170,0.35) 0%,rgba(255,255,255,0.44) 50%,rgba(255,255,255,0.53) 100%);
	background: -o-linear-gradient(top, rgba(170,170,170,0.35) 0%,rgba(255,255,255,0.44) 50%,rgba(255,255,255,0.53) 100%);
	background: -ms-linear-gradient(top, rgba(170,170,170,0.35) 0%,rgba(255,255,255,0.44) 50%,rgba(255,255,255,0.53) 100%);
	background: linear-gradient(to bottom, rgba(170,170,170,0.35) 0%,rgba(255,255,255,0.44) 50%,rgba(255,255,255,0.53) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#59aaaaaa', endColorstr='#87ffffff',GradientType=0 );
	border: 1px solid rgba(0,0,0,0.1);
	border-radius: 50%;
	padding: 8px;
	box-shadow: 
		inset 0 1px 0px rgba(0,0,0,0.05),
		0 1px 0 rgba(255,255,255,0.6),
		0 -1px 0 rgba(255,255,255,0.4),
		inset 0 2px 19px rgba(0,0,0,0.05),
		0 2px 1px rgba(0,0,0,0.06);
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
}

.lucassette-volume-wrap:after{
	content: 'Volume';
	margin-top: 15px;
	display: block;
}

/* Text style for controls */
ul.lucassette-controls li,
.lucassette-volume-wrap:after{
	font-family: 'Aldrich';
	font-size: 10px;
	font-weight: 300;
	text-transform: uppercase;
	letter-spacing: 1px;
	color: #666;
	text-shadow: 0 1px 1px rgba(255,255,255,0.8);
}




/* --------------------------------------------------- */
/* 3. LANDSCAPE PHONES / MINI TABLETS (576 - 767px)    */
/* --------------------------------------------------- */
@media screen and (max-width: 767px) {
	.scaled { transform: scale(0.7); }
    .scaled-album {
	    transform: scale(0.7);
        
        /* 1. Remove the negative margin and auto-center the block */
        margin: 0 auto !important; 
        
        /* 2. Use Flexbox to guarantee everything inside stays centered */
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        
        /* 3. Ensure it takes up the full width of its parent container */
        width: 100% !important;
    }
	.lucassette-tape {
        left: 0; 
        margin-top: 0px;
	}
	ul.lucassette-controls {
        transform: scale(1.1);    
        left: 0; right: 0; margin: 0 auto;
        bottom: 30px;
	}   
	.lucassette-volume-wrap { display: none; }
}

/* --------------------------------------------------- */
/* 4. IPAD / STANDARD TABLETS (768 - 991px)            */
/* --------------------------------------------------- */
@media screen and (min-width: 768px) and (max-width: 991px) {
	.scaled { transform: scale(1.0); }
    .scaled-album {
        transform: scale(1.0);
        margin: 0 auto !important; 
        display: block !important;
        text-align: center !important;
        width: 100% !important;
    }
	.lucassette-tape {
        left: 0;
        margin-top: 0px;
	}
	ul.lucassette-controls {
        transform: scale(1.1);    
        left: 0; right: 0; margin: 0 auto;
        bottom: 30px;
	}   
    
    
	.lucassette-volume-wrap { display: none; }
}

/* ========================================= */
/* AERO GLASS MASSIVE SPACING (UNEVEN HEIGHTS) */
/* ========================================= */

/* 1. Desktop & 4K Spacing */
.digital-services .bg_img {
    /* Set to block to ensure Bootstrap doesn't force equal heights */
    display: block !important; 
    padding: 60px 50px !important; 
}

/* 2. Glass Box: Shrinks to fit content, but keeps internal items centered */
.digital-services .content-wrapper {
    border-radius: 24px !important;
    width: 100% !important;
    margin: 0 auto !important; 
    
    /* RESTORED: This is the magic that keeps your tape perfectly centered */
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
}

/* 3. Scale the safe zone down for Tablets and Mobile */
/*@media (max-width: 991px) {
    .digital-services .bg_img {
        padding: 30px 20px !important; 
    }
}
*/
/* --------------------------------------------------- */
/* 5. SMALL LAPTOPS / IPAD PRO (992 - 1199px)          */
/* --------------------------------------------------- */
@media screen and (min-width: 992px) and (max-width: 1199px) {
	.scaled { transform: scale(0.8); }
    .scaled-album {
        transform: scale(1.0);
        margin: 0 auto !important; 
        display: block !important;
        text-align: center !important;
        width: 100% !important;   
    }
	.lucassette-tape {
        left: 0;
        margin-top: -40px;
	}
	ul.lucassette-controls {
        transform: scale(1.05);    
        left: 0; right: 0; margin: 0 auto;
        bottom: 35px;
	}   
	.lucassette-volume-wrap { display: none; }
}

/* --------------------------------------------------- */
/* 6. STANDARD DESKTOPS (1200 - 1439px)                */
/* --------------------------------------------------- */
@media screen and (min-width: 1200px) and (max-width: 1439px) {
	.scaled { transform: scale(0.9); }
    .scaled-album {
        transform: scale(1.0);
        margin: 0 auto !important; 
        display: block !important;
        text-align: center !important;
        width: 100% !important;   
    }
	.lucassette-tape {
        left: 0;
	    margin-top: -20px;
	}
	ul.lucassette-controls {
        transform: scale(1); 
        left: 0; right: 0; margin: 0 auto;
        bottom: 38px;
	}
	.lucassette-volume-wrap { display: none; }
}

/* --------------------------------------------------- */
/* 7. 4K MONITORS & ULTRA-WIDE (1440px and up)         */
/* --------------------------------------------------- */
@media screen and (min-width: 1440px) {
	.scaled { transform: scale(1); }
    .scaled-album {
        transform: scale(1.0); 
        margin: 0 auto !important; 
        display: block !important;
        text-align: center !important;
        width: 100% !important;   
    }
	.lucassette-tape {
        left: 0;
	    margin-top: 0; /* Fully relaxed spacing */
	}
	ul.lucassette-controls {
        transform: scale(1); 
        left: 0; right: 0; margin: 0 auto;
        bottom: 40px;
	}
	.lucassette-volume-wrap { display: none; }
}
