/* Stylesheet for fluffyegg hatching kit starter theme */

/**
 * Correct `block` display not defined in IE 8/9.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block;
}

html, body {
  height: 100%;
  margin: 0;
}

/**
 * Correct `inline-block` display not defined in IE 8/9.
 */
audio, canvas, video {
  display: inline-block;
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
 * Address `[hidden]` styling not present in IE 8/9.
 * Hide the `template` element in IE, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none; }

  /* ==========================================================================
   Base
   ========================================================================== */

   html {
     font-family: sans-serif;
     /* 1 */
     -ms-text-size-adjust: 100%;
     /* 2 */
     -webkit-text-size-adjust: 100%;
     /* 2 */ }

   /**
    * Remove default margin.
    */
   body {
     width: 100%;
     font-family: 'Noto Serif JP';
     position: relative;
     min-height: 100%;
     margin: 1.5em 0 0;
     clear: both;
     color: #001748;
   }

   img {
     max-width: 100%;
   }

     /* ==========================================================================
        Links
        ========================================================================== */
     /**
      * Remove the gray background color from active links in IE 10.
      */
     a {
       background: transparent;
     }

     /**
      * Address `outline` inconsistency between Chrome and other browsers.
      */
     a:focus {
       outline: thin dotted;
     }

     /**
      * Improve readability when focused and also mouse hovered in all browsers.
      */
     a:active, a:hover {
       outline: 0;
     }

     h1 {
        color: #fff;
        font—size: 3.5rem !important;
        position: relative;
     }

     h1::after {
       border-bottom: #B3A07D solid 7px;
       padding-bottom: .5em;
       content: '';
       display: inline-block;
       width: 100%;
     }

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

  .wrap {
    width: 100%;
    max-width: 1015px;
    margin-left: auto;
    margin-right: auto;
  }

}

@media screen and (min-width: 768px) and (max-width: 1023px) {

  .wrap {
    width: 100%;
    max-width: 759px;
    margin-left: auto;
    margin-right: auto;
  }

}

@media screen and (min-width: 768px) {
  .desktop {
    display: inline-block !important;
  }
  .mobile {
    display: none !important;
  }
}

@media screen and (max-width: 767px) {

  .variations select {
    width: 100% !important;
    display: inline-block;
    box-sizing: border-box;
    margin-top: .5em;
  }

  .variations label {
    font-weight: bold;
    padding: .1em 0
  }

  .row, .vc_row {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 0 !important;
  }

  .description {
    margin-top: 1em;
  }

  .variations {
    margin-top: 0 !important;
  }

  .specifications .spec_name, .specifications .spec_detail {
    text-align: center !important;
  }

  .specifications .spec_name {
    padding: 1em 0 .5em;
  }

  .specifications .spec_detail {
    padding: 0 0 1em;
  }

  .mobile {
    display: inline-block !important;
    padding: 0 15px !important;
  }
  .desktop {
    display: none !important;
  }

  footer {
    margin-top: 2em;
  }

  footer .logo {
    max-width: 40px;
    height: auto;
  }

  .footer {
    font-size: .75em;
  }

  footer .leftlogo {
    width: 25% !important;
  }

  footer .rightcontent {
    width: 75% !important;
    text-align: right !important;
  }

  footer .bottomfooter {
    padding-top: 1.5em;
    padding-bottom: 1em;
    border-top: 1px solid rgba(0,0,0,0.1);
    width: 90%;
    margin: 1.5em auto 0
  }


  .wrap {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }

}

.main_body {
  width: 100%;
      position: relative;
}

.header {
  margin-bottom: 1.5em;
}

.footer {
  padding: 2em 0;
  background: #f2f2f2;
}

.footer a,
.header a {
  color:#021649;
}

.navigation {
  list-style: none;
}

