/*!
Theme Name: Havards eCommerce
Theme URI: http://underscores.me/
Author: Modern Print & Design
Author URI: https://www.modernprint.co.uk
Description: WooCommerce 2026/27 Theme
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
Text Domain: siop-havards
*/

.svg-clip {
    width:0;
    height:0;
    position: absolute;
}

html {
    overflow-x:hidden;
}

header#masthead {
    filter:drop-shadow(0px 4px 0px rgba(0,0,0,.05));
    position: relative;
    z-index: 10;
}

header#masthead > div{
	background:var(--hs-brown);
	color: #FFF;
}

#masthead > div > div{
    width: 100%;
    justify-content: space-between;
    align-items: center;
    padding-top:.5rem;
    padding-bottom:.5rem;
}

div#top-bar p br {
    display:none;
}

.head-con-item {
    display:flex;
    align-items: center;
    font-size:.925rem;
}

.head-con-item p {
    margin:0;
}

.head-con-item a {
    display:inline-flex;
    color:#FFF;
    border-bottom:1px dotted;
    line-height:1;
}

.oh-wrap .oh-dayset {
    display:none;
    
}

.oh-wrap .oh-dayset.active {
    display:flex;
    column-gap:.5rem
}

span.top-con-label {
    font-weight: 600;
    color: var(--hs-lt-orange);
    margin-right:.75rem;
}

.lang-switcher span {
    border-bottom:none;
}

.lang-switcher img {
    width:36px;
    height:36px;
}

#head-search,
#head-search form{
    display:flex;
    flex-direction:row;
    height: 3rem;
}

#head-search {
    position:relative;
    flex: 0 0 32rem;
}

#head-search form, #head-search form label{
    width:100%;
}

#head-search form input[type="search"] {
    background:var(--hs-lt-brown);
    border-radius:1.5rem;
    padding-top:.75rem;
    padding-left:1rem;
    padding-right:2.5rem;
    margin:0;
    line-height:3rem;
    height:3rem;
    color:#FFF;
    outline-offset: 0 !important;
    border: none;
    width:100%;
    font-size:1.125rem;
}

#head-search form input[type="submit"]{
    position:absolute;
    right:0;
    top:0;
    width:3rem;
    height:3rem;
    text-indent:-999em;
    background:url(svg/icons/search.svg) transparent no-repeat center / 1.5rem 1.5rem;
    border:none;
}

div#head-controls {
    display: flex;
    column-gap: 1rem;
    align-items: stretch;
    align-content:center;
    justify-content:center;
}

div#head-controls > div > a,
div#head-controls > div > ul {
    display:inline-flex;
    align-items:center;
    justify-items:center;
    padding:.5rem 1rem;
    background:var(--hs-lt-orange);
    border-radius:1.5rem;
    padding-top:.75rem;
}

div#head-controls > div > ul {
    height:100%;
}

div#head-controls a.cart-contents {
    display: flex;
    column-gap:.75rem;
}

div#head-controls a.cart-contents span {
    display:inline-flex;
    align-items:center;
    line-height:1;
}

div#head-controls > div > a,
div#head-controls > div > ul > li > a {
    font-weight:600;
    color:#FFF;
    font-size:1.25rem;
    display: inline-flex;
    align-items: center;
}

div#head-cart ul {
    margin:0;
    list-style: none;
}



div#head-controls > div > a.user,
div#head-controls > div > a.visitor {
    background:var(--hs-lt-green);
}

div#head-controls > div > a.user > span:after,
div#head-controls > div > a.visitor > span:after,
div#head-controls a.cart-contents > span.count:after{
    content:'';
    width:1.5rem;
    height:1.5rem;
    display:inline-block;
    position:relative;
    margin-left:.5rem;
    bottom:-.25rem;
    background:url(svg/icons/login.svg) transparent no-repeat center / contain;
}

div#head-controls a.cart-contents > span.count:after{
    background:url(svg/icons/cart.svg) transparent no-repeat center / contain;
    bottom:auto;
    top:-.125rem;
}

div#main-menu {
    width:100%;
    flex:1 1 100%;
}

div#main-menu ul {
    display: flex;
    list-style:none;
    width:100%;
    margin: 0;
    justify-content: space-between;
}

header#masthead div#main-navigation {
    background: var(--hs-timeless);
    padding-top: 2rem;
    padding-bottom: 0;
    position: relative;
    margin-bottom: .625rem;
}

div#main-navigation:before,
div#main-navigation:after {
    content:'';
    position:absolute;
    top:-.125rem;
    left: -.125rem;
    width: calc(100% + .25rem);
    height:1.125rem;
    background:var(--hs-brown);
    -webkit-clip-path: url(#rough-bounds);
    clip-path: url(#rough-bounds);
}

div#main-navigation:after {
    top:calc(100% - .125rem);
    background: var(--hs-timeless);
}

ul#main-menu{
    width: 100%;
    flex: 1 1 100%;
    display: flex;
    justify-content: space-between;
}

