/* ============================================================
   ROYAL GLOW ESSENTIALS — Brand override stylesheet
   Loaded LAST so it intentionally overrides the Botanical template.
   Author: rebrand build. Edit brand tokens in :root below.
   ============================================================ */

:root {
  /* ---- Brand palette ---- */
  --clr-primary:   #043130; /* deep royal green  */
  --clr-secondary: #5a3a2e; /* warm brown accent */
  --clr-gold:      #f7c94e; /* gold highlight    */
  --clr-gold-dk:   #c99a2b; /* deep gold (hover) */
  --clr-charcoal:  #1f1f1f; /* main text         */
  --clr-white:     #f6f5f2; /* off-white bg      */
  --clr-cream:     #eeeae0; /* soft cream panel  */
  --clr-line:      #e3ddcf; /* hairline borders  */
  --clr-green-700: #0a4b46; /* lighter green     */

  --font-display: "Cinzel", "Playfair Display", Georgia, "Times New Roman", serif;
  --font-body: "Glacial Indifference", "Segoe UI", "Helvetica Neue", Arial, sans-serif;
}

/* ------------------------------------------------------------
   1. Global type + base colours
------------------------------------------------------------ */
html { background-color: var(--clr-primary) !important; }

body {
  font-family: var(--font-body) !important;
  color: var(--clr-charcoal);
  background-color: var(--clr-white);
  letter-spacing: .2px;
  line-height: 1.7;
}

#pageWrapper { background-color: var(--clr-white); }

/* Headings + any element the template flagged as "playfair" → Cinzel */
h1, h2, h3, h4, h5, h6,
.playfair,
.headingI, .headingII, .headingIII, .headingIV,
.headingV, .headingVI, .headingVII,
.navbar-nav,
.btn,
.breadCrumbs,
.mainTitle,
.counter,
.langList, .langListII, .wishList, .wishListII {
  font-family: var(--font-display) !important;
}

h1, h2, h3, h4, h5, h6,
.headingII, .headingIII, .headingIV, .headingV, .headingVI, .headingVII {
  color: var(--clr-primary);
  letter-spacing: .5px;
}

/* Cinzel runs large; trim weight so headings stay elegant not heavy */
.fwEbold, .fwEblod { font-weight: 600 !important; }

p { color: #43403c; }

a { color: var(--clr-primary); }

/* ------------------------------------------------------------
   2. Accent colour remap  (#5ba515 / #5BA515 template green → brand)
   The template's color.css turns dozens of hovers/states green.
   We re-point the most visible ones to royal green + gold.
------------------------------------------------------------ */
.text-green,
.navbar-light .navbar-nav a:hover,
.navbar-light .navbar-nav .active > a,
.featureCol .title a:hover,
.footerHolder .footerNavList a:hover,
.footerHolder .footerContactList a:hover,
.footerHolder .followSocailNetwork a:hover,
.copyRightHolder p a,
.breadCrumbs .active,
.breadCrumbs a:hover,
.langList a:hover, .langListII a:hover,
.wishList a:hover, .wishListII a:hover,
.nav-tabs .nav-link:hover,
.widget .categoryList a:hover,
.widget .archiveList a:hover,
.widget .recentPostList a:hover,
.newsPostColumn .headingV a:hover,
.newsBlogColumn .headingV a:hover,
.newsPostColumn .postBy a:hover,
.itemCol .headingIV a:hover,
.cartHolder .cartTable .title a:hover,
.cartHolder .cartTable .fas:hover,
.productTextHolder .productInfoDetail a:hover,
.productTextHolder .socialNetwork a:hover,
.tabSetList li .active,
.tabSetList a:hover {
  color: var(--clr-gold-dk) !important;
}

#header .navbar-nav .active > a,
#header .navbar-nav a:hover {
  color: var(--clr-gold-dk) !important;
}

.ui-widget-header,
.pagination .active a,
.pagination a:hover,
.introBlock .title:before,
.heroBlockHolder .title:before,
.bannerBlockHolder .title:before,
.discoverSecHolder .title:before,
.newsBlogColumn .time,
.newsPostColumn .imgHolder .time,
.featureCol .postHoverLinskList a:hover,
.dealSlider .slick-dots .slick-active button,
.testimonailSlider .slick-dots .slick-active button,
.introBlock .slick-dots .slick-active button,
.ui-state-default,
.productTextHolder .jcf-number .jcf-btn-dec,
.productTextHolder .jcf-number .jcf-btn-inc,
.productTextHolder .sizeList [type="checkbox"]:checked + .fake-input {
  background: var(--clr-gold) !important;
  border-color: var(--clr-gold) !important;
}

