.elementor-kit-48{--e-global-color-primary:#0E2233;--e-global-color-secondary:#07131F;--e-global-color-text:#27313C;--e-global-color-accent:#F5B820;--e-global-color-navy-700:#143049;--e-global-color-navy-500:#27537A;--e-global-color-ink-500:#5A6675;--e-global-color-steel-300:#C5CBD3;--e-global-color-steel-200:#E3E7EC;--e-global-color-paper:#F4F6F9;--e-global-color-paper-2:#EEF1F5;--e-global-color-gold-dark:#C8951A;--e-global-color-gold-light:#FDD670;--e-global-color-danger:#D94848;--e-global-typography-primary-font-family:"Oswald";--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Barlow Condensed";--e-global-typography-secondary-font-weight:800;--e-global-typography-secondary-font-style:italic;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Oswald";--e-global-typography-accent-font-weight:600;color:#27313C;font-family:"Inter", sans-serif;font-size:16px;font-weight:400;line-height:1.55em;}.elementor-kit-48 button,.elementor-kit-48 input[type="button"],.elementor-kit-48 input[type="submit"],.elementor-kit-48 .elementor-button{background-color:#F5B820;font-family:"Oswald", sans-serif;font-size:15px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:#07131F;box-shadow:0px 2px 8px 0px rgba(14,34,51,0.18);border-style:solid;border-width:1px 1px 1px 1px;border-color:#F5B820;border-radius:6px 6px 6px 6px;padding:14px 26px 14px 26px;}.elementor-kit-48 button:hover,.elementor-kit-48 button:focus,.elementor-kit-48 input[type="button"]:hover,.elementor-kit-48 input[type="button"]:focus,.elementor-kit-48 input[type="submit"]:hover,.elementor-kit-48 input[type="submit"]:focus,.elementor-kit-48 .elementor-button:hover,.elementor-kit-48 .elementor-button:focus{background-color:#FDD670;color:#07131F;box-shadow:0px 4px 14px 0px rgba(14,34,51,0.22);}.elementor-kit-48 e-page-transition{background-color:#FFBC7D;}.elementor-kit-48 a{color:#27537A;}.elementor-kit-48 a:hover{color:#143049;}.elementor-kit-48 h1{color:#0E2233;font-family:"Oswald", sans-serif;font-size:48px;font-weight:700;line-height:1.1em;letter-spacing:0.5px;}.elementor-kit-48 h2{color:#0E2233;font-family:"Oswald", sans-serif;font-size:36px;font-weight:700;line-height:1.2em;letter-spacing:0.5px;}.elementor-kit-48 h3{color:#0E2233;font-family:"Oswald", sans-serif;font-size:28px;font-weight:700;line-height:1.25em;}.elementor-kit-48 h4{color:#0E2233;font-family:"Oswald", sans-serif;font-size:22px;font-weight:700;line-height:1.3em;}.elementor-kit-48 h5{color:#0E2233;font-family:"Oswald", sans-serif;font-size:18px;font-weight:700;line-height:1.35em;}.elementor-kit-48 h6{color:#0E2233;font-family:"Oswald", sans-serif;font-size:16px;font-weight:700;line-height:1.4em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* Long Rifles Inc u2014 Kit utilities */
.elementor-section, .e-con { scroll-margin-top: 118px; }

.elementor-widget-button .elementor-button {
  transition: transform 120ms ease, box-shadow 120ms ease, background-color 120ms ease, color 120ms ease;
}
.elementor-widget-button .elementor-button:hover { transform: translateY(-1px); }

/* Signature section-title underline u2014 60x3 gold bar under the heading */
.lri-underline { position: relative; padding-bottom: 14px; }
.lri-underline::after {
  content: ''; position: absolute; left: 0; bottom: 0;
  width: 60px; height: 3px;
  background: var(--e-global-color-accent);
}
.lri-underline.centered::after { left: 50%; transform: translateX(-50%); }

/* Eyebrow label u2014 small Oswald uppercase gold text above a title */
.lri-eyebrow {
  font-family: 'Oswald', sans-serif;
  color: var(--e-global-color-accent);
  letter-spacing: 4px;
  text-transform: uppercase;
  font-size: 13px;
  display: inline-block;
  margin-bottom: 10px;
}


/* === Footer pay chips === */
.lri-footer-copyright,
.lri-pay-chips {
  width: auto;
  max-width: none;
}
.lri-pay-chips {
  margin-left: auto;
}
.lri-pay-chips p {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0;
  align-items: center;
}
.lri-pay-chips span {
  display: inline-block;
  background: rgba(255,255,255,0.08);
  padding: 4px 8px;
  border-radius: 3px;
  font-family: 'Oswald', sans-serif;
  font-size: 11px;
  letter-spacing: 1px;
  color: #fff;
  line-height: 1;
}



/* === Home: section cards === */

/* --- Hero: clamp height so 4K / tall viewports don't balloon it --- */
.lri-hero {
  min-height: clamp(520px, 62vh, 780px) !important;
  max-height: 820px;
}
@media (max-width: 900px) {
  .lri-hero { min-height: clamp(440px, 60vh, 620px) !important; }
}

/* --- 4-col grids (work in both boxed and full-width containers) --- */
.lri-cat-grid.e-con-full,
.lri-cat-grid > .e-con-inner,
.lri-product-grid.e-con-full,
.lri-product-grid > .e-con-inner,
.lri-service-grid.e-con-full,
.lri-service-grid > .e-con-inner,
.lri-best-grid.e-con-full,
.lri-best-grid > .e-con-inner {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  align-items: stretch;
}
@media (max-width: 1024px) {
  .lri-cat-grid.e-con-full,
  .lri-cat-grid > .e-con-inner,
  .lri-product-grid.e-con-full,
  .lri-product-grid > .e-con-inner,
  .lri-service-grid.e-con-full,
  .lri-service-grid > .e-con-inner,
  .lri-best-grid.e-con-full,
  .lri-best-grid > .e-con-inner { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
  .lri-cat-grid.e-con-full,
  .lri-cat-grid > .e-con-inner,
  .lri-product-grid.e-con-full,
  .lri-product-grid > .e-con-inner,
  .lri-service-grid.e-con-full,
  .lri-service-grid > .e-con-inner,
  .lri-best-grid.e-con-full,
  .lri-best-grid > .e-con-inner { grid-template-columns: 1fr; }
}

/* Cards must not self-stretch to 100%; grid controls their width. */
.lri-cat-card.e-con,
.lri-product-card.e-con,
.lri-best-card.e-con {
  width: auto !important;
  max-width: none;
  min-width: 0;
  transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}
.elementor-widget.lri-service-card {
  width: auto !important;
  max-width: none;
  transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

/* Category cards */
.lri-cat-card {
  background: #FFFFFF;
  border: 1px solid var(--e-global-color-steel-200, #E3E7EC);
  border-radius: 6px;
  overflow: hidden;
}
.lri-cat-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 24px rgba(14,34,51,0.08);
  border-color: var(--e-global-color-accent);
}
.lri-cat-card .lri-cat-img img {
  display: block; width: 100%; height: 180px; object-fit: cover;
}

/* Product cards */
.lri-product-card { background: #FFFFFF; border-radius: 6px; overflow: hidden; }
.lri-product-card:hover { transform: translateY(-3px); box-shadow: 0 8px 24px rgba(0,0,0,0.22); }
.lri-product-card .lri-product-media img {
  width: 100%; height: 200px; object-fit: cover; display: block;
}

/* Service cards — identical base look; whole card flips to primary on hover */
.elementor-widget.lri-service-card {
  background: #FFFFFF;
  border: 1px solid var(--e-global-color-steel-200, #E3E7EC);
  border-radius: 6px;
  padding: 28px 22px;
  transition: background-color 200ms ease, border-color 200ms ease, transform 180ms ease, box-shadow 180ms ease;
}
.elementor-widget.lri-service-card .elementor-icon,
.elementor-widget.lri-service-card .elementor-icon-box-title,
.elementor-widget.lri-service-card .elementor-icon-box-title > *,
.elementor-widget.lri-service-card .elementor-icon-box-description {
  transition: color 200ms ease;
}
.elementor-widget.lri-service-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 12px 28px rgba(14,34,51,0.22);
  background: var(--e-global-color-primary);
  border-color: var(--e-global-color-primary);
}
.elementor-widget.lri-service-card:hover .elementor-icon,
.elementor-widget.lri-service-card:hover .elementor-icon svg {
  color: var(--e-global-color-accent) !important;
  fill: var(--e-global-color-accent) !important;
}
.elementor-widget.lri-service-card:hover .elementor-icon-box-title,
.elementor-widget.lri-service-card:hover .elementor-icon-box-title > * {
  color: #FFFFFF !important;
}
.elementor-widget.lri-service-card:hover .elementor-icon-box-description {
  color: rgba(255,255,255,0.88) !important;
}

/* Best seller cards */
.lri-best-card {
  background: var(--e-global-color-navy-700, #143049);
  border-radius: 6px;
  overflow: hidden;
}
.lri-best-card:hover { transform: translateY(-3px); box-shadow: 0 8px 24px rgba(0,0,0,0.45); }
.lri-best-card .lri-best-media img {
  width: 100%; height: 180px; object-fit: cover; display: block;
}

/* About section */
.lri-about-media { position: relative; min-width: 0; }
.lri-about-media .lri-about-image img {
  width: 100%; height: auto; display: block; border-radius: 6px;
  box-shadow: 0 8px 24px rgba(14,34,51,0.12);
}
.lri-about-stat {
  position: absolute !important; right: -18px; bottom: -18px;
  width: auto !important; max-width: 160px;
  border-radius: 4px; box-shadow: 0 8px 24px rgba(14,34,51,0.18); z-index: 2;
}
@media (max-width: 767px) { .lri-about-stat { right: 8px; bottom: 8px; } }
.lri-about-body, .lri-testimonial-body { min-width: 0; }

/* About + testimonial two-column grid (both boxed → e-con-inner) */
.lri-about-row > .e-con-inner,
.lri-testimonial-row > .e-con-inner {
  display: grid !important;
  grid-template-columns: 1.1fr 1fr;
  gap: 40px;
  align-items: center;
}
@media (max-width: 900px) {
  .lri-about-row > .e-con-inner,
  .lri-testimonial-row > .e-con-inner { grid-template-columns: 1fr; }
}

/* Testimonial image — rounded + capped height */
.lri-testimonial-media img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 420px;
  object-fit: cover;
  border-radius: 8px;
  box-shadow: 0 8px 24px rgba(14,34,51,0.12);
}

/* Newsletter form */
.lri-newsletter-form .elementor-form { display: flex; gap: 8px; flex-wrap: wrap; }
.lri-newsletter-form .elementor-form input[type="email"] {
  background: #FFFFFF; border: 1px solid rgba(14,34,51,0.25); border-radius: 4px;
  padding: 12px 14px; font-family: 'Inter', sans-serif; font-size: 15px;
  min-width: 260px; flex: 1 1 260px;
}
.lri-newsletter-form .elementor-button {
  background: #07131F !important; color: #FFFFFF !important; border-color: #07131F !important;
}
.lri-newsletter-form .elementor-button:hover {
  background: #143049 !important; border-color: #143049 !important;
}

/* Ghost / outline button variants */
.lri-btn-ghost .elementor-button {
  background: transparent !important; color: #FFFFFF !important;
  border: 1px solid #FFFFFF !important;
}
.lri-btn-ghost .elementor-button:hover {
  background: #FFFFFF !important; color: var(--e-global-color-primary) !important; border-color: #FFFFFF !important;
}
.lri-btn-outline .elementor-button {
  background: transparent !important; color: var(--e-global-color-primary) !important;
  border: 1px solid var(--e-global-color-primary) !important;
}
.lri-btn-outline .elementor-button:hover {
  background: var(--e-global-color-primary) !important; color: #FFFFFF !important;
  border-color: var(--e-global-color-primary) !important;
}
.lri-btn-ghost-dark .elementor-button {
  background: transparent !important; color: var(--e-global-color-primary) !important;
  border: 1px solid var(--e-global-color-primary) !important;
}
.lri-btn-ghost-dark .elementor-button:hover {
  background: var(--e-global-color-primary) !important; color: #FFFFFF !important;
  border-color: var(--e-global-color-primary) !important;
}

/* === LRI About page === */
.lri-staff-grid{display:grid !important;grid-template-columns:repeat(4,1fr) !important;gap:20px;}
@media(max-width:1024px){.lri-staff-grid{grid-template-columns:repeat(2,1fr) !important;}}
@media(max-width:479px){.lri-staff-grid{grid-template-columns:1fr !important;}}
.lri-staff-card{background:#fff;border:1px solid var(--e-global-color-steel-200);overflow:hidden;}
.lri-staff-card img{width:100%;height:240px;object-fit:cover;display:block;}
.lri-staff-monogram{display:flex;align-items:center;justify-content:center;height:240px;background:var(--e-global-color-navy-700);}
.lri-mono-initials .elementor-heading-title{font-family:"Barlow Condensed",sans-serif;font-weight:800;font-style:italic;font-size:64px;color:var(--e-global-color-accent);line-height:1;}
/* === /LRI About page === */

/* === LRI utilities === */
.lri-grid-3{display:grid !important;grid-template-columns:repeat(3,1fr) !important;gap:20px;}
@media(max-width:900px){.lri-grid-3{grid-template-columns:repeat(2,1fr) !important;}}
@media(max-width:560px){.lri-grid-3{grid-template-columns:1fr !important;}}
.lri-grid-2{display:grid !important;grid-template-columns:repeat(2,1fr) !important;gap:20px;align-items:start;}
@media(max-width:700px){.lri-grid-2{grid-template-columns:1fr !important;}}
.lri-info-card{transition:transform .12s ease,box-shadow .12s ease;}
.lri-info-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(7,19,31,.10);}
.lri-btn-ghost-light .elementor-button{background:transparent !important;border:2px solid rgba(255,255,255,.55) !important;color:#fff !important;}
.lri-btn-ghost-light .elementor-button:hover{background:#fff !important;color:var(--e-global-color-primary) !important;border-color:#fff !important;}
.lri-legal h2,.lri-legal h3,.lri-legal h4{font-family:"Oswald",sans-serif;color:var(--e-global-color-primary);margin:1.4em 0 .4em;line-height:1.25;}
.lri-legal p{margin:0 0 1em;line-height:1.65;}
.lri-legal ul,.lri-legal ol{margin:0 0 1em 1.25em;}
.lri-legal li{margin-bottom:.4em;line-height:1.6;}
.lri-legal a{color:var(--e-global-color-navy-500);text-decoration:underline;}
/* === /LRI utilities === */

/* === LRI gravityforms === */
.gform_wrapper .gform_footer input[type=submit],.gform_wrapper button.gform_button,.gform_wrapper .gform-button{background:var(--e-global-color-accent) !important;color:var(--e-global-color-secondary) !important;border:2px solid var(--e-global-color-accent) !important;border-radius:6px !important;font-family:"Oswald",sans-serif !important;font-weight:600 !important;text-transform:uppercase !important;letter-spacing:.5px !important;padding:12px 28px !important;cursor:pointer;transition:background .12s ease,transform .12s ease;}
.gform_wrapper .gform_footer input[type=submit]:hover,.gform_wrapper button.gform_button:hover{background:var(--e-global-color-gold-light) !important;transform:translateY(-1px);}
.gform_wrapper .gfield_label{font-family:"Oswald",sans-serif;font-weight:600;color:var(--e-global-color-primary);}
.gform_wrapper .gfield_required{color:var(--e-global-color-danger);}
.gform_wrapper .gform_footer{margin-top:12px;}
/* dropdown clipping fix */
.gform_wrapper .gfield_select,.gform_wrapper .gfield--type-select select{height:auto !important;min-height:48px !important;line-height:1.5 !important;padding:11px 40px 11px 14px !important;box-sizing:border-box !important;background-position:right 14px center !important;}
/* === /LRI gravityforms === */

/* ===== LRI Sold Out badge (shop & category archives) ===== */
.woocommerce ul.products li.product.lri-soldout a.woocommerce-loop-product__link,
.woocommerce ul.products li.product.lri-soldout .woocommerce-loop-product__link{position:relative;display:block}
.woocommerce ul.products li.product.lri-soldout img{filter:grayscale(.35) opacity(.7);transition:filter .2s ease}
.lri-soldout-badge{position:absolute;top:12px;left:12px;z-index:3;display:inline-flex;align-items:center;gap:6px;padding:5px 12px;background:#0E2233;color:#F5B820;font-size:11px;font-weight:700;letter-spacing:.12em;line-height:1;text-transform:uppercase;border-radius:999px;border:1px solid rgba(245,184,32,.35);box-shadow:0 2px 8px rgba(7,19,31,.28);pointer-events:none}
.lri-soldout-badge::before{content:"";width:6px;height:6px;border-radius:50%;background:#F5B820;display:inline-block}
/* ===== end LRI Sold Out badge ===== *//* End custom CSS */