
/* ============================================================
   LA ROJA RP v1.14 — EXACT MOCKUP PASS
   Full viewport + exact approved visual assets + promotion motion
   ============================================================ */

:root{
  --lr114-bg:#020202;
  --lr114-panel:#080404;
  --lr114-panel2:#0d0505;
  --lr114-red:#e7191d;
  --lr114-red2:#8c080b;
  --lr114-orange:#ff6717;
  --lr114-gold:#ffc23c;
  --lr114-text:#fff7ef;
  --lr114-muted:#a9958c;
  --lr114-line:rgba(255,137,28,.34);
}

/* TRUE FULL-VIEWPORT OVERRIDES */
html,body{max-width:none!important}
body.laroja-v19-page{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  overflow-x:hidden!important;
  background:#020202!important;
}
body.laroja-v19-page #page,
body.laroja-v19-page .site,
body.laroja-v19-page .site-content,
body.laroja-v19-page .content-area,
body.laroja-v19-page .site-main,
body.laroja-v19-page .entry-content,
body.laroja-v19-page .wp-site-blocks,
body.laroja-v19-page .wp-block-post-content,
body.laroja-v19-page .container,
body.laroja-v19-page .site-container,
body.laroja-v19-page .content,
body.laroja-v19-page .ast-container,
body.laroja-v19-page .generate-columns-container{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  padding-left:0!important;
  padding-right:0!important;
}
body.laroja-v19-page .entry-content>.lr19-site,
body.laroja-v19-page .entry-content>.lr19-page,
body.laroja-v19-page .lr19-site{
  position:relative!important;
  left:50%!important;
  width:100vw!important;
  max-width:100vw!important;
  margin-left:-50vw!important;
  margin-right:0!important;
}
.lr19-site,
.lr19-page,
.lr-shop,
.lr19-home,
.lr19-account-page,
.lr19-policy.lr-policy{
  max-width:none!important;
  width:100%!important;
}

/* TOP PROMOTION — only exists when a real coupon exists */
.lr19-promo-top{
  position:relative!important;
  overflow:hidden!important;
  min-height:39px!important;
  padding:7px clamp(14px,3vw,54px)!important;
  background:
    linear-gradient(90deg,#720608,#c91b16 34%,#a60b0b 66%,#4d0506)!important;
  border-bottom:1px solid rgba(255,192,47,.46)!important;
  box-shadow:0 0 26px rgba(230,18,22,.20)!important;
}
.lr19-promo-top:before{
  content:"";
  position:absolute;
  inset:-120% -20%;
  background:linear-gradient(110deg,transparent 38%,rgba(255,255,255,.28) 48%,transparent 58%);
  transform:translateX(-60%);
  animation:lr114PromoSweep 3.5s linear infinite;
  pointer-events:none;
}
.lr19-promo-top:after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:0;height:2px;
  background:linear-gradient(90deg,transparent,#ffc13c,#ff3d20,#ffc13c,transparent);
  animation:lr114PromoLine 2.2s ease-in-out infinite;
}
.lr19-promo-copy b{
  color:#fff2ad!important;
  text-shadow:0 0 10px rgba(255,194,60,.42);
  animation:lr114PromoPulse 1.45s ease-in-out infinite;
}
.lr19-promo-code{
  cursor:pointer;
  border:1px solid rgba(255,201,64,.50);
  border-radius:6px;
  padding:5px 10px;
  background:rgba(10,3,3,.36);
  transition:.2s ease;
  animation:lr114CodeFloat 2.2s ease-in-out infinite;
}
.lr19-promo-code:hover{
  transform:scale(1.045);
  background:rgba(255,174,34,.12);
}
.lr19-promo-code strong{
  color:#fff6d2!important;
  text-shadow:0 0 10px rgba(255,194,60,.42);
}
.lr19-promo-code.is-copied{
  background:linear-gradient(90deg,#8b0d0d,#df2419)!important;
  box-shadow:0 0 25px rgba(232,39,25,.34)!important;
}
.lr19-promo-expire em{
  color:#ffd25c!important;
  animation:lr114TimerBlink 1s steps(2,end) infinite;
}

/* GLOBAL HEADER */
.lr19-header{
  width:100%!important;
  height:72px!important;
  padding:0 clamp(18px,3.5vw,62px)!important;
  background:rgba(2,2,2,.975)!important;
  border-bottom:1px solid rgba(255,115,20,.26)!important;
}
.lr19-brand-name{font-size:19px!important}
.lr19-brand-shield{
  width:42px!important;height:46px!important;
  background:linear-gradient(145deg,#f21d27,#5b0306)!important;
  box-shadow:0 0 25px rgba(230,24,28,.35)!important;
}
.lr19-nav{gap:18px!important}
.lr19-nav a{font-size:10px!important}

/* HERO: exact approved image is visible, not hidden */
.lr114-home-hero{
  position:relative!important;
  width:100%!important;
  min-height:calc(100vh - 111px)!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.45fr) minmax(330px,.55fr)!important;
  align-items:center!important;
  padding:clamp(48px,6vw,90px) clamp(24px,5vw,76px) 150px!important;
  border:0!important;
  border-radius:0!important;
  background:
    linear-gradient(90deg,rgba(1,1,1,.72) 0%,rgba(9,1,1,.45) 43%,rgba(6,1,1,.20) 100%),
    linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.68)),
    url("visuals-v114/home-hero-exact.jpg") center center / cover no-repeat!important;
  box-shadow:inset 0 -150px 160px rgba(0,0,0,.78)!important;
}
.lr114-home-hero:before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background:
    radial-gradient(circle at 60% 25%,rgba(255,72,14,.14),transparent 20rem),
    linear-gradient(90deg,rgba(0,0,0,.35),transparent 40%,rgba(0,0,0,.15))!important;
}
.lr114-home-hero:after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    repeating-linear-gradient(90deg,transparent 0 89px,rgba(255,255,255,.008) 90px),
    linear-gradient(180deg,transparent 70%,rgba(126,0,0,.08));
}
.lr114-home-copy{position:relative;z-index:3;max-width:860px!important}
.lr114-home-copy h1{
  margin:10px 0 0!important;
  font-size:clamp(72px,8.8vw,140px)!important;
  line-height:.82!important;
  letter-spacing:-.085em!important;
  text-shadow:0 20px 50px rgba(0,0,0,.78)!important;
}
.lr114-home-copy h1 strong{
  color:#eb2025!important;
  filter:drop-shadow(0 0 13px rgba(235,32,37,.20));
}
.lr114-home-copy h2{
  margin:22px 0 12px!important;
  font-size:clamp(18px,1.4vw,26px)!important;
}
.lr114-home-copy p{
  max-width:670px!important;
  color:#e0ccc2!important;
}
.lr114-discord-panel{
  position:relative;z-index:3;
  justify-self:end!important;
  width:min(430px,100%)!important;
  border-radius:8px!important;
  border:1px solid rgba(255,131,22,.46)!important;
  background:linear-gradient(165deg,rgba(17,6,6,.94),rgba(4,3,3,.96))!important;
  box-shadow:0 22px 75px rgba(0,0,0,.60),0 0 30px rgba(153,11,15,.10)!important;
}
.lr114-discord-panel:before{
  content:"";
  position:absolute;left:0;right:0;top:0;height:2px;
  background:linear-gradient(90deg,transparent,#ffbc37,#dc1d1f,transparent);
}
.lr19-discord-big{
  transform:scale(1.10);
  filter:drop-shadow(0 0 28px rgba(88,101,242,.43))!important;
}
.lr19-discord-login-main{
  position:relative;overflow:hidden;
}
.lr19-discord-login-main:after{
  content:"";
  position:absolute;inset:0;
  background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.18),transparent 65%);
  transform:translateX(-120%);
  animation:lr114ButtonSweep 2.6s ease-in-out infinite;
}

