/* JOSEPHINE JOURNAL — PRIVATE EDITION / 1.0.0
   01 Brand & isolation · 02 Masthead · 03 Feature · 04 Filters
   05 Editorial rows · 06 Sidebar · 07 Pagination/CTA · 08 Motion/mobile.
   Every rule is scoped. Existing site header, footer and preloader are untouched. */

/* 01 — Brand, site background and Elementor isolation */
#josephine-journal {
  --jj-ivory:#fff1df; --jj-muted:#e0c9bf; --jj-gold:#e0bb75;
  --jj-edge:rgba(255,226,200,.34); --jj-dark:#300608;
  --jj-serif:var(--font-display,'Josephine Menu Serif',Georgia,serif);
  --jj-sans:var(--font-body,'Josephine Menu Sans',Arial,sans-serif);
  --jj-ease:cubic-bezier(.22,1,.36,1); --jj-top-space:144px;
  position:relative; isolation:isolate; display:block; width:100%; max-width:none;
  margin:0; padding:var(--jj-top-space) 0 48px; overflow:clip;
  color:var(--jj-ivory); font-family:var(--jj-sans); font-size:15px; line-height:1.65;
  background:transparent;
}
#josephine-journal::before {
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(ellipse at 50% 25%,#540c1340,transparent 58%),linear-gradient(180deg,#160003b5,#21020588 58%,#180103aa);
}
#josephine-journal *,#josephine-journal *::before,#josephine-journal *::after{box-sizing:border-box}
#josephine-journal .jj-wrap{width:calc(100% - 64px);max-width:1200px;margin-inline:auto;position:relative}
#josephine-journal :is(h1,h2,h3,p){margin:0;padding:0;text-transform:none!important}
#josephine-journal :is(h1,h2,h3){font-family:var(--jj-serif)!important;font-weight:400!important;letter-spacing:-.045em!important;color:var(--jj-ivory)!important;text-wrap:balance}
#josephine-journal p{font-family:var(--jj-sans)!important;color:var(--jj-muted)!important;font-size:15px!important;line-height:1.65!important;letter-spacing:0!important;font-weight:400!important}
#josephine-journal a{color:inherit;text-decoration:none!important;box-shadow:none;transition:color .22s ease;background:none}
#josephine-journal a:hover{color:var(--jj-gold)}
#josephine-journal :is(a,button,input):focus-visible{outline:2px solid var(--jj-gold);outline-offset:5px}
#josephine-journal img{display:block;max-width:100%;border:0;border-radius:0;box-shadow:none}
#josephine-journal .jj-glass{
  position:relative;border:1px solid var(--jj-edge);border-radius:13px;
  background:linear-gradient(125deg,rgba(255,245,235,.25),rgba(255,235,230,.12) 46%,rgba(255,241,220,.22));
  box-shadow:inset 0 1px 1px #fff3,inset -1px -1px 1px #fde8c419,0 14px 48px #12000130;
  -webkit-backdrop-filter:blur(20px) saturate(115%);backdrop-filter:blur(20px) saturate(115%);
}
#josephine-journal .jj-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
#josephine-journal .jj-eyebrow{font:600 11px/1.5 var(--jj-sans)!important;letter-spacing:.12em!important;color:var(--jj-gold)!important}

/* 02 — Centered masthead and fine gold rule */
#josephine-journal .jj-masthead{text-align:center;margin:0 0 52px;padding:0;background:none;border:0;position:relative}
#josephine-journal .jj-masthead .jj-eyebrow{margin-bottom:14px}
#josephine-journal h1{display:inline-block;font-size:clamp(38px,5.6vw,76px)!important;line-height:1.13!important;padding-bottom:14px;border-bottom:1px solid #e8d5b66b;margin-bottom:17px;max-width:100%}
#josephine-journal .jj-subtitle{font-size:20px!important}

/* 03 — Split featured article / real WordPress featured image */
#josephine-journal .jj-feature{display:grid;grid-template-columns:minmax(0,1.48fr) minmax(0,1fr);padding:14px;gap:0;overflow:hidden;background:linear-gradient(120deg,#ffdddd27,#50101660);border-color:#cb6d6b88;box-shadow:inset 0 1px #ffe5d466,0 18px 54px #17000455;margin-bottom:38px}
#josephine-journal .jj-feature::after{content:"";position:absolute;inset:14px;border:1px solid #ca333855;border-radius:7px;pointer-events:none}
#josephine-journal .jj-feature-image{overflow:hidden;border-radius:7px 0 0 7px;min-height:370px;aspect-ratio:1.62}
#josephine-journal .jj-feature-image>a{display:block;width:100%;height:100%}
#josephine-journal .jj-photo{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .8s var(--jj-ease)}
#josephine-journal .jj-feature-copy{align-self:center;padding:36px 34px;min-width:0}
#josephine-journal .jj-feature-copy .jj-eyebrow{font-size:10px!important;margin-bottom:19px;letter-spacing:.035em!important}
#josephine-journal .jj-feature h2{font-size:clamp(30px,3.2vw,45px)!important;line-height:1.08!important;margin-bottom:19px}
#josephine-journal .jj-feature .jj-excerpt{font-size:16px!important;line-height:1.55!important;margin-bottom:21px}
#josephine-journal .jj-text-link{color:var(--jj-gold)!important;font:600 14px/1.5 var(--jj-sans)!important;display:inline-flex;gap:9px;align-items:center;letter-spacing:0!important;min-height:28px}

/* 04 — Glass category rail, real GET search and loading state */
#josephine-journal .jj-browser{scroll-margin-top:128px;outline:0}
#josephine-journal .jj-toolbar{display:flex;align-items:center;gap:16px;padding:7px 13px;border-radius:40px;min-width:0}
#josephine-journal .jj-categories{display:flex;gap:0;align-items:center;flex:1;min-width:0;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#d8ba7866 transparent}
#josephine-journal .jj-categories a{position:relative;display:flex;align-items:center;flex-shrink:0;min-height:42px;padding:0 14px;font:400 16px/1.4 var(--jj-sans)!important;white-space:nowrap;color:var(--jj-ivory)!important}
#josephine-journal .jj-categories a+a::before{content:"/";position:absolute;left:-2px;top:50%;transform:translateY(-50%);color:var(--jj-gold);opacity:.8}
#josephine-journal .jj-categories a[aria-current]::after{content:"";position:absolute;left:13px;right:13px;bottom:0;height:2px;border-radius:2px;background:var(--jj-gold)}
#josephine-journal .jj-search{display:flex;align-items:center;width:255px;flex:0 0 255px;border:1px solid #f7ddc436;border-radius:28px;margin:0;padding:0 3px 0 14px;background:#3a11152b}
#josephine-journal .jj-search input[type=search]{font:400 13px/1.4 var(--jj-sans)!important;letter-spacing:0!important;box-shadow:none!important;background:transparent!important;color:var(--jj-ivory)!important;border:0!important;border-radius:0;min-width:0;width:100%;height:40px;margin:0;padding:0;min-height:0}
#josephine-journal .jj-search input::placeholder{color:#e0c9bfaa;opacity:1}
#josephine-journal .jj-search button{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;min-height:0;margin:0;padding:0!important;border:0!important;border-radius:50%;background:none!important;color:var(--jj-gold)!important;cursor:pointer;box-shadow:none!important}
#josephine-journal .jj-search button svg{width:21px;height:21px}
#josephine-journal .jj-result-status{min-height:30px;padding:6px 3px 3px;color:#dac2bba6;font:11px/1.5 var(--jj-sans);display:flex;gap:15px;align-items:center;flex-wrap:wrap}
#josephine-journal .jj-result-status a{color:var(--jj-gold);text-decoration:underline!important;text-underline-offset:3px}
#josephine-journal[aria-busy=true] .jj-editorial-grid,#josephine-journal[aria-busy=true] .jj-tiles{opacity:.65;transition:opacity .2s ease}

