// =============================================================================
// _NORMALIZE.SCSS
// -----------------------------------------------------------------------------
// Site styles.
// =============================================================================

// =============================================================================
// TABLE OF CONTENTS
// -----------------------------------------------------------------------------
//   01. HTML5 Display Definitions
//   02. Base
//   03. Links
//   04. Typography
//   05. Embedded Content
//   06. Forms
//   07. Iframes
// =============================================================================

// HTML5 Display Definitions
// =============================================================================

//
// Corrects 'block' display not defined in IE 8/9 & FF3.
//

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}


//
// 1. Correct `inline-block` display not defined in IE 8/9.
// 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
//

audio,
canvas,
progress,
video {
  display: inline-block; // 1
  vertical-align: baseline; // 2
}


//
// Prevents modern browsers from displaying 'audio' without controls.
// Remove excess height in iOS5 devices.
//

audio:not([controls]) {
  display: none;
  height: 0;
}



// Base
// =============================================================================

//
// 1. Sets font-size to base 10.
// 2. Prevents iOS text size adjust after orientation change, without disabling
//    user zoom.
//

html {
  overflow-x: hidden;
  font-size: $baseFontSize; // 1
  -webkit-text-size-adjust: 100%; // 2
      -ms-text-size-adjust: 100%; // 2
}



// Links
// =============================================================================

a {
  text-decoration: none;
  background-color: transparent;
  @include transition($linkTransitions);

  &:focus {
    @include tab-focus();
  }

  &:hover,
  &:active {
    outline: 0 !important;
  }
}



// Typography
// =============================================================================

//
// Prevents <sub> and <sup> affecting <line-height> in all browsers.
//

sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}



// Embedded Content
// =============================================================================

//
// 1. Make images inherently responsive.
// 2. Removes border when inside 'a' element in IE 6/7/8/9, FF3
// 3. Improves image quality when scaled in IE7.
//

img {
  max-width: 100%; // 1
  height: auto;    // 1
  vertical-align: middle;
  border: 0; // 2
  -ms-interpolation-mode: bicubic; // 3
}


//
// Prevent max-width from affecting Google Maps.
//

#map_canvas img {
  max-width: none;
}



// Forms
// =============================================================================

//
// Font size in all browsers, margin changes, misc consistency.
// 1. Cursors on all buttons applied consistently.
// 2. Style clickable inputs in iOS.
// 3. Appearance in Safari and Chrome.
// 4. Inner-padding issues in Chrome OSX and Safari 5.
// 5. Remove vertical scrollbar in IE 6/7/8/9.
// 6. Readability and alignment cross-browser.
//

button,
input,
select,
textarea {
  margin: 0;
  font-size: 100%;
  vertical-align: middle;
}

button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
  cursor: pointer; // 1
  -webkit-appearance: button; // 2
}

input[type="search"] {
  // -webkit-box-sizing: content-box; // 3
  //    -moz-box-sizing: content-box;
  //         box-sizing: content-box; // 3
  -webkit-appearance: textfield;   // 3
}

input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button {
  -webkit-appearance: none; // 4
}

textarea {
  overflow: auto; // 5
  vertical-align: top; // 6
}



// Iframes
// =============================================================================

//
// Remove frameborder.
//

iframe {
  border: 0;
}