/* Hero stats/payment exact full-width lower HUD */
.lr113-hero-stats{
  left:clamp(24px,5vw,76px)!important;
  width:min(760px,60%)!important;
  background:rgba(3,2,2,.88)!important;
  border-color:rgba(255,137,28,.36)!important;
}
.lr113-payments-card{
  right:clamp(24px,5vw,76px)!important;
  width:min(340px,28%)!important;
  background:rgba(3,2,2,.88)!important;
  border-color:rgba(255,137,28,.36)!important;
}

/* Sections now span edge-to-edge like the mockup */
.lr113-story-grid,
.lr114-products-section,
.lr19-products-section,
.lr19-category-feature,
.lr19-why,
.lr19-newsletter,
.lr19-footer{
  width:100%!important;
}
.lr113-story-grid{
  padding:30px clamp(18px,4vw,70px)!important;
  background:#020202!important;
}
.lr113-story-grid article{
  border-radius:7px!important;
  border-color:rgba(255,137,28,.28)!important;
}
.lr114-products-section,
.lr19-products-section{
  padding:38px clamp(18px,4vw,70px)!important;
}
.lr19-product-grid{
  gap:14px!important;
}
.lr19-product-grid .lr-product-card{
  border-radius:7px!important;
}
.lr19-category-feature{
  padding:32px clamp(18px,4vw,70px)!important;
  background:
    linear-gradient(90deg,rgba(18,4,4,.90),rgba(40,9,4,.62)),
    url("visuals-v114/store-exact.jpg") center right / cover no-repeat!important;
}

