/* BURN / OBSIDIAN. Selected concept: design/selected-concept.png.
   Single theme layer for the existing static website. */
:root {
  --ink:#080808; --ink-2:#111110; --paper:#f4f1e9; --soft:#adaaa5;
  --muted:#8f8c87; --rule:rgba(244,241,233,.20); --rule-soft:rgba(244,241,233,.10);
  --fire:#ff4b0b; --fire-deep:#e33b00; --fire-lit:#ff754a; --fire-ink:#a82c08;
  --display:'Anton','Impact',sans-serif; --body:'Manrope',Arial,sans-serif;
  --mono:'Manrope',Arial,sans-serif; --gutter:clamp(22px,4.45vw,64px); --measure:1440px;
}
body {font:400 15px/1.7 var(--body);background:var(--ink);color:var(--paper)}
h1,h2,h3 {font-family:var(--body);letter-spacing:-.045em;font-weight:700}
a,button,summary {-webkit-tap-highlight-color:transparent}
button {font-family:inherit} img {display:block}
.top {height:96px;padding:0 var(--gutter);background:transparent;backdrop-filter:none;border:0;gap:0}
.top__mark {gap:10px;padding-right:42px;border-right:1px solid var(--rule)}
.top__mark img {width:45px;height:53px;object-fit:contain;mix-blend-mode:lighten}
.top__mark b {font:400 40px/1 var(--display);letter-spacing:-.03em}
.top__mark small,.top__codes {display:none}
.top__nav {margin-left:35px;gap:36px;font:600 14px/1.3 var(--body)}
.top__nav a {color:#d1cfca;padding:14px 0}
.langs {margin-left:auto;gap:26px}
.langs button {padding:12px 0;border:0!important;border-bottom:3px solid transparent!important;border-radius:0;min-width:20px;min-height:40px;font:600 13px/1.3 var(--body);letter-spacing:0;color:#95948f;background:none!important}
.langs button.is-on {border-bottom-color:var(--fire)!important;color:var(--paper)}
.top>.btn {margin-left:24px}
.side-tab {display:none}
.btn {display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:60px;padding:20px 29px;border-radius:0;font:700 15px/1.3 var(--body);text-transform:none;letter-spacing:-.02em;box-shadow:none}
.btn--fire {background:var(--fire);color:#090909}
.btn--fire:hover {background:#ff692e;color:#090909}
.btn--ghost {background:transparent;border-color:var(--rule);color:var(--paper)}
.btn--sm {min-height:40px;font-size:11px;padding:12px 17px}
.btn img {width:22px;height:22px}
.tag {font:600 10px/1.5 var(--body);letter-spacing:.18em;color:var(--fire-lit)}
.tag::before {display:none}
/* Desktop hero composition maps to the 1440 x 1100 reference. */
.hero {padding:0;position:relative;border-bottom:1px solid var(--rule);isolation:isolate;background:var(--ink)}
.hero__stage {max-width:1440px;height:810px;margin:auto;position:relative}
.hero__mask {position:absolute;right:7%;top:-99px;height:990px;width:660px;object-fit:contain;z-index:0;mix-blend-mode:lighten;filter:brightness(.86);pointer-events:none}
.hero__rail {position:absolute;top:111px;left:var(--gutter);bottom:57px;display:flex;flex-direction:column;justify-content:space-between}
.hero__rail b {font:700 14px/1.5 var(--body);letter-spacing:.30em;color:var(--fire)}
.hero__rail p {font:600 10px/1.8 var(--body);letter-spacing:.29em;color:#b1aeaa;margin-top:13px}
.hero__rail .hero__rail-bottom {font-size:9px;letter-spacing:.23em;position:relative;margin:0;padding-bottom:18px}
.hero__rail-bottom::before {content:'';position:absolute;height:85px;width:1px;left:0;bottom:calc(100% + 20px);background:var(--rule)}
.hero__rail-bottom::after {content:'';position:absolute;width:19px;height:3px;bottom:0;left:0;background:var(--fire)}
.hero__content {position:absolute;top:31px;left:19%;width:560px;z-index:1}
.hero__word {font:400 405px/1 var(--display);letter-spacing:-.045em;transform:scaleX(.755);transform-origin:0 50%;width:max-content;height:392px;margin-left:-7px;white-space:nowrap}
.hero h1 {font:800 64px/1.02 var(--body);letter-spacing:-.052em;margin:14px 0 31px}
.hero__lede {font:400 19px/1.3 var(--body);letter-spacing:-.025em;color:#d5d2cc;margin-bottom:31px;max-width:26ch}
.hero__content>.btn {min-width:257px}
.hero__annotation {position:absolute;right:var(--gutter);font:500 9px/1.7 var(--body);letter-spacing:.26em;color:#b5b1ad}
.hero__annotation::after {content:'';display:block;height:1px;width:45px;background:#aaa59c70;margin-top:13px}
.hero__annotation--top {top:143px}.hero__annotation--bottom {bottom:36px}
/* The short, open strip from the selected reference. */
.principles {border-bottom:1px solid var(--rule);padding:42px 0}
.principles__grid {display:grid;grid-template-columns:1.05fr 1.35fr 1fr 1fr;align-items:center;gap:0}
.principles__grid>div {padding:0 50px;border-left:1px solid var(--rule)}
.principles__grid>div:first-child {padding:0;border:0}
.principles__grid>div:last-child {padding-right:0}
.principles__title>span {font-size:17px;font-weight:500;color:var(--fire)}
.principles h2 {font:400 46px/1.25 var(--display);letter-spacing:-.025em;margin-top:3px}
.principles h3 {font:700 22px/1.3 var(--body);letter-spacing:-.025em;margin:0 0 8px}
.principles p {font:400 14px/1.6 var(--body);color:#b9b5ae;max-width:25ch}
/* Remaining product sections follow the same typography and rules. */
.band {padding:96px 0;border:0}
.band__head {align-items:end;gap:65px;margin-bottom:42px}
.band__head:before {display:none}
.band h2 {font:700 clamp(34px,3.9vw,56px)/1.08 var(--body);letter-spacing:-.055em;margin-top:14px}
.band__note {font-size:14px;line-height:1.8;max-width:43ch;color:var(--soft)}
.band--fill {background:#111110;color:var(--paper);border-top:1px solid var(--rule-soft);border-bottom:1px solid var(--rule-soft)}
.band--fill .band__note,.band--fill .beat p {color:var(--soft)}
.band--fill .tag,.band--fill .beat__when {color:var(--fire-lit)}
.split {display:grid;grid-template-columns:1fr 1fr;gap:65px;border:0;border-top:1px solid var(--rule)}
.fit {padding:28px 0!important;border:0!important;background:none}
.fit__label {font:700 14px/1.4 var(--body);letter-spacing:.05em;color:var(--paper);margin-bottom:8px}
.fit li {font-size:14px;line-height:1.7;padding:18px 0 18px 26px;color:var(--soft)}
.fit--yes .fit__label,.fit--yes li:before {color:var(--fire-lit)}
.fit--no li,.fit--no li:before {color:var(--muted)}
.year {display:none}
.cadence {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 40px;border:0}
.beat {padding:30px 0!important;border:0!important;border-top:1px solid var(--rule)!important}
.beat__when {font:500 10px/1.5 var(--body);letter-spacing:.12em;color:var(--fire-lit)}
.beat h3 {font:600 23px/1.25 var(--body);letter-spacing:-.035em;color:var(--paper);margin-top:18px}
.beat p {font-size:14px;line-height:1.8;color:var(--soft)}
.gains {display:block;border-top:1px solid var(--rule)}
.gain {display:grid;grid-template-columns:50px 1fr 1fr;gap:35px;padding:32px 0;border:0;border-bottom:1px solid var(--rule);background:none}
.gain:before {position:static;font:500 13px/1.5 var(--body);color:var(--fire-lit)}
.gain b {font:600 25px/1.25 var(--body);letter-spacing:-.045em;max-width:22ch}
.gain p {font-size:14px;line-height:1.8;grid-column:auto;margin:0}
#code {background:#111110}
.code-grid {grid-template-columns:1fr 1fr;gap:100px}
.code-grid h2 {font:400 clamp(48px,5.3vw,76px)/1.08 var(--display);letter-spacing:0;max-width:10ch;text-transform:uppercase}
.code-list,.code-list li {border-color:var(--rule)}
.code-list li {font:500 14px/1.6 var(--body);padding:13px 0 13px 38px;color:var(--paper)}
.code-list li:before {font-size:10px;color:var(--fire-lit)!important}
.band--fill .btn--ghost {color:var(--paper);border-color:var(--rule)}
.path {border:0;gap:30px}
.step {border:0!important;border-top:1px solid var(--rule)!important;padding:25px 0}
.step__dot {font:400 46px/1.1 var(--display);letter-spacing:0;color:var(--fire)}
.step h3 {font:600 21px/1.25 var(--body);letter-spacing:-.04em;margin-top:24px}
.step p {font-size:13px;line-height:1.85;color:var(--soft)}
.cities {gap:0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.city {background:none;padding:32px!important;min-height:220px;border-right:1px solid var(--rule)}
.city:first-child {padding-left:0!important}
.city:last-child {border-right:0}
.city h3 {font:600 37px/1.1 var(--body);letter-spacing:-.04em}
.city__stamp {border:0;padding:0;font:500 10px/1.4 var(--body);color:var(--fire-lit);letter-spacing:.15em}
.city__code {font:400 90px/1 var(--display);letter-spacing:0;color:#ffffff08}
.city:not(.city--soon) .city__code {color:#ff4b0b20}
.faq {border-color:var(--rule)}
.qa {border-color:var(--rule)}
.qa summary {font:600 19px/1.5 var(--body);letter-spacing:-.025em;padding:26px 50px 26px 0}
.qa p {font-size:14px;line-height:1.8}
#join {padding-top:70px!important;padding-bottom:80px;background:#111110;border-top:1px solid var(--rule-soft);border-bottom:1px solid var(--rule-soft)}
.form-wrap {align-items:start;gap:90px}
.form {border:0;border-left:1px solid var(--rule);padding:0 0 0 40px;background:none;gap:23px}
.form__title b {font:600 23px/1.3 var(--body);letter-spacing:-.03em}
.form__title .tag {font-size:9px}
.form label {font:500 11px/1.5 var(--body);letter-spacing:.08em;color:var(--soft)}
.form input[type=text],.form input[type=tel] {font:400 16px/1.4 var(--body);padding:13px 0;border-radius:0;background:transparent;border:0;border-bottom:1px solid #ffffff40;color:var(--paper)}
.form input:focus {border-bottom-color:var(--fire);box-shadow:0 1px 0 var(--fire)}
.form input::placeholder {color:#827f79}
.form .consent {font:400 12px/1.75 var(--body);letter-spacing:0;gap:10px;color:var(--soft)}
.form .consent input {accent-color:var(--fire)}
.form__note {font-size:12px;line-height:1.8;color:var(--muted)}
.form .btn {width:100%}
.form__state[data-kind=ok] {color:#a8d497}.form__state[data-kind=bad] {color:#ff9984}
.contacts {gap:35px;border-top:1px solid var(--rule)}
.contact {padding:27px 20px 20px 0}
.contact b {font:600 24px/1.25 var(--body);letter-spacing:-.04em}
.contact__label {font:500 10px/1.3 var(--body);letter-spacing:.16em}
.contact__note {font-size:13px}
.band--tight {padding:65px 0}
.foot {background:var(--ink);padding:10px 0 32px;overflow:hidden}
.footer-word {font:400 clamp(130px,24vw,350px)/1.13 var(--display);letter-spacing:-.035em;padding:0 var(--gutter);color:var(--paper);border-bottom:1px solid var(--rule);margin-bottom:45px}
.footer-word>span {display:none}
.foot h3 {font:400 44px/1 var(--display);letter-spacing:0}
.foot__col {font:400 13px/1.6 var(--body);gap:10px}
.foot__col strong {font:500 10px/1.5 var(--body);letter-spacing:.15em}
.foot__legal {font:400 9px/1.8 var(--body);letter-spacing:.08em}
.doc h1 {font:700 clamp(38px,5.2vw,75px)/1.1 var(--body);letter-spacing:-.05em}
.doc h2 {font:700 25px/1.25 var(--body);letter-spacing:-.03em}
.doc p,.doc li {line-height:1.85}
.reveal {opacity:1;transform:none}
.mobile-menu {display:none}
@media(min-width:1600px) {.top{padding-left:max(var(--gutter),calc((100vw - 1312px)/2));padding-right:max(var(--gutter),calc((100vw - 1312px)/2))}}
@media(max-width:1200px) {
  .top__mark{padding-right:35px}.top__nav{gap:24px;margin-left:30px}
  .hero__stage{height:710px}.hero__content{left:18%;top:35px;width:470px}
  .hero__word{font-size:335px;height:327px;transform:scaleX(.84)}
  .hero h1{font-size:51px;margin-top:12px;margin-bottom:24px}
  .hero__lede{font-size:17px;margin-bottom:26px}.hero__mask{height:775px;width:585px;right:0;top:-78px}
  .hero__rail{top:103px;bottom:40px}.hero__rail b{font-size:11px}.hero__rail p{font-size:8px}
  .hero__annotation{font-size:7px;right:25px}.hero__annotation--top{top:123px}
  .principles__grid>div{padding:0 26px}.principles h2{font-size:38px}.principles h3{font-size:20px}.principles p{font-size:12px}
  .band__head{gap:40px}.form-wrap{gap:45px}
}
@media(max-width:980px) {
  .top{height:80px}.top__nav{display:flex;font-size:12px;gap:20px}.top__mark{padding-right:25px}.top__mark b{font-size:34px}.top__mark img{width:37px;height:44px}.langs{gap:17px}
  .hero__stage{height:680px}.hero__content{left:var(--gutter);top:45px;width:440px}.hero__word{font-size:320px;height:311px;transform:scaleX(.78)}
  .hero h1{font-size:47px}.hero__lede{font-size:16px}.hero__mask{right:-10px;height:715px;width:535px;top:-45px}
  .hero__rail,.hero__annotation{display:none}.hero__content>.btn{min-width:230px;font-size:13px;padding:18px 23px;min-height:54px}
  .principles{padding:30px 0}.principles__grid{grid-template-columns:1fr 1fr;gap:28px}.principles__grid>div{padding:0 20px;border-left:1px solid var(--rule)}.principles__grid>div:nth-child(odd){border:0;padding-left:0}.principles h2{font-size:38px}
  .band{padding:72px 0}.band__head{display:grid;grid-template-columns:1fr;gap:23px}.band__note{max-width:60ch}
  .split{gap:30px}.cadence{gap:0 26px}.beat h3{font-size:20px}.beat p{font-size:13px}
  .code-grid{grid-template-columns:1fr 1fr;gap:40px}.code-list li{font-size:12px}
  .path{grid-template-columns:1fr 1fr;gap:25px}.form-wrap{grid-template-columns:1fr;gap:35px}.form{padding:0;border:0;max-width:650px}
}
@media(max-width:680px) {
  .top{height:72px;padding:0 22px}.top__mark{border:0;padding:0;gap:7px}.top__mark img{height:42px;width:33px}.top__mark b{font-size:32px}
  .top__nav,.top>.btn{display:none}.langs{gap:17px;margin-right:20px}.langs button{font-size:11px;min-width:20px}
  .mobile-menu{display:block}.mobile-menu summary{font:500 11px/1.4 var(--body);padding:14px 0;cursor:pointer;list-style:none;color:#b8b4af}.mobile-menu summary::-webkit-details-marker{display:none}
  .mobile-menu nav{position:absolute;top:100%;left:0;right:0;background:#111110;padding:15px 22px;border-bottom:1px solid var(--rule);display:grid}
  .mobile-menu nav a{font-size:15px;text-decoration:none;padding:13px 0}.mobile-menu nav a:hover{color:var(--fire-lit)}
  .hero__stage{height:690px;overflow:hidden}.hero__content{left:22px;right:22px;top:21px;width:auto}
  .hero__word{font-size:clamp(180px,49vw,270px);height:clamp(187px,49vw,275px);transform:scaleX(.8);margin-left:-3px}
  .hero__mask{width:350px;height:495px;right:-53px;top:37px;opacity:1}
  .hero h1{font-size:clamp(34px,9.1vw,47px);line-height:1.05;max-width:8ch;margin:152px 0 18px;letter-spacing:-.055em}
  .hero__lede{font-size:15px;line-height:1.45;margin-bottom:23px;max-width:25ch;color:#c5c0b9}
  .hero__content>.btn{min-width:237px;min-height:57px;font-size:14px;padding:18px 23px}
  .principles{padding:28px 0}.principles__grid{gap:25px 18px;grid-template-columns:1fr 1fr}.principles__grid>div{padding:0 0 0 15px}.principles__title>span{font-size:12px}.principles h2{font-size:33px}.principles h3{font-size:18px;margin-bottom:7px}.principles p{font-size:12px;line-height:1.7}
  .band{padding:60px 0}.band h2{font-size:35px;line-height:1.12}.band__head{gap:20px;margin-bottom:30px}.band__note{font-size:13px;line-height:1.8}.tag{font-size:9px;letter-spacing:.12em}
  .split{grid-template-columns:1fr;gap:0}.fit{padding:24px 0!important}.fit--no{border-top:1px solid var(--rule)!important}.fit li{font-size:13px;line-height:1.8}
  .cadence{grid-template-columns:1fr 1fr;gap:0 22px}.beat{padding:24px 0!important}.beat__when{font-size:8px}.beat h3{font-size:18px}.beat p{font-size:12px}
  .gain{grid-template-columns:25px 1fr;gap:14px;padding:26px 0}.gain b{font-size:22px;max-width:none}.gain p{grid-column:2;font-size:13px}.gain:before{font-size:10px}
  .code-grid{grid-template-columns:1fr;gap:32px}.code-grid h2{font-size:52px;max-width:11ch}.code-list li{font-size:13px;padding:13px 0 13px 30px}
  .path{gap:25px}.step__dot{font-size:37px}.step h3{font-size:18px}.step p{font-size:12px;line-height:1.85}
  .cities{grid-template-columns:1fr}.city,.city:first-child{padding:25px 0!important;min-height:180px;border-right:0}.city+.city{border-top:1px solid var(--rule)}.city h3{font-size:34px}.city .tag{font-size:9px}
  .qa summary{font-size:16px;padding:23px 33px 23px 0}.qa p{font-size:13px;padding-right:15px}
  #join{padding-top:45px!important;padding-bottom:50px}.form-wrap{gap:32px}.form__title b{font-size:20px}.form__title .tag{font-size:8px}.form .consent{font-size:12px}.form__note{font-size:11px}
  .contacts{grid-template-columns:1fr;gap:0}.contact{border-right:0;padding:25px 0}.contact b{font-size:23px}.contact__note{font-size:13px}
  .footer-word{font-size:35vw;line-height:1.3;margin-bottom:32px}.foot__grid{grid-template-columns:1fr 1fr;gap:30px}.foot__col{font-size:12px}.foot__legal{font-size:8px;letter-spacing:.04em}
  .doc{padding-top:35px}.doc h1{font-size:39px}.doc h2{font-size:22px}section[id]{scroll-margin-top:90px}
}
@media(max-width:360px) {.hero__stage{height:670px}.hero h1{margin-top:152px}.hero__mask{right:-67px}.langs{gap:13px;margin-right:15px}.hero__lede{font-size:14px}.principles h2{font-size:29px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

.top.is-stuck {background:#080808f5}
@media(min-width:1201px){.principles__grid>div:nth-child(2){padding-left:95px}.principles{padding:45px 0}.hero__rail,.hero__annotation{z-index:1}}
/* QA fixes: keep the mask's black image canvas behind the next section,
   and reserve separate reading space for the mobile headline. */
.principles {position:relative;z-index:2;background:var(--ink)}
@media(max-width:680px){.hero__stage{height:755px}.hero__mask{width:303px;height:455px;right:-15px;top:70px}.hero h1{margin-top:268px}}
@media(max-width:360px){.hero__stage{height:735px}.hero__mask{right:-25px}.hero h1{margin-top:260px}}
/* Shared legal-page headers retain their original DOM order. */
.top__mark{order:0}.top__nav{order:1}.langs{order:2}.top>.btn,.mobile-menu{order:3}
@media(max-width:680px){.req>div{align-items:start;gap:15px}.req dt{white-space:normal;font-size:9px}.req dd{font-size:12px;overflow-wrap:anywhere}.clause{grid-template-columns:2rem minmax(0,1fr)}}