ul#main-menu li > a {
    color:var(--hs-brown);
    font-size:1.125rem;
    text-transform:uppercase;
}

#main-navigation .grid-container.grid-x {
    padding:0
}

main#content {
    padding: 0;
}

footer#colophon {
    background: url(svg/backgrounds/footer-bg.svg) var(--hs-brown) no-repeat center top / cover;
    color: #FFF;
    padding: 0.75rem 0 0;
    position: relative;
    box-sizing: border-box;
    margin-top: 3rem;
}

footer#colophon > div {
    row-gap: 2.5rem;
    column-gap:1rem;
}

div#foot-sh-info {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding: .5rem 1rem .5rem;
    border:2px solid var(--hs-lt-orange);
    border-radius:1rem;
}

#foot-nav ul,
div#foot-sh-info ul {
    margin:0;
    display:flex;
    flex-flow:row nowrap;
    padding: .5rem 1rem .25rem;
    column-gap: 2.5rem;
    line-height:1;
    list-style: none;
    align-items: center;
}

#foot-nav ul li,
div#foot-sh-info ul li {
    position:relative;
}

#foot-nav ul li a,
div#foot-sh-info ul li a {
    margin:0;
    padding:0;
    line-height:1;
    color:#FFF;
    text-transform: uppercase;
    position:relative;
    border-bottom: 1px dotted var(--hs-lt-orange);
    display: inline-flex;
    background: none;
}

#foot-nav ul li+li:before,
div#foot-sh-info ul li+li:before {
    content:'|';
    position:absolute;
    top:-0;
    left:-2.5rem;
    width:2.5rem;
    height:1rem;
    text-align:center;
    color:var(--hs-lt-orange);
}

div#foot-sh-info h5 {
    margin:0;
    font-size: 1.125rem;
    font-weight:600;
    letter-spacing:0;
    line-height: 1;
    color: var(--hs-lt-orange);
}

.foot-contact {
    display:flex;
    flex-direction:column;
    row-gap:1rem;
}

.contact-foot-row {
    display: flex;
    align-items: center;
}

.contact-foot-row > span {
    font-weight:600;
}

.contact-foot-row p {
    margin:0;
    line-height:1.25;
}

.contact-foot-row p br:nth-of-type(2){
    display:none;
}

.contact-foot-row:not([data-type="scl"]) a {
    color:#FFF;
    margin:0;
    padding:0;
    display: inline-flex;
    border-bottom:1px dotted;
    line-height: 1;
}

.contact-foot-row .foot-con-label {
    color:var(--hs-lt-orange);
    flex:0 0 8.5rem;
    align-self: flex-start;
}

.contact-foot-row .oh-wrap .oh-dayset {
    display:flex;
    column-gap:0;
}

.contact-foot-row .oh-wrap .oh-dayset.active {
    font-weight:600
}

.contact-foot-row .oh-wrap .oh-dayset .dayset:after {
    content:'|';
    position:relative;
    display:inline-flex;
    width:1rem;
    justify-content:center;
    text-align:center;
    font-weight:700;
    color:var(--hs-lt-orange);
}

.contact-foot-row[data-type="scl"] .social {
    display:flex;
    align-items:center;
    justify-content:flex-start;
    column-gap:.5rem;
}

div#copyright-credits {
    width: 100%;
    justify-content: center;
    display: flex;
    font-size: .825rem;
    column-gap: 1rem;
}

div#copyright-credits a{
    color:#FFF;
    border-bottom:1px dotted;
    display:inline-flex;
    align-content:center;
    align-items:center;
    line-height:1;
}

.foot-links.cell.small-12.medium-6.large-6 {
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-end;
    align-content: space-between;
}