/* SHOP */
.lr113-shop{
  width:100%!important;
  max-width:none!important;
  padding:20px clamp(16px,3vw,56px) 48px!important;
}
.lr113-shop .lr-shop-hero{
  background:
    linear-gradient(90deg,rgba(7,3,3,.88),rgba(20,5,3,.60)),
    url("visuals-v114/store-exact.jpg") center right/cover no-repeat!important;
  border-radius:0!important;
}
.lr113-shop ul.products{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
.lr113-shop ul.products li.product{
  border-radius:7px!important;
}

/* Product / cart / checkout full width */
.lr113-cinematic .lr110-product-page,
.lr113-cinematic .lr110-cart-page,
.lr113-cinematic .lr111-checkout-page{
  width:100%!important;
  max-width:none!important;
  padding:20px clamp(16px,3vw,56px) 48px!important;
}
.lr113-cinematic .lr110-page-heading{
  background:
    linear-gradient(90deg,rgba(9,3,3,.90),rgba(30,7,3,.62)),
    url("visuals-v114/store-exact.jpg") right center/cover no-repeat!important;
}

/* Account / policy full width */
.lr19-account-page,
.lr19-policy.lr-policy{
  width:100%!important;
  max-width:none!important;
  padding:20px clamp(16px,3vw,56px) 48px!important;
}
.lr19-policy .lr-policy-hero{
  background:
    linear-gradient(90deg,rgba(9,3,3,.91),rgba(25,6,3,.63)),
    url("visuals-v114/store-exact.jpg") right center/cover no-repeat!important;
}

/* footer imagery exact */
.lr19-why{
  background:
    linear-gradient(180deg,rgba(3,2,2,.88),rgba(3,2,2,.94)),
    url("visuals-v114/community-exact.jpg") center/cover no-repeat!important;
}
.lr19-newsletter{
  position:relative;overflow:hidden;
  background:
    linear-gradient(90deg,rgba(24,3,4,.85),rgba(14,4,3,.70)),
    url("visuals-v114/community-exact.jpg") right center/cover no-repeat!important;
}
.lr19-newsletter:after{
  content:"";
  position:absolute;inset:-100% -20%;
  background:linear-gradient(110deg,transparent 40%,rgba(255,80,28,.10),transparent 60%);
  animation:lr114NewsletterSweep 5s linear infinite;
}
.lr19-footer{
  background:
    linear-gradient(90deg,rgba(2,2,2,.89),rgba(4,2,2,.72)),
    url("visuals-v114/footer-exact.jpg") left bottom/cover no-repeat!important;
}

/* Floating Discord stronger */
.lr-discord-float{
  animation:lr114DiscordFloat 2.6s ease-in-out infinite!important;
  box-shadow:0 18px 45px rgba(0,0,0,.60),0 0 26px rgba(122,37,218,.20)!important;
}

/* Animations */
@keyframes lr114PromoSweep{
  0%{transform:translateX(-70%)}
  100%{transform:translateX(70%)}
}
@keyframes lr114PromoLine{
  0%,100%{opacity:.35;transform:scaleX(.70)}
  50%{opacity:1;transform:scaleX(1)}
}
@keyframes lr114PromoPulse{
  0%,100%{transform:scale(1);filter:brightness(1)}
  50%{transform:scale(1.035);filter:brightness(1.18)}
}
@keyframes lr114CodeFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-2px)}
}
@keyframes lr114TimerBlink{
  0%,49%{opacity:1}
  50%,100%{opacity:.62}
}
@keyframes lr114ButtonSweep{
  0%,35%{transform:translateX(-120%)}
  70%,100%{transform:translateX(120%)}
}
@keyframes lr114NewsletterSweep{
  0%{transform:translateX(-65%)}
  100%{transform:translateX(65%)}
}
@keyframes lr114DiscordFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-5px)}
}
@keyframes lr114CardIn{
  from{opacity:0;transform:translateY(16px)}
  to{opacity:1;transform:none}
}
.lr19-product-grid .lr-product-card,
.lr113-shop ul.products li.product{
  animation:lr114CardIn .5s ease both;
}

/* Desktop wide */
@media(min-width:1450px){
  .lr19-header{padding-left:74px!important;padding-right:74px!important}
  .lr114-home-hero{padding-left:78px!important;padding-right:78px!important}
  .lr19-products-section,.lr113-story-grid{padding-left:72px!important;padding-right:72px!important}
}

/* Responsive */
@media(max-width:1100px){
  .lr114-home-hero{
    grid-template-columns:1fr!important;
    min-height:auto!important;
    padding-bottom:220px!important;
  }
  .lr114-discord-panel{justify-self:start!important}
  .lr113-hero-stats{
    left:24px!important;width:calc(100% - 48px)!important;bottom:106px!important;
  }
  .lr113-payments-card{
    left:24px!important;right:auto!important;width:calc(100% - 48px)!important;bottom:24px!important;
  }
  .lr113-shop ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:760px){
  .lr19-promo-top{grid-template-columns:1fr!important;text-align:center!important}
  .lr114-home-hero{padding:42px 18px 250px!important}
  .lr114-home-copy h1{font-size:58px!important}
  .lr113-hero-stats{grid-template-columns:repeat(2,1fr)!important}
  .lr113-shop ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .lr19-nav{display:none!important}
}
@media(prefers-reduced-motion:reduce){
  *,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important}
}
