/*-------------------------------------------------------------------------+
 | Site: NAAMM - National Association of Architectural Metal Manufacturers |
 | Part: Master styles                                                     |
 +-------------------------------------------------------------------------*/

/* Imports
=====================================================================*/
@import url(//fonts.googleapis.com/css?family=Palanquin:100,400,600,700);
@import url(//maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css);
@import url(/content/styles/reset.css);
@import url(/content/styles/forms.css);


/* Fonts
======================================================================*/
body, input, select, textarea { font-family: Palanquin, Arial, sans-serif; }


/* Basics
======================================================================*/
a { color: #ed1c24; text-decoration: none; }
a:hover { text-decoration: underline; }
address { font-style: normal; }
body { background: #4d4d4d; color: #333; font-size: 18px; line-height: 1.4; word-wrap: break-word; }
cite, em { font-style: italic; }
dl, ol, p, table, ul { margin-bottom: 1em; }
dt { margin-top: 1em; }
dt:first-child { margin-top: 0; }
dt, h2, h3, h4, h5, h6, strong { font-weight: bold; }
h1 { font-size: 40px; font-weight: bold; line-height: 1.1; margin-bottom: 0.5em; }
h2 { font-size: 32px; font-weight: 600; line-height: 1.1; margin-bottom: 0.5em; }
h3 { font-size: 26px; font-weight: 600; line-height: 1.2; margin-bottom: 0.5em; }
h4 { font-size: 20px; }
h5 { font-size: 18px; }
h6 { font-size: 16px; }
hr { background: #ddd; border: 0; clear: both; color: #ddd; height: 1px; margin: 40px 0; }
img { max-width: 100%; }
li { margin-bottom: 0.5em; }
ol { list-style: decimal; margin-left: 2em; }
ol ol { list-style: lower-alpha; }
ol ol ol { list-style: lower-roman; }
table { border-collapse: collapse; width: 100%; }
table h2, table p { margin: 0; }
td { border: 1px solid #ddd; border-width: 1px 0; }
td, th { padding: 0.5em 1em 0.5em 0; vertical-align: top; }
td[align=center], th[align=center] { text-align: center; }
td[align=right], th[align=right] { text-align: right; }
tfoot td { border: 0; }
th img { vertical-align: middle; }
th { color: #555; font-weight: bold; vertical-align: bottom; }
thead th { vertical-align: bottom; }
ul { list-style: disc; margin-left: 1.5em; }

/* Stock classes */
.l { float: left; }
.r { float: right; }
.num { text-align: right; }
ul.flat { list-style: none; margin-left: 0; }
ul.flat > li { background: none; margin: 0; padding: 0; }


/* Core layout
======================================================================*/
.clear { clear: both; }
.content { box-sizing: border-box; margin: 0 auto; padding: 30px 20px; max-width: 1120px; }

/* Columns */
.c2l, .c2r { width: 48%; }
.c2l, .c3l, .c3m { float: left; }
.c2r, .c3r { float: right; }
.c3l { margin-right: 3%; }
.c3l, .c3m, .c3r { width: 31%; }

/* Main */
#content-primary { float: left; width: 65.48%; }
#content-secondary { float: right; width: 30.97%; }
.full #content-primary { float: none; margin: 0 auto; }
.full.wide #content-primary { width: auto; }
#main { background: #fff; display: block; padding-bottom: 60px; }
.signin #content-primary { float: none; margin: 0 auto; }


/* Content
======================================================================*/

/* Action */
.action {
    -webkit-appearance: none;
    appearance: none;
    background: #ed1c24;
    border: 1px solid #ed1c24;
    box-sizing: border-box;
    color: #fff;
    cursor: pointer;
    font-size: 18px;
    font-weight: normal;
    display: inline-block;
    padding: 0.5em 1em;
    vertical-align: middle;
}

.action a { color: #fff; }
.action:hover { background: #fff; color: #ed1c24; text-decoration: none; }

.action-secondary { background: #fff; border: 1px solid #ed1c24; color: #ed1c24; }
.action-secondary:hover { background: #ed1c24; color: #fff; }

.banner { color:white; align-items: center; text-align: center; padding: 1.5em; width: 100%; font-size: larger; background-image: url('/Content/images/spinutech-header.png'); }
.banner a { color:white;}

/* Breadcrumbs */
.breadcrumbs { list-style: none; margin: 0 0 1em; }
.breadcrumbs .fa { margin-left: 0.5em; }
.breadcrumbs li { display: inline; margin-right: 0.4em; white-space: nowrap; }

/* Browse by division */
.browse-division { list-style: none; margin-left: 0; text-align: center; }
.browse-division a:hover { opacity: 0.7; text-decoration: none; }
.browse-division, .browse-division .mute { font-size: 32px; }
.browse-division li { display: inline; margin: 0 0.4em; white-space: nowrap; }

/* Calendar */
.calendar { border-top: 1px solid #ddd; list-style: none; margin-left: 0; }
.calendar .date { border: 1px solid #ddd; float: left; margin: 0 0 0 -150px; text-align: center; width: 100px; }
.calendar .date .day { font-size: 36px; font-weight: bold; }
.calendar .date .day, .calendar .date .month, .calendar .date .year { display: block; }
.calendar .date .month { background: #ba3733; color: #fff; font-size: 20px; font-weight: 500; text-transform: uppercase; }
.calendar .date .year { border-top: 1px solid #ddd; font-size; 16px; }
.calendar h2 { font-weight: normal; margin-bottom: 0.2em; }
.calendar li { border-bottom: 1px solid #ddd; overflow: hidden; margin: 0; padding: 30px 20px 30px 170px; }
.calendar p { margin: 0; }
.calendar .when { margin-bottom: 0.5em; }
.calendar .when span { margin-right: 1em; }

	/* Mini */
	.calendar-mini dt { font-weight: normal; margin-top: 0.8em; }
	.calendar-mini dt:first-child { margin: 0; }

/* Callouts */
div.call-l, img.call-l { clear: left; }
div.call-r, img.call-r { clear: right; }
dt img.call-l { margin-top: 0; }
img.call-l { margin-right: 1em; }
img.call-r { margin-left: 1em; }
.call-l { float: left; margin: 0.5em 2em 0.5em 0; }
.call-r { float: right; margin: 0.5em 0 0.5em 2em; }
.call, div.call-l, div.call-r { font-size: 0.75em; }
.call img, .call-l img, .call-r img { display: block; }
.call img.icon, .call-l img.icon, .call-r img.icon { display: inline; }
.call, .call-l p, .call-r p { margin-bottom: 0.5em; }
.credit { color: #7f8183; font-size: 0.75em; letter-spacing: 0.01em; margin-bottom: 0.5em; text-align: right; }

/* Cards */
.card { margin-bottom: 40px; }
.card-content { border: 1px solid #ddd; border-radius: 0 0 6px 6px; overflow: hidden; padding: 30px; }
.card-head { background: #ba3733; border-radius: 6px 6px 0 0; color: #fff; font-size: 48px; font-weight: 700; padding: 0.25em 1em; text-align: center; }

/* Carousel */
#feature { background: #fff; margin-bottom: 50px; position: relative; }
#feature h1 { font-size: 35px; font-weight: 100; margin: 0; }
#feature img { display: block; width: 100%; }
#feature .overlay { background: rgba(237, 28, 36, 0.85); bottom: 0; box-sizing: border-box; color: #fff; left: 0; padding: 40px; position: absolute; max-width: 65.47%; z-index: 100; }
#feature p { margin-bottom: 0.7em; }

/* Directory */
.directory { list-style: none; margin-left: 0; }
.directory a { color: #000; }
.directory a:hover { opacity: 0.7; text-decoration: none; }
.directory .location { margin-right: 1em; }
.directory li { margin-bottom: 1em; overflow: hidden; padding-left: 100px; }
.directory .name { color: #ed1c24; display: block; font-size: 26px; font-weight: 600; }
.directory .thumb { float: left; margin: 3px 0 0 -100px; width: 80px; }

/* Divisions */
.divisions { font-size: 15px; margin-bottom: 30px; text-align: center; }
.divisions a { display: block; }
.divisions a:hover { opacity: 0.7; text-decoration: none; }
.divisions .logo { display: block; margin: 15px auto; max-height: 75px; max-width: 130px; width: auto; }
.divisions .photo { border-radius: 300px; }

/* Employees */
.employees { list-style: none; margin-left: 0; }

/* Filters */
.browse-filters { background: #f5f5f5; display: none; margin-bottom: 20px; padding: 20px 40px; position: relative; }
.browse-filters .close { position: absolute; right: 20px; top: 15px; }
.browse-filters h3 { color: #58595b; margin-bottom: 0.5em; }
.browse-filters li { margin-bottom: 0.2em; }
.browse-filters ul { -moz-column-count: 3; -webkit-column-count: 3, column-count: 3; -moz-column-gap: 40px; -webkit-column-gap: 40px; column-gap: 40px; list-style: none; margin: 0; }
.browse-filters ul a:hover { text-decoration: none; }

    /* Applied filters */
    .applied-filters { list-style: none; margin: 0; }
    .applied-filters .close { position: absolute; right: 5px; top: 0; }
    .applied-filters .filter-type { display: block; font-size: 10px; padding-right: 20px; text-transform: uppercase; }
    
    .applied-filters li {
        background: #f5f5f5;
        border: 1px solid #ddd;
        border-radius: 6px;
        float: left;
        margin: 0 0.5em 0.5em 0;
        padding: 5px;
        position: relative;
    }
    
    .applied-filters img { vertical-align: middle; }

/* Footer */
#footer { padding-bottom: 40px; padding-top: 50px; text-align: center; }
#footer, #footer a { color: #ccc; }
#logo-footer { margin: 0 auto; max-width: 430px; }

    /* Colophon */
    #colophon { border-top: 1px solid rgba(255, 255, 255, 0.15); font-size: 12px; padding-top: 1em; text-transform: uppercase; }
    
    /* Divisions */
    #footer-divisions { line-height: 80px; list-style: none; margin: 20px 0 40px; }
    #footer-divisions a { opacity: 0.5; }
    #footer-divisions a:hover { opacity: 1; }
    #footer-divisions img { max-height: 60px; max-width: 105px; vertical-align: middle; }
    #footer-divisions li { display: inline; margin: 0 10px; }
    
    /* vCards */
    .contact { display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; margin-bottom: 40px; }
    .vcard { width: 48.21%; }
    .vcard .adr, .vcard .email, .vcard .n, .vcard .org, .vcard .street-address, .vcard .tel { display: block; }
    .vcard .org { color: #fff; font-weight: bold; }
    .vcard.contact-consulting .street-address { display: inline; }

/* Grids */
.grid {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
    line-height: 1.4;
    list-style: none;
    margin-left: 0;
}

.grid [class *= "call"] { float: none; margin: 0; width: auto !important; }
.grid li { box-sizing: border-box; margin: 0 0 20px; }
.grid p { margin: 0; }
.grid img { display: block; margin-bottom: 5px; width: 100%; }

    /* Columns */
    .grid.grid-2 li { width: 48.21%; }
    .grid.grid-3 li { width: 30.95%; }
    .grid.grid-4 li { width: 22.32%; }
    .grid.grid-5 li { width: 17.14%; }
    .grid.grid-6 li { width: 13.69%; }
    .grid.grid-7 li { width: 11.96%; }

/* Header */
#header { background: #fff; border-bottom: 1px solid #ddd; }
#header .content { display: -ms-flexbox; display: flex; padding-bottom: 30px; padding-top: 30px; }
#header-primary, #header-secondary { -ms-flex-align: center; align-items: center; width: 50%; }
#logo { max-width: 444px; }

/* Hero */
.hero { margin-bottom: 20px; position: relative; }
.hero img { display: block; width: 100%; }

.hero .overlay {
    background: rgba(0, 0, 0, 0.85);
    bottom: 0;
    box-sizing: border-box;
    color: #fff;
    font-size: 40px;
    font-weight: bold;
    left: 0;
    padding: 25px 40px;
    position: absolute;
    z-index: 100;
}

/* Intros */
.intro { font-size: 32px; font-weight: 100; line-height: 1.375; }

/* Maps */
.geo { display: none; }

    /* Mapped results */
    #map-mini #map { border: 1px solid #ccc; height: 250px; margin-bottom: 20px ; }
    #mapped-results #map { border: 1px solid #ccc; border-bottom-right-radius: 6px; border-top-right-radius: 6px; float: right; height: 500px; width: 69%; }
    #mapped-results #map, #mapped-results .results { margin-bottom: 20px; }
    
    #mapped-results .results {
        border: 1px solid #ccc;
        border-bottom-left-radius: 6px;
        border-top-left-radius: 6px;
        float: left;
        font-size: 0.9em;
        height: 470px;
        line-height: 1.3;
        overflow-x: hidden;
        overflow-y: auto;
        padding: 15px 1%;
        width: 28.5%;
    }
    
    #mapped-results .results ol { list-style: none; margin: 0; }
    #mapped-results .results ol li { clear: both; margin-bottom: 15px; overflow: hidden; padding-left: 32px; }
    #mapped-results .results ol h2 { font-size: 16px; }
    #mapped-results .results ol h2, #mapped-results .results ol p { font-weight: normal; margin: 0; }
    #mapped-results .results .marker { float: left; margin-left: -32px; }
    #mapped-results .results .thumb { float: left; margin: 3px 10px 0 0; width: 44px; }
    
        /* Window contents */
        #info-window-content { background-color: #fff; }
        #info-window-content .desc-content { font-size: 12px; }
        #info-window-content h3 { font-size: 1.5em; line-height: 1.2; }
        #info-window-content p { font-size: 1.2em; }
        #info-window-content .thumb { float: left; margin: 3px 10px 0 0; width: 44px; }

/* Muted text */
.mute { color: #7f7f7f; font-size: 14px; font-weight: normal; }

/* Navigation */
#nav { background: #c31c24; font-size: 16px; }
#nav a { padding: 0.5em 0; }
#nav .current { font-weight: bold; }
#nav .content { display: -ms-flexbox; display: flex; padding-bottom: 20px; padding-top: 20px; }
#nav li { display: inline; margin-bottom: 0; }
#nav, #nav a { color: #fff; }
#nav ul { list-style: none; margin: 0; }

    /* Account */
    #nav-account { -ms-flex: 1 1 30%; flex: 1 1 30%; text-align: right; }
    #nav-account li { margin-left: 1em; }
    
    /* Division */
    #nav-division .current a { color: #000; }
    #nav-division li { display: inline; margin-right: 1em; white-space: nowrap; }
    #nav-division ul { font-weight: bold; list-style: none; margin: 0 0 20px 0; }
    
    /* Menu */
    #menu {
        background: #c31c24;
        box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
        display: none;
        font-size: 15px;
        height: 100%;
        overflow-x: hidden;
        overflow-y: auto;
        position: fixed;
        right: -400px;
        top: 0;
        width: 250px;
        z-index: 1000;
    }
    
    #menu a { border-bottom: 1px solid rgba(255, 255, 255, 0.3); color: #fff; display: block; font-weight: 600; padding: 0.8em 1.1em; }
    #menu a:active { background: transparent; }
    #menu li { margin: 0; }
    #menu li.current { background: #fff; }
    #menu li.current a, #menu li.current a strong { color: #ed1c24; }
    #menu ul { border-bottom: 3px solid rgba(255, 255, 255, 8); list-style: none; margin: 0; }
    #menu ul ul a { border-bottom: 0; border-top: 1px solid rgba(0, 0, 0, 0.1); color: #3c6cc7; }
    #menu ul ul li.current a { color: #000; }
    #menu-toggle { font-size: 16px; text-transform: uppercase; white-space: nowrap; }
    
    /* Primary */
    #nav-primary { -ms-flex: 1 1 70%; flex: 1 1 70%; }
    #nav-primary li { margin-right: 1em; }
    
    /* Secondary */
    #nav-secondary { list-style: none; margin-left: 0; }
    #nav-secondary .current > a { color: #000; font-weight: bold; }
    #nav-secondary li { margin-bottom: 0.5em; }
    #nav-secondary ul { font-size: 14px; list-style: disc; margin-left: 1.5em; }

/* News */
.news dt { font-weight: 600; line-height: 1.3; }
.news-mini { list-style: none; margin-left: 0; }
.news-mini li { margin-bottom: 0.8em; }

/* Paging */
.pages, .pages ul { clear: both; float: none; font-size: 16px; list-style: none; margin: 50px 0 30px; text-align: center; }
.pages li { display: inline; margin: 0 10px 0 0; }

/* Payment history */
.payment-history .amount { width: 90px; }
.payment-history .date { width: 120px; }
.payment-history .invoice { width: 75px; }
.payment-history .memo {  }
.payment-history .n { color: red; }
.payment-history .num { text-align: right; }
.payment-history .p { color: green; }
.payment-history .total td { border-top: 3px double #ccc; font-weight: bold; }
.payment-history tr.transaction-row:hover td { background: #f0f0f0; cursor: pointer; }
.payment-history tr.transaction-row:hover td .transaction-details { cursor: default; }
.payment-history tr.transaction-row:hover td .transaction-details tr td { background: #ffc; cursor: default; }
.payment-history tr.current td { background: #fff; font-weight: bold; }

    /* Transaction detail */
    .transaction-detail { border: 2px solid #888; }
    .transaction-detail .amount { width: 16%; }
    .transaction-detail table { margin: 0; }
    .transaction-detail > td { background: #fff; padding: 0; }
    .transaction-detail .memo { width: 38%; }
    .transaction-detail .tools { padding-left: 0.5em; width: 8%; }
    
        /* Transaction item */
        .transaction-details tr th { background: #eec; font-weight: bold; }
        .transaction-details tr td { background: #ffc; }

/* Price */
.price { color: #ed1c24; white-space: nowrap; }

/* Profile */
#profile-photo img { width: 100%; }
#profile-primary { float: right; width: 65.9%; }
#profile-secondary { float: left; width: 31.9%; }

/* Progress */
.progress {
    background: #f7f7f7;
    border: 1px solid #e5e5e5;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    font-size: 18px;
    list-style: none;
    margin: 40px 0;
    text-align: center;
    padding: 1em;
}

.progress .current { font-weight: bold; }
.progress .current a { color: #000; }
.progress li { display: inline; margin: 0 1em; }

/* Product detail */
#product { overflow: hidden; }
#product h1 { font-size: 28px; margin-bottom: 0.5em; }
#product .price { font-size: 24px; vertical-align: middle; }
#product select { width: 100%; }
#product-actions, #product-description, #product-media { margin-bottom: 20px; }

    /* Actions */
    #product-actions { float: right; text-align: center; width: 22.38%; }
    #product-actions .action { display: block; margin-top: 10px; width: 100%; }
    #product-actions .box { border: 1px solid #ddd; border-radius: 5px; margin-bottom: 30px; padding: 20px 20px 10px; }
    #product-actions h2 { font-size: 21px; }
    
    /* Description */
    #product-description { float: left; width: 35.22%; }
    
    /* Details */
    .product-details { color: #666; list-style: none; margin-left: 0; }
    .product-details li { display: inline; margin-right: 1em; }
    
    /* Media */
    #product-media { float: left; margin-right: 3.53%; width: 35.22%; }
    #product-media .image { display: block; margin: 0 auto; width: 100%; }

/* Publications */
.pubs { list-style: none; margin-left: 0; }
.pubs .details { font-size: 18px; list-style: none; margin: 0 0 0.5em; }
.pubs .details li { display: inline; margin-right: 1em; }
.pubs h3 { font-size: 24px; font-weight: normal; margin: 0; }
.pubs > li { margin-bottom: 20px; overflow: hidden; padding-left: 170px; }
.pubs p { margin-bottom: 0.5em; }
.pubs .thumb { border: 1px solid #f1f1f1; box-sizing: border-box; float: left; margin-left: -170px; width: 150px; }
    
    /* Preview */
    .pub-preview { float: right; margin: 0 0 10px 20px; max-width: 200px; width: 50%; }

/* Search results */
.docType { color: #000; font-size: 0.7em; font-weight: bold; margin-left: 0.3em; text-transform: uppercase; white-space: nowrap; }
#info { border-bottom: 1px solid #cbc3b8; margin-bottom: 1em; padding-bottom: 1em; }
#search-results { margin: 0 0 1em; }
#search-results p { margin: 0; }
#search-results h2 { font-size: 1.3em; font-weight: normal; margin: 1em 0 0; }
#search-results .icon { margin-bottom: -2px; }
#search-results li { list-style: none; }
#search-results .mute { color: #6d6e71; font-size: 11px; }
#search-within-search input { vertical-align: middle; }
#search-within-search .txt { display: inline; width: 69%; }
#search-within-search .btn { margin: 0; }
#searchPages { font-size: 1.2em; margin-top: 2em; text-align: center; }
#searchPages a { padding: 0.5em 0.2em; }
#searchPages li { background: none; display: inline; margin: 0 0.2em; padding: 0; }
#searchSort { border-top: 1px solid #cbc3b8; font-size: 1.2em; margin: 1em 0; padding-top: 0.9em; }

/* Store */
    /* Product details */
    .product { padding-left: 300px; }
    .product h1 { margin-bottom: 0.5em; }
    .product-description { margin-bottom: 30px; }
    .product-image { float: left; margin: 3px 0 30px -330px; width: 300px; }
    .product-image img { display: block; width: 100%; }
    .product .txt-num { width: 3em; }
    
    /* Product list */
    .product-list { list-style: none; margin-left: 0; }
    .product-list > li { border-top: 1px solid #ddd; margin-bottom: 30px; overflow: hidden; padding: 20px 20px 10px 170px; }
    .product-list .thumb { float: left; margin: 3px 20px 10px -170px; width: 150px; }
    .product-list .thumb img { display: block; width: 100%; }

/* Toggling options */
.closed { display: none; }

/* Viewing options */
.view { margin-bottom: 1em; }
.view .active { font-weight: bold; }
.view li, .view p { margin-right: 0.7em; white-space: nowrap; }
.view li, .view p, .view ul { display: inline; }
.view ul { list-style: none; margin: 0; }


/* Widths
======================================================================*/
@media screen and (max-width: 1075px) {
    /* Header */
    #header-secondary { text-align: right; }
    #nav, #nav-division, #site-search { display: none; }
}

@media screen and (max-width: 950px) {
   /* Carousel */
    #feature .overlay { max-width: 100%; padding: 30px; text-align: center; position: static; }
    #feature .overlay h1 { font-size: 30px; }
}

@media screen and (max-width: 890px) {
    /* Layout */
    #main { padding-bottom: 20px; }
    #content-primary, #content-secondary { float: none; width: auto; }
    
    /* Content */
        /* Carousel */
        #feature .overlay { padding: 10px; }
        #feature .overlay h1 { font-size: 20px; }
        
        /* Forms */
            /* Directory search */
            #directory-search { padding: 30px }
            #directory-search button { box-sizing: border-box; display: block; font-size: 0.9em; text-align: center; width: 100%; }
            #directory-search button:after { content: " Search"; }
            #directory-search .search { display: block; }
            #directory-search .txt { font-size: 1em; margin-bottom: 0.5em; width: 100%; }
        
        /* Grids */
        .grid.grid-4 li, .grid.grid-5 li, .grid.grid-6 li { width: 30.95%; }
        
        /* Hero */
        .hero .overlay { font-size: 20px; padding: 10px; position: static; }
        
        /* Product detail */
        #product-actions, #product-description, #product-media { float: none; margin: 0 0 20px; width: auto; }
}

@media screen and (max-width: 500px) {
    /* Basics */
    body { font-size: 14px; }
    h1 { font-size: 30px; }
    h2 { font-size: 22px; }
    h3 { font-size: 20px; }
    h4 { font-size: 18px; }
    h5 { font-size: 16px; }
    h6 { font-size: 14px; }
    
    /* Layout */
    .content { padding: 15px; }
    .c2l, .c2r, .c3l, .c3m, .c3r { float: none; width: auto; }
    
    /* Content */
        /* Action buttons */
        .action { clear: both; display: block; margin-bottom: 0.5em; text-align: center; width: 100%; }
        
        /* Browse by division */
        .browse-division { border: 1px solid #ddd; text-align: left; }
        .browse-division a { display: block; border-bottom: 1px solid #ddd; padding: 0.7em 1em; }
        .browse-division, .browse-division .mute { font-size: 1em; }
        .browse-division li { display: block; margin: 0; }
        .browse-division li:last-child a { border-bottom: 0; }
        
        /* Calendar */
        .calendar .date { border: 0; float: none; font-weight: bold; margin: 0 0 10px 0; width: auto; }
        .calendar .date .day, .calendar .date .month, .calendar .date .year { display: inline; font-size: 16px; }
        .calendar .date .month { background: none; color: #000; }
        .calendar .date .year { border: 0; }
        .calendar li { padding: 10px 0; }
        .calendar .when { color: #777; font-size: 14px; }
        .calendar .when span { display: block; }
        
        /* Cards */
        .card-head { font-size: 30px; }
        .card-content { padding: 15px; }
        
        /* Directory */
        .directory li { padding-left: 50px; }
        .directory .name { font-size: 1.1em; }
        .directory .thumb { margin: 3px 0 0 -50px; width: 40px; }
        
        /* Filters */
        .browse-filters { margin-bottom: 10px; padding: 10px; }
        .browse-filters ul { background: #fff; border: 1px solid #ddd; -moz-column-count: 1; -webkit-column-count: 1, column-count: 1; }
        .browse-filters ul a { border-bottom: 1px solid #ddd; display: block; padding: 0.7em 1em; }
        .browse-filters ul li:last-child a { border: 0; }
        
            /* Applied filters */
            .applied-filters { margin-bottom: 20px; }
            .applied-filters .close { right: 15px; top: 9px; }
            .applied-filters .filter-type { display: none; }
            .applied-filters li { border-radius: 0; float: none; margin: 0 0 -1px 0; padding: 0.7em 25px 0.7em 10px; }
            .applied-filters li:first-child { border-top-left-radius: 6px; border-top-right-radius: 6px; }
            .applied-filters li:last-child { border-bottom-left-radius: 6px; border-bottom-right-radius: 6px; }
        
        /* Footer */
            /* vCards */
            .contact { display: block; }
            .vcard { margin-bottom: 20px; width: auto; }
        
        /* Forms */
        .form dd.field, .form  dt .label { float: none; width: auto; }
        .form dt .label { font-weight: bold; }
        .form .field-single-line { width: 100%; }
                
            /* Cart */
            .cart .item, .cart .item-description, .cart .price, .cart .qty, .cart .subtotal { padding: 0; width: 100%; }
            .cart .item .thumb { float: left; margin: 3px 0 0 -33%; width: 25%; }
            .cart .qty p { display: inline; margin-right: 0.7em; }
            .cart .price { margin: 0.5em 0; }
            .cart .price p { display: inline; margin-left: 0.7em; }
            .cart .subtotal { position: absolute; right: 0; top: 10px; width: 20%; }
            .cart table, .cart tbody, .cart td, .cart tfoot, .cart th, .cart thead, .cart tr { display: block; width: 100%; }
            .cart tbody tr { padding: 10px 20%; width: 60%; }
            .cart tfoot td { text-align: left; }
            .cart tfoot tr { padding: 10px 20% 10px 0; width: 80%; }
            .cart tfoot .txt { display: block; margin: 0; width: 88%; }
            .cart thead .price, .cart thead .qty { display: none; }
            .cart thead .subtotal { top: 0; }
            .cart thead tr { border-top-width: 0; padding-top: 0; }
            .cart td, .cart th { border: 0; padding: 0; }
            .cart tr { border-top: 1px solid #ddd; clear: both; padding: 10px 0; position: relative; }
            #checkout-bottom { float: none; }
            #checkout-top { display: none; }
            
                /* Cart for choosing shipping options */
                .cart-shipping .item, .cart-shipping .item-address, .cart-shipping .item-description, .cart-shipping .item-shipping { text-align: left; width: 100%; }
                .cart-shipping .item-qty { position: absolute; right: 0; top: 10px; width: 20%; }
                .cart-shipping tbody .item-description, .cart-shipping tbody .item-shipping { padding-bottom: 5px; }
                .cart-shipping thead .item-address, .cart-shipping thead .item-description, .cart-shipping thead .item-shipping { display: none; }
                .cart-shipping thead .item-qty { top: 0; }
                
                    /* Summary */
                    .cart-shipping.cart-shipping-summary th { display: none; }
                    .cart-shipping.cart-shipping-summary tr { padding-right: 0; width: auto; }
                    .cart-shipping.cart-shipping-summary .item .thumb { margin-left: -25%; width: 20%; }
                
                /* Checkout */
                #checkout { clear: both; }
                #checkout .step { border: 2px solid #ccc; margin-bottom: -2px; padding: 15px; }
                #checkout-primary { float: none; width: auto; }
                #checkout-secondary { position: static; width: auto; }
            
            /* Directory search */
            #directory-search { padding: 10px }
            
            /* Progress forms */
            #progress-form { padding: 0; }
            #progress-form .form-nav { border: 1px solid #ddd; border-radius: 5px; float: none; margin: 0 0 20px; width: auto; }
            #progress-form .form-nav a { padding: 0.5em 1em; }
            #progress-form .form-nav li { margin: 0; }
            #progress-form .form-nav li:last-child { border: 0; }
            
            /* Text boxes */
            .txt, .txt-med { width: 100%; }
        
        /* Grids */
        .grid.grid-3 li, .grid.grid-4 li, .grid.grid-5 li, .grid.grid-6 li { width: 48.21%; }
        
        /* Header */
        #header { border-top: 3px solid #c31c24; }
        #header .content { padding-bottom: 10px; padding-top: 10px; }
        #header-primary { width: 70%; }
        #header-secondary { width: 30%; }
        
        /* Intro */
        .intro { font-size: 18px; }
        
        /* Maps */
            /* Mapped results */
            #mapped-results #map, #mapped-results .results { border-radius: 0; float: none; height: 300px; margin: 0; width: auto; }
        
        /* Profile */
        #profile-primary { float: none; width: auto; }
        #profile-secondary { float: right; margin: 0 0 10px 10px; }
        
        /* Publications */
        .pubs .details { font-size: 12px; margin: 0; }
        .pubs h3 { font-size: 20px; margin-bottom: 0.2em; }
        .pubs > li { padding-left: 0; }
        .pubs .thumb { float: right; margin: 3px 0 10px 10px; width: 20%; }
}