.livity-section { border-top:1px solid var(--line); background:linear-gradient(145deg,#091b13,#10271b 55%,#091b13); }
.livity-section em { color:var(--gold); font-weight:400; }
.livity-intro { color:var(--muted); max-width:440px; margin:0 0 4px; font-size:13px; line-height:1.95; }
.livity-opening { display:grid; grid-template-columns:1.12fr 1fr; align-items:center; gap:54px; margin-bottom:48px; }
.livity-visual { position:relative; margin:0; overflow:hidden; border:1px solid var(--line); }
.livity-visual img { width:100%; aspect-ratio:3/2; object-fit:cover; transition:transform .6s ease; }
.livity-visual:hover img { transform:scale(1.025); }
.livity-visual figcaption { position:absolute; inset:auto 0 0; padding:30px 22px 14px; background:linear-gradient(transparent,rgba(3,15,9,.87)); color:var(--cream); font-size:9px; font-weight:600; letter-spacing:2px; text-transform:uppercase; }
.livity-lead { padding:12px 0; }
.livity-lead h3 { font-size:clamp(32px,3.1vw,44px); line-height:1.08; letter-spacing:-.65px; margin:12px 0 20px; }
.livity-lead > p:not(.research-kicker) { font-size:12px; color:var(--muted); line-height:1.95; }
.livity-lead .livity-motto { color:var(--gold)!important; margin:18px 0 22px; }
.livity-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.livity-card { display:flex; flex-direction:column; padding:30px 32px 25px; background:rgba(5,20,12,.5); border:1px solid var(--line); min-width:0; }
.livity-card-top { display:flex; justify-content:space-between; align-items:center; margin-bottom:18px; }
.livity-number { font-family:var(--display); font-size:30px; color:var(--gold); }
.livity-icon { width:48px; height:48px; color:var(--gold); opacity:.85; }
.livity-card h3 { margin:0 0 15px; font-size:31px; line-height:1.15; letter-spacing:-.3px; }
.livity-card p,.livity-card li { font-size:12px; line-height:1.9; color:var(--muted); }
.livity-card p { margin:0 0 13px; }
.livity-card ul { padding:0 0 0 17px; margin:0 0 20px; }
.livity-card li { padding-left:4px; margin:0 0 10px; }
.livity-card li::marker { color:var(--gold); }
.livity-references { display:flex; gap:10px; margin-top:auto; }
.livity-reference { display:inline-block; color:var(--gold); font-size:9px; font-weight:600; letter-spacing:.5px; border-bottom:1px solid rgba(231,193,106,.5); white-space:nowrap; }
.livity-reference:hover { color:var(--cream); border-color:var(--cream); }
.livity-world { display:grid; grid-template-columns:1fr 1.13fr; gap:25px 60px; margin-top:35px; padding:40px; background:radial-gradient(ellipse at 10% 0,rgba(54,83,114,.35),transparent 65%),#0c1f2c; border:1px solid rgba(231,193,106,.28); }
.livity-world h3 { font-size:42px; line-height:1.08; letter-spacing:-.6px; margin:14px 0 22px; }
.livity-world-heading > p:not(.research-kicker),.livity-world li p { font-size:12px; color:#b8c6ca; line-height:1.95; margin:0 0 15px; }
.livity-world-heading .livity-world-end { color:#d1d8d2!important; }
.livity-world ol { list-style:none; padding:0; margin:0; }
.livity-world li { padding:0 0 16px; margin:0 0 17px; border-bottom:1px solid rgba(231,193,106,.2); }
.livity-world li:last-child { padding-bottom:0; margin-bottom:0; border:0; }
.livity-world h4 { color:var(--cream); font-family:var(--display); font-size:25px; font-weight:500; line-height:1.2; margin:0 0 8px; }
.livity-world li p { margin-bottom:0; }
.livity-independent { grid-column:1/-1; margin:0; padding-top:19px; border-top:1px solid rgba(231,193,106,.2); color:#b8c6ca; font-size:10px; line-height:1.8; }
.livity-practice { display:flex; align-items:center; gap:28px; padding:34px 0; margin:12px 0 35px; border-bottom:1px solid var(--line); }
.livity-practice-mark { color:var(--gold); font-family:Georgia,serif; font-size:58px; line-height:1; }
.livity-practice h3 { font-size:32px; margin:0 0 7px; }
.livity-practice p { color:var(--muted); font-size:12px; line-height:1.9; max-width:890px; margin:0; }
.livity-sources-head { display:flex; align-items:end; justify-content:space-between; gap:30px; margin-bottom:24px; }
.livity-sources h3 { font-size:34px; line-height:1.1; margin:0; }
.livity-sources-head p { color:var(--muted); font-size:11px; line-height:1.9; max-width:420px; margin:0; }
.livity-sources ol { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); list-style:none; gap:0 25px; padding:0; margin:0; }
.livity-sources li { display:flex; min-width:0; }
.livity-sources li a { display:flex; align-items:start; width:100%; gap:12px; border-top:1px solid var(--line); padding:17px 0; scroll-margin-top:125px; }
.livity-source-number { color:var(--gold); font-size:9px; letter-spacing:.6px; flex:none; padding-top:2px; }
.livity-source-org { display:block; color:var(--muted); font-size:9px; line-height:1.7; margin-bottom:4px; }
.livity-source-title { display:block; font-size:11px; line-height:1.7; color:var(--cream); }
.livity-source-arrow { color:var(--gold); margin-left:auto; flex:none; font-size:14px; }
.livity-sources a:hover .livity-source-title { color:var(--gold); }
.livity-sources a:target { background:rgba(231,193,106,.07); outline:1px solid var(--gold); outline-offset:5px; }
.livity-updated { margin:20px 0 0; color:var(--muted); font-size:9px; letter-spacing:.4px; }
@media(max-width:1100px) { .livity-opening { gap:32px; } .livity-world { gap:24px 35px; padding:32px; } .livity-card { padding:25px; } }
@media(max-width:850px) { .livity-opening { grid-template-columns:1fr; gap:22px; } .livity-lead { max-width:630px; } .livity-section .section-head { align-items:start; flex-direction:column; } .livity-intro { max-width:630px; } .livity-world { grid-template-columns:1fr; } .livity-world-heading { max-width:600px; } .livity-sources ol { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .livity-grid { grid-template-columns:1fr; gap:15px; } .livity-opening { margin-bottom:30px; } .livity-card { padding:24px; } .livity-card h3 { font-size:29px; } .livity-world { padding:26px 22px; margin-top:26px; } .livity-world h3 { font-size:35px; } .livity-practice { gap:18px; align-items:start; } .livity-practice-mark { font-size:42px; } .livity-practice h3 { font-size:29px; } .livity-sources-head { align-items:start; flex-direction:column; gap:15px; } .livity-sources ol { grid-template-columns:1fr; } .livity-visual figcaption { font-size:8px; letter-spacing:1.5px; } }
@media(prefers-reduced-motion:reduce) { .livity-visual img { transition:none; } .livity-visual:hover img { transform:none; } }
