/*
- SVG
- Icons
- Buttons
- Tooltip
- Pop Up
- Cards
- Post
- Accordion
- Overlay
- Tabs
- Forms
- Maps
- Slider
- Modal
- Animation
*/


/* SVG / Shades ----------------------------*/
.svg-stroke {
   stroke: var(--sh-lightgrey);
   stroke-width: .5px;
}

.svg-logo {
   width: 232px;
   height: 32px;
   fill: black;
}

.svg-logodate {
   width: 232px;
   height: 16px;
   fill: black;
}


/* Icons -----------------------------------*/
.icon {
   width: 100%;
   max-height: 1.5rem;
   margin: 0 auto;
   display: inline-block;
   fill: none;
   stroke-linecap: round;
   stroke: var(--sh-grey);
   stroke: black;
   stroke-width: 1.4px;
   transition: 500ms stroke ease-out;
   cursor: pointer;
   border: 0;
}

.icon--btn {
   display: inline-block;
   height: 16px;
   width: 16px;
   fill: none;
   stroke-linecap: round;
   stroke: var(--sh-grey);
   stroke-width: 1.7px;
   transition: 500ms stroke ease-out;
   cursor: pointer;
   margin-left: 0.5em;
}

.icon--fill {
   fill: var(--sh-grey);
}

.icon--navbar {
   max-width: 1.05rem;
   height: 2rem;
   stroke-width: 1.25px;
   padding-top: 3px;
}

.icon--search {
   position: absolute;
   display: block;
   bottom: -4px;
   right: -4px;
   width: 34px;
   height: 34px;
   stroke-width: .8px;
   fill: none;
}

.icon--black {
   stroke: black;
   stroke-width: 1px;
}

.icon--gold {
   stroke: var(--clr-gold);
   fill: none;
}

.icon--gold:hover,
.icon--gold:focus {
   stroke: white;
}

.icon--goldfill {
   stroke: var(--clr-gold);
   fill: var(--clr-whitegold);
}

.icon--darkgold {
   stroke: var(--clr-darkgold);
   fill: none;
   stroke-width: 1.5px;
}

.icon--location {
   fill: var(--clr-blue);
   stroke: var(--clr-gold);
   stroke-width: .7px;
   display: block;
   width: 56px;
   height: auto;
}

.icon-smedia-bg {
   fill: var(--sh-offblack);
   cursor: pointer;
}

.icon-smedia-icon {
   fill: white;
}

.icon-refresh {
   width: 1rem;
}

.icon--picture,
.icon--tearsheet {
    stroke-width: 1.3px;
}

.icon-close {
   width: 1rem;
   display: block;
   stroke-width: 1.9px;
}

.icon--arrow {
   stroke-width: 2px;
}

.icon--expand {
   width: 24px;
   height: 24px;
   stroke: var(--sh-grey);
   stroke-width: 1.2px;
}

/* icon import on page */
.icon-page,
.shade-page {
   display: none;
}

.icon-favourites--notliked {
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   z-index: 2;
}

.icon--favourites { max-height: 1.8rem;}
/* Buttons ---------------------------------*/
.btn {
   display: inline-block;
   font-family: var(--ff-pri);
   font-size: .9rem;
   font-weight: 400;
   text-transform: uppercase;
   letter-spacing: .085rem;
   white-space: nowrap;
   color: var(--sh-darkgrey);
   padding: .7rem 1.5rem;
   border: 1px solid var(--sh-offwhite);
   border-radius: 26px;
   outline: none;
   cursor: pointer;
   transition: 500ms all ease-out;
   background: var(--sh-offwhite);
}

.btn:hover {
   background-color: white;
   border: solid 1px var(--clr-gold);
}

.btn-sm {
   padding: .55rem 1.4rem;
}

.btn--centered {
   margin: 0 auto;
}

.btn--hero {
   color: inherit;
   padding: .75rem 1.5rem;
   border: 1px solid rgba(255, 255, 255, 1);
   background-color: rgba(255, 255, 255, .1);
}

.btn--hero:hover {
   background-color: rgba(255, 255, 255, .3);
   border-color: inherit;
}

.btn--enquiries {
   font-family: var(--ff-ter);
   font-weight: 200;
   font-size: 1.1rem;
   letter-spacing: .1em;
   border: solid 1px var(--clr-gold);
   background-color: var(--sh-offwhite);
}

.btn--outline {
   color: var(--clr-gold);
   background: none;
   border: solid 1px var(--clr-gold);
}

.btn--outline:hover {
   color: var(--sh-offwhite);
   border: solid 1px var(--sh-offwhite);
   background: none;
}

.btn--white {
   background: white;
   border: solid 1px var(--clr-gold);
}

.btn--white:hover {
   background: var(--sh-offwhite);
}

.btn-footer-smedia {
   width: 2.05rem;
   height: 2.05rem;
   margin: 0 1rem;
   display: block;
}

.btn-footer-smedia .icon-smedia-bg {
   fill: purple;
}

.btn--search {
   position: relative;
   height: 3rem;
   width: 3rem;
   margin-left: .25rem;
   padding: 0;
   border: 0;
   background: none;
}

.btn--search:hover {
   background: none;
}

.btn--transparent {
   background: red;
   outline: 0;
   border: 50px;
}


/* Button Round */
[class*="btn-round"] {
   position: relative;
   border: none;
   border-radius: 50%;
   margin: 0;
   display: flex;
   align-items: center;
   justify-content: center;
   cursor: pointer;
   transition: 300ms all ease-out;
   background: var(--sh-offwhite);
}

.btn-round:hover {
   background: rgb(235, 235, 235);
}

.btn-round-lg {
   width: 1.9rem;
   height: 1.9rem;
   padding: .3rem;
}

.btn-round-md {
   width: 1.9rem;
   height: 1.9rem;
   /* padding: .35rem; */
}

.btn-round-md .icon {
   max-height: 1.125rem;
}

.btn-round-sm {
   width: 1.5rem;
   height: 1.5rem;
   padding: .2rem;
}

.btn-round-xs {
   width: 1.3rem;
   height: 1.3rem;
   padding: .2rem;
}

.btn-round--outline {
   border: solid 1px var(--clr-gold);
   background: rgba(255,255,255, 0.2);
}

.btn-round--outline:hover {
   background: white;
}

.btn-round--outline .icon {
    stroke: black;
}

.btn-round--blue {
   padding: .7em 1.7em .8em 1.9em;
   width: 1.6rem;
   height: 1.6rem;
   padding: .2rem;
   background: none;
   border: solid 1px var(--clr-gold);
}

.btn-round--blue:hover {
   background-color: inherit;
   border: solid 1px white;
}


/* Button Smedia Share */
.btn-share {
   margin: .5rem auto 0;
}

.btn-share--favourites {
   margin-top: .5rem;
}

.btn-share__title {
   font-family: var(--ff-pri);
   font-size: .8rem;
   font-weight: 400;
   text-transform: uppercase;
   text-align: center;
   letter-spacing: .1em;
   line-height: 32px;
   color: var(--sh-grey);
   pointer-events: none;
   transition: opacity 0.3s ease-in-out;
   display: inline-block;
}

