.ve-page{--ve-ink:var(--vorug-ink);--ve-paper:var(--vorug-paper);--ve-muted:var(--vorug-text-secondary);--ve-line:var(--vorug-divider);--ve-navy:#20304c;color:var(--ve-ink);background:var(--vorug-surface);font-family:Manrope,'Vorug Sans',sans-serif;font-size:17px;line-height:1.65;padding:clamp(52px,7vw,112px) clamp(24px,5vw,80px) 48px;max-width:1600px;margin:0 auto;--ve-accent:var(--vorug-link);}
.ve-page *{box-sizing:border-box}.ve-page h1,.ve-page h2{font-family:Fraunces,'Vorug Editorial',serif;font-weight:300;letter-spacing:-.025em;text-wrap:balance;color:var(--ve-ink)}.ve-page p{margin:0 0 1.1em}.ve-page p:last-child{margin-bottom:0}.ve-page a{color:var(--ve-accent);text-decoration-thickness:1px;text-underline-offset:5px}.ve-page a:hover{text-decoration-thickness:2px}.ve-page a:focus-visible{outline:2px solid var(--ve-accent);outline-offset:5px}.ve-page ::selection{background:var(--vorug-selection);color:var(--vorug-on-action);}
.ve-opening{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,7vw,112px);align-items:start;padding-bottom:clamp(64px,7vw,112px);border-bottom:1px solid var(--ve-line)}.ve-opening h1{font-size:clamp(48px,5.5vw,80px);line-height:1.06;margin:0;max-width:8ch}.ve-intro{font-size:clamp(20px,1.8vw,24px);line-height:1.55;max-width:43ch;padding-top:5px}.ve-intro p+p{font-size:17px;line-height:1.65;color:var(--ve-muted);max-width:56ch}
.ve-reading{display:grid;grid-template-columns:minmax(180px,1fr) minmax(0,2fr);gap:clamp(48px,8vw,128px);padding-top:72px}.ve-contents{align-self:start;position:sticky;top:116px;max-height:calc(100vh - 144px);overflow-y:auto;scrollbar-color:var(--ve-muted) var(--ve-paper);scrollbar-width:thin}.ve-contents p{font-size:14px;color:var(--ve-muted);margin:0 0 20px}.ve-contents ul{list-style:none;margin:0;padding:0}.ve-contents li{margin:0 0 5px}.ve-contents a{display:inline-flex;align-items:center;min-height:44px;line-height:1.4;padding:8px 0;font-size:15px;text-decoration:none}.ve-contents a:hover{text-decoration:underline}
.ve-article{max-width:720px}.ve-principle{scroll-margin-top:112px;margin:0 0 76px}.ve-principle h2{font-size:clamp(28px,2.6vw,36px);line-height:1.2;margin:0 0 22px;max-width:25ch}.ve-copy{max-width:65ch}.ve-link{display:inline-flex;align-items:center;gap:14px;min-height:44px;font-size:15px;line-height:1.45;text-decoration:underline;margin-top:20px}.ve-link svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.35;flex:none}
.ve-close{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,7vw,112px);padding:64px clamp(24px,4vw,64px);background:var(--ve-paper);margin-top:0}.ve-close h2{font-size:clamp(32px,3.4vw,48px);line-height:1.12;margin:0;max-width:15ch}.ve-close .ve-copy{max-width:45ch}.ve-related{display:flex;flex-wrap:wrap;justify-content:space-between;gap:24px;padding:24px 0 0}.ve-related .ve-link{margin-top:0}
@media(min-width:1600px){.ve-page{padding-left:80px;padding-right:80px}}
@media(max-width:900px){.ve-reading{grid-template-columns:210px minmax(0,1fr);gap:40px}.ve-opening{gap:36px}.ve-close{gap:36px}.ve-page{font-size:16px}}
@media(max-width:700px){.ve-page{padding:48px 24px 32px}.ve-opening{grid-template-columns:1fr;gap:28px;padding-bottom:40px}.ve-opening h1{font-size:52px;max-width:10ch}.ve-intro{font-size:21px;padding-top:0}.ve-intro p+p{font-size:16px}.ve-reading{display:block;padding-top:32px}.ve-contents{position:static;max-height:none;overflow:visible;margin-bottom:52px}.ve-contents p{margin-bottom:12px}.ve-contents ul{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.ve-contents a{font-size:14px;min-height:48px;align-items:start}.ve-principle{margin-bottom:52px;scroll-margin-top:32px}.ve-principle h2{font-size:30px;margin-bottom:18px}.ve-link{margin-top:16px;font-size:14px}.ve-close{grid-template-columns:1fr;gap:24px;padding:32px 24px}.ve-close h2{font-size:36px}.ve-related{display:grid;gap:8px;padding-top:20px}.ve-related .ve-link{justify-content:space-between}}
@media(max-width:360px){.ve-page{padding-left:20px;padding-right:20px}.ve-opening h1{font-size:46px}.ve-contents ul{grid-template-columns:1fr}.ve-contents{margin-bottom:40px}.ve-close{padding:28px 20px}}
@media(prefers-reduced-motion:reduce){.ve-page,.ve-page *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media print{.ve-page{padding:0;font-size:11pt;max-width:none}.ve-reading{display:block}.ve-contents,.ve-related{display:none}.ve-principle{margin-bottom:26px;break-inside:avoid}.ve-opening{padding-bottom:24px}.ve-close{padding:24px;margin-top:24px}}