nav ul {
  list-style: none;
  width: 100%;
  /* text-align: center; */
  padding-left: 0;
  margin: 1em 0;
}

  nav li {
    display: inline-block;
    padding: 0.6em 1em;
    position: relative;
    border-bottom: 2px solid transparent;
  }

  nav li:hover, .current-menu-item {
    border-bottom: 2px solid #B3A07C;
  }

  /* .current-menu-item::after, .current-page-parent::after {
    border-bottom: 2px solid #B3A07D;
    width: 100%;
    content: '';
    position: absolute;
    bottom: -10px;
    left: 0;
  } */

  .sub-menu li {
    padding: 0 !important;
    border-bottom: 0 !important;
  }

  .sub-menu .current-menu-item:hover {
    border-bottom: 0 !important;
  }


  nav li a:hover, nav li a:active {
    text-decoration: none !important;
  }

  .logo {
    width: 67.5px;
    height: auto;
  }

  a:link, a:visited {
    color: #021649;
    text-decoration: none;
  }

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

  .centre {
    text-align: center;
  }

  .left {
    text-align: left;
  }

  .right {
    text-align: right;
  }

  .equal {
    display: table;
    width: 100%;
  }

  .equal .cell {
    display: table-cell;
    vertical-align: middle;
  }

  .equal .left, .equal .right {
    width: 45%;
  }

  .equal .centre {
    width: 10%;
  }

  .fa {
    color: #B3A07D !important;
    font-size: 1.4em;
    margin: .4em .1em;
    display: inline-block;
  }

  .inner-header {
	 max-width: 1150px;
    position: relative;
  }

  .overlap {
    position: absolute;
    right: -80px;
    top: 30%
  }

  .overlap-left {
    position: absolute;
    left: -48px;
    top: 35%
  }

  .overlap img, .overlap-left i {
    max-height: 18px;
    padding: .2em;
    box-sizing: content-box;
    width: auto;
  }

  img {
    max-width: 100%;
    height: auto;
  }

  .navigation {
    list-style: none;
  }

  .menu-item {
    position: relative;
  }

  .sub-menu {
    display: none;
    z-index: 99999999;
    text-align: left;
    border-top: 15px solid transparent;
  }

  /* .menu-item-has-children::after {
    content: '\25BC';
    cursor: hand; cursor: pointer;
    font-size: .6em;
  } */

  .menu-item-has-children:hover .sub-menu {
    display: block;
    position: absolute;
    /* top: .8em; */
    left: -20px;
    /* border: 1px solid #eee; */
    /* background: #D9D9D9; */
    margin-left: 0;
    /* padding: .8em; */
    box-sizing: content-box;
    width: 170px;
    font-size: .8em;
  }

  .sub-menu li {
    width: 100%;
    display:block;
    margin: 0;
  }

  .sub-menu li:hover::after {
    display: none;
  }

  .sub-menu a:hover, .sub-menu a:active {
    text-decoration: underline !important;
    /* background: #fff; */
    color: #000;
  }

  .sub-menu li a {
    width: 100%;
    display:block;
    padding: 1em 1em 1em 2em;
    background: rgba(255,255,255,0.9);
    box-sizing: content-box;

    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
  }

  .sub-menu li:first-child a {
    border-top: 1px solid #ccc;
    padding-top: 1.5em;
  }
  .sub-menu li:last-child a {
    border-bottom: 1px solid #ccc;
    padding-bottom: 1.5em;
  }

  .product_header {
    background: #B3A07D;
    padding: 1.5em 0;
    text-align: center;
    color: #fff;
    font-size: 1.9em;
    font-weight: 300;
    letter-spacing: 0.07em;
    text-transform: uppercase;
  }

.product h1 {
  color: #001748;
  font-size: 2em;
  line-height: 1.5em;
  padding-bottom: 1em;
  padding-bottom: .5em;
}

.product .description {
  color: #001748;
}

.product .body {
  margin-top: 2em;
}

.product .variations {
  margin-top: 2em;
}

.product .price {
  font-size: 1.75em;
  padding-top: 1em;
  display: inline-block;
}

.product .vat {
  font-size: .5em;
}

.specifications {
  background: #F2F2F2;
  padding: 2.5em 1em;
  margin-top: 2.5em;
  color: #001748;
  text-align: center;
}

