/* =====================================================================
   LIBERTÉ — THEME OVERRIDE STYLESHEET
   =====================================================================
   Load this AFTER bootstrap.css / shop.css / owl.carousel.min.css /
   style.css / site.css so it wins the cascade. It does not change any
   markup, IDs, or classes your JS depends on (search form, cart,
   modals, dropdowns, owl-carousel, etc.) — it only restyles them.

   DESIGN TOKENS
   -------------
   Ink      #1C1A1E   near-black charcoal (text, header, footer)
   Paper    #F6F1E7   warm ivory (page background)
   Paper-2  #EEE6D3   deeper cream (alternating sections)
   Wine     #7C2333   primary accent — signage burgundy
   Wine-2   #5A1A26   wine, pressed/hover
   Gold     #B6893F   brass trim — secondary accent
   Gold-Lt  #D9B876   pale gold for text-on-dark

   TYPE
   ----
   Display: 'Fraunces'  (headlines, wordmarks, pull quotes)
   Body:    'Manrope'   (nav, paragraphs, buttons, forms)

   SIGNATURE
   ---------
   "Awning stripe" — a thin repeating wine/gold/paper diagonal stripe,
   used sparingly as a rule under section titles and along the header/
   footer edges. A nod to the striped fabric awnings of a boutique
   shopfront — fitting for a brand named Liberté.
   ===================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,300;0,9..144,500;0,9..144,600;0,9..144,700;1,9..144,500&family=Manrope:wght@400;500;600;700;800&display=swap');

:root{
  --ink:#1c1a1e;
  --ink-soft:#2c282c;
  --paper:#f6f1e7;
  --paper-2:#eee6d3;
  --wine:#7c2333;
  --wine-2:#5a1a26;
  --gold:#b6893f;
  --gold-light:#d9b876;
  --text-muted:#726a63;
  --line: rgba(28,26,30,0.12);
  --line-on-ink: rgba(246,241,231,0.16);
  --shadow-soft: 0 14px 34px rgba(28,20,18,0.10);
  --shadow-lift: 0 20px 40px rgba(28,20,18,0.18);
  --radius: 4px;
}

/* -------- Awning stripe signature (reusable) -------- */
.awning-rule,
.tabs_pro .head_agileinfo::after,
.footer-v2grid h4::after,
.team-section .section-title::after{
  content:"";
  display:block;
  width:64px;
  height:6px;
  margin:14px auto 0;
  background-image:repeating-linear-gradient(
    -45deg,
    var(--wine) 0 6px,
    var(--gold) 6px 12px,
    var(--paper) 12px 18px
  );
  border-radius:2px;
}
.footer-v2grid h4::after{ margin:10px 0 0; }

/* ---------------------------------------------------------------------
   BASE
--------------------------------------------------------------------- */
body{
  background:var(--paper) !important;
  color:var(--ink) !important;
  font-family:'Manrope', -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  -webkit-font-smoothing:antialiased;
}
a{ color:var(--wine); }
a:hover{ color:var(--wine-2); }
::selection{ background:var(--gold-light); color:var(--ink); }
:focus-visible{ outline:2px solid var(--gold); outline-offset:2px; }

h1,h2,h3,h4,h5,h6{
  font-family:'Fraunces', Georgia, serif !important;
  color:var(--ink);
  font-weight:600;
  letter-spacing:0.01em;
}

/* thin brand scrollbar */
::-webkit-scrollbar{ width:11px; height:11px; }
::-webkit-scrollbar-track{ background:var(--paper); }
::-webkit-scrollbar-thumb{ background:var(--gold); border-radius:8px; border:3px solid var(--paper); }

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

/* ---------------------------------------------------------------------
   HEADER / TOP NAV
--------------------------------------------------------------------- */
header{
  background:var(--ink) !important;
  position:relative;
  z-index:20;
}
header::after{
  content:"";
  display:block;
  height:5px;
  background-image:repeating-linear-gradient(
    -45deg,
    var(--wine) 0 8px,
    var(--gold) 8px 16px,
    var(--ink) 16px 24px
  );
}
.top_nav{ align-items:center; }
.top_nav .navbar-brand{
  display:inline-flex;
  align-items:center;
  background:var(--paper);
  border:1px solid var(--gold);
  border-radius:8px;
  padding:6px 16px;
  box-shadow:var(--shadow-soft);
}
.top_nav .navbar-brand img{
  filter:none;
}

