/* Harley-Davidson Ravenna | Hummingbird 9.x | v1.3
   Overrides are intentionally unlayered: parent uses CSS @layer.
   Based on inspected Hummingbird theme.css selectors and visual language of dealership website. */
:root,[data-bs-theme="light"]{
 --hd-ink:#141414;--hd-carbon:#202020;--hd-accent:#ef6a21;--hd-accent-hover:#d95211;
 --hd-paper:#0d0d0d;--hd-ivory:#151515;--hd-line:#383838;
 --bs-primary:#ef6a21;--bs-primary-rgb:239,106,33;
 --bs-link-color:#f58220;--bs-link-hover-color:#ff8520;
 --bs-body-bg:#000;--bs-body-color:#fefefe;--bs-secondary-bg:#111;--bs-tertiary-bg:#151515;--bs-border-color:#383838;--bs-secondary-color:#aaa;
 --bs-border-radius:0;--bs-border-radius-sm:0;--bs-border-radius-lg:0;
 --bs-font-sans-serif:Arial,Helvetica,sans-serif;
}
html,body{background:#000;color:#fefefe;-webkit-font-smoothing:antialiased}
body,#wrapper,main,.page,.page-wrapper,.page-content,.page-content--home,.wrapper__inner,.container-fluid{background-color:#000}
main{color:#fefefe}
p{color:inherit}
h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6,.section-title,.page-title,.product-miniature__title{
 font-family:'Arial Narrow','Roboto Condensed','Franklin Gothic Medium',Impact,Arial,sans-serif;
 font-weight:800;letter-spacing:.025em;line-height:1.12}
h1,h2,.h1,.h2,.section-title,.page-title{text-transform:uppercase}
h1,.h1{font-size:clamp(2rem,4vw,3.75rem)}
a{transition:color .2s ease}a:hover{color:var(--hd-accent-hover)}
/* Hummingbird uses .header-top, .ps-mainmenu and .footer__main (not Classic header-nav). */
#header,.header-top,.header-top__left,.header-top__right{background:var(--hd-ink);color:#fff}
#header a,.header-top a,#header button,.header-top button{color:#fff}
#header a:hover,.header-top a:hover,#header a:focus-visible{color:var(--hd-accent)}
#header .ps-mainmenu,.header-top .ps-mainmenu{background:var(--hd-ink)}
.ps-mainmenu .menu__link,.ps-mainmenu .menu__title,.ps-mainmenu a{
 font-weight:800;letter-spacing:.045em;text-transform:uppercase}
#header .ps-mainmenu .menu__link{color:#fff}
#header .ps-mainmenu .menu__link:hover,#header .ps-mainmenu .menu__link:focus-visible{color:var(--hd-accent)}
#header .ps-mainmenu .menu__list,#header .ps-mainmenu .menu--childrens{background:var(--hd-ink)}
#header .dropdown-menu,#header .popover,#header .sub-menu{background:var(--hd-carbon);color:#fff;border-color:#383838}
#header input,#header .form-control{background:#fff;color:#171717}
/* Bootstrap button variables need changing as well as background property. */
.btn-primary,.btn.btn-primary,.add-to-cart{
 --bs-btn-color:#141414;--bs-btn-bg:#ef6a21;--bs-btn-border-color:#ef6a21;
 --bs-btn-hover-color:#fff;--bs-btn-hover-bg:#d95211;--bs-btn-hover-border-color:#d95211;
 --bs-btn-active-color:#fff;--bs-btn-active-bg:#b9450e;--bs-btn-active-border-color:#b9450e;
 --bs-btn-focus-shadow-rgb:239,106,33;
 border-radius:0;font-weight:800;letter-spacing:.045em;text-transform:uppercase;
 transition:background-color .22s ease,border-color .22s ease,color .22s ease,transform .22s ease}
.btn-primary:hover,.add-to-cart:hover{transform:translateY(-2px)}
.btn-outline-primary{--bs-btn-color:#171717;--bs-btn-border-color:#171717;--bs-btn-hover-bg:#171717;--bs-btn-hover-border-color:#171717;--bs-btn-hover-color:#fff;border-radius:0}
.btn,.form-control,.form-select,.card,.modal-content,.dropdown-menu{border-radius:0}
.btn:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--hd-accent);outline-offset:3px}
/* Category and merchandising sections */
.page-content--home{row-gap:clamp(2rem,4vw,4.5rem)}
.section-title{border-bottom:1px solid #444;color:#fefefe;padding-bottom:.5rem}
.product-miniature{transition:transform .3s cubic-bezier(.2,.8,.2,1)}
.product-miniature__inner{border:1px solid var(--hd-line);background:#111;color:#fefefe;overflow:hidden;transition:border-color .25s ease,box-shadow .25s ease}
.product-miniature:hover .product-miniature__inner{border-color:#666;box-shadow:0 12px 32px rgb(0 0 0 / 45%)}
.product-miniature img{transition:transform .45s cubic-bezier(.2,.8,.2,1)}
.product-miniature:hover img{transform:scale(1.035)}
.product-miniature__title,.product-miniature .product-title{font-size:1.05rem;text-transform:uppercase}
.product-miniature .price,.product-miniature__price{font-weight:800;color:#fff}
.product-miniature__title a,.product-miniature .product-title a,.product-miniature a.product-title{color:#f58220}
.product-miniature__title a:hover,.product-miniature .product-title a:hover{color:#ff8520}
.page-category .block-category,.block-category{background:#151515;color:#fefefe;border-left:4px solid var(--hd-accent);padding:clamp(1rem,3vw,2rem)}
.breadcrumb{font-size:.8rem;text-transform:uppercase;letter-spacing:.045em}
.page-product .product__carousel,.page-product .product__thumbnail-image{border-radius:0}
/* Footer selectors from actual Hummingbird stylesheet */
.footer__main,#footer{background:var(--hd-ink);color:#d5d5d5}
.footer__main a,#footer a{color:#e5e5e5}
.footer__main a:hover,#footer a:hover{color:var(--hd-accent)}
.footer__main h2,.footer__main h3,.footer__main h4,#footer .h3{color:#fff;text-transform:uppercase;font-weight:800;letter-spacing:.035em}
.footer__main .form-control{background:#fff;color:#171717}
/* Hero and homepage banners: no forced aspect ratio, avoid breaking sliders */
.page-content--home .carousel,.page-content--home .banner{overflow:hidden}
.page-content--home .carousel img,.page-content--home .banner img{max-width:100%;height:auto}
/* Institutional-site dark palette mapped onto Hummingbird/Bootstrap surfaces. */
#content-wrapper,#content,.page-content--home>*,.featured-products,.product-accessories,.products-section,.custom-text,.block_newsletter,.block-contact,.card,.accordion-item,.modal-content,.offcanvas,.list-group-item{background-color:#000;color:#fefefe}
.page-content--home .custom-text,.page-content--home .customtext,.page-content--home [class*="custom-text"]{background:#000!important;color:#fefefe}
.page-content--home .custom-text h1,.page-content--home .custom-text h2,.page-content--home .custom-text h3,.page-content--home .custom-text h4,.page-content--home .customtext h1,.page-content--home .customtext h2,.page-content--home .customtext h3,.page-content--home .customtext h4{color:#fefefe}
.card,.accordion-item,.list-group-item{border-color:#383838}
.product-miniature,.product-miniature__inner,.product-miniature__info,.product-miniature__bottom{background:#111;color:#fefefe}
.product-miniature .product-description,.product-miniature__description{background:#111;color:#fefefe}
.product-miniature .regular-price,.product-miniature .product-price-and-shipping,.product-miniature .product-reference{color:#aaa}
.products.row,.products{background:#000}
.breadcrumb,.breadcrumb a{color:#aaa}.breadcrumb a:hover{color:#f58220}
.pagination,.pagination .page-link{background:#111;color:#fefefe;border-color:#383838}.pagination .page-link:hover,.pagination .active>.page-link{background:#f58220;color:#fff;border-color:#f58220}
.form-control,.form-select,input:not([type="checkbox"]):not([type="radio"]),textarea,select{background-color:#171717;color:#fefefe;border-color:#444}.form-control:focus,.form-select:focus,input:not([type="checkbox"]):not([type="radio"]):focus,textarea:focus,select:focus{background-color:#1d1d1d;color:#fff;border-color:#f58220;box-shadow:0 0 0 .2rem rgb(245 130 32 / 18%)}
.form-control::placeholder,input::placeholder,textarea::placeholder{color:#aaa;opacity:1}
/* Keep the header search field light, matching the institutional header. */
#header input,#header .form-control{background:#fff;color:#171717;border-color:#ddd}
#header input::placeholder,#header .form-control::placeholder{color:#666}
/* Legacy visual cue: orange section bars and dark content field. */
.page-content--home .section-title,.featured-products .section-title,.products-section .section-title{border-bottom:1px solid #444;color:#fefefe}
.page-content--home .section-title::after{content:"";display:block;width:64px;height:3px;background:#f58220;margin-top:.5rem}
hr{border-color:#444;opacity:1}
/* Scroll reveal: CSS is activated only AFTER JS has initialized each element.
   This prevents invisible content when scripts are blocked or fail to load. */
@media (prefers-reduced-motion:no-preference){
 .hd-reveal-ready{opacity:0;transform:translate3d(0,24px,0)}
 .hd-reveal-ready.hd-visible{animation:hdFadeInUp .72s cubic-bezier(.22,1,.36,1) var(--hd-delay,0ms) both}
 @keyframes hdFadeInUp{from{opacity:0;transform:translate3d(0,24px,0)}to{opacity:1;transform:none}}
}
@media (prefers-reduced-motion:reduce){.hd-reveal-ready{opacity:1!important;transform:none!important;transition:none!important}}
@media (max-width:767.98px){
 .ps-mainmenu .menu__link{letter-spacing:.01em}
 .product-miniature__title{font-size:.95rem}
 .page-content--home{row-gap:2rem}
 .btn-primary:hover,.add-to-cart:hover{transform:none}
}

/* ================================================================
   HD Ravenna v1.4 — immersive dark surfaces & micro-interactions
   ================================================================ */
:root,[data-bs-theme="light"]{
 --hd-bg:#050505;--hd-surface:#0d0d0d;--hd-surface-2:#151515;--hd-surface-3:#1b1b1b;
 --hd-orange:#f58220;--hd-orange-hot:#ff9a3d;--hd-glow:245 130 32;
 --hd-gradient-page:
   radial-gradient(ellipse 70% 42% at 15% 2%,rgb(245 130 32 / 10%),transparent 62%),
   radial-gradient(ellipse 55% 38% at 92% 32%,rgb(122 49 12 / 10%),transparent 68%),
   linear-gradient(180deg,#090909 0%,#030303 52%,#090909 100%);
}
html{background:#050505}
body{
 background:var(--hd-gradient-page)!important;
 background-attachment:fixed!important;
 min-height:100vh;
}
/* Let the atmospheric page background show through instead of painting every wrapper black. */
body #wrapper,body main,body .page,body .page-wrapper,body #content-wrapper,body #content,
body .page-content,body .page-content--home,body .wrapper__inner,body .products,body .products.row,
body .featured-products,body .product-accessories,body .products-section{background:transparent!important}

/* Header: layered carbon panel with a warm accent line. */
#header,.header-top{
 background:linear-gradient(180deg,#171717 0%,#0b0b0b 100%)!important;
 box-shadow:0 12px 34px rgb(0 0 0 / 34%);
 position:relative;
}
#header::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,rgb(var(--hd-glow)/55%),transparent);pointer-events:none}
#header .ps-mainmenu .menu__link{position:relative;transition:color .2s ease,transform .2s ease}
#header .ps-mainmenu .menu__link::after{content:"";position:absolute;left:.45rem;right:.45rem;bottom:.05rem;height:2px;background:linear-gradient(90deg,var(--hd-orange),var(--hd-orange-hot));transform:scaleX(0);transform-origin:center;transition:transform .28s cubic-bezier(.22,1,.36,1)}
#header .ps-mainmenu .menu__link:hover::after,#header .ps-mainmenu .menu__link:focus-visible::after{transform:scaleX(1)}

/* Content rhythm: alternating, subtly illuminated homepage sections. */
.page-content--home>section,.page-content--home>.featured-products,.page-content--home>.products-section,
.page-content--home>.custom-text,.page-content--home>.customtext,.page-content--home>[class*="custom-text"]{
 position:relative;
 background:linear-gradient(145deg,rgb(18 18 18 / 88%),rgb(6 6 6 / 92%))!important;
 border:1px solid rgb(255 255 255 / 6%);
 box-shadow:0 22px 65px rgb(0 0 0 / 28%);
 padding:clamp(1.25rem,2.6vw,2.5rem);
 overflow:hidden;
}
.page-content--home>section::before,.page-content--home>.featured-products::before,.page-content--home>.products-section::before,
.page-content--home>.custom-text::before,.page-content--home>.customtext::before,.page-content--home>[class*="custom-text"]::before{
 content:"";position:absolute;width:24rem;height:24rem;right:-14rem;top:-16rem;border-radius:50%;
 background:radial-gradient(circle,rgb(var(--hd-glow)/13%) 0%,transparent 70%);pointer-events:none
}

/* Section headings: stronger editorial hierarchy. */
.section-title,.page-title{
 position:relative;border:0!important;padding:0 0 .8rem!important;margin-bottom:1.4rem!important;
 letter-spacing:.045em;text-shadow:0 2px 18px rgb(0 0 0 / 60%);
}
.section-title::after,.page-title::after{
 content:"";position:absolute;left:0;bottom:0;width:clamp(70px,9vw,125px);height:3px;
 background:linear-gradient(90deg,var(--hd-orange),var(--hd-orange-hot),transparent);
 box-shadow:0 0 18px rgb(var(--hd-glow)/22%);
}

/* Product grid: cards feel tactile, but remain restrained and readable. */
.product-miniature{perspective:900px}
.product-miniature__inner{
 position:relative;background:linear-gradient(155deg,#181818 0%,#0b0b0b 70%)!important;
 border:1px solid rgb(255 255 255 / 9%)!important;
 box-shadow:0 10px 28px rgb(0 0 0 / 20%);
 transition:transform .38s cubic-bezier(.22,1,.36,1),border-color .3s ease,box-shadow .38s ease!important;
}
.product-miniature__inner::after{
 content:"";position:absolute;inset:0;pointer-events:none;opacity:0;
 background:linear-gradient(125deg,transparent 28%,rgb(var(--hd-glow)/7%) 52%,transparent 72%);
 transform:translateX(-25%);transition:opacity .3s ease,transform .55s cubic-bezier(.22,1,.36,1);
}
.product-miniature:hover .product-miniature__inner{
 transform:translateY(-7px);border-color:rgb(var(--hd-glow)/45%)!important;
 box-shadow:0 22px 50px rgb(0 0 0 / 46%),0 0 0 1px rgb(var(--hd-glow)/7%);
}
.product-miniature:hover .product-miniature__inner::after{opacity:1;transform:translateX(25%)}
.product-miniature__info,.product-miniature__bottom,.product-miniature .product-description{background:transparent!important}
.product-miniature__title a,.product-miniature .product-title a{transition:color .22s ease,text-shadow .22s ease}
.product-miniature:hover .product-miniature__title a,.product-miniature:hover .product-title a{color:var(--hd-orange-hot);text-shadow:0 0 18px rgb(var(--hd-glow)/12%)}
.product-miniature .price,.product-miniature__price{font-size:1.06em;letter-spacing:.015em}

/* Calls to action: orange energy without turning the UI into a neon theme. */
.btn-primary,.btn.btn-primary,.add-to-cart{
 position:relative;overflow:hidden;box-shadow:0 7px 20px rgb(var(--hd-glow)/12%);
 background:linear-gradient(135deg,#f58220,#e86616)!important;border-color:#f58220!important;
 transition:transform .24s ease,box-shadow .24s ease,filter .24s ease!important;
}
.btn-primary:hover,.btn.btn-primary:hover,.add-to-cart:hover{
 transform:translateY(-3px);filter:brightness(1.08);box-shadow:0 12px 28px rgb(var(--hd-glow)/25%);
}

/* Forms and search results get depth instead of flat grey rectangles. */
.form-control,.form-select,input:not([type="checkbox"]):not([type="radio"]),textarea,select{background:linear-gradient(180deg,#1a1a1a,#121212);transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}
.form-control:focus,.form-select:focus,input:not([type="checkbox"]):not([type="radio"]):focus,textarea:focus,select:focus{background:#171717;box-shadow:0 0 0 .2rem rgb(var(--hd-glow)/13%),0 8px 24px rgb(0 0 0 / 25%)}
#header input,#header .form-control{box-shadow:0 6px 22px rgb(0 0 0 / 18%)}

/* Category/product pages: distinct dark glass-like content panels. */
.block-category,.card,.accordion-item,.list-group-item,.modal-content,.offcanvas{
 background:linear-gradient(145deg,rgb(22 22 22 / 96%),rgb(9 9 9 / 96%))!important;
 border-color:rgb(255 255 255 / 9%)!important;
 box-shadow:0 16px 42px rgb(0 0 0 / 22%);
}
.page-category .block-category,.block-category{border-left:3px solid var(--hd-orange)!important}

/* Footer fades into the page instead of ending with a flat slab. */
.footer__main,#footer{background:linear-gradient(180deg,#101010 0%,#050505 75%,#020202 100%)!important;border-top:1px solid rgb(var(--hd-glow)/20%)}

/* Scrollbar is a small but noticeable branded detail on desktop browsers. */
@supports selector(::-webkit-scrollbar){
 ::-webkit-scrollbar{width:11px;height:11px}::-webkit-scrollbar-track{background:#080808}
 ::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#444,#242424);border:3px solid #080808}
 ::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,var(--hd-orange),#b94b0d)}
}

/* Extra reveal variants assigned by JS v1.4. */
@media (prefers-reduced-motion:no-preference){
 .hd-reveal-ready.hd-reveal-left{transform:translate3d(-30px,0,0)}
 .hd-reveal-ready.hd-reveal-right{transform:translate3d(30px,0,0)}
 .hd-reveal-ready.hd-visible.hd-reveal-left,.hd-reveal-ready.hd-visible.hd-reveal-right{animation:hdFadeInSide .72s cubic-bezier(.22,1,.36,1) var(--hd-delay,0ms) both}
 @keyframes hdFadeInSide{to{opacity:1;transform:none}}
}
@media (max-width:767.98px){
 body{background-attachment:scroll!important}
 .page-content--home>section,.page-content--home>.featured-products,.page-content--home>.products-section,.page-content--home>.custom-text,.page-content--home>.customtext,.page-content--home>[class*="custom-text"]{padding:1.1rem}
 .product-miniature:hover .product-miniature__inner{transform:none}
}

/* ================================================================
   HD Ravenna v1.5 — full-width navigation & refined product identity
   ================================================================ */
:root,[data-bs-theme="light"]{
 --hd-product-name:#e7e7e7;
 --hd-product-name-hover:#ff8a2a;
 --hd-nav-edge:clamp(1rem,4vw,4.5rem);
}

/* Product names: neutral by default, orange becomes an interaction/relevance cue. */
.product-miniature__title a,
.product-miniature .product-title a,
.product-miniature a.product-title{
 color:var(--hd-product-name)!important;
 font-weight:750;
 letter-spacing:.018em;
 line-height:1.16;
 text-decoration:none;
}
.product-miniature:hover .product-miniature__title a,
.product-miniature:hover .product-title a,
.product-miniature__title a:hover,
.product-miniature .product-title a:hover{
 color:var(--hd-product-name-hover)!important;
 text-shadow:0 0 20px rgb(var(--hd-glow)/16%);
}

/* Desktop menu becomes a genuine full-viewport navigation band. */
@media (min-width:1200px){
 #header .ps-mainmenu.ps-mainmenu--desktop{
  width:100vw;
  max-width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  padding-inline:var(--hd-nav-edge);
  background:linear-gradient(90deg,#090909 0%,#161616 48%,#090909 100%)!important;
  border-top:1px solid rgb(255 255 255 / 5%);
  border-bottom:1px solid rgb(var(--hd-glow)/24%);
  box-shadow:0 12px 28px rgb(0 0 0 / 26%);
 }
 #header .ps-mainmenu.ps-mainmenu--desktop .ps-mainmenu__tree{
  width:100%;
  justify-content:center;
  gap:clamp(.25rem,1vw,1rem);
 }
 #header .ps-mainmenu.ps-mainmenu--desktop .ps-mainmenu__tree>li .ps-mainmenu__tree-link{
  padding:1.05rem clamp(.55rem,.8vw,1rem);
  color:#f2f2f2;
  font-weight:800;
  letter-spacing:.035em;
  text-transform:uppercase;
 }
 #header .ps-mainmenu.ps-mainmenu--desktop .ps-mainmenu__tree>li .ps-mainmenu__tree-dropdown-toggle{
  color:#d8d8d8;
  padding-block:1.05rem;
 }
 #header .ps-mainmenu.ps-mainmenu--desktop .ps-mainmenu__tree>li.current .ps-mainmenu__tree-link{
  color:var(--hd-orange-hot)!important;
 }
 #header .ps-mainmenu.ps-mainmenu--desktop .submenu{
  width:100vw;
  left:50%;
  right:auto;
  transform:translateX(-50%);
  background:linear-gradient(180deg,rgba(24,24,24,.985),rgba(7,7,7,.99))!important;
  border-top:1px solid rgb(var(--hd-glow)/30%);
  box-shadow:0 28px 60px rgb(0 0 0 / 55%);
  backdrop-filter:blur(14px);
 }
}

/* More visual depth between merchandise blocks without compromising readability. */
.page-content--home>.featured-products:nth-of-type(odd),
.page-content--home>.products-section:nth-of-type(odd){
 background:
  radial-gradient(circle at 8% 15%,rgb(var(--hd-glow)/9%),transparent 24rem),
  linear-gradient(135deg,rgb(17 17 17 / 92%),rgb(5 5 5 / 94%))!important;
}
.page-content--home>.featured-products:nth-of-type(even),
.page-content--home>.products-section:nth-of-type(even){
 background:
  radial-gradient(circle at 92% 18%,rgb(120 45 10 / 10%),transparent 26rem),
  linear-gradient(225deg,rgb(18 18 18 / 90%),rgb(5 5 5 / 95%))!important;
}

/* Product image stage: white product photography feels intentional, not like an unstyled card. */
.product-miniature__top{
 background:linear-gradient(145deg,#f8f8f6,#ecebe8);
 border-bottom:1px solid rgb(255 255 255 / 7%);
}
.product-miniature__image{filter:saturate(.96) contrast(1.015);transition:transform .55s cubic-bezier(.22,1,.36,1),filter .35s ease!important}
.product-miniature:hover .product-miniature__image{filter:saturate(1.04) contrast(1.025)}
.product-miniature__bottom{padding:1rem .75rem 1.1rem!important}
.product-miniature__prices{padding-top:.15rem}

/* Discount badges and UI accents are tied together by the same warm tone. */
.product-miniature .badge,.product-flags .badge{
 border-radius:2px;
 border:1px solid rgb(var(--hd-glow)/55%);
 box-shadow:0 5px 15px rgb(0 0 0 / 20%);
}

/* Links in editorial content stay readable; orange is reserved for hover/action. */
main p a,main .rich-text a{color:#d8d8d8;text-decoration-color:rgb(var(--hd-glow)/55%)}
main p a:hover,main .rich-text a:hover{color:var(--hd-orange-hot)}

@media (max-width:1199.98px){
 #header .ps-mainmenu{box-shadow:none}
}

/* ================================================================
   HD Ravenna v1.6 — stable sticky header, disciplined nav, typography
   ================================================================ */
:root,[data-bs-theme="light"]{
 --hd-font-display:"Arial Narrow","Roboto Condensed","Helvetica Neue",Arial,sans-serif;
 --hd-font-ui:Inter,"Helvetica Neue",Arial,sans-serif;
 --hd-product-name:#f1f1ef;
}
html{scroll-padding-top:9rem}
body{font-family:var(--hd-font-ui)}
h1,h2,h3,h4,h5,h6,.section-title,.product-miniature__title,.product-title,
.ps-mainmenu__tree-link{font-family:var(--hd-font-display);font-stretch:condensed}

/* Hummingbird's own .header is sticky; reinforce it on the actual wrappers. */
#header,.header{
 position:sticky!important;top:0!important;z-index:1035!important;
 background:#090909!important;
 box-shadow:0 8px 30px rgb(0 0 0 / 38%);
}
.header-top{background:linear-gradient(180deg,#151515,#0c0c0c)!important;position:relative;z-index:3}
.header-bottom{background:#0b0b0b!important;position:relative;z-index:2;padding-block:0!important}

/* Product links: cover the real Hummingbird title/link variants and generic
   product-name links used by modules. Blue Bootstrap link colour must never win. */
.product-miniature__title,
.product-miniature__title a,
.product-miniature .product-title,
.product-miniature .product-title a,
.product-miniature a.product-title,
.product-miniature .product-name,
.product-miniature .product-name a,
.products .product-title a,
.featured-products .product-title a,
.product-accessories .product-title a,
a.product-miniature__title{
 color:var(--hd-product-name)!important;
 text-decoration:none!important;
 font-weight:800!important;
 letter-spacing:.025em;
}
.product-miniature__title a:visited,.product-miniature .product-title a:visited,.product-miniature .product-name a:visited{color:var(--hd-product-name)!important}
.product-miniature:hover .product-miniature__title a,
.product-miniature:hover .product-title a,
.product-miniature:hover .product-name a,
.product-miniature__title a:hover,.product-miniature .product-title a:hover,.product-miniature .product-name a:hover{
 color:var(--hd-orange-hot)!important;
}

@media (min-width:1200px){
 /* Do not stretch the menu widget itself: that was what made logo/search/menu
    fight for the same flex row. Stretch only its visual band. */
 #header .ps-mainmenu.ps-mainmenu--desktop{
  position:relative!important;width:100%!important;max-width:none!important;
  margin:0!important;padding:0!important;background:transparent!important;
  border:0!important;box-shadow:none!important;isolation:isolate;
 }
 #header .ps-mainmenu.ps-mainmenu--desktop::before{
  content:"";position:absolute;z-index:-1;top:0;bottom:0;
  left:50%;width:100vw;transform:translateX(-50%);
  background:linear-gradient(100deg,#070707 0%,#151515 48%,#0a0a0a 100%);
  border-top:1px solid rgb(255 255 255 / 5%);
  border-bottom:1px solid rgb(var(--hd-glow)/28%);
  box-shadow:0 12px 30px rgb(0 0 0 / 32%);
 }
 #header .ps-mainmenu.ps-mainmenu--desktop .ps-mainmenu__tree{
  display:flex!important;flex-wrap:nowrap!important;justify-content:center!important;
  align-items:stretch!important;gap:clamp(.05rem,.35vw,.4rem)!important;
  width:100%!important;margin:0 auto!important;
 }
 #header .ps-mainmenu.ps-mainmenu--desktop .ps-mainmenu__tree>li{flex:0 0 auto!important;white-space:nowrap}
 #header .ps-mainmenu.ps-mainmenu--desktop .ps-mainmenu__tree>li .ps-mainmenu__tree-link{
  padding:1rem clamp(.38rem,.55vw,.72rem)!important;font-size:clamp(.76rem,.72vw,.9rem)!important;
  line-height:1.15!important;font-weight:850!important;letter-spacing:.025em!important;color:#f4f4f2!important;
 }
 #header .ps-mainmenu.ps-mainmenu--desktop .ps-mainmenu__tree>li .ps-mainmenu__tree-dropdown-toggle{
  padding:1rem .15rem!important;color:#d8d8d5!important;
 }
 #header .ps-mainmenu.ps-mainmenu--desktop .submenu{top:100%!important}
}

/* Stronger editorial typography without importing external fonts. */
.section-title,.featured-products h2,.products-section h2,.page-content--home h2{
 font-weight:900!important;letter-spacing:.035em!important;text-transform:uppercase;
}
.product-miniature__price,.product-miniature .price{font-weight:850!important;letter-spacing:.01em}

@media(max-width:1199.98px){
 html{scroll-padding-top:6rem}
 #header,.header{top:0!important}
}

/* ==========================================================
   HD Ravenna v1.7 - true full-width navigation + homeslider
   ========================================================== */
@media (min-width:1200px){
  /* Hummingbird constrains header content with Bootstrap .container.
     Release only the navigation/header-bottom area to the viewport. */
  #header .header-bottom > .container,
  #header .header-bottom > .container-lg,
  #header .header-bottom > .container-xl,
  #header .header-bottom > .container-xxl,
  .header .header-bottom > .container,
  .header .header-bottom > .container-lg,
  .header .header-bottom > .container-xl,
  .header .header-bottom > .container-xxl{
    width:100%!important;
    max-width:none!important;
    padding-left:clamp(1.5rem,3vw,4rem)!important;
    padding-right:clamp(1.5rem,3vw,4rem)!important;
  }

  /* Let the menu use the complete available line rather than sitting in
     a centered max-width column. */
  #header .ps-mainmenu.ps-mainmenu--desktop,
  #header .ps-mainmenu.ps-mainmenu--desktop .ps-mainmenu__tree{
    width:100%!important;
    max-width:none!important;
  }
  #header .ps-mainmenu.ps-mainmenu--desktop .ps-mainmenu__tree{
    justify-content:space-between!important;
    gap:clamp(.15rem,.45vw,.7rem)!important;
  }

  /* The visual navigation band itself reaches both viewport edges. */
  #header .ps-mainmenu.ps-mainmenu--desktop::before{
    left:50%!important;
    right:auto!important;
    width:100vw!important;
    transform:translateX(-50%)!important;
  }
}

/* Home slider: escape the Bootstrap/container width while keeping the rest
   of the homepage aligned to the editorial grid. */
.page-content--home .carousel,
.page-content--home .homeslider,
.page-content--home #carousel,
body#index .carousel,
body#index .homeslider{
  position:relative;
  left:50%;
  width:100vw!important;
  max-width:100vw!important;
  margin-left:-50vw!important;
  margin-right:-50vw!important;
  border-left:0!important;
  border-right:0!important;
  border-radius:0!important;
}
.page-content--home .carousel-inner,
.page-content--home .carousel-item,
.page-content--home .carousel-item img,
.page-content--home .homeslider img,
body#index .carousel-inner,
body#index .carousel-item,
body#index .carousel-item img{
  width:100%!important;
  max-width:none!important;
}
.page-content--home .carousel-item img,
.page-content--home .homeslider img,
body#index .carousel-item img{
  display:block;
  object-fit:cover;
}

/* Keep full-bleed elements from producing a horizontal scrollbar. */
html,body{overflow-x:clip}

@media (max-width:1199.98px){
  /* Full-bleed slider also on tablet/mobile, but leave Hummingbird's
     native offcanvas navigation untouched. */
  .page-content--home .carousel,
  .page-content--home .homeslider,
  .page-content--home #carousel,
  body#index .carousel,
  body#index .homeslider{
    left:50%;width:100vw!important;max-width:100vw!important;
    margin-left:-50vw!important;margin-right:-50vw!important;
  }
}

/* ================================================================
   HD Ravenna v1.8 - viewport header, mega-menu grid, footer identity
   ================================================================ */
@media (min-width:1200px){
  /* Release every Bootstrap container inside the desktop header. The previous
     direct-child rule missed the actual nested Hummingbird container. */
  #header .header-bottom .container,
  #header .header-bottom .container-fluid,
  #header .header-bottom .container-lg,
  #header .header-bottom .container-xl,
  #header .header-bottom .container-xxl,
  .header .header-bottom .container,
  .header .header-bottom .container-fluid,
  .header .header-bottom .container-lg,
  .header .header-bottom .container-xl,
  .header .header-bottom .container-xxl{
    width:100%!important;max-width:none!important;
    padding-left:clamp(1.25rem,2.25vw,3rem)!important;
    padding-right:clamp(1.25rem,2.25vw,3rem)!important;
  }
  #header .header-bottom .row,.header .header-bottom .row{width:100%!important;margin-left:0!important;margin-right:0!important}

  /* Brand must scale, never be cropped by Hummingbird's stock max-height. */
  #header .header-bottom .navbar-brand,
  .header .header-bottom .navbar-brand{
    width:auto!important;max-width:260px!important;max-height:none!important;
    overflow:visible!important;display:flex!important;align-items:center!important;
  }
  #header .header-bottom .navbar-brand .logo,
  .header .header-bottom .navbar-brand .logo{
    width:auto!important;height:auto!important;max-width:clamp(145px,11vw,220px)!important;
    max-height:64px!important;object-fit:contain!important;object-position:left center!important;
  }

  /* True mega menu: direct subcategories are distributed across columns instead
     of growing vertically beyond the viewport. */
  #header .ps-mainmenu.ps-mainmenu--desktop .submenu{
    left:0!important;right:0!important;transform:none!important;width:100vw!important;
    max-width:none!important;max-height:min(72vh,650px)!important;overflow-y:auto!important;
    overflow-x:hidden!important;padding:0 clamp(1.25rem,2.25vw,3rem)!important;
  }
  #header .ps-mainmenu.ps-mainmenu--desktop .submenu>.container,
  #header .ps-mainmenu.ps-mainmenu--desktop .submenu .container,
  #header .ps-mainmenu.ps-mainmenu--desktop .submenu .container-xl,
  #header .ps-mainmenu.ps-mainmenu--desktop .submenu .container-xxl{
    width:100%!important;max-width:none!important;padding-left:0!important;padding-right:0!important;
  }
  #header .ps-mainmenu.ps-mainmenu--desktop .submenu__row{
    display:block!important;width:100%!important;margin:0!important;
  }
  #header .ps-mainmenu.ps-mainmenu--desktop .submenu__left{
    width:100%!important;max-width:none!important;flex:0 0 100%!important;
    display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:.55rem 1.25rem!important;border-right:0!important;padding:1.35rem 0!important;
  }
  #header .ps-mainmenu.ps-mainmenu--desktop .submenu__left-item{
    min-width:0!important;margin:0!important;padding:.85rem 1rem!important;
    border:1px solid rgb(255 255 255 / 5%)!important;
    background:linear-gradient(135deg,rgb(255 255 255 / 3%),rgb(255 255 255 / 1%))!important;
    font-family:var(--hd-font-display)!important;font-weight:850!important;
    letter-spacing:.025em!important;text-transform:uppercase;
  }
  #header .ps-mainmenu.ps-mainmenu--desktop .submenu__left-item:hover{
    border-color:rgb(var(--hd-glow)/40%)!important;
    background:linear-gradient(135deg,rgb(var(--hd-glow)/15%),rgb(255 255 255 / 2%))!important;
    transform:translateY(-1px);
  }
  #header .ps-mainmenu.ps-mainmenu--desktop .submenu__right{
    width:100%!important;max-width:none!important;flex:0 0 100%!important;
    border-top:1px solid rgb(255 255 255 / 6%);padding:1.25rem 0 1.5rem!important;
  }
  #header .ps-mainmenu.ps-mainmenu--desktop .submenu__right:empty{display:none!important}
}
@media (min-width:1500px){
 #header .ps-mainmenu.ps-mainmenu--desktop .submenu__left{grid-template-columns:repeat(5,minmax(0,1fr))!important}
}
@media (min-width:1200px) and (max-width:1399.98px){
 #header .ps-mainmenu.ps-mainmenu--desktop .submenu__left{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}

/* Newsletter becomes a deliberate brand strip rather than a white module. */
.block_newsletter,.block-newsletter,#blockEmailSubscription,
.footer-before .block_newsletter,.footer-before .block-newsletter,
.footer__before .block_newsletter,.footer__before .block-newsletter{
  color:#fff!important;
  background:
    radial-gradient(circle at 12% 35%,rgb(var(--hd-glow)/24%),transparent 28rem),
    linear-gradient(105deg,#17100c 0%,#0b0b0b 38%,#191919 72%,#080808 100%)!important;
  border-top:1px solid rgb(var(--hd-glow)/55%)!important;
  border-bottom:1px solid rgb(var(--hd-glow)/22%)!important;
  box-shadow:inset 0 1px rgb(255 255 255 / 4%),0 -14px 35px rgb(0 0 0 / 25%);
}
.block_newsletter>.container,.block-newsletter>.container,#blockEmailSubscription>.container{
  background:transparent!important;
}
.block_newsletter p,.block-newsletter p,#blockEmailSubscription p,
.block_newsletter .form-text,.block-newsletter .form-text,#blockEmailSubscription .form-text{color:#bdbdbd!important}
.block_newsletter h2,.block_newsletter h3,.block-newsletter h2,.block-newsletter h3,#blockEmailSubscription h2,#blockEmailSubscription h3{
 color:#fff!important;font-family:var(--hd-font-display)!important;font-weight:900!important;text-transform:uppercase;letter-spacing:.035em
}
.block_newsletter input[type=email],.block-newsletter input[type=email],#blockEmailSubscription input[type=email]{
 background:#101010!important;color:#fff!important;border:1px solid #3a3a3a!important;
 box-shadow:inset 0 0 0 1px rgb(255 255 255 / 2%)!important
}
.block_newsletter input[type=email]:focus,.block-newsletter input[type=email]:focus,#blockEmailSubscription input[type=email]:focus{
 border-color:var(--hd-orange)!important;box-shadow:0 0 0 .2rem rgb(var(--hd-glow)/15%)!important
}

/* Footer brand inserted by custom.js using the same store logo already loaded in header. */
.footer__main{position:relative!important;background:linear-gradient(180deg,#0c0c0c,#050505)!important}
.hd-footer-brand{display:flex;align-items:center;justify-content:flex-start;margin:0 auto 2rem;padding:0 0 1.5rem;border-bottom:1px solid rgb(255 255 255 / 8%)}
.hd-footer-brand img{display:block;width:auto;height:auto;max-width:230px;max-height:74px;object-fit:contain;filter:drop-shadow(0 8px 20px rgb(0 0 0 / 40%))}
@media(max-width:767.98px){.hd-footer-brand{justify-content:center}.hd-footer-brand img{max-width:190px;max-height:62px}}

/* ================================================================
   HD Ravenna v1.9 - viewport header geometry + clean mega menu
   ================================================================ */
@media (min-width:1200px){
  /* The whole lower header, not only its inner menu, owns the viewport. */
  #header .header-bottom,
  .header .header-bottom{
    width:100vw!important;
    max-width:100vw!important;
    margin-left:calc(50% - 50vw)!important;
    margin-right:calc(50% - 50vw)!important;
    padding-left:0!important;
    padding-right:0!important;
    overflow:visible!important;
  }
  #header .header-bottom > *,
  .header .header-bottom > *{
    width:100%!important;
    max-width:none!important;
  }
  #header .header-bottom .container,
  #header .header-bottom .container-fluid,
  #header .header-bottom .container-lg,
  #header .header-bottom .container-xl,
  #header .header-bottom .container-xxl,
  .header .header-bottom .container,
  .header .header-bottom .container-fluid,
  .header .header-bottom .container-lg,
  .header .header-bottom .container-xl,
  .header .header-bottom .container-xxl{
    width:100%!important;max-width:none!important;
    padding-left:clamp(1.5rem,7vw,7.5rem)!important;
    padding-right:clamp(1.5rem,7vw,7.5rem)!important;
  }

  /* Logo/search share the brand row. Search is removed from the nav flow. */
  #header .header-bottom{padding-top:.35rem!important}
  #header .header-bottom .navbar-brand,
  .header .header-bottom .navbar-brand{position:relative!important;z-index:8!important;margin-right:auto!important}
  #header .header-bottom .navbar-brand .logo,
  .header .header-bottom .navbar-brand .logo{
    max-width:220px!important;max-height:70px!important;width:auto!important;height:auto!important;
    object-fit:contain!important;object-position:left center!important;
  }
  #header #search_widget,
  #header .search-widget,
  #header .searchbar,
  .header #search_widget,
  .header .search-widget{
    position:absolute!important;
    top:clamp(.7rem,1.1vw,1.15rem)!important;
    right:clamp(1.5rem,7vw,7.5rem)!important;
    left:auto!important;
    width:clamp(250px,20vw,340px)!important;
    max-width:340px!important;
    z-index:12!important;
    margin:0!important;
  }

  /* Navigation is its own full-width row below brand/search. */
  #header .ps-mainmenu.ps-mainmenu--desktop{
    width:100%!important;max-width:none!important;clear:both!important;
    margin-top:.35rem!important;position:relative!important;
  }
  #header .ps-mainmenu.ps-mainmenu--desktop .ps-mainmenu__tree{
    width:100%!important;max-width:none!important;justify-content:space-between!important;
  }

  /* Mega-menu is anchored to the viewport-width header and can never escape it. */
  #header .ps-mainmenu.ps-mainmenu--desktop .submenu{
    left:calc(-1 * clamp(1.5rem,7vw,7.5rem))!important;
    right:auto!important;
    transform:none!important;
    width:100vw!important;max-width:100vw!important;
    box-sizing:border-box!important;
    padding-left:clamp(1.5rem,7vw,7.5rem)!important;
    padding-right:clamp(1.5rem,7vw,7.5rem)!important;
    overflow-x:hidden!important;
  }
  #header .ps-mainmenu.ps-mainmenu--desktop .submenu__left{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    width:100%!important;box-sizing:border-box!important;
  }
  #header .ps-mainmenu.ps-mainmenu--desktop .submenu__left-item,
  #header .ps-mainmenu.ps-mainmenu--desktop .submenu__left-item a{
    min-width:0!important;max-width:100%!important;overflow-wrap:anywhere!important;
  }
}
@media (min-width:1600px){
  #header .ps-mainmenu.ps-mainmenu--desktop .submenu__left{grid-template-columns:repeat(5,minmax(0,1fr))!important}
}

/* Footer headings: orange rule spans the complete column width. */
.footer__main .footer-block__title,
.footer__main .footer_title_2,
.footer__main [class*="footer_title_2"]{
  position:relative!important;
  display:block!important;
  width:100%!important;
  padding-bottom:.8rem!important;
  margin-bottom:1rem!important;
  border-bottom:2px solid var(--hd-orange)!important;
}
.footer__main .footer-block__title::after,
.footer__main .footer_title_2::after,
.footer__main [class*="footer_title_2"]::after{content:none!important}

/* ================================================================
   HD Ravenna v1.10 - deterministic brand/search row + viewport mega menu
   ================================================================ */
@media (min-width:1200px){
  /* JS groups logo and search in this dedicated row. This avoids relying on
     Hummingbird module order, which can change between hook configurations. */
  #header .hd-brand-search-row,
  .header .hd-brand-search-row{
    display:flex!important;align-items:center!important;justify-content:space-between!important;
    width:100%!important;max-width:none!important;min-height:76px!important;
    padding:0 clamp(1.5rem,3.5vw,4.5rem)!important;gap:2rem!important;
    box-sizing:border-box!important;position:relative!important;z-index:1032!important;
  }
  #header .hd-brand-search-row .navbar-brand,
  .header .hd-brand-search-row .navbar-brand{
    position:static!important;display:flex!important;align-items:center!important;
    flex:0 0 auto!important;margin:0!important;overflow:visible!important;
  }
  #header .hd-brand-search-row .navbar-brand .logo,
  .header .hd-brand-search-row .navbar-brand .logo{
    display:block!important;width:auto!important;height:auto!important;
    max-width:220px!important;max-height:68px!important;object-fit:contain!important;
  }
  #header .hd-brand-search-row .hd-header-search,
  .header .hd-brand-search-row .hd-header-search{
    position:static!important;inset:auto!important;transform:none!important;
    flex:0 0 clamp(270px,22vw,360px)!important;width:clamp(270px,22vw,360px)!important;
    max-width:360px!important;margin:0!important;z-index:auto!important;
  }
  #header .hd-brand-search-row .hd-header-search form,
  #header .hd-brand-search-row .hd-header-search .input-group,
  .header .hd-brand-search-row .hd-header-search form,
  .header .hd-brand-search-row .hd-header-search .input-group{width:100%!important;margin:0!important}

  /* Once grouped, the navigation is a clean independent row. */
  #header .header-bottom .ps-mainmenu.ps-mainmenu--desktop,
  .header .header-bottom .ps-mainmenu.ps-mainmenu--desktop{
    width:100%!important;max-width:none!important;margin:0!important;position:relative!important;
    padding:0 clamp(1rem,2.4vw,3rem)!important;box-sizing:border-box!important;
  }
  #header .ps-mainmenu.ps-mainmenu--desktop .ps-mainmenu__tree{
    width:100%!important;display:flex!important;flex-wrap:nowrap!important;
    justify-content:space-between!important;gap:clamp(.25rem,.7vw,.75rem)!important;
  }
  #header .ps-mainmenu.ps-mainmenu--desktop .ps-mainmenu__tree>li{min-width:0!important;flex:0 1 auto!important}
  #header .ps-mainmenu.ps-mainmenu--desktop .ps-mainmenu__tree-link{
    white-space:nowrap!important;padding-left:clamp(.25rem,.55vw,.55rem)!important;
    padding-right:clamp(.25rem,.55vw,.55rem)!important;
  }

  /* The submenu is fixed to the browser viewport, not to a padded ancestor.
     JS updates --hd-mega-top from the real bottom edge of the nav row. */
  #header .ps-mainmenu.ps-mainmenu--desktop .submenu,
  .header .ps-mainmenu.ps-mainmenu--desktop .submenu{
    position:fixed!important;left:0!important;right:0!important;
    top:var(--hd-mega-top,165px)!important;width:100vw!important;max-width:100vw!important;
    margin:0!important;transform:none!important;box-sizing:border-box!important;
    padding-left:clamp(1.5rem,3.5vw,4.5rem)!important;
    padding-right:clamp(1.5rem,3.5vw,4.5rem)!important;
    max-height:calc(100vh - var(--hd-mega-top,165px) - 12px)!important;
    overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain!important;
  }
  #header .ps-mainmenu.ps-mainmenu--desktop .submenu>.container,
  #header .ps-mainmenu.ps-mainmenu--desktop .submenu .container,
  #header .ps-mainmenu.ps-mainmenu--desktop .submenu .container-xl,
  #header .ps-mainmenu.ps-mainmenu--desktop .submenu .container-xxl{
    width:100%!important;max-width:none!important;padding-left:0!important;padding-right:0!important;
    margin-left:auto!important;margin-right:auto!important;box-sizing:border-box!important;
  }
}

/* ================================================================
   HD Ravenna v1.11 - header isolation, newsletter CTA, cleaner cards
   ================================================================ */
@media (min-width:1200px){
  #header .hd-brand-search-row,.header .hd-brand-search-row{
    order:-2!important;position:relative!important;z-index:1033!important;
    background:linear-gradient(180deg,#101010 0%,#0b0b0b 100%)!important;
    border-bottom:1px solid rgb(255 255 255 / 5%)!important;
  }
  #header .hd-brand-search-row .navbar-brand,
  #header .hd-brand-search-row .hd-header-search{z-index:1!important}
  #header .ps-mainmenu.ps-mainmenu--desktop,.header .ps-mainmenu.ps-mainmenu--desktop{order:-1!important}
  #header .ps-mainmenu.ps-mainmenu--desktop .submenu .navbar-brand,
  #header .ps-mainmenu.ps-mainmenu--desktop .submenu .hd-header-search{display:none!important}
}

/* Exact Hummingbird newsletter markup: strong branded strip, no Bootstrap white. */
#emailsubscription_anchor_displayFooterBefore.ps-emailsubscription{
  position:relative!important;isolation:isolate;overflow:hidden;
  color:#fff!important;
  background:
    radial-gradient(ellipse at 88% 45%,rgb(var(--hd-glow)/16%) 0%,transparent 34%),
    radial-gradient(ellipse at 8% 120%,rgb(var(--hd-glow)/9%) 0%,transparent 38%),
    linear-gradient(112deg,#090909 0%,#141414 48%,#0b0b0b 100%)!important;
  border-top:2px solid var(--hd-orange)!important;
  border-bottom:1px solid rgb(255 255 255 / 8%)!important;
  box-shadow:inset 0 1px 0 rgb(255 255 255 / 4%),0 -18px 42px rgb(0 0 0 / 28%)!important;
  padding-top:2.25rem!important;padding-bottom:2.25rem!important;
}
#emailsubscription_anchor_displayFooterBefore.ps-emailsubscription::before{
  content:"";position:absolute;z-index:-1;pointer-events:none;
  width:28rem;height:28rem;right:-12rem;top:-13rem;transform:rotate(18deg);
  border:1px solid rgb(var(--hd-glow)/16%);box-shadow:0 0 70px rgb(var(--hd-glow)/7%);
}
#emailsubscription_anchor_displayFooterBefore .container{position:relative;background:transparent!important}
#emailsubscription_anchor_displayFooterBefore .row{align-items:center!important;row-gap:1rem}
#emailsubscription_anchor_displayFooterBefore .h3{
  color:#fff!important;font-family:var(--hd-font-display)!important;font-weight:900!important;
  text-transform:uppercase;letter-spacing:.045em;line-height:1.05;margin-bottom:0!important;
  font-size:clamp(1.35rem,2vw,2rem)!important;
}
#emailsubscription_anchor_displayFooterBefore .h3::after{
  content:"";display:block;width:72px;height:3px;margin-top:.75rem;
  background:linear-gradient(90deg,var(--hd-orange),#ff9b45);box-shadow:0 0 18px rgb(var(--hd-glow)/20%);
}
#emailsubscription_anchor_displayFooterBefore form{position:relative}
#emailsubscription_anchor_displayFooterBefore .form-control{
  min-height:48px;background:#080808!important;color:#fff!important;
  border:1px solid #393939!important;border-radius:0!important;padding-inline:1rem!important;
  box-shadow:inset 0 1px 0 rgb(255 255 255 / 3%)!important;
}
#emailsubscription_anchor_displayFooterBefore .form-control::placeholder{color:#9a9a9a!important}
#emailsubscription_anchor_displayFooterBefore .form-control:focus{
  border-color:var(--hd-orange)!important;box-shadow:0 0 0 3px rgb(var(--hd-glow)/12%)!important;
}
#emailsubscription_anchor_displayFooterBefore .btn-primary{
  min-height:48px;border-radius:0!important;padding-inline:1.4rem!important;font-weight:900!important;
  text-transform:uppercase;letter-spacing:.035em;box-shadow:none!important;
}
#emailsubscription_anchor_displayFooterBefore .text-body-secondary,
#emailsubscription_anchor_displayFooterBefore .fs-6{color:#a9a9a9!important;line-height:1.45!important}
@media(max-width:991.98px){
 #emailsubscription_anchor_displayFooterBefore.ps-emailsubscription{padding:1.75rem 0!important}
 #emailsubscription_anchor_displayFooterBefore .h3{margin-bottom:.35rem!important}
}