.specifications h2 {
  text-transform: uppercase;
  color: #001748;
  letter-spacing: 0.07em;
  font-size: 1.5em;
  padding: .5em 0;
}

.specifications h2::after {
  display: inline-block;
  content: '';
  height: 2px;
  background-color: #00003B;
  width: 100px;
  max-width: 10%;
  margin-left: 1em;
  margin-bottom: .3em;
}

.specifications h2::before {
  display: inline-block;
  content: '';
  height: 2px;
  background-color: #00003B;
  width: 100px;
  max-width: 10%;
  margin-right: 1em;
  margin-bottom: .3em
}

.spec_name, .spec_detail {
  text-align: left;
}

.spec_row {
  padding: .7em 0;
  border-bottom: 1px solid #B3A07D;
  /* box-sizing: content-box; */
}

.spec_row:last-of-type {
  border-bottom: 0;
}

.spec_name {
  font-weight: bold;
}

.spec_table {
  padding: 1.5em 0;
}

.enquire {
  background: #B3A07D;
  padding: .4em .75em;
  color: #fff;

}

@media screen and (max-width:767px) {
  .enquire_button {
    margin: 1em 0 !important;
    display: block !important;
  }
}

.enquire_button {
  margin: 0 2em;
  color: #fff;
  text-decoration: none !important;
}

.enquire_button:hover, .enquire_button:active {
  background: #907f5f !important;
}

.product .thumbs {
  width: 30.3%;
  height: auto;
  display: inline-block;
  margin: 1.5%;
  cursor: pointer; cursor: hand;
}

.product .thumbs:hover {
    opacity: 0.5;
}

.product .main_thumb {
  width: 100%;
  height: auto;
  display: inline-block;
  margin-bottom: 1.5%;
  box-sizing: content-box;
}

.gallery {
  text-align: left;
}

.gallery-container {
  width: 103%;
  margin-left: -1.5%;
  display: block;
}

.cat_item {
  text-align: center;
  font-weight: bold;
  padding: 2em;
}

.cat_item p {
  /* font-size: .8em; */
  text-transform: uppercase;
  letter-spacing: 0.025em;
  font-weight: 300;
  padding: 1em 1em 0;
}

hr {
      border-top: 1px solid #B3A07D !important;
}

.related_products {
  margin: 3em 0;
  clear: both;
}

.alsolike {
  text-align: center;
  text-transform: uppercase;
  color: #001748;
  letter-spacing: 0.07em;
  font-size: 1.5em;
  padding: .5em 0 1.5em;
}

.home-slider ul {
 top:60% !important;
}

.home-slider .vc_carousel-indicators li {
  width: 15px;
  height: 15px;
  margin:5px;
  background-color: #B3A07D;
}

@media screen and (max-width: 1220px) {
.overlap-left {
    display: none !important;
  }
}

@media screen and (max-width: 1220px) and (min-width:768px) {
    .overlap {
        display: none !important;
      }
}

@media screen and (max-width: 767px) {
  .overlap {
    position: absolute !important;
    right: 31px !important;
    top: 0 !important;
  }
}

@media screen and (max-width: 1024px) {
  .body {
    padding: 1em;
    box-sizing: content-box;
  }
  .specifications h2 {
    font-size: 1em
  }
  .footer {
    padding: 2em 1em;
    text-align: center !important;
  }
  .left, .right {
    text-align: center !important;
  }
  .home-slider {
    height: auto !important;
  }
  select {
    border: 1px solid #ccc;
    padding: .3em .5em;
  }
}

h2, .h2 {
  margin-top: 1em;
  margin-bottom: .7em;
}

label, input, textarea {
  max-width: 100%;
}

input[type="text"], textarea {
  border: 1px solid #D9D9D9;
}

.dropdownlabel {
  min-width: 95px;
    display: inline-block;
}

@media screen and (min-width: 768px) {
  .hide_on_desktop {
    display: none !important;
  }
}