/* search */
.nav-search{ align-items:stretch; }
.nav-search .form-control{
  background:var(--ink-soft) !important;
  border:1px solid var(--line-on-ink) !important;
  color:var(--paper) !important;
  border-radius:999px 0 0 999px !important;
  padding:22px 18px !important;
  min-width:220px;
}
.nav-search .form-control::placeholder{ color:rgba(246,241,231,0.5); }
.nav-search .form-control:focus{
  border-color:var(--gold) !important;
  box-shadow:0 0 0 3px rgba(182,137,63,0.25) !important;
}
.nav-search .btn.btn-outline-secondary{
  background:var(--gold) !important;
  border:1px solid var(--gold) !important;
  color:var(--ink) !important;
  border-radius:0 999px 999px 0 !important;
  font-weight:700;
  padding:10px 22px !important;
  transition:background .2s ease, color .2s ease;
}
.nav-search .btn.btn-outline-secondary:hover{
  background:var(--gold-light) !important;
  color:var(--ink) !important;
}

/* icons: user / cart */
.nav-icon{ align-items:center; }
.nav-icon .login_btn,
.top_hub_cart{
  display:flex !important;
  align-items:center;
  justify-content:center;
  width:44px; height:44px;
  border-radius:50% !important;
  background:var(--ink-soft) !important;
  border:1px solid var(--line-on-ink);
  color:var(--paper) !important;
  transition:background .2s ease, transform .2s ease, color .2s ease;
}
.nav-icon .login_btn:hover,
.top_hub_cart:hover{
  background:var(--wine) !important;
  color:#fff !important;
  transform:translateY(-2px);
}
.hubcart .top_hub_cart{ margin-top:0 !important; }

/* user dropdown */
.user-dropdown .dropdown-menu{
  background:var(--paper) !important;
  border:1px solid var(--line) !important;
  border-radius:var(--radius) !important;
  box-shadow:var(--shadow-lift) !important;
  padding:6px !important;
  margin-top:10px !important;
}
.user-dropdown .dropdown-header{
  font-family:'Fraunces', serif;
  color:var(--wine);
  font-weight:600;
}
.user-dropdown .dropdown-item{
  border-radius:3px;
  padding:9px 14px !important;
  color:var(--ink) !important;
  transition:background .15s ease, color .15s ease;
}
.user-dropdown .dropdown-item:hover{
  background:var(--paper-2) !important;
  color:var(--wine) !important;
}
.user-dropdown .dropdown-item.text-danger:hover{
  background:var(--wine) !important;
  color:#fff !important;
}
.user-dropdown .dropdown-divider{ border-color:var(--line); }

/* bottom category nav */
.navbar.navbar-expand-lg{
  background:var(--ink-soft) !important;
  border-top:1px solid var(--line-on-ink);
}
.navbar.navbar-expand-lg .nav-link{
  color:var(--paper) !important;
  font-family:'Manrope', sans-serif;
  font-weight:600;
  font-size:14px;
  letter-spacing:0.03em;
  text-transform:uppercase;
  padding:14px 18px !important;
  position:relative;
}
.navbar.navbar-expand-lg .nav-link::after{
  content:"";
  position:absolute;
  left:18px; right:18px; bottom:8px;
  height:2px;
  background:var(--gold);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .25s ease;
}
.navbar.navbar-expand-lg .nav-link:hover{ color:var(--gold-light) !important; }
.navbar.navbar-expand-lg .nav-link:hover::after{ transform:scaleX(1); }
.navbar-toggler{ border-color:var(--line-on-ink) !important; }
.navbar-toggler .navbar-toggler-icon{
  background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath stroke='%23F6F1E7' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E") !important;
}
.dropdown-menu{
  border-radius:var(--radius) !important;
  border:1px solid var(--line) !important;
  box-shadow:var(--shadow-lift) !important;
}

/* ---------------------------------------------------------------------
   HERO / BANNER SLIDER
--------------------------------------------------------------------- */
.banner-text{ position:relative; }
.rslides li.banner{ position:relative; color:var(--paper); }
.rslides li.banner::before{
  content:"";
  position:absolute; inset:0;
  background:linear-gradient(100deg, rgba(28,26,30,0.72) 0%, rgba(28,26,30,0.38) 45%, rgba(28,26,30,0.05) 75%);
  z-index:0;
}
.rslides li.banner .container{ position:relative; z-index:1; }

.agile_btxt{
  font-family:'Fraunces', serif !important;
  font-style:italic;
  font-weight:500;
  font-size:2.6rem;
  color:var(--paper) !important;
  margin-bottom:6px;
}
.agile_btxt span{
  color:var(--gold-light) !important;
  font-style:normal;
  font-weight:700;
}
.w3_bbot{
  font-family:'Manrope', sans-serif !important;
  font-weight:500;
  letter-spacing:0.04em;
  text-transform:uppercase;
  font-size:0.85rem;
  color:rgba(246,241,231,0.78) !important;
}
.bn_right{
  font-family:'Fraunces', serif !important;
  font-weight:600;
  color:var(--paper) !important;
}
.bn_right span{ color:var(--gold-light) !important; font-style:italic; }