/* Product hover: orange is an accent, never a background glow. */
.product-miniature__inner::after{content:none!important;display:none!important}
.product-miniature:hover .product-miniature__inner{
  transform:translateY(-6px)!important;
  border-color:rgb(var(--hd-glow)/55%)!important;
  box-shadow:0 20px 42px rgb(0 0 0 / 48%)!important;
  background:linear-gradient(155deg,#181818 0%,#0b0b0b 70%)!important;
}
.product-miniature:hover .product-miniature__title a,
.product-miniature:hover .product-title a,
.product-miniature:hover .product-name a{
  color:var(--hd-orange-hot)!important;text-shadow:none!important;
}
.product-miniature:hover .product-miniature__image{transform:scale(1.025)!important;filter:saturate(1.01) contrast(1.02)!important}

/* ================================================================
   HD Ravenna v1.22 - CLEAN responsive navigation
   Legacy v1.12-v1.21 responsive overrides were removed, not overridden.
   ================================================================ */

:root,[data-bs-theme="light"]{
  --bs-link-color:#ff9a40!important;
  --bs-link-color-rgb:255,154,64!important;
  --bs-link-hover-color:#f58220!important;
  --bs-link-hover-color-rgb:245,130,32!important;
}

/* Desktop navigation: white at rest, orange on actual link/row hover. */
@media (min-width:1200px){
  #header .ps-mainmenu--desktop .ps-mainmenu__tree-link,
  .header .ps-mainmenu--desktop .ps-mainmenu__tree-link{
    color:#f4f4f2!important;
    -webkit-text-fill-color:#f4f4f2!important;
    transition:color .18s ease,-webkit-text-fill-color .18s ease,text-shadow .18s ease!important;
  }
  #header .ps-mainmenu--desktop .ps-mainmenu__tree-link:hover,
  #header .ps-mainmenu--desktop .ps-mainmenu__tree-link:focus,
  #header .ps-mainmenu--desktop .ps-mainmenu__tree-item:hover > .ps-mainmenu__tree-item-wrapper > .ps-mainmenu__tree-link,
  #header .ps-mainmenu--desktop .ps-mainmenu__tree-item-wrapper:hover > .ps-mainmenu__tree-link,
  .header .ps-mainmenu--desktop .ps-mainmenu__tree-link:hover,
  .header .ps-mainmenu--desktop .ps-mainmenu__tree-link:focus,
  .header .ps-mainmenu--desktop .ps-mainmenu__tree-item:hover > .ps-mainmenu__tree-item-wrapper > .ps-mainmenu__tree-link,
  .header .ps-mainmenu--desktop .ps-mainmenu__tree-item-wrapper:hover > .ps-mainmenu__tree-link{
    color:#f58220!important;
    -webkit-text-fill-color:#f58220!important;
    text-shadow:0 0 10px rgb(245 130 32 / 20%)!important;
    background:transparent!important;
  }
}

/* One and only responsive offcanvas implementation. */
@media (max-width:1199.98px){
  #header .hd-brand-search-row,.header .hd-brand-search-row{display:none!important}

  /* The desktop host stays only because Hummingbird keeps the hamburger here. */
  #header .header-bottom__row > .ps-mainmenu--desktop,
  .header .header-bottom__row > .ps-mainmenu--desktop{
    display:flex!important;flex:0 0 auto!important;width:auto!important;max-width:none!important;
    margin:0!important;padding:0!important;align-items:stretch!important;
  }
  #header .ps-mainmenu--desktop > .ps-mainmenu__tree,
  .header .ps-mainmenu--desktop > .ps-mainmenu__tree{display:none!important}
  #header .ps-mainmenu--desktop .ps-mainmenu__mobile-toggle,
  .header .ps-mainmenu--desktop .ps-mainmenu__mobile-toggle{display:flex!important;align-items:center!important}

  /* Canvas: fixed, full viewport height, never participates in header layout. */
  #mobileMenu.ps-mainmenu--mobile.offcanvas{
    position:fixed!important;top:0!important;bottom:0!important;left:0!important;right:auto!important;
    width:min(400px,86vw)!important;height:100dvh!important;min-height:100dvh!important;max-height:100dvh!important;
    margin:0!important;padding:0!important;display:flex!important;flex-direction:column!important;
    overflow:hidden!important;background:#101010!important;border-right:1px solid rgb(255 255 255 / 8%)!important;
    box-shadow:18px 0 42px rgb(0 0 0 / 48%)!important;z-index:2020!important;
  }

  /* Close bar always visible at every responsive width. */
  #mobileMenu > .offcanvas-header{
    position:relative!important;display:flex!important;visibility:visible!important;opacity:1!important;
    flex:0 0 52px!important;width:100%!important;height:52px!important;min-height:52px!important;
    margin:0!important;padding:6px 10px!important;align-items:center!important;justify-content:flex-end!important;
    background:#101010!important;border-bottom:1px solid rgb(255 255 255 / 8%)!important;z-index:5!important;
  }
  #mobileMenu > .offcanvas-header .btn-close{
    position:relative!important;display:block!important;visibility:visible!important;opacity:1!important;
    flex:0 0 40px!important;width:40px!important;height:40px!important;margin:0!important;padding:0!important;
    background:none!important;filter:none!important;color:#fff!important;z-index:6!important;
  }
  #mobileMenu > .offcanvas-header .btn-close::before{
    content:"×"!important;position:absolute!important;inset:0!important;display:flex!important;align-items:center!important;
    justify-content:center!important;color:#fff!important;font:300 34px/1 Arial,sans-serif!important;
  }

  /* Native Hummingbird category tree: same DOM at tablet and phone widths. */
  #mobileMenu > .ps-mainmenu__mobile{
    position:relative!important;display:block!important;visibility:visible!important;opacity:1!important;
    flex:1 1 auto!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;
    margin:0!important;padding:0!important;overflow-x:hidden!important;overflow-y:auto!important;background:#101010!important;
  }
  #mobileMenu > .ps-mainmenu__mobile .ps-mainmenu__tree,
  #mobileMenu > .ps-mainmenu__mobile > ul{
    display:block!important;visibility:visible!important;opacity:1!important;width:100%!important;height:auto!important;
    margin:0!important;padding:0!important;
  }

  /* Contact is a footer of the canvas, never fixed/absolute/centred. */
  #mobileMenu > .ps-mainmenu__additionnals.offcanvas-body,
  #mobileMenu > .ps-mainmenu__additional.offcanvas-body{
    position:static!important;display:block!important;visibility:visible!important;opacity:1!important;
    flex:0 0 auto!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;
    margin:0!important;padding:0!important;overflow:visible!important;background:#0b0b0b!important;
    border-top:1px solid rgb(255 255 255 / 10%)!important;
  }
  #mobileMenu #_mobile_ps_contactinfo{display:block!important;width:100%!important;margin:0!important;padding:1rem 1.25rem!important;background:#0b0b0b!important}
  #mobileMenu .ps-contactinfo__phone{color:#fff!important;-webkit-text-fill-color:#fff!important}
  #mobileMenu .ps-contactinfo__phone:hover,#mobileMenu .ps-contactinfo__phone:focus{color:#f58220!important;-webkit-text-fill-color:#f58220!important}

  .offcanvas-backdrop{z-index:1990!important;pointer-events:auto!important}
  #header .header-top,.header .header-top{z-index:1!important}
  #header .header-bottom,.header .header-bottom{z-index:20!important}
}

