/** 
 *------------------------------------------------------------------------------
 * @package       T3 Framework for Joomla!
 *------------------------------------------------------------------------------
 * @copyright     Copyright (C) 2004-2013 JoomlArt.com. All Rights Reserved.
 * @license       GNU General Public License version 2 or later; see LICENSE.txt
 * @authors       JoomlArt, JoomlaBamboo, (contribute to this project at github 
 *                & Google group to become co-author)
 * @Google group: https://groups.google.com/forum/#!forum/t3fw
 * @Link:         http://t3-framework.org 
 *------------------------------------------------------------------------------
 */
 

// --------------------------------------------------
// CORE TYPOGRAPHY (type.less)
// Headings
// --------------------------------------------------

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: @headings-font-family;
  font-weight: @headings-font-weight;
  line-height: @headings-line-height;
  color: @headings-color;

  small,
  .small {
    font-weight: normal;
    line-height: 1;
    color: @headings-small-color;
  }
}

h1, .h1,
h2, .h2,
h3, .h3 {
  margin-top: @line-height-computed;
  margin-bottom: (@line-height-computed / 2);

  small,
  .small {
    font-size: 65%;
  }
}
h4, .h4,
h5, .h5,
h6, .h6 {
  margin-top: (@line-height-computed / 2);
  margin-bottom: (@line-height-computed / 2);

  small,
  .small {
    font-size: 75%;
  }
}

h1, .h1 { font-size: @font-size-h1; line-height: @headings-line-height;}
h2, .h2 { font-size: @font-size-h2; line-height: @line-height-h2;}
h3, .h3 { font-size: @font-size-h3; line-height: @line-height-h3;}
h4, .h4 { font-size: @font-size-h4; line-height: @line-height-h4;}
h5, .h5 { font-size: @font-size-h5; line-height: @line-height-h5;}
h6, .h6 { font-size: @font-size-h6; line-height: @line-height-h6;}


// Body text
// -------------------------

// Paragraphs
// ----------
p {
  margin: 0 0 (@line-height-computed / 2);
}

.lead {
  margin-bottom: @line-height-computed;
  font-size: @font-size-lead;
  font-weight: 400;
  line-height: @line-height-lead;

  // Medium Desktop view
  @media (max-width: @screen-md-max) {
    font-size: @t3-font-size-big;
  }
}


// Emphasis & misc
// ---------------

// Ex: 14px base font * 85% = about 12px
small, .small   { font-size: 85%; }

// Undo browser default styling
cite    { font-style: normal; }

// Alignment
.text-left           { text-align: left; }
.text-right          { text-align: right; }
.text-center         { text-align: center; }
.text-justify        { text-align: justify; }

// Contextual colors
.text-muted {
  color: @text-muted;
}
.text-primary {
  .text-emphasis-variant(@brand-primary);
}
.text-success {
  .text-emphasis-variant(@state-success-text);
}
.text-info {
  .text-emphasis-variant(@state-info-text);
}
.text-warning {
  .text-emphasis-variant(@state-warning-text);
}
.text-danger {
  .text-emphasis-variant(@state-danger-text);
}

// Contextual backgrounds
// For now we'll leave these alongside the text classes until v4 when we can
// safely shift things around (per SemVer rules).
.bg-primary {
  // Given the contrast here, this is the only class to have its color inverted
  // automatically.
  color: #fff;
  .bg-variant(@brand-primary);
}
.bg-success {
  .bg-variant(@state-success-bg);
}
.bg-info {
  .bg-variant(@state-info-bg);
}
.bg-warning {
  .bg-variant(@state-warning-bg);
}
.bg-danger {
  .bg-variant(@state-danger-bg);
}

// Highlight
.highlight {
  background-color: #FFC;
  font-weight: bold;
  padding: 1px 4px;
}

// Page header
// -------------------------

.page-header {
  padding-bottom: ((@line-height-computed / 2) - 1);
  margin: (@line-height-computed * 2) 0 @line-height-computed;
  border-bottom: 1px solid @page-header-border-color;
}


// Lists
// --------------------------------------------------

// Unordered and Ordered lists
// ----------------------------
ul,
ol {
  margin-top: 0;
  margin-bottom: (@line-height-computed / 2);
  ul,
  ol{
    margin-bottom: 0;
  }
}

