:root{
    --bg:#050509;
    --panel:rgba(15,23,42,.88);
    --border:rgba(148,163,184,.22);
    --text:#f9fafb;
    --muted:#9ca3af;

    --accent:#f97316;
    --accent2:#facc15;
    --brand:#b67bff;

    --shadow1:0 0 0 1px rgba(148,163,184,.18);
    --shadow2:0 22px 70px rgba(0,0,0,.55);

    --r-xl:22px;
    --r-lg:18px;

    --max:1360px;

    --miniRowH:110px;
    --youtubeMinH:180px;
}

*{box-sizing:border-box;}
html,body{
    margin:0;padding:0;
    background:radial-gradient(circle at top, #141826 0, #050509 58%);
    color:var(--text);
    font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
    line-height:1.5;
}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;height:auto;}
button{font:inherit}

.wrap{max-width:var(--max);margin:0 auto;padding:0 20px;}
@media (max-width: 720px){ .wrap{padding:0 16px;} }

/* Header */
.jr-header{
    position:sticky;
    top:0;
    z-index:999;
    background:linear-gradient(to bottom, rgba(5,5,9,.92), rgba(5,5,9,.70), rgba(5,5,9,.35));
    border-bottom:1px solid rgba(255,255,255,.05);
    backdrop-filter:blur(10px);
}
.jr-header-inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    padding:14px 0;
}
.jr-brand{
    display:flex;
    align-items:center;
    gap:10px;
    min-width:220px;
}
.jr-badge{
    width:34px;height:34px;border-radius:999px;
    display:grid;place-items:center;
    border:1px solid rgba(182,123,255,.55);
    box-shadow:0 0 24px rgba(182,123,255,.20);
    font-weight:900;
    letter-spacing:.06em;
    color:#e5e7eb;
    background:rgba(2,6,23,.35);
}
.jr-brand-text{display:flex;flex-direction:column;gap:2px;}
.jr-brand-title{
    font-weight:900;letter-spacing:.14em;text-transform:uppercase;
    font-size:12px;line-height:1;
}
.jr-brand-sub{
    font-size:10px;letter-spacing:.16em;text-transform:uppercase;
    color:var(--muted);line-height:1.1;
}
.jr-nav{
    display:flex;
    align-items:center;
    gap:18px;
    justify-content:center;
    flex:1;
}
/* WP MENU SUPPORT */
.jr-nav ul{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:18px;
    list-style:none;
    margin:0;
    padding:0;
}
.jr-nav li{margin:0;padding:0;}
.jr-nav a{
    font-weight:900;
    letter-spacing:.14em;
    text-transform:uppercase;
    font-size:12px;
    color:#e5e7eb;
    position:relative;
    padding:10px 2px;
    opacity:.92;
}
.jr-nav a::after{
    content:"";
    position:absolute;
    left:0;right:0;bottom:4px;
    height:2px;
    background:linear-gradient(90deg, transparent, var(--accent2), var(--accent), transparent);
    transform:scaleX(0);
    transform-origin:left;
    transition:transform .18s ease;
    filter:drop-shadow(0 0 10px rgba(250,204,21,.25));
}
.jr-nav a:hover::after{transform:scaleX(1);}
.jr-nav a.is-active::after{
    transform:scaleX(1);
    animation:jrPulseLine 1.3s ease-in-out infinite;
}
.jr-actions{
    display:flex;align-items:center;gap:12px;
    min-width:220px;justify-content:flex-end;
}
.jr-icon{
    width:36px;height:36px;border-radius:999px;
    border:1px solid rgba(148,163,184,.30);
    background:rgba(2,6,23,.40);
    display:grid;place-items:center;
    cursor:pointer;
    transition:transform .15s ease, border-color .2s ease, background .2s ease;
}
.jr-icon:hover{transform:translateY(-1px);border-color:rgba(182,123,255,.65);background:rgba(2,6,23,.65);}
.jr-searchbar{
    display:none;
    border-top:1px solid rgba(255,255,255,.05);
    border-bottom:1px solid rgba(255,255,255,.05);
    background:rgba(5,5,9,.90);
}
.jr-searchbar.is-open{display:block;}
.jr-searchbar-inner{padding:12px 0 14px;}
.jr-searchbar-inner form{display:flex;gap:10px;align-items:center;}
.jr-searchbar input{
    flex:1;
    min-width:0;
    padding:12px 12px;
    border-radius:14px;
    border:1px solid rgba(148,163,184,.22);
    background:rgba(2,6,23,.70);
    color:#e5e7eb;
    font-size:14px;
    outline:none;
}
@media (max-width: 980px){
    .jr-searchbar input{font-size:16px;}
}
@media (max-width: 980px){
    .jr-searchbar-inner form{flex-wrap:wrap;}
    .jr-searchbar input{flex:1 1 100%;}
    .jr-searchbar button{flex:1 1 100%;}
}
.jr-searchbar button{
    padding:12px 14px;
    border-radius:14px;
    border:1px solid rgba(148,163,184,.22);
    background:rgba(2,6,23,.70);
    color:#e5e7eb;
    font-weight:900;
    letter-spacing:.12em;
    text-transform:uppercase;
    cursor:pointer;
}
.jr-header-underline{
    height:2px;
    background:linear-gradient(90deg, transparent, rgba(182,123,255,.55), rgba(250,204,21,.65), rgba(249,115,22,.75), transparent);
    opacity:.55;
    animation:jrPulseLine 1.35s ease-in-out infinite;
}
@keyframes jrPulseLine{
    0%,100%{filter:drop-shadow(0 0 0 rgba(249,115,22,0));opacity:.45;}
    50%{filter:drop-shadow(0 0 18px rgba(249,115,22,.22));opacity:.85;}
}

/* Layout */
main{padding:18px 0 0;}
.jr-stage{
    min-height:calc(100svh - 120px);
    padding-bottom:22px;
}
.jr-grid{
    display:grid;
    grid-template-columns:minmax(0, 1.55fr) minmax(0, .75fr);
    grid-template-areas:
        "hero     video"
        "shopMain video"
        "shopAlso spotify"
        "mini     youtube";
    gap:18px;
    align-items:stretch;
}
@media (max-width: 980px){
    .jr-grid{
        grid-template-columns:1fr;
        grid-template-areas:
            "video"
            "shopMain"
            "shopAlso"
            "spotify"
            "youtube"
            "mini";
    }
}

/* Panels */
.jr-panel{
    border-radius:var(--r-xl);
    background:radial-gradient(circle at top left, rgba(148,163,184,.10), rgba(15,23,42,1));
    border:1px solid var(--border);
    box-shadow:var(--shadow1);
    overflow:hidden;
}

/* Grid areas */
.jr-hero-block{grid-area:hero;}
.jr-video-block{grid-area:video;align-self:stretch;}
.jr-spotify-block{grid-area:spotify;align-self:stretch;}
.jr-shop-main-block{grid-area:shopMain;}
.jr-shop-also-block{grid-area:shopAlso;}
.jr-youtube-block{grid-area:youtube;align-self:stretch;}
.jr-mini-block{grid-area:mini;align-self:stretch;}

@media (max-width: 980px){
    .jr-hero-block{display:none;}
}

.jr-hero-card{
    position:relative;
    min-height:160px;
    padding:18px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:10px;
    border-radius:var(--r-xl);
    overflow:hidden;
    border:1px solid var(--border);
    box-shadow:var(--shadow1);
    background:
        radial-gradient(circle at 80% 30%, rgba(182,123,255,.22), transparent 55%),
        radial-gradient(circle at 15% 85%, rgba(250,204,21,.18), transparent 55%),
        linear-gradient(180deg, rgba(2,6,23,.60), rgba(2,6,23,.85));
}
.jr-hero-card::before{
    content:"";
    position:absolute;
    inset:0;
    background: var(--jr-hero-img, url("../roxen-hero.jpg")) center/cover no-repeat;
    opacity:.18;
    filter:saturate(1.1) contrast(1.05);
    pointer-events:none;
}
.jr-hero-kicker{
    font-size:11px;
    letter-spacing:.32em;
    text-transform:uppercase;
    color:var(--brand);
    font-weight:900;
    position:relative;
    z-index:1;
}
.jr-hero-title{
    font-size:46px;
    line-height:1.05;
    margin:0;
    font-weight:1000;
    letter-spacing:.02em;
    position:relative;
    z-index:1;
}
.jr-hero-sub{
    color:rgba(229,231,235,.82);
    font-size:14px;
    max-width:720px;
    position:relative;
    z-index:1;
}
@media (max-width: 720px){
    .jr-hero-title{font-size:34px;}
    .jr-hero-card{min-height:150px;padding:16px;}
}

/* Spotify */
.jr-spotify-block{display:block; padding:0;}
.jr-spotify-block .jr-embed{padding:0;}
.jr-spotify-block iframe{
    width:100%;
    border:0;
    display:block;
    border-radius:0;
}
@media (min-width: 981px){
    .jr-spotify-block iframe{height:420px;}
}
@media (max-width: 720px){
    .jr-spotify-block iframe{height:152px !important;}
}

/* Shop module */
.jr-shop{padding:14px;}
.jr-tabs{
    display:flex;
    gap:16px;
    flex-wrap:wrap;
    align-items:center;
    padding:6px 4px 12px;
    border-bottom:1px solid rgba(255,255,255,.06);
}
.jr-tab{
    font-weight:1000;
    letter-spacing:.14em;
    text-transform:uppercase;
    font-size:12px;
    color:#e5e7eb;
    opacity:.92;
    position:relative;
    padding:8px 0;
    cursor:pointer;
    user-select:none;
}
.jr-tab::after{
    content:"";
    position:absolute;
    left:0;right:0;bottom:2px;
    height:2px;
    background:linear-gradient(90deg, transparent, var(--accent2), var(--accent), transparent);
    transform:scaleX(0);
    transform-origin:left;
    transition:transform .18s ease;
    filter:drop-shadow(0 0 10px rgba(250,204,21,.25));
}
.jr-tab:hover::after{transform:scaleX(1);}
.jr-tab.is-active::after{transform:scaleX(1);animation:jrPulseLine 1.25s ease-in-out infinite;}
.jr-shop-head{
    display:flex;align-items:center;justify-content:space-between;gap:12px;
    padding:12px 4px 10px;
}
.jr-shop-title{
    font-weight:1000;
    letter-spacing:.16em;
    text-transform:uppercase;
    font-size:12px;
    color:rgba(229,231,235,.85);
}
.jr-scroll-controls{display:flex;gap:10px;align-items:center;}
.jr-arrow{
    width:36px;height:36px;border-radius:999px;
    border:1px solid rgba(148,163,184,.28);
    background:rgba(2,6,23,.40);
    color:#e5e7eb;
    cursor:pointer;
    display:grid;place-items:center;
    transition:transform .15s ease, border-color .2s ease, background .2s ease;
}
.jr-arrow:hover{transform:translateY(-1px);border-color:rgba(250,204,21,.55);background:rgba(2,6,23,.65);}
.jr-rail{
    display:flex;
    gap:14px;
    overflow:auto;
    padding:0 4px 8px;
    scroll-behavior:smooth;
    scrollbar-width:thin;
    scrollbar-color:rgba(148,163,184,.35) transparent;
}
.jr-rail::-webkit-scrollbar{height:10px;}
.jr-rail::-webkit-scrollbar-thumb{background:rgba(148,163,184,.25);border-radius:999px;}
.jr-card{
    flex:0 0 220px;
    border-radius:var(--r-lg);
    border:1px solid rgba(148,163,184,.22);
    background:radial-gradient(circle at top left, rgba(148,163,184,.10), rgba(15,23,42,1));
    box-shadow:var(--shadow1);
    overflow:hidden;
    transition:transform .15s ease, border-color .2s ease, box-shadow .2s ease;
}
.jr-card:hover{transform:translateY(-2px);border-color:rgba(182,123,255,.55);box-shadow:0 0 0 1px rgba(182,123,255,.18), var(--shadow2);}
.jr-card-media{height:132px;background:linear-gradient(135deg, rgba(148,163,184,.18), rgba(2,6,23,.70));}
.jr-card-body{padding:12px;}
.jr-card-name{font-weight:1000;font-size:13px;color:#e5e7eb;margin:0 0 6px;}
.jr-card-price{font-weight:1000;font-size:12px;color:var(--accent2);letter-spacing:.12em;text-transform:uppercase;margin:0 0 8px;}
.jr-card-link{
    display:inline-block;
    font-weight:1000;
    letter-spacing:.14em;
    text-transform:uppercase;
    font-size:12px;
    position:relative;
    padding:8px 0;
    color:#e5e7eb;
    opacity:.92;
}
.jr-card-link::after{
    content:"";
    position:absolute;
    left:0;right:0;bottom:2px;
    height:2px;
    background:linear-gradient(90deg, transparent, var(--accent2), var(--accent), transparent);
    transform:scaleX(1);
    animation:jrPulseLine 1.25s ease-in-out infinite;
    filter:drop-shadow(0 0 10px rgba(250,204,21,.25));
}
.jr-subsection{
    margin-top:14px;
    padding-top:12px;
    border-top:1px solid rgba(255,255,255,.06);
}

/* Video */
.jr-live-panel{
    padding:0;
    display:flex;
    flex-direction:column;
    min-height:0;
}
.jr-video-block .jr-live-panel{height:100%;}
.jr-live{
    flex:1;
    border-radius:var(--r-xl);
    overflow:hidden;
    background:#000;
    border:0;
    box-shadow:none;
    min-height:0;
    position:relative;
}
.jr-live-overlay{
    position:absolute;
    left:14px;right:14px;top:14px;
    z-index:2;
    pointer-events:none;
    display:none;
}
.jr-live-title{
    font-weight:1000;
    letter-spacing:.02em;
    font-size:24px;
    line-height:1.08;
    text-shadow:0 10px 30px rgba(0,0,0,.75);
}
.jr-live-sub{
    margin-top:8px;
    color:rgba(229,231,235,.85);
    font-size:13px;
    max-width:560px;
    text-shadow:0 10px 30px rgba(0,0,0,.75);
}
@media (max-width: 980px){
    .jr-live-overlay{display:block;}
}
.jr-live video{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    background:#000;
    border:0;
    border-radius:var(--r-xl);
}

/* Mini boxes */
.jr-minirow{
    display:grid;
    grid-template-columns: 1fr 1fr;
    gap:14px;
    min-height:0;
}
.jr-mini{
    padding:12px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    gap:8px;
    min-height:160px;
}
.jr-mini h3{
    margin:0;
    font-weight:1000;
    letter-spacing:.20em;
    text-transform:uppercase;
    font-size:12px;
    color:var(--brand);
}
.jr-news{
    margin:0;
    padding-left:18px;
    color:rgba(229,231,235,.82);
    font-size:13px;
}
.jr-news li{margin:0 0 6px;}
.jr-mini-link{
    display:inline-block;
    font-weight:1000;
    letter-spacing:.14em;
    text-transform:uppercase;
    font-size:12px;
    position:relative;
    padding:6px 0;
    color:#e5e7eb;
    opacity:.92;
    width:max-content;
}
.jr-mini-link::after{
    content:"";
    position:absolute;
    left:0;right:0;bottom:2px;
    height:2px;
    background:linear-gradient(90deg, transparent, var(--accent2), var(--accent), transparent);
    transform:scaleX(1);
    animation:jrPulseLine 1.25s ease-in-out infinite;
}
.jr-mini-desc{
    color:rgba(229,231,235,.72);
    font-size:13px;
    margin:0;
}

/* Social + YouTube */
.jr-media-stack{display:flex;flex-direction:column;gap:18px;height:100%;}
.jr-social-panel{
    padding:12px 14px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
}
.jr-social-head{display:flex;flex-direction:column;gap:2px;min-width:0;}
.jr-social-title{font-weight:1000;letter-spacing:.18em;text-transform:uppercase;font-size:12px;color:rgba(229,231,235,.88);}
.jr-social-sub{font-weight:1000;font-size:12px;color:var(--brand);opacity:.95;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.jr-social-icons{display:flex;gap:10px;align-items:center;}
.jr-social-icon{
    width:38px;height:38px;border-radius:999px;
    display:grid;place-items:center;
    border:1px solid rgba(148,163,184,.28);
    background:rgba(2,6,23,.40);
    transition:transform .15s ease, border-color .2s ease, background .2s ease;
}
.jr-social-icon:hover{transform:translateY(-1px);border-color:rgba(250,204,21,.55);background:rgba(2,6,23,.65);}
.jr-social-icon svg{width:18px;height:18px;fill:#fff;opacity:.92;}
.jr-social-icon.fb svg{fill:#1877F2;}
.jr-social-icon.ig svg{fill:#E1306C;}
.jr-social-icon.tt svg{fill:#fff;}
.jr-youtube-panel{padding:0;}
.jr-youtube{
    width:100%;
    position:relative;
    background:#000;
    border-radius:var(--r-xl);
    overflow:hidden;
    aspect-ratio:16/9;
    min-height:180px;
}
.jr-youtube iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block;}
@media (min-width: 981px){
    .jr-youtube-block{display:block;}
    .jr-media-stack{width:100%;height:100%;}
    .jr-social-panel{width:100%;flex-shrink:0;}
    .jr-youtube-panel{display:flex;flex:1;min-height:0;}
    .jr-youtube{flex:1;min-height:0;aspect-ratio:auto;}
    .jr-youtube iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block;}
}

/* Footer */
.jr-footer{
    margin-top:22px;
    border-top:1px solid rgba(255,255,255,.07);
    background:rgba(5,5,9,.95);
}
.jr-footer-inner{
    padding:26px 0 30px;
    display:grid;
    grid-template-columns:1.2fr .9fr .9fr;
    gap:18px;
    align-items:start;
}
.jr-footer h4{
    margin:0 0 10px;
    font-weight:1000;
    letter-spacing:.20em;
    text-transform:uppercase;
    font-size:12px;
    color:rgba(229,231,235,.88);
}
.jr-footer p, .jr-footer a, .jr-footer li{color:rgba(229,231,235,.70);font-size:13px;}
.jr-footer ul{margin:0;padding-left:18px;}
.jr-footer a:hover{color:#fff;}
.jr-copy{
    padding:14px 0 18px;
    border-top:1px solid rgba(255,255,255,.06);
    color:rgba(229,231,235,.55);
    font-size:12px;
    letter-spacing:.08em;
}
@media (max-width: 980px){
    .jr-video-block .jr-live{min-height: minmax(360px, 56svh);}
}
@media (max-width: 720px){
    .jr-brand{min-width:auto;}
    .jr-actions{min-width:auto;}
    .jr-nav{display:none;}
    .jr-footer-inner{grid-template-columns:1fr;gap:14px;}
    .jr-card{flex:0 0 78%;}
    .jr-minirow{gap:12px;}
    .jr-mini{padding:10px;}
}

/* Blog / archive / single helpers */
.jr-content{padding:16px;}
.jr-archive-title{margin:0 0 8px;}
.jr-archive-desc{color:rgba(229,231,235,.75);margin:0 0 14px;}
.jr-postcard{margin-bottom:18px;}
.jr-postcard-title{margin:0 0 6px;}
.jr-postcard-excerpt{color:rgba(229,231,235,.75);}
.jr-pagination{margin-top:14px;}
.jr-single-title{margin:0 0 12px;}
.jr-single-content{color:rgba(229,231,235,.88);}
.jr-single-content a{text-decoration:underline;}
.jr-single-content h2, .jr-single-content h3{margin:18px 0 10px;}
.jr-single-content p{margin:0 0 12px;}

/* TM logo (no circle) */
.jr-logo{display:flex;align-items:center;}
.jr-logo .custom-logo{max-height:34px;width:auto;height:auto;display:block;}
.jr-logo .custom-logo-link{display:inline-flex;align-items:center;}
.jr-logo-text{font-weight:900;letter-spacing:.06em;}