/* Home and external page container use the photographic texture. */
#wrapper,
body:not(#index) #wrapper{
  background-color:#070707!important;
  background-image:linear-gradient(180deg,rgb(5 5 5 / 82%),rgb(8 8 8 / 35%) 45%,rgb(5 5 5 / 50%)),url('../../img/bg.jpg')!important;
  background-size:cover!important;background-position:center top!important;background-repeat:no-repeat!important;background-attachment:fixed!important;
}
.page-content--home>section,.page-content--home>.featured-products,.page-content--home>.products-section,.page-content--home>.custom-text,.page-content--home>.customtext,.page-content--home>[class*="custom-text"]{
  position:relative;background:linear-gradient(145deg,rgb(18 18 18 / 40%),rgb(6 6 6 / 70%))!important;
  border:1px solid rgb(255 255 255 / 6%);box-shadow:0 22px 65px rgb(0 0 0 / 28%);padding:clamp(1.25rem,2.6vw,2.5rem);overflow:hidden;
}

/* Product detail and product-list center columns are solid black panels. */
body#product #wrapper .center-column,body#product #wrapper #center-column,
body.page-product #wrapper .center-column,body.page-product #wrapper #center-column,
body#category #wrapper .center-column,body#category #wrapper #center-column,
body#search #wrapper .center-column,body#search #wrapper #center-column,
body#manufacturer #wrapper .center-column,body#manufacturer #wrapper #center-column,
body#supplier #wrapper .center-column,body#supplier #wrapper #center-column,
body#prices-drop #wrapper .center-column,body#prices-drop #wrapper #center-column,
body#new-products #wrapper .center-column,body#new-products #wrapper #center-column,
body#best-sales #wrapper .center-column,body#best-sales #wrapper #center-column{
  background:#070707!important;background-color:#070707!important;background-image:none!important;
}

