/*
File Name: style.less
Date: 01/27/21
Programmer: Fredy Chavez
*/

/* INSERT LESS VARIABLES HERE */

/* colors */

@mBgColor: #E8E8E8;
@tBgColor: #E8E8E8;
@dBgColor: #E8E8E8;
@paletteColor1: #FFFFFF;
@paletteColor2: #000000;
@paletteColor3: #FF0000;

/* sizes */

@mFontSize: 16px;
@tFontSize: 15px;
@dFontSize: 14px;
@h1FontSize: 2em;
@h2FontSize: 1.4em;
@h3FontSize: 1.1em;
@summaryFontSize: .6em;
@summaryFirstFontSize: 1.5em;
@designerFontSize: .75em;
@contactFontSize: 0.9em;

/* margins */

@pHeadingMargin: 1em 0;
@mBodyMargin: 0 1em;
@tBodyMargin: 0 4%;
@dBodyMargin: 0 3%;
@olLiLeftMargin: 8px;

/*MIXINS*/

.commonProperties(@bg_color, @font_size, @body_margin) {
    background-color: @bg_color; 
    font-size: @font_size;
    margin: @body_margin;
}

.size(@font_size) {
    font-size: @font_size;
}

.color(@color) {
    color: @color;
}

/* MOBILE STYLES */

body {
	font-family: "Open Sans", sans-serif;
	line-height: 1.5em;
    .commonProperties(@mBgColor, @mFontSize, @mBodyMargin);
}

header {
    text-align: center;
    background-color: #000000;
    .color(@paletteColor3);
    }
main {
    background-color: #FFFFFF;
    height: 100%;
}

section {
    padding: 0 10px 0 10px;
}

p, h1, h2, h3 {
	margin: @pHeadingMargin;
}

h1, h2, h3 {
	font-weight: bold;
}

h1 {
    .size(@h1FontSize);
	text-shadow: 1px 1px #999999;
	margin-bottom: 0;
	margin-top: 0;
	line-height: 2em;
}

h2 {
    .size(@h2FontSize);
}

h3 {
    .size(@h3FontSize);
	font-style: italic;
}

ol {
	list-style: decimal;
	margin-left: 25px;
}

li {
	line-height: 1.5em;
}

footer {
	font-style: italic;
    .color(@paletteColor1);
	text-align: center;
    padding: 2px 0 2px 0;
    background-color: #000000;
    clear: both;
}

footer li a {
    .color(@paletteColor1);
}

footer li a:hover {
    color: #999999;
}

footer li a:visited {
    .color(@paletteColor3);
}



/* display:in-line block allows for the the social media icons to align next to eachother. */
.media li {
    display: inline-block;
    font-size: 2.5em;
    letter-spacing: 15px;
}

.media li a:hover{
    color: #999999;
}

#container {
	margin: 0 1em;
    height: 100%;
}

#summary {
    .size(@summaryFontSize);
	font-style: italic;
	line-height: 115%;
	letter-spacing: 1px;
}

#summary:first-letter {
    .size(@summaryFirstFontSize);
	font-weight: bold;
}

#designer {
    .size(@designerFontSize);
	line-height: 1.1em;
    .color(@paletteColor1);
}

#designer a {
   .color(@paletteColor1);
}

#designer a:hover {
    color: #999999;
}

#designer a:visited {
    .color(@paletteColor3);
}

#contact {
	letter-spacing: 3px;
    .size(@contactFontSize);
    .color(@paletteColor1);
}

#contact a:hover {
    color: #999999;
}

#contact a:visited {
    .color(@paletteColor3);
}

/* CSS GRID MOBILE */
.more-content {
    padding: 0 10px 0 10px;
}
.grid {
	display: grid;
	grid-gap: 20px;
	padding: 0 30px 0 30px;
}

.item1 {
	grid-column: 1 / span 12;
	grid-row: 1;
}

.item2 {
	grid-column: 1 / span 12;
	grid-row: 2;
}

aside {
    display: none;
}

/* TABLET STYLES */

@media only screen and (min-width: 600px) {
    
	body {
        .commonProperties(@tBgColor, @tFontSize, @tBodyMargin);
	}

	h2 {
		margin-top: 0;
		margin-bottom: .8em;
	}

	h3 {
		margin-top: 0;
	}

	ol {
		margin-bottom: 15px;
	}

	ol li {
		margin-left: @olLiLeftMargin;
	}

	ul {
		margin-bottom: 1em;
	}
    
    /* CSS GRID TABLET */

	.item1 {
		grid-column: 1 / span 6;
		grid-row: 1;
	}

	.item2 {
		grid-column: 7 / span 6;
		grid-row: 1;
	}

    /*GALLERY STYLES*/
    .gallery-photos {
        border: 2px solid black;
        height: 435px;
        padding: 4px;
    }

    .thumbnail {
        float:left;
        width: 300px;
    }

    .thumbnail img {
        float:left;
        width: 144px;
        padding: 0;
        margin: 2px;
        border: 1px solid purple;
    }

    .bigPhoto {
        float:right;
        background-color:#fff;
        border:1px solid #e7e7e7;
        padding:3px;
    }

    .bigPhoto img {
        float:left;
        width:690px;
        height:auto;
        margin:0;
        padding:0;
    }

    img {
        display:inline;
    }

    .photo-thumbnails {
        border:1px solid blue;
        width:40%;
    }

    .photo-thumbnails img {
        float:left;
        margin:2px;
    }

    .photo-thumbnails .thumbnail.current {
        opacity:1;
        background-color:#fff;
    }

    #caption {
        text-align:center;
        font-style:italic;
    }
}

/* DESKTOP STYLES */

@media only screen and (min-width: 1025px) {

    html, body {
        height: 100%; /* set height to 100% along with .main to allow aside to extend full height */
    }
    
	body {
        .commonProperties(@dBgColor, @dFontSize, @dBodyMargin); 
	}
    
    main {
        float: left;
        width: 75%;
        padding: 0;
        overflow: auto;
    }
    
    /*display and confirgures aside in desktop view*/
    aside {
        display: inline-block;
        float: right;
        width: 25%;
        height: 100%;
        background-color:#FF0000;
        overflow: hidden;
        .color(@paletteColor1);
    }
    
    .weatherwidget-io {
        margin-bottom: 50px;
    }
    
    .social {
        display: block;
        width: 300px;/* match with iframe width in html to display properly */
        height: 700px; /* match with iframe width in html to display properly */
    }
   
    
/* CSS GRID DESKTOP */
    
	.item1 {
		grid-column: 1 / span 6;
		grid-row: 1;
	}

	.item2 {
		grid-column: 7 / span 6;
		grid-row: 1;
	}
}