.btn-share__btns {
   height: 2.1rem;
   margin: .4rem auto 2rem;
}

.btn-share__btn {
   width: 2.2rem;
   height: 2.2rem;
   margin: 0 .5rem;
   display: inline-block;
   transition: all 0.4s ease-in-out;
}

.btn-share__btn .icon-smedia-bg {
   fill: var(--sh-offwhite);
}

.btn-share__btn .icon-smedia-icon {
   fill: var(--sh-offblack);
}

/* Button Set */
.btn-set {
   width: 8.5rem;
   display: flex;
   justify-content: space-between;
   margin: 1rem auto 0;
}

.btn-set--product {
       width: 8.75rem;
}

.btn-set--favourites {
   margin: -1.5rem auto 0;
}



/* Pop Up ----------------------------------*/
.popup {
   display: inline-block;
   cursor: pointer;
   user-select: none;
}

.popup__text {
   z-index: 1;
   visibility: hidden;
   position: absolute;
   min-width: 12rem;
   left: 0;
   top: -200px;
   padding: 1rem;
   margin-left: -175%;
   border: solid var(--clr-gold) 2px;
   border-radius: .25rem;
   background-color: white;
}

.popup__text .sub-heading--sm,
.popup__text .text--sm {
   text-align: left;
}

.popup__text .text--sm {
   padding: 0;
}

.popup__text::after {
   content: "";
   position: absolute;
   top: 100%;
   left: 50%;
   margin-left: -5px;
   border-width: 10px;
   border-style: solid;
   border-color: var(--clr-gold) transparent transparent transparent;
}

.show {
   visibility: visible;
   animation: fadeIn 1s;
}



/* Cards -----------------------------------*/
.cards-designer {
   display: grid;
   grid-row-gap: 4rem;
   padding: 0 2rem;
}

.card-designer {
   display: flex;
   flex-direction: column;
}

.card-designer__img {
   width: 12rem;
   height: 12rem;
   margin: 0 auto 2rem;
}

.card-designer__info {
   padding: 0 .25rem;
}

.card-designer__heading {
   font-size: 1.15rem;
}

.card-designer__link {
   display: block;
   margin-top: 1rem;
}

/* Card - Brochures */
.cards-brochure {
   padding: 0 2rem;
   display: grid;
   grid-template-columns: repeat(auto-fit, minmax(11.5rem, 1fr));
   grid-column-gap: 3rem;
   grid-row-gap: 3rem;
}

.card-brochure {
   position: relative;
   width: 100%;
}

.card-brochure--main {
   width: 100%;
   max-width: 24rem;
   margin: auto auto 2rem;
}

.card-brochure__link {
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
}

.card-brochure__overlay {
   position: absolute;
   bottom: 0;
   left: 0;
   width: 100%;
   transition: .5s ease;
   opacity: 1;
   padding: 1rem 0;
   text-align: center;
   cursor: pointer;
   background: var(--clr-darkblue);
}

.card-brochure__caption {
   position: relative;
   font-family: var(--ff-ter);
   font-size: .8rem;
   text-align: center;
   color: var(--clr-gold);
}

.card-brochure__caption:hover {
   color: var(--sh-offwhite);
   transition: color .5s ease;
}

/* Card - Downloads */
.cards-downloads {
   padding: 0 1rem;
   display: grid;
   grid-template-columns: repeat(auto-fit, minmax(16.5rem, 1fr));
   grid-column-gap: 3rem;
   grid-row-gap: 4rem;
}

.card-downloads {
   display: flex;
   flex-direction: column;
}

.card-downloads__content {
   width: 100%;
   min-height: 14rem;
   padding: 1rem;
   margin-bottom: 1rem;
   border: solid .5px var(--clr-gold);
   background-color: var(--sh-offwhite);
   display: flex;
   align-items: center;
   justify-content: center;
}

.card-downloads__content--dark {
   background-image: var(--clr-blue-gradient2);
}

.card-downloads__img {
   display: block;
   width: 100%;
   max-width: 18rem;
}

.card-downloads__img--small {
   display: block;
   width: 100%;
   max-width: 5rem;
}

.card-downloads__links {
   display: flex;
   align-items: center;
   justify-content: center;
}

.card-downloads__links .link-sm {
   display: inline-block;
   margin: 0rem .25rem;
}

.card-downloads__links a::after {
   content: '|';
   color: black;
   margin-left: .5rem;
}

.card-downloads__links a:last-of-type::after {
   content: '';
   display: none;
}



/* Post ------------------------------------*/
.posts {
   display: grid;
   grid-template-columns: repeat(auto-fit, minmax(21rem, 1fr));
   grid-column-gap: 3rem;
   grid-row-gap: 4rem;
   padding: 0 2rem;
}

.post__info {
   padding: 0 .25rem;
   text-align: left;
}

.post__img {
   width: 100%;
   min-height: 15rem;
   max-height: 26rem;
   object-fit: cover;
   margin: 0 auto 1.5rem;
}

.post__date {
   font-family: var(--ff-ter);
   font-size: .9rem;
   font-weight: 400;
   text-align: left;
   letter-spacing: .05em;
   line-height: 1.7rem;
   color: var(--clr-darkgold);
}

.post__title,
.post__text {
   text-align: left;
}

.post__link {
   display: block;
   text-align: left;
   margin: 1rem 0;
}

.post--single {
   margin: 2rem 2rem 8rem;
}



/* Accordion -------------------------------*/
.accordion--product__info {
   margin-bottom: 2rem;
}

.accordion__link {
   padding: .8rem .8rem .6rem .8rem;
   border-bottom: 1px solid #cccccc;
   position: relative;
   display: block;
   cursor: pointer;
   transition: all 0.4s ease;
}

.accordion__heading {
   font-family: var(--ff-ter);
   font-size: 1rem;
   line-height: 1.5rem;
   font-weight: 400;
   letter-spacing: .1rem;
   text-transform: uppercase;
   text-align: center;
   color: var(--sh-offblack);
}

.accordion__link li:last-child .accordion__link {
   border-bottom: 0;
}

.accordion__arrow {
   position: absolute;
   width: .8rem;
   top: .85rem;
   right: 0rem;
   transition: transform 0.4s ease;
}

#accordion li.open .accordion__arrow {
   transform: rotate(180deg);
}

.accordion__sub-link {
   display: none;
   margin: 0;
   padding-top: 1.5rem;
}

.accordion__sub-link .text-info {
   text-transform: uppercase;
   font-size: .8rem;
   letter-spacing: .08rem;
   margin: 0;
}

.accordion-fade {
   animation-name: accordion-fade;
   animation-duration: 1s;
}

@keyframes accordion-fade {
   from {
      opacity: .1
   }

   to {
      opacity: 1
   }
}

.accordion--info .accordion__link {
   padding: 1rem 0 0.75rem 0;
}

.accordion--info .accordion__sub-link {
   padding: 2rem;
   font-size: 1rem;
   text-align: left;
   background: white;
}

.accordion__link li:first-child .accordion__link {
   border-top: 0;
}



/* Tabs - Info Page ------------------------*/
.tabs--screen-only {
   overflow: hidden;
   margin: 20px 0 0;
   display: none;
}

