fix position .visually-hidden with :focus
[ryf-theme.git] / css / style.css
index 7018a398468d9d5b876c2c9fbec5c0fe35009f15..b0e1089bc1a1744c275646f2d46cfe73d46a8c72 100644 (file)
@@ -3,10 +3,95 @@
  * your custom CSS modifications here.
  */
 
-body { margin: 0; min-width: 320px; }
+/* Lato font */
+
+@font-face {
+    font-family: "Lato";
+         url("../fonts/Lato-Regular.ttf") format('truetype');
+    font-weight: 400;
+    font-style: normal;
+}
+
+@font-face {
+    font-family: "Lato";
+         url('../fonts/Lato-RegularItalic.ttf') format('truetype');
+    font-weight: 400;
+    font-style: italic;
+}
+
+@font-face {
+    font-family: "Lato";
+         url('../fonts/Lato-Bold.ttf') format('truetype');
+    font-weight: 700;
+    font-style: normal;
+}
+
+
+/* Universal */
+
+body {
+  font-family: "Lato", Helvetica, Arial, sans-serif;
+  margin: 0;
+  min-width: 320px;
+}
 
 a { transition: 0.3s; }
 
+section { position: relative; }
+
+/* etcetera */
+
+.visually-hidden.focusable:focus {
+    position: absolute !important;
+    background: #000;
+    color: #FFF;
+    padding: 0.5em;
+    z-index: 9999;
+}
+
+.region-content { min-height: 300px; }
+
+h2.block-title {
+  background: #000;
+  color: #FFF;
+  padding: 0.5em;
+}
+
+.feed-icons a {
+  background: url('../images/rss.svg') top left no-repeat;
+  background-size: contain;
+  height: 20px;
+  overflow: hidden;
+  display: block;
+  text-indent: 25px;
+  font-size: 1em;
+  width: fit-content;
+  margin-top: 1em;
+  float: right;
+}
+
+.view-display-id-news_page .feed-icons a {
+  margin-top: -30px;
+}
+
+.more-link {
+  border: 1px solid #ddd;
+  border-radius: .5em;
+  padding: .5em;
+  text-align: center;
+  width: 50%;
+  margin: 0 auto;
+  font-weight: bold;
+}
+
+.more-link:hover { border: 1px solid #000; }
+
+.block-views {
+  margin-top: 20px;
+}
+
+/* Navbar */
+
 .navbar-default {
   background: #000;
   color: #FFF;
@@ -14,11 +99,11 @@ a { transition: 0.3s; }
   border-radius: 0px;
   box-sizing: content-box;
   align-items: center;
-  margin-bottom: 100px;
   min-height: 100px;
 }
 
-.navbar-header, #navbar-collapse {
+.navbar-header,
+#navbar-collapse {
   max-width: 1150px;
   padding: 0;
   margin: 0 auto;
@@ -35,11 +120,15 @@ a { transition: 0.3s; }
 
 .navbar-brand { display: none; }
 
-#block-ryf-main-menu .navbar-nav { margin-left: 180px; }
+#block-ryf-main-menu .navbar-nav { margin-left: 195px; }
+
+.navbar-default .navbar-nav > li > a:focus {
+  outline: none;
+}
 
-.navbar-default .navbar-nav > .active > a,
-.navbar-default .navbar-nav > .active > a:hover,
-.navbar-default .navbar-nav > li      > a {
+.navbar-default .navbar-nav > li > a,
+.navbar-default .navbar-nav > li > a:link,
+.navbar-default .navbar-nav > li > a:visited {
   color: #FFF;
   background: #000;
   border-bottom: 2px solid transparent;
@@ -47,11 +136,19 @@ a { transition: 0.3s; }
   margin-bottom: 5px;
 }
 
-.navbar-default .navbar-nav > .active > a,
-.navbar-default .navbar-nav > .active > a:hover,
-.navbar-default .navbar-nav > li      > a:hover {
-  color: #edd400;
-  border-bottom: 2px solid #edd400;
+.navbar-default .navbar-nav > li > a:focus,
+.navbar-default .navbar-nav > li.active > a:hover,
+.navbar-default .navbar-nav > li > a:hover {
+  color: #DDCC00;
+  background: #000;
+  border-bottom: 2px solid #DDCC00;
+  padding-bottom: 5px;
+  margin-bottom: 10px;
+}
+
+.navbar-default .navbar-nav > li > a.is-active {
+  border-bottom: 2px solid #FFF;
+  background: #000;
   padding-bottom: 5px;
   margin-bottom: 10px;
 }
@@ -66,28 +163,57 @@ a { transition: 0.3s; }
   float: right;
 }
 
-@media screen and (min-width: 520px) and (max-width: 599px) {
-  .logo img { margin-left: 50px; }
-  #block-ryf-main-menu .navbar-nav { margin-left: 230px; }
-}
-
-@media screen and (min-width: 600px) and (max-width: 767px) {
-  .logo img { margin-left: 100px; }
-  #block-ryf-main-menu .navbar-nav { margin-left: 280px; }
-}
+nav .search-block-form {
+  position: absolute;
+  width: 300px;
+  right: 10%;
+  top: 30px;
+}
+
+/* 
+ *  @media screen and (min-width: 520px) and (max-width: 599px) {
+ *   .logo img { margin-left: 50px; }
+ *   #block-ryf-main-menu .navbar-nav { margin-left: 230px; }
+ * }
+ * 
+ * @media screen and (min-width: 600px) and (max-width: 767px) {
+ *   .logo img { margin-left: 100px; }
+ *   #block-ryf-main-menu .navbar-nav { margin-left: 280px; }
+ * }
+ * 
+ * @media screen and (max-width: 767px) {
+ *   .logo img { height: 150px; margin-top: 25px; }
+ *   .navbar-default { min-height: 230px; margin-bottom: 30px; }
+ *   #block-ryf-main-menu .navbar-nav { max-width: 130px; }
+ * }
+ *
+ */
+@media screen and (min-width: 768px) {
 
-@media screen and (max-width: 767px) {
-  .logo img { height: 150px; margin-top: 25px; }
-  .navbar-default { min-height: 230px; margin-bottom: 30px; }
-  #block-ryf-main-menu .navbar-nav { max-width: 130px; }
+  .navbar-default {
+     margin-bottom: 100px;
+  }
+  .navbar-nav {
+     margin-top: 40px;
+  }
+  .region-header .breadcrumb {
+    position: absolute;
+    top: -70px;
+    left: 200px;
+    background: none;
+  }
+  .region-navigation-collapsible .search-block-form {
+    float: right;
+    padding-top: 30px;
+    width: 210px;
+  }
 }
 
-@media screen and (min-width: 768px) {
-  .navbar-nav { margin-top: 40px; }
-}
 
 /* Selectors */
 
+
 @media screen and (min-width: 768px) {
   .form-inline .form-item .select-wrapper {
     display: block;
@@ -97,19 +223,29 @@ a { transition: 0.3s; }
   }
 }
 
+
 /* RYF List */
 
+
+.ryf-list-row {
+  padding: 0;
+  margin: 0 auto;
+  overflow: auto;
+}
+
 .ryf-list {
   float: left;
   margin: 0;
   padding: 0.5em;
-  position:relative;
+  position: relative;
   list-style: none;
 }
 
 .ryf-list article {
   border: 1px solid #ececec;
   border-radius: 5px;
+  border-top: none;
+  border-left: none;
   padding: 1em;
   box-shadow: 2px 2px 5px #ddd;
   transition: 0.3s;
@@ -119,17 +255,29 @@ a { transition: 0.3s; }
   box-shadow: 0px 0px 5px #aaa;
 }
 
+.ryf-list article:before {
+    content: '';
+    float: left;
+    padding-top: 100%;
+}
+
 .ryf-list .field--type-image {
-  width: 100%;
+  width: 150px;
   height: 150px;
   background: #fff;
   border-radius: 10px;
   display: flex;
-  justify-content: center;
+  align-items: center;
+}
+
+.ryf-list .field--name-field-image {
+  margin: 0 auto 10px auto;
 }
 
 .ryf-list img {
   max-width: 150px;
+  max-height: 150px;
+  object-fit: contain;
   overflow: hidden;
 }
 
@@ -145,10 +293,12 @@ a { transition: 0.3s; }
   margin: 0;
   padding: 0;
   padding-bottom: 1em;
+  height: 100px;
+  overflow: hidden;
 }
 
 .ryf-list a {
-  color: #118991;
+  color: #337AB7;
   text-decoration: none;
 }
 
@@ -172,9 +322,41 @@ a { transition: 0.3s; }
   text-align: right;
 }
 
+@media screen and (min-width: 450px) and (max-width: 659px) {
+  .ryf-list-row {
+    max-width: 600px;
+  }
+  .ryf-list {
+    max-width: 300px;
+    float: none;
+    margin: 0 auto;
+  }
+}
+@media screen and (min-width: 660px) and (max-width: 767px) {
+  .ryf-list-row {
+    max-width: 600px;
+  }
+  .ryf-list-row {
+    margin: 0 auto;
+    max-width: 660px;
+  }
+  .ryf-list {
+    max-width: 300px;
+    float: left;
+  }
+  .auto-clear .col-xs-12:nth-child(odd){clear:left;}
+}
+
 
 /* Vendors list */
 
+
+.vendors-list-row {
+  padding: 10px;
+  margin: 0 auto;
+  overflow: auto;
+}
+
 @media screen and (max-width: 767px) {
   .vendors-list-row {
     margin: 0px auto;
@@ -183,6 +365,8 @@ a { transition: 0.3s; }
   .vendors-list {
     margin-bottom: 40px;
     list-style: none;
+
+    overflow: auto;
   }
 
   .vendors-list .views-field-field-icon {
@@ -195,7 +379,8 @@ a { transition: 0.3s; }
     margin: 0 auto;
   }
 
-  .vendors-list .views-field-name, .vendors-list .views-field-description__value {
+  .vendors-list .views-field-name,
+  .vendors-list .views-field-description__value {
     max-width: 300px;
     margin: 0 auto 10px auto;
   }
@@ -217,6 +402,8 @@ a { transition: 0.3s; }
   .vendors-list {
     list-style: none;
     clear: left;
+
+    overflow: auto;
   }
 
   .vendors-list .views-field-field-icon {
@@ -232,7 +419,8 @@ a { transition: 0.3s; }
     margin: 0 auto;
   }
 
-  .vendors-list .views-field-name, .vendors-list .views-field-description__value {
+  .vendors-list .views-field-name,
+  .vendors-list .views-field-description__value {
     margin-left: 300px;
   }
 
@@ -252,8 +440,75 @@ a { transition: 0.3s; }
 }
 
 
+/* Vendor and Category taxonomy term pages */
+
+
+.view-taxonomy-term .view-header .field--name-field-icon img {
+  margin: 0 auto;
+}
+
+.view-filters {
+  clear: left;
+}
+
+.view-taxonomy-term .view-header .field--name-field-vendor-support-link,
+.view-taxonomy-term .view-header .field--name-field-vendor-support-email {
+  margin-top: 15px;
+}
+
+@media screen and (max-width: 559px) {
+  .view-taxonomy-term.view-display-id-taxonomy_term_vendor .view-header {
+    margin: 0 auto 40px auto;
+
+    overflow: auto;
+  }
+
+  .view-taxonomy-term .view-header .field--name-field-icon {
+    margin: 0 auto 20px auto;
+    width: 220px;
+  }
+
+  .view-taxonomy-term .view-header .field--name-description,
+  .view-taxonomy-term .view-header .field--name-field-vendor-support-link,
+  .view-taxonomy-term .view-header .field--name-field-vendor-support-email {
+    max-width: 360px;
+    margin: 15px auto 0 auto;
+    padding: 0 10px;
+  }
+
+}
+
+@media screen and (min-width: 560px) {
+  .view-taxonomy-term.view-display-id-taxonomy_term_vendor .view-header {
+    margin: 0 0 40px 0;
+
+    overflow: auto;
+  }
+
+  .view-taxonomy-term .view-header .field--name-field-icon {
+    width: 220px;
+
+    float: left;
+  }
+
+  .view-taxonomy-term .view-header .field--name-description,
+  .view-taxonomy-term .view-header .field--name-field-vendor-support-link,
+  .view-taxonomy-term .view-header .field--name-field-vendor-support-email {
+    margin-left: 260px;
+  }
+
+}
+
+@media screen and (min-width: 768px) {
+  .view-taxonomy-term .view-header {
+    max-width: 700px;
+  }
+}
+
+
 /* Product */
 
+
 @media screen and (max-width: 767px) {
   .page-node-type-product .product {
     max-width: 382px;
@@ -278,13 +533,14 @@ a { transition: 0.3s; }
 .page-node-type-product .product .field--name-field-image {
   padding: 10px;
 
-  display: flex;
-  align-items: center;
-
   border: 1px solid #888;
   border-radius: 10px;
 }
 
+.page-node-type-product .product .field--name-field-image img {
+  margin: 0 auto;
+}
+
 .page-node-type-product .product .field--name-field-extra-images {
   padding: 5px;
 
@@ -301,27 +557,59 @@ a { transition: 0.3s; }
   padding: 5px;
 }
 
-.page-node-type-product .product .field--name-field-categories, .page-node-type-product .product .field--name-field-vendor {
+.page-node-type-product .product .field--name-field-categories,
+.page-node-type-product .product .field--name-field-vendor {
   margin: 10px 10px 20px 0px;
   padding: 10px;
   border: 1px solid #888;
   border-radius: 10px;
 }
 
+.page-node-type-product .product .field--name-field-categories .field--item {
+  display: list-item;
+  list-style: circle;
+  margin-left: 15px;
+}
+
+/* product page colors */
+.page-node-type-product .product .field--name-field-image {
+  background-color: #fff;
+  border-color: #aaa;
+}
+.page-node-type-product .product .field--name-field-extra-images {
+  background-color: #f3f3f3;
+  border-color: #aaa;
+}
+.page-node-type-product .product .field--name-field-categories {
+  background-color: #def;
+  border-color: #8ad;
+}
+.page-node-type-product .product .field--name-field-vendor {
+  background-color: #dfe;
+  border-color: #8da;
+}
+
 @media screen and (max-width: 767px) {
   .page-node-type-product .product .field--name-field-extra-images {
     margin: 10px auto 0px auto;
   }
 
-  .page-node-type-product .product .field--name-body, .page-node-type-product .product .field--name-field-vendor-product-link, .page-node-type-product .product .field--name-field-certification-details, .page-node-type-product .product .field--name-field-certification-date, .page-node-type-product .product .field--name-field-source-code-links {
+  .page-node-type-product .product .field--name-body,
+  .page-node-type-product .product .field--name-field-vendor-product-link,
+  .page-node-type-product .product .field--name-field-certification-details,
+  .page-node-type-product .product .field--name-field-certification-date,
+  .page-node-type-product .product .field--name-field-source-code-links {
     margin-bottom: 20px;
   }
 
-  .page-node-type-product .product .field--name-field-categories, .page-node-type-product .product .field--name-field-vendor {
+  .page-node-type-product .product .field--name-field-categories,
+  .page-node-type-product .product .field--name-field-vendor {
+    margin-bottom: 0px;
     float: left;
   }
 
   .page-node-type-product .product .field--name-body {
+    padding-top: 20px;
     clear: both;
   }
 }
@@ -341,7 +629,11 @@ a { transition: 0.3s; }
     margin-top: 10px;
   }
 
-  .page-node-type-product .product .field--name-body, .page-node-type-product .product .field--name-field-vendor-product-link, .page-node-type-product .product .field--name-field-certification-details, .page-node-type-product .product .field--name-field-certification-date, .page-node-type-product .product .field--name-field-source-code-links {
+  .page-node-type-product .product .field--name-body,
+  .page-node-type-product .product .field--name-field-vendor-product-link,
+  .page-node-type-product .product .field--name-field-certification-details,
+  .page-node-type-product .product .field--name-field-certification-date,
+  .page-node-type-product .product .field--name-field-source-code-links {
     margin-left: 400px;
     margin-bottom: 20px;
   }
@@ -358,8 +650,121 @@ a { transition: 0.3s; }
 }
 
 
+/* News and Product Announcements */
+
+
+.page-node-type-product-announcement .page-header,
+.page-node-type-product-announcement .tabs--primary,
+.page-node-type-product-announcement .region-content,
+.page-node-type-general-news-item .page-header,
+.page-node-type-general-news-item .tabs--primary,
+.page-node-type-general-news-item .region-content,
+.page-node-type-page .page-header,
+.page-node-type-page .tabs--primary,
+.page-node-type-page .region-content,
+.path-news .page-header,
+.path-news .tabs--primary,
+.path-news .region-content {
+  max-width: 800px;
+  margin: 0 auto;
+}
+
+/* don't apply above max-width rule to main page */
+.path-frontpage .page-header,
+.path-frontpage .tabs--primary,
+.path-frontpage .region-content {
+  max-width: 2000px; /* high number beyond the max */
+}
+
+.page-node-type-page .page-header {
+  margin-bottom: 20px;
+}
+
+.path-news h2,
+.block-views-blocknews-news-block article h2 {
+  font-size: 25px;
+}
+
+.page-node-type-product-announcement .author,
+.page-node-type-general-news-item .author {
+  margin: 10px 0 20px 0;
+  font-style: oblique;
+}
+
+.page-node-type-product-announcement .field--name-body,
+.page-node-type-general-news-item .field--name-body {
+  margin-bottom: 20px;
+}
+
+.page-node-type-product-announcement .field--name-field-external-news-link,
+.page-node-type-general-news-item .field--name-field-external-news-link {
+  margin-bottom: 20px;
+}
+
+.page-node-type-product-announcement .field--name-field-vendor-page,
+.page-node-type-product-announcement .field--name-field-announced-products {
+  margin-bottom: 20px;
+}
+
+
+/* Search Results */
+
+
+@media screen and (max-width: 600px) {
+  .path-search .region-content > ol {
+    width: 300px;
+  }
+}
+@media screen and (min-width: 601px) and (max-width 1000px) {
+  .path-search .region-content > ol {
+    width: 560px;
+  }
+}
+@media screen and (min-width: 1001px) {
+  .path-search .region-content > ol {
+    width: 900px;
+  }
+}
+
+.path-search .region-content > ol {
+  margin: 0 auto;
+  padding-left: 0;
+  overflow: auto;
+}
+
+.path-search .region-content > ol li {
+  width: 280px;
+  height: 280px;
+  margin: 0px auto;
+  padding: 10px;
+
+  float: left;
+
+  list-style: none;
+  overflow: hidden;
+}
+
+.path-search .region-content > ol li h3 {
+  text-align: center;
+}
+
+.path-search .region-content > ol li .search-image {
+  width: 100px;
+  height: 100px;
+
+  margin: 0 auto;
+
+  display: flex;
+  align-items: center;
+}
+
+.path-search .region-content > ol li img {
+}
+
+
 /* Footer */
 
+
 .footer {
   background: #333;
   color: #FFF;
@@ -370,7 +775,7 @@ a { transition: 0.3s; }
   width: 100%;
 }
 
-.footer a { color: #edd400; }
+.footer a { color: #DDCC00; }
 
 .footer a:hover { color: #FFF; }