@media screen and (max-width: 767px) {
  .hide_on_mobile {
    display: none !important;
  }
  .centre_on_mobile {
    text-align: center;
  }
  .related_products img {
    padding-bottom: 30px;
  }
  .vc_media_grid .vc_grid-item {
    width: 33.3% !important;
    display: inline-block !important;
  }
}

.vc_media_grid .prettyphoto:hover {
  opacity: .5 !important;
}

.description .aligncenter {
  text-align: center;
  margin: 0 auto;
  display: block !important;
}

.grecaptcha-badge {
display: none !important;
}


.fluffyegg {
/* font-family: 'Helvetica Neue', 'Helvetica', 'Arial', sans-serif; */
background: #f2f2f2;
}

.fluffyegg a:link, .fluffyegg a:visited {
    
    padding: 1em;
    width: 100%;
    color: #ccc;
    font-size: 0.8em;
    text-decoration: none;
    display: block;
    text-align: center;
}

.fluffyegg a:hover {
    padding: 1em;
    width: 100%;
    color: #000;
    font-size: 0.8em;
    text-decoration: none;
    display: block;
    text-align: center;
}

.fluffyegg a:link span, .fluffyegg a:visited span {
}

.fluffyegg a:link .fluffyegg-chevron, .fluffyegg a:visited .fluffyegg-chevron {
    color: #000;
}

.fluffyegg a:hover .fluffyegg-chevron, .fluffyegg a:active .fluffyegg-chevron {
    color: #fff;
}

.fluffyegg a:active span {
    color: #000;
}

.fluffyegg a:active {
    padding: 1em;
    width: 100%;
    color: #000;
    font-size: 0.8em;
    text-decoration: none;
    display: block;
    text-align: center;
}


/* 1) Hide the original text by setting its font-size to 0 */
#menu-item-2680 > a,
#menu-item-2681 > a,
#menu-item-2682 > a,
#menu-item-2694 > a,
#menu-item-2729 > a,
#menu-item-4523 > a {
  display: inline-block;   /* so that the pseudo-elements can stack */
  font-size: 0;            /* hides “Sword Engraving” */
  text-align: center;      /* center the two lines under each other */
}

/* 2) Re-insert “Sword” on its own line */
#menu-item-2680 > a::before,
#menu-item-2681  > a::before,
#menu-item-2682 > a::before,
#menu-item-2694 > a::before,
#menu-item-2729 > a::before {
  content: "Sword";
  display: block;          /* forces it onto line 1 */
  font-size: 1rem;         /* restore your normal link font size */
  line-height: 1.2;        /* adjust if you want more/less spacing */
}

/* 3) Re-insert “Engraving” on line 2 */
#menu-item-2680 > a::after {
  content: "Refurbishment";
  display: block;          /* forces it onto line 2 */
  font-size: 1rem;
  margin-top: 0.1em;       /* small gap under “Sword” (optional) */
}

#menu-item-2681 > a::after {
  content: "Engraving";
  display: block;          /* forces it onto line 2 */
  font-size: 1rem;
  margin-top: 0.1em;       /* small gap under “Sword” (optional) */
}

#menu-item-2682 > a::after {
   content: "Displays";
  display: block;          /* forces it onto line 2 */
  font-size: 1rem;
  margin-top: 0.1em;       /* small gap under “Sword” (optional) */
}

#menu-item-4523 {
width: 30%;
	/*top:2px;*/
    text-align: center;
}

#menu-item-2694 > a::after {
	content: "Attire";
	  display: block;          /* forces it onto line 2 */
  font-size: 1rem;
  margin-top: 0.1em;       /* small gap under “Sword” (optional) */
}

#menu-item-2729 > a::after {
	content: "Accessories";
	  display: block;          /* forces it onto line 2 */
  font-size: 1rem;
  margin-top: 0.1em;       /* small gap under “Sword” (optional) */	
}

#menu-item-4523 > a::after {
 content: "Pace Sticks & Canes";
 display:block;
 font-size: 1rem;
 margin-top: 0.1em;
}