.tab--screen__list {
   height: 2.5rem;
   padding: 0;
   margin: 0;
   list-style-type: none;
}

.tab--screen__tab {
   position: relative;
   display: inline-block;
   height: 46px;
   font-family: var(--ff-ter);
   text-transform: uppercase;
   padding: .5rem 1rem;
   margin-right: -4px;
   border-bottom: 1px solid var(--clr-gold);
   border-left: 1px solid var(--clr-gold);
   border-top: 1px solid var(--clr-gold);
   cursor: pointer;
   overflow: hidden;
   transition: all .3s;
   z-index: 5;
   border-top-left-radius: .5em;
   border-top-right-radius: .5em;
}

.tab--screen__title {
   font-family: var(--ff-pri);
   font-size: .8rem;
   font-weight: 400;
   letter-spacing: .1rem;
   text-transform: uppercase;
   text-decoration: none;
   line-height: 1.5rem;
   padding: 0;
   margin: 0;
   cursor: pointer;
}

.tab--screen__tab.tab-active {
   background: var(--bg-gold);
}

.tab--screen__tab:last-child {
   border-right: 1px solid var(--clr-gold);
}

.tabs {
   min-height: 10rem;
   list-style-type: none;
   margin: 0;
   padding: 0;
}

.tab__header {
   z-index: 5;
   position: relative;
   width: 100%;
   text-transform: uppercase;
   border-bottom: 1px solid var(--clr-gold);
   cursor: pointer;
   overflow: hidden;
   transition: all .3s;
   background: linear-gradient(to bottom, rgba(0, 0, 0, .04) 5%, rgba(0, 0, 0, 0) 90%) no-repeat;
   /* background: var(--sh-offwhite); */
}

.tab__title {
   font-family: var(--ff-pri);
   font-size: .9rem;
   font-weight: 400;
   letter-spacing: .1rem;
   text-transform: uppercase;
   text-decoration: none;
   line-height: 1.5rem;
   padding: 14px 20px;
   margin: 0;
}

.tab-active .tab__close,
.tab-active-grey .tab__close {
   display: block;
}

.tab {
   display: none;
   position: relative;
   transition: all .3s;
   width: 100%;
}

.tab-active .tab,
.tab-active-grey .tab {
   display: block;
}

.tab__close {
   display: none;
   position: absolute;
   z-index: 10;
   top: .75rem;
   right: 1rem;
   padding: 4px;
   border-radius: 1rem;
   background: white;
}

.tab__close .icon {
   display: block;
   padding: .1rem;
   stroke: 1.5pxx;
   width: 1.3rem;
   height: 1.3rem;
}

.tab__nocontent-text {
   position: absolute;
   top: 0;
   right: 0;
   bottom: 0;
   left: 0;
   display: flex;
   align-items: center;
   justify-content: center;
}

.tab__content {
   position: relative;
   width: 100%;
   margin: 0 auto;
   padding: 5rem 1rem 3rem;
}

.tab__content .page-1col {
   padding: 0;
}

.tab__content .sub-heading {
   font-size: 1rem;
   margin: 2rem 0rem 0.5rem;
}

.tab__content .text {
   margin-bottom: 1rem;
}

.tab__content .text--alert {
   display: block;
   margin-bottom: 4rem;
}

.tab__content .form {
   margin-bottom: 2rem;
}

.tab__content--single {
   padding: 2rem;
}

.tab__table {
   width: 100%;
}

.tab--gold {
   background: var(--clr-bg-gold);
}



/* Lists Links  ----------------------------*/
.list-download {
   margin: 2rem 0 4rem;
   padding: 0 1rem;
}

.list-download__items {
   columns: 9rem 6;
}

.list-download__top {
   margin-bottom: 2rem;
}

.list-download:nth-child(2) .sub-heading {
   margin-bottom: -1rem;
}

.list-download__heading {
   column-span: all;
   margin: 3rem 0 1rem;
}

.list-download__heading .sub-heading--sm {
   font-size: 1rem;
   text-align: center;
}

.list-download__item {
   position: relative;
   font-family: var(--ff-pri);
   font-size: .9rem;
   text-decoration: none;
   white-space: nowrap;
   line-height: 2rem;
}

.list-download__item .inline-link {
   text-decoration: none;
}

.list-download__title {
   font-size: 1.2rem;
   font-family: var(--ff-pri);
   font-weight: 400;
}



/* Dropdown --------------------------------*/
.dropdown {
   position: relative;
   display: block;
   font-family: var(--ff-ter);
   font-size: 1rem;
   font-size: weight: 200;
   text-align: left;
   height: 3rem;
   width: 100%;
   padding-top: .25em;
   cursor: pointer;
   transition: all .5s ease;
}

.dropdown__select {
   cursor: pointer;
   display: block;
   height: 100%;
   width: 100%;
   padding: 0 .5rem;
   display: flex;
   align-items: center;
   justify-content: space-between;
   background-color: var(--sh-offwhite);
}

.dropdown__icon {
   stroke-width: 1.3px;
   stroke: var(--sh-offblack);
   max-width: 1.5rem;
   margin: 0;
   transition: all .3s ease-in-out;
}

.dropdown__menu {
   z-index: 9;
   display: none;
   position: absolute;
   width: 100%;
   top: 2.95rem;
   padding: 1rem 0;
   box-shadow: 0 1px 2px rgb(204, 204, 204);
   list-style: none;
   overflow: scroll;
   overflow-y: auto;
   background-color: white;
}

.dropdown__item {
   font-family: var(--ff-ter);
   font-size: .9rem;
   padding: .75rem 1rem;
   transition: all .2s ease-in-out;
   cursor: pointer;
}

.dropdown__item:hover {
   background-color: rgba(237, 221, 189, 0.2);
}

/* Small */
.dropdown--small {
   font-family: var(--ff-pri);
   font-size: .85rem;
   letter-spacing: .02em;
   padding-top: 0;
   height: 2rem;
   max-width: 16rem;
   margin: 0 auto;
}

.dropdown--small .dropdown__menu {
   top: 2rem;
}

.dropdown--small .dropdown__item {
   padding: .5rem 1rem;
}

/* Dark Mode */
.dropdown--dark {
   border: .75px solid var(--clr-gold);
}

.dropdown--dark .dropdown__menu {
   background: var(--clr-darkblue);
   border: .5px solid var(--clr-gold);
}

.dropdown--dark .icon {
   width: 1.2rem;
   margin: 0;
   stroke-width: 1.3px;
   stroke: var(--clr-gold);
   transition: all .3s ease-in-out;
}



/* Filter ----------------------------------*/
.filter {
   position: absolute;
   top: -17px;
   right: 0;
   left: 0;
   height: auto;
   overflow-x: hidden;
   transition: 0.5s;
   box-shadow: -2px 1px 2px rgba(0, 0, 0, .1);
   background: white;
   margin-top: 8.5rem;
}

.filter__inner {
   position: relative;
   width: 100%;
   padding: 1rem 1rem .5rem;
   height: auto;
   background: linear-gradient(to bottom, rgba(0, 0, 0, .05) 5%, rgba(0, 0, 0, 0) 95%) no-repeat;
}

