.ksg{--siege-gold:#e9cd8b;color:#d3cbbb;line-height:1.7}
.ksg section{scroll-margin-top:24px;margin-top:38px}
.ksg h3{font-family:Cinzel,Georgia,serif;font-weight:500;font-size:28px;line-height:1.25;color:#f4e9cd;margin:9px 0 16px}
.ksg h4{font-size:16px;color:#e9cd8b;margin:0 0 10px}
.ksg p{margin:10px 0 16px}.ksg strong,.ksg b{color:#f0dfb6}
.ksg-eyebrow{color:#c4a873;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.16em}
.ksg-hero{min-height:310px;padding:30px;display:flex;align-items:flex-end;gap:24px;justify-content:space-between;border:1px solid #91713b;border-radius:10px;background:linear-gradient(0deg,rgba(8,12,13,.98),rgba(8,12,13,.4) 80%),url('/siege/assets/world-v6/fort_ashborn-central-attacker.webp') center 42%/cover;box-shadow:inset 0 0 50px #07090960}
.section .ksg-hero h2{font-size:48px;color:#fff1cc;margin:8px 0 12px}.section .ksg-hero p{color:#e3dccb;margin:0;max-width:470px}
.ksg-schedule{min-width:215px;display:grid;gap:5px;border-top:1px solid #9d814d;padding-top:12px}.ksg-schedule b{font-size:24px;white-space:nowrap}.ksg-schedule span{font-size:11px;color:#bdb4a2}
.ksg-callout{border-left:3px solid #d4ad55;background:#c69c3910;margin:18px 0;padding:14px 18px;font-size:13px}.ksg-callout p{margin:4px 0 0}
.ksg-contents{display:flex;flex-wrap:wrap;gap:8px;padding:14px 0;border-bottom:1px solid #d3b66b26}.ksg-contents a{font-size:12px;color:#e8c980;text-decoration:none;padding:7px 11px;border:1px solid #c8a45635;border-radius:4px;background:#c8a45608}.ksg-contents a:hover{background:#c8a45620}
.ksg-screen{margin:22px 0;border:1px solid #b99b5d45;border-radius:7px;overflow:hidden;background:#080d0c}.ksg-screen a{display:block;cursor:zoom-in}.ksg-screen img{display:block;width:100%;height:auto}.ksg-screen figcaption{padding:12px 16px;font-size:12px;color:#bdb39f;line-height:1.6}
.ksg-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px}.ksg-pair>div{border-top:1px solid #c6a76b33;padding-top:18px;min-width:0}.ksg-pair p{font-size:14px}
.ksg-note{border-left:2px solid #977637;padding:9px 16px;background:#b89a5010;font-size:13px}.ksg-tempo{display:flex;gap:35px;margin:18px 0}.ksg-tempo span{display:grid;font-size:12px;color:#b5aa94}.ksg-tempo b{font-size:28px}
.ksg-range-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #b99b5d45;border-radius:7px;overflow:hidden;margin:22px 0}.ksg-range-grid>div{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:20px 10px;background:linear-gradient(#b59a4d10,transparent);border-right:1px solid #b99b5d25}.ksg-range-grid>div:last-child{border-right:0}.ksg-range-grid span{font-size:12px;color:#e7d7b6;min-height:42px;display:grid;place-items:center}.ksg-range-grid b{font-family:Georgia,serif;font-size:46px;font-weight:400;line-height:1}.ksg-range-grid small{color:#9b927e;font-size:10px}
.ksg-radius{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin:22px 0}.ksg-radius>span{border:1px solid #69a79e66;background:#5d9e9510;display:grid;text-align:center;padding:15px 4px;font-size:20px;color:#a9d2c9}.ksg-radius small{font-size:10px;color:#a5b9b3}.ksg-radius .ksg-caster{border-color:#e9cd8b;background:#e9cd8b15;color:#f6dfa3;font-size:16px}
.ksg-steps{padding:0;list-style:none;counter-reset:siege-step}.ksg-steps li{position:relative;padding:15px 0 15px 46px;border-bottom:1px solid #b99b5d26;font-size:14px;counter-increment:siege-step}.ksg-steps li:before{content:counter(siege-step);position:absolute;left:0;top:18px;border:1px solid #b99b5d60;width:29px;height:29px;display:grid;place-items:center;color:#e9cd8b;font-family:Georgia,serif}.ksg-steps b{display:block;margin-bottom:5px}
.ksg-test-scope{border:1px solid #b99b5d30;padding:15px 18px;margin:24px 0;font-size:13px}.ksg-test-scope summary{cursor:pointer;color:#d8c49c}.ksg-test-scope p{margin-bottom:0}
@media(max-width:1100px){.ksg-hero{flex-direction:column;align-items:flex-start;padding:24px;gap:20px}.ksg-schedule{min-width:0}.ksg-schedule b{font-size:22px}}
@media(max-width:640px){.ksg-hero{min-height:320px;padding:22px 18px}.section .ksg-hero h2{font-size:38px}.ksg h3{font-size:24px}.ksg-pair{grid-template-columns:1fr;gap:14px}.ksg-range-grid{grid-template-columns:1fr 1fr}.ksg-range-grid>div{border-bottom:1px solid #b99b5d25}.ksg-range-grid>div:nth-child(2n){border-right:0}.ksg-contents{gap:6px}.ksg-contents a{font-size:11px}.ksg section{margin-top:30px}.ksg-radius>span{font-size:17px}.ksg-radius .ksg-caster{font-size:12px}.ksg-radius small{font-size:9px}}
