﻿/* yui css reset */

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td { 
    margin: 0;
    padding: 0;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

fieldset, img { 
    border: 0;
}

address, caption, cite, code, dfn, strong, th, var {
    font-style: normal;
    font-weight: normal;
}

ul {
    list-style: none;
}

caption, th {
    text-align: left;
}

h1, h2, h3, h4, h5, h6 {
    font-size: 100%;
    font-weight: normal;
}

q:before, q:after {
    content: '';
}

abbr, acronym {
    border: 0;
}

/* master text styles */

body {
    font: 12px normal Verdana, Arial, Helvetica, sans-serif;
    color: #444;
    }

table {
    font-size: inherit;
    font: 100%;
    }

select, input, textarea {
    font: 1em normal Verdana, Arial, Helvetica, sans-serif;
    }

pre, code {
    font: 115% monospace;
    *font-size: 100%;
    }

p {
    margin-bottom: 1em;
    line-height: 1.3;
    }

a {
    text-decoration: none;
    }

a:link,
a:visited {
    color: #444;
    }

a:hover,
a:active {
    color: #df5118;
    text-decoration: underline;
    }

strong {
    font-weight: bolder;
    }

/* page layout styles */

body {
    padding: 0 15px;
    line-height: 1.3;
    background: #666 url(/static/images/stripes.png) left top repeat;
    }

#screen {
    position: relative;
    overflow: hidden;
    margin: 0 auto;
    width: 900px;
    background-color: white;
    border-style: solid;
    border-color: black;
    border-width: 0 1px 1px 1px;
    }

#header {
    position: relative;
    overflow: visible;
    width: 100%;
    height: 164px;
    background: #df5118;
    border-bottom: 1px solid black;
    }

#left-sidebar,
#right-sidebar,
#content {
    float: left;
    position: relative;
    overflow: visible;
    }

#content {
    width: 490px;
    min-height: 300px;
    }

#left-sidebar {
    width: 200px;
    }

#right-sidebar {
    width: 196px;
    }

#footer {
    position: relative;
    overflow: hidden;
    clear: both;
    }

/* header */

#header h1 {
    background: black url(/static/images/banner.png) left top no-repeat;
    position: absolute;
    left: 0;
    top: 0;
    overflow: hidden;
    width: 900px;
    height: 128px;
    margin : 0;
    text-indent: 1200px;
    line-height: 1200px;
}

/* main menubar */

#mainmenu {
    position: absolute;
    overflow: hidden;
    width: 900px;
    height: 30px;
    left: 0;
    top: 128px;
    padding-left: 32px;
    background: #505050 url(/static/images/menu-background.png) left top repeat-x;
    border-style: solid;
    border-color: black;
    border-width: 1px 0;
    }

#mainmenu li {
    float: left;
    list-style: none;
    }

#mainmenu li.first {
    background: transparent url(/static/images/menu-separator.png) left top no-repeat;
    }

#mainmenu a {
    display: -moz-inline-block;
    display: inline-block;
    font: normal 1.2em Arial, Helvetica, sans-serif;
    height: 22px;
    padding: 6px 14px 0 14px;
    text-decoration: none;
    color: white;
    background: transparent url(/static/images/menu-separator.png) right top no-repeat;
    }

#mainmenu a:hover,
#mainmenu a:active {
    color: orange;
    text-decoration: none;
    }

#in-home #mainmenu #home a,
#in-about-us #mainmenu #about-us a,
#in-distributors #mainmenu #distributors a,
#in-review-copies #mainmenu #review-copies a,
#in-rights-and-permissions #mainmenu #rights-and-permissions a,
#in-links #mainmenu #links a {
    color: orange;
    }

/* sub-menu (actions) */

#submenu {
    position: absolute;
    right: 12px;
    top: 168px;
    }

#submenu li {
    display: inline;
    float: left;
    font-size: .9em;
    font-weight: bold;
    list-style: none;
    padding-right: 12px;
    }

#submenu li a {
    display: block;
    }

#submenu li a:hover,
#submenu li a:active {
    }

/* sidebar styles */

#left-sidebar,
#right-sidebar {
    margin: 36px 0 20px 0;
    }