.filter-tabs {
   position: relative;
   overflow: hidden;
   display: flex;
   align-ietms: center;
   justify-content: center;
}

.filter-tablink {
   background-color: inherit;
   border: none;
   outline: none;
   height: 100%;
   font-family: var(--ff-ter);
   font-size: .85rem;
   font-weight: 400;
   letter-spacing: .1em;
   text-transform: uppercase;
   padding: 0 .5rem;
   transition: 300ms color ease-out;
   cursor: pointer;
}

.filter-tablink.active {
   color: var(--clr-darkgold);
}

.filter-tab {
   display: none;
   margin: 1rem .25rem;
   padding: 0 .5rem 2rem;
   z-index: 0;
}

.filter-tab__list {
   display: grid;
   grid-template-columns: repeat(auto-fit, minmax(8rem, 1fr));
   grid-row-gap: .75rem;
   max-width: 42rem;
   margin: 1.5rem auto 0;
   align-items: center;
}

.filter-tab__footer {
   position: absolute;
   bottom: 0;
   left: 0;
   right: 0;
   width: 100%;
   height: 2.25rem;
   display: flex;
   justify-content: space-around;
   align-items: center;
   background: linear-gradient(180deg, rgba(0, 0, 0, .05) 0%, rgba(255, 255, 255, 0) 14%);
   padding-top: .25rem;
}

.filter-tab__footer__link {
   height: 100%;
   width: 100%;
   opacity: .5;
   display: flex;
   justify-content: center;
   align-items: center;
}

.filter-tab__footer__link:first-of-type {
   border-right: 1px solid lightgrey;
}

.filter-tablink--desktop {
   display: none;
}



/* Checkbox --------------------------------*/
.checkbox {
   position: relative;
   font-size: 1rem;
   text-align: left;
   display: inline-block;
}

.checkbox label {
   display: inline;
   font-family: var(--ff-pri);
   font-size: .75rem;
   letter-spacing: .05em;
   line-height: 1.5em;
   padding-left: 1px;
   vertical-align: top;
   clear: both;
   cursor: pointer;
}

.checkbox label:not(:empty) {
   padding-left: 0.75em;
}

.checkbox label:before, .checkbox label:after {
   content: "";
   position: absolute;
   left: 0;
   top: 0;
}

.checkbox label:before {
   width: 1rem;
   height: 1rem;
   background: #fff;
   border: 1px solid var(--sh-lightgrey);
   border-radius: 0.6em;
   cursor: pointer;
   transition: background 0.3s;
}

.checkbox input[type=checkbox] {
   outline: 0;
   visibility: hidden;
   width: 1rem;
   margin: 0;
   display: block;
   float: left;
   font-size: inherit;
}

.checkbox input[type=checkbox]:checked+label:before {
   background: var(--clr-gold);
   border: none;
}

.checkbox input[type=checkbox]:checked+label:after {
   transform: translate(0.3em, 0.3em) rotate(-45deg);
   width: 0.7em;
   height: 0.5em;
   border: 1.4px solid black;
   border-top-style: none;
   border-right-style: none;
}

.checkbox input[type=checkbox]:disabled+label:before {
   border-color: rgba(0, 0, 0, 0.26);
}

.checkbox input[type=checkbox]:disabled:checked+label:before {
   background: rgba(0, 0, 0, 0.26);
}



/* Forms -----------------------------------*/
::-webkit-input-placeholder {
   opacity: 1;
}

::-moz-placeholder {
   opacity: 1;
}

:-ms-input-placeholder {
   opacity: 1;
}

:-moz-placeholder {
   opacity: 1;
}

.form .text--intro {
   text-align: center;
   margin-bottom: 2rem;
}

.form--grid {
   display: grid;
   grid-gap: 2.5rem;
   padding: 0 .5rem;
}

.form__label {
   font-size: 1rem;
   font-family: var(--ff-ter);
}

.form__label--heading {
   font-size: 1.4rem;
   letter-spacing: .1em;
   text-transform: uppercase;
}

.form__login {
   max-width: 26rem;
   padding: 0 2rem;
   margin: 0 auto;
}

.form__login .form__input {
   margin-bottom: 1rem;
}

.form__login .btn {
   margin-top: 1rem;
}

.form__input {
   font-family: var(--ff-ter);
   font-size: 1rem;
   font-weight: 200;
   letter-spacing: .025em;
   width: 100%;
   height: 3rem;
   padding-top: 1em;
   padding-left: 0;
   border-width: 0 0 1px 0;
   border-radius: 0;
   background: none;
   border-color: var(--clr-gold);
}

.form__input--gold {
   color: var(--clr-gold);
}

.form__input--black {
   border-color: black;
   border-width: 0 0 1.5px 0;
}

.form__dropdowns {
   display: grid;
   grid-gap: 1rem;
}

.form__text-area {
   font-family: var(--ff-pri);
   font-size: 1rem;
   width: 100%;
   min-height: 12rem;
   padding: 1rem;
   border: solid 1.5px var(--clr-gold);
   border-color: var(--clr-gold);
   background-color: white;
}

.form__disclaimer {
   margin-top: -1rem;
   display: flex;
   flex-direction: column;
}

.form__maillist .text {
   margin: 0;
   margin-right: 1rem;
}

.form__maillist > * {
   display: inline;
}

.form__comfirmation {
   width: 100%;
   margin-bottom: 1.5rem;
   display: flex;
   flex-direction: row;
   align-items: center;
   justify-content: center;
}

.form--dark .form__input {
   border-color: black;
}

.form__comfirmation .text-sm {
   margin: 0;
   text-align: left;
}

.form__comfirmation--footer {
   display: block;
}

.form__switch {
   position: relative;
   width: 2rem;
   margin-left: 1rem;
}

.form__switch-input {
   display: none;
}

.form__switch-label {
   display: block;
   width: 2rem;
   height: 1rem;
   color: transparent;
   user-select: none;
}

.form__switch-label::before,
.form__switch-label::after {
   content: "";
   display: block;
   position: absolute;
   cursor: pointer;
}

.form__switch-label::before {
   width: 100%;
   height: 100%;
   background-color: var(--sh-lightgrey);
   border-radius: 9999em;
   transition: background-color 0.25s ease;
}

.form__switch-label::after {
   top: 0;
   left: 0;
   width: 1rem;
   height: 1rem;
   border-radius: 50%;
   background-color: #fff;
   box-shadow: 0 0 2px rgba(0, 0, 0, 0.45);
   transition: left 0.25s ease;
}

.form__switch-input:checked+.form__switch-label::before {
   background-color: #008000;
}

.form__switch-input:checked+.form__switch-label::after {
   left: 1rem;
}

.form--blue {
   color: var(--clr-gold);
}

.form--blue .form__input {
   color: var(--clr-gold);
   opacity: 1;
}

.form--footer {
   margin-bottom: 2rem;
   color: var(--clr-gold);
   padding: 0 2rem;
}

.form--footer .form__label {
   font-size: 1.1rem;
   line-height: 2rem;
   text-align: center;
   margin-bottom: 1rem;
}

