/**
 * CSS for classof97.com
 *
 * fonts:
 * font-family: 'Playfair Display', sans-serif;
 * font-family: 'Lato', sans-serif;
 *
 * colors:
 * blue: #2B3A42
 * light blue: #3F5765
 * sky blue: #BDD4DE
 * white: #EFEFEF
 * orange: #FF530D
 */

body {
	background:#2B3A42;
	font-family: 'Lato', sans-serif;
	font-size:18px;
	color:#EFEFEF;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.site-width {
	width:100%;
	max-width:900px;
}
.blade .blade-content {
	margin:0px auto;
}

img, a {
	border:none;
}

h1,
h2,
h3 {
	font-family: 'Playfair Display', sans-serif;
	font-weight:400;
	font-style:italic;
	-webkit-font-smoothing:subpixel-antialiased;
}

blockquote {
	font-family: 'Playfair Display', sans-serif;
	font-weight:400;
	font-style:italic; 
	font-size:28px;
	line-height:34px;
	margin:30px 0px;
	padding:0px;
	padding-left:40px;
	border-left:4px solid #3F5765;
}

.text-content {
	font-family: 'Lato', sans-serif;
	font-size:17px;
	line-height:28px;
	color:#EFEFEF;
	padding-right:20px;
}
.text-content a {
	color:#BDD4DE;
	text-decoration:underline;
	
	-webkit-transition:color 300ms ease-out;
	-moz-transition:color 300ms ease-out;
	-o-transition:color 300ms ease-out;
	transition:color 300ms ease-out;
}
.text-content a:hover {
	color:#FF530D;
	text-decoration:underline;
}

.square {
	display:block;
	position:relative;
    width:100%;
}
.square:after {
	content: "";
	display: block;
	padding-bottom: 100%;
}
.square .contents {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}

.navigation {
	text-align:center;
}
.navigation ul {
	display:inline-block;
	list-style:none;
	margin:0px;
	padding:0px;
	margin:8px auto 24px auto;
	-webkit-font-smoothing:subpixel-antialiased;
}
.navigation ul li {
	display:inline-block;
	padding:0px 20px;
}
.navigation ul li a {
	display:block;
	color:#EFEFEF;
	text-transform:uppercase;
	text-decoration:none;
	border-top:4px solid rgba(0,0,0,0);
	padding:8px 0px;
	
	-webkit-transition:color 300ms ease-out;
	-moz-transition:color 300ms ease-out;
	-o-transition:color 300ms ease-out;
	transition:color 300ms ease-out;
}
.navigation ul li a:hover {
	color:#FF530D;
	text-decoration:none;
}
.navigation ul li.selected a {
	color:#EFEFEF;
	border-top:4px solid #3F5765;
}

.details {
	background:#EFEFEF;
	padding:20px 40px;
	color:#2B3A42;
	border-top:1px solid #fff;
	-webkit-border-radius:1px;
	-moz-border-radius:1px;
	border-radius:1px;
}
.details h1 {
	margin:0px;
	padding:0px;
}
.details ul {
	list-style:none;
	padding:0px;
	padding-left:30px;
	border-left:4px solid #ccc;
	margin:20px 0px;
}
.details ul li {
	margin:0px;
	padding:0px;
}
.details ul li h2 {
	margin-bottom:0px;
	padding-bottom:0px;
}
.details iframe {
	display:block;
	position:relative;
    width:100%;
	max-height:300px;
}
.details p.text-content {
	color:#2B3A42;
}
.details a {
	color:#3F5765;
	
	-webkit-transition:color 300ms ease-out;
	-moz-transition:color 300ms ease-out;
	-o-transition:color 300ms ease-out;
	transition:color 300ms ease-out;
}
.details a:hover {
	color:#FF530D;
}

.classmates .fa {
	display:inline-block;
	margin-left:5px;
	color:#3F5765;
}
.classmates ul li {
	padding:4px 0px;
}

footer .col {
	border-top:1px solid #3F5765;
	margin-top:40px;
	margin-bottom:40px;
	padding-top:0px;
}
footer .fa {
	font-size:56px;
}
footer .fa.fa-lock,
footer .fa.fa-unlock {
	font-size:18px;
	display:inline-block;
	margin-top:20px;
}
footer a {
	color:#3F5765;
	
	-webkit-transition:color 300ms ease-out;
	-moz-transition:color 300ms ease-out;
	-o-transition:color 300ms ease-out;
	transition:color 300ms ease-out;
}
footer a:hover {
	color:#EFEFEF;
}

.notification {
	display:block;
	background:#BDD4DE;
	color:#2B3A42;
	padding:10px 20px;
	font-weight:bold;
	
	-webkit-border-radius:3px;
	-moz-border-radius:3px;
	border-radius:3px;
	
	-webkit-animation: fadein 1.2s; /* Safari, Chrome and Opera > 12.1 */
       -moz-animation: fadein 1.2s; /* Firefox < 16 */
        -ms-animation: fadein 1.2s; /* Internet Explorer */
         -o-animation: fadein 1.2s; /* Opera < 12.1 */
            animation: fadein 1.2s;
}
h2.notification {
	font-weight:400;
}
.notification.error {
	background:#FF530D;
	color:#fff;
}
.notification.success {
	background:#3F5765;
	color:#fff;
}

.contents.form .text-content {
	color:#2B3A42;
}

.rsvp-details {
	font-size:14px;
	line-height:20px;
	padding:6px 0px;
}
.rsvp-details a {
	text-decoration:none;	
}
.rsvps li {
	border-bottom:1px solid #BDD4DE;
	padding-top:20px !important;
	padding-bottom:0px !important;
}

form {
	margin:0px;
	padding:0px;
}
form input[type="text"],
form input[type="email"],
form input[type="tel"],
form input[type="number"],
form input[type="password"],
form textarea {
	font-family: 'Lato', sans-serif;
	font-size:17px;
	line-height:28px;
	color:#333;
	background:#fff;
	border:1px solid #ccc;
	padding:8px 14px;
	width:calc(100% - 28px);
}
form textarea {
	height:120px;
}
form button,
a.button {
	font-family: 'Playfair Display', sans-serif;
	font-weight:400;
	font-style:italic;
	font-size:28px;
	-webkit-font-smoothing:subpixel-antialiased;
	color:#fff;
	background:#3F5765;
	border:none;
	text-align:center;
	padding:5px 30px 8px 30px;
	margin-top:30px;
	text-decoration:none;
	
	-webkit-border-radius:3px;
	-moz-border-radius:3px;
	border-radius:3px;
	
	-webkit-transition:background 300ms ease-out;
	-moz-transition:background 300ms ease-out;
	-o-transition:background 300ms ease-out;
	transition:background 300ms ease-out;
}
form button:hover,
a.button:hover {
	background:#FF530D;
	color:#fff;
	cursor:pointer;
}
form h2 span {
	color:#FF530D;
}
form .callout {
	background:#fff;
	width:calc(100% - 50px);
	padding:4px 25px;
	font-size:16px;
	
	-webkit-border-radius:3px;
	-moz-border-radius:3px;
	border-radius:3px;
}

@keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}

/* Firefox < 16 */
@-moz-keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}

/* Safari, Chrome and Opera > 12.1 */
@-webkit-keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}

/* Internet Explorer */
@-ms-keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}

/* Opera < 12.1 */
@-o-keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}