.box {
    margin: 0 16px 20px 20px;
    background-color: white;
    }

.box input.text {
    color: #666;
    width: 115px;
    height: 18px;
    border: 1px solid #666;
    }

.box h3,
.box h4 {
    line-height: 1.1em;
    font-weight: bold;
    margin-bottom: 6px;
    }

.box h3 {
    font-size: 1.3em;
    }

.box h4 {
    font-size: 1.1em;
    }

.box dd {
    margin-bottom: 1em;
    }

.box .secondary {
    font-size: .9em;
    }

.box .button {
    font-size: .9em;
    width: 36px;
    color: #666;
    margin-left: 4px;
    }

.box a {
    text-decoration: underline;
    }

.downloads li {
    float: left;
    width: 60px;
    }

.downloads li.featured {
    float: none;
    width: 120px;
    }

.downloads p {
    text-align: left;
    margin-top: 2px;
    }

.downloads a {
    text-decoration: none;
    }

.related li {
    color: #666;
    margin-left: 60px;
    clear: both;
    padding-bottom: 1em;
    }

.related li img {
    float: left;
    margin-left: -60px;
    margin-bottom: 1em;
    }

.search #id_search_keywords,
.newsletter #id_newsletter_email {
    float: left;
    }

.newsletter div {
    margin-top: 3px;
    }

/* catalogue sections menu */

#catalog-menu {
    width: 140px;
    list-style: none;
    }

#catalog-menu li {
    border: none;
    }

#catalog-menu li a {
    display: block;
    padding: 4px 0 3px 8px;
    color: #555;
    border-left: 3px solid #df5118;
    text-decoration: none;
    }

#catalog-menu li.main a {
    color: #222;
    }

#catalog-menu li.selected a {
    border-color: #a74a26;
    background-color: #e6e6e6;
    }

#catalog-menu li a:hover,
#catalog-menu li a:active {
    border-color: #a74a26;
    background-color: #e0e0e0;
    text-decoration: none;
    }

/* footer */

#footer {
    font-size: .9em;
    color: #666;
    width: 852px;
    padding: 8px 6px 0 6px;
    margin: 18px 18px 6px 18px;
    border-top: 1px dotted #999;
    }

#footer ul {
    float: right;
    }

#footer li {
    float: left;
    padding-left: 20px;
    }

hr {
    margin-bottom: 1.5em;
    width: 420px;
    border-width: 1px;
    color: black;
    background-color: black;
    }

/* content area styles */

#content {
    margin: 36px 0 20px 0;
    padding-right: 8px;
    }

#content h3 {
    font-size: 1.5em;
    font-weight: bold;
    margin-bottom: 1em;
    }

#content h4 {
    font-size: 1.1em;
    font-weight: bold;
    margin-bottom: .2em;
    }

#content .secondary {
    color: #666;
    }

#content a {
    text-decoration: underline;
    }

#content a.more {
    white-space: nowrap;
    }

#content ul {
    list-style: disc inside;
    }

#content em {
    font-style: italic;
    }

/* content area forms */

#content form {
    margin-bottom: 2em;
    }

#content form .form-spinner {
    position: absolute;
    top: 100px;
    left: 200px;
    }

#content form fieldset {
    border: 1px solid #aaa;
    padding: 1.5em 1em .5em 1em;
    margin-bottom: 1em;
    }

#content form legend {
    font-size: 1.1em;
    margin-left: 1em;
    padding: 0 .5em;
    }

#content form .row  {
    margin: 0 0 1em 130px;
    }

#content form .row label {
    float: left;
    clear: both;
    font-weight: bold;
    width: 110px;
    padding-left: 10px;
    margin-left: -130px;
    }

#content form .row input {
    height: 1.4em;
    }

#content form .row input,
#content form .row textarea {
    width: 220px;
    }

#content form .error {
    color: red;
    margin-top: 3px;
    }

#content form .help {
    color: #666;
    margin-top: 3px;
    }

#content form .row ul li {
    float: none;
    clear: none;
    display: inline;
    position: relative;
    }