.form--footer__inner {
   text-align: center;
}

.form--footer .form__input {
   font-family: var(--ff-pri);
   font-size: 1rem;
   display: block;
   width: 100%;
   max-width: 20rem;
   margin: 1rem auto;
}

.form--footer .btn {
   margin-top: 1.5rem;
}

.form__comfirmation--footer {
   color: var(--clr-gold);
   margin-top: 1rem;
   max-width: 50ch;
   padding: 0;
}

.form__searchbox {
   width: 100%;
   max-width: 28rem;
   margin: auto;
   padding: .5rem 2rem 1rem;
   display: flex;
}

.form__searchbox--map {
   padding: .5rem 1.5rem .5rem;
}

.form__searchbox--map .icon--search {
   stroke: 1.5px;
   width: 30px;
   height: 30px;
   stroke: black;
}

.form__searchbox--map .form__input {
   padding-top: 1rem;
   border-bottom: 1.2px solid black;
}

.form--enquiries {
   padding: 0 2rem
}

.form--enquiries .text {
   margin-bottom: 2rem;
}


/* Map -------------------------------------*/
.map__sidenav {
   z-index: 20;
   position: absolute;
   left: 0;
   bottom: 0;
   width: 100%;
}

.map__sidenav__inner {
   z-index: 1;
   max-width: 22rem;
   height: 100%;
   margin: 0 auto;
   background: rgba(255, 255, 255, .9);
}

.map__sidenav__heading {
   margin: 1rem 0 0 0;
   display: none;
   color: var(--sh-offblack);
}

.map__search {
   display: flex;
   left: 0;
   top: 0;
   height: 3.5rem;
   width: 100%;
   max-width: 20rem;
   margin: 0 auto;
}

.map__search .btn--form {
   margin-left: .5rem;
   border: none;
   padding: 0;
}

.map__search .btn {
   display: flex;
   justify-content: center;
   align-items: flex-end;
}

.map__search .icon--black {
   display: block;
   width: 2rem;
   height: 2rem;
   stroke-width: .9px;
}

.map__search .form__input {
   font-family: var(--ff-pri);
   font-size: .8rem;
   font-weight: 400;
   color: var(--sh-offblack);
   border-bottom: 1px solid black;
}

.map__addresses {
   display: none;
   width: 100%;
   height: 100%;
   overflow: auto;
   background: white;
   padding: 1.5rem;
}

.map__address .text-sm {
   text-align: left;
   padding: 0;
   margin-bottom: 1rem;
}

.map__addresses .sub-heading {
   text-align: left;
   font-size: .95rem;
   margin: 0;
}

.map__address {
   text-align: left;
   margin-bottom: 3rem;
}

.map__address--single .text-large:first-child {
   margin-bottom: 2rem;
}

.map__address--single .text-large:nth-child(2) {
   font-family: var(--ff-ter);
   font-size: 1.1rem;
   font-weight: 400;
   color: black;
}

.map__address--single .link {
   display: block;
   font-size: 1rem;
   font-family: var(--ff-ter);
   font-weight: 400;
   color: black;
}

.map__addresses .btn {
   margin-top: 1rem;
   left: 0;
}

.map__location {
   z-index: 10;
   cursor: pointer;
   position: absolute;
   display: inline-block;
   top: 40%;
   margin: 0 auto;
}

.map__location .sub-heading {
   margin-bottom: 0.5rem;
}

.map__links .link--sm {
   display: block;
   text-align: left;
}

.map__img {
   display: block;
   height: 100%;
   width: 100%;
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   padding: 0 1rem;
   object-fit: cover;
}



/* Modal -----------------------------------*/
.modal-search,
.modal-enquiries,
.modal-product {
   display: none;
   position: fixed;
   z-index: 100;
   left: 0;
   top: 0;
   width: 100%;
   height: 100%;
   animation-name: fadeIn;
   animation-duration: 0.5s
}

.modal-search__inner,
.modal-enquiries__inner,
.modal-product__inner {
   position: absolute;
   top: 0;
   bottom: 0;
   left: 0;
   right: 0;
   padding: 1rem;
   display: flex;
   align-items: center;
   justify-content: center;
   animation-name: slideInBottom;
   animation-duration: 0.7s;
}

.modal-search__close,
.modal-enquiries__close,
.modal-product__close {
   position: absolute;
   top: 1rem;
   right: 1rem;
   width: 2rem;
   height: 2rem;
   display: flex;
   align-items: center;
   justify-content: center;
   cursor: pointer;
   z-index: 50;
}

/* Modal - Search */
.modal-search {
   background: rgba(240, 240, 240, .4);
}

.modal-search .heading {
   font-family: var(--ff-pri);
   font-size: 1.3rem;
   font-weight: 200;
   color: var(--clr-gold);
   margin-bottom: 0;
}

.modal-search__box {
   position: relative;
   width: 100%;
   max-width: 36rem;
   padding: 1.5rem;
   margin: auto;
   border: 1.5px solid var(--clr-gold);
   background: var(--clr-blue-gradient2);
}

.modal-search__box > * {
   margin-bottom: 1rem;
}

.modal-search__box .form__searchbox {
   margin-bottom: 1rem;
}

/* Modal - Product */
.modal-product {
   background-color: var(--sh-offwhite);
}

.modal-product__inner {
   border: .25rem solid var(--clr-gold);
   display: flex;
}

/* Modal - Enquiries */
.modal-enquiries {
   background-color: none;
}

.modal-enquiries__close {
   top: .5rem;
   right: .5rem;
}

.modal-enquiries__box {
   position: relative;
   font-size: .95rem;
   font-family: var(--ff-ter);
   font-weight: 100;
   letter-spacing: .08em;
   line-height: 2.25rem;
   text-transform: uppercase;
   text-align: center;
   color: var(--sh-darkgrey);
   padding: 4rem 1rem;
   border: 1px solid var(--clr-gold);
   background: white;
   box-shadow: 0px 1px 6px var(--sh-offwhite);
}

.modal-enquiries__box span,
.modal-enquiries__box a {
   color: var(--clr-darkgold);
}



/* Slider ----------------------------------*/
.mySlides {
   display: none;
   animation-name: fadeIn;
   animation-duration: 2s;
}

/* Slider - Home Hero */
.slider-hero {
   position: relative;
   width: 100%;
   height: 100%;
   align-items: stretch;
}

.slide-hero {
   position: relative;
   width: 100%;
   height: 100%;
}

.slide-hero__inner {
   text-transform: uppercase;
   padding: 2rem;
   width: 100%;
   height: 100%;
   display: flex;
   flex-direction: column;
   justify-content: center;
   align-items: center;
}

.slide-hero__title {
   font-family: var(--ff-ter);
   font-size: 2.5rem;
   font-weight: 100;
   line-height: 3.5rem;
   letter-spacing: .075em;
   color: inherit;
   margin-bottom: 1rem;
}

.slide-hero__text {
   font-size: 1.1rem;
   font-family: var(--ff-ter);
   color: inherit;
   letter-spacing: .075rem;
   line-height: 1.75rem;
   margin-bottom: 2.5rem;
}