.bnr_clip{
  background:rgba(28,26,30,0.55);
  border:1px solid var(--line-on-ink);
  border-radius:var(--radius);
  padding:22px 26px;
  backdrop-filter:blur(2px);
}
.bnr_clip h4{
  color:var(--paper) !important;
  display:flex !important;
  align-items:center !important;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:4px;
}
.bnr_clip h4 span{
  color:var(--ink) !important;
  background:var(--gold-light);
  padding:2px 10px;
  border-radius:3px;
  font-weight:700;
}
.bnr_clip .btn.btn-primary{
  background:var(--wine) !important;
  border:1px solid var(--wine) !important;
  color:#fff !important;
  border-radius:999px !important;
  padding:10px 28px !important;
  font-weight:700;
  letter-spacing:0.03em;
  transition:background .2s ease, transform .2s ease;
}
.bnr_clip .btn.btn-primary:hover{
  background:var(--gold) !important;
  border-color:var(--gold) !important;
  color:var(--ink) !important;
  transform:translateY(-2px);
}
/* the O/F/F badge is normally absolutely positioned by the theme's own
   CSS (tuned for a smaller badge), which made it overlap the card edge.
   Pull it back into normal flow as a compact inline row instead. */
.banner-pos.position-absolute{
  position:static !important;
  inset:auto !important;
  top:auto !important; right:auto !important; left:auto !important; bottom:auto !important;
  display:flex !important;
  flex-direction:row !important;
  gap:6px !important;
  margin:0 !important;
}
.banner-pos .bg-flex-item{
  width:32px; height:32px;
  border-radius:50%;
  border:1px solid var(--gold-light);
  background:rgba(28,26,30,0.65);
  color:var(--gold-light) !important;
  display:flex; align-items:center; justify-content:center;
  font-family:'Fraunces', serif;
  font-weight:700;
  font-size:13px;
  margin-bottom:0;
}

/* ---------------------------------------------------------------------
   SERVICE STRIP (quality / cod / secure / delivery)
--------------------------------------------------------------------- */
.agileits-services{ background:var(--paper-2); }
.agileits-services-grids{
  text-align:center;
  transition:transform .2s ease, box-shadow .2s ease;
  border-right:1px solid var(--line);
}
.agileits-services-grids:last-child{ border-right:none; }
.agileits-services-grids .fas{
  display:inline-flex;
  align-items:center; justify-content:center;
  width:64px; height:64px;
  border-radius:50%;
  background:var(--paper);
  border:1px solid var(--line);
  color:var(--wine) !important;
  font-size:22px !important;
  box-shadow:var(--shadow-soft);
}
.agileits-services-grids h4{
  font-family:'Manrope', sans-serif !important;
  font-size:15px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.03em;
  color:var(--ink);
}
.agileits-services-grids:hover{ transform:translateY(-4px); }

/* ---------------------------------------------------------------------
   PRODUCT TABS SECTION
--------------------------------------------------------------------- */
.tabs_pro{ background:var(--paper); }
.tabs_pro .head_agileinfo{
  font-family:'Fraunces', serif !important;
  font-style:italic;
  font-weight:600;
  font-size:2rem;
  color:var(--ink);
}
.tabs_pro .head_agileinfo span{ color:var(--wine); font-style:normal; }

.nav-tabs.tabs-style-line{ border-bottom:1px solid var(--line); justify-content:center; }
.nav-tabs.tabs-style-line .nav-link{
  border:none !important;
  background:transparent !important;
  color:var(--text-muted) !important;
  font-family:'Manrope', sans-serif;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:0.03em;
  font-size:13px;
  padding:10px 20px;
  border-bottom:2px solid transparent !important;
}
.nav-tabs.tabs-style-line .nav-link.active{
  color:var(--wine) !important;
  border-bottom:2px solid var(--wine) !important;
}

/* owl carousel controls */
.owl-theme .owl-nav [class*='owl-']{
  background:var(--ink) !important;
  color:var(--paper) !important;
  border-radius:50% !important;
  width:38px; height:38px;
  display:flex; align-items:center; justify-content:center;
}
.owl-theme .owl-nav [class*='owl-']:hover{ background:var(--wine) !important; }
.owl-theme .owl-dots .owl-dot span{ background:var(--line) !important; }
.owl-theme .owl-dots .owl-dot.active span{ background:var(--wine) !important; }
.tabs_pro img{ transition:transform .35s ease; }
.tabs_pro .item:hover img{ transform:scale(1.04); }