.btn-outline-primary{
  --bs-btn-color:#fff;--bs-btn-border-color:#171717;--bs-btn-hover-bg:#171717;--bs-btn-hover-border-color:#171717;--bs-btn-hover-color:#fff;border-radius:0;
}

@media (max-width:767.98px){
  #wrapper,body:not(#index) #wrapper{background-attachment:scroll!important;background-position:center top!important}
}

/* ================================================================
   HD Ravenna v1.23 - page background scope
   Home: photographic background on wrapper and center column.
   Catalog/product pages: fully monochromatic, no photographic texture.
   ================================================================ */

/* Homepage: restore the agreed photographic texture also on the center column. */
body#index #wrapper,
body#index #wrapper .center-column,
body#index #wrapper #center-column{
  background-color:#070707!important;
  background-image:linear-gradient(180deg,rgb(5 5 5 / 82%),rgb(8 8 8 / 35%) 45%,rgb(5 5 5 / 50%)),url('../../img/bg.jpg')!important;
  background-size:cover!important;
  background-position:center top!important;
  background-repeat:no-repeat!important;
  background-attachment:fixed!important;
}

/* Product detail + every product-list context: one solid monochromatic background. */
body#product #wrapper,
body#product #wrapper .center-column,
body#product #wrapper #center-column,
body.page-product #wrapper,
body.page-product #wrapper .center-column,
body.page-product #wrapper #center-column,
body#category #wrapper,
body#category #wrapper .center-column,
body#category #wrapper #center-column,
body#search #wrapper,
body#search #wrapper .center-column,
body#search #wrapper #center-column,
body#manufacturer #wrapper,
body#manufacturer #wrapper .center-column,
body#manufacturer #wrapper #center-column,
body#supplier #wrapper,
body#supplier #wrapper .center-column,
body#supplier #wrapper #center-column,
body#prices-drop #wrapper,
body#prices-drop #wrapper .center-column,
body#prices-drop #wrapper #center-column,
body#new-products #wrapper,
body#new-products #wrapper .center-column,
body#new-products #wrapper #center-column,
body#best-sales #wrapper,
body#best-sales #wrapper .center-column,
body#best-sales #wrapper #center-column{
  background:#070707!important;
  background-color:#070707!important;
  background-image:none!important;
}

