/* Dark Serenity design system. All artwork below is original CSS scenery; replace with licensed game art when ready. */
:root{--night:#0b0c10;--charcoal:#111216;--panel:#17171c;--ivory:#f0ece5;--muted:#aaa5a4;--crimson:#8f3038;--line:#383037;--max:1200px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--night);color:var(--ivory);font-family:Arial,Helvetica,sans-serif;line-height:1.7}a{color:inherit}a:focus-visible,button:focus-visible{outline:2px solid #d69a9f;outline-offset:5px}img{max-width:100%;height:auto}.ds-container{width:min(calc(100% - 48px),var(--max));margin-inline:auto}.ds-skip{position:absolute;left:-9999px;top:0;background:white;color:black;padding:12px;z-index:100}.ds-skip:focus{left:10px}.ds-header{position:relative;z-index:20;background:#111216;border-bottom:1px solid rgba(240,236,229,.1)}.ds-header-inner{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:32px}.ds-brand a,.ds-footer-brand{text-decoration:none;font-size:22px;letter-spacing:3px;font-weight:600;white-space:nowrap}.ds-brand span{font-weight:300}.ds-brand img{max-height:70px;width:auto}.ds-nav-list{display:flex;align-items:center;gap:32px;list-style:none;padding:0;margin:0}.ds-nav-list a{text-decoration:none;color:#d8d4d0;font-size:12px;font-weight:700;letter-spacing:1.7px;text-transform:uppercase;transition:color .2s}.ds-nav-list a:hover,.ds-nav-list .current-menu-item>a{color:#d89ca1}.ds-menu-toggle{display:none;background:transparent;border:0;padding:12px;cursor:pointer}.ds-menu-toggle span{display:block;width:25px;height:2px;background:var(--ivory);margin:5px 0}.ds-hero{position:relative;isolation:isolate;min-height:min(850px,calc(100svh - 92px));display:flex;align-items:center;overflow:hidden;background:radial-gradient(ellipse at 70% 30%,#42232d 0,#1b1821 36%,#090b12 78%)}.ds-hero-art,.ds-hero-shade{position:absolute;inset:0;pointer-events:none}.ds-hero-art{z-index:-2;overflow:hidden;background:radial-gradient(ellipse at 64% 52%,rgba(150,79,80,.17),transparent 55%),linear-gradient(180deg,#13141e,#24212c 55%,#08090d)}.ds-moon{position:absolute;width:clamp(170px,23vw,370px);aspect-ratio:1;border-radius:50%;top:13%;left:60%;background:radial-gradient(circle at 42% 38%,#b65558 0,#812e3a 56%,#411c29 73%);box-shadow:0 0 55px 18px #8f30382e,0 0 180px 65px #8f303817}.ds-mountain{position:absolute;inset:auto -5% 0;height:60%;clip-path:polygon(0 68%,9% 49%,17% 63%,29% 26%,40% 58%,52% 19%,65% 65%,77% 30%,88% 62%,100% 36%,100% 100%,0 100%)}.ds-mountain-back{bottom:3%;background:#181923;opacity:.85;filter:blur(4px)}.ds-mountain-front{height:47%;background:#090b11;clip-path:polygon(0 50%,15% 73%,31% 40%,46% 67%,59% 34%,72% 58%,86% 22%,100% 53%,100% 100%,0 100%)}.ds-citadel{position:absolute;bottom:20%;left:69%;width:14%;height:36%;background:#0a0a10;clip-path:polygon(0 100%,0 46%,13% 46%,13% 21%,20% 21%,20% 7%,27% 21%,27% 53%,39% 53%,39% 33%,46% 33%,46% 0,54% 33%,54% 58%,65% 58%,65% 25%,72% 10%,79% 25%,79% 45%,90% 45%,90% 20%,96% 45%,96% 100%);filter:drop-shadow(0 0 10px #000)}.ds-hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(5,6,10,.94) 0%,rgba(5,6,10,.67) 38%,rgba(5,6,10,.1) 78%),linear-gradient(0deg,#0b0c10,transparent 26%)}.ds-hero-content{position:relative;padding-block:115px 145px}.ds-eyebrow{color:#c17a80;font-size:11px;letter-spacing:4px;font-weight:700;text-transform:uppercase;margin:0 0 28px}.ds-hero h1,.ds-page-hero h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:.06em;line-height:1.02;margin:0;text-transform:uppercase}.ds-hero h1{font-size:clamp(58px,9vw,132px);text-shadow:0 8px 35px #0007}.ds-hero h1 span{color:#d8d1cb}.ds-accent-line{width:90px;height:3px;background:var(--crimson);margin:35px 0}.ds-hero-tagline{font-family:Georgia,serif;font-style:italic;font-size:clamp(18px,2.1vw,27px);color:#d7ceca;margin:0 0 38px}.ds-button{display:inline-flex;align-items:center;gap:35px;text-decoration:none;background:var(--crimson);border:1px solid #a24b53;color:white;padding:16px 25px;font-size:11px;font-weight:700;letter-spacing:2px;transition:background .2s,transform .2s}.ds-button:hover{background:#a83c46;transform:translateY(-2px)}.ds-button span{font-size:17px}.ds-hero-bottom{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);font-size:10px;letter-spacing:3px;color:#c9bdba;white-space:nowrap}.ds-hero-bottom span{margin-left:12px}.ds-section{padding:110px 0}.ds-intro{background:#101116}.ds-two-col{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.ds-section h2{font:400 clamp(35px,4vw,60px)/1.18 Georgia,serif;letter-spacing:.01em;margin:0 0 30px}.ds-section h2 em{color:#ba6a72}.ds-two-col p:not(.ds-eyebrow){color:#bcb6b4;font-size:16px;max-width:520px}.ds-text-link{display:inline-block;margin-top:18px;color:#e0a0a6;text-decoration:none;font-size:11px;letter-spacing:2px;font-weight:700}.ds-text-link:hover{text-decoration:underline}.ds-features{background:linear-gradient(145deg,#16151b,#0b0c10)}.ds-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:50px}.ds-feature-card{min-height:310px;border:1px solid #393038;background:linear-gradient(145deg,#211b23,#111116);padding:34px;display:flex;flex-direction:column;transition:transform .2s,border-color .2s}.ds-feature-card:hover{transform:translateY(-4px);border-color:#7f444c}.ds-card-number{color:#a9676e;font:24px Georgia,serif}.ds-feature-card h3{font:400 26px Georgia,serif;letter-spacing:2px;margin:48px 0 8px}.ds-feature-card p{color:#aca4a3;font-size:14px;margin:0 0 26px}.ds-feature-card a,.ds-coming{margin-top:auto;text-decoration:none;color:#df9ba2;font-size:11px;font-weight:700;letter-spacing:2px}.ds-coming{color:#817a7c}.ds-page-main{min-height:65vh}.ds-page-hero{padding:105px 0 95px;background:radial-gradient(ellipse at 78% 35%,#40222b,#16151d 40%,#0c0d12 75%);border-bottom:1px solid var(--line)}.ds-page-hero h1{font-size:clamp(48px,7vw,100px)}.ds-page-hero p:not(.ds-eyebrow){color:var(--muted)}.ds-page-content{padding-block:75px 120px;max-width:920px;color:#c8c1bd;font-size:17px}.ds-page-content h2,.ds-page-content h3{color:var(--ivory);font-family:Georgia,serif;font-weight:400;line-height:1.2}.ds-page-content h2{font-size:38px}.ds-page-content a{color:#d88f97}.ds-page-content .wp-block-image img,.ds-featured-image img{width:100%;height:auto}.ds-placeholder{font:italic 23px Georgia,serif;color:#bcb2af}.ds-editor-content{border-top:1px solid var(--line)}.ds-post-grid{padding-block:75px 110px;display:grid;grid-template-columns:repeat(2,1fr);gap:25px}.ds-post-card{border:1px solid var(--line);padding:35px;background:var(--panel)}.ds-post-card h2{font:400 31px Georgia,serif}.ds-post-card h2 a{text-decoration:none}.ds-post-card p{color:var(--muted)}.ds-footer{background:#09090d;border-top:1px solid #332a30;padding:65px 0 24px}.ds-footer-inner{display:flex;justify-content:space-between;gap:40px}.ds-footer-brand{font-size:20px}.ds-footer p,.ds-copyright{color:#898183;font-size:13px}.ds-footer-links a{color:#c9c1be;text-decoration:none;font-size:12px;letter-spacing:1px}.ds-footer-menu{display:flex;gap:20px;list-style:none;padding:0;margin:0}.ds-copyright{border-top:1px solid #252127;margin-top:55px;padding-top:25px}.screen-reader-text{position:absolute;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden}.alignwide{max-width:1200px;margin-inline:auto}.alignfull{width:100%}@media(max-width:800px){.ds-header-inner{min-height:76px}.ds-brand a{font-size:18px;letter-spacing:2px}.ds-menu-toggle{display:block}.ds-navigation{display:none;position:absolute;top:100%;left:0;right:0;background:#111216;border-bottom:1px solid var(--line);padding:15px 24px 25px}.ds-navigation.is-open{display:block}.ds-nav-list{display:flex;flex-direction:column;align-items:stretch;gap:0}.ds-nav-list a{display:block;padding:13px 0}.ds-hero{min-height:650px}.ds-hero-content{padding-block:100px 125px}.ds-hero-shade{background:linear-gradient(90deg,#05060af2,#05060a77),linear-gradient(0deg,#0b0c10,transparent 30%)}.ds-moon{left:56%;top:20%}.ds-two-col,.ds-card-grid,.ds-post-grid{grid-template-columns:1fr}.ds-two-col{gap:15px}.ds-section{padding:75px 0}.ds-feature-card{min-height:250px}.ds-feature-card h3{margin-top:28px}.ds-footer-inner{flex-direction:column}.ds-page-hero{padding:80px 0}}@media(max-width:440px){.ds-container{width:min(calc(100% - 32px),var(--max))}.ds-hero h1{font-size:clamp(48px,14vw,70px)}.ds-eyebrow{letter-spacing:2px}.ds-brand a{font-size:16px}.ds-hero-bottom{font-size:9px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* v1.1: Use the original WordPress Media Library artwork for the homepage hero.
   Keep the uploaded file in Media Library; this URL is site-specific. */
.ds-hero{background:#0b0c10;}
.ds-hero-art{display:block;}
.ds-hero-shade{background:linear-gradient(90deg,rgba(5,6,10,.88) 0%,rgba(5,6,10,.65) 37%,rgba(5,6,10,.12) 78%),linear-gradient(0deg,rgba(11,12,16,.86),transparent 25%);}
@media(max-width:800px){.ds-hero{background-position:58% center;}.ds-hero-shade{background:linear-gradient(90deg,rgba(5,6,10,.87),rgba(5,6,10,.4)),linear-gradient(0deg,rgba(11,12,16,.8),transparent 30%);}}

/* v1.2: Dedicated The Game page. Artwork is already stored in WordPress Media Library. */
.ds-game-hero{position:relative;isolation:isolate;display:flex;align-items:center;min-height:650px;background:#0b0c10 url("https://game.darkserenity.com/wp-content/uploads/2026/09/cover_bg.png") 62% center/cover no-repeat;overflow:hidden}
.ds-game-hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(5,6,10,.94),rgba(5,6,10,.67) 48%,rgba(5,6,10,.2)),linear-gradient(0deg,#0b0c10,transparent 27%)}
.ds-game-hero-inner{padding-block:110px 120px;position:relative}
.ds-game-hero h1{font:400 clamp(54px,8vw,112px)/1.05 Georgia,'Times New Roman',serif;letter-spacing:.045em;margin:0;text-transform:uppercase;text-shadow:0 8px 35px #0009}
.ds-game-hero h1 em{font-weight:400;color:#c78389}
.ds-game-lede{max-width:580px;color:#e0d9d6;font-size:clamp(17px,1.7vw,22px);line-height:1.6;margin:0 0 34px}
.ds-game-overview{background:#101116}.ds-game-overview p:not(.ds-eyebrow){color:#bcb6b4;font-size:16px;max-width:540px}
.ds-game-pillars{background:linear-gradient(145deg,#16151b,#0b0c10)}
.ds-game-closing{text-align:center;background:#101116;border-top:1px solid var(--line)}.ds-game-closing p:not(.ds-eyebrow){color:#bcb6b4}
.ds-game-editor-content{max-width:920px}
@media(max-width:800px){.ds-game-hero{min-height:610px;background-position:65% center}.ds-game-hero-inner{padding-block:95px}.ds-game-hero-shade{background:linear-gradient(90deg,rgba(5,6,10,.93),rgba(5,6,10,.55)),linear-gradient(0deg,#0b0c10,transparent 30%)}}

/* v1.3: GDD-grounded editorial content and accessible class explorer. */
.ds-planned-note{border-left:2px solid #a55c65;padding:9px 0 9px 16px;color:#d5b6b8!important;font-size:13px!important;line-height:1.6}.ds-classes{background:linear-gradient(150deg,#14141b,#090a0e)}.ds-classes-lede{max-width:850px;color:#c8bfc0;margin:0 0 32px}.ds-class-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:35px 0 0}.ds-class-tab{cursor:pointer;background:#1d1b22;color:#ddd4d0;border:1px solid #55404a;padding:15px 22px;font:700 12px Arial,sans-serif;letter-spacing:2px}.ds-class-tab[aria-selected="true"]{background:#8f3038;border-color:#b46a71;color:white}.ds-class-panel{border:1px solid #47343e;background:#15141b;padding:clamp(22px,4vw,48px)}.ds-class-panel[hidden]{display:none}.ds-class-panel h3{font:400 38px Georgia,serif;margin:0 0 30px}.ds-class-panel h3 span{display:block;color:#bcadb0;font:14px Arial,sans-serif;margin-top:8px}.ds-branch-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.ds-branch{border-left:2px solid #8f3038;background:#1d1a22;padding:25px}.ds-branch span{color:#ca8d95;font-size:10px;font-weight:bold;letter-spacing:2px}.ds-branch h4{font:400 29px Georgia,serif;margin:6px 0}.ds-branch p{color:#c3b9b8;margin:0 0 25px}.ds-branch p:last-child{margin-bottom:0}@media(max-width:650px){.ds-class-tab{flex:1 1 45%;padding:13px 8px}.ds-branch-grid{grid-template-columns:1fr}.ds-class-panel h3{font-size:30px}}

/* v1.4: Approved The Game content sections. No new art or external dependencies. */
.ds-section-lede{max-width:850px;color:#c7bdba;margin:0 0 35px}.ds-inline-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.ds-inline-tags span{border:1px solid #70434b;color:#d7adb0;font-size:10px;letter-spacing:1.5px;padding:9px 12px}.ds-progress-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:35px 0}.ds-progress-grid article,.ds-tactics-grid article,.ds-ap-grid article{border:1px solid #47343e;background:#1b1920;padding:25px}.ds-progress-grid article{border-top:3px solid #8f3038}.ds-progress-grid span{font-size:11px;color:#d4939b;letter-spacing:2px;font-weight:700}.ds-progress-grid h3,.ds-tactics-grid h3,.ds-ap-grid h3{font:400 25px Georgia,serif;margin:15px 0}.ds-progress-grid p,.ds-tactics-grid p,.ds-ap-grid p{color:#c2b7b5;font-size:14px}.ds-tactics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.ds-tactics-grid h3{font-size:21px;letter-spacing:1px}.ds-ap-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:35px}.ds-ap-grid h3{font-size:18px}.ds-ap-grid strong{display:block;font:400 38px Georgia,serif;color:#d49b9f}.ds-game-hero h1{font-size:clamp(36px,5.1vw,75px);max-width:1080px;line-height:1.13}.ds-game-closing p{max-width:700px;margin:12px auto}.ds-game-closing .ds-text-link{margin-top:28px}@media(max-width:800px){.ds-progress-grid{grid-template-columns:1fr}.ds-tactics-grid{grid-template-columns:1fr}}@media(max-width:440px){.ds-ap-grid{grid-template-columns:1fr}}

/* v1.5: World page. Uses existing approved cover artwork; no unapproved stock imagery. */
.ds-world-hero{position:relative;isolation:isolate;min-height:680px;display:flex;align-items:center;background:#0b0c10 url("https://game.darkserenity.com/wp-content/uploads/2026/09/cover_bg.png") 62% center/cover no-repeat;overflow:hidden}
.ds-world-hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(5,6,10,.96),rgba(5,6,10,.78) 49%,rgba(5,6,10,.35)),linear-gradient(0deg,#0b0c10,transparent 35%)}
.ds-world-hero-inner{padding-block:110px 120px;position:relative}.ds-world-hero h1{font:400 clamp(38px,5.5vw,78px)/1.13 Georgia,serif;letter-spacing:.035em;margin:0;max-width:1100px}.ds-world-hero h1 em{color:#c78389;font-weight:400}.ds-world-hero-inner>p:not(.ds-eyebrow){max-width:660px;color:#d0c8c6;font-size:16px}.ds-world-hero-inner .ds-world-hero-lede{font-size:21px!important;color:#f0ece5!important}.ds-world-hero .ds-button{margin-top:24px}
.ds-world-narrow{max-width:870px}.ds-world-silence{background:radial-gradient(ellipse at 80% 75%,#20202a,#101116 62%);border-bottom:1px solid #382d36}.ds-world-silence p:not(.ds-eyebrow),.ds-world-light p:not(.ds-eyebrow){color:#c7bfc0;font-size:17px;max-width:760px}.ds-world-omen{border-left:3px solid #8f3038;padding:8px 0 8px 28px;margin:32px 0}.ds-world-omen p{font:italic 24px Georgia,serif!important;color:#e0d6d3!important;margin:12px 0}
.ds-world-regions{background:#101015}.ds-world-region-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.ds-world-region{display:flex;flex-direction:column;border:1px solid #48353e;border-top:3px solid #8f3038;background:linear-gradient(150deg,#211b23,#15141b);padding:clamp(24px,3vw,40px)}.ds-world-index{color:#ce9299;font:700 11px Arial,sans-serif;letter-spacing:2.2px}.ds-world-region h3,.ds-world-card h3{font:400 clamp(28px,3vw,38px)/1.2 Georgia,serif;margin:18px 0 10px}.ds-world-region p,.ds-world-card p{color:#c6bcba;font-size:15px}.ds-world-region .ds-world-tagline,.ds-world-card .ds-world-tagline{font:italic 19px Georgia,serif;color:#d49ba1}.ds-world-keywords{margin-top:auto;padding-top:25px;color:#b88b92;font-size:10px;line-height:1.9;letter-spacing:1.2px}.ds-world-keywords span{padding:0 4px}
.ds-world-magic{background:#0d0e12}.ds-world-pantheon{background:#131218}.ds-world-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.ds-world-card{border:1px solid #48353e;background:#1c1920;padding:clamp(22px,2.5vw,35px);min-height:290px}.ds-world-card strong{color:#efe5e0}.ds-world-light{background:radial-gradient(ellipse at 78% 20%,#342326,#101116 66%)}.ds-world-final-line{font:italic 28px Georgia,serif!important;color:#e5b1b3!important;margin-top:32px}.ds-world-closing{background:#0b0c10}
@media(max-width:800px){.ds-world-hero{min-height:620px;background-position:66% center}.ds-world-hero-inner{padding-block:85px}.ds-world-hero-shade{background:linear-gradient(90deg,rgba(5,6,10,.94),rgba(5,6,10,.68)),linear-gradient(0deg,#0b0c10,transparent 30%)}.ds-world-region-grid{grid-template-columns:1fr}.ds-world-card-grid{grid-template-columns:1fr}.ds-world-card{min-height:0}}@media(max-width:440px){.ds-world-hero h1{font-size:clamp(34px,10vw,48px)}.ds-world-omen p{font-size:21px!important}}

/* v1.6: Development page; original approved site artwork and responsive editorial cards. */
.ds-dev-hero{position:relative;isolation:isolate;min-height:680px;display:flex;align-items:center;background:#0b0c10 url("https://game.darkserenity.com/wp-content/uploads/2026/09/cover_bg.png") 62% center/cover no-repeat;overflow:hidden}.ds-dev-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(5,6,10,.96),rgba(5,6,10,.78) 49%,rgba(5,6,10,.35)),linear-gradient(0deg,#0b0c10,transparent 35%)}.ds-dev-hero-inner{padding-block:110px 120px;position:relative}.ds-dev-hero h1{font:400 clamp(40px,6vw,86px)/1.1 Georgia,serif;letter-spacing:.035em;margin:0}.ds-dev-hero h1 em{color:#c78389;font-weight:400}.ds-dev-hero-inner>p:not(.ds-eyebrow){max-width:660px;color:#d0c8c6;font-size:16px}.ds-dev-hero-inner .ds-dev-lede{font-size:21px!important;color:#f0ece5!important}.ds-dev-hero .ds-button{margin-top:16px}.ds-dev-status{display:inline-block;font:700 10px Arial,sans-serif;letter-spacing:1.5px;padding:9px 12px;border:1px solid #70515b;color:#e0bdc1}.ds-dev-status-done{border-color:#536c5a;color:#b5d4bb}.ds-dev-status-partial{border-color:#8b7051;color:#e1c39a}.ds-dev-status-current{border-color:#99535e;color:#e3b0b7}.ds-dev-status-planned{border-color:#5b5b65;color:#c3c0c7}.ds-dev-philosophy{background:#111116}.ds-dev-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.ds-dev-card{background:#1c1920;border:1px solid #48353e;border-top:3px solid #8f3038;padding:clamp(22px,3vw,34px)}.ds-dev-card h3,.ds-dev-focus-panel h3,.ds-dev-milestones h3{font:400 clamp(24px,2.5vw,32px) Georgia,serif;margin:18px 0 12px}.ds-dev-card p,.ds-dev-milestones p,.ds-dev-focus-panel p{color:#c6bcba;font-size:15px}.ds-dev-focus{background:radial-gradient(ellipse at 80% 20%,#252029,#101116 70%)}.ds-dev-focus p:not(.ds-eyebrow),.ds-dev-method p:not(.ds-eyebrow){color:#c7bfc0;font-size:17px}.ds-dev-focus-panel{margin-top:30px;padding:30px;background:#1b1920;border-left:3px solid #8f3038}.ds-dev-roadmap{background:#0e0f13}.ds-dev-milestones{list-style:none;counter-reset:milestone;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:35px 0;padding:0}.ds-dev-milestones li{counter-increment:milestone;position:relative;background:#1b1920;border:1px solid #48353e;padding:30px;min-width:0}.ds-dev-milestones li:before{content:counter(milestone,decimal-leading-zero);display:block;color:#c78389;font:400 30px Georgia,serif;margin-bottom:16px}.ds-dev-caveat{font-size:13px!important;color:#aaa1a5!important;line-height:1.7}.ds-dev-method{background:#151218}.ds-dev-process{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin:32px 0}.ds-dev-process span:nth-child(odd){padding:14px 17px;border:1px solid #75424c;color:#e5c2c5;font-size:12px;letter-spacing:1px}.ds-dev-process span:nth-child(even){color:#bd7e86}.ds-dev-closing{background:#0b0c10}.ds-dev-closing .ds-dev-status{margin-top:25px}@media(max-width:800px){.ds-dev-hero{min-height:620px;background-position:66% center}.ds-dev-hero-inner{padding-block:85px}.ds-dev-shade{background:linear-gradient(90deg,rgba(5,6,10,.94),rgba(5,6,10,.68)),linear-gradient(0deg,#0b0c10,transparent 30%)}.ds-dev-grid,.ds-dev-milestones{grid-template-columns:1fr}}@media(max-width:440px){.ds-dev-hero h1{font-size:clamp(36px,10vw,52px)}.ds-dev-process{gap:8px}.ds-dev-process span:nth-child(odd){padding:10px 8px;font-size:10px}}

/* v1.7: Original Godot title-screen art, bundled locally for reliable deployment. */
.ds-hero-art{background:#0b0c10 url("../images/coastal_kingdom.png") center center/cover no-repeat}
.ds-hero-art .ds-moon,.ds-hero-art .ds-mountain,.ds-hero-art .ds-citadel{display:none}
@media(max-width:800px){.ds-hero-art{background-position:60% center}}

/* v1.7.1: Render the exact supplied Godot title image as an actual image element, not cached CSS scenery. */
.ds-hero-art{background:#0b0c10!important}.ds-hero-image{display:block;width:100%;height:100%;object-fit:cover;object-position:center center}@media(max-width:800px){.ds-hero-image{object-position:60% center}}

/* v1.7.2: Home hero displays bundled coastal artwork, not the legacy Media Library background. */
.ds-hero{background:#0b0c10;}
.ds-hero-art{display:block;position:absolute;inset:0;z-index:-2;overflow:hidden;}
.ds-hero-image{display:block;width:100%;height:100%;object-fit:cover;object-position:center center;}
@media(max-width:800px){.ds-hero-image{object-position:60% center;}}

/* v1.8: class artwork. Portraits remain transparent and scale without cropping. */
.ds-class-art{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;justify-items:center;gap:12px;margin:0 0 32px;padding:20px 16px 16px;border:1px solid #41313b;background:radial-gradient(ellipse at 50% 38%,#302936 0%,#19171f 58%,#101016 100%)}
.ds-class-art-frame{display:flex;align-items:center;justify-content:center;width:100%;height:clamp(300px,46vw,530px);overflow:hidden}
.ds-class-portrait{display:block;max-width:100%;max-height:100%;width:auto;height:100%;object-fit:contain;object-position:center center;filter:drop-shadow(0 16px 20px rgba(0,0,0,.5))}
.ds-class-art-controls{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}
.ds-art-choice{cursor:pointer;border:1px solid #6a4c55;background:#211c24;color:#e6d9d6;padding:12px 20px;font:700 11px Arial,sans-serif;letter-spacing:2px}
.ds-art-choice[aria-pressed="true"]{background:#8f3038;border-color:#c57a82;color:#fff}
.ds-art-choice:focus-visible{outline:2px solid #e9c6a6;outline-offset:3px}
.ds-art-caption{margin:0!important;color:#c5b6b9!important;font-size:12px!important;text-align:center}
@media(min-width:850px){.ds-class-art{grid-template-columns:minmax(0,1fr) minmax(180px,240px);grid-template-rows:1fr auto;justify-items:start;padding:16px 24px}.ds-class-art-frame{grid-row:1 / 3;height:clamp(350px,44vw,550px)}.ds-class-art-controls{align-self:end}.ds-art-caption{text-align:left}}
@media(max-width:480px){.ds-class-art-frame{height:350px}.ds-art-choice{padding:12px 17px}}

/* Test-slice enemy gallery: isolated styles preserve existing class and homepage layouts. */
.ds-test-enemies{background:radial-gradient(ellipse at 50% 0%,#262029 0%,#101015 65%);border-block:1px solid #332a30}
.ds-test-enemies .ds-section-lede{margin-bottom:42px}
.ds-enemy-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.ds-enemy-card{min-width:0;display:flex;flex-direction:column;border:1px solid #48353e;background:linear-gradient(180deg,#211c24,#141319);overflow:hidden}
.ds-enemy-portrait{height:clamp(330px,39vw,490px);display:flex;align-items:flex-end;justify-content:center;overflow:hidden;background:radial-gradient(ellipse at 50% 43%,#3b313b 0%,#211d26 45%,#111116 80%);border-bottom:1px solid #48353e}
.ds-enemy-portrait img{display:block;width:100%;height:100%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 12px 18px rgba(0,0,0,.42))}
.ds-enemy-copy{padding:26px 26px 30px;flex:1}
.ds-enemy-copy span{color:#d08c95;font:700 10px Arial,sans-serif;letter-spacing:2px}
.ds-enemy-copy h3{font:400 clamp(26px,2.5vw,35px)/1.2 Georgia,serif;margin:12px 0 14px}
.ds-enemy-copy p{color:#c8bdbb;font-size:14px;line-height:1.75;margin:0}
.ds-enemy-note{font-size:12px;color:#aaa0a3;margin:25px 0 0}
@media(max-width:900px){.ds-enemy-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.ds-enemy-grid{grid-template-columns:1fr}.ds-enemy-portrait{height:440px}}


/* v2.0: Demo landing page. No fabricated download or unverified requirements. */
.ds-demo-hero{position:relative;isolation:isolate;min-height:650px;display:flex;align-items:center;background:#0b0c10 url("../images/coastal_kingdom.png") center center/cover no-repeat;overflow:hidden}
.ds-demo-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(5,6,10,.96) 0%,rgba(5,6,10,.83) 42%,rgba(5,6,10,.35) 100%),linear-gradient(0deg,#0b0c10,transparent 35%)}
.ds-demo-hero-inner{padding-block:110px 120px;position:relative}.ds-demo-hero h1{font:400 clamp(44px,6.5vw,92px)/1.08 Georgia,serif;letter-spacing:.035em;margin:0}.ds-demo-hero h1 em{color:#c78389;font-weight:400}.ds-demo-hero p:not(.ds-eyebrow){max-width:640px;color:#d0c8c6;font-size:16px}.ds-demo-hero .ds-demo-lede{font-size:22px!important;color:#f0ece5!important}.ds-demo-hero .ds-button{margin-top:20px}
.ds-demo-intro{background:#111116}.ds-demo-intro p:not(.ds-eyebrow),.ds-demo-requirements p:not(.ds-eyebrow){color:#c7bfc0;font-size:17px}.ds-demo-download{background:radial-gradient(ellipse at 70% 15%,#29202a,#0b0c10 70%)}.ds-demo-download-card{max-width:850px;margin:auto;text-align:center;padding:clamp(30px,6vw,70px);border:1px solid #62424b;background:rgba(23,20,27,.88)}.ds-demo-download-card h2{margin:24px 0}.ds-demo-download-card p{color:#c9bfc0;max-width:610px;margin:0 auto 26px}.ds-demo-disabled{display:inline-block;padding:17px 26px;background:#30272e;border:1px solid #6d545d;color:#d5c3c5;font:700 11px Arial,sans-serif;letter-spacing:2px;cursor:not-allowed}.ds-demo-download-card .ds-demo-small{font-size:13px;margin:20px auto 0;color:#a99ca1}.ds-demo-requirements{background:#141218}.ds-demo-editor{background:#101116}
@media(max-width:800px){.ds-demo-hero{min-height:610px;background-position:65% center}.ds-demo-shade{background:linear-gradient(90deg,rgba(5,6,10,.96),rgba(5,6,10,.67)),linear-gradient(0deg,#0b0c10,transparent 30%)}.ds-demo-hero-inner{padding-block:85px}.ds-demo-hero h1{font-size:clamp(42px,10vw,68px)}}

/* Demo download button: keep the live link prominent and keyboard-accessible. */
.ds-demo-download-button{margin:4px auto 0;text-decoration:none}
.ds-demo-download-button:focus-visible{outline:3px solid #f1e2cb;outline-offset:5px}