.slide-overlay {
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    padding-top: 2.5rem;
    padding-bottom: 5rem;
    background: linear-gradient(90deg, #FFF 10%, transparent);
    box-sizing: border-box;
    pointer-events: none;
}

.slide-overlay > div {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    height: 100%;
}

.slide-text-inner {
    display:flex;
    flex-flow:row wrap;
    row-gap: 1.25rem;
}

.slide-text-inner :is(h1, h2, h3, h4, h5, h6) {
    line-height: 1;
    margin: 0;
    width: 100%;
}

.slide-text-inner :is(h1, h2, h3, h4, h5, h6)+:is(h1, h2, h3, h4, h5, h6) {
    margin-top: calc(-2.5rem / var(--font-size));
}

.slide-text-inner h1 {
    font-size:4.5rem;
}

.slide-text-inner h2 {
    font-size:3.25rem;
}

.slide-text-inner h3 {
    font-size: 2.325rem;
}

.slide-text-inner h4 {
    font-size:2rem;
}

.slide-text-inner h5 {
    font-size:1.5rem;
}

.slide-text-inner h6 {
    font-size:1rem;
}

.h-marque {
    width: 15rem;
    height: 15rem;
    display:block;
    background: url(svg/havards-mark.svg) no-repeat center / 100%;
    margin-right: 2.5rem;
    flex: 0 0 15rem;
}

.slide-text-wrap {
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    pointer-events: all;
}

a.link-button {
    border-radius:1rem;
    display:inline-flex;
    background:var(--hs-md-green);
    padding: 1rem 1rem .625rem 1rem;
    color:#FFF;
}

a.link-button span {
    display: block;
    line-height: 1;
}

a.link-button.cat {
    background: url(svg/icons/shop.svg) var(--hs-md-green) no-repeat calc(100% - 1rem) center / 1.75rem;
    color: #FFF;
    padding: 1rem 3.5rem .625rem 1rem;
}

.slide-para-wrap p {
    margin: 0;
    font-size: 1.5rem;
    line-height: 1;
}

.slide-text-inner {
    pointer-events: all;
}

.swiper-controls {
    position: absolute;
    bottom: 0;
    left: 0;
    width:100%;
    padding-bottom: .5rem;
}

.swiper-controls .grid-container.grid-x {
    display: flex;
    flex-flow: row nowrap;
    width:100%;
    margin:0 auto;
    align-items: center;
}

.swiper-controls .grid-container.grid-x > div {
    flex:0 0 auto;
    position:static;
    pointer-events:all;
}

.swiper-controls div.swiper-button-prev,
.swiper-controls div.swiper-button-next {
    width:2.75rem;
    height:2.75rem;
    background:url(svg/icons/slide-arr.svg);
    order:1;
    margin: auto;
}

.swiper-controls div.swiper-button-prev:after,
.swiper-controls div.swiper-button-next:after{
    display:none;
}

.swiper-controls div.swiper-button-next {
    order:3;
    transform:scaleX(-1);
}

.swiper-controls .swiper-pagination {
    order:2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    column-gap: .25rem;
}

.swiper-controls .swiper-pagination-bullet {
    background:transparent;
    border: .25rem solid #928E89;
    width: 2rem;
    height: 2rem;
    box-sizing: border-box;
    opacity:1;
}

.swiper-controls .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background:#928E89;
}

.slide-img-grp, .slide-img-grp > div,
.slide-img-grp picture, .slide-img-grp picture img {
    width: 100%;
    height: 100%;
}

.slide-img-grp picture, .slide-img-grp picture img {
    object-fit:contain;
    object-position:center;
}

div#button-table {
    display: flex;
    flex-flow: row wrap;
    row-gap: 1.5rem;
    column-gap: 1.5rem;
    justify-content: space-around;
    align-content: center;
}

.home-cat-button {
    flex: 0 0 15rem;
}

.home-cat-button a {
    display:flex;
    flex-flow:column;
    background: var(--hs-md-green);
    border-radius: 0 0 1.5rem 1.5rem;
    overflow: hidden;
}

.home-cat-button a span {
    color:#FFF;
    padding:1rem 1rem .625rem;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:1.25rem;
}

.home-cat-button a img {
    width:100%;
    height:auto;
    object-position:center;
    object-fit:cover;
}

#introcat-button-wrap > div > h3 {
    display: block;
    width: auto;
    font-size: 2.5rem;
    font-weight: 400;
}

section#home-introcats {
    padding: 2.5rem 0;
}

div#introcat-p {
    font-size: 1.375rem;
    text-align: center;
}

footer#colophon:before {
    content: '';
    width: 101%;
    height: 2.625rem;
    display: block;
    position: absolute;
    bottom: calc(100% - 1px);
    background: var(--hs-brown);
    clip-path: url(#rough-edge-up);
}

#main-navigation > div > div {
    width: 100%;
    flex: 1 1 100%;
}

#introcat-button-wrap {
    margin-top:1rem;
}

#introcat-button-wrap > div:nth-child(1) {
    display:flex;
    justify-content:center;
}

.underline {
    padding-bottom: .625rem;
    margin-bottom: 1rem;
    box-sizing:border-box;
    position: relative;
}

.underline:after {
    content:'';
    width:75%;
    height:2px;
    background:#000;
    position:absolute;
    bottom:0;
    left:12.5%;
}

.underline.green:after {
    background:var(--hs-md-green);
}

div#introcat-button-wrap {
    row-gap: 1rem;
}

.products.swiper li.product{
    display: flex;
    flex-flow: column;
    width: 100%;
}

.products.swiper li.product > a{
    display: flex;
    flex-flow: column;
    padding:1.5rem;
}

.products.swiper li.product > a > img {
    margin:0 auto;
    width:auto;
    height:auto;
    max-width:100%;
    height:200px;
}

.products.swiper li.product h2 {
    font-size:1.125rem;
    color:var(--hs-brown)
}

section.layered {
    position: relative;
    z-index: 10;
    overflow:hidden;
}

.layered .top-layer {
    position:relative;
    z-indez: 11;
}

.layered .bot-layer {
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;