/* Seasonal decoration only. Product data, navigation and checkout stay in their original components. */
body.lrc-halloween{background-color:#0c0710;background-image:radial-gradient(ellipse at 5% 30%,#34122c66,transparent 46%),radial-gradient(ellipse at 97% 70%,#5a271329,transparent 42%);}
.lrc-halloween .header{background:rgba(13,7,19,.97);border-bottom-color:#c578354f;box-shadow:0 5px 30px #0008;}
.lrc-halloween .header:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,#e29657,#8c4eae,transparent);pointer-events:none;}
.lrc-halloween .btn-primary{background:linear-gradient(115deg,#efbd77,#df8939 62%,#c7672f);color:#20100b;border-color:#e8a361;box-shadow:0 4px 24px #d9782520;}
.lrc-halloween .btn-primary:hover{background:linear-gradient(115deg,#f9d393,#eea54d);box-shadow:0 5px 32px #e5894040;}
.lrc-halloween .product{border-color:#83512652;box-shadow:0 9px 26px #0004;}
.lrc-halloween .product:hover{border-color:#de914c99;box-shadow:0 12px 35px #6b331928;}
.lrc-halloween .product img{filter:none;}
.lrc-halloween .footer{background:linear-gradient(180deg,#110919,#09060d);border-top:1px solid #9355254d;}
.hw-hero{isolation:isolate;min-height:min(790px,91vh);overflow:hidden;background:#100a16;}
.lrc-halloween .hw-hero .hero-bg{background-image:url('/assets/halloween-royaume-20261010.webp')!important;background-size:cover!important;background-position:center 40%!important;opacity:1!important;transform:none!important;}
.lrc-halloween .hw-hero .hero-overlay{background:linear-gradient(90deg,rgba(9,5,15,.46),rgba(9,5,15,.2) 44%,transparent 72%),linear-gradient(0deg,#0c0710,transparent 22%)!important;}
.hw-hero .hero-inner{position:relative;z-index:3;}
.hw-hero .hero-content{max-width:570px;padding-top:20px;padding-bottom:30px;}
.hw-hero .hero-content>p:not(.hw-kicker){max-width:490px;color:#ede0e7;text-shadow:0 2px 12px #000;}
.hw-hero .hero-tag{display:none;}
.hw-hero h1{text-shadow:0 4px 30px #0009;}
.hw-hero h1 em{color:#edb565;}
.hw-kicker{font-family:var(--font-body,Arial,sans-serif);font-size:11px!important;font-weight:650;letter-spacing:.24em;line-height:1.7;color:#efba81!important;margin:0 0 18px;text-transform:uppercase;}
.hw-hero .hero-trust{background:#10081299;border:1px solid #9a652644;border-radius:10px;padding:16px 22px;backdrop-filter:blur(6px);width:fit-content;}
.hw-hero-mist{position:absolute;z-index:2;pointer-events:none;inset:36% -20% -7%;background:radial-gradient(ellipse at 30% 90%,#79429042,transparent 42%),radial-gradient(ellipse at 70% 76%,#9972b03d,transparent 46%);filter:blur(24px);animation:hw-mist-drift 23s ease-in-out infinite alternate;}
.hw-bats{position:absolute;z-index:2;pointer-events:none;top:19%;left:46%;width:74px;color:#030206;opacity:0;animation:hw-bat-flight 29s ease-in-out infinite;}
.hw-bats svg{width:100%;filter:drop-shadow(0 0 1px #84559d);}
.hw-decor{position:fixed;inset:0;pointer-events:none!important;z-index:11;overflow:hidden;contain:strict;}
.hw-decor *{pointer-events:none!important;}
.hw-web{position:absolute;top:0;width:clamp(110px,14vw,230px);color:#bbacc280;filter:drop-shadow(0 2px 2px #000);}
.hw-web svg{width:100%;}
.hw-web-left{left:0;}
.hw-web-right{right:0;transform:scaleX(-1);width:clamp(115px,16vw,255px);opacity:.8;}
.hw-spider{position:absolute;top:-175px;width:37px;height:250px;transform-origin:50% 0;filter:drop-shadow(1px 2px 2px #ab75993d);}
.hw-spider i{display:block;height:205px;width:1px;background:linear-gradient(#e0c7e455,#ae90bb99);margin:auto;}
.hw-spider svg{display:block;width:100%;height:43px;}
.hw-spider-left{left:2%;animation:hw-spider-drop 24s ease-in-out infinite;}
.hw-spider-right{right:2.2%;width:29px;animation:hw-spider-drop 31s 9s ease-in-out infinite;}
.hw-ground-fog{position:absolute;height:13vh;bottom:-7vh;left:-15%;right:-15%;background:radial-gradient(ellipse at 25% 100%,#6542754d,transparent 62%),radial-gradient(ellipse at 82% 100%,#9b673738,transparent 62%);filter:blur(18px);animation:hw-mist-drift 26s ease-in-out infinite alternate;}
.lrc-halloween .hw-entrance{background:#0b0710 url('/assets/halloween-royaume-20261010.webp') center/cover no-repeat;isolation:isolate;}
.hw-entrance .entrance-video{visibility:hidden;}
.hw-entrance .hw-entrance-decor{position:absolute;z-index:5;}
.hw-entrance .entrance-bg,.hw-entrance .entrance-bg-flow{display:none!important;}
.lrc-halloween .hw-entrance .entrance-overlay{background:linear-gradient(90deg,#0a061173,#0a0611a6 47%,#0a06112b),linear-gradient(0deg,#08040ed9,transparent 50%);}
.hw-entrance .entrance-content{position:relative;z-index:10;text-shadow:0 2px 14px #000;max-width:650px;}
.hw-entrance .entrance-crown{width:112px;height:112px;filter:drop-shadow(0 0 20px #c780274d);}
.hw-entrance .entrance-title{font-size:clamp(40px,6.6vw,76px);margin-top:10px;}
.hw-entrance .entrance-sub{color:#efb16c;letter-spacing:.28em;font-size:11px;}
.hw-seal{color:#ffd398;font-size:11px;font-weight:600;letter-spacing:.4em;margin-bottom:16px;display:flex;align-items:center;justify-content:center;gap:16px;}
.hw-seal:before,.hw-seal:after{content:"";width:42px;height:1px;background:linear-gradient(90deg,transparent,#eab36e);}
.hw-seal:after{transform:rotate(180deg);}
.hw-entrance .entrance-msg{color:#e6d7df;background:#10091680;border-radius:8px;padding:8px 14px;}
.hw-entrance .btn-enter{background:linear-gradient(115deg,#edbc7c,#e48e43);}
.hw-shop-banner{position:relative;overflow:hidden;isolation:isolate;min-height:214px;margin:0 0 28px;padding:32px 34px;border:1px solid #a5683d80;border-radius:16px;background:#160c1b url('/assets/halloween-royaume-20261010.webp') right 45%/cover;box-shadow:0 12px 50px #0005;}
.hw-shop-banner:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#0b0714e8,#100a1f91 55%,#09051119);}
.hw-shop-banner>div{max-width:65%;}
.hw-shop-banner .hw-kicker{font-size:10px!important;margin-bottom:8px;}
.hw-shop-banner h2{font-family:var(--font-display,Georgia,serif);font-size:clamp(27px,3.5vw,42px);font-weight:500;line-height:1.2;color:#ffdbac;margin:0 0 10px;}
.hw-shop-banner p:not(.hw-kicker){font-size:13px;color:#e4d6df;margin:0;}
.hw-motion-control{position:relative;display:block;appearance:none;background:transparent!important;border:0;border-bottom:1px solid #c6a99d50;border-radius:0;padding:4px 0;margin-top:18px;min-height:32px;font:inherit;font-size:10px;letter-spacing:.035em;color:#d7c2d0;cursor:pointer;width:fit-content;}
.hw-motion-control:hover{color:#ffe2ba;border-bottom-color:#e9b47b;}
.hw-motion-control:focus-visible{outline:2px solid #efba81;outline-offset:5px;}
.hw-entrance .hw-motion-control{margin:12px auto 0;}
.hw-motion-paused .hw-decor *,.hw-motion-paused .hw-hero-mist,.hw-motion-paused .hw-bats,.hw-tab-hidden .hw-decor *,.hw-tab-hidden .hw-hero-mist,.hw-tab-hidden .hw-bats{animation-play-state:paused!important;}
@keyframes hw-mist-drift{from{transform:translate3d(-3%,0,0);opacity:.55}to{transform:translate3d(5%,3%,0);opacity:.9}}
@keyframes hw-spider-drop{0%,15%,100%{transform:translateY(-45px) rotate(-3deg)}35%,58%{transform:translateY(130px) rotate(3deg)}68%{transform:translateY(90px) rotate(-2deg)}82%{transform:translateY(-45px) rotate(0)}}
@keyframes hw-bat-flight{0%,68%,100%{opacity:0;transform:translate(-120px,25px) scale(.3) rotate(-5deg)}72%{opacity:.9}83%{opacity:.8;transform:translate(300px,-80px) scale(.6) rotate(9deg)}88%{opacity:0;transform:translate(480px,-140px) scale(.3) rotate(-6deg)}}
@media(min-width:1500px){.hw-spider-left{left:3.7%}.hw-spider-right{right:3.7%}}
@media(max-width:900px){.hw-hero{min-height:740px;}.lrc-halloween .hw-hero .hero-bg{background-position:65% center!important;}.lrc-halloween .hw-hero .hero-overlay{background:linear-gradient(90deg,#0a0512b8,#0a051247 85%),linear-gradient(0deg,#0c0710,transparent 30%)!important;}.hw-hero .hero-content{max-width:520px;}.hw-spider{width:25px;}.hw-shop-banner{padding:26px;}}
@media(max-width:600px){.hw-hero{min-height:700px;}.lrc-halloween .hw-hero .hero-bg{background-position:74% top!important;background-size:auto 540px!important;background-repeat:no-repeat;}.lrc-halloween .hw-hero .hero-overlay{background:linear-gradient(0deg,#0c0710 9%,#0c0710d9 45%,#0c07103b 81%),linear-gradient(90deg,#0c07104d,transparent)!important;}.hw-hero .hero-content{padding-top:170px;padding-bottom:25px;}.hw-hero h1{font-size:48px;}.hw-hero .hero-content>p:not(.hw-kicker){font-size:14px;}.hw-hero .hw-kicker{font-size:9px!important;letter-spacing:.17em;max-width:260px;}.hw-hero .hero-trust{padding:12px 14px;}.hw-web{width:90px;opacity:.65;}.hw-web-right{width:105px;}.hw-spider{width:22px;}.hw-spider-left{left:5px;}.hw-spider-right{right:5px;}.hw-ground-fog{height:9vh;}.hw-shop-banner{min-height:196px;padding:23px 20px;background-position:69% center;}.hw-shop-banner>div{max-width:78%;}.hw-shop-banner h2{font-size:29px;}.hw-shop-banner p:not(.hw-kicker){font-size:12px;max-width:190px;}.hw-shop-banner:before{background:linear-gradient(90deg,#0b0714ed,#100a1f80 73%,#09051121);}.lrc-halloween .hw-entrance{background-position:71% center;}.lrc-halloween .hw-entrance .entrance-overlay{background:linear-gradient(0deg,#090611ed,#0906119c 58%,#09061145);}.hw-entrance .entrance-content{padding-top:20px!important;padding-bottom:42px!important;}.hw-entrance .entrance-crown{width:84px;height:84px;}.hw-entrance .entrance-title{font-size:42px;}.hw-seal{margin-bottom:10px;font-size:10px;}.hw-entrance .entrance-msg{font-size:12px;}.hw-entrance .entrance-sub{font-size:9px;letter-spacing:.2em;}.hw-bats{top:12%;left:10%;width:45px;}}
@media(prefers-reduced-motion:reduce){.hw-decor *,.hw-hero-mist,.hw-bats{animation:none!important;}.hw-bats{display:none;}.hw-ground-fog{opacity:.4;}}

/* Compact entrance: controls and legal line flow separately, including small screens. */
.lrc-halloween .hw-entrance{flex-direction:column;overflow-y:auto;}
.hw-entrance .entrance-content{flex:0 0 auto;margin:auto;padding:22px 24px 20px;}
.hw-entrance .entrance-crown{width:88px;height:88px;margin-bottom:10px;}
.hw-entrance .entrance-title{font-size:clamp(36px,5vw,62px);}
.hw-entrance .entrance-sub{margin-bottom:16px;}
.hw-entrance .entrance-divider{margin-bottom:16px;}
.hw-entrance .entrance-msg{margin-bottom:18px;font-size:14px;line-height:1.55;}
.hw-entrance .entrance-legal{position:relative;inset:auto;flex:0 0 auto;width:100%;padding:10px 20px 18px;}
@media(max-width:600px){.hw-entrance .entrance-content{padding-bottom:16px!important;}.hw-entrance .entrance-title{font-size:42px;}}

/* Seasonal overlay only: the original product photographs are untouched. */
.lrc-halloween .product-img,.lrc-halloween .gallery-main,.lrc-halloween .product-gallery:not(.has-gallery){position:relative;}
.lrc-halloween .product-img::after,.lrc-halloween .gallery-main::after,.lrc-halloween .product-gallery:not(.has-gallery)::after{content:"";position:absolute;top:0;left:0;width:min(34%,132px);aspect-ratio:1;pointer-events:none;z-index:2;opacity:.92;filter:drop-shadow(0 1px 1px #08050d);background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20240%20240%22%20fill%3D%22none%22%3E%3Cg%20stroke%3D%22%23f4e6f8%22%20stroke-width%3D%222.6%22%3E%3Cpath%20d%3D%22M0%200L235%209M0%200L224%2079M0%200L182%20159M0%200L116%20211M0%200L35%20237M0%200L1%20238%22%2F%3E%3Cpath%20d%3D%22M46%202Q39%208%2044%2016Q32%2017%2035%2031Q22%2027%2022%2041Q11%2035%207%2046Q2%2042%200%2047M93%204Q78%2018%2089%2031Q66%2036%2072%2063Q44%2056%2046%2084Q20%2072%2014%2094Q3%2085%200%2095M140%205Q119%2026%20134%2047Q98%2052%20108%2094Q65%2084%2069%20126Q33%20109%2021%20142Q5%20130%200%20143M186%207Q158%2036%20178%2063Q132%2071%20144%20126Q89%20113%2092%20168Q42%20145%2028%20189Q8%20176%200%20191M234%209Q198%2046%20224%2079Q163%2088%20182%20159Q110%20142%20116%20211Q53%20181%2035%20237Q9%20220%200%20238%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") left top/contain no-repeat;}

/* Paint the seasonal entrance before deferred scripts: no flash of the hand video. */
.lrc-halloween-season #entrance{background:#0b0710 url("/assets/halloween-royaume-20261010.webp") center/cover no-repeat;}
.lrc-halloween-season #entrance .entrance-video{visibility:hidden;}
@media(max-width:600px){.lrc-halloween-season #entrance{background-position:71% center;}}