#content form .row ul li input {
    display: inline;
    width: auto;
    height: 1em;
    }

#content form .row ul li label {
    float: none;
    clear: none;
    display: inline;
    position: relative;
    margin: 0;
    padding: 0;
    }

#content div.errors {
    padding: 12px 20px 12px 20px;
    margin-bottom: 1em;
    width: 360px;
    border: 2px solid red;
    }

/* content teaser lists */

#product-list {
    width: 496px;
    }

#product-list dt {
    float: right;
    font-size: 1.2em;
    font-weight: bold;
    width: 386px;
    }

#product-list dt a {
    color: #444;
    text-decoration: none;
    }

#product-list dt a:hover,
#product-list dt a:active {
    color: #df5118;
    text-decoration: underline;
    }

#product-list dd {
    clear: right;
    margin: 0 0 0 110px;
    }

#product-list dd.image {
    float: left;
    clear: none;
    margin: 0 0 4px 0;
    }

#product-list dd.subtitle {
    }

#product-list dd.author {
    padding-top: 1em;
    font-style: italic;
    }

#product-list dd.author2 {
    font-size: .9em;
    font-style: italic;
    }

#product-list dd.price,
#product-list dd.language,
#product-list dd.options {
    padding-top: 1em;
    }

#product-list dd.price {
    padding-bottom: 1em;
    }

#product-list dd.description {
    clear: both;
    margin-left: 4px;
    margin-bottom: 2em;
    }

#product-list dd.actions {
    text-align: right;
    margin-bottom: 30px;
    }

#product-list dd.actions input {
    margin-left: 2em;
    }

/* item details */

#product {
    width: 496px;
    margin-top: 16px;
    }

#product div.main {
    float: right;
    width: 370px;
    }

#content #product h3 {
    font-size: 1.3em;
    font-weight: bold;
    line-height: 1.2em;
    margin: 0;
    padding: 0;
    }

#content #product h4 {
    font-weight: normal;
    margin: 0;
    margin-top: 0;
    }

#content #product h4.subtitle {
    font-size: 1.1em;
    }

#product h4.author {
    font-style: italic;
    font-size: 1em;
    padding-top: 1em;
    }

#product h4.author2 {
    font-style: italic;
    font-size: .9em;
    }

#product div.image {
    float: left;
    clear: none;
    }

#product div.description {
    clear: both;
    padding-top: 1.5em;
    margin-bottom: 2.5em;
    }

#product div.language,
#product div.price {
    margin-top: 1em;
    }

#product #options {
    margin-top: .5em;
    }

#product blockquote {
    margin-bottom: 1.5em;
    }

#product blockquote p {
    margin: 0;
    }

#product blockquote p.quote {
    text-indent: 16px;
    background: transparent url(/static/images/quote-left.gif) left top no-repeat;
    }

#product blockquote span.lastword {
    padding-right: 16px;
    display: inline-block;
    text-indent: 0;
    background: transparent url(/static/images/quote-right.gif) right bottom no-repeat;
    }

#product blockquote p.signature {
    text-align: right;
    color: #666;
    font-style: italic;
    }

#product .boring-details {
    font-size: 1em;
    color: #666;
    border-color: #aaa;
    border-style: dotted;
    border-width: 1px 0;
    margin-bottom: 1.5em;
    padding: 2px 0 0 0;
    }

#product .downloads {
    margin-bottom: 1.5em;
    }

#product .downloads a {
    padding-left: 16px;
    margin-left: 3px;
    }

/* shared price styles */

span.our-price {
    font-weight: bold;
    }

span.rrp {
    padding-right: 1em;
    color: #666;
    }

.our-price span.amount {
    font-weight: bold;
    color: red;
    }

/* paginator */

.paginator {
    margin: 20px auto 10px auto;
    text-align: center;
    font-size: 1.1em;
    }

.paginator a,
.paginator span {
    margin: 0 6px;
    padding: 3px 6px 2px 6px;
    border: 1px solid #ccc;
    text-decoration: none !important;
    }

.paginator a:hover,
.paginator a:active {
    text-decoration: none;
    }

.paginator span.current {
    font-weight: bold;
    background: #e0e0e0;
    }