/* ---------------------------------------------------------------------
   BUTTONS (global bootstrap overrides used across cart / forms)
--------------------------------------------------------------------- */
.btn{ border-radius:999px; font-weight:700; letter-spacing:0.02em; }
.btn-primary{
  background:var(--wine) !important;
  border-color:var(--wine) !important;
  color:#fff !important;
}
.btn-primary:hover{ background:var(--wine-2) !important; border-color:var(--wine-2) !important; }
.btn-success{
  background:var(--ink) !important;
  border-color:var(--ink) !important;
  color:var(--paper) !important;
}
.btn-success:hover{ background:var(--wine) !important; border-color:var(--wine) !important; }
.btn-secondary{
  background:transparent !important;
  border:1px solid var(--line) !important;
  color:var(--ink) !important;
}
.btn-secondary:hover{ background:var(--paper-2) !important; }

/* footer social icons reuse bootstrap outline-* contextual classes —
   unify them into one consistent brand treatment regardless of color */
.footer-v2grid .btn-outline-primary,
.footer-v2grid .btn-outline-danger,
.footer-v2grid .btn-outline-dark,
.footer-v2grid .btn-outline-success{
  width:44px; height:44px;
  display:inline-flex; align-items:center; justify-content:center;
  border-radius:50% !important;
  border:1px solid var(--gold) !important;
  color:var(--gold-light) !important;
  background:transparent !important;
  transition:background .2s ease, color .2s ease, transform .2s ease;
}
.footer-v2grid .btn-outline-primary:hover,
.footer-v2grid .btn-outline-danger:hover,
.footer-v2grid .btn-outline-dark:hover,
.footer-v2grid .btn-outline-success:hover{
  background:var(--gold) !important;
  color:var(--ink) !important;
  transform:translateY(-3px);
}

/* ---------------------------------------------------------------------
   FOOTER
--------------------------------------------------------------------- */
footer,
footer .footerv2-w3ls,
footer .footer-w3lagile-innerr,
footer .footer-v2grid,
footer .container-fluid{
  background:var(--ink) !important;
  color:rgba(246,241,231,0.78) !important;
}
.footerv2-w3ls{ padding-top:56px; }
.footer-v2grid h4{
  font-family:'Fraunces', serif !important;
  font-style:italic;
  color:var(--paper) !important;
  font-size:1.35rem;
  margin-bottom:6px;
}
.footer-v2grid ul{ list-style:none; padding-left:0; margin-top:18px; }
.footer-v2grid ul li{ margin-bottom:10px; }
.footer-v2grid ul li a{
  color:rgba(246,241,231,0.75) !important;
  font-size:14.5px;
  line-height:1.7;
}
.footer-v2grid ul li a:hover{ color:var(--gold-light) !important; }
.footer-v2grid ul li a b{ color:var(--gold-light); font-weight:700; }

footer .text-center p{
  border-top:1px solid var(--line-on-ink);
  margin-top:40px;
  padding-top:20px;
  font-size:13px;
  color:rgba(246,241,231,0.55) !important;
}
footer .text-center p a{ color:var(--gold-light) !important; font-weight:700; }

/* ---------------------------------------------------------------------
   MODALS (login / signup)
--------------------------------------------------------------------- */
.modal-content{
  border:none !important;
  border-radius:6px !important;
  overflow:hidden;
  box-shadow:var(--shadow-lift) !important;
}
.modal-header{
  background:var(--ink) !important;
  border-bottom:none !important;
  padding:20px 24px !important;
}
.modal-header .modal-title{
  font-family:'Fraunces', serif !important;
  font-style:italic;
  color:var(--paper) !important;
}
.modal-header .close{ color:var(--paper) !important; opacity:0.8; text-shadow:none; }
.modal-header .close:hover{ opacity:1; color:var(--gold-light) !important; }
.modal-body{ background:var(--paper); padding:28px !important; }

.form-group label{
  font-family:'Manrope', sans-serif;
  font-weight:700;
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:0.03em;
  color:var(--ink);
}
.form-control{
  border:1px solid var(--line) !important;
  border-radius:4px !important;
  padding:10px 14px !important;
  background:#fff !important;
}
.form-control:focus{
  border-color:var(--gold) !important;
  box-shadow:0 0 0 3px rgba(182,137,63,0.2) !important;
}
.right-w3l .btn-success{ border-radius:4px !important; padding:11px !important; }
#exampleModal1 a#btnResetPasswordEmail,
#exampleModal1 a#btnResendVerificationEmail{ font-size:13.5px; }

/* ---------------------------------------------------------------------
   MISC
--------------------------------------------------------------------- */
hr{ border-color:var(--line); }
.text-secondary{ color:var(--wine) !important; }
