/* 2026-10-21: Bilingual editorial campaigns on the public homepages.
   Art direction: approved photographic assets, restrained gold, ivory, charcoal.
   The existing site hero, account navigation, commerce and PWA remain untouched. */
.jr-campaigns{
 --jr-promo-gold:#d4af37;
 --jr-promo-ivory:#f8f5e9;
 --jr-promo-line:rgba(212,175,55,.35);
 display:block;
 box-sizing:border-box;
 width:min(1180px,calc(100% - 36px));
 max-width:100%;
 margin:clamp(26px,4.5vw,60px) auto clamp(32px,5vw,70px);
 padding:0;
 color:var(--jr-promo-ivory);
 direction:inherit;
 text-align:start;
}
.jr-campaigns *, .jr-campaigns *::before, .jr-campaigns *::after{box-sizing:border-box}
.jr-campaigns :is(h2,h3,h4,p,span,strong,small){text-align:start}
.jr-campaigns .jr-campaigns-head{display:grid;gap:9px;margin-bottom:20px;text-align:start}
.jr-campaigns .jr-campaigns-kicker{
 margin:0;color:#dbc17e;font-size:12px;letter-spacing:.1em;
 font-weight:700;line-height:1.7
}
.jr-campaigns h2{font-family:inherit;font-weight:700;font-size:clamp(25px,3.3vw,38px);line-height:1.45;color:#f8f5e9;margin:0;letter-spacing:normal}
.jr-campaigns .jr-campaigns-intro{color:#c7c0b3;margin:0;max-width:76ch;font-size:clamp(14px,1.45vw,17px);line-height:1.9}
.jr-campaigns .jr-campaign-feature{
 position:relative;isolation:isolate;display:flex;align-items:flex-end;
 min-height:clamp(340px,42vw,480px);
 overflow:hidden;
 border:1px solid rgba(212,175,55,.38);
 border-radius:clamp(23px,3vw,32px);
 background:radial-gradient(ellipse at 70% 20%,rgba(212,175,55,.18),transparent 55%),#101214;
 box-shadow:0 20px 50px rgba(0,0,0,.3);
 text-decoration:none;color:#f8f5e9!important;
 outline-offset:5px;
}
.jr-campaigns .jr-campaign-feature img,
.jr-campaigns .jr-campaign-card img{
 display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover;
 transition:transform .55s ease;
}
.jr-campaigns .jr-campaign-feature::before,
.jr-campaigns .jr-campaign-card a::before{
 content:"";position:absolute;inset:0;z-index:1;
 background:linear-gradient(0deg,rgba(4,6,8,.95) 3%,rgba(4,6,8,.80) 30%,rgba(4,6,8,.20) 82%),
  linear-gradient(90deg,rgba(7,9,12,.72),transparent 85%);
 pointer-events:none;
}
html[dir="rtl"] .jr-campaigns .jr-campaign-feature::before,
html[dir="rtl"] .jr-campaigns .jr-campaign-card a::before{
 background:linear-gradient(0deg,rgba(4,6,8,.95) 3%,rgba(4,6,8,.80) 30%,rgba(4,6,8,.20) 82%),
  linear-gradient(270deg,rgba(7,9,12,.72),transparent 85%);
}
.jr-campaigns .jr-feature-copy{
 z-index:2;position:relative;display:grid;gap:12px;
 padding:clamp(22px,4.5vw,52px);max-width:min(720px,100%);direction:inherit;
}
.jr-campaigns .jr-feature-kicker,
.jr-campaigns .jr-card-kicker{
 color:#f1d59c;font-size:12px;line-height:1.5;font-weight:800;
 letter-spacing:.09em;
}
.jr-campaigns .jr-feature-title{display:block;font-size:clamp(28px,4.1vw,53px);font-weight:780;line-height:1.35;letter-spacing:-.015em;color:#fffaf0}
.jr-campaigns .jr-feature-desc{display:block;color:#ece6d9;font-size:clamp(15px,1.55vw,19px);line-height:1.85;max-width:59ch}
.jr-campaigns .jr-feature-cta,
.jr-campaigns .jr-card-cta{
 display:inline-flex;align-items:center;justify-content:center;gap:12px;justify-self:start;
 min-height:48px;padding:11px 18px;border:1px solid #e6c886;border-radius:14px;
 background:linear-gradient(125deg,#f2dfb9,#d4af37);color:#181711!important;
 font-weight:800;font-size:14px;line-height:1.5;
 box-shadow:0 10px 30px rgba(0,0,0,.24);
}
.jr-campaigns .jr-feature-cta::after,
.jr-campaigns .jr-card-cta::after{content:"→";font-size:17px;line-height:1}
html[dir="rtl"] .jr-campaigns .jr-feature-cta::after,
html[dir="rtl"] .jr-campaigns .jr-card-cta::after{content:"←"}
.jr-campaigns .jr-campaign-group{display:block;min-width:0;margin-top:clamp(30px,4.3vw,48px)}
.jr-campaigns .jr-group-head{
 display:flex;align-items:end;justify-content:space-between;gap:14px;
 margin-bottom:15px;
}
.jr-campaigns .jr-group-title{margin:0;color:#faf5ea;font-size:clamp(20px,2.5vw,27px);font-weight:750;line-height:1.5}
.jr-campaigns .jr-group-summary{margin:4px 0 0;color:#bfb7a7;font-size:13px;line-height:1.7}
.jr-campaigns .jr-group-controls{display:flex;align-items:center;gap:8px;flex:none}
.jr-campaigns .jr-group-controls button{
 display:grid;place-items:center;width:44px;height:44px;min-width:44px;
 border:1px solid rgba(212,175,55,.4);border-radius:13px;
 background:#171717;color:#f4e7c8;font-family:inherit;font-weight:700;font-size:20px;line-height:1;cursor:pointer;
 touch-action:manipulation;
}
.jr-campaigns .jr-group-controls button[hidden]{display:none!important}
.jr-campaigns .jr-group-controls button:disabled{opacity:.35;cursor:not-allowed}
.jr-campaigns .jr-campaign-rail{
 list-style:none;display:flex;gap:14px;min-width:0;
 overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;
 scroll-padding-inline:2px;
 scrollbar-width:thin;scrollbar-color:rgba(212,175,55,.45) transparent;
 margin:0;padding:3px 2px 17px;
 -webkit-overflow-scrolling:touch;
}
.jr-campaigns .jr-campaign-card{
 position:relative;min-width:0;flex:0 0 clamp(250px,27vw,347px);
 min-height:335px;scroll-snap-align:start;border-radius:23px;
 overflow:hidden;background:#151719;border:1px solid rgba(212,175,55,.24)
}
.jr-campaigns .jr-campaign-card a{
 display:flex;flex-direction:column;justify-content:flex-end;
 width:100%;height:100%;min-height:335px;position:relative;isolation:isolate;
 text-decoration:none;color:#fffaf0!important;outline-offset:-4px;
}
.jr-campaigns .jr-card-copy{
 position:relative;z-index:2;display:grid;gap:8px;
 padding:20px;direction:inherit
}
.jr-campaigns .jr-card-title{
 display:block;font-size:clamp(20px,2vw,24px);line-height:1.5;font-weight:800;color:#fff9ee
}
.jr-campaigns .jr-card-desc{
 display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;
 overflow:hidden;color:#e4ddd0;font-size:14px;line-height:1.75;min-height:calc(14px * 1.75 * 2);
}
.jr-campaigns .jr-card-cta{
 background:rgba(212,175,55,.12);color:#f5e2b9!important;
 box-shadow:none;min-height:43px;border-color:rgba(234,199,126,.59);
 margin-top:3px;font-size:13px;padding:8px 12px
}
.jr-campaigns .jr-campaign-footnote{margin:20px 0 0;color:#b6aea0;font-size:12px;line-height:1.8}
.jr-campaigns a:focus-visible,
.jr-campaigns button:focus-visible{outline:3px solid #f3d69d;outline-offset:3px}
.jr-campaigns a:focus-visible{outline-offset:-4px}
@media(hover:hover) and (pointer:fine){
 .jr-campaigns .jr-campaign-feature:hover img,.jr-campaigns .jr-campaign-card a:hover img{transform:scale(1.045)}
 .jr-campaigns .jr-campaign-feature:hover,.jr-campaigns .jr-campaign-card:hover{border-color:rgba(230,200,135,.68)}
}
@media(max-width:720px){
 .jr-campaigns{width:calc(100% - 32px);margin-top:28px;margin-bottom:42px}
 .jr-campaigns .jr-campaign-feature{min-height:390px;border-radius:23px}
 .jr-campaigns .jr-feature-copy{gap:11px;padding:clamp(19px,5.5vw,26px)}
 .jr-campaigns .jr-feature-title{font-size:clamp(26px,7.5vw,34px)}
 .jr-campaigns .jr-feature-desc{font-size:14px}
 .jr-campaigns .jr-group-head{align-items:center}
 .jr-campaigns .jr-group-summary{max-width:35ch}
 .jr-campaigns .jr-campaign-card{flex-basis:min(77vw,310px);min-height:320px;border-radius:20px}
 .jr-campaigns .jr-campaign-card a{min-height:320px}
 .jr-campaigns .jr-card-copy{padding:17px}
 .jr-campaigns .jr-group-controls button{border-radius:12px}
}
@media(max-width:360px){
 .jr-campaigns{width:calc(100% - 28px)}
 .jr-campaigns .jr-campaign-feature{min-height:375px}
 .jr-campaigns .jr-campaign-card{flex-basis:82vw}
 .jr-campaigns .jr-campaigns-kicker{font-size:11px}
 .jr-campaigns .jr-group-summary{font-size:12px}
}
@media(prefers-reduced-motion:reduce){
 .jr-campaigns,.jr-campaigns *, .jr-campaigns *::before{scroll-behavior:auto!important;animation:none!important;transition:none!important}
}
@media(forced-colors:active){
 .jr-campaigns .jr-campaign-feature,.jr-campaigns .jr-campaign-card{border:1px solid CanvasText}
 .jr-campaigns .jr-feature-cta,.jr-campaigns .jr-card-cta{background:Canvas;color:CanvasText!important}
}