/* checkout process indicators */

#checkoutprogress {
    margin-bottom: 25px;
    height: 26px;
    }

#checkoutprogress ol {
    position: relative;
    }

#checkoutprogress li {
    position:  absolute;
    overflow: hidden;
    font-size: 1.2em;
    list-style: none;
    color: #aaa;
    height: 22px;
    padding-left: 28px;
    left: 0;
    top: 0;
    background: white url(/static/images/process-1-2-3.png) 0 0 no-repeat;
    }

#checkoutprogress li a {
    display: block;
    }

#checkoutprogress li a:visited {
    color: black;
    }

#checkoutprogress #first {
    background-position: -200px 0;
    }

#checkoutprogress #first.active {
    color: #df5118;
    background-position: 0 0;
    }

#checkoutprogress #first.done {
    background-position: -400px 0;
    }

#checkoutprogress #second {
    left: 150px;
    background-position: -200px -40px;
    }

#checkoutprogress #second.active {
    color: #df5118;
    background-position: 0 -40px;
    }

#checkoutprogress #second.done {
    background-position: -400px -40px;
    }

#checkoutprogress #third {
    left: 300px;
    background-position: -200px -80px;
    }

#checkoutprogress #third.active {
    color: #df5118;
    background-position: 0 -80px;
    }

#checkoutprogress #third.done {
    background-position: -400px -80px;
    }

/* shopping cart */

#cart {
    margin-bottom: 20px;
    width: 100%;
    }

#cart th {
    font-weight: bold;
    padding: 5px 10px;
    border: 1px solid #aaa;
    }

#cart thead th {
    background: #666;
    color: white;
    }

#cart tbody th {
    text-align: right;
    }

#cart td {
    padding: 5px 10px;
    border: 1px solid #aaa;
    }

#cart .description {
    font-weight: bold;
    }

#cart .amount {
    text-align: right;
    }

#cart .actions {
    white-space: nowrap;
    }

#cart .actions a {
    font-weight: normal;
    }

/* order details */

#order {
    margin-top: 20px;
    margin-bottom: 20px;
    width: 100%;
    }

#order th {
    font-weight: bold;
    background: #666;
    color: white;
    padding: 4px 10px;
    }

#order td {
    padding: 5px 10px;
    }

/* custom button styling */

.button {
    border: none;
    cursor: pointer;
    font: bold 1em Verdana, Arial, Helvetica, sans-serif;
    text-align: center;
    height: 21px !important;
    padding: 0;
    color: #444;
    background: white url(/static/images/button-content.gif) left top no-repeat;
    }

a.button {
    display: block;
    padding-top: 4px;
    color: #444 !important;
    text-decoration: none !important;
    }

.button.sfhover,
.button:hover {
    background-position: 0 -60px;
    color: #444 !important;
    }

.button:active {
    background-position: 0 -120px;
    }

#content .button {
    width: 126px !important;
    }

.box .button {
    background-image: url(/static/images/button-sidebar.gif)
    }

/* sitemap */

#sitemap {
    margin-left: 20px;
    }

#sitemap li {
    list-style: none;
    margin-bottom: 6px;
    }

#sitemap li.group {
    font-weight: bold;
    }

#sitemap ul {
    margin-top: 3px;
    }

#sitemap ul li {
    font-weight: normal;
    margin-left: 40px;
    margin-bottom: 3px;
    }

/* news item details page */

#news-item {
    }

#news-item img {
    float: left;
    padding: 0 20px 8px 0;
    }

#news-item div.description {
    font-weight: bold;
    margin-bottom: 1em;
    }

#news-item span.date {
    font-weight: normal;
    }

/* special styles for custom box content */

.big-black {
    margin-bottom: 8px;
    padding: 1px 0;
    }

.big-black a {
    display: block;
    text-decoration: none;
    }

.big-black a:hover {
    text-decoration: underline;
    }

.big-black span {
    display: block;
    font-size: 1.2em;
    font-weight: bold;
    padding: 4px 6px 1px 6px;
    line-height: 1.1em;
    }

.big-black span.huge {
    font-size: 1.8em;
    }