.pagination .active a, .pagination a:hover { color: var(--clr-primary) !important; }

.introBlock .slick-next:hover,
.introBlock .slick-prev:hover,
.heroBlockHolder .slick-next:hover,
.heroBlockHolder .slick-prev:hover,
.bannerBlockHolder .slick-next:hover,
.bannerBlockHolder .slick-prev:hover {
  color: var(--clr-gold-dk) !important;
}

/* ------------------------------------------------------------
   3. Buttons — gold CTA on green, with brown hover
------------------------------------------------------------ */
.btnTheme,
.btn.btnTheme {
  background-color: var(--clr-primary) !important;
  color: var(--clr-gold) !important;
  border: 1px solid var(--clr-primary) !important;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  font-weight: 600;
  font-size: 13px !important;
  transition: all .28s ease;
}
.btnTheme:hover,
.btn.btnTheme:hover {
  background-color: var(--clr-gold) !important;
  color: var(--clr-primary) !important;
  border-color: var(--clr-gold) !important;
  opacity: 1 !important;
}

/* Solid-gold variant for use on dark sections */
.btnGold {
  background-color: var(--clr-gold) !important;
  color: var(--clr-primary) !important;
  border: 1px solid var(--clr-gold) !important;
}
.btnGold:hover {
  background-color: transparent !important;
  color: var(--clr-gold) !important;
  border-color: var(--clr-gold) !important;
  opacity: 1 !important;
}

.btn .fas { color: inherit; }

/* generic bootstrap buttons that appear in forms */
.btn-link { color: var(--clr-primary) !important; }
.btn-link:hover { color: var(--clr-gold-dk) !important; }

/* ------------------------------------------------------------
   4. Header
------------------------------------------------------------ */
/* Top utility bar (inner pages) in deep green */
.headerHolderCol {
  background-color: var(--clr-primary);
  color: var(--clr-white);
}
.headerHolderCol .tel,
.headerHolderCol .txt,
.headerHolderCol .langListII span,
.headerHolderCol .langListII a {
  color: var(--clr-white) !important;
}
.headerHolderCol .tel:hover,
.headerHolderCol .langListII a:hover { color: var(--clr-gold) !important; }

/* Nav links */
.navbar-light .navbar-nav a,
#header .navbar-nav a {
  color: var(--clr-primary);
  letter-spacing: 2px;
  font-size: 13px;
  font-weight: 600;
}

/* dropdown menus */
.pageNav1 .dropdown-menu,
.pageNav2 .dropdown-menu {
  background: var(--clr-white);
  border-color: var(--clr-line) !important;
  box-shadow: 0 12px 30px rgba(4,49,48,.10);
}
.pageNav1 .dropdown-menu a:hover,
.pageNav2 .dropdown-menu a:hover {
  background: var(--clr-gold) !important;
  color: var(--clr-primary) !important;
}

/* Logo sizing — keep the crest legible but compact */
.logo img, .nLogo img {
  max-height: 92px;
  width: auto;
}
#header .logo a img { max-height: 92px; }

/* Wishlist / cart / search icons */
.wishList a, .wishListII a,
.langList a, .langListII a { color: var(--clr-primary); }
.wishList .num, .wishListII .num,
#header .num {
  background: var(--clr-gold) !important;
  color: var(--clr-primary) !important;
}

/* Mobile nav toggle bars in brand green */
.navbar-toggle .icon-bar { background-color: var(--clr-primary) !important; }
.pageNav1 .navbar-toggle:hover .icon-bar,
.pageNav2 .navbar-toggle:hover .icon-bar { background-color: var(--clr-white) !important; }

/* ------------------------------------------------------------
   5. Inner-page banner — deep green gradient + botanical shadow
------------------------------------------------------------ */
.introBannerHolder {
  position: relative;
  background: linear-gradient(120deg, var(--clr-primary) 0%, #06403c 55%, #073d39 100%) !important;
  background-color: var(--clr-primary) !important;
}
.introBannerHolder:before {
  content: "";
  position: absolute; inset: 0;
  background: url("../images/leaf-shadow.png") no-repeat right -120px top -60px;
  background-size: 620px auto;
  opacity: .5;
  mix-blend-mode: screen;
  pointer-events: none;
}
.introBannerHolder:after {
  content: "";
  position: absolute; inset: 0;
  background: url("../images/leaf-shadow.png") no-repeat left -180px bottom -120px;
  background-size: 520px auto;
  transform: scaleX(-1);
  opacity: .4;
  mix-blend-mode: screen;
  pointer-events: none;
}
.introBannerHolder .container { position: relative; z-index: 2; }
.introBannerHolder h1 { color: var(--clr-white); letter-spacing: 3px; }
.introBannerHolder .breadCrumbs,
.introBannerHolder .breadCrumbs a { color: rgba(246,245,242,.75); }
.introBannerHolder .breadCrumbs .active { color: var(--clr-gold) !important; }

/* ------------------------------------------------------------
   6. Hero (home) — overlay the botanical motif + tune copy colours
------------------------------------------------------------ */
.introBlock .align { position: relative; }
.introBlock .txtwrap h1,
.introBlock .txtwrap h2 { color: var(--clr-primary); letter-spacing: 1px; }
.introBlock .txtwrap .title { color: var(--clr-secondary) !important; }
.introBlock .txtwrap .title:before { background: var(--clr-gold) !important; }
.introBlock .txtwrap p { color: #43403c; }

/* section eyebrow titles */
.title.text-uppercase { color: var(--clr-secondary) !important; }

/* ------------------------------------------------------------
   7. Section headers — gold rule under Cinzel titles
------------------------------------------------------------ */
.mainHeader .headingIV { position: relative; letter-spacing: 2px; }
.mainHeader .headerBorder .img-bdr { filter: sepia(1) saturate(3) hue-rotate(5deg) brightness(1.05); }
/* replace the template's leaf rule with a clean gold divider */
.mainHeader .headerBorder {
  position: relative;
  height: 26px;
}
.mainHeader .headerBorder img { opacity: 0; }
.mainHeader .headerBorder:after {
  content: "";
  position: absolute;
  left: 50%; top: 50%;
  width: 70px; height: 2px;
  background: var(--clr-gold);
  transform: translate(-50%,-50%);
}
.mainHeader .headerBorder:before {
  content: "";
  position: absolute;
  left: 50%; top: 50%;
  width: 8px; height: 8px;
  background: var(--clr-gold);
  border-radius: 2px;
  transform: translate(-50%,-50%) rotate(45deg);
  margin-top: 0;
  z-index: 2;
}

/* ------------------------------------------------------------
   8. Product / feature cards
------------------------------------------------------------ */
.featureCol .border { border-color: var(--clr-line) !important; background: #fff; transition: box-shadow .3s ease, transform .3s ease; }
.featureCol:hover .border { box-shadow: 0 18px 40px rgba(4,49,48,.12); transform: translateY(-4px); }
.featureCol .title a { color: var(--clr-primary); font-family: var(--font-display) !important; letter-spacing: .5px; }
.featureCol .price { color: var(--clr-secondary); }
.featureCol .postHoverLinskList a { background: var(--clr-primary); color: var(--clr-white); }
.featureCol .postHoverLinskList a:hover { background: var(--clr-gold) !important; color: var(--clr-primary) !important; }
.hotOffer { background: var(--clr-secondary) !important; }
.hotOffer.green { background: var(--clr-gold) !important; color: var(--clr-primary) !important; }

/* "Why choose us" icons + list */
.chooseList .icon { color: var(--clr-gold); }
.chooseList .headingIII { color: var(--clr-primary); }
.btnMore i { color: var(--clr-gold-dk); }

/* contact strip icons */
.contactListColumn { border-color: var(--clr-line) !important; background:#fff; }
.contactListColumn .icon { color: var(--clr-gold); }
.contactListColumn .headingV { color: var(--clr-primary); }

/* ------------------------------------------------------------
   9. Newsletter / subscribe band
------------------------------------------------------------ */
.subscribeSecBlock {
  background: linear-gradient(120deg, var(--clr-primary), #06403b) !important;
  position: relative;
  border-radius: 4px;
  overflow: hidden;
}
.subscribeSecBlock:before {
  content:"";
  position:absolute; inset:0;
  background: url("../images/leaf-shadow.png") no-repeat right -80px top -40px;
  background-size: 480px auto; opacity:.45; mix-blend-mode: screen; pointer-events:none;
}
.subscribeSecBlock .mainHeader,
.subscribeSecBlock .headingIV { color: var(--clr-white) !important; position: relative; z-index:2; }
.subscribeSecBlock p { color: rgba(246,245,242,.85) !important; position: relative; z-index:2; }
.subscribeSecBlock .headerBorder:after { background: var(--clr-gold); }
.subscribeSecBlock .headerBorder:before { background: var(--clr-gold); }
.subscribeSecBlock .emailForm1 { position: relative; z-index:2; }
.subscribeSecBlock .emailForm1 .form-control { background: #fff; color: var(--clr-charcoal); }
.subscribeSecBlock .emailForm1 .btn {
  background: var(--clr-gold) !important; color: var(--clr-primary) !important;
}
.subscribeSecBlock .emailForm1 .btn:hover { background: var(--clr-gold-dk) !important; }

/* ------------------------------------------------------------
   10. Footer
------------------------------------------------------------ */
.footerHolder {
  background-color: var(--clr-cream) !important;
  border-top: 1px solid var(--clr-line);
}
.footerHolder .headingVI { color: var(--clr-primary); letter-spacing: 1.5px; }
.footerHolder .footerContactList a,
.footerHolder .footerNavList a,
.footerHolder address { color: #4a463f; }
.footerHolder .footerContactList .icon { color: var(--clr-gold-dk); }
.footerHolder .followSocailNetwork a {
  color: var(--clr-primary);
  width: 34px; height: 34px; line-height: 34px; text-align:center;
  border: 1px solid var(--clr-line); border-radius: 50%;
  display:inline-block; font-size: 14px;
  transition: all .25s ease;
}
.footerHolder .followSocailNetwork a:hover {
  background: var(--clr-gold) !important; color: var(--clr-primary) !important; border-color: var(--clr-gold);
}
.footerHolder .tagNavList a { border:1px solid var(--clr-line); color:#4a463f; border-radius: 20px; }
.footerHolder .tagNavList a:hover { background: var(--clr-gold) !important; color: var(--clr-primary) !important; border-color: var(--clr-gold) !important; }

/* bottom copyright bar */
#footer { background-color: var(--clr-primary) !important; }
#footer, #footer p { color: rgba(246,245,242,.85); }
.copyRightHolder p a { color: var(--clr-gold) !important; }
.copyRightHolder.v-II p a:hover { color: var(--clr-white) !important; }

/* footer social row variant used on contact/dark footer */
.socialNetworkList a, .footer-social a { color: var(--clr-white); }
.socialNetworkList a:hover { color: var(--clr-gold) !important; }

/* ------------------------------------------------------------
   11. Forms
------------------------------------------------------------ */
.form-control {
  border-radius: 2px;
  border: 1px solid var(--clr-line);
  color: var(--clr-charcoal);
}
.form-control:focus {
  border-color: var(--clr-gold);
  box-shadow: 0 0 0 .15rem rgba(247,201,78,.25);
}
::placeholder { color: #9a958c !important; opacity: 1; }

/* ------------------------------------------------------------
   12. Light-grey utility panels → warm cream
------------------------------------------------------------ */
.bg-lightGray { background-color: var(--clr-cream) !important; }
.bg-dark { background-color: var(--clr-primary) !important; }

/* accordion + steps (about page) */
.accordionList .card-header .btn-link { color: var(--clr-primary) !important; }
.accordionList .card { border-color: var(--clr-line) !important; }
.stepCol .mainTitle { background: var(--clr-gold) !important; color: var(--clr-primary) !important; }
.counter { color: var(--clr-primary); }
.progressCounter li strong:last-child { color: var(--clr-secondary); }

/* contact page icon chips */
.contactListHolder .icon { color: var(--clr-gold-dk); }
.contactListHolder .title { color: var(--clr-primary); }

/* team social */
.teamBlock .socialNetworks a { color: var(--clr-white); }
.teamBlock .socialNetworks { background: rgba(4,49,48,.65); }

/* widgets / sidebar (shop + blog) */
.widget .headingV, .widget .headingVI, .widget .widgetTitle { color: var(--clr-primary); }
.widget .categoryList a, .widget .archiveList a, .widget .recentPostList a { color:#4a463f; }
.widget .tagNavList a { border:1px solid var(--clr-line); border-radius:20px; color:#4a463f; }
.widget .tagNavList a:hover { background: var(--clr-gold) !important; color: var(--clr-primary) !important; border-color: var(--clr-gold) !important; }

/* price slider */
.ui-slider .ui-slider-range { background: var(--clr-gold) !important; }
.ui-slider .ui-slider-handle { border-color: var(--clr-gold) !important; background: var(--clr-primary) !important; }

/* product detail */
.productTextHolder .headingII { color: var(--clr-primary); }
.tabSetList li .active:after,
.tabSetList a:after { border-color: var(--clr-gold) !important; }

/* blockquote / signature accents */
blockquote, .quotationBlock { border-color: var(--clr-gold) !important; }

/* selection */
::selection { background: var(--clr-gold); color: var(--clr-primary); }

/* ------------------------------------------------------------
   13. Brand helper components (used in rebuilt pages)
------------------------------------------------------------ */
.rg-eyebrow {
  display:inline-block;
  font-family: var(--font-display);
  letter-spacing: 4px;
  text-transform: uppercase;
  font-size: 12px;
  color: var(--clr-gold-dk);
  margin-bottom: 14px;
}
.rg-values-list { list-style: none; padding-left: 0; }
.rg-values-list li {
  position: relative;
  padding-left: 34px;
  margin-bottom: 16px;
  color:#43403c;
}
.rg-values-list li:before {
  content: "";
  position: absolute; left: 0; top: 7px;
  width: 12px; height: 12px;
  background: var(--clr-gold);
  transform: rotate(45deg);
  border-radius: 2px;
}
.rg-values-list li strong { color: var(--clr-primary); font-family: var(--font-display); letter-spacing:.5px; }

.rg-contact-box {
  background: var(--clr-cream);
  border: 1px solid var(--clr-line);
  border-left: 4px solid var(--clr-gold);
  padding: 28px 30px;
  border-radius: 3px;
}
.rg-contact-box h3 { color: var(--clr-primary); letter-spacing: 1.5px; }
.rg-contact-box a { color: var(--clr-secondary); }
.rg-contact-box a:hover { color: var(--clr-gold-dk); }
.rg-contact-box .icon-call,
.rg-contact-box .icon-email,
.rg-contact-box .icon-place,
.rg-contact-box i { color: var(--clr-gold-dk); }

/* botanical section divider (thin crest + gold rule) */
.rg-divider {
  display:flex; align-items:center; justify-content:center;
  gap:14px; margin: 0 auto 8px;
}
.rg-divider span { height:1px; width:60px; background: var(--clr-line); }
.rg-divider i {
  width:10px; height:10px; background: var(--clr-gold);
  transform: rotate(45deg); border-radius:2px; display:inline-block;
}

/* category collection card */
.rg-collection {
  position: relative; display:block; overflow:hidden; border-radius:3px;
}
.rg-collection img { transition: transform .6s ease; width:100%; }
.rg-collection:hover img { transform: scale(1.05); }
.rg-collection .rg-collection-label {
  position:absolute; left:0; right:0; bottom:0;
  padding:18px; text-align:center;
  background: linear-gradient(to top, rgba(4,49,48,.78), rgba(4,49,48,0));
  color: var(--clr-white);
  font-family: var(--font-display);
  letter-spacing:2px; text-transform:uppercase; font-size:15px;
}

/* TODO note style (visible reminder of missing content) */
.rg-todo {
  display:block;
  background: rgba(247,201,78,.16);
  border: 1px dashed var(--clr-gold-dk);
  color: #7a5d12;
  font-family: var(--font-body);
  font-size: 13px;
  padding: 8px 12px;
  border-radius: 3px;
  margin: 10px 0;
}

/* ------------------------------------------------------------
   14. Misc polish
------------------------------------------------------------ */
.discoverSecHolder .btn { border-color: var(--clr-gold) !important; color: var(--clr-primary); }
.discoverSecHolder .btn:hover { background: var(--clr-gold) !important; color: var(--clr-primary) !important; }
.discoverSecHolder .title:before { background: var(--clr-gold) !important; }

img { image-rendering: auto; }

/* keep focus visible for keyboard users (accessibility floor) */
a:focus-visible, button:focus-visible, input:focus-visible,
textarea:focus-visible, .btn:focus-visible {
  outline: 2px solid var(--clr-gold-dk);
  outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
  * { animation-duration: .001ms !important; transition-duration: .001ms !important; }
}
