/* Vitality's six editorial universes. All selectors are scoped; native PrestaShop products/cart are unchanged. */
.vt-hub,.vt-universe,.vt-page #js-product-list{font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif}
.vt-hub,.vt-universe{color:#292a2b;--vt-dark:#222427;--vt-muted:#6c6f70}
.vt-hub *,.vt-universe *{box-sizing:border-box}
.vt-hub a,.vt-universe a{text-decoration:none}
.vt-eyebrow{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;font-weight:800}
.vt-eyebrow span{opacity:.5;padding:0 .25rem}
.vt-hub{margin:1.2rem 0 2rem;border-radius:1rem;overflow:hidden}
.vt-hub__hero{display:grid;grid-template-columns:1.12fr .88fr;min-height:370px;background:#f4f2ec}
.vt-hub__hero-copy{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(1.65rem,4.2vw,4rem)}
.vt-hub__hero-copy>.vt-eyebrow{color:#87877e;margin:0 0 1.25rem}
.vt-hub__logo{width:clamp(8.5rem,18vw,15rem);max-height:92px;object-fit:contain;object-position:left center;mix-blend-mode:multiply;margin:0 0 .45rem}
.vt-hub__baseline{font-size:.62rem;letter-spacing:.19em;font-weight:800;margin:0 0 1.2rem}
.vt-hub__hero h2{font-size:clamp(2.1rem,4.5vw,4.1rem);line-height:1.05;letter-spacing:-.057em;font-weight:780;margin:0 0 1.2rem}
.vt-hub__hero h2 em{font-style:normal;color:#cc7463;font-weight:440}
.vt-hub__hero-copy>p:not(.vt-eyebrow):not(.vt-hub__baseline){line-height:1.65;color:#5e6062;font-size:.98rem;max-width:39rem;margin:0}
.vt-hub__cta,.vt-universe__cta{display:inline-flex;align-items:center;gap:2rem;background:#222427;color:#fff!important;padding:.9rem 1.1rem;margin-top:1.6rem;border-right:4px solid #cc7964;font-size:.78rem;font-weight:780}
.vt-hub__hero-art{background:linear-gradient(125deg,#f3c5b2,#d47973 52%,#aa5d65);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}
.vt-hub__hero-art:after{content:"";position:absolute;width:74%;height:64%;border:1px solid rgba(255,255,255,.5);transform:rotate(-12deg)}
.vt-hub__hero-art>span{font-size:clamp(14rem,29vw,29rem);font-family:Georgia,serif;font-style:italic;line-height:1;letter-spacing:-.17em;color:rgba(255,255,255,.65)}
.vt-hub__hero-accent{font-size:.6em}
.vt-hub__hero-art small{position:absolute;bottom:1.4rem;right:1.5rem;color:#fff;font-size:.6rem;letter-spacing:.18em;font-weight:800}
.vt-hub__section-label{background:#fff;display:flex;justify-content:space-between;align-items:center;padding:1.35rem 1.6rem;border:1px solid #e3e4e1;font-weight:800;font-size:.68rem;letter-spacing:.13em}
.vt-hub__section-label span:last-child{color:#9c9e9d}
.vt-hub__cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#e4e5e3}
.vt-card{display:flex;min-width:0;flex-direction:column;background:#fff;color:#2b2c2d!important;transition:transform .2s,box-shadow .2s;overflow:hidden}
.vt-card:focus-visible{outline:3px solid #34363a;outline-offset:-3px}
.vt-card:hover{position:relative;z-index:1;transform:translateY(-3px);box-shadow:0 12px 32px rgba(0,0,0,.1)}
.vt-card__top{display:flex;justify-content:space-between;gap:.5rem;align-items:center;padding:.95rem 1.15rem;font-size:.62rem;letter-spacing:.1em;font-weight:800;border-bottom:1px solid #e1e2df}
.vt-card__top span:last-child{letter-spacing:0;color:#777e80}
.vt-card__art{position:relative;height:190px;overflow:hidden;display:flex;align-items:center;justify-content:center}
.vt-card--color .vt-card__art{background:linear-gradient(118deg,#eeb7b2,#bf6575)}
.vt-card--care .vt-card__art{background:linear-gradient(118deg,#edc57f,#dc9953)}
.vt-card--scalp .vt-card__art{background:linear-gradient(118deg,#e1d8e9,#ac9ccc)}
.vt-card--styling .vt-card__art{background:linear-gradient(118deg,#303b47,#687b86)}
.vt-card--man .vt-card__art{background:linear-gradient(118deg,#a7b8ab,#697f70)}
.vt-card--studio .vt-card__art{background:linear-gradient(118deg,#e7e1d6,#a6a09a)}
.vt-card__letter,.vt-universe__initial{font-family:Georgia,serif;font-style:italic;font-size:10rem;color:rgba(255,255,255,.5);line-height:1}
.vt-card__art img,.vt-universe__art img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:.85rem;mix-blend-mode:multiply;transition:transform .3s}
.vt-card:hover .vt-card__art img{transform:scale(1.045)}
.vt-card__copy{flex:1;display:flex;flex-direction:column;padding:1.4rem}
.vt-card__label{font-size:.62rem;color:#83878a;font-weight:780;letter-spacing:.14em;margin-bottom:.75rem}
.vt-card__copy>strong{font-size:clamp(1.5rem,2.4vw,2.4rem);font-weight:760;letter-spacing:-.05em;line-height:1.05}
.vt-card__copy>p{font-size:.88rem;color:#666a6b;line-height:1.56;min-height:3.9rem;margin:.85rem 0 1.3rem}
.vt-card__action{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #e7e8e7;padding-top:1rem;margin-top:auto;font-size:.73rem;text-transform:uppercase;letter-spacing:.055em;font-weight:780}
.vt-card__action b{font-size:1.05rem;font-weight:500}
.vt-hub__assurances{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:#f2f4f2}
.vt-hub__assurances>div{padding:1.4rem;display:flex;align-items:flex-start;gap:.9rem;border-right:1px solid #dde2df}
.vt-hub__assurances>div:last-child{border-right:0}
.vt-hub__assurances>div>span{font-size:1.65rem}
.vt-hub__assurances p{margin:0;display:flex;flex-direction:column;gap:.35rem}
.vt-hub__assurances strong{font-size:.85rem}
.vt-hub__assurances small{font-size:.75rem;color:#6c7470;line-height:1.4}
.vt-hub__all{text-align:right;font-size:.82rem;color:#707677;margin:1.1rem .25rem}
.vt-hub__all a{color:#313437!important;text-decoration:underline}
.vt-universe{margin:1rem 0 1.7rem;border:1px solid #e3e5e2;border-radius:.9rem;overflow:hidden}
.vt-universe__hero{display:grid;grid-template-columns:1.13fr .87fr;min-height:340px}
.vt-universe__copy{padding:clamp(1.75rem,4.2vw,4rem);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.vt-universe__copy>.vt-eyebrow{font-size:.65rem;color:#7c8180}
.vt-universe__number{margin:.95rem 0;font-size:.66rem;letter-spacing:.18em;font-weight:800;opacity:.55}
.vt-universe__copy h1{font-size:clamp(2rem,4.2vw,4rem);letter-spacing:-.054em;font-weight:770;line-height:1.03;margin:0 0 1.15rem}
.vt-universe__copy h1 em{font-style:normal;font-weight:420}
.vt-universe__copy>p:not(.vt-eyebrow):not(.vt-universe__number){font-size:.98rem;color:#5d6263;max-width:41rem;line-height:1.65;margin:0}
.vt-universe--color .vt-universe__copy{background:#faf0ee}
.vt-universe--care .vt-universe__copy{background:#faf3e6}
.vt-universe--scalp .vt-universe__copy{background:#f0edf6}
.vt-universe--styling .vt-universe__copy{background:#242a32;color:#f6f8f9}
.vt-universe--styling .vt-universe__copy>.vt-eyebrow,.vt-universe--styling .vt-universe__copy>p:not(.vt-eyebrow):not(.vt-universe__number){color:#ced3d6}
.vt-universe--man .vt-universe__copy{background:#edf1ed}
.vt-universe--studio .vt-universe__copy{background:#f2f0eb}
.vt-universe__art{position:relative;display:flex;align-items:center;justify-content:center;min-height:280px;overflow:hidden}
.vt-universe--color .vt-universe__art{background:#d08b91}
.vt-universe--care .vt-universe__art{background:#d9a15f}
.vt-universe--scalp .vt-universe__art{background:#afa3cb}
.vt-universe--styling .vt-universe__art{background:#51636d}
.vt-universe--man .vt-universe__art{background:#90a296}
.vt-universe--studio .vt-universe__art{background:#c1b9ac}
.vt-universe__initial{font-size:clamp(12rem,22vw,23rem)}
.vt-universe__art small{position:absolute;bottom:1.2rem;right:1.4rem;font-size:.61rem;letter-spacing:.13em;font-weight:760;color:#fff}
.vt-universe__nav{display:flex;align-items:stretch;flex-wrap:wrap;background:#fff;border-top:1px solid #e2e4e2;border-bottom:1px solid #e2e4e2}
.vt-universe__nav a{color:#393e3f!important;font-size:.76rem;font-weight:730;white-space:nowrap;padding:.88rem 1rem;border-right:1px solid #e8eae8}
.vt-universe__nav a.is-active{background:#f3f3f1;box-shadow:inset 0 -3px #ba8277}
.vt-universe__below{display:flex;justify-content:space-between;align-items:end;gap:1rem;padding:1.55rem 1.8rem;background:#fff}
.vt-universe__below .vt-eyebrow{color:#909493;font-size:.63rem}
.vt-universe__below h2{font-size:clamp(1.4rem,2.4vw,2.3rem);letter-spacing:-.045em;margin:.35rem 0 0}
.vt-universe__below p{color:#868b89;font-size:.78rem;margin:0}
.vt-universe__benefits{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;background:#f5f6f4;padding:1.1rem 1.6rem;color:#606769;font-size:.78rem}
.vt-universe__benefits b{font-size:1.1rem;color:#aa7369;padding-right:.35rem}
.vt-universe__anchor{display:block;position:relative;top:-6rem;visibility:hidden}
.vt-page #js-product-list .products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;align-items:stretch}
.vt-page #js-product-list .product-miniature{margin:0;display:block;min-width:0;align-self:stretch}
.vt-page #js-product-list .product-miniature__inner{height:100%;display:flex;flex-direction:column;border:1px solid #e2e4e1!important;border-radius:.72rem!important;box-shadow:0 3px 14px rgba(0,0,0,.035);background:#fff!important;overflow:hidden;transition:transform .2s,box-shadow .2s}
.vt-page #js-product-list .product-miniature__inner:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(0,0,0,.1)}
.vt-page #js-product-list .product-miniature__top{display:flex;align-items:center;justify-content:center;min-height:175px;background:#fafaf9}
.vt-page #js-product-list .product-miniature__image{width:100%;max-height:210px;object-fit:contain;mix-blend-mode:multiply}
.vt-page #js-product-list .product-miniature__bottom{padding:1.05rem!important;display:flex;flex-direction:column;gap:.45rem;flex:1}
.vt-page #js-product-list .product-miniature__infos{display:flex;flex-direction:column;gap:.45rem;flex:1}
.vt-page #js-product-list .product-miniature__title{font-size:1rem!important;color:#2b2f30!important;line-height:1.33;min-height:2.6rem}
.vt-page #js-product-list .product-miniature__prices,.vt-page #js-product-list .product-miniature__actions{margin-top:auto}
.vt-page #js-product-list .product-miniature__add{border-radius:.36rem!important}
.vt-page #js-product-list .vt-product-chip{display:inline-flex;align-self:start;background:#f5e9e6;color:#64433d;font-size:.68rem;border-radius:30px;font-weight:780;letter-spacing:.025em;padding:.25rem .65rem}
@media(max-width:1100px){.vt-page #js-product-list .products{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:850px){.vt-hub__hero,.vt-universe__hero{grid-template-columns:1fr}.vt-hub__hero-art{min-height:130px}.vt-hub__hero-art>span{font-size:10rem}.vt-hub__cards{grid-template-columns:repeat(2,minmax(0,1fr))}.vt-universe__art{min-height:210px}.vt-universe__initial{font-size:12rem}.vt-hub__assurances{grid-template-columns:1fr}.vt-hub__assurances>div{border-right:0;border-bottom:1px solid #dfe2de}}
@media(max-width:700px){.vt-page #js-product-list .products{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.vt-universe__nav{flex-wrap:nowrap;overflow-x:auto}.vt-universe__below{align-items:start;flex-direction:column}.vt-universe__copy,.vt-hub__hero-copy{padding:1.65rem}}
@media(max-width:460px){.vt-hub__cards,.vt-page #js-product-list .products{grid-template-columns:1fr}.vt-universe__copy h1,.vt-hub__hero h2{font-size:2.2rem}.vt-universe__benefits{flex-direction:column;align-items:flex-start}.vt-card__art{height:175px}}
@media(prefers-reduced-motion:reduce){.vt-card,.vt-card__art img,.vt-page #js-product-list .product-miniature__inner{transition:none}}
