@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/source-sans-3-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/source-sans-3-latin-600-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:700;font-display:swap;src:url(fonts/source-sans-3-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/source-serif-4-latin-600-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/source-sans-3-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/source-sans-3-latin-ext-600-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:700;font-display:swap;src:url(fonts/source-sans-3-latin-ext-700-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/source-serif-4-latin-ext-600-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/source-sans-3-cyrillic-400-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/source-sans-3-cyrillic-600-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:700;font-display:swap;src:url(fonts/source-sans-3-cyrillic-700-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/source-serif-4-cyrillic-600-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/source-sans-3-cyrillic-ext-400-normal.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/source-sans-3-cyrillic-ext-600-normal.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:700;font-display:swap;src:url(fonts/source-sans-3-cyrillic-ext-700-normal.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/source-serif-4-cyrillic-ext-600-normal.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/source-sans-3-greek-400-normal.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/source-sans-3-greek-600-normal.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:700;font-display:swap;src:url(fonts/source-sans-3-greek-700-normal.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}
@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/source-serif-4-greek-600-normal.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}
@font-face{font-family:"Noto Sans Arabic";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/noto-sans-arabic-400-normal.woff2) format("woff2");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}
@font-face{font-family:"Noto Sans Arabic";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/noto-sans-arabic-600-normal.woff2) format("woff2");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}
@font-face{font-family:"Noto Sans Arabic";font-style:normal;font-weight:700;font-display:swap;src:url(fonts/noto-sans-arabic-700-normal.woff2) format("woff2");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}:root{--studio:#12110f;--ink:#efe8dc;--dim:#a39a8e;--line:#2c2824;--ember:#c45c28;--ember-l:#e07a3d;--gold:#e8a04a;--ok:#8dceb0;--on-ember:#fff8f2;--card:rgba(36,24,18,0.72);--glass:rgba(22,14,11,0.9);--gline:rgba(196,120,64,0.34);--sans:"Source Sans 3","Noto Sans Arabic","Noto Sans",Arial,sans-serif;--serif:"Source Serif 4","Noto Sans Arabic",Georgia,serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:#12110f;background:var(--studio);color:#efe8dc;color:var(--ink);font:400 1.0625rem/1.6 "Source Sans 3",Arial,sans-serif;font:400 1.0625rem/1.6 var(--sans)}
body.l-ar{font-size:1.125rem;line-height:1.75}
a{color:#e8a04a;color:var(--gold)}img{max-width:100%}
[id]{scroll-margin-top:5.25rem}
.wrap{max-width:75rem;margin:0 auto;padding:0 1.5rem}
h1,h2,h3{font-family:Georgia,serif;font-family:var(--serif);font-weight:600;line-height:1.2;margin:0}
.l-ar h1,.l-ar h2,.l-ar h3{font-family:var(--sans);font-weight:700}
.skip{position:absolute;left:0.75rem;top:-80px;z-index:30;background:var(--ember);color:var(--on-ember);padding:0.5rem 0.875rem;border-radius:62.4375rem}.skip:focus{top:0.5rem}
/* nav */
.nav{position:-webkit-sticky;position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:0.625rem 1.5rem;background:rgba(16,13,11,0.96);border-bottom:1px solid rgba(232,176,96,0.18)}
@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.nav{background:rgba(10,8,7,0.62);-webkit-backdrop-filter:blur(1.375rem) saturate(1.25);backdrop-filter:blur(1.375rem) saturate(1.25)}}
.brand{display:flex;align-items:center;color:var(--ink);text-decoration:none;font:600 1.1875rem Georgia,serif;font:600 1.1875rem var(--serif);white-space:nowrap}.brand img{width:1.875rem;height:auto;margin-right:0.625rem}
[dir=rtl] .brand img{margin-right:0;margin-left:0.625rem}
.links a{color:var(--ink);text-decoration:none;font-weight:600;font-size:0.9375rem;margin:0 0.6875rem;padding:0.375rem 2px}
.tools{display:flex;align-items:center}
.dd{position:relative;margin-left:0.5rem}[dir=rtl] .dd{margin-left:0;margin-right:0.5rem}
.dd summary{list-style:none;cursor:pointer;display:flex;align-items:center;padding:0.4375rem 0.875rem;border-radius:62.4375rem;border:1px solid var(--gline);background:rgba(20,18,16,0.72);font-weight:600;font-size:0.9375rem;white-space:nowrap}
.dd summary::-webkit-details-marker{display:none}.dd summary::marker{content:""}
.dd summary img{width:1.125rem;height:1.125rem;margin-right:0.375rem}[dir=rtl] .dd summary img{margin-right:0;margin-left:0.375rem}
.dd summary:after{content:"";width:0.375rem;height:0.375rem;border-right:2px solid var(--gold);border-bottom:2px solid var(--gold);transform:rotate(45deg);margin:-3px 0 0 0.5625rem}
[dir=rtl] .dd summary:after{margin:-3px 0.5625rem 0 0}
.dd[open] summary{background:rgba(196,92,40,0.22);border-color:var(--ember-l)}
.dd-m{position:absolute;right:0;top:calc(100% + 0.5rem);top:2.875rem;min-width:13.125rem;margin:0;padding:0.375rem;list-style:none;background:#1a120e;background:rgba(24,16,12,0.98);border:1px solid var(--gline);border-radius:0.625rem;box-shadow:0 1.125rem 3.125rem rgba(0,0,0,0.45);z-index:25}
[dir=rtl] .dd-m{right:auto;left:0}
.dd-m a{display:block;padding:0.5625rem 0.75rem;border-radius:0.4375rem;color:var(--ink);text-decoration:none;font-weight:600}
.dd-m a b{display:inline-block;min-width:1.875rem;color:var(--gold);font-size:0.8125rem}
.dd-m a.on{background:rgba(196,92,40,0.22)}
.menu{display:none}
/* buttons */
.btn{display:inline-block;padding:0.75rem 1.375rem;border-radius:62.4375rem;background:var(--ember);color:var(--on-ember)!important;text-decoration:none;font-weight:600;border:1px solid var(--ember);-webkit-transition:background .2s;transition:background .2s;margin:0 0.625rem 0.625rem 0}
[dir=rtl] .btn{margin:0 0 0.625rem 0.625rem}
.btn.ghost{background:transparent;color:var(--ink)!important;border-color:var(--gline)}
/* hero */
.hero{position:relative;overflow:hidden;padding:4rem 0 5rem;border-bottom:1px solid var(--line)}
.hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#12110f 22%,rgba(18,17,15,0.45)),url(img/MidnightCore.jpg) center/cover}
[dir=rtl] .hero-bg{background:linear-gradient(270deg,#12110f 22%,rgba(18,17,15,0.45)),url(img/MidnightCore.jpg) center/cover}
.hero-in{position:relative;display:-ms-grid;display:grid;grid-template-columns:1fr 1.15fr;grid-gap:3rem;gap:3rem;align-items:center}
.badge{display:inline-flex;align-items:center;padding:0.375rem 0.875rem;border-radius:62.4375rem;border:1px solid var(--gline);background:rgba(20,18,16,0.72);font-size:0.8125rem;font-weight:700;letter-spacing:.08em;color:var(--gold)}
.l-ar .badge{letter-spacing:0}
.badge i{width:0.5rem;height:0.5rem;border-radius:50%;background:var(--ember-l);box-shadow:0 0 0.5rem rgba(224,122,61,0.7);margin-right:0.5625rem;-webkit-animation:p 2s infinite;animation:p 2s infinite}
[dir=rtl] .badge i{margin-right:0;margin-left:0.5625rem}
@-webkit-keyframes p{50%{opacity:.35}}@keyframes p{50%{opacity:.35}}
.hero-logo{display:block;width:7rem;height:auto;margin:1.5rem 0 0.75rem}
h1{font-size:3.25rem;font-size:clamp(2.5rem,5.6vw,4.125rem);white-space:nowrap}h1 span{color:var(--gold)}
.sub{font-size:1.375rem;line-height:1.4;margin:0.875rem 0 0.5rem;max-width:30em}
.tag{font-size:1.125rem;color:var(--dim);margin:0 0 1.625rem;max-width:34em}
.os-mock{position:relative;height:0;padding-top:62.5%;border-radius:0.875rem;overflow:hidden;border:1px solid var(--gline);box-shadow:0 1.125rem 3.125rem rgba(0,0,0,0.45)}
@supports (aspect-ratio:1/1){.os-mock{height:auto;padding-top:0;aspect-ratio:16/10}}
.os-wall{position:absolute;top:0;right:0;bottom:0;left:0;background:url(img/MidnightCore-sm.jpg) 60% center/cover}
.os-menu{position:absolute;left:4%;bottom:15%;width:64%;padding:0.75rem;border-radius:0.625rem;background:#1a120e;border:1px solid var(--gline);font-size:0.75rem;line-height:1.35}
[dir=rtl] .os-menu{left:auto;right:4%}
.os-menu-h{display:flex;align-items:center;font:600 0.875rem var(--serif);margin-bottom:0.625rem}.os-menu-h img{width:1.125rem;margin:0 0.5rem}
.os-search{border:1px solid var(--ember-l);border-radius:0.375rem;padding:0.375rem 0.625rem;color:var(--dim);margin-bottom:0.625rem;background:rgba(8,6,5,0.42);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.os-grid{display:-ms-grid;display:grid;grid-template-columns:1fr 1fr;grid-gap:0.5rem;gap:0.5rem}
.os-card{padding:0.5625rem;border-radius:0.5rem;border:1px solid var(--gline);background:var(--card);overflow:hidden}.os-card img{display:block;width:1.25rem;margin-bottom:3px}.os-card b,.os-card small{display:block}.os-card small{color:var(--dim)}
.os-panel{position:absolute;left:0;right:0;bottom:0;height:11%;display:flex;align-items:center;padding:0 0.625rem;background:rgba(14,11,9,0.95);border-top:1px solid rgba(232,176,96,0.28)}
.os-panel>*{margin:0 0.3125rem}.os-panel>img{width:1.125rem}.os-start{display:flex;align-items:center;justify-content:center;width:1.875rem;height:1.75rem;border-radius:0.4375rem;background:rgba(196,92,40,0.18)}.os-start img{width:1.125rem}
.os-find{width:30%;border:1px solid rgba(232,176,96,0.26);border-radius:0.375rem;padding:3px 0.5rem;font-size:0.6875rem;color:var(--dim);background:rgba(8,6,5,0.42);white-space:nowrap;overflow:hidden}.os-clock{margin-left:auto!important;font-size:0.75rem;font-weight:600}
[dir=rtl] .os-clock{margin-left:0.3125rem!important;margin-right:auto!important}
@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.os-menu{background:var(--glass);-webkit-backdrop-filter:blur(1.125rem);backdrop-filter:blur(1.125rem)}.os-panel{background:rgba(10,8,7,0.58);-webkit-backdrop-filter:blur(1.375rem) saturate(1.25);backdrop-filter:blur(1.375rem) saturate(1.25)}}
/* sections */
.sec{padding-top:5.5rem}
.eyebrow{color:var(--gold);text-transform:uppercase;letter-spacing:.12em;font-size:0.8125rem;font-weight:700;margin:0 0 0.5rem}
.l-ar .eyebrow,.l-el .eyebrow{letter-spacing:.04em}
h2{font-size:2.125rem;font-size:clamp(1.75rem,3.4vw,2.625rem)}
.lead{color:var(--dim);font-size:1.1875rem;max-width:44em;margin:0.875rem 0 0}
.intro{display:-ms-grid;display:grid;grid-template-columns:1fr 1fr;grid-gap:3.5rem;gap:3.5rem;align-items:start}
.intro-b p{margin:0 0 1rem}
blockquote{margin:0.375rem 0 1.375rem;padding:1rem 1.25rem;border-left:3px solid var(--ember-l);background:var(--card);border-radius:0 0.625rem 0.625rem 0;font:600 1.25rem/1.45 var(--serif);color:var(--ink)}
[dir=rtl] blockquote{border-left:0;border-right:3px solid var(--ember-l);border-radius:0.625rem 0 0 0.625rem}
.l-ar blockquote{font-family:var(--sans)}
.chips{list-style:none;padding:0;margin:1.5rem 0 0.5rem;display:flex;flex-wrap:wrap}
.chips a{display:flex;align-items:center;justify-content:center;width:2.625rem;height:2.625rem;margin:0 0.5rem 0.5rem 0;border-radius:62.4375rem;border:1px solid var(--gline);background:rgba(20,18,16,0.72);color:var(--ink);text-decoration:none;font-weight:700}
[dir=rtl] .chips a{margin:0 0 0.5rem 0.5rem}
.feats{display:-ms-grid;display:grid;grid-template-columns:1fr 1fr;grid-gap:1.25rem;gap:1.25rem;margin-top:1.25rem;align-items:start}
.feat{padding:1.625rem 1.75rem;border-radius:0.875rem;background:var(--card);border:1px solid var(--gline)}
.feat header{display:flex;align-items:center;flex-wrap:wrap;margin-bottom:0.75rem}
.feat header img{width:2.5rem;height:2.5rem;margin-right:0.75rem}[dir=rtl] .feat header img{margin-right:0;margin-left:0.75rem}
.num{font:700 0.875rem var(--sans);color:var(--gold);padding:2px 0.625rem;border:1px solid var(--gline);border-radius:62.4375rem}
.feat h3{width:100%;font-size:1.375rem;margin-top:0.875rem}
.feat p{margin:0 0 0.75rem;color:#d9d0c3}
.feat .kicker{font:600 1.125rem/1.4 var(--serif);color:var(--ink);margin:1.125rem 0 0.625rem;padding-left:0.75rem;border-left:3px solid var(--gold)}
[dir=rtl] .feat .kicker{padding-left:0;padding-right:0.75rem;border-left:0;border-right:3px solid var(--gold)}
.l-ar .feat .kicker{font-family:var(--sans)}
.st{margin:1rem 0 0!important;padding:0.75rem 0.875rem;border-radius:0.625rem;background:rgba(196,92,40,0.12);border:1px dashed rgba(232,160,74,0.55);font-size:0.9375rem;color:var(--ink)!important}
.st-b{display:inline-block;padding:1px 0.625rem;margin-right:0.375rem;border-radius:62.4375rem;background:var(--ember);color:var(--on-ember);font-size:0.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
[dir=rtl] .st-b{margin-right:0;margin-left:0.375rem;letter-spacing:0}
.gallery{display:-ms-grid;display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1.125rem;gap:1.125rem;margin-top:1.75rem}.gallery figure{margin:0}
.gallery a{display:block;border-radius:0.75rem}
.gallery img{display:block;width:100%;height:auto;border-radius:0.75rem;border:1px solid var(--gline);-webkit-transition:transform .25s;transition:transform .25s}
figcaption{margin-top:0.625rem;font-weight:600}
.road{list-style:none;padding:0;margin:2rem 0 0;display:-ms-grid;display:grid;grid-template-columns:repeat(4,1fr);grid-gap:1.125rem;gap:1.125rem}
.road li{padding:1.375rem;border-radius:0.75rem;border:1px solid var(--line);border-top:3px solid var(--line);background:rgba(30,27,24,0.6)}
.road .now{border-top-color:var(--ember-l);background:var(--card)}.road .design{border-top-color:var(--gold)}.road .plan{border-top-color:#9a9186}.road .test{border-top-color:var(--ok)}
.road h3{font-size:1.1875rem;margin:0 0 0.5rem}.road .now h3{color:var(--ember-l)}.road .design h3{color:var(--gold)}.road .test h3{color:var(--ok)}
.road p{margin:0;color:var(--dim);font-size:1rem}
.disc{margin:1.375rem 0 0;padding:0.875rem 1.125rem;border-radius:0.625rem;border:1px dashed var(--gline);color:var(--dim);font-size:0.9375rem;max-width:60em}
.closing{text-align:center;padding:3.5rem 1.75rem;border-radius:1.125rem;border:1px solid var(--gline);background:linear-gradient(160deg,rgba(196,92,40,0.28),rgba(18,12,10,0.94) 60%),url(img/EmberArchitecture-sm.jpg) center/cover}
.closing img{width:6rem;height:auto}
.c-name{font:600 1.25rem var(--serif);color:var(--gold);margin:0.625rem 0 0.375rem}
.closing h2{font-size:2.125rem;font-size:clamp(1.75rem,4vw,3rem);font-family:var(--serif)!important}
.closing p{max-width:40em;margin:1rem auto 1.5rem;font-size:1.1875rem}
.soon{display:inline-block;padding:0.5rem 1.25rem;border-radius:62.4375rem;border:1px solid var(--ember-l);color:var(--gold);font-weight:700;letter-spacing:.14em;font-size:0.875rem}
.gh{margin:1.25rem 0 0}
[hidden]{display:none!important}
.foot{display:flex;justify-content:space-between;flex-wrap:wrap;margin-top:5.5rem;padding-top:1.5rem;padding-bottom:2rem;border-top:1px solid var(--line);color:var(--dim);font-size:0.9375rem}
.foot span{display:flex;align-items:center;margin:0.25rem 0}.foot img{width:1.375rem;margin:0 0.5rem}
/* interaction */
@media (hover:hover){.links a:hover,.dd-m a:hover{color:var(--gold)}.dd summary:hover{border-color:var(--ember-l)}.btn:hover{background:var(--ember-l)}.btn.ghost:hover{background:rgba(224,140,70,0.16)}.chips a:hover{background:rgba(196,92,40,0.3)}.gallery a:hover img{transform:translateY(-3px)}}
a:focus,summary:focus{outline:3px solid var(--gold);outline-offset:3px}
a:focus:not(:focus-visible),summary:focus:not(:focus-visible){outline:none}
a:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.btn:focus-visible,.chips a:focus-visible{outline:none;box-shadow:0 0 0 3px #12110f,0 0 0 0.375rem var(--gold)}
.chips a:focus,.chips a:focus-visible{background:rgba(196,92,40,0.35)}
/* safe areas */
.nav{padding-left:max(1.5rem,env(safe-area-inset-left));padding-right:max(1.5rem,env(safe-area-inset-right))}
.foot{padding-bottom:max(2rem,env(safe-area-inset-bottom))}
/* responsive */
@media (max-width:1100px){.links{display:none}.menu{display:block}}
@media (max-width:980px){.hero-in,.intro{grid-template-columns:1fr;gap:2.25rem}.feats{grid-template-columns:1fr}.road{grid-template-columns:1fr 1fr}.gallery{grid-template-columns:1fr 1fr 1fr}}
@media (max-width:640px){
 body{font-size:1rem}.wrap{padding-left:1.125rem;padding-right:1.125rem;padding-left:max(1.125rem,env(safe-area-inset-left));padding-right:max(1.125rem,env(safe-area-inset-right))}
 .nav{padding:0.5rem 0.75rem;padding-left:max(0.75rem,env(safe-area-inset-left));padding-right:max(0.75rem,env(safe-area-inset-right))}
 .brand{font-size:1rem}.brand img{width:1.625rem}.dd summary{padding:0.375rem 0.6875rem;font-size:0.875rem}.dd summary img{display:none}
 h1{white-space:normal}.sub{font-size:1.1875rem}.hero{padding:2.25rem 0 3.5rem}.sec{padding-top:4rem}
 .gallery,.road{grid-template-columns:1fr}.feat{padding:1.25rem 1.125rem}.closing{padding:2.5rem 1.125rem}
 .os-mock{padding-top:120%}@supports (aspect-ratio:1/1){.os-mock{padding-top:0;aspect-ratio:4/5}}
 .os-menu{top:4%;bottom:auto;left:5%;right:5%;width:auto}[dir=rtl] .os-menu{left:5%;right:5%}
 .dd-m{position:fixed;top:3.5rem;left:0.75rem;right:0.75rem;min-width:0}
 [dir=rtl] .dd-m{left:0.75rem;right:0.75rem}
}
@media (max-width:380px){.brand{font-size:0.9375rem}.os-card small{display:none}.dd{margin-left:0.3125rem}}
/* TVs / large screens */
@media (prefers-reduced-motion:reduce){*{-webkit-animation:none!important;animation:none!important;transition:none!important}html{scroll-behavior:auto}}
.contact{margin-top:1.625rem;display:flex;flex-direction:column;align-items:center}
.contact .btn{display:inline-flex;align-items:center;margin:0 0 0.75rem}.contact .btn img{width:1.25rem;height:1.25rem;margin:0 0.5rem}
.contact .mail{font-weight:600;font-size:1.0625rem}
.legal-links{width:100%;display:flex;flex-wrap:wrap;margin-top:0.625rem}
.legal-links a{margin:0.25rem 1.125rem 0.25rem 0;color:var(--dim);text-decoration:underline}[dir=rtl] .legal-links a{margin:0.25rem 0 0.25rem 1.125rem}
.legal{padding-top:3rem;max-width:53.75rem}
.lg-note{padding:0.875rem 1.125rem;border-radius:0.625rem;border:1px dashed var(--gold);background:rgba(196,92,40,0.12);font-size:0.9375rem;margin-bottom:1.75rem}
.lg-doc h1.lg-h1{font-size:2.125rem;font-size:clamp(1.75rem,3.4vw,2.625rem);margin:0 0 1.125rem;white-space:normal}
.lg-doc h2{font-size:1.4375rem;margin:2.25rem 0 0.75rem}
.lg-doc p,.lg-doc li{color:#d9d0c3}.lg-doc ul{padding-left:1.375rem}[dir=rtl] .lg-doc ul{padding-left:0;padding-right:1.375rem}
.lg-doc li{margin:0.375rem 0}.lg-doc a{word-break:break-word}
mark.tbc{background:rgba(232,160,74,0.22);color:var(--gold);padding:0 0.25rem;border-radius:0.25rem;font-weight:600}
.lg-btns{margin-top:1.25rem}
.lg-other{display:flex;flex-wrap:wrap;margin-top:2.5rem;padding-top:1.125rem;border-top:1px solid var(--line)}
.lg-other a{margin:0 0.625rem 0.625rem 0;padding:0.4375rem 0.875rem;border-radius:62.4375rem;border:1px solid var(--gline);color:var(--ink);text-decoration:none;font-weight:600;font-size:0.9375rem}
.lg-other a[aria-current]{background:rgba(196,92,40,0.22);border-color:var(--ember-l)}
.tbl{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0.875rem 0}
.tbl table{border-collapse:collapse;width:100%;min-width:35rem;font-size:0.9375rem}
.tbl th,.tbl td{border:1px solid var(--line);padding:0.5rem 0.625rem;text-align:start;vertical-align:top}.tbl th{background:var(--card);color:var(--gold)}
.lg-doc code{font-family:monospace;background:rgba(255,255,255,0.06);padding:1px 0.3125rem;border-radius:0.25rem}
/* ---- closing CTA + footer (redesign) ---- */
.closing{padding:4.5rem 2rem 4rem;margin-bottom:0}
.closing img{width:5.25rem}
.c-name{margin:0.875rem 0 0.25rem;font-size:1.125rem;letter-spacing:.02em}
.closing h2{margin:0.25rem auto 0;max-width:20em;line-height:1.15}
.closing p{max-width:36em;margin:1.25rem auto 0;font-size:1.1875rem;line-height:1.65;color:#e6dccd}
.closing .soon{margin-top:1.625rem}
.contact{margin-top:2.125rem;padding-top:1.875rem;border-top:1px solid rgba(232,176,96,0.22);max-width:26.25rem;margin-left:auto;margin-right:auto}
.contact .btn{margin:0 0 0.875rem;padding:0.8125rem 1.625rem;font-size:1.0625rem}
.contact .mail{font-size:1rem;color:var(--ink);opacity:.85}
.site-foot{margin-top:7rem;background:#0d0c0a;border-top:1px solid var(--line);color:var(--dim);font-size:0.9375rem;line-height:1.7}
.foot-grid{display:-ms-grid;display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;grid-gap:3rem;gap:3rem;padding-top:3.5rem;padding-bottom:3rem}
.fcol p{margin:0 0 0.75rem;max-width:26em}
.fb-logo{display:inline-flex;align-items:center;margin-bottom:0.875rem;color:var(--ink);text-decoration:none;font:600 1.25rem var(--serif)}
.l-ar .fb-logo{font-family:var(--serif)}
.fb-logo img{width:2.125rem;height:auto;margin-right:0.75rem}[dir=rtl] .fb-logo img{margin-right:0;margin-left:0.75rem}
.fh{font:700 0.8125rem var(--sans);text-transform:uppercase;letter-spacing:.12em;color:var(--gold);margin:0.375rem 0 1rem}
.l-ar .fh,.l-el .fh{letter-spacing:.03em}
.fl{list-style:none;margin:0;padding:0}.fl li{margin:0 0 0.625rem}
.site-foot a{color:var(--ink);text-decoration:none;opacity:.86}
.fbrand a[href^="https://ritualforgelabs"]{color:var(--gold);opacity:1}
.flang{columns:2;-webkit-columns:2;column-gap:1.25rem}.flang li{-webkit-column-break-inside:avoid;break-inside:avoid}
.flang a[aria-current]{color:var(--gold);opacity:1;font-weight:600}
.foot-bar{border-top:1px solid var(--line);background:#0a0908}
.fbar-in{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;padding-top:1.125rem;padding-bottom:1.125rem;padding-bottom:max(1.125rem,env(safe-area-inset-bottom));font-size:0.875rem}
.fbar-in>span{margin:0.25rem 0}
.fstat{display:inline-flex;align-items:center;color:var(--gold)}
.fstat i{width:0.4375rem;height:0.4375rem;border-radius:50%;background:var(--ember-l);margin-right:0.5rem;box-shadow:0 0 0.375rem rgba(224,122,61,0.7)}[dir=rtl] .fstat i{margin-right:0;margin-left:0.5rem}
@media (hover:hover){.site-foot a:hover{opacity:1;color:var(--gold)}}
@media (max-width:980px){.foot-grid{grid-template-columns:1fr 1fr;gap:2.5rem 2rem}.fbrand{grid-column:1/-1}}
@media (max-width:640px){.closing{padding:3.25rem 1.25rem 2.75rem}.closing p{font-size:1.0625rem}.site-foot{margin-top:5rem}.foot-grid{grid-template-columns:1fr 1fr;gap:2rem 1.5rem;padding-top:2.75rem;padding-bottom:2.25rem}.fbar-in{flex-direction:column;align-items:flex-start}}
@media (max-width:360px){.foot-grid{grid-template-columns:1fr}}
/* ---- minimal footer v3 ---- */
.site-foot{margin-top:4.5rem;background:transparent;border-top:1px solid var(--line);font-size:0.9375rem;line-height:1.6}
.fmin{text-align:center;padding-top:2.25rem;padding-bottom:2rem;padding-bottom:max(2rem,env(safe-area-inset-bottom))}
.fmin p{margin:0}
.fm-row1{display:flex;flex-wrap:wrap;justify-content:center;align-items:center}
.fm-row1>*{margin:3px 0}
.fm-logo{display:inline-flex;align-items:center;font:600 1rem var(--serif);color:var(--ink)!important;opacity:1!important}
.fm-logo img{width:1.375rem;height:auto;margin:0 0.5rem}
.fm-dot{color:var(--line);color:#4a433b;margin:0 0.75rem!important}
.fm-legal{margin-top:0.875rem}
.fm-legal .fl{display:flex;flex-wrap:wrap;justify-content:center}
.fm-legal .fl li{margin:3px 0}
.fm-legal .fl li+li:before{content:"·";color:#4a433b;margin:0 0.75rem}
.fm-legal a,.fm-row1 a{color:var(--dim);opacity:1}
.fm-copy{margin-top:0.875rem!important;font-size:0.8125rem;color:#7d756b}
@media (max-width:640px){.site-foot{margin-top:3.5rem}.fmin{padding-top:1.75rem}.fm-row1 .fm-dot:nth-of-type(2){display:none}.fm-row1 a[href^="mailto"]{flex-basis:100%;margin-top:0.375rem}}

/* Large screens / TVs: identical rem-based scaling in every engine (replaces CSS zoom) */
html{font-size:100%}
@media (min-width:1800px){html{font-size:125%}}
@media (min-width:2500px){html{font-size:175%}}
@media (min-width:3400px){html{font-size:240%}}
/* consistency fixes */
.nav{background:rgba(14,11,9,0.92)}
.closing h2{max-width:24em}
@media (max-width:640px){.fm-row1{flex-direction:column}.fm-row1 .fm-dot{display:none}.fm-row1 a[href^="mailto"]{flex-basis:auto;margin-top:2px}
.fm-legal .fl li+li:before{content:none}.fm-legal .fl li{margin:3px 10px}}

/* footer v4: horizontal rows on all sizes */
.fm-row1,.fm-copy{display:flex!important;flex-direction:row!important;flex-wrap:wrap;justify-content:center;align-items:center}
.fm-copy .fm-dot{margin:0 0.625rem!important}
@media (max-width:640px){.fm-row1{flex-direction:row!important}.fm-row1 .fm-dot{display:inline!important;margin:0 0.5rem!important}.fm-row1 a[href^="mailto"]{flex-basis:auto!important;margin-top:3px}
.fm-legal .fl li{margin:3px 0!important}.fm-legal .fl li+li:before{content:"·"!important;margin:0 0.5rem}}
@media (max-width:640px){.fm-row1{font-size:0.875rem}.fm-row1 .fm-logo{flex-basis:100%;justify-content:center;margin-bottom:6px}.fm-row1 .fm-dot:first-of-type{display:none!important}}
.fm-legal .fl li.fl-br{display:none}
@media (max-width:640px){.fm-legal .fl li.fl-br{display:block;flex-basis:100%;height:0;margin:0!important}.fm-legal .fl li.fl-br:before,.fm-legal .fl li.fl-br+li:before{content:none!important}}