#menu-item-2679,
#menu-item-35,
#menu-item-339 {
	
}

#menu-item-2679 {
 top: -10px;
}

#menu-item-339 {
 top: -10px;
}

.x-logo {
	height: 20px;
    max-height: 18px;
    padding: .2em;
    box-sizing: content-box;
    width: auto;
    margin-bottom: 0.5rem;
}

#n2-ss-2::after {
	content: '';
    background-image: url(../images/sovereign-swords-logo.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 26%;
    background-position: center center;
    display: inline-block !important;
    position: absolute;
    z-index: 1;
    left: calc(50% - 13%);
    text-align: center;
    height: 90%;
}

/* Hide nested submenus by default */
.sub-menu .sub-menu {
  visibility: hidden;
  display: none;
  position: absolute;
  top: 0;
  left: 100%;
  margin-left: 0;
  z-index: 9999999;
	
}

/* Show nested submenu on hover */
.sub-menu li:hover > .sub-menu {
  visibility: visible;
  display: block;
		position: absolute;
    left: 30px;
    top: 28px;
}

/* Sovereign Swords brand skin */
:root {
  --sovereign-burgundy: #790d17;
  --sovereign-burgundy-dark: #590810;
  --sovereign-gold: #d8ae4f;
  --sovereign-gold-dark: #b88c35;
  --sovereign-cream: #f7f1e8;
  --sovereign-ink: #4b1116;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  color: var(--sovereign-ink);
  background: #fff;
  font-family: 'Noto Serif JP', serif;
}

.screen-reader-text {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.site-header {
  position: relative;
  z-index: 1000;
  margin: 0;
  background: var(--sovereign-burgundy);
  color: var(--sovereign-gold);
  box-shadow: 0 2px 10px rgba(64, 4, 10, .18);
}

.site-header .inner-header {
  min-height: 112px;
  max-width: 1280px;
  padding: 0 64px;
  display: flex;
  align-items: center;
}

.header-navigation {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 112px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
}

.header-navigation nav ul {
  display: flex;
  align-items: center;
  margin: 0;
}

.header-navigation #menu-top-menu-left,
.header-navigation #menu-top-menu-right {
  display: flex !important;
}

.navigation-left ul {
  justify-content: flex-end;
}

.navigation-right ul {
  justify-content: flex-start;
}

.site-header nav li {
  padding: .6em .7em;
  border-color: transparent;
}

.site-header nav li:hover,
.site-header .current-menu-item {
  border-bottom-color: var(--sovereign-gold);
}

.site-header a,
.site-header a:link,
.site-header a:visited {
  color: var(--sovereign-gold);
}

.site-header nav a {
  display: block;
  font-family: 'Noto Serif JP', serif;
  font-size: 1rem;
  line-height: 1.05;
  letter-spacing: .01em;
}

.site-header nav a:hover,
.site-header nav a:focus,
.site-header nav a:active {
  color: #f0d184;
  text-decoration: none;
}

.header-brand {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 108px;
}

.header-brand .logo {
  width: 100px;
  max-height: 104px;
  object-fit: contain;
}

.header-social,
.header-contact {
  position: absolute;
  top: 50%;
  display: flex;
  align-items: center;
  gap: 10px;
  transform: translateY(-50%);
}

.header-social {
  left: 4px;
}

.header-contact {
  right: 4px;
}

.header-social a,
.header-contact a {
  display: inline-flex;
  width: 20px;
  height: 28px;
  align-items: center;
  justify-content: center;
  font-size: .9rem;
}

.header-contact img {
  display: block;
  max-width: 17px;
  max-height: 17px;
  object-fit: contain;
}

.header-social a:hover,
.header-contact a:hover,
.header-social a:focus,
.header-contact a:focus {
  color: #f0d184;
  text-decoration: none;
}

.site-header .sub-menu {
  display: block;
  position: absolute;
  top: calc(100% - 2px);
  left: -20px;
  width: 190px;
  margin: 0;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  border-top-color: transparent;
  transition: opacity .15s ease;
}