// List options
// Unstyled keeps list items block level, just removes default browser padding and list-style
.list-unstyled {
  padding-left: 0;
  list-style: none;
}

// Inline turns list items into inline-block
.list-inline {
  .list-unstyled();
  margin-left: -5px;

  > li {
    display: inline-block;
    padding-left: 5px;
    padding-right: 5px;
  }
}

// Description Lists
dl {
  margin-top: 0; // Remove browser default
  margin-bottom: @line-height-computed;
}

dt,
dd {
  line-height: @line-height-base;
}

dt {
  font-weight: bold;
}

dd {
  margin-left: 0; // Undo browser default
}

// Horizontal description lists
//
// Defaults to being stacked without any of the below styles applied, until the
// grid breakpoint is reached (default of ~768px).

@media (min-width: @grid-float-breakpoint) {
  .dl-horizontal {
    dt {
      float: left;
      width: (@component-offset-horizontal - 20);
      clear: left;
      text-align: right;
      .text-overflow();
    }
    dd {
      margin-left: @component-offset-horizontal;
      &:extend(.clearfix all); // Clear the floated `dt` if an empty `dd` is present
    }
  }
}



//
// MISC
// --------------------------------------------------

// Abbreviations and acronyms
// --------------------------
abbr[title],
// Added data-* attribute to help out our tooltip plugin, per https://github.com/twbs/bootstrap/issues/5257
abbr[data-original-title] {
  cursor: help;
  border-bottom: 1px dotted @abbr-border-color;
}
.initialism {
  font-size: 90%;
  text-transform: uppercase;
}


// Blockquotes
// -----------
blockquote {
  padding: (@line-height-computed / 2) @line-height-computed;
  margin: 0 0 @line-height-computed;
  font-size: @blockquote-font-size;
  border-left: 5px solid @blockquote-border-color;

  p,
  ul,
  ol {
    &:last-child {
      margin-bottom: 0;
    }
  }

  // Note: Deprecated small and .small as of v3.1.0
  // Context: https://github.com/twbs/bootstrap/issues/11660
  footer,
  small,
  .small {
    display: block;
    font-size: 80%; // back to default font-size
    line-height: @line-height-base;
    color: @blockquote-small-color;

    &:before {
      content: '\2014 \00A0'; // em dash, nbsp
    }
  }
}

// Opposite alignment of blockquote
//
// Heads up: `blockquote.pull-right` has been deprecated as of v3.1.0.
.blockquote-reverse,
blockquote.pull-right {
  padding-right: 15px;
  padding-left: 0;
  border-right: 5px solid @blockquote-border-color;
  border-left: 0;
  text-align: right;

  // Account for citation
  footer,
  small,
  .small {
    &:before { content: ''; }
    &:after {
      content: '\00A0 \2014'; // nbsp, em dash
    }
  }
}

// Quotes
blockquote:before,
blockquote:after {
  content: "";
}

// Addresses
// ---------
address {
  margin-bottom: @line-height-computed;
  font-style: normal;
  line-height: @line-height-base;
}



//
// CODE (inline and block) (code.less)
// -----------------------------------
// Inline and block code styles
code,
kbd,
pre,
samp {
  font-family: @font-family-monospace;
}

// Inline code
code {
}

// Blocks of code
pre {
}



//
// FEATURE LIST
// --------------------------------------------------
.btn-actions {
  text-align: center;
}

.features-list {
  margin-top: @t3-global-margin * 3;

  .page-header {
    border: 0;
    text-align: center;

    h1 {
      font-size: @t3-font-size-bigger + 30;
    }
  }

  /* Features Rows */
  .feature-row {
    overflow: hidden;
    min-height: 200px;
    color: #696f72;
    border-top: 1px solid #e0e2e3;
    padding: (@t3-global-padding * 3) 0 0;
	text-align:center;

    &:last-child {
      border-bottom: 1px solid #e0e2e3;
      margin-bottom: @t3-global-margin * 3;
    }

    h3 {
      font-size: @font-size-base * 2;      
    }

    div:first-child {
      padding-left: 0;
    }

    div:last-child {
      padding-right: 0;
    }

    div:first-child.feature-img img {
      float: left;
    }

    div:last-child.feature-img img {
      float: right;
    }
  }
}


