/* EXELIXIS SHOP V0.8.0 — purpose-built header + storefront */
:root{--ex-red:#e30613;--ex-red2:#b7000a;--ex-dark:#171d21;--ex-dark2:#20282d;--ex-ink:#101518;--ex-muted:#687178;--ex-line:#dfe4e7;--ex-soft:#f5f6f7}
body{color:var(--ex-ink);background:#fff}
@media(min-width:1200px){.container,.container-md{max-width:1440px!important;width:calc(100% - 64px)!important}}

/* ===== REAL EXELIXIS HEADER ===== */
#header{background:#fff!important;box-shadow:0 3px 18px rgba(0,0,0,.09)!important;position:relative;z-index:100}
.ex-header{background:#fff}
.ex-header__main{background:#fff}
.ex-header__inner{
 max-width:1440px;margin:auto;padding:22px 32px 0;
 display:grid;grid-template-columns:270px minmax(420px,1fr) auto;
 grid-template-rows:72px 58px;column-gap:34px;align-items:center
}
.ex-header__logo{grid-column:1;grid-row:1;align-self:center}
.ex-header__logo img{display:block;width:245px!important;height:auto!important;max-height:68px!important;object-fit:contain}

/* displayTop contains BOTH native search and native menu. display:contents makes them real grid children */
.ex-header__top-hook{display:contents}
.ex-header__top-hook>#_desktop_ps_searchbar{
 grid-column:2;grid-row:1;display:flex!important;width:100%!important;max-width:none!important;margin:0!important
}
.ex-header__top-hook>.ps-mainmenu--desktop{
 grid-column:1/-1;grid-row:2;width:auto!important;max-width:none!important;margin:0 -32px!important;padding:0 32px!important;
 background:var(--ex-dark)!important;align-self:stretch
}

/* Search */
#ps_searchbar{width:100%!important}
.ps-searchbar__form{position:relative!important;width:100%!important}
.ps-searchbar__input{
 width:100%!important;height:52px!important;border:1px solid #c8cfd3!important;border-radius:7px!important;
 padding:0 48px 0 50px!important;background:#fff!important;font-size:15px!important;box-shadow:none!important
}
.ps-searchbar__input:focus{border-color:var(--ex-red)!important;box-shadow:0 0 0 3px rgba(227,6,19,.09)!important}
.ps-searchbar__magnifier{position:absolute!important;left:16px!important;top:14px!important;color:var(--ex-red)!important;z-index:2}

/* Account / cart */
.ex-header__actions{grid-column:3;grid-row:1;display:flex;align-items:center;justify-content:flex-end;gap:4px;white-space:nowrap}
.ex-header__actions>div{display:flex!important;align-items:center}
.ex-header__actions .header-block__action-btn{
 min-height:52px!important;padding:7px 10px!important;border-radius:7px!important;color:var(--ex-ink)!important;text-decoration:none!important
}
.ex-header__actions .header-block__action-btn:hover{background:#fff1f2!important;color:var(--ex-red)!important}
.ex-header__actions .header-block__icon{font-size:25px!important}
.ex-header__actions .header-block__title{font-size:13px!important;font-weight:700!important}
.header-block__badge{background:var(--ex-red)!important;color:#fff!important}

/* Hide hook outputs irrelevant to desktop header */
.ex-header__actions .ps-languageselector,.ex-header__actions .ps-currencyselector{font-size:12px}

/* Menu */
.ps-mainmenu__desktop{height:58px!important;max-width:1440px!important;margin:auto!important;padding:0!important}
.ps-mainmenu__tree{display:flex!important;height:58px!important;align-items:stretch!important;gap:0!important;margin:0!important;padding:0!important;list-style:none!important}
.ps-mainmenu__tree-item{height:58px!important;margin:0!important}
.ps-mainmenu__tree-item-wrapper{height:58px!important;display:flex!important;align-items:center!important}
.ps-mainmenu__tree-link{
 display:flex!important;height:58px!important;align-items:center!important;padding:0 23px!important;
 color:#fff!important;text-decoration:none!important;text-transform:uppercase!important;font-size:14px!important;font-weight:800!important;letter-spacing:.025em
}
.ps-mainmenu__tree-item:hover>.ps-mainmenu__tree-item-wrapper,.ps-mainmenu__tree-item:focus-within>.ps-mainmenu__tree-item-wrapper{background:var(--ex-red)!important}
.ps-mainmenu__tree-dropdown-toggle{color:#fff!important;margin-left:-13px!important}
.submenu{border:0!important;border-top:3px solid var(--ex-red)!important;box-shadow:0 18px 38px rgba(0,0,0,.17)!important;background:#fff!important}

/* ===== HOME HERO ===== */
#index #wrapper{padding-top:0!important}
#index .page-content--home{padding-top:0!important}
#index .ps-imageslider{width:100vw!important;max-width:none!important;margin-left:calc(50% - 50vw)!important;margin-bottom:48px!important}
#index .ps-imageslider .carousel,#index .ps-imageslider .carousel-inner,#index .ps-imageslider .carousel-item{height:430px!important;max-height:430px!important;overflow:hidden!important}
#index .ps-imageslider img{width:100%!important;height:430px!important;object-fit:cover!important;object-position:center!important}
#index .ps-imageslider__figcaption{
 left:max(5vw,calc((100vw - 1376px)/2))!important;right:auto!important;bottom:50px!important;width:min(560px,43vw)!important;
 padding:28px 30px!important;background:rgba(16,21,24,.91)!important;border-left:5px solid var(--ex-red)!important;
 color:#fff!important;text-align:left!important;border-radius:0 7px 7px 0!important
}
#index .ps-imageslider__figcaption h2{font-size:34px!important;font-weight:900!important;line-height:1.05!important;text-transform:uppercase!important;color:#fff!important}
#index .ps-imageslider__figcaption p{color:#fff!important;line-height:1.5!important}

/* ===== HOME SECTIONS ===== */
#index .ps-customtext{margin:0 auto 46px!important;padding:34px!important;background:var(--ex-soft)!important;border-radius:8px!important}
#index .ps-customtext h2,.products-section-title,.featured-products h2{font-size:29px!important;font-weight:900!important;letter-spacing:-.025em!important;color:var(--ex-ink)!important}
#index .ps-customtext h2:after,.products-section-title:after,.featured-products h2:after{content:"";display:block;width:56px;height:4px;background:var(--ex-red);margin:10px auto 0}
#index .featured-products,#index .ps-newproducts,#index .ps-bestsellers{margin-top:48px!important;margin-bottom:48px!important}

/* ===== PRODUCT CARDS ===== */
.product-miniature__inner{height:100%!important;border:1px solid var(--ex-line)!important;border-radius:9px!important;overflow:hidden!important;background:#fff!important;transition:.18s ease!important}
.product-miniature__inner:hover{transform:translateY(-4px)!important;box-shadow:0 14px 32px rgba(16,21,24,.11)!important}
.product-miniature__top{background:#fff!important}
.product-miniature__bottom{padding:17px!important}
.product-miniature__title{font-weight:800!important;line-height:1.35!important;color:var(--ex-ink)!important;text-decoration:none!important}
.product-miniature__title:hover{color:var(--ex-red)!important}
.product-miniature__price{font-size:19px!important;font-weight:900!important;color:var(--ex-ink)!important}
.product-miniature__regular-price{color:#7b8489!important}
.product-miniature__add,.btn-primary{background:var(--ex-red)!important;border-color:var(--ex-red)!important;color:#fff!important;font-weight:800!important}
.product-miniature__add:hover,.btn-primary:hover{background:var(--ex-red2)!important;border-color:var(--ex-red2)!important}

/* ===== FOOTER ===== */
#footer{margin-top:64px!important}
#footer .footer__before,#footer .footer__before .bg-body-tertiary{background:var(--ex-dark2)!important;color:#fff!important}
#footer .footer__before .text-body-secondary{color:#c5cbce!important}
#footer .footer__main{background:#101417!important;color:#cbd0d3!important;padding-top:48px!important}
#footer .footer__main a{color:#cbd0d3!important;text-decoration:none!important}
#footer .footer__main a:hover{color:#fff!important}
#footer .footer-block__title{color:#fff!important;font-weight:850!important}

/* ===== TABLET / MOBILE ===== */
@media(max-width:1199.98px){
 .ex-header__inner{padding:10px 18px;display:flex;min-height:76px;gap:8px}
 .ex-header__logo{margin-right:auto}
 .ex-header__logo img{width:180px!important;max-height:50px!important}
 .ex-header__top-hook{display:contents}
 .ex-header__top-hook>#_desktop_ps_searchbar,.ex-header__top-hook>.ps-mainmenu--desktop{display:none!important}
 .ex-header__actions{display:none!important}
 /* mobile controls emitted by native modules */
 .ps-mainmenu__mobile-toggle,.ps-searchbar--mobile,#_mobile_ps_customersignin,#_mobile_ps_shoppingcart{display:flex!important}
 #index .ps-imageslider .carousel,#index .ps-imageslider .carousel-inner,#index .ps-imageslider .carousel-item,#index .ps-imageslider img{height:340px!important}
}
@media(max-width:767.98px){
 .ex-header__logo img{width:155px!important}
 #index .ps-imageslider .carousel,#index .ps-imageslider .carousel-inner,#index .ps-imageslider .carousel-item,#index .ps-imageslider img{height:290px!important}
 #index .ps-imageslider__figcaption{left:16px!important;bottom:18px!important;width:calc(100% - 32px)!important;padding:17px!important}
 #index .ps-imageslider__figcaption h2{font-size:23px!important}
}


/* ===== V0.9 HOME RECONSTRUCTION ===== */
.ex-shell{max-width:1440px;width:calc(100% - 64px);margin:0 auto}
.ex-hero{
 min-height:510px;background:
 linear-gradient(90deg,rgba(9,13,16,.94) 0%,rgba(9,13,16,.78) 31%,rgba(9,13,16,.18) 60%,rgba(9,13,16,.04) 100%),
 url('../img/exelixis-hero.png') center 54%/cover no-repeat;color:#fff;display:flex;align-items:center
}
.ex-hero__inner{max-width:1440px;width:calc(100% - 64px);margin:auto}
.ex-hero__copy{max-width:650px;padding:72px 0}
.ex-eyebrow,.ex-kicker{display:block;color:var(--ex-red);font-size:13px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.ex-hero h1{max-width:620px;margin:12px 0 18px;color:#fff;font-size:58px;line-height:.98;font-weight:950;letter-spacing:-.045em;text-transform:uppercase}
.ex-hero p{max-width:570px;margin:0 0 30px;color:#e3e6e8;font-size:18px;line-height:1.55}
.ex-hero__actions{display:flex;gap:12px;flex-wrap:wrap}
.ex-btn{display:inline-flex;min-height:50px;align-items:center;justify-content:center;padding:0 24px;border-radius:5px;font-size:14px;font-weight:850;text-decoration:none!important;text-transform:uppercase;letter-spacing:.03em}
.ex-btn--primary{background:var(--ex-red);color:#fff!important}
.ex-btn--primary:hover{background:var(--ex-red2)}
.ex-btn--ghost{border:1px solid rgba(255,255,255,.55);color:#fff!important;background:rgba(0,0,0,.16)}
.ex-btn--ghost:hover{background:#fff;color:var(--ex-ink)!important}

.ex-univers{padding:72px 0 68px;background:#fff}
.ex-section-head{text-align:center;max-width:720px;margin:0 auto 34px}
.ex-section-head h2{margin:6px 0 10px;font-size:36px;font-weight:950;letter-spacing:-.035em;text-transform:uppercase}
.ex-section-head p{color:var(--ex-muted);font-size:16px}
.ex-universe-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.ex-universe{min-height:185px;padding:28px 18px;border:1px solid var(--ex-line);border-radius:8px;background:#fff;color:var(--ex-ink)!important;text-align:center;text-decoration:none!important;transition:.18s ease}
.ex-universe:hover{transform:translateY(-4px);border-color:#c6cdd1;box-shadow:0 14px 30px rgba(16,21,24,.09)}
.ex-universe .material-icons{display:block;margin-bottom:17px;color:var(--ex-red);font-size:40px}
.ex-universe strong{display:block;font-size:16px;font-weight:900;text-transform:uppercase}
.ex-universe small{display:block;margin-top:7px;color:var(--ex-muted);font-size:12px;line-height:1.4}

.ex-native-home{padding:62px 0;background:var(--ex-soft)}
/* We replace the demo slider/custom-text with our own hero/universe presentation */
.ex-native-home .ps-imageslider,.ex-native-home .ps-customtext{display:none!important}
.ex-native-home .module-products,.ex-native-home .featured-products,.ex-native-home .ps-featuredproducts{margin-top:0!important}
.ex-native-home .section-title,.ex-native-home .products-section-title,.ex-native-home h2{text-align:center!important;font-size:31px!important;font-weight:950!important;text-transform:uppercase!important;letter-spacing:-.03em!important}
.ex-native-home .section-title:after,.ex-native-home .products-section-title:after{content:"";display:block;width:58px;height:4px;margin:11px auto 30px;background:var(--ex-red)}
.ex-native-home .product-miniature__inner{background:#fff!important}

.ex-promos{padding:64px 0;background:#fff}
.ex-promo-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.ex-promo{min-height:235px;padding:42px;border-radius:9px;color:#fff;position:relative;overflow:hidden}
.ex-promo:after{content:"";position:absolute;width:220px;height:220px;border:40px solid rgba(255,255,255,.06);border-radius:50%;right:-50px;bottom:-90px}
.ex-promo--dark{background:var(--ex-dark)}
.ex-promo--red{background:var(--ex-red)}
.ex-promo span{font-size:12px;font-weight:900;letter-spacing:.13em}
.ex-promo h3{max-width:530px;margin:10px 0;font-size:28px;font-weight:950;line-height:1.08;color:#fff}
.ex-promo p{max-width:570px;margin:0;color:rgba(255,255,255,.82);line-height:1.5}

.ex-trust{padding:30px 0;background:#eceff1;border-top:1px solid #dfe4e7}
.ex-trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.ex-trust-grid>div{display:grid;grid-template-columns:46px 1fr;grid-template-rows:auto auto;padding:8px 28px;border-right:1px solid #d0d6da}
.ex-trust-grid>div:last-child{border-right:0}
.ex-trust .material-icons{grid-row:1/3;color:var(--ex-red);font-size:32px;align-self:center}
.ex-trust strong{font-size:14px;font-weight:900;text-transform:uppercase}
.ex-trust small{color:var(--ex-muted);font-size:12px}

@media(max-width:1199px){
 .ex-universe-grid{grid-template-columns:repeat(3,1fr)}
 .ex-hero h1{font-size:48px}
}
@media(max-width:767px){
 .ex-shell,.ex-hero__inner{width:calc(100% - 32px)}
 .ex-hero{min-height:440px;background-position:64% center}
 .ex-hero__copy{padding:55px 0}
 .ex-hero h1{font-size:38px}
 .ex-hero p{font-size:16px}
 .ex-univers{padding:50px 0}
 .ex-universe-grid{grid-template-columns:repeat(2,1fr);gap:10px}
 .ex-universe{min-height:155px;padding:22px 10px}
 .ex-promo-grid,.ex-trust-grid{grid-template-columns:1fr}
 .ex-promo{min-height:auto;padding:30px}
 .ex-trust-grid>div{border-right:0;border-bottom:1px solid #d0d6da;padding:16px 8px}
}

/* V0.9.1: home is injected by the proven header override.
   Hide only Hummingbird's demo presentation; keep native product modules. */
#index #wrapper .ps-imageslider,
#index #wrapper .ps-customtext{display:none!important}
#index #wrapper{padding-top:0!important}
#index #wrapper .container,
#index #wrapper .container-md{max-width:1440px!important}
#index #wrapper .ps-featuredproducts{padding-top:58px!important}
#index #wrapper .ps-featuredproducts:before{
 content:"Sélection Exelixis";display:block;text-align:center;color:#e30613;
 font-size:12px;font-weight:900;letter-spacing:.13em;text-transform:uppercase;margin-bottom:4px
}

/* ===== V1.0.0 - exact Hummingbird 2.x index.tpl contract ===== */
#index .ex-home-page{width:100%;max-width:none!important;padding:0!important}
#index .page-content--home{padding:0!important;margin:0!important}
#index .ex-native-home .ps-imageslider,
#index .ex-native-home .ps-customtext{display:none!important}
#index .ex-native-home{margin:0!important}
#index #wrapper>.container,
#index #wrapper>.container-md{max-width:none!important;padding-left:0!important;padding-right:0!important}

/* ==========================================================================
   EXELIXIS V1.1.0 — visual consolidation after live V1.0 verification
   ========================================================================== */
:root{
 --ex-red:#e30613;
 --ex-red-dark:#bd0010;
 --ex-ink:#111619;
 --ex-dark:#181d20;
 --ex-soft:#f4f5f6;
 --ex-line:#dde1e3;
 --ex-muted:#687178;
}

/* Header */
.ex-header{position:relative;z-index:1000;background:#fff;box-shadow:0 2px 14px rgba(0,0,0,.08)}
.ex-header__main{background:#fff}
.ex-header__inner{
 max-width:1440px;width:calc(100% - 64px);margin:0 auto;
 display:grid;grid-template-columns:250px minmax(380px,1fr) auto;
 grid-template-rows:86px 52px;align-items:center;column-gap:32px
}
.ex-header__logo{grid-column:1;grid-row:1}
.ex-header__logo img{display:block;width:auto!important;height:auto!important;max-width:225px!important;max-height:64px!important;object-fit:contain}
.ex-header__top-hook{display:contents}
.ex-header__top-hook #_desktop_ps_searchbar{grid-column:2;grid-row:1;width:100%;margin:0!important}
.ex-header__actions{grid-column:3;grid-row:1;display:flex;align-items:center;justify-content:flex-end;gap:5px;white-space:nowrap}
.ex-header__actions .header-block__action-btn{min-height:44px;padding:6px 10px!important;border-radius:5px;color:var(--ex-ink)!important;text-decoration:none!important}
.ex-header__actions .header-block__action-btn:hover{background:#f1f3f4}
.ex-header__actions .header-block__icon{font-size:25px!important}
.ex-header__actions .header-block__title{font-size:12px!important;font-weight:800!important}
.ex-header__actions #_desktop_ps_languageselector,
.ex-header__actions #_desktop_ps_currencyselector{font-size:12px}

/* Search */
.ex-header .ps-searchbar{width:100%!important;max-width:none!important;margin:0!important}
.ex-header .ps-searchbar__form{height:48px!important;border:1px solid #cfd5d8!important;border-radius:5px!important;background:#f7f8f8!important;overflow:hidden}
.ex-header .ps-searchbar__input{height:46px!important;border:0!important;background:transparent!important;padding-left:18px!important;font-size:14px!important;box-shadow:none!important}
.ex-header .ps-searchbar__magnifier{width:52px!important;height:48px!important;border:0!important;background:var(--ex-red)!important;color:#fff!important;border-radius:0!important}
.ex-header .ps-searchbar__magnifier:hover{background:var(--ex-red-dark)!important}

/* Main nav */
.ex-header .ps-mainmenu--desktop{grid-column:1/-1;grid-row:2;align-self:stretch;margin:0!important;background:var(--ex-dark)!important;position:relative}
.ex-header .ps-mainmenu__desktop{height:52px!important;max-width:none!important;margin:0!important}
.ex-header .ps-mainmenu__tree{height:52px!important;display:flex!important;align-items:stretch!important;margin:0!important;padding:0 12px!important;gap:0!important;list-style:none!important}
.ex-header .ps-mainmenu__tree-item{display:flex!important;align-items:stretch!important;margin:0!important}
.ex-header .ps-mainmenu__tree-link{
 display:flex!important;align-items:center!important;padding:0 19px!important;
 color:#fff!important;font-size:13px!important;font-weight:850!important;
 letter-spacing:.025em!important;text-transform:uppercase!important;text-decoration:none!important
}
.ex-header .ps-mainmenu__tree-link:hover{background:var(--ex-red)!important;color:#fff!important}
.ex-header .submenu{border:0!important;border-top:3px solid var(--ex-red)!important;box-shadow:0 15px 30px rgba(0,0,0,.16)!important}

/* The nav bar visually spans the viewport while its content remains aligned. */
.ex-header .ps-mainmenu--desktop:before{
 content:"";position:absolute;z-index:-1;top:0;bottom:0;left:50%;width:100vw;
 transform:translateX(-50%);background:var(--ex-dark)
}

/* Hero */
.ex-hero{min-height:500px!important}
.ex-hero__copy{padding:74px 0!important}
.ex-hero h1{font-size:60px!important;max-width:650px!important}
.ex-hero p{font-size:17px!important}

/* Home sections */
.ex-univers{padding-top:66px!important;padding-bottom:66px!important}
.ex-section-head h2{font-size:38px!important}
.ex-universe-grid{gap:16px!important}
.ex-universe{border-radius:6px!important;box-shadow:0 2px 7px rgba(15,20,23,.03)}
.ex-universe:hover{border-color:var(--ex-red)!important}
.ex-native-home{padding:64px 0 70px!important}
.ex-native-home .ps-banner{margin-top:42px}

/* Product cards: more technical / less fashion */
.ex-native-home .product-miniature__inner{
 height:100%;border:1px solid #e0e4e6!important;border-radius:6px!important;
 box-shadow:none!important;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease
}
.ex-native-home .product-miniature__inner:hover{
 transform:translateY(-3px);border-color:#c8cfd3!important;box-shadow:0 12px 26px rgba(17,22,25,.08)!important
}
.ex-native-home .product-miniature__image-container{background:#fff!important;border-radius:6px 6px 0 0!important}
.ex-native-home .product-miniature__bottom{padding:16px!important}
.ex-native-home .product-miniature__title{
 min-height:42px;color:var(--ex-ink)!important;font-size:14px!important;font-weight:800!important;line-height:1.45!important
}
.ex-native-home .product-miniature__price{color:var(--ex-ink)!important;font-size:19px!important;font-weight:950!important}
.ex-native-home .product-miniature__add{
 width:100%!important;min-height:42px!important;border-color:var(--ex-red)!important;
 background:var(--ex-red)!important;color:#fff!important;font-size:12px!important;font-weight:900!important;text-transform:uppercase!important
}
.ex-native-home .product-miniature__add:hover{background:var(--ex-red-dark)!important;border-color:var(--ex-red-dark)!important}
.ex-native-home .product-miniature__quickview-button{font-size:12px!important}
.ex-native-home .product-flags .badge{border-radius:3px!important}

/* Hide Hummingbird home modules that do not belong in the target homepage.
   Keep featured products as the primary catalogue showcase for now. */
.ex-native-home .ps-imageslider,
.ex-native-home .ps-customtext,
.ex-native-home .ps-banner,
.ex-native-home .ps-newproducts,
.ex-native-home .ps-bestsellers{display:none!important}

/* If module wrappers use generic classes, remove the two duplicate demo product sections by their known module order. */
.ex-native-home .module-products + .module-products{margin-top:0}

/* Promo/trust/footer */
.ex-promos{padding:58px 0!important}
.ex-trust{padding:28px 0!important}
#footer.footer{background:#161b1e!important;color:#d7dbdd!important}
#footer .footer__main{background:#161b1e!important}
#footer .footer-block__title,#footer .footer-block__title a{color:#fff!important;font-weight:900!important}
#footer a{color:#bfc5c8}
#footer a:hover{color:#fff}
#footer .footer__before{border-top:4px solid var(--ex-red)!important}

/* Desktop menu currently still contains demo PrestaShop categories.
   Keep it visually coherent until the real catalogue categories replace them. */
@media(min-width:768px){
 .ex-header__actions #_desktop_ps_languageselector:empty,
 .ex-header__actions #_desktop_ps_currencyselector:empty{display:none!important}
}

/* Responsive */
@media(max-width:1100px){
 .ex-header__inner{grid-template-columns:210px minmax(300px,1fr) auto;column-gap:18px}
 .ex-header__logo img{max-width:190px!important}
 .ex-header .ps-mainmenu__tree-link{padding:0 12px!important;font-size:12px!important}
 .ex-hero h1{font-size:50px!important}
}
@media(max-width:767px){
 .ex-header__inner{width:calc(100% - 28px);display:flex!important;min-height:72px;gap:12px}
 .ex-header__logo{margin-right:auto}
 .ex-header__logo img{max-width:165px!important;max-height:50px!important}
 .ex-header__top-hook #_desktop_ps_searchbar,
 .ex-header .ps-mainmenu--desktop,
 .ex-header__actions{display:none!important}
 .ex-hero{min-height:430px!important}
 .ex-hero h1{font-size:38px!important}
}

/* ==========================================================================
   EXELIXIS V1.2.0 — controlled navigation + cleaner native home
   ========================================================================== */

/* The native Hummingbird menu still contains demo categories. Keep its module
   mounted for compatibility, but replace its desktop rendering with our
   controlled Exelixis navigation. */
.ex-header__top-hook .ps-mainmenu--desktop{display:none!important}

.ex-nav{
 grid-column:1/-1;grid-row:2;align-self:stretch;
 position:relative;display:flex;align-items:stretch;
 background:#181d20;margin:0!important;padding:0 10px;
}
.ex-nav:before{
 content:"";position:absolute;z-index:-1;inset:0 auto 0 50%;
 width:100vw;transform:translateX(-50%);background:#181d20;
}
.ex-nav a{
 display:flex;align-items:center;padding:0 23px;color:#fff!important;
 text-decoration:none!important;text-transform:uppercase;
 font-size:13px;font-weight:900;letter-spacing:.025em;
 border-bottom:3px solid transparent;
}
.ex-nav a:hover,.ex-nav a:focus{
 background:#242a2e;color:#fff!important;border-bottom-color:#e30613;
}

/* Home hook: Hummingbird puts several product modules one after another.
   Retain the first (featured products) and suppress following demo catalogue
   sections until the real catalogue is imported/configured. */
.ex-native-home .module-products ~ .module-products{display:none!important}

/* Make sure demo presentation modules never consume visual space. */
#index .ex-native-home .ps-imageslider,
#index .ex-native-home .ps-customtext,
#index .ex-native-home .ps-banner,
#index .ex-native-home .ps-newproducts,
#index .ex-native-home .ps-bestsellers{display:none!important}

/* Stronger home hierarchy */
#index .ex-native-home .section-title{
 margin:0 0 30px!important;text-align:left!important;
 color:#111619!important;font-size:31px!important;font-weight:950!important;
 letter-spacing:-.02em!important;
}
#index .ex-native-home .section-title:after{
 content:"";display:block;width:54px;height:4px;background:#e30613;margin-top:11px;
}
#index .ex-native-home .products{row-gap:24px!important}
#index .ex-native-home .all-product-link{
 display:inline-flex!important;margin-top:25px!important;color:#111619!important;
 font-size:12px!important;font-weight:900!important;text-transform:uppercase!important;
}

/* Mobile: keep Hummingbird mobile controls/menu; static desktop nav disappears. */
@media(max-width:767px){
 .ex-nav{display:none!important}
}

/* ==========================================================================
   EXELIXIS V1.3.0 — deterministic homepage modules
   ========================================================================== */
/* V1.3 no longer relies on CSS to hide the Hummingbird demo displayHome
   modules. index.tpl renders ps_featuredproducts directly. */
#index .ex-native-home{
 background:#f5f6f6!important;
 padding:68px 0 76px!important;
}
#index .ex-native-home .module-products{
 display:block!important;
 max-width:none!important;
 margin:0!important;
}
#index .ex-native-home .products{
 display:grid!important;
 grid-template-columns:repeat(4,minmax(0,1fr))!important;
 gap:22px!important;
}
#index .ex-native-home .product-miniature{
 width:100%!important;
 max-width:none!important;
 margin:0!important;
}
#index .ex-native-home .product-miniature__inner{background:#fff!important}
#index .ex-native-home .product-miniature__image-container{
 aspect-ratio:1/1!important;display:flex!important;align-items:center!important;
 justify-content:center!important;padding:18px!important;
}
#index .ex-native-home .product-miniature__image{
 width:100%!important;height:100%!important;object-fit:contain!important;
}
@media(max-width:1100px){
 #index .ex-native-home .products{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:767px){
 #index .ex-native-home .products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
 #index .ex-native-home{padding:44px 0 50px!important}
}
@media(max-width:420px){
 #index .ex-native-home .products{grid-template-columns:1fr!important}
}

/* ==========================================================================
   EXELIXIS V1.4.1 — safe recovery from V1.4.0 HTTP 500
   No new Smarty logic. CSS-only visual refinement.
   ========================================================================== */
.ex-header__inner{max-width:1380px!important}
.ex-header__logo img{max-width:235px!important}
.ex-nav{height:54px!important}
.ex-nav a{padding-left:26px!important;padding-right:26px!important}

.ex-hero{min-height:510px!important;background-position:center center!important}
.ex-hero__inner{
 min-height:510px!important;max-width:1380px!important;width:calc(100% - 64px)!important;
 margin:0 auto!important;display:flex!important;align-items:center!important
}
.ex-hero__copy{max-width:680px!important;padding:60px 0!important}
.ex-hero h1{font-size:60px!important;line-height:1.03!important;letter-spacing:-.04em!important}
.ex-hero p{max-width:600px!important;line-height:1.6!important}

.ex-shell{max-width:1380px!important;width:calc(100% - 64px)!important;margin-left:auto!important;margin-right:auto!important}
.ex-universe-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important}
.ex-universe{min-height:158px!important;padding:24px 18px!important}
.ex-universe .material-icons{font-size:32px!important;margin-bottom:16px!important}

#index .ex-native-home .ps-imageslider,
#index .ex-native-home .ps-customtext,
#index .ex-native-home .ps-banner,
#index .ex-native-home .ps-newproducts,
#index .ex-native-home .ps-bestsellers{display:none!important}

.ex-promo{min-height:225px!important;border-radius:7px!important;padding:36px!important}
.ex-promo h3{font-size:27px!important;line-height:1.18!important}

@media(max-width:1200px){
 .ex-universe-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:767px){
 .ex-shell,.ex-hero__inner{width:calc(100% - 30px)!important}
 .ex-hero,.ex-hero__inner{min-height:440px!important}
 .ex-hero h1{font-size:39px!important}
 .ex-universe-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:420px){
 .ex-universe-grid{grid-template-columns:1fr!important}
}

/* ==========================================================================
   EXELIXIS V1.5.0 — safe visual consolidation, no new Smarty logic
   ========================================================================== */

/* Header spacing and clearer utility actions */
.ex-header__actions{gap:10px!important}
.ex-header__actions a{color:#111619!important}
.ex-header__actions a:hover{color:#e30613!important}
.ex-header__actions .material-icons{vertical-align:middle!important}
.ex-header__logo{display:flex!important;align-items:center!important;height:100%!important}

/* Search as primary catalogue tool */
.ex-header .ps-searchbar__form{
 box-shadow:0 1px 2px rgba(0,0,0,.03)!important;
 border-color:#cbd1d4!important;
}
.ex-header .ps-searchbar__input::placeholder{color:#737c82!important;opacity:1!important}

/* Navigation */
.ex-nav{justify-content:flex-start!important}
.ex-nav a:first-child{margin-left:0!important}
.ex-nav a{transition:background .15s ease,border-color .15s ease!important}

/* Hero readability */
.ex-hero{position:relative!important}
.ex-hero:before{
 content:"";position:absolute!important;inset:0!important;pointer-events:none!important;
 background:linear-gradient(90deg,rgba(8,11,13,.91) 0%,rgba(8,11,13,.72) 37%,rgba(8,11,13,.18) 68%,rgba(8,11,13,.04) 100%)!important;
}
.ex-hero__inner{position:relative!important;z-index:1!important}
.ex-hero__copy{color:#fff!important}
.ex-hero h1{color:#fff!important;text-shadow:0 2px 14px rgba(0,0,0,.18)!important}
.ex-hero p{color:#e5e8e9!important}
.ex-btn--primary{box-shadow:0 7px 20px rgba(227,6,19,.22)!important}

/* Univers: technical catalogue cards */
.ex-universe{
 position:relative!important;overflow:hidden!important;background:#fff!important;
 border:1px solid #e0e4e6!important;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease!important
}
.ex-universe:after{
 content:"";position:absolute;left:0;right:100%;bottom:0;height:4px;background:#e30613;
 transition:right .16s ease
}
.ex-universe:hover{transform:translateY(-3px)!important;box-shadow:0 12px 25px rgba(17,22,25,.08)!important}
.ex-universe:hover:after{right:0}

/* Product area */
#index .ex-native-home{background:#f5f6f7!important}
#index .ex-native-home .product-miniature__inner{overflow:hidden!important}
#index .ex-native-home .product-miniature__image-container{border-bottom:1px solid #eef0f1!important}
#index .ex-native-home .product-miniature__bottom{background:#fff!important}
#index .ex-native-home .product-miniature__add{border-radius:4px!important}

/* Keep unwanted native home modules visually out. */
#index .ex-native-home .ps-imageslider,
#index .ex-native-home .ps-customtext,
#index .ex-native-home .ps-banner,
#index .ex-native-home .ps-newproducts,
#index .ex-native-home .ps-bestsellers{display:none!important}

/* Footer separation */
#footer.footer{border-top:4px solid #e30613!important}

/* Tablet/mobile polish */
@media(max-width:767px){
 .ex-header{box-shadow:0 1px 8px rgba(0,0,0,.09)!important}
 .ex-hero:before{background:rgba(8,11,13,.72)!important}
 .ex-hero__copy{padding:48px 0!important}
 .ex-hero__actions{display:flex!important;flex-wrap:wrap!important;gap:10px!important}
 .ex-btn{flex:1 1 auto!important;justify-content:center!important}
}

/* EXELIXIS V1.6.0 — home visual tightening, CSS-only */
#index .ex-section-head .ex-kicker{color:#e30613!important;font-weight:950!important;letter-spacing:.14em!important}
#index .ex-section-head h2{letter-spacing:-.035em!important;margin-top:7px!important;margin-bottom:10px!important}
#index .ex-univers{background:#fff!important}
#index .ex-universe strong{color:#111619!important;font-weight:900!important}
#index .ex-universe .material-icons{color:#e30613!important}

#index .ex-native-home .section-title{
 position:relative!important;padding-bottom:15px!important;margin-bottom:30px!important
}
#index .ex-native-home .section-title:after{
 content:"";position:absolute;left:0;bottom:0;width:56px;height:4px;background:#e30613
}
#index .ex-native-home .product-miniature__infos{text-align:left!important}
#index .ex-native-home .product-miniature__title a{color:#111619!important;text-decoration:none!important}
#index .ex-native-home .product-miniature__title a:hover{color:#e30613!important}
#index .ex-native-home .product-miniature__prices{margin-top:10px!important}
#index .ex-native-home .product-miniature__actions{margin-top:auto!important}

.ex-promos{background:#fff!important}
.ex-promo--dark{background:linear-gradient(135deg,#111619,#262d31)!important;color:#fff!important}
.ex-promo--red{background:linear-gradient(135deg,#c8000e,#e30613)!important;color:#fff!important}
.ex-promo span{font-size:11px!important;font-weight:950!important;letter-spacing:.14em!important}
.ex-promo h3,.ex-promo p{color:inherit!important}

.ex-trust{background:#f4f5f6!important;border-top:1px solid #e2e5e7!important;border-bottom:1px solid #e2e5e7!important}
.ex-trust-grid>div{border-right:1px solid #dfe3e5!important}
.ex-trust-grid>div:last-child{border-right:0!important}
.ex-trust-grid .material-icons{color:#e30613!important}

@media(max-width:767px){
 .ex-trust-grid>div{border-right:0!important;border-bottom:1px solid #dfe3e5!important}
 .ex-trust-grid>div:last-child{border-bottom:0!important}
}

/* ==========================================================================
   EXELIXIS V1.7.0 — catalogue/listing foundation (CSS only)
   Based on Hummingbird 2.x native listing selectors.
   ========================================================================== */

/* Global catalogue surface */
body#category #wrapper,
body#search #wrapper,
body#manufacturer #wrapper,
body#prices-drop #wrapper,
body#new-products #wrapper,
body#best-sales #wrapper{background:#f5f6f7!important}

body#category .center-column,
body#search .center-column,
body#manufacturer .center-column,
body#prices-drop .center-column,
body#new-products .center-column,
body#best-sales .center-column{padding-top:28px!important;padding-bottom:70px!important}

/* Listing title */
#js-product-list-header{margin-bottom:24px!important}
#js-product-list-header h1,
#js-product-list-header .page-title{
 color:#111619!important;font-size:34px!important;font-weight:950!important;
 line-height:1.12!important;letter-spacing:-.035em!important
}

/* Products toolbar */
#products #js-product-list-top{
 background:#fff!important;border:1px solid #e0e4e6!important;border-radius:6px!important;
 padding:12px 16px!important;margin-bottom:20px!important
}
#products .products-selection,
#products .sort-by-row{margin:0!important}

/* Catalogue cards */
#products .products{
 display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
 gap:20px!important
}
#products .product-miniature{
 width:100%!important;max-width:none!important;margin:0!important
}
#products .product-miniature__inner{
 height:100%!important;background:#fff!important;border:1px solid #dfe3e5!important;
 border-radius:7px!important;overflow:hidden!important;box-shadow:none!important;
 transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease!important
}
#products .product-miniature__inner:hover{
 transform:translateY(-3px)!important;border-color:#c8cfd2!important;
 box-shadow:0 12px 26px rgba(17,22,25,.08)!important
}
#products .product-miniature__image-container{
 aspect-ratio:1/1!important;background:#fff!important;padding:18px!important;
 display:flex!important;align-items:center!important;justify-content:center!important;
 border-bottom:1px solid #eef0f1!important
}
#products .product-miniature__image{
 width:100%!important;height:100%!important;object-fit:contain!important
}
#products .product-miniature__bottom{padding:16px!important;background:#fff!important}
#products .product-miniature__infos{text-align:left!important}
#products .product-miniature__title{
 color:#111619!important;font-size:14px!important;font-weight:850!important;
 line-height:1.4!important;text-decoration:none!important
}
#products .product-miniature__title:hover{color:#e30613!important}
#products .product-miniature__prices{margin-top:10px!important}
#products .product-miniature__price{
 color:#111619!important;font-size:20px!important;font-weight:950!important
}
#products .product-miniature__regular-price{font-size:12px!important;color:#818a90!important}
#products .product-miniature__add{
 width:100%!important;min-height:42px!important;background:#e30613!important;
 border-color:#e30613!important;border-radius:4px!important;color:#fff!important;
 font-size:12px!important;font-weight:950!important;text-transform:uppercase!important
}
#products .product-miniature__add:hover{background:#bd0010!important;border-color:#bd0010!important}
#products .product-flags .badge{border-radius:3px!important}

/* Facets/sidebar */
#left-column .block-categories,
#left-column #search_filters,
#left-column .facet{
 background:#fff!important;border:1px solid #e0e4e6!important;border-radius:6px!important
}
#left-column .block-categories,
#left-column #search_filters{padding:18px!important;margin-bottom:18px!important}
#left-column .facet{border:0!important;border-radius:0!important}
#left-column .facet-title,
#left-column .block-categories .h6{
 color:#111619!important;font-size:13px!important;font-weight:950!important;
 text-transform:uppercase!important;letter-spacing:.035em!important
}
#left-column a{color:#333b40!important}
#left-column a:hover{color:#e30613!important}

/* Pagination */
#products .pagination{margin-top:32px!important}
#products .pagination a{color:#111619!important}
#products .pagination .current a,
#products .pagination .active a{background:#e30613!important;color:#fff!important;border-color:#e30613!important}

/* Breadcrumb */
.breadcrumb{font-size:12px!important;color:#737c82!important}
.breadcrumb a{color:#4e585e!important;text-decoration:none!important}
.breadcrumb a:hover{color:#e30613!important}

/* Responsive listing */
@media(max-width:1100px){
 #products .products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:767px){
 body#category .center-column,body#search .center-column{padding-top:18px!important}
 #js-product-list-header h1,#js-product-list-header .page-title{font-size:28px!important}
 #products .products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
 #products .product-miniature__bottom{padding:12px!important}
}
@media(max-width:420px){
 #products .products{grid-template-columns:1fr!important}
}