.slide-hero__img {
   position: absolute;
   top: 0;
   left: 0;
   bottom: 0;
   right: 0;
   width: 100%;
   height: 100%;
   object-fit: cover;
   z-index: -1;
}

/* Slider - Home Hero - Individual  */
.slide-hero--1 {
   color: black;
   text-shadow: 3px 2px 8px rgba(250, 250, 250, 0.17);
}

.slide-hero--2 {
   color: white;
   text-shadow: 3px 2px 8px rgba(450, 450, 450, 0.17);
}

.slide-hero--3 {
   color: black;
}

.slide-hero--4 {
   color: black;
}

.slide-hero--5 {
   color: black;
}

/* Slider - Home Intro */
.slider-intro {
   position: relative;
   margin: auto;
}

.slider-intro__heading {
   margin-bottom: 5rem;
}

.slider-intro__text {
   max-width: 69ch;
   margin-bottom: 2rem;
   padding: 0 2rem;
}

.slider-intro__arrow--prev,
.slider-intro__arrow--next {
   position: absolute;
   top: 3.25rem;
}

.slider-intro__arrow--prev {
   left: 37.5vw;
}

.slider-intro__arrow--next {
   right: 37.5vw;
}

/* Slider - Home Collection */
.slider-collection {
   padding: 0;
   margin: auto;
}

.slider-collection__slide {
   line-height: 0;
   transition: transform .3s ease;
   opacity: .5;
   transform: scale(.7);
   position: relative;
}

#sliderSlickCollection .slick-current {
   transform: scale(1);
   opacity: 1;
}

.slider-collection__img {
   width: 100%;
   height: 100%;
}

.slider-collection__mask {
   display: none;
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   background: linear-gradient(90deg, rgba(255, 255, 255, 0.9) 20%, rgba(255, 254, 254, 0) 50%, rgba(255, 255, 255, 0.9) 80%);
   z-index: 5;
   pointer-events: none;
}

.slider-collection__overlay {
   position: absolute;
   z-index: 100;
   top: 0;
   right: 10%;
   bottom: 0;
   left: 10%;
}

.slider-collection__prev,
.slider-collection__next {
   position: absolute;
   top: calc(50% - 2rem);
   width: 4rem;
   height: 4rem;
   display: flex;
   justify-content: center;
   align-items: center;
   z-index: 10;
}

.slider-collection__prev {
   left: .75rem;
}

.slider-collection__next {
   right: .75rem;
}

@media screen and (min-width: 1200px) {

   .slider-collection__mask {
      display: block;
      background: linear-gradient(to right, rgba(255, 255, 255, 0.8477591720281863) 0%, rgba(255, 254, 254, 0) 50%, rgba(255, 255, 255, 0.8309524493391106) 100%);

   }
}

/* Slider - Gallery */
.slider-gallery {
   position: relative;
   width: 100%;
   height: 100%;
}

.slider-gallery__slide {
    transform: scale(1.2);
}

.slider-gallery__btn {
   display: none;
   z-index: 4;
   position: absolute;
   bottom: -1.1rem;
   padding: 0;
   left: calc(50% - 1rem);
}

.slider-gallery__prev,
.slider-gallery__next {
   padding: .25rem;
}

.slider-gallery__arrows {
   z-index: 2;
   position: absolute;
   left: 0;
   right: 0;
   bottom: 37%;
   height: 5rem;
   padding: 0 2rem;
   max-width: calc(28rem + 5vw);
   margin: auto;
   display: flex;
   justify-content: space-between;
}

.slider-gallery__btn--close {
   display: none;
}

/* Slider - Products Page  */
.slider-grid-products {
   position: relative;
   width: 100%;
   z-index: 0;
}

.slider-grid-products__prev,
.slider-grid-products__next {
   opacity: 0;
   position: absolute;
   top: 35.5%;
   z-index: 5;
   background: white;
}

.slider-grid-products__prev .icon,
.slider-grid-products__next .icon {
   width: 20px;
   stroke-width: 2px;

}


.slider-grid-products__prev {
   left: 1.25rem;
}

.slider-grid-products__next {
   right: 1.25rem;
}

/* Slider - Heritage */
.slider-heritage {
   position: relative;
   padding: 0 1rem;
   max-width: 32rem;
   margin: auto;
}

.slider-heritage__img {
   width: 100%;
   margin: 0 auto 2rem;
}

.slider-heritage__arrows {
   position: absolute;
   bottom: -3rem;
   left: 0;
   right: 0;
   width: 100%;
   max-width: 44rem;
   height: 2rem;
   padding: 0 1rem;
   margin: auto;
   display: flex;
   justify-content: center;
}

.slider-heritage__arrows .btn-round {
   margin: 0 1rem;
}

.slider-heritage__arrows--top {
   top: 4.75rem;
   background: red;
}

.slider-heritage__arrows--bottom {
   bottom: -1px;
   justify-content: space-between;
}

/* Slider - Product Page - Finishes */
.slider-finishes {
   position: relative;
   margin: auto;
   margin-bottom: 1rem;
   width: 100%;
}

.slider-finishes__heading {
   text-transform: uppercase;
   font-size: .75rem;
   font-weight: 800;
   letter-spacing: .1em;
   margin: 0;
}

.slider-finishes__caption {
   margin-top: .25rem;
}

.slider-finishes__content {
   padding: 0rem;
   margin: 1rem auto;
   max-width: 23rem;
   display: grid;
}

.slider-finishes__prev,
.slider-finishes__next {
   position: absolute;
   top: 2px;
   font-weight: lighter;
   font-size: 16px;
   color: var(--sh-lightgrey);
   cursor: pointer;
}

.slider-finishes__prev {
   left: 0px;
}

.slider-finishes__next {
   right: 0px;
}

.slider-finishes__name {
   font-family: var(--ff-pri);
   opacity: .5;
   font-size: .6rem;
   font-weight: 800;
   text-transform: uppercase;
   letter-spacing: .1em;
   line-height: 1rem;
}

.slider-finishes__slide .link-sm {
   display: block;
   font-size: .75rem;
   font-weight: 400;
   letter-spacing: .1em;
   text-transform: uppercase;
   color: var(--clr-darkgold);
   margin: 0;
}

/* Glass - Rod */
/* 3col */
.slider-finishes--glass-lens,
.slider-finishes--glass-rod {
   grid-template-columns: repeat(3, 1fr);
}

/* 2col */
.slider-finishes--glass-crystal,
.slider-finishes--critchlow,
.slider-finishes--fromental,
.slider-finishes--marble,
.slider-finishes--wood,
.slider-finishes--thaelia {
   grid-template-columns: repeat(2, 1fr);
}

/* 4col */
.slider-finishes--glass-cut,
.slider-finishes--glass-ring,
.slider-finishes--metal,
.slider-finishes--flex,
.slider-finishes--leather {
   grid-template-columns: repeat(4, 1fr);
}

.slider-finishes--glass-rod .slider-finishes__img {
   padding: .75rem .75rem 0;
   min-width: 3rem;
}

.slider-finishes--glass-ring .slider-finishes__img {
   padding: 0 .25rem 0;
}

.slider-finishes--glass-lens .slider-finishes__img {
   padding: .5rem .25rem .25rem;
}