.jumbotron {
  h2 {
    font-size: @t3-font-size-bigger + 30;
  }

  iframe {
    margin-top: @t3-global-margin;
  }
}

// Style Custom Field
.field-address {
  color: @gray-light;
  font-size: @t3-font-size-smaller;

  .icon {
    color: @brand-primary;
  }
}

.ct-field-label {
  color: @gray-light;
  font-size: @font-size-h6;
  text-transform: uppercase;
}

.ct-field-value {
  color: @gray-darker;
  font-weight: 700;
}

.ct-field.field-price {
  align-items: flex-start;
  display: flex;
  color: @headings-color;

  .ct-field-value {
    color: @headings-color;
    font-size: @font-size-h3;
    font-weight: 500;
  }

  .value-type {
    margin-left: 3px;
  }
}

// CHECK LIST
ul.check-list {
  padding: 0;
  margin: 0;
  list-style: none;

  li {
    color: @gray-darker;
    align-items: center;
    display: flex;
    font-size: @font-size-h5;
    font-weight: 700;

    + li {
      margin-top: @t3-global-margin / 4;
    }

    &:before {
      content: "\f3ff";
      color: @brand-success;
      font-family: "Ionicons";
      font-size: 30px;
      line-height: 1;
      margin-right: @t3-global-margin / 2;
    }
  }
}

// SOCIAL LIST
ul.social-list {
  display: flex;
  list-style: none;
  padding: 0;
  margin: 0 -1px 0 0;

  li {
    a {
      display: block;
      border-right: 1px solid @topbar-border-color;
      color: @white;
      text-align: center;
      width: @topbar-height;

      &:hover {
        color: @brand-primary;
      }
    }
  }
}

// FOOTER INFO
.info-footer {
  p {
    margin-bottom: 0;
  }

  a {
    border-bottom: 1px solid @text-color;
    color: @text-color;

    &:hover,&:focus,&:active {
      border-color: @t3-footer-link-color;
      color: @t3-footer-link-color;
    }
  }

  .social-list {
    margin-top: @grid-gutter-width;

    li {
      a {
        background: @gray-darker;
        border: 0;
        border-radius: 50%;
        line-height: @t3-global-padding;
        margin-right: 4px;
        font-size: 10px;
        height: @t3-global-padding;
        width: @t3-global-padding;

        &:hover,&:focus,&:active {
          background: @brand-primary;
          color: @white;
        }
      }
    }
  }
}

// Color Swatches
// ----------------
.example-colors {
  .swatch-item {
    width: 100%;
    min-height: 100px;
    position: relative;
    background: @gray-dark;
    color: @white;
    margin-bottom: @t3-global-margin;

    @media (min-width: @screen-lg) {
      min-height: 123px;
    }

    dl {
      width: 100%;
      position: absolute;
      bottom: 0;
      padding: 20px;
      margin: 0;
    }
  }
  // The colors
  .color-brand-primary {
    background: @brand-primary;
  }
  .color-brand-secondary {
    background: @brand-secondary;
  }
  .color-brand-success {
    background: @brand-success;
  }
  .color-brand-danger {
    background: @brand-danger;
  }
  .color-brand-warning {
    background: @brand-warning;
  }
  .color-brand-info {
    background: @brand-info;
  }
  // TGrayscale Levels
  .color-gray-darker {
    background: @gray-darker;
    //color: @text-color;
  }
  .color-gray-dark {
    background: @gray-dark;
    //color: @text-color;
  }
  .color-gray {
    background: @gray;
  }
  .color-gray-light {
    background: @gray-light;
    color: @gray-dark;
  }
  .color-gray-lighter {
    background: @gray-lighter;
    color: @gray-dark;
  }
  .color-gray-lightest {
    background: @gray-lightest;
    color: @gray-dark;
  }
}

.example-button {
  + .example-button {
    margin-top: @grid-gutter-width / 2;
  }

  .btn {
    margin: @t3-global-margin / 2 @t3-global-margin / 2 0 0;
  }
}

.example-forms  {
  .form-group {
    input {
      width: 100%;
    }
  }
}