/* 05 — Three editorial rows and two wide feature cards */
#josephine-journal .jj-editorial-grid{display:grid;grid-template-columns:minmax(0,3fr) minmax(235px,1fr);gap:24px;align-items:stretch}
#josephine-journal .jj-stories{padding:4px 25px;min-width:0}
#josephine-journal .jj-story{position:relative;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.45fr);gap:25px;padding:22px 0;align-items:center;min-width:0}
#josephine-journal .jj-story+.jj-story{border-top:1px solid #efd5a930}
#josephine-journal .jj-story-image{position:relative;display:block;width:100%;min-width:0;overflow:hidden;border-radius:9px;aspect-ratio:1.78;align-self:stretch;min-height:166px}
#josephine-journal .jj-story-image .jj-photo{position:absolute;inset:0}
#josephine-journal .jj-story-copy{position:relative;min-width:0;padding-right:0;padding-bottom:17px}
#josephine-journal .jj-meta{display:flex;gap:9px;align-items:center;flex-wrap:wrap;font:400 11px/1.5 var(--jj-sans)!important;margin-bottom:7px;color:var(--jj-muted)!important;text-transform:uppercase!important}
#josephine-journal .jj-meta span:first-child{color:var(--jj-gold);font-weight:600;text-transform:none;font-size:13px}
#josephine-journal .jj-meta span+span{border-left:1px solid #efddc455;padding-left:9px}
#josephine-journal .jj-story h3{font-size:clamp(26px,2.4vw,34px)!important;line-height:1.1!important;letter-spacing:-.035em!important;margin-bottom:9px}
#josephine-journal .jj-story h3 a::after{content:"";position:absolute;inset:0}
#josephine-journal .jj-story .jj-excerpt{font-size:15px!important;line-height:1.6!important;padding-right:20px}
#josephine-journal .jj-story-arrow{position:absolute;bottom:-4px;right:0;color:var(--jj-gold);width:28px;height:28px;transition:transform .3s var(--jj-ease);pointer-events:none}
#josephine-journal .jj-story-arrow svg{width:100%;height:100%}
#josephine-journal .jj-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:24px}
#josephine-journal .jj-tiles .jj-tile{padding:15px;gap:22px;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);border:1px solid var(--jj-edge);box-shadow:inset 1px 1px 2px #fff7,inset -2px -2px 8px #ffe7bf70,0 15px 45px #17000344}
#josephine-journal .jj-tile .jj-story-image{min-height:150px;aspect-ratio:1.28}
#josephine-journal .jj-tile h3{font-size:29px!important}
#josephine-journal .jj-empty{padding:50px 15px;min-height:310px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:16px}
#josephine-journal .jj-empty h2{font-size:36px!important;line-height:1.15!important}
#josephine-journal .jj-empty p{max-width:430px}

/* 06 — Category sidebar and mural invitation */
#josephine-journal .jj-sidebar{padding:24px 23px;min-width:0;display:flex;flex-direction:column;gap:16px}
#josephine-journal .jj-sidebar h2{font-size:30px!important;line-height:1.1!important;letter-spacing:-.035em!important}
#josephine-journal .jj-side-categories{display:flex;flex-direction:column}
#josephine-journal .jj-side-categories a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;font:400 16px/1.4 var(--jj-sans)!important;color:var(--jj-ivory)!important;border-bottom:1px solid #ecd8b42e;min-height:44px}
#josephine-journal .jj-side-categories a span{color:var(--jj-gold);font-size:19px;flex-shrink:0}
#josephine-journal .jj-sidebar-visit{display:block;margin-top:auto;text-align:center;padding-top:12px}
#josephine-journal .jj-sidebar-visit img{aspect-ratio:1.12;object-fit:cover;object-position:60% 45%;width:100%;height:auto;border-radius:8px;margin-bottom:15px}
#josephine-journal .jj-side-title{font:400 28px/1.15 var(--jj-serif)!important;color:var(--jj-ivory)!important;letter-spacing:-.035em;display:block;margin-bottom:8px}
#josephine-journal .jj-sidebar-visit .jj-text-link{border-bottom:1px solid #e0bb7570}

/* 07 — Real pagination and reservation invitation (no duplicate footer) */
#josephine-journal .jj-pagination{position:relative;display:flex;align-items:center;justify-content:center;gap:25px;padding:25px 0 6px;min-height:82px}
#josephine-journal .jj-page-numbers{display:flex;gap:6px;align-items:center}
#josephine-journal .jj-page-numbers :is(a,span){display:grid;place-items:center;min-width:36px;min-height:42px;font:400 16px/1 var(--jj-sans);color:var(--jj-muted)}
#josephine-journal .jj-page-numbers [aria-current]{position:relative;color:var(--jj-ivory);font-weight:600}
#josephine-journal .jj-page-numbers [aria-current]::after{content:"";position:absolute;bottom:1px;left:14px;right:14px;height:2px;background:var(--jj-gold)}
#josephine-journal .jj-page-actions{position:absolute;right:0;display:flex;gap:20px}
#josephine-journal .jj-page-actions a{color:var(--jj-gold);font:500 14px/1.5 var(--jj-sans);min-height:44px;display:flex;align-items:center}
#josephine-journal .jj-invitation{text-align:center;padding:73px 16px 46px;margin-top:38px;position:relative;background:radial-gradient(ellipse at 50% 0,#8d14192b,transparent 70%);border:0}
#josephine-journal .jj-invitation h2{font-size:clamp(30px,3.7vw,46px)!important;line-height:1.16!important;margin-bottom:25px}
#josephine-journal .jj-reserve{display:inline-flex;gap:14px;align-items:center;justify-content:center;min-height:48px;padding:12px 24px;border-radius:32px;background:linear-gradient(105deg,#f5db9d,#d5ad65)!important;color:#341008!important;border:1px solid #f3dba5;font:500 13px/1.4 var(--jj-sans)!important;box-shadow:inset 0 1px #fff8,0 9px 25px #17000233;transition:transform .25s ease,box-shadow .25s ease}
#josephine-journal .jj-reserve svg{width:18px;height:18px}
#josephine-journal .jj-invitation p{font-size:12px!important;margin-top:17px}

/* 08 — Restrained motion, keyboard support and mobile */
@media(hover:hover) and (prefers-reduced-motion:no-preference){
 #josephine-journal .jj-feature-image:hover .jj-photo,#josephine-journal .jj-story:hover .jj-photo{transform:scale(1.035)}
 #josephine-journal .jj-story:hover .jj-story-arrow{transform:translateX(4px)}
 #josephine-journal .jj-tile{transition:transform .4s var(--jj-ease),box-shadow .4s ease}
 #josephine-journal .jj-tile:hover{transform:translateY(-4px);box-shadow:inset 1px 1px #fff5,0 19px 46px #16000366}
 #josephine-journal .jj-reserve:hover{transform:translateY(-2px);box-shadow:0 10px 35px #dfb57422}
}
@media(min-width:1800px){#josephine-journal .jj-wrap{max-width:1380px}#josephine-journal .jj-feature-image{min-height:440px}#josephine-journal .jj-story-image{min-height:185px}}
@media(max-width:1050px){
 #josephine-journal .jj-wrap{width:calc(100% - 40px)}
 #josephine-journal .jj-toolbar{flex-wrap:wrap;border-radius:20px;padding:9px 13px;gap:8px}
 #josephine-journal .jj-search{flex:1 1 100%;width:100%}
 #josephine-journal .jj-categories{flex-basis:100%}
 #josephine-journal .jj-editorial-grid{grid-template-columns:minmax(0,2.6fr) minmax(210px,1fr);gap:18px}
 #josephine-journal .jj-stories{padding:0 18px}#josephine-journal .jj-story{gap:18px}
 #josephine-journal .jj-story-image{min-height:160px;aspect-ratio:1}
 #josephine-journal .jj-feature-copy{padding:26px}#josephine-journal .jj-feature-image{min-height:330px}
 #josephine-journal .jj-tiles{gap:18px}#josephine-journal .jj-tiles .jj-tile{gap:15px;grid-template-columns:.8fr 1.2fr}
 #josephine-journal .jj-tile h3{font-size:23px!important}#josephine-journal .jj-sidebar{padding:22px 18px}
}
@media(max-width:700px){
 #josephine-journal{--jj-top-space:124px;padding-bottom:24px}
 #josephine-journal .jj-wrap{width:calc(100% - 32px)}
 #josephine-journal .jj-masthead{margin-bottom:32px}#josephine-journal h1{font-size:clamp(37px,7.3vw,51px)!important;letter-spacing:-.055em!important}
 #josephine-journal .jj-subtitle{font-size:14px!important;max-width:290px;margin:auto}
 #josephine-journal .jj-feature{grid-template-columns:1fr;padding:9px;border-radius:12px;margin-bottom:24px}
 #josephine-journal .jj-feature::after{inset:9px}
 #josephine-journal .jj-feature-image{aspect-ratio:1.6;min-height:0;border-radius:6px 6px 0 0}
 #josephine-journal .jj-feature-copy{padding:26px 20px 23px}#josephine-journal .jj-feature h2{font-size:35px!important}
 #josephine-journal .jj-feature-copy .jj-eyebrow{margin-bottom:15px}
 #josephine-journal .jj-toolbar{border-radius:17px;padding:7px 9px}
 #josephine-journal .jj-categories a{font-size:13px!important;padding-inline:11px}
 #josephine-journal .jj-editorial-grid{grid-template-columns:1fr}
 #josephine-journal .jj-story{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);padding:18px 0;gap:16px}
 #josephine-journal .jj-story-image{min-height:150px;aspect-ratio:1}
 #josephine-journal .jj-story h3{font-size:25px!important}#josephine-journal .jj-story .jj-excerpt{font-size:12px!important}
 #josephine-journal .jj-meta{font-size:9px!important;gap:5px}#josephine-journal .jj-meta span:first-child{font-size:10px}#josephine-journal .jj-meta span+span{padding-left:5px}
 #josephine-journal .jj-sidebar{display:grid;grid-template-columns:1.2fr 1fr;column-gap:22px}
 #josephine-journal .jj-sidebar h2{font-size:25px!important;grid-column:1}
 #josephine-journal .jj-side-categories{grid-column:1}#josephine-journal .jj-side-categories a{font-size:12px!important}
 #josephine-journal .jj-sidebar-visit{grid-column:2;grid-row:1 / span 2;margin:0;align-self:center;padding:0}
 #josephine-journal .jj-side-title{font-size:23px!important}
 #josephine-journal .jj-tiles{grid-template-columns:1fr;margin-top:18px}
 #josephine-journal .jj-tile .jj-story-image{aspect-ratio:1.2;min-height:140px}
 #josephine-journal .jj-tile .jj-story-copy{padding-bottom:12px}
 #josephine-journal .jj-pagination{flex-direction:column;gap:7px;padding-top:20px}
 #josephine-journal .jj-page-actions{position:static}
 #josephine-journal .jj-invitation{padding:44px 0 30px;margin-top:20px}
}
@media(max-width:380px){
 #josephine-journal .jj-wrap{width:calc(100% - 24px)}
 #josephine-journal h1{font-size:34px!important}
 #josephine-journal .jj-stories{padding:0 14px}
 #josephine-journal .jj-story{grid-template-columns:1fr;gap:15px}
 #josephine-journal .jj-story-image{aspect-ratio:1.65;min-height:0}
 #josephine-journal .jj-sidebar{grid-template-columns:1fr}#josephine-journal .jj-sidebar-visit{grid-column:1;grid-row:auto;max-width:220px;justify-self:center}
 #josephine-journal .jj-tiles .jj-tile{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){#josephine-journal *,#josephine-journal *::before,#josephine-journal *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