.site-header .menu-item-has-children:hover > .sub-menu,
.site-header .menu-item-has-children:focus-within > .sub-menu {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}

.site-header .sub-menu li a {
  color: var(--sovereign-gold);
  background: rgba(89, 8, 16, .97);
  border-color: rgba(216, 174, 79, .35);
}

.site-header .sub-menu li a:hover,
.site-header .sub-menu li a:focus {
  color: #fff1c3;
  background: var(--sovereign-burgundy-dark);
}

.menu-toggle,
.mobile-header-brand {
  display: none;
}

/* The imported site still includes a legacy mobile-menu plugin. The theme now
   owns this interface so visitors only receive one navigation control. */
button#responsive-menu-button,
#responsive-menu-container {
  display: none !important;
}

.sovereign-hero {
  width: 100%;
  background: var(--sovereign-cream);
  overflow: hidden;
}

.sovereign-hero-desktop {
  position: relative;
  height: clamp(390px, 42vw, 620px);
  overflow: hidden;
}

.sovereign-hero-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 52%;
}

.sovereign-hero-brand {
  position: absolute;
  z-index: 2;
  top: 7%;
  right: 4.5%;
  width: clamp(130px, 17vw, 245px);
  padding: 12px;
}

.sovereign-hero-brand img {
  display: block;
  width: 100%;
  filter: drop-shadow(0 1px 1px rgba(255, 255, 255, .45));
}

.sovereign-hero-mobile {
  display: none;
}

.home-content:empty {
  display: none;
}

.home-content {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

a:link,
a:visited,
.product h1,
.product .description,
.specifications,
.specifications h2,
.alsolike {
  color: var(--sovereign-ink);
}

a:hover,
a:active {
  color: var(--sovereign-burgundy);
}

h1::after,
hr,
.spec_row {
  border-color: var(--sovereign-gold) !important;
}

.product_header,
.enquire {
  background: var(--sovereign-burgundy);
  color: var(--sovereign-gold);
}

.enquire_button:hover .enquire,
.enquire_button:active .enquire {
  background: var(--sovereign-burgundy-dark) !important;
}

.specifications {
  background: var(--sovereign-cream);
}

.specifications h2::before,
.specifications h2::after {
  background: var(--sovereign-burgundy);
}

.site-footer {
  margin: 0;
  padding: 24px 20px;
  background: var(--sovereign-burgundy);
  color: var(--sovereign-gold);
  font-family: 'Noto Serif JP', serif;
  font-size: 1rem;
}

.site-footer a,
.site-footer a:link,
.site-footer a:visited {
  color: var(--sovereign-gold);
}

.site-footer a:hover,
.site-footer a:focus {
  color: #fff1c3;
  text-decoration: none;
}

.footer-row {
  min-height: 90px;
}

.footer-brand {
  text-align: center;
}

.footer-brand .logo {
  width: 72px;
  max-height: 78px;
  object-fit: contain;
}

.footer-contact {
  line-height: 1.35;
}

.footer-social {
  display: flex;
  gap: 12px;
  margin-top: 7px;
}

.footer-social a {
  display: inline-flex;
  width: 18px;
  height: 18px;
  align-items: center;
  justify-content: center;
}

.footer-credentials {
  text-align: right;
}

.footer-badges {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 14px;
  margin-bottom: 7px;
}

.footer-badges img:first-child {
  max-height: 31px;
  width: auto;
}

.footer-badges img:last-child {
  max-width: 160px;
  max-height: 52px;
  width: auto;
}

.fluffyegg {
  background: var(--sovereign-burgundy-dark);
}

.fluffyegg a:link,
.fluffyegg a:visited,
.fluffyegg a:hover,
.fluffyegg a:active {
  color: rgba(255, 241, 195, .55);
}

#n2-ss-2::after {
  background-image: url(../images/sovereign-swords-logo.png);
}

#menu-item-2679,
#menu-item-339 {
  top: auto;
}

#menu-item-4523 {
  width: auto;
}