@media (max-width:767.98px){
  body#index #wrapper,
  body#index #wrapper .center-column,
  body#index #wrapper #center-column{
    background-attachment:scroll!important;
  }
}

/* ================================================================
   HD Ravenna v1.24 - CMS page surface
   ================================================================ */
body#cms .columns-container.container,
body.page-cms .columns-container.container {
  background:#070707!important;
  background-image:none!important;
}

/* ================================================================
   HD Ravenna v1.25 - reassurance icons + floating utilities
   ================================================================ */
/* Customer reassurance icons - Harley orange */
.blockreassurance svg,
.blockreassurance svg *,
.block-reassurance svg,
.block-reassurance svg * {
  fill:#f58220!important;
  color:#f58220!important;
}
.blockreassurance svg [stroke],
.block-reassurance svg [stroke] {
  stroke:#f58220!important;
}

.hd-floating-action{
  position:fixed;
  bottom:24px;
  width:54px;
  height:54px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgb(255 255 255 / 12%);
  border-radius:50%;
  box-shadow:0 10px 28px rgb(0 0 0 / 38%);
  z-index:1980;
  transition:transform .2s ease,opacity .2s ease,background-color .2s ease,border-color .2s ease;
}
.hd-floating-action:hover,.hd-floating-action:focus-visible{transform:translateY(-3px);border-color:#f58220;outline:0}
.hd-floating-action svg{width:27px;height:27px;display:block;fill:currentColor}
.hd-whatsapp{left:24px;background:#171717;color:#f58220}
.hd-whatsapp:hover,.hd-whatsapp:focus-visible{background:#f58220;color:#070707}
.hd-scroll-top{right:24px;background:#171717;color:#f58220;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(10px);pointer-events:none}
.hd-scroll-top.hd-is-visible{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}
.hd-scroll-top.hd-is-visible:hover,.hd-scroll-top.hd-is-visible:focus-visible{transform:translateY(-3px);background:#f58220;color:#070707}
@media (max-width:767.98px){
  .hd-floating-action{bottom:16px;width:48px;height:48px}
  .hd-floating-action svg{width:24px;height:24px}
  .hd-whatsapp{left:16px}
  .hd-scroll-top{right:16px}
}

/* ================================================================
   HD Ravenna - About us
   ================================================================ */

.hd-about {
    max-width: 1000px;
    margin: 0 auto;
    padding: clamp(2rem,5vw,5rem) clamp(1rem,4vw,4rem);
    color: #d8d8d8;
}

.hd-about__header {
    max-width: 850px;
}

.hd-about__eyebrow {
    display: block;
    margin-bottom: 1rem;
    color: #f58220;
    font-size: .82rem;
    font-weight: 800;
    letter-spacing: .18em;
    text-transform: uppercase;
}

.hd-about h1 {
    margin: 0;
    color: #f4f4f2;
    font-size: clamp(2.3rem,6vw,5rem);
    font-weight: 900;
    line-height: .95;
    letter-spacing: -.025em;
    text-transform: uppercase;
}

.hd-about h1 span {
    color: #f58220;
}

.hd-about__lead {
    max-width: 700px;
    margin: 2rem 0 0;
    color: #eee;
    font-size: clamp(1.15rem,2vw,1.4rem);
    line-height: 1.6;
}

.hd-about__divider {
    width: 80px;
    height: 3px;
    margin: 2.5rem 0;
    background: #f58220;
}

.hd-about__content {
    max-width: 800px;
}

.hd-about__content p {
    margin: 0 0 1.4rem;
    color: #cfcfcf;
    font-size: 1.05rem;
    line-height: 1.8;
}

.hd-about__content strong {
    color: #f4f4f2;
}

.hd-about__statement {
    color: #f4f4f2 !important;
    font-size: clamp(1.15rem,2vw,1.35rem) !important;
}

.hd-about__claim {
    margin: clamp(2.5rem,5vw,4.5rem) 0;
    padding: 1.75rem 0;
    border-top: 1px solid rgb(255 255 255 / 10%);
    border-bottom: 1px solid rgb(255 255 255 / 10%);
    font-size: clamp(1.6rem,4vw,3rem);
    font-weight: 900;
    line-height: 1.1;
    letter-spacing: .02em;
    text-transform: uppercase;
}

.hd-about__claim span,
.hd-about__claim strong {
    display: block;
}

.hd-about__claim span {
    color: #f4f4f2;
}

.hd-about__claim strong {
    color: #f58220;
}

.hd-about__footer {
    max-width: 700px;
}

.hd-about__footer p {
    margin-bottom: 1.25rem;
    color: #d8d8d8;
    font-size: 1.1rem;
    line-height: 1.7;
}

.hd-about__footer strong {
    color: #f4f4f2;
}

.hd-about__footer > span {
    color: #f58220;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

@media (max-width:767.98px) {
    .hd-about {
        padding: 2rem .5rem;
    }

    .hd-about__divider {
        margin: 2rem 0;
    }

    .hd-about__content p {
        font-size: 1rem;
        line-height: 1.7;
    }

    .hd-about__claim {
        margin: 2.5rem 0;
        padding: 1.4rem 0;
    }
}


/* ================================================================
   HD Ravenna - Homepage Custom Text
   ================================================================ */

.hd-custom-intro {
    width: 100%;
    max-width: 980px;
    margin: 0 auto;
    padding: clamp(1rem, 2vw, 2rem) clamp(.75rem, 3vw, 2rem);
    text-align: center;
}

.hd-custom-intro h2 {
    margin: 0 0 1.75rem;
    color: #f4f4f2;
    font-size: clamp(1.75rem, 3.5vw, 3rem);
    font-weight: 900;
    line-height: 1.08;
    letter-spacing: .035em;
    text-transform: uppercase;
}

.hd-custom-intro h2 > span {
    display: block;
}

.hd-custom-intro h2 .hd-custom-intro__accent {
    margin-top: .2em;
    color: #f58220;
}

.hd-custom-intro__content {
    max-width: 800px;
    margin: 0 auto;
}

.hd-custom-intro__content p {
    margin: 0 auto 1rem;
    color: #d8d8d8;
    font-size: clamp(1rem, 1.25vw, 1.12rem);
    line-height: 1.75;
    text-align: center;
}

.hd-custom-intro__content strong {
    color: #f4f4f2;
    font-weight: 700;
}

.hd-custom-intro__signature {
    margin: 1.75rem 0 0;
    text-align: center;
}

.hd-custom-intro__signature strong {
    display: block;
    color: #f4f4f2;
    font-size: 1.05rem;
    font-weight: 800;
    letter-spacing: .025em;
}

.hd-custom-intro__signature span {
    display: block;
    margin-top: .25rem;
    color: #aaa;
    font-size: .95rem;
    font-style: italic;
}

.hd-custom-intro__action {
    margin-top: 1.75rem;
    text-align: center;
}

.hd-custom-intro__action .btn {
    min-width: 210px;
    padding: .85rem 1.6rem;
    font-weight: 800;
    letter-spacing: .055em;
    text-transform: uppercase;
}

@media (max-width: 767.98px) {
    .hd-custom-intro {
        padding: .75rem .25rem;
    }

    .hd-custom-intro h2 {
        margin-bottom: 1.25rem;
    }

    .hd-custom-intro__content p {
        line-height: 1.65;
    }

    .hd-custom-intro__action .btn {
        width: 100%;
        max-width: 320px;
    }
}
/* ================================================================
   HD Ravenna - Shipping page
   Uses the shared .hd-about editorial layout
   ================================================================ */

.hd-shipping__info {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1px;
    max-width: 900px;
    margin: clamp(2.5rem,5vw,4.5rem) 0;
    background: rgb(255 255 255 / 10%);
    border: 1px solid rgb(255 255 255 / 10%);
}

.hd-shipping__info-item {
    padding: 1.5rem;
    background: #0b0b0b;
}

.hd-shipping__label {
    display: block;
    margin-bottom: .5rem;
    color: #f58220;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.hd-shipping__info-item strong {
    display: block;
    color: #f4f4f2;
    font-size: 1.05rem;
}

.hd-shipping .hd-about__footer a {
    color: #f58220 !important;
    text-decoration: none;
    overflow-wrap: anywhere;
}

.hd-shipping .hd-about__footer a:hover {
    color: #ff9a40 !important;
    text-decoration: underline;
}

.hd-shipping__note {
    margin-top: 1.5rem;
    color: #888 !important;
    font-size: .85rem !important;
}

.hd-shipping__closing {
    color: #f4f4f2 !important;
    font-size: clamp(1.2rem,2vw,1.5rem) !important;
}

@media (max-width:767.98px) {

    .hd-shipping__info {
        grid-template-columns: 1fr;
    }

    .hd-shipping__info-item {
        padding: 1.25rem;
    }
}
/* ================================================================
   HD Ravenna - Shipping page
   Uses the shared .hd-about editorial layout
   ================================================================ */

.hd-shipping__info {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1px;
    max-width: 900px;
    margin: clamp(2.5rem,5vw,4.5rem) 0;
    background: rgb(255 255 255 / 10%);
    border: 1px solid rgb(255 255 255 / 10%);
}

.hd-shipping__info-item {
    padding: 1.5rem;
    background: #0b0b0b;
}

.hd-shipping__label {
    display: block;
    margin-bottom: .5rem;
    color: #f58220;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.hd-shipping__info-item strong {
    display: block;
    color: #f4f4f2;
    font-size: 1.05rem;
}

.hd-shipping .hd-about__footer a {
    color: #f58220 !important;
    text-decoration: none;
    overflow-wrap: anywhere;
}

.hd-shipping .hd-about__footer a:hover {
    color: #ff9a40 !important;
    text-decoration: underline;
}

.hd-shipping__note {
    margin-top: 1.5rem;
    color: #888 !important;
    font-size: .85rem !important;
}

.hd-shipping__closing {
    color: #f4f4f2 !important;
    font-size: clamp(1.2rem,2vw,1.5rem) !important;
}

@media (max-width:767.98px) {

    .hd-shipping__info {
        grid-template-columns: 1fr;
    }

    .hd-shipping__info-item {
        padding: 1.25rem;
    }
}
/* ================================================================
   HD Ravenna - Payment methods
   ================================================================ */

.hd-payments__methods {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.5rem;
    max-width: 1000px;
    margin: clamp(2.5rem,5vw,4.5rem) 0;
}

.hd-payments__method {
    padding: clamp(1.5rem,3vw,2.25rem);
    background: #0b0b0b;
    border: 1px solid rgb(255 255 255 / 10%);
}

.hd-payments__method h2 {
    margin: .75rem 0 1.25rem;
    color: #f4f4f2;
    font-size: clamp(1.3rem,2vw,1.65rem);
    font-weight: 800;
    text-transform: uppercase;
}

.hd-payments__method p {
    color: #cfcfcf;
    line-height: 1.75;
}

.hd-payments__details {
    margin-top: 1.75rem;
    border-top: 1px solid rgb(255 255 255 / 10%);
}

.hd-payments__details > div {
    padding: 1rem 0;
    border-bottom: 1px solid rgb(255 255 255 / 10%);
}

.hd-payments__details span {
    display: block;
    margin-bottom: .3rem;
    color: #888;
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.hd-payments__details strong {
    display: block;
    color: #f4f4f2;
    font-size: 1rem;
    overflow-wrap: anywhere;
}

@media (max-width:767.98px) {

    .hd-payments__methods {
        grid-template-columns: 1fr;
    }

    .hd-payments__method {
        padding: 1.4rem;
    }
}

/* ================================================================
   HD Ravenna - Legal pages
   ================================================================ */

.hd-legal {
    max-width: 1100px;
}

.hd-legal__notice {
    max-width: 800px;
    margin: 0 0 clamp(3rem,6vw,5rem);
    padding: 1.5rem 1.75rem;
    background: #0b0b0b;
    border-left: 3px solid #f58220;
}

.hd-legal__notice > span {
    display: block;
    margin-bottom: .45rem;
    color: #f58220;
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .15em;
}

.hd-legal__notice > strong {
    display: block;
    color: #f4f4f2;
    font-size: 1.15rem;
}

.hd-legal__notice p {
    margin: .5rem 0 0;
    color: #aaa;
    line-height: 1.6;
}

.hd-legal__section {
    position: relative;
    max-width: 850px;
    margin: 0 0 3.5rem;
    padding: 0 0 3.5rem 4.5rem;
    border-bottom: 1px solid rgb(255 255 255 / 9%);
}

.hd-legal__number {
    position: absolute;
    top: 0;
    left: 0;
    color: #f58220;
    font-size: .8rem;
    font-weight: 900;
    letter-spacing: .08em;
}

.hd-legal__section h2 {
    margin: 0 0 1.5rem;
    color: #f4f4f2;
    font-size: clamp(1.35rem,2.5vw,1.8rem);
    font-weight: 900;
    letter-spacing: .015em;
    text-transform: uppercase;
}

.hd-legal__section p,
.hd-legal__section li {
    color: #cfcfcf;
    font-size: 1rem;
    line-height: 1.8;
}

.hd-legal__section p {
    margin: 0 0 1.25rem;
}

.hd-legal__section ul {
    margin: 1.25rem 0 1.5rem;
    padding-left: 1.3rem;
}

.hd-legal__section li {
    margin-bottom: .6rem;
}

.hd-legal__section strong {
    color: #f4f4f2;
}

@media (max-width:767.98px) {

    .hd-legal__section {
        margin-bottom: 2.5rem;
        padding: 0 0 2.5rem;
    }

    .hd-legal__number {
        position: static;
        display: block;
        margin-bottom: .65rem;
    }

    .hd-legal__notice {
        padding: 1.25rem;
    }
}

/* ================================================================
   HD Ravenna v1.26 - default page background
   Every page is solid #070707; homepage alone keeps bg.jpg.
   ================================================================ */

/* Default: every non-home page uses a solid monochromatic surface. */
body:not(#index) #wrapper,
body:not(#index) #wrapper .center-column,
body:not(#index) #wrapper #center-column,
body:not(#index) .columns-container.container {
    background: #070707 !important;
    background-color: #070707 !important;
    background-image: none !important;
}

/* Homepage: preserve the photographic background already approved. */
body#index #wrapper,
body#index #wrapper .center-column,
body#index #wrapper #center-column {
    background-color: #070707 !important;
    background-image:
        linear-gradient(180deg,rgb(5 5 5 / 82%),rgb(8 8 8 / 35%) 45%,rgb(5 5 5 / 50%)),
        url('../../img/bg.jpg') !important;
    background-size: cover !important;
    background-position: center top !important;
    background-repeat: no-repeat !important;
    background-attachment: fixed !important;
}

@media (max-width:767.98px) {
    body#index #wrapper,
    body#index #wrapper .center-column,
    body#index #wrapper #center-column {
        background-attachment: scroll !important;
    }
}

/* ================================================================
   HD Ravenna - Privacy Policy
   ================================================================ */

.hd-privacy .hd-legal__notice a,
.hd-privacy .hd-legal__section a,
.hd-privacy .hd-about__footer a {
    color: #f58220 !important;
    text-decoration: none;
    overflow-wrap: anywhere;
    transition: color .2s ease;
}

.hd-privacy .hd-legal__notice a:hover,
.hd-privacy .hd-legal__section a:hover,
.hd-privacy .hd-about__footer a:hover {
    color: #ff9a40 !important;
    text-decoration: underline;
}

.hd-privacy .hd-legal__section p strong {
    color: #f4f4f2;
}

.hd-privacy .hd-legal__section ul {
    list-style: square;
}

.hd-privacy .hd-legal__section li::marker {
    color: #f58220;
}

.hd-privacy .hd-legal__notice {
    margin-bottom: clamp(3rem, 6vw, 5rem);
}

/* ================================================================
   HD Ravenna v1.26.3 - native checkbox/radio isolation
   Never apply generic text-input backgrounds to boolean controls.
   ================================================================ */
input[type="checkbox"],
input[type="radio"] {
    accent-color: #f58220 !important;
    background: initial !important;
    background-image: none !important;
    box-shadow: none;
}

input[type="checkbox"]:focus-visible,
input[type="radio"]:focus-visible {
    outline: 2px solid #ff9a40 !important;
    outline-offset: 3px !important;
}

/* Hummingbird/Bootstrap controls: make selected state unambiguous while
   retaining the browser/theme native interaction semantics. */
.form-check-input:checked,
input[type="checkbox"]:checked,
input[type="radio"]:checked {
    accent-color: #f58220 !important;
}
/* ==========================================================
   PRODUCT RICH TEXT NORMALIZATION
   Descrizione / riepilogo prodotto

   - Forza Franklin Gothic ATF sui contenuti rich-text
   - Rimuove SOLO i background bianchi inline
   - Mantiene background colorati (es. #fa6600)
   ========================================================== */


/* ----------------------------------------------------------
   FONT
   Normalizza qualsiasi font proveniente dall'editor
   ---------------------------------------------------------- */

.product__description.rich-text,
.product__description.rich-text * {
    font-family: 'Franklin Gothic ATF', sans-serif !important;
}


/* ----------------------------------------------------------
   BACKGROUND BIANCO
   Neutralizza esclusivamente il bianco salvato inline
   ---------------------------------------------------------- */

/* #ffffff */
.product__description.rich-text [style*="background-color: #ffffff" i],
.product__description.rich-text [style*="background-color:#ffffff" i] {
    background-color: transparent !important;
}


/* #fff */
.product__description.rich-text [style*="background-color: #fff;" i],
.product__description.rich-text [style*="background-color:#fff;" i] {
    background-color: transparent !important;
}


/* white */
.product__description.rich-text [style*="background-color: white" i],
.product__description.rich-text [style*="background-color:white" i] {
    background-color: transparent !important;
}


/* rgb(255, 255, 255) */
.product__description.rich-text [style*="background-color: rgb(255, 255, 255)" i],
.product__description.rich-text [style*="background-color:rgb(255, 255, 255)" i] {
    background-color: transparent !important;
}


/* rgb(255,255,255) */
.product__description.rich-text [style*="background-color: rgb(255,255,255)" i],
.product__description.rich-text [style*="background-color:rgb(255,255,255)" i] {
    background-color: transparent !important;
}
/* ==========================================================
   PRODUCT RICH TEXT NORMALIZATION
   Descrizione lunga + descrizione breve

   - Forza Franklin Gothic ATF
   - Rimuove SOLO i background bianchi inline
   - Mantiene background colorati (es. #fa6600)
   ========================================================== */


/* ----------------------------------------------------------
   FONT
   ---------------------------------------------------------- */

.product__description.rich-text,
.product__description.rich-text *,
.product__description-short.rich-text,
.product__description-short.rich-text * {
    font-family: 'Franklin Gothic ATF', sans-serif !important;
}


/* ----------------------------------------------------------
   BACKGROUND BIANCO - #ffffff
   ---------------------------------------------------------- */

.product__description.rich-text [style*="background-color: #ffffff" i],
.product__description.rich-text [style*="background-color:#ffffff" i],
.product__description-short.rich-text [style*="background-color: #ffffff" i],
.product__description-short.rich-text [style*="background-color:#ffffff" i] {
    background-color: transparent !important;
}


/* ----------------------------------------------------------
   BACKGROUND BIANCO - #fff
   ---------------------------------------------------------- */

.product__description.rich-text [style*="background-color: #fff;" i],
.product__description.rich-text [style*="background-color:#fff;" i],
.product__description-short.rich-text [style*="background-color: #fff;" i],
.product__description-short.rich-text [style*="background-color:#fff;" i] {
    background-color: transparent !important;
}


/* ----------------------------------------------------------
   BACKGROUND BIANCO - white
   ---------------------------------------------------------- */

.product__description.rich-text [style*="background-color: white" i],
.product__description.rich-text [style*="background-color:white" i],
.product__description-short.rich-text [style*="background-color: white" i],
.product__description-short.rich-text [style*="background-color:white" i] {
    background-color: transparent !important;
}


/* ----------------------------------------------------------
   BACKGROUND BIANCO - rgb(255, 255, 255)
   ---------------------------------------------------------- */

.product__description.rich-text [style*="background-color: rgb(255, 255, 255)" i],
.product__description.rich-text [style*="background-color:rgb(255, 255, 255)" i],
.product__description-short.rich-text [style*="background-color: rgb(255, 255, 255)" i],
.product__description-short.rich-text [style*="background-color:rgb(255, 255, 255)" i] {
    background-color: transparent !important;
}


/* ----------------------------------------------------------
   BACKGROUND BIANCO - rgb(255,255,255)
   ---------------------------------------------------------- */

.product__description.rich-text [style*="background-color: rgb(255,255,255)" i],
.product__description.rich-text [style*="background-color:rgb(255,255,255)" i],
.product__description-short.rich-text [style*="background-color: rgb(255,255,255)" i],
.product__description-short.rich-text [style*="background-color:rgb(255,255,255)" i] {
    background-color: transparent !important;
}
.product__tax-label {
	color: #676767 !important;
}
.tag--medium.multi.message__logo-container.message {
	color: #fefefe !important;
}
.paypal-button-text.immediate {
	color: #000000 !important;
}
/* ==========================================================
   NEWSLETTER - GDPR CONSENT
   ========================================================== */

.block_newsletter .gdpr-consent {
    display: block !important;
    position: static !important;
    width: 100% !important;
    height: auto !important;
    margin-top: 12px !important;
    overflow: visible !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.block_newsletter .gdpr-consent .form-check {
    display: flex !important;
    align-items: flex-start;
    gap: 8px;
    width: 100%;
}

.block_newsletter .gdpr-consent .form-check-input {
    position: static !important;
    flex: 0 0 auto;
    width: 16px !important;
    height: 16px !important;
    margin: 3px 0 0 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    accent-color: #f58220;
}

.block_newsletter .gdpr-consent .form-check-label {
    display: block !important;
    margin: 0;
    color: #bdbdbd !important;
    font-size: 13px;
    line-height: 1.4;
    cursor: pointer;
}

/* ==========================================================
   NEWSLETTER - GDPR CONSENT
   ========================================================== */

#gdpr_consent_82.gdpr-consent {
    display: block !important;
}

/* ==========================================================
   NEWSLETTER - GDPR CONSENT
   ========================================================== */

.ps-emailsubscription .newsletter-gdpr-consent {
    display: block;
    width: 100%;
    margin: 10px 0 8px;
}

.ps-emailsubscription .newsletter-gdpr-consent .form-check {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin: 0;
    padding: 0;
}

.ps-emailsubscription .newsletter-gdpr-consent .form-check-input {
    position: static;
    flex: 0 0 16px;
    width: 16px;
    height: 16px;
    margin: 2px 0 0;
    border: 1px solid #666;
    background: transparent;
    accent-color: #f58220;
    cursor: pointer;
}

.ps-emailsubscription .newsletter-gdpr-consent .form-check-label {
    margin: 0;
    color: #aaa;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.4;
    cursor: pointer;
}

.ps-emailsubscription .newsletter-gdpr-consent .form-check-label a {
    color: #ff9a40;
    text-decoration: none;
}

.ps-emailsubscription .newsletter-gdpr-consent .form-check-label a:hover {
    color: #f58220;
    text-decoration: underline;
}

/* ==========================================================
   NEWSLETTER - GDPR CHECKBOX
   ========================================================== */

.ps-emailsubscription .newsletter-gdpr-consent .form-check-input {
    appearance: none;
    -webkit-appearance: none;

    width: 16px !important;
    height: 16px !important;
    min-width: 16px;
    margin: 2px 8px 0 0 !important;

    border: 1px solid #666 !important;
    border-radius: 2px;
    background: transparent !important;

    cursor: pointer;
}

/* Checkbox selezionata */
.ps-emailsubscription .newsletter-gdpr-consent .form-check-input:checked {
    background-color: #f58220 !important;
    border-color: #f58220 !important;
}

/* Spunta bianca */
.ps-emailsubscription .newsletter-gdpr-consent .form-check-input:checked::after {
    content: "";
    display: block;

    width: 5px;
    height: 9px;

    margin: 1px 0 0 5px;

    border: solid #fff;
    border-width: 0 2px 2px 0;

    transform: rotate(45deg);
}

/* Focus accessibile */
.ps-emailsubscription .newsletter-gdpr-consent .form-check-input:focus {
    outline: 2px solid rgba(245, 130, 32, .35);
    outline-offset: 2px;
    box-shadow: none !important;
}