/*
Theme Name: URLX Journal
Author: URLX Creative
Description: URLX Creative's Gutenberg-ready journal, with matching navigation, footer and downloadable Markdown resources.
Version: 1.0.0
Requires PHP: 8.1
Text Domain: urlx-journal
*/
.blog-shell { max-width:1184px; margin:auto; padding:65px 0 90px; }
.journal-hero { display:grid; grid-template-columns:1.3fr 1fr; gap:65px; align-items:end; padding-bottom:55px; border-bottom:1px solid var(--line); }
.journal-hero h1 { font-size:clamp(44px,5.5vw,76px); line-height:1.05; letter-spacing:-3px; margin:18px 0 0; max-width:760px; }
.journal-hero p { color:var(--muted); line-height:1.8; font-size:18px; }
.journal-tools { display:flex; justify-content:space-between; gap:24px; flex-wrap:wrap; padding:32px 0; }
.category-links { display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
.category-links a { border:1px solid var(--line); border-radius:999px; padding:9px 16px; font-size:13px; }
.category-links a:hover,.category-links a[aria-current] { background:var(--lime); color:#101716; }
.journal-search { display:flex; gap:8px; }
.journal-search input { background:var(--paper); color:var(--ink); border:1px solid var(--line); padding:12px 16px; border-radius:999px; min-width:0; font:inherit; }
.journal-search button { border:0; cursor:pointer; }
.journal-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.journal-card { border:1px solid var(--line); border-radius:20px; overflow:hidden; background:#fff; display:flex; flex-direction:column; }
.journal-card img { width:100%; aspect-ratio:16/10; object-fit:cover; display:block; }
.journal-art { aspect-ratio:16/10; background:linear-gradient(135deg,#d8ede3,#c8ff52); padding:30px; display:flex; flex-direction:column; justify-content:space-between; color:#17352f; }
.journal-art strong { font-size:62px; letter-spacing:-5px; }
.journal-art span { font:12px monospace; letter-spacing:2px; }
.card-copy { padding:26px; display:flex; flex:1; flex-direction:column; }
.card-copy h2 { font-size:25px; line-height:1.25; letter-spacing:-1px; margin:16px 0; }
.card-copy p { color:var(--muted); line-height:1.75; font-size:15px; }
.card-copy .read-link { margin-top:auto; padding-top:24px; font-weight:800; color:var(--green); }
.post-meta { font:12px/1.7 'DM Mono',monospace; color:var(--green); }
.pagination { margin-top:40px; display:flex; gap:12px; }.pagination .page-numbers { padding:10px 16px; border:1px solid var(--line); border-radius:9px; }.pagination .current { background:var(--lime); color:#101716; }
.article-head { max-width:900px; margin:auto; padding-bottom:40px; }.article-head h1 { font-size:clamp(40px,5vw,68px); line-height:1.1; letter-spacing:-2.5px; margin:20px 0; }.article-cover { width:100%; max-height:560px; object-fit:cover; border-radius:20px; margin-bottom:40px; }
.article-body { max-width:780px; margin:auto; font-size:18px; line-height:1.85; overflow-wrap:anywhere; }.article-body h2 { margin-top:45px; font-size:32px; line-height:1.25; }.article-body h3 { font-size:24px; }.article-body a { color:var(--green); text-decoration:underline; }.article-body img { max-width:100%; height:auto; }.article-body pre { overflow:auto; padding:24px; background:var(--mint); border-radius:12px; }.article-body blockquote { border-left:4px solid var(--green); margin-left:0; padding-left:24px; }.article-body table { width:100%; border-collapse:collapse; }.article-body td,.article-body th { padding:12px; border:1px solid var(--line); }.article-body .alignwide { max-width:100%; }.download-panel { margin:40px 0; padding:28px; background:var(--mint); border-radius:18px; }.download-panel h2 { margin-top:0; }.journal-end { border-top:1px solid var(--line); margin-top:55px; padding-top:28px; display:flex; justify-content:space-between; gap:20px; }
.solutions-page .mega[hidden],.insights-dropdown[hidden] { display:none; }.solutions-page .mega:not([hidden]) { display:block; }.admin-bar .nav.wrap { top:32px; }.skip-link { position:absolute; left:12px; top:-100px; z-index:99999; background:var(--lime); padding:14px; color:#101716; }.skip-link:focus { top:10px; }.screen-reader-text { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }.desktop-top[hidden] { display:none; }
html[data-theme="dark"] .journal-card { background:#192820; }
@media(max-width:1240px){.blog-shell { margin-inline:28px; }}
@media(max-width:800px){.blog-shell { margin-inline:20px; padding-top:40px; }.journal-hero { grid-template-columns:1fr; gap:15px; }.journal-grid { grid-template-columns:1fr 1fr; }.admin-bar .nav.wrap { top:46px; }.journal-search { width:100%; }.journal-search input { flex:1; }.article-body { font-size:17px; }}
@media(max-width:540px){.journal-grid { grid-template-columns:1fr; }.journal-hero h1 { letter-spacing:-2px; }.journal-end { flex-direction:column; }}
@media(prefers-reduced-motion:no-preference){.journal-card { transition:transform 220ms ease,box-shadow 220ms ease; }.journal-card:hover { transform:translateY(-4px); box-shadow:0 15px 35px #10171612; }}
/* Shared Insights mega menu */
::selection { background:#c8ff3d; color:#101716; text-shadow:none; }
::-moz-selection { background:#c8ff3d; color:#101716; text-shadow:none; }
.nav .insights-nav { position:static; }
.insights-mega { position:absolute; top:100%; left:0; right:0; padding:36px max(28px,calc((100% - 1184px)/2)); display:grid; grid-template-columns:1fr 1fr 1.7fr; gap:36px; background:#fff; color:#101716; border-bottom:1px solid #d8e3dd; box-shadow:0 20px 30px #10171612; max-height:calc(100dvh - 110px); overflow:auto; }
.insights-mega[hidden] { display:none; }
.insights-mega h2 { font:11px/1.5 'DM Mono',monospace; letter-spacing:1.5px; text-transform:uppercase; color:#547268; margin:0 0 16px; }
.insights-mega section > a { display:block; padding:12px; margin:0 -12px 4px; border-radius:10px; font-size:14px; line-height:1.5; }
.insights-mega a span { display:block; font-size:12px; color:#547268; font-weight:400; margin-top:3px; }
.insights-mega a:hover,.insights-mega a:focus-visible { background:#f0f5ef; }
.insights-mega .insights-story { margin:0; padding:0; overflow:hidden; background:#f2f5ef; display:grid; grid-template-columns:1fr; }
.insights-story img { width:100%; height:125px; object-fit:cover; }
.insights-story > div { padding:22px; }
.insights-story strong { display:block; font-size:21px; line-height:1.35; letter-spacing:-.6px; }
.insights-story p { color:#547268; font-size:13px; font-weight:400; line-height:1.6; margin:10px 0 18px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.insights-story b { font-size:13px; }
html[data-theme="dark"] .insights-mega { background:#192820; color:#eef5ef; border-color:#344d40; }
html[data-theme="dark"] .insights-mega :is(h2,p,a span) { color:#b8cec0; }
html[data-theme="dark"] .insights-mega :is(.insights-story,a:hover,a:focus-visible) { background:#2a4035; }
@media(prefers-reduced-motion:no-preference) { .insights-mega { animation:insights-in 220ms ease-out; } @keyframes insights-in { from { opacity:0; transform:translateY(-6px); } to { opacity:1; transform:none; } } }
@media(max-width:800px) { .insights-mega { position:static; grid-template-columns:1fr; padding:20px; gap:20px; } }

.markdown-dialog{box-sizing:border-box;width:min(520px,calc(100% - 32px));max-height:85dvh;overflow:auto;padding:32px;border:1px solid #397b6333;border-radius:24px;background:#fff;color:#101716;box-shadow:0 24px 80px #0005}
.markdown-dialog::backdrop{background:#10171699;backdrop-filter:blur(8px)}
.markdown-dialog h2{font-size:28px;padding-right:24px;margin-top:0}
.markdown-dialog p{font-size:14px;line-height:1.7}
.markdown-close{position:absolute;right:16px;top:12px;width:44px;height:44px;border:0;background:transparent;font-size:28px;cursor:pointer}
.markdown-form{display:grid;gap:18px}.markdown-form label{display:grid;gap:8px;font-weight:700}.markdown-form input{box-sizing:border-box;width:100%;padding:14px;border:1px solid #397b6355;border-radius:12px;background:#f6f8f5;color:#101716;font:inherit}.markdown-form .pill{background:#c8ff52;color:#101716;justify-content:center}.markdown-form button:disabled{opacity:.6;cursor:wait}
.markdown-dialog .markdown-form input{padding:9px 12px;min-height:40px;border-radius:9px;font-size:15px;line-height:20px}

/* Match the main site's opaque, smooth menu reveal and gradient icons. */
.urlx-blog .nav :is(.mega,.insights-mega){z-index:110;opacity:1;animation:none}
.urlx-blog .nav .mega{transform:translateX(-50%)}
.urlx-blog .nav .insights-mega{transform:none}
@media(prefers-reduced-motion:no-preference){
 .urlx-blog .nav :is(.mega,.insights-mega):not([hidden]){animation:urlx-menu-reveal 420ms cubic-bezier(.22,1,.36,1)}
 @keyframes urlx-menu-reveal{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0)}}
 .urlx-blog .nav :is(.mega-item,.mega-simple,.insights-mega a){transition:background-color 350ms ease,color 350ms ease}
 .urlx-blog .nav .mega-item .mega-icon,.urlx-blog .nav .mega-item:is(:hover,:focus-visible) .mega-icon{background:linear-gradient(135deg,var(--mint) 0%,var(--mint) 35%,#20e2d7 65%,#f9fee5 100%);background-size:300% 300%;transition:background-position 550ms ease,transform 550ms cubic-bezier(.22,1,.36,1),color 350ms ease}
 .urlx-blog .nav .mega-item .mega-icon{background-position:0% 0%}
 .urlx-blog .nav .mega-item:is(:hover,:focus-visible) .mega-icon{background-position:100% 100%;transform:translateY(-2px)}
}