#menu-item-2680 > a::before,
#menu-item-2681 > a::before,
#menu-item-2682 > a::before,
#menu-item-2694 > a::before,
#menu-item-2729 > a::before,
#menu-item-2680 > a::after,
#menu-item-2681 > a::after,
#menu-item-2682 > a::after,
#menu-item-2694 > a::after,
#menu-item-2729 > a::after,
#menu-item-4523 > a::after {
  font-size: 1rem;
}

@media screen and (max-width: 1180px) and (min-width: 768px) {
  .site-header .inner-header {
    padding: 0 48px;
  }

  .site-header nav li {
    padding-left: .42em;
    padding-right: .42em;
  }

  .site-header nav a {
    font-size: .9rem;
  }
}

@media screen and (max-width: 767px) {
  .site-header .inner-header {
    min-height: 72px;
    padding: 0 18px;
    justify-content: space-between;
  }

  .menu-toggle {
    display: inline-flex;
    width: 42px;
    height: 42px;
    padding: 0;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 0;
    color: var(--sovereign-gold);
    background: transparent;
    font-size: 1.2rem;
    cursor: pointer;
  }

  .menu-toggle:focus-visible {
    outline: 2px solid var(--sovereign-gold);
    outline-offset: 2px;
  }

  .mobile-header-brand {
    position: absolute;
    left: 50%;
    top: 4px;
    display: flex;
    width: 64px;
    height: 64px;
    align-items: center;
    justify-content: center;
    transform: translateX(-50%);
  }

  .mobile-header-brand .logo {
    width: 58px;
    max-height: 62px;
    object-fit: contain;
  }

  .header-social {
    display: none;
  }

  .header-contact {
    position: absolute;
    z-index: 3;
    top: 50%;
    right: 16px;
    display: flex !important;
    margin-left: 0;
    transform: translateY(-50%);
  }

  .header-contact a {
    width: 24px;
    font-size: 1rem;
  }

  .header-navigation {
    position: absolute;
    z-index: 20;
    top: 100%;
    left: 0;
    right: 0;
    display: none;
    width: 100%;
    padding: 10px 24px 22px;
    background: var(--sovereign-burgundy-dark);
    box-shadow: 0 8px 18px rgba(44, 3, 8, .2);
  }

  .header-navigation.is-open {
    display: block;
  }

  .header-navigation .header-brand {
    display: none;
  }

  .header-navigation nav ul,
  .navigation-left ul,
  .navigation-right ul {
    display: block;
    margin: 0;
  }

  .header-navigation #menu-top-menu-left,
  .header-navigation #menu-top-menu-right {
    display: block !important;
  }

  .site-header nav li,
  .site-header #menu-item-4523 {
    display: block;
    width: 100%;
    top: auto;
    padding: 0;
    text-align: center;
    border-bottom: 1px solid rgba(216, 174, 79, .2);
  }

  .site-header nav li a {
    padding: 12px 8px;
    font-size: 1rem;
  }

  .site-header .sub-menu,
  .site-header .menu-item-has-children:hover .sub-menu {
    position: static;
    display: none;
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
    width: 100%;
    margin: 0;
    border: 0;
  }

  .site-header .current-menu-parent > .sub-menu,
  .site-header .current-menu-item > .sub-menu {
    display: block;
  }

  .sovereign-hero-desktop {
    display: none;
  }

  .sovereign-hero-mobile {
    display: block;
    background: #8f887e;
  }

  .sovereign-hero-mobile img {
    display: block;
    width: 100%;
    height: auto;
  }

  .home-content {
    padding: 1.5rem 15px;
  }

  .site-footer {
    margin-top: 0;
    padding: 24px 18px 18px;
    font-size: .9rem;
  }

  .footer-brand {
    width: 25% !important;
  }

  .footer-contact {
    width: 75% !important;
    text-align: right;
  }

  .footer-social {
    justify-content: flex-end;
  }

  .footer-credentials {
    width: 100%;
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid rgba(216, 174, 79, .25);
    text-align: center;
  }

  .footer-badges {
    justify-content: center;
  }
}