.slider-finishes--glass-cut .slider-finishes__img,
.slider-finishes--metal .slider-finishes__img,
.slider-finishes--flex .slider-finishes__img,
.slider-finishes--leather .slider-finishes__img {
   padding: .5rem .5rem 0;
}

.slider-finishes--glass-crystal .slider-finishes__img,
.slider-finishes--critchlow .slider-finishes__img,
.slider-finishes--fromental .slider-finishes__img,
.slider-finishes--marble .slider-finishes__img,
.slider-finishes--wood .slider-finishes__img,
.slider-finishes--thaelia .slider-finishes__img {
   padding: .5rem 1.25rem .25rem;
}



/* Media -----------------------------------*/
@media screen and (min-width: 375px) {
   .filter-tab__list {
      grid-column-gap: 1rem;
   }

   .filter-tablink {
      padding: 0 calc(.5rem + .5vw);
      letter-spacing: 0.1em;
   }
}

@media screen and (min-width: 480px) {
   .wrap--products {
      max-width: 1600px;
      background: orange;
   }

   .slider-collection {
      position: relative;
      margin: 2rem calc(1rem + 5vw) 0;
   }

   .slider-products {
      position: relative;
      padding: 0 2rem;
      margin: 0 calc(2rem + 5vw) 0;
      background: blue;
   }

   .slider-product__caption {
      border-top: 1px solid var(--clr-gold);
      padding-top: 1rem;
   }
}

@media screen and (min-width: 565px) {
   #accordion {
      padding: 0;
   }

   .form--enquiries {
      padding: 0 4rem;
   }

   .accordion--info .accordion__sub-link {
      padding: 3rem 4rem;
      font-size: 1rem;
      text-align: left;
      background: white;
   }

   .modal-enquiries__box {
      padding: 3rem 5.5rem;
   }

   .slider-collection__prev {
      left: calc(50% - 240px);
   }

   .slider-collection__next {
      right: calc(50% - 240px);
   }

   .slider-products__prev {
      left: 4rem;
   }

   .slider-products__next {
      right: 4rem;
   }

   .slider-intro__heading {
      margin-bottom: 2rem;
   }

   .slider-intro__arrow--prev {
      left: 3rem;
   }

   .slider-intro__arrow--next {
      right: 3rem;
   }

   .slider-intro__arrow--prev,
   .slider-intro__arrow--next {
      top: 0;
   }

   .slide-1 {
      width: 100%;
      position: relative;
      background: red;
   }
}

@media screen and (min-width: 600px) {
   .form {
      padding: 0 2rem;
   }

   .form--enquiries {
      padding: 0 4rem;
   }

   .form .text--intro {
      margin-bottom: 3rem;
      max-width: 60ch;
   }

   .form__inputs,
   .form__dropdowns {
      display: grid;
      grid-template-columns: 1fr 1fr;
      grid-row-gap: 2rem;
      grid-column-gap: 2rem;
   }
}

@media screen and (min-width: 650px) {
   .slider-collection {
      margin: 0 .5rem;
   }

   .slider-finishes--glass-rod {
      grid-template-columns: repeat(4, 1fr);
   }

   .slider-finishes--glass-rod .slider-finishes__img {
      padding: .75rem .25rem 0;
   }

}

@media screen and (min-width: 700px) {
    .slider-gallery__next {
       right: -6rem;
    }

    .slider-gallery__prev {
       left: -6rem;
    }

   .slider-heritage__arrows {
      bottom: 50%;
      justify-content: space-between;
   }

   .slider-heritage__arrows .btn-round {
      margin: 0rem;
   }

   .slider-collection {

      margin: 0 .25rem;
   }

   .slider-products {
      position: relative;
      margin: 0 calc(.5rem + 5vw) 0;
   }

   .slider-products__prev {
      left: 2rem;
   }

   .slider-products__next {
      right: 2rem;
   }

   .slider__arrow--prev {
      left: 7rem;
   }

   .slider__arrow--next {
      right: 7rem;
   }

   /* Tabs */
   .tab {
      border-top: .5px solid var(--clr-gold);
   }

   .tabs--screen-only {
      display: block;
   }

   .tabs .tab__header {
      display: none;
   }

   .tab__content.tab__close {
      display: none;
   }

   .tabs--screen-only {
      padding: 0 2rem;
   }

   /* Lists */
   .list-download {
      margin: 2rem 0 5rem;
   }
}

@media screen and (min-width: 767px) {
   .btn-sm {
      padding: .4rem 1.4rem .45rem 1.5rem;
   }

   .btn-round-sm {
      width: 1.3rem;
      height: 1.3rem;
   }

   .btn--hero {
      padding: .85rem 1.5rem;
   }

   .btn--enquiries {
      font-size: .95rem;
      padding: .7em 1.3em .5em 1.5em;
   }

   .btn--expand {
      width: 2.1rem;
      height: 2.1rem;
      padding: .2rem;
      background: #f7f5eb;
   }

   .btn--expand:hover {
      background: #f7f5e9;
   }

   .card--span {
      grid-column: span 2;
      background: red;
   }

   .cards--multiple .card-downloads__content {
      margin-bottom: 12rem;
   }

   .cards--clients {
      grid-row-gap: 4rem;
      background: red;
   }

   .card-designer {
      padding: 0 1rem;
      grid-row-gap: 6rem;
      display: flex;
      flex-direction: row;
   }

   .card-designer--reverse {
      flex-direction: row-reverse;
   }

   .card-designer--reverse .card-designer__info {
      margin: 0;
      padding: 0;
      margin-right: 3rem;
   }

   .card-designer__img {
      margin-top: 3.75rem;
      width: 11rem;
      height: 11rem;
   }

   .card-designer__info {
      padding: 0;
      margin-left: 3rem;
   }

   .card-designer__heading {
      text-align: left;
   }

   .card-designer__text {
      text-align: left;
      padding: 0;
   }

   .card-designer__link {
      display: block;
      text-align: left;
   }

   .tab__content {
      padding: 5rem 3rem 3rem;
   }

   .tab__content .text--alert {
      margin-bottom: 3rem;
   }

   .tab--screen__tab {
      padding: .5rem 1.8rem;
   }

   .list-download__heading {
      margin-top: 4rem;
   }

   .accordion-slider-prev,
   .accordion-slider-next {
      margin: 0
   }

   .slider__text {
      padding: 1rem;
   }

   .slider-intro__arrow--prev {
      left: 11rem;
   }

   .slider-intro__arrow--next {
      right: 11rem;
   }

   .slider--link {
      margin: 2rem 0 5rem;
   }

   .form--footer__inner {
      padding: 0 2rem;
      display: flex;
      flex-direction: row;
      justify-content: center;
      align-items: baseline;
   }

   .form--footer__inner .btn {
      margin: 0;
   }

   .form--footer__inner .form__input {
      margin-right: 2rem;
   }
}

@media screen and (min-width: 900px) {
   .slide-hero__title {
      font-size: 3.75rem;
      line-height: 3.5rem;
      margin-bottom: .5rem;
   }

   .slide-hero__text {
      font-size: 1.15rem;
      line-height: 2rem;
      letter-spacing: .075em;
      margin-bottom: 3.5rem;
   }

   .slider-intro__text {
      padding: 0rem;
   }

   .slider-intro__arrow--prev,
   .slider-intro__arrow--next {
      top: 4.4rem;
   }

   .slider-intro__text {
      padding: 0rem;
   }

   .slider-intro__arrow--prev {
      left: 4rem;
   }

   .slider-intro__arrow--next {
      right: 4rem;
   }

   .accordion__heading {
      font-size: .9rem;
   }

   .map__sidenav {
      position: absolute;
      left: 0;
      top: 0;
      width: 26rem;
      height: 100%;
      display: flex;
      justify-content: center;
      align-items: center;
   }

   .map__sidenav__inner {
      height: 94%;
      width: 23rem;
      padding: 1.5rem;
      margin-left: 4vw;
      background-color: rgba(255, 255, 255, .7);
      display: flex;
      flex-direction: column;
   }

   .map__sidenav__heading {
      display: block;
   }

   .map__addresses {
      display: block;
      height: 100%;
   }

   .form__searchbox--map {
      padding: .5rem 0rem 0;
      margin-bottom: 1rem;
   }

   .filter-tablink {
      font-size: .8rem;
   }

   .filter-tablink:hover {
      color: black;
   }
}

@media screen and (min-width: 1000px) {
   .slider-product {
      margin: 0 1rem;
   }
}

@media screen and (min-width: 1100px) {

    .icon {
       stroke-width: 1.2px;
    }

    .icon--picture,
    .icon--tearsheet {
        stroke-width: 1.1px;

    }

    .icon--btn {
        stroke-width: 1.6px;

    }

    .icon-close {
       stroke-width: 1.5px;
    }

   .btn-round-md {
      width: 1.7rem;
      height: 1.7rem;
      /* padding: .3rem; */
   }

   .btn-round-lg {
      width: 1.9rem;
      height: 1.9rem;
      padding: .25rem;
   }

   .btn-set--favourites {
      margin: 1rem auto 0;
   }

   .form__input {
      font-size: 1rem;
   }

   .cards-designer {
      grid-row-gap: 6rem;
   }

   .card-brochure__overlay {
      opacity: 0;
   }

   .card-brochure:hover .card-brochure__overlay {
      opacity: 1;
   }

   .list-download__items {
      text-align: left;
   }

   .filter-tab__footer {
      display: none;
   }

   .filter-tablink--desktop {
      color: var(--sh-lightgrey);
      display: inline-block;
   }

   .filter-tab {
      padding: 0;
   }

   .filter-tablink--close {
      position: absolute;
      right: .5rem;
      top: -1px;
      margin: 0;
      padding: 0;
   }

   .filter-tablink--close .icon-close {
      display: block;
      width: 1.1rem;
      margin: 0;
      padding: 0;
   }

   .accordion__sub-link .text-info {
      font-size: .75rem;
   }

   .slider-grid-products__prev,
   .slider-grid-products__next {
      z-index: 7;
   }
}

@media screen and (min-width: 1200px) {
   .slider-finishes {
      padding: 0 2.5rem;
   }

   .slider-finishes__heading,
   .slider-finishes__name {
      text-transform: uppercase;
      font-size: .7rem;
      font-weight: 400;
      letter-spacing: .1em;
      line-height: 1.5rem;
      animation-name: fadeIn;
      animation-duration: 1s;
   }

   .slider-finishes__content {
      max-width: 18rem;
      padding: 0;
      margin: .5rem auto .25rem;
   }

   .slider-finishes__slide {
      height: 9rem;
   }

   .slider-finishes__caption {
      display: none;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      background: white;
      margin-top: 0;
      opacity: 0;
      animation-name: fadeIn;
      animation-duration: 1s;
   }

   .slider__finish {
      cursor: pointer;
   }

   .slider-finishes__slide .link-sm {
      font-size: .7rem;
   }

   .slider-finishes__slide:hover .slider-finishes__heading {
      opacity: 0;
   }

   .slider__finish:hover .slider-finishes__caption {
      display: block;
      opacity: 1;
   }

   .slider-finishes--metal {
      grid-template-columns: repeat(4, 1fr);
   }

   .slider-finishes--glass-rod {
      grid-template-columns: repeat(5, 1fr);
   }

   .slider-finishes--glass-cut {
      grid-template-columns: repeat(6, 1fr);
   }

   .slider-finishes--metal .slider-finishes__img {
      padding: .25rem .75rem;
   }

   .slider-finishes--glass-rod .slider-finishes__img {
      padding: .35rem .5rem;
   }

   .slider-finishes--glass-cut .slider-finishes__img {
      padding: .5rem .25rem;
   }

   .slider-finishes--glass-ring .slider-finishes__img {
      padding: .75rem .25rem .25rem;
   }

   .slider-finishes--wood .slider-finishes__img {
      padding: .5rem 1.5rem .25rem;
   }

   .slider-gallery__btn {
      display: flex;
      right: -4rem;
      left: auto;
      bottom: 9rem;
   }

   .slider-gallery__arrows {
      left: auto;
      bottom: 1rem;
      height: 5rem;
      width: 2rem;
      margin-right: -4rem;
      padding: 0;
      display: flex;
      flex-direction: column-reverse;
      justify-content: space-between;
   }

   .slider-gallery__next {
      right: 0;
   }

   .slider-gallery__prev {
      left: 0;
   }

   .slider-gallery__btn--close {
      display: none;
   }
}

@media screen and (min-width: 1300px) {
   .slider-product {
      margin: 0 3rem;
   }

   .slider-gallery__arrows {
      right: 0rem;
      background
   }

   .slider-gallery__btn {
      right: -4rem;
   }

   .slider-finishes__slide {
      height: 10rem;
   }

   .btn-share {
      display: flex;
      align-items: center;
      justify-content: center;
      margin: 1.5rem auto 2rem;
      height: 2rem;
      width: 13rem;
   }

   .btn-share:hover .btn-share__title,
   .btn-share.hover .btn-share__title {
      opacity: 0;
   }

   .btn-share:hover .btn-share__btn,
   .btn-share.hover .btn-share__btn {
      border-radius: 50%;
      margin: 0;
      width: 3rem;
      opacity: 1;
      line-height: 32px;
   }

   .btn-share__title {
      width: 7rem;
      line-height: 2rem;
      display: inline-block;
      position: absolute;
      opacity: 1;
      transition: opacity 0.3s ease-in-out;
      pointer-events: none;
      background-color: var(--sh-offwhite);
      border-radius: 24px;
   }

   .btn-share--favourites {
      margin-top: 2rem;
   }

   .btn-share__btns {
      height: 2rem;
      margin: 0 auto;
      padding: 0;
   }

   .btn-share__btn {
      width: 2rem;
      height: 2rem;
      margin: 0;
      display: inline-block;
      opacity: 0;
      transition: all 0.4s ease-in-out;
   }
}

@media screen and (min-width: 1600px) {
    .slider-gallery__btn {
       bottom: 12rem;
    }

    .slider-gallery__arrows {
       bottom: 5rem;
    }
}
