.journal-hero{position:relative;display:flex;min-height:88svh;align-items:flex-end;overflow:hidden;background:#08192b}
.journal-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 54%;filter:saturate(1.08) contrast(1.08);transform:scale(1.01)}
.journal-hero__wash{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,11,21,.94),rgba(4,13,25,.66) 40%,rgba(4,13,25,.08) 75%),linear-gradient(0deg,rgba(4,13,25,.82),transparent 42%)}
.journal-hero__content{position:relative;z-index:2;width:min(100%,1550px);margin-inline:auto;padding:190px var(--page-pad) 10vh}
.journal-hero h1{max-width:900px;margin:18px 0 24px;font-size:clamp(4.4rem,7vw,8rem);font-weight:400;line-height:.88}
.journal-hero__content>p:not(.eyebrow){max-width:610px;margin:0 0 34px;color:rgba(244,239,229,.78);font-size:1.02rem;line-height:1.75}
.journal-text-link{display:inline-flex;align-items:center;gap:14px;padding:0 0 9px;border:0;border-bottom:1px solid var(--gold-light);color:var(--cream);background:none;font-size:.76rem;font-weight:500;text-transform:uppercase;cursor:pointer}
.journal-text-link svg{width:18px;height:18px;color:var(--gold-light);transition:transform 220ms ease}
.journal-text-link:hover svg,.journal-text-link:focus-visible svg{transform:translateX(5px)}
.journal-hero__edition{position:absolute;right:var(--page-pad);bottom:10vh;z-index:2;display:flex;align-items:center;gap:16px;color:rgba(244,239,229,.55);font-size:.68rem;text-transform:uppercase;writing-mode:vertical-rl}
.journal-hero__edition i{width:1px;height:58px;background:rgba(219,177,88,.65)}

.journal-intro{padding:120px var(--page-pad);background:linear-gradient(118deg,rgba(42,83,119,.15),transparent 36%,rgba(200,155,69,.04) 70%),#08182a}
.journal-intro__inner{display:grid;width:min(100%,1320px);margin-inline:auto;grid-template-columns:minmax(0,1.2fr) minmax(300px,.7fr);gap:40px 90px;align-items:end}
.journal-intro__inner .eyebrow{grid-column:1/-1}
.journal-intro h2{font-size:clamp(3.5rem,5.4vw,6.6rem);font-weight:400;line-height:.92}
.journal-intro h2 em{color:var(--gold-light);font-weight:400}
.journal-intro__inner>p:last-child{margin:0;padding-left:28px;border-left:1px solid rgba(219,177,88,.42);color:var(--muted);line-height:1.85}

.journal-feature{display:grid;min-height:720px;grid-template-columns:minmax(0,1.15fr) minmax(420px,.85fr);background:#061421}
.journal-feature__media{position:relative;min-height:620px;overflow:hidden}
.journal-feature__media img{width:100%;height:100%;object-fit:cover;filter:saturate(1.08) contrast(1.07);transition:transform 900ms cubic-bezier(.2,.8,.2,1)}
.journal-feature:hover .journal-feature__media img{transform:scale(1.025)}
.journal-feature__media span{position:absolute;top:34px;left:34px;padding:9px 14px;border:1px solid rgba(237,210,141,.55);border-radius:3px;color:var(--gold-light);background:rgba(5,14,25,.72);font-size:.65rem;text-transform:uppercase;backdrop-filter:blur(8px)}
.journal-feature__copy{display:flex;align-items:flex-start;justify-content:center;flex-direction:column;padding:90px clamp(44px,6vw,112px)}
.journal-kicker{margin:0;color:var(--gold-light);font-size:.72rem;font-weight:500;text-transform:uppercase}
.journal-feature h2{max-width:560px;margin:18px 0 28px;font-size:clamp(4rem,5.4vw,6.7rem);font-weight:400}
.journal-feature__copy>p:not(.journal-kicker){max-width:570px;margin:0;color:var(--muted);font-size:1rem;line-height:1.85}
.journal-meta{display:flex;gap:20px;margin:28px 0;color:rgba(244,239,229,.5);font-size:.68rem;text-transform:uppercase}
.journal-meta span+span::before{margin-right:20px;color:var(--gold);content:"•"}

.journal-library{padding:116px var(--page-pad) 132px;background:radial-gradient(circle at 88% 14%,rgba(48,94,130,.16),transparent 28%),#0a1b2e}
.journal-library__heading{display:grid;width:min(100%,1400px);margin-inline:auto;grid-template-columns:1fr 360px;gap:60px;align-items:end}
.journal-library__heading h2{margin-top:14px;font-size:clamp(3.8rem,5vw,6rem);font-weight:400}
.journal-library__heading>p{margin:0 0 8px;color:var(--muted);line-height:1.75}
.journal-filters{display:flex;width:min(100%,1400px);margin:54px auto 38px;gap:32px;overflow-x:auto;border-bottom:1px solid rgba(244,239,229,.12);scrollbar-width:none}
.journal-filters::-webkit-scrollbar{display:none}
.journal-filter{position:relative;flex:0 0 auto;padding:0 0 16px;border:0;color:var(--muted);background:none;font-size:.75rem;text-transform:uppercase;cursor:pointer}
.journal-filter::after{position:absolute;right:0;bottom:-1px;left:0;height:2px;content:"";background:var(--gold-engraved);transform:scaleX(0);transition:transform 240ms ease}
.journal-filter:hover,.journal-filter:focus-visible,.journal-filter.is-active{color:var(--gold-light)}
.journal-filter.is-active::after{transform:scaleX(1)}
.journal-grid{display:grid;width:min(100%,1400px);margin-inline:auto;grid-template-columns:repeat(3,minmax(0,1fr));gap:58px 26px}
.journal-card{min-width:0;animation:journal-card-in 440ms ease both}
@keyframes journal-card-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
.journal-card__button{display:block;width:100%;padding:0;border:0;color:inherit;background:none;text-align:left;cursor:pointer}
.journal-card__image{position:relative;aspect-ratio:1.22/1;margin-bottom:24px;overflow:hidden;border-radius:4px;box-shadow:0 18px 48px rgba(0,0,0,.24)}
.journal-card__image::after{position:absolute;inset:0;border:1px solid rgba(219,177,88,.18);border-radius:inherit;content:"";pointer-events:none}
.journal-card__image img{width:100%;height:100%;object-fit:cover;filter:saturate(1.08) contrast(1.06);transition:transform 650ms cubic-bezier(.2,.8,.2,1)}
.journal-card__button:hover img,.journal-card__button:focus-visible img{transform:scale(1.045)}
.journal-card__category{color:var(--gold-light);font-size:.66rem;font-weight:500;text-transform:uppercase}
.journal-card h3{margin:10px 0 12px;font-size:clamp(2rem,2.4vw,2.8rem);font-weight:400;line-height:1}
.journal-card__excerpt{display:-webkit-box;margin:0;overflow:hidden;color:var(--muted);line-height:1.7;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.journal-card .journal-meta{margin:19px 0 0}
.journal-results{width:min(100%,1400px);margin:40px auto 0;color:rgba(244,239,229,.45);font-size:.72rem;text-align:right;text-transform:uppercase}

.journal-quote{position:relative;display:grid;min-height:72svh;place-items:center;overflow:hidden;padding:100px var(--page-pad)}
.journal-quote>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.86) contrast(1.12)}
.journal-quote__wash{position:absolute;inset:0;background:rgba(3,12,23,.63)}
.journal-quote blockquote{position:relative;z-index:1;max-width:1050px;margin:0;font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(3.4rem,5.6vw,6.5rem);font-weight:400;line-height:.98;text-align:center;text-shadow:0 4px 32px rgba(0,0,0,.6)}
.journal-quote blockquote span{display:block;height:68px;color:var(--gold-light);font-size:8rem;line-height:1}
.journal-concierge{display:flex;align-items:center;justify-content:space-between;gap:60px;padding:100px max(var(--page-pad),calc((100vw - 1400px)/2));background:#0d2239}
.journal-concierge h2{margin:14px 0 18px;font-size:clamp(3.4rem,4.6vw,5.4rem);font-weight:400}
.journal-concierge__copy>p:last-child{max-width:720px;margin:0;color:var(--muted)}
.journal-concierge>.button{flex:0 0 auto}

.journal-modal{position:fixed;inset:0;z-index:240;display:grid;place-items:center;padding:28px}
.journal-modal[hidden]{display:none}
.journal-modal__backdrop{position:absolute;inset:0;background:rgba(2,8,15,.88);backdrop-filter:blur(10px)}
.journal-modal__panel{position:relative;z-index:1;display:grid;width:min(100%,1120px);max-height:calc(100svh - 56px);overflow:auto;grid-template-columns:minmax(0,.95fr) minmax(430px,1.05fr);border:1px solid rgba(219,177,88,.38);border-radius:6px;background:#091a2d;box-shadow:0 30px 90px rgba(0,0,0,.58)}
.journal-modal__panel>img{width:100%;height:100%;min-height:570px;object-fit:cover}
.journal-modal__body{padding:72px 64px 60px}
.journal-modal__body h2{margin:14px 0 0;font-size:clamp(3rem,4.2vw,5rem);font-weight:400}
.journal-modal__body>p:not(.journal-kicker){color:var(--muted);line-height:1.82}
.journal-modal__body .journal-modal__note{margin:26px 0 30px;padding-top:22px;border-top:1px solid var(--soft-line);color:rgba(244,239,229,.48);font-size:.78rem}
.journal-modal__close{position:absolute;top:18px;right:18px;z-index:2}
.reveal{opacity:0;transform:translateY(24px);transition:opacity 700ms ease,transform 700ms ease}
.reveal.is-visible{opacity:1;transform:translateY(0)}

@media(max-width:1200px){.journal-feature{grid-template-columns:1fr 1fr}.journal-feature__copy{padding-inline:52px}.journal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){
  .journal-hero{min-height:780px}.journal-hero>img{object-position:61% center}.journal-hero__wash{background:linear-gradient(0deg,rgba(3,11,21,.96),rgba(3,11,21,.62) 62%,rgba(3,11,21,.35))}.journal-hero__content{padding:170px 24px 76px}.journal-hero h1{font-size:clamp(4rem,15vw,6rem)}.journal-hero__edition{display:none}
  .journal-intro,.journal-library{padding:84px 24px}.journal-intro__inner,.journal-library__heading{grid-template-columns:1fr;gap:28px}.journal-intro__inner .eyebrow{grid-column:auto}.journal-intro__inner>p:last-child{padding:22px 0 0;border-top:1px solid rgba(219,177,88,.42);border-left:0}
  .journal-feature{grid-template-columns:1fr}.journal-feature__media{min-height:58svh}.journal-feature__copy{padding:72px 24px 84px}.journal-filters{margin-top:42px}.journal-grid{grid-template-columns:1fr;gap:50px}.journal-card__image{aspect-ratio:1.35/1}.journal-results{text-align:left}
  .journal-quote{min-height:640px;padding-inline:24px}.journal-concierge{align-items:flex-start;flex-direction:column;padding:82px 24px}
  .journal-modal{padding:12px}.journal-modal__panel{max-height:calc(100svh - 24px);grid-template-columns:1fr}.journal-modal__panel>img{height:38svh;min-height:260px}.journal-modal__body{padding:46px 24px 40px}
}
@media(max-width:520px){.journal-hero{min-height:720px}.journal-hero h1{font-size:3.85rem}.journal-hero__content>p:not(.eyebrow){font-size:.9rem}.journal-intro h2,.journal-library__heading h2,.journal-feature h2,.journal-concierge h2{font-size:3.25rem}.journal-feature__media{min-height:430px}.journal-feature__media span{top:20px;left:20px}.journal-card h3{font-size:2.3rem}.journal-quote blockquote{font-size:3rem}}
@media(prefers-reduced-motion:reduce){.reveal,.journal-card,.journal-feature__media img,.journal-card__image img{animation:none;opacity:1;transform:none;transition:none}}
