
/* math */

/* symbols */

/* latin-ext */

/* latin */

/* math */

/* symbols */

/* latin-ext */

/* latin */

/* math */

/* symbols */

/* latin-ext */

/* latin */

/* math */

/* symbols */

/* latin-ext */

/* latin */

/* math */

/* symbols */

/* latin-ext */

/* latin */

/* cyrillic-ext */
@font-face {
  font-family: 'Caveat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/4956ec7b19798cb8.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Caveat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/6276a2f5a5554c16.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin-ext */
@font-face {
  font-family: 'Caveat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/f626b95c1efa95cf.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;
}
/* latin */
@font-face {
  font-family: 'Caveat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/891951df5e8b5b0f.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;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Caveat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/4956ec7b19798cb8.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Caveat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/6276a2f5a5554c16.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin-ext */
@font-face {
  font-family: 'Caveat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/f626b95c1efa95cf.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;
}
/* latin */
@font-face {
  font-family: 'Caveat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/891951df5e8b5b0f.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;
}
/* vietnamese */
@font-face {
  font-family: 'Fraunces';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(assets/23af38108404d4b0.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Fraunces';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(assets/4983926d3a16544e.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;
}
/* latin */
@font-face {
  font-family: 'Fraunces';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(assets/066710ce7ed235a3.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;
}
/* vietnamese */
@font-face {
  font-family: 'Fraunces';
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url(assets/23af38108404d4b0.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Fraunces';
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url(assets/4983926d3a16544e.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;
}
/* latin */
@font-face {
  font-family: 'Fraunces';
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url(assets/066710ce7ed235a3.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;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Golos Text';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/70cf502d77aa23c8.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Golos Text';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/17d048ca05cb1218.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin-ext */
@font-face {
  font-family: 'Golos Text';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/05befabe4813f412.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;
}
/* latin */
@font-face {
  font-family: 'Golos Text';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/9a69d0aa4734c402.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;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Golos Text';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/70cf502d77aa23c8.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Golos Text';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/17d048ca05cb1218.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin-ext */
@font-face {
  font-family: 'Golos Text';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/05befabe4813f412.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;
}
/* latin */
@font-face {
  font-family: 'Golos Text';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/9a69d0aa4734c402.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;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Golos Text';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/70cf502d77aa23c8.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Golos Text';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/17d048ca05cb1218.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin-ext */
@font-face {
  font-family: 'Golos Text';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/05befabe4813f412.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;
}
/* latin */
@font-face {
  font-family: 'Golos Text';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/9a69d0aa4734c402.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;
}
/* cyrillic-ext */

/* vietnamese */

/* latin-ext */

/* latin */

/* cyrillic-ext */

/* vietnamese */

/* latin-ext */

/* latin */

/* cyrillic-ext */

/* vietnamese */

/* latin-ext */

/* latin */

/* cyrillic-ext */

/* vietnamese */

/* latin-ext */

/* latin */

/* cyrillic */
@font-face {
  font-family: 'Jost';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/732ac61fdb7b964d.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin-ext */
@font-face {
  font-family: 'Jost';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/312ef2b80cefd8d6.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;
}
/* latin */
@font-face {
  font-family: 'Jost';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/7726a5cd6f3c0e87.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;
}
/* cyrillic */
@font-face {
  font-family: 'Jost';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/732ac61fdb7b964d.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin-ext */
@font-face {
  font-family: 'Jost';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/312ef2b80cefd8d6.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;
}
/* latin */
@font-face {
  font-family: 'Jost';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/7726a5cd6f3c0e87.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;
}
/* cyrillic */
@font-face {
  font-family: 'Jost';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/732ac61fdb7b964d.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin-ext */
@font-face {
  font-family: 'Jost';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/312ef2b80cefd8d6.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;
}
/* latin */
@font-face {
  font-family: 'Jost';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/7726a5cd6f3c0e87.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;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(assets/ff62316167dc2f9c.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(assets/9307b75d3508236a.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(assets/ca8ab22d32ea765f.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(assets/7989ccc7770f5aef.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;
}
/* latin */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(assets/bd73278ee0c50041.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;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/ff62316167dc2f9c.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/9307b75d3508236a.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/ca8ab22d32ea765f.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/7989ccc7770f5aef.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;
}
/* latin */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/bd73278ee0c50041.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;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/ff62316167dc2f9c.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/9307b75d3508236a.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/ca8ab22d32ea765f.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/7989ccc7770f5aef.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;
}
/* latin */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/bd73278ee0c50041.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;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/ff62316167dc2f9c.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/9307b75d3508236a.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/ca8ab22d32ea765f.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/7989ccc7770f5aef.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;
}
/* latin */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/bd73278ee0c50041.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;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/ff62316167dc2f9c.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/9307b75d3508236a.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/ca8ab22d32ea765f.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/7989ccc7770f5aef.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;
}
/* latin */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/bd73278ee0c50041.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;
}
/* cyrillic */
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(assets/51b2dac698333379.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(assets/6b8bfd228577635a.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(assets/b9dff4aec6d8ef27.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;
}
/* latin */
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(assets/54af24bd0f911f0f.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;
}
/* cyrillic */
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url(assets/51b2dac698333379.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url(assets/6b8bfd228577635a.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url(assets/b9dff4aec6d8ef27.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;
}
/* latin */
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url(assets/54af24bd0f911f0f.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;
}
/* cyrillic */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/c108681cba6a9820.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/ef6446229b59773e.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/42898ad49a6b23f3.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;
}
/* latin */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/e0c764a8e9e1cce9.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;
}
/* cyrillic */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/c108681cba6a9820.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/ef6446229b59773e.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/42898ad49a6b23f3.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;
}
/* latin */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/e0c764a8e9e1cce9.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;
}
/* cyrillic */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/c108681cba6a9820.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/ef6446229b59773e.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/42898ad49a6b23f3.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;
}
/* latin */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/e0c764a8e9e1cce9.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;
}
/* cyrillic */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/c108681cba6a9820.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/ef6446229b59773e.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/42898ad49a6b23f3.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;
}
/* latin */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/e0c764a8e9e1cce9.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;
}
/* vietnamese */

/* latin-ext */

/* latin */

/* vietnamese */

/* latin-ext */

/* latin */

/* vietnamese */

/* latin-ext */

/* latin */

/* vietnamese */

/* latin-ext */

/* latin */

/* cyrillic-ext */

/* cyrillic */

/* vietnamese */

/* latin-ext */

/* latin */

/* cyrillic-ext */

/* cyrillic */

/* vietnamese */

/* latin-ext */

/* latin */

/* cyrillic-ext */

/* cyrillic */

/* vietnamese */

/* latin-ext */

/* latin */

/* cyrillic-ext */

/* cyrillic */

/* vietnamese */

/* latin-ext */

/* latin */



:root{
  --bone:#EFE8D9; --bone-2:#E5DCC8; --paper:#F4EFE4; --paper-dim:#CBBBA2;
  --oxblood:#5C2A2A; --oxblood-deep:#401D1D;
  --ink:#1A1712; --ink-2:#241F18; --ink-3:#63594A;
  --sage:#8A9E86; --sage-deep:#47554A;
  --tan:#B08E68; --line:#CDBFA6; --line-ink:#3A3428;
  --f-serif:"Playfair Display",Georgia,"Times New Roman",serif;
  --f-cond:"Oswald","Arial Narrow",system-ui,sans-serif;
  --f-body:"Golos Text",system-ui,-apple-system,"Segoe UI",sans-serif;
  --f-script:"Caveat","Segoe Script",cursive;
  --f-quote:"Fraunces","Playfair Display",Georgia,serif;
  /* Hero-only типографика */
  --f-hero-btn:"Jost",system-ui,-apple-system,"Segoe UI",sans-serif;
  --maxw:1240px; --edge:clamp(20px,5vw,64px);
  --s-1:4px; --s-2:8px; --s-3:12px; --s-4:16px; --s-5:24px;
  --s-6:32px; --s-7:48px; --s-8:64px; --s-9:96px; --s-10:128px;
  --radius:0px; --radius-hero:20px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--bone);color:var(--ink);
  font-family:var(--f-body);font-size:16px;line-height:1.62;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
::selection{background:var(--oxblood);color:var(--paper)}
:focus-visible{outline:2px solid var(--oxblood);outline-offset:3px}
a{color:inherit}
img{max-width:100%;display:block}
h1,h2,h3,h4{margin:0;font-weight:600}
p{margin:0}
button{font:inherit;color:inherit}
::-webkit-scrollbar{width:12px;height:12px}
::-webkit-scrollbar-track{background:var(--bone-2)}
::-webkit-scrollbar-thumb{background:var(--tan);border:3px solid var(--bone-2)}
html{scrollbar-color:var(--tan) var(--bone-2)}

.wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--edge)}
.label{
  font-family:var(--f-body);font-size:.68rem;font-weight:600;letter-spacing:.16em;
  text-transform:uppercase;color:var(--tan);display:inline-block
}
.label::before{content:"[ "}.label::after{content:" ]"}
.basalt .label{color:var(--sage)}
.ox .label{color:var(--paper-dim)}

/* ---------- buttons ---------- */
.btn{
  font-family:var(--f-body);font-weight:600;font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;line-height:1;
  padding:1em 1.7em;border:1px solid transparent;border-radius:var(--radius);cursor:pointer;
  display:inline-flex;align-items:center;gap:.5em;text-decoration:none;
  transition:background .18s,color .18s,border-color .18s,box-shadow .12s,transform .1s
}
.btn::before{content:"[ "}.btn::after{content:" ]"}
.btn:active{transform:translateY(1px)}
.btn-primary{background:var(--oxblood);color:var(--paper);box-shadow:3px 3px 0 rgba(0,0,0,.22)}
.btn-primary:hover{background:var(--oxblood-deep);box-shadow:6px 6px 0 rgba(0,0,0,.28);transform:translate(-2px,-2px)}
.btn-primary:active{box-shadow:1px 1px 0 rgba(0,0,0,.28);transform:translate(1px,1px)}
.btn-outline{background:transparent;color:var(--ink);border-color:var(--ink);box-shadow:3px 3px 0 rgba(0,0,0,.15)}
.btn-outline:hover{background:var(--ink);color:var(--bone);box-shadow:6px 6px 0 rgba(0,0,0,.22);transform:translate(-2px,-2px)}
.btn-outline:active{box-shadow:1px 1px 0 rgba(0,0,0,.22);transform:translate(1px,1px)}
.btn-sage{background:var(--sage);color:var(--ink);box-shadow:3px 3px 0 rgba(0,0,0,.18)}
.btn-sage:hover{background:var(--paper);box-shadow:6px 6px 0 rgba(0,0,0,.26);transform:translate(-2px,-2px)}
.btn-sage:active{box-shadow:1px 1px 0 rgba(0,0,0,.26);transform:translate(1px,1px)}
.btn-magnetic{transition:transform .25s cubic-bezier(.2,.8,.2,1)}

/* ---------- «расплавленная» кнопка Hero (реф. shader-кнопка, перекрашено в бренд) ---------- */
.btn-flow{
  position:relative;overflow:hidden;border:0;color:var(--paper);
  background:
    radial-gradient(130% 180% at 16% 8%, #8a4028 0%, rgba(138,64,40,0) 52%),
    radial-gradient(140% 170% at 88% 96%, #34140f 0%, rgba(52,20,15,0) 58%),
    conic-gradient(from 210deg at 50% 50%, #5C2A2A, #6e3320, #96603f, #5c2a2a, #381814, #5C2A2A);
  background-size:230% 230%,210% 210%,190% 190%;
  background-position:0% 0%,100% 100%,50% 50%;
  animation:btnflow 15s ease-in-out infinite;
  box-shadow:inset 0 1px 0 rgba(255,238,220,.30),inset 0 -3px 9px rgba(0,0,0,.42),4px 4px 0 rgba(26,23,18,.22);
  transition:box-shadow .2s ease,transform .1s ease
}
.btn-flow::before{
  content:"";position:absolute;inset:0;z-index:1;pointer-events:none;border-radius:inherit;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E");
  background-size:128px 128px;opacity:.11;mix-blend-mode:overlay
}
.btn-flow::after{
  content:"";position:absolute;top:-45%;bottom:-45%;left:0;width:34%;z-index:1;pointer-events:none;
  background:linear-gradient(102deg,transparent,rgba(255,244,228,.44),transparent);
  transform:skewX(-15deg) translateX(-170%);
  animation:btnsheen 7s ease-in-out infinite
}
.btn-flow>span{position:relative;z-index:2;text-shadow:0 1px 3px rgba(20,10,8,.45)}
@keyframes btnflow{
  0%,100%{background-position:0% 0%,100% 100%,50% 50%}
  50%{background-position:58% 42%,42% 58%,56% 46%}
}
@keyframes btnsheen{
  0%,68%{transform:skewX(-15deg) translateX(-170%)}
  85%,100%{transform:skewX(-15deg) translateX(560%)}
}
.btn-flow:hover{box-shadow:inset 0 1px 0 rgba(255,240,224,.42),inset 0 -3px 9px rgba(0,0,0,.4),6px 6px 0 rgba(26,23,18,.26);animation-duration:7s}
.btn-flow:hover::after{animation-duration:1.7s}
.btn-flow:active{transform:translateY(2px)}
.btn-flow.btn-ghost{
  background:
    radial-gradient(130% 180% at 18% 10%, #4a3a2e 0%, rgba(74,58,46,0) 52%),
    conic-gradient(from 210deg at 50% 50%, #2a2520, #382f26, #6a5540, #2a2520, #1c1813, #2a2520);
  background-size:230% 230%,190% 190%
}
.btn-flow.btn-ghost::after{background:linear-gradient(102deg,transparent,rgba(255,244,228,.24),transparent)}
@media (prefers-reduced-motion:reduce){
  .btn-flow{animation:none}
  .btn-flow::after{display:none}
}

/* ---------- header ---------- */
[id]{scroll-margin-top:104px}
.masthead{
  position:fixed;top:0;left:0;right:0;width:100%;z-index:60
}
.nav-row{display:flex;align-items:center;gap:var(--s-5);min-height:62px;padding-block:var(--s-3);background:transparent;border-bottom:1px solid transparent;transition:background .3s ease,border-color .3s ease}
.masthead.solid .nav-row{background:rgba(240,233,219,.96);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);border-bottom-color:var(--line)}
.brand{display:flex;align-items:baseline;gap:var(--s-4);flex:1;min-width:0}
.wordmark{
  font-family:var(--f-cond);font-weight:700;text-transform:uppercase;
  font-size:1.5rem;line-height:1;letter-spacing:.03em;color:var(--paper);white-space:nowrap;
  transition:color .3s ease
}
.wordmark .thin{font-weight:300;color:var(--paper-dim);transition:color .3s ease}
.masthead.solid .wordmark{color:var(--oxblood)}
.masthead.solid .wordmark .thin{color:var(--ink)}
.tw{font-family:var(--f-script);font-size:1.3rem;color:var(--tan);white-space:nowrap;overflow:hidden;min-width:0}
.tw .cur{display:inline-block;width:.5ch;background:var(--tan);color:transparent;margin-left:1px;animation:blink 1.05s steps(1) infinite}
@keyframes blink{50%{opacity:0}}
.nav{display:flex;gap:var(--s-4);align-items:center}
.nav .dot{color:var(--tan);font-size:.7rem}
.nav a{
  font-family:var(--f-body);text-transform:uppercase;letter-spacing:.14em;font-size:.74rem;font-weight:500;
  text-decoration:none;padding:.4em 0;border-bottom:2px solid transparent;color:var(--paper);
  transition:border-color .16s,color .16s
}
.nav a:hover,.nav a[aria-current="true"]{border-color:var(--tan);color:var(--tan)}
.masthead:not(.solid) .nav a,.masthead:not(.solid) .wordmark{text-shadow:0 1px 10px rgba(0,0,0,.65)}
.masthead.solid .nav a{color:var(--ink)}
.masthead.solid .nav a,.masthead.solid .wordmark{text-shadow:none}
.masthead.solid .nav a:hover,.masthead.solid .nav a[aria-current="true"]{border-color:var(--oxblood);color:var(--oxblood)}
.burger{
  display:none;width:44px;height:44px;border:1px solid var(--paper);background:transparent;cursor:pointer;
  align-items:center;justify-content:center;flex:none
}
.masthead.solid .burger{border-color:var(--ink)}
.burger span,.burger span::before,.burger span::after{
  content:"";display:block;width:20px;height:2px;background:var(--paper);transition:transform .2s,opacity .2s,background .3s
}
.masthead.solid .burger span,.masthead.solid .burger span::before,.masthead.solid .burger span::after{background:var(--ink)}
.burger span::before{transform:translateY(-6px)}.burger span::after{transform:translateY(4px)}
.burger[aria-expanded="true"] span{background:transparent}
.burger[aria-expanded="true"] span::before{transform:rotate(45deg)}
.burger[aria-expanded="true"] span::after{transform:rotate(-45deg) translateY(-1px)}

.mobile-menu{
  position:fixed;inset:96px 0 auto 0;z-index:55;color:var(--paper);
  background-color:#251a12;
  background-image:
    radial-gradient(160% 120% at 50% 118%, rgba(168,86,48,.5), transparent 70%),
    linear-gradient(180deg, #1d140e 0%, #251a12 55%, #2c1d12 100%),
    var(--noise);
  background-size:auto,auto,180px 180px;
  animation:noise-drift 18s linear infinite;
  padding:var(--s-6) var(--edge) var(--s-7);transform:translateY(-130%);transition:transform .32s cubic-bezier(.2,.7,.2,1);
  border-bottom:1px solid var(--line-ink)
}
.mobile-menu.open{transform:translateY(0)}
.mobile-menu a{
  display:block;font-family:var(--f-serif);font-size:1.5rem;padding:var(--s-3) 0;text-decoration:none;
  border-bottom:1px solid rgba(244,239,228,.16)
}
.mobile-menu .btn{display:flex;margin-top:var(--s-4);width:100%;justify-content:center;border:0}
.mobile-menu .btn-cta{
  background:linear-gradient(155deg, var(--oxblood) 0%, var(--oxblood-deep) 100%);
  color:var(--paper);letter-spacing:.05em;font-size:.78rem;padding:.75em 1.4em;text-align:center;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),3px 3px 0 rgba(0,0,0,.4);
  transition:transform .2s cubic-bezier(.2,.8,.2,1),box-shadow .2s cubic-bezier(.2,.8,.2,1)
}
.mobile-menu .btn-cta::before,.mobile-menu .btn-cta::after{content:none}
.mobile-menu .btn-cta:hover{box-shadow:inset 0 1px 0 rgba(255,255,255,.16),5px 5px 0 rgba(0,0,0,.45);transform:translate(-2px,-2px)}
.mobile-menu .btn-cta:active{box-shadow:inset 0 1px 0 rgba(255,255,255,.16),2px 2px 0 rgba(0,0,0,.4);transform:translate(0,0)}

/* ---------- section frame ---------- */
.field{border-top:1px solid var(--line);position:relative}
.field.bone{background:var(--bone)}
.field.bone-2{background:var(--bone-2)}
.field.paper{background:var(--paper)}
.field.ox{background:var(--oxblood);color:var(--paper);border-top-color:var(--oxblood-deep)}
.field.basalt{
  background:var(--ink);color:var(--paper);border-top-color:var(--line-ink);
  background-image:var(--noise),linear-gradient(var(--line-ink) 1px,transparent 1px),linear-gradient(90deg,var(--line-ink) 1px,transparent 1px);
  background-size:180px 180px,100% 40px,calc(100%/12) 100%;
  background-blend-mode:overlay,normal,normal
}
.field .wrap{padding-block:var(--s-9)}
#program.basalt{
  background-color:#251a12;
  background-image:
    radial-gradient(190% 130% at 50% 108%, rgba(168,86,48,.62), transparent 70%),
    linear-gradient(180deg, #1d140e 0%, #251a12 50%, #2c1d12 100%),
    var(--noise);
  background-size:auto,auto,180px 180px;
  animation:noise-drift 18s linear infinite
}
@keyframes noise-drift{from{background-position:0 0,0 0,0 0}to{background-position:0 0,0 0,180px 180px}}
.spotlight{position:absolute;inset:0;pointer-events:none;z-index:4;opacity:0;transition:opacity .4s ease;
  background:radial-gradient(circle var(--spot-radius,150px) at var(--sx,50%) var(--sy,50%), rgba(216,178,128,.16) 0%, rgba(216,178,128,.06) 42%, transparent 72%)}
.ox .btn-outline{color:var(--paper);border-color:var(--paper)}
.ox .btn-outline:hover{background:var(--paper);color:var(--oxblood)}

.sec-head{display:grid;grid-template-columns:120px 1fr;gap:var(--s-5);align-items:baseline;margin-bottom:var(--s-7)}
.sec-head .idx{font-family:var(--f-body);font-size:.7rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--tan)}
.sec-head .idx::before{content:"[ "}.sec-head .idx::after{content:" ]"}
.basalt .sec-head .idx{color:var(--sage)}
.ox .sec-head .idx{color:var(--paper-dim)}
.sec-title{font-family:var(--f-serif);font-weight:600;font-size:clamp(1.9rem,4.4vw,3rem);line-height:1.06;letter-spacing:-.02em}
.sec-title i{font-style:italic;color:var(--oxblood)}
.basalt .sec-title i,.ox .sec-title i{color:var(--sage)}
#benefits .sec-title i{
  font-family:var(--f-quote);font-style:italic;font-weight:500;
  text-decoration:underline;text-decoration-color:var(--tan);
  text-decoration-thickness:2px;text-underline-offset:.14em;text-decoration-skip-ink:none
}
.sec-lead{max-width:60ch;margin-top:var(--s-4);color:inherit}
#pricing-h i{font-style:normal;color:inherit}
@media (max-width:720px){.sec-head{grid-template-columns:1fr;gap:var(--s-2)}}

/* ---------- concrete / plaster texture ---------- */
:root{
  --noise:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.55'/%3E%3C/svg%3E");
}

/* ---------- history ---------- */
.story{max-width:60ch;margin-top:var(--s-2)}
@media (min-width:900px){.story{max-width:min(108ch,84vw)}}
.story p{line-height:1.7}
.story p+p{margin-top:var(--s-5)}
.story .drop{overflow:hidden}
.story .drop::first-letter{
  font-family:var(--f-serif);font-weight:700;font-size:3.4em;line-height:.8;float:left;margin:.06em .12em 0 0;color:var(--oxblood)
}
.story .key{
  display:inline-block;white-space:nowrap;
  font-style:normal;font-weight:700;color:var(--oxblood);
  background:rgba(92,42,42,.09);border:1px solid rgba(92,42,42,.36);
  line-height:1;padding:.3em .5em .28em;margin:0 .05em;
}
.story .story-insight{
  margin:var(--s-7) 0 var(--s-6);padding:.1em 0 .1em var(--s-6);
  border-left:3px solid var(--oxblood);
  font-family:var(--f-quote);font-style:italic;font-weight:500;
  font-size:clamp(1.1rem,2vw,1.4rem);line-height:1.5;color:var(--ink)
}
.story .story-finale{
  margin-top:var(--s-7);font-family:var(--f-serif);font-weight:500;font-size:1.15rem;line-height:1.7
}
@media (max-width:640px){
  .story .story-insight{margin:var(--s-6) 0;padding-left:var(--s-4)}
}
#author .sec-head{grid-template-columns:1fr;gap:var(--s-3)}
@media (min-width:1280px){#author .wrap{max-width:1640px}}
.story-kicker{
  display:inline-flex;align-items:center;gap:.5em;
  font-family:var(--f-script);font-size:1.6rem;line-height:1;color:var(--tan);
  transform:rotate(-2deg);transform-origin:left center
}
.story-kicker svg{width:28px;flex:none;color:var(--tan)}

#program .sec-head{grid-template-columns:1fr;gap:var(--s-3)}
.program-kicker{
  display:inline-flex;align-items:center;gap:.5em;
  font-family:var(--f-script);font-size:1.6rem;line-height:1;color:var(--tan);
  transform:rotate(-2deg);transform-origin:left center
}
.program-kicker svg{width:28px;flex:none;color:var(--tan)}

.section-kicker{
  display:inline-block;
  font-family:var(--f-script);font-size:1.6rem;line-height:1;color:var(--tan);
  transform:rotate(-2deg);transform-origin:left center
}
.section-kicker.tilt-r{transform:rotate(2deg)}
.basalt .section-kicker,.ox .section-kicker{color:var(--sage)}
#pricing .sec-head{grid-template-columns:1fr;gap:var(--s-3)}

/* ---------- results ---------- */
.benefits-layout{display:grid;grid-template-columns:minmax(200px,272px) 1fr;gap:var(--s-8);align-items:start}
#benefits .sec-head{grid-template-columns:1fr;gap:var(--s-3);margin-bottom:0}
@media (max-width:860px){
  .benefits-layout{grid-template-columns:1fr;gap:var(--s-6)}
  #benefits .sec-head{margin-bottom:var(--s-2)}
}
.results-grid{display:grid;grid-template-columns:0.9fr 1.1fr;gap:var(--s-8);align-items:start}
.results-illo{
  position:sticky;top:96px;aspect-ratio:4/5;
  background-color:var(--oxblood);background-image:var(--noise);background-blend-mode:overlay;
  display:flex;align-items:center;justify-content:center;padding:var(--s-7) 34px;
  box-shadow:0 16px 40px -16px rgba(20,15,10,.5)
}
.results-illo::before,.results-illo::after{
  content:"";position:absolute;top:0;bottom:0;width:16px;
  background:repeating-linear-gradient(180deg,var(--paper) 0 9px,transparent 9px 22px);
  opacity:.92
}
.results-illo::before{left:0}
.results-illo::after{right:0}
.results-illo #illo-a{width:100%;height:100%;display:flex;align-items:center;justify-content:center}
.results-illo svg{width:58%;height:58%;flex:none;color:var(--paper);filter:drop-shadow(0 3px 10px rgba(26,15,15,.4))}
.results-illo .plate{
  position:absolute;inset:auto 30px var(--s-4) auto;
  font-family:var(--f-cond);font-weight:600;font-size:.62rem;letter-spacing:.18em;
  text-transform:uppercase;color:var(--tan)
}
.r-list{list-style:none;margin:0;padding:0;border-top:2px solid var(--ink)}
.r-item{border-bottom:2px solid var(--ink)}
.r-item button{
  width:100%;text-align:left;background:transparent;border:0;cursor:pointer;padding:var(--s-5) 0;
  display:grid;grid-template-columns:2.4rem 1fr;gap:var(--s-4);align-items:baseline
}
.r-item .n{font-family:var(--f-cond);font-weight:600;color:var(--tan);font-size:1rem}
.r-item .t{font-family:var(--f-serif);font-weight:600;font-size:1.2rem;transition:color .18s}
.r-item .d{
  grid-column:2;display:block;max-height:0;overflow:hidden;opacity:0;color:var(--ink-3);font-size:.96rem;
  transition:max-height .4s ease,opacity .28s,margin .38s
}
.r-item[aria-current="true"] .t{color:var(--oxblood)}
.r-item[aria-current="true"] .n{color:var(--oxblood)}
.r-item[aria-current="true"] .d{max-height:16rem;opacity:1;margin-top:var(--s-3)}
@media (max-width:860px){
  .results-grid{grid-template-columns:112px 1fr;gap:var(--s-4);align-items:start}
  .results-illo{position:sticky;top:80px;aspect-ratio:4/5;padding:var(--s-4) 10px}
  .results-illo::before,.results-illo::after{width:8px}
  .results-illo .plate{inset:auto 10px 8px auto;font-size:.5rem;letter-spacing:.1em}
  .r-item button{grid-template-columns:1.6rem 1fr;gap:var(--s-3);padding:var(--s-4) 0}
  .r-item .t{font-size:1.05rem}
  .r-item .d{font-size:.88rem;line-height:1.45}
}

/* ---------- программа: степпер ---------- */
.program-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:var(--s-8);align-items:start}
.stepper{touch-action:pan-y}
.program-scroll-stage{position:relative}
.program-stage-inner{perspective:1400px}
.program-tilt-head{will-change:transform}
.program-tilt-card-wrap{margin-top:-8px}
.program-tilt-card{will-change:transform;transform-origin:50% 0%;border:1px solid var(--tan);background:#100c0a;box-shadow:0 30px 60px -20px rgba(0,0,0,.55),0 2px 0 rgba(176,142,104,.25) inset;padding:var(--s-6)}

.program-media{
  position:relative;aspect-ratio:16/9;border:1px solid var(--line-ink);
  background-color:#15120e;background-image:var(--noise);background-blend-mode:overlay;
  overflow:hidden;display:flex;align-items:center;justify-content:center
}
.program-media .photo{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center}
.program-media .ph-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.program-media svg{width:46%;height:46%;color:var(--sage);opacity:.95;transition:opacity .2s}
.program-media::after{content:"";position:absolute;inset:auto 0 0 0;height:56%;pointer-events:none;
  background:linear-gradient(180deg,transparent,rgba(10,8,6,.75) 88%)}
.program-media .cap{
  position:absolute;left:14px;bottom:11px;z-index:1;font-family:var(--f-cond);font-weight:600;
  font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;color:var(--paper-dim)
}

.stepper-dots{list-style:none;margin:0 0 var(--s-6);padding:0;display:flex;align-items:center}
.stepper-dots .dot{display:flex;align-items:center;flex:1}
.stepper-dots .dot:last-child{flex:none}
.stepper-dots .dot button{
  flex:none;width:2.4rem;height:2.4rem;border-radius:50%;border:2px solid var(--line-ink);
  background:transparent;color:var(--paper-dim);font-family:var(--f-cond);font-weight:600;font-size:.85rem;
  display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .25s,border-color .25s,color .25s
}
.stepper-dots .dot:hover button{border-color:var(--sage)}
.stepper-dots .dot.done button{border-color:var(--sage);color:var(--sage)}
.stepper-dots .dot.active button{background:var(--sage);border-color:var(--sage);color:var(--ink)}
.stepper-dots .dot:not(:last-child)::after{content:"";flex:1;height:2px;background:var(--line-ink);margin:0 var(--s-3);transition:background .3s}
.stepper-dots .dot.done:not(:last-child)::after{background:var(--sage)}

.stepper-viewport{position:relative;display:grid}
.stepper-panel{grid-area:1/1;visibility:hidden;pointer-events:none}
.stepper-panel.active{visibility:visible;pointer-events:auto;animation:stepFade .35s ease both}
@keyframes stepFade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.stepper-h{font-family:var(--f-serif);font-weight:600;font-size:clamp(1.3rem,2.6vw,1.7rem);margin-bottom:var(--s-4)}
.stepper-panel p{max-width:64ch;color:var(--paper-dim)}

.stepper-controls{display:flex;align-items:center;gap:var(--s-4);margin-top:var(--s-6);padding-top:var(--s-5);border-top:1px solid var(--line-ink)}
.stepper-arrow{
  width:2.6rem;height:2.6rem;flex:none;border-radius:50%;border:1px solid var(--line-ink);background:transparent;color:var(--paper);
  display:flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .2s,background .2s,opacity .2s
}
.stepper-arrow svg{width:18px;height:18px}
.stepper-arrow:hover:not(:disabled){border-color:var(--sage);background:rgba(138,158,134,.12)}
.stepper-arrow:disabled{opacity:.3;cursor:default}
.stepper-count{font-family:var(--f-cond);letter-spacing:.1em;color:var(--paper-dim);font-size:.85rem}
.stepper-count b{color:var(--paper);font-weight:600}

@media (max-width:860px){
  .program-layout{grid-template-columns:1fr;gap:var(--s-6)}
  .stepper-dots .dot button{width:2.1rem;height:2.1rem;font-size:.75rem}
}
.acc{border-top:2px solid currentColor}
.basalt .acc{border-top-color:var(--sage)}
.acc-row{
  width:100%;background:transparent;border:0;border-bottom:2px solid currentColor;cursor:pointer;padding:var(--s-5) 0;
  display:grid;grid-template-columns:3rem 1fr 22px;gap:var(--s-4);align-items:center;text-align:left;font:inherit;color:inherit
}
.basalt .acc-row{border-bottom-color:var(--line-ink)}
.acc-row .n{font-family:var(--f-cond);font-weight:600;color:var(--tan);font-size:1.05rem}
.basalt .acc-row .n{color:var(--sage)}
.acc-row .h{font-family:var(--f-serif);font-weight:600;font-size:clamp(1.15rem,2.4vw,1.5rem)}
.acc-row .pm{position:relative;width:18px;height:18px;justify-self:end}
.acc-row .pm::before,.acc-row .pm::after{content:"";position:absolute;background:var(--oxblood);transition:transform .24s,opacity .24s}
.basalt .acc-row .pm::before,.basalt .acc-row .pm::after{background:var(--sage)}
.acc-row .pm::before{top:8px;left:0;width:18px;height:2px}
.acc-row .pm::after{top:0;left:8px;width:2px;height:18px}
.acc-row[aria-expanded="true"] .pm::after{transform:scaleY(0)}
.acc-panel{overflow:hidden;height:0;transition:height .4s cubic-bezier(.4,0,.2,1)}
.acc-panel .inner{padding:0 0 var(--s-6) calc(3rem + var(--s-4));max-width:64ch;color:var(--ink-3)}
.basalt .acc-panel .inner{color:var(--paper-dim)}
@media (max-width:720px){.acc-panel .inner{padding-left:0}}

/* ---------- FAQ: центрированная шапка + плоский аккордеон ---------- */
#faq .wrap{padding-block:var(--s-7)}
.faq-head{max-width:620px;margin:0 auto var(--s-6);text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--s-2)}
.faq-head .sec-title{margin:0}
.faq-head .sec-lead{margin:0}
.faq-list{max-width:720px;margin:0 auto}
.faq-list .acc-row-wrap{border-bottom:1px solid var(--line)}
.faq-list .acc-row-wrap:first-child{border-top:1px solid var(--line)}
.faq-list .acc-row{
  border:0;padding:var(--s-4) 0;display:flex;align-items:center;justify-content:space-between;gap:var(--s-5);
  transition:opacity .2s ease
}
.faq-list .acc-row:hover{opacity:.6}
.faq-list .acc-row .h{font-family:var(--f-serif);font-weight:600;font-size:clamp(1rem,1.8vw,1.15rem)}
.faq-chev{width:16px;height:16px;flex:none;color:var(--oxblood);transition:transform .28s cubic-bezier(.4,0,.2,1)}
.faq-list .acc-row[aria-expanded="true"] .faq-chev{transform:rotate(180deg)}
.faq-list .acc-panel .inner{padding:0 0 var(--s-4) 0;max-width:60ch;color:var(--ink-3)}
@media (max-width:640px){.faq-head{text-align:left;align-items:flex-start}}

/* ---------- pricing ---------- */
.tiers{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-6)}
.tier{position:relative;border:1px solid var(--line);padding:clamp(28px,3.2vw,44px);display:flex;flex-direction:column;gap:var(--s-4);
  background:
    radial-gradient(120% 160% at 12% -12%, rgba(255,255,255,.55), transparent 58%),
    var(--noise),
    linear-gradient(165deg, var(--paper) 0%, var(--bone-2) 78%);
  background-blend-mode:normal,overlay,normal;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.6),3px 3px 0 rgba(26,23,18,.12);
  transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s cubic-bezier(.2,.8,.2,1),border-color .3s ease}
.tier:hover{transform:translateY(-8px);box-shadow:inset 0 1px 0 rgba(255,255,255,.6),0 18px 0 -4px rgba(26,23,18,.16);border-color:var(--oxblood)}
.tier:active{transform:translateY(-4px);box-shadow:inset 0 1px 0 rgba(255,255,255,.6),0 9px 0 -3px rgba(26,23,18,.16);transition-duration:.1s}
.tier.feat{color:var(--paper);border-color:var(--oxblood-deep);
  background:linear-gradient(155deg, var(--oxblood) 0%, var(--oxblood-deep) 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),3px 3px 0 rgba(0,0,0,.32)}
.tier.feat:hover{box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 18px 0 -4px rgba(0,0,0,.42);border-color:var(--tan)}
.tier.feat:active{box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 9px 0 -3px rgba(0,0,0,.42)}
.tier-corner{position:absolute;width:16px;height:16px;pointer-events:none;border-color:var(--tan);opacity:.85}
.tier-corner.tl{top:12px;left:12px;border-top:2px solid;border-left:2px solid}
.tier-corner.tr{top:12px;right:12px;border-top:2px solid;border-right:2px solid}
.tier-corner.bl{bottom:12px;left:12px;border-bottom:2px solid;border-left:2px solid}
.tier-corner.br{bottom:12px;right:12px;border-bottom:2px solid;border-right:2px solid}
.tier.feat .tier-corner{border-color:rgba(224,197,150,.75)}
.tier.feat .btn-sage{background:var(--tan);color:var(--oxblood-deep);border-color:var(--tan)}
.tier.feat .btn-sage:hover{background:var(--paper);color:var(--oxblood-deep)}
.tier .badge{order:-1;align-self:flex-start;font-family:var(--f-body);font-size:.7rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;background:transparent;border:1px solid var(--oxblood);color:var(--oxblood);padding:.5em 1em}
.tier.feat .badge{border-color:var(--tan);color:var(--tan)}
.tier h3{font-family:var(--f-serif);font-weight:600;font-size:1.6rem}
.tier .desc{font-size:.94rem;color:var(--ink-3)}
.tier.feat .desc{color:var(--paper-dim)}
.tier .price{font-family:var(--f-cond);font-weight:600;font-size:2.6rem;line-height:1;letter-spacing:.01em;font-variant-numeric:tabular-nums;color:var(--oxblood);
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:var(--s-4)}
.tier.feat .price{color:var(--paper);border-color:rgba(244,239,228,.22)}
.tier .price-badge{display:flex;width:fit-content;align-items:center;gap:.45em;margin-top:var(--s-3);
  font-family:var(--f-body);font-weight:600;font-size:.66rem;letter-spacing:.09em;text-transform:uppercase;
  border:1px solid var(--oxblood);color:var(--oxblood);padding:.4em .75em .4em .6em}
.tier .price-badge svg{width:14px;height:14px;flex:none}
.tier.feat .price-badge{border-color:var(--tan);color:var(--tan)}
.tier ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--s-4)}
.tier li{display:grid;grid-template-columns:1.2rem 1fr;gap:var(--s-3)}
.tier li svg{width:14px;margin-top:.35em;color:var(--tan)}
.tier.feat li svg{color:var(--sage)}
.tier li b{font-family:var(--f-body);font-weight:600;font-size:.94rem}
.tier li span{display:block;font-size:.86rem;color:var(--ink-3);margin-top:2px}
.tier.feat li span{color:var(--paper-dim)}
.tier-foot{margin-top:auto;display:flex;flex-direction:column;gap:var(--s-4)}
.tier-hr{display:block;height:1px;background:linear-gradient(90deg,var(--line),transparent 85%)}
.tier.feat .tier-hr{background:linear-gradient(90deg,rgba(244,239,228,.35),transparent 85%)}
.tier-guarantee{display:flex;align-items:center;justify-content:center;gap:.45em;margin-top:calc(var(--s-3) * -1);
  font-family:var(--f-body);font-size:.72rem;color:var(--ink-3);text-decoration:none}
.tier-guarantee svg{width:15px;height:15px;color:var(--oxblood);flex:none}
.tier-guarantee:hover{text-decoration:underline}
.tier.feat .tier-guarantee{color:var(--paper-dim)}
.tier.feat .tier-guarantee svg{color:var(--tan)}
.tier .btn{align-self:flex-start}
@media (max-width:820px){.tiers{grid-template-columns:1fr}}

/* ---------- guarantee ---------- */
.guar-seal{position:relative;max-width:400px;margin:var(--s-8) auto 0;text-align:center;
  background:linear-gradient(165deg, var(--oxblood) 0%, var(--oxblood-deep) 100%);
  border-radius:22px;padding:var(--s-6) var(--s-5);
  box-shadow:0 22px 44px -22px rgba(64,29,29,.55), 0 6px 18px -12px rgba(20,15,10,.35)}
.guar-seal .shield{width:42px;margin-bottom:var(--s-3);filter:drop-shadow(2px 3px 0 rgba(0,0,0,.28))}
.guar-seal h2{font-family:var(--f-serif);font-weight:600;font-size:clamp(1.15rem,2.2vw,1.4rem);color:var(--paper)}
.guar-seal p{margin-top:var(--s-2);font-size:.92rem;color:var(--paper-dim);max-width:38ch;margin-inline:auto}

/* ---------- who-for: каменная скрижаль ---------- */
#who-for .sec-head{grid-template-columns:1fr}
.tablet{position:relative;display:grid;grid-template-columns:1fr auto 1fr;
  background-color:#251a12;
  background-image:
    radial-gradient(190% 130% at 50% 108%, rgba(168,86,48,.4), transparent 70%),
    linear-gradient(180deg, #1d140e 0%, #251a12 50%, #2c1d12 100%),
    var(--noise);
  background-size:auto,auto,180px 180px;
  animation:noise-drift 18s linear infinite;
  color:var(--paper);padding:clamp(32px,4.5vw,64px) clamp(24px,4.4vw,60px);
  box-shadow:0 30px 60px -28px rgba(10,8,6,.55)}
.tablet-col h3{font-family:var(--f-serif);font-weight:600;font-size:1.3rem;margin-bottom:var(--s-5);text-shadow:0 1px 10px rgba(0,0,0,.4)}
.tablet-col.no h3{color:rgba(244,239,228,.92)}
.tablet-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--s-4)}
.tablet-col li{display:grid;grid-template-columns:1.1rem 1fr;gap:var(--s-3);font-size:.95rem;align-items:start}
.tablet-col.yes li svg{width:14px;margin-top:.3em;color:var(--sage)}
.tablet-col.yes li span{color:var(--paper);text-shadow:0 1px 10px rgba(0,0,0,.4)}
.tablet-col.no li svg{width:14px;margin-top:.3em;color:#D97158}
.tablet-col.no li span{color:rgba(244,239,228,.92);text-shadow:0 1px 10px rgba(0,0,0,.4)}
.tablet-seam{position:relative;width:1px;margin:0 clamp(24px,3.4vw,44px);
  background:linear-gradient(rgba(216,178,128,0),rgba(216,178,128,.55) 15%,rgba(216,178,128,.55) 85%,rgba(216,178,128,0))}
.tablet-seam::before,.tablet-seam::after{content:"";position:absolute;left:50%;width:9px;height:1px;
  background:rgba(216,178,128,.85);transform:translateX(-50%)}
.tablet-seam::before{top:0}.tablet-seam::after{bottom:0}
@media (max-width:760px){
  .tablet{grid-template-columns:1fr}
  .tablet-seam{width:100%;height:1px;margin:var(--s-6) 0;
    background:linear-gradient(90deg,rgba(216,178,128,0),rgba(216,178,128,.55) 15%,rgba(216,178,128,.55) 85%,rgba(216,178,128,0))}
  .tablet-seam::before,.tablet-seam::after{top:50%;left:0;width:1px;height:9px;transform:translateY(-50%)}
  .tablet-seam::after{left:auto;right:0}
}

/* ---------- final cta + form ---------- */
.cta-wrap{max-width:720px}
.cta-wrap h2{font-family:var(--f-serif);font-weight:600;font-size:clamp(2rem,4.6vw,3.2rem);line-height:1.06;letter-spacing:-.02em}
.cta-wrap p{margin-top:var(--s-4);color:var(--paper-dim);max-width:48ch}
.req-card{
  margin-top:var(--s-7);max-width:460px;background:var(--paper);color:var(--ink);
  padding:clamp(28px,4vw,44px);
  box-shadow:8px 8px 0 rgba(12,9,6,.34)
}
#final-cta .req-card:hover,#final-cta .req-card:focus-within{transform:translate(-5px,-5px);box-shadow:13px 13px 0 rgba(12,9,6,.4)}
.req-card .btn-outline{color:var(--ink);border-color:var(--ink)}
.req-card .btn-outline:hover{background:var(--ink);color:var(--bone);box-shadow:5px 5px 0 rgba(0,0,0,.25)}
form.req{display:grid;gap:var(--s-4)}
form.req label{font-family:var(--f-body);font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);display:block;margin-bottom:var(--s-2)}
form.req input{
  width:100%;padding:.95em 1em;background:var(--bone);border:1px solid var(--line);color:var(--ink);
  font:inherit;border-radius:0
}
form.req input::placeholder{color:color-mix(in srgb,var(--ink-3) 70%,transparent)}
form.req input:focus-visible{outline:2px solid var(--oxblood);outline-offset:2px}
form.req .btn{justify-content:center;margin-top:var(--s-2)}
.req-ok strong{font-family:var(--f-serif);font-size:1.4rem;display:block}
.req-ok span{color:var(--ink-3);margin-top:var(--s-2);display:block}
[hidden]{display:none!important}
#final-cta .cta-wrap>*{opacity:0;transform:translateY(18px);transition:opacity .6s cubic-bezier(.2,.7,.2,1),transform .6s cubic-bezier(.2,.7,.2,1)}
#final-cta .wrap.reveal.in .cta-wrap>*{opacity:1;transform:none}
#final-cta .cta-wrap>*:nth-child(1){transition-delay:.05s}
#final-cta .cta-wrap>*:nth-child(2){transition-delay:.16s}
#final-cta .cta-wrap>*:nth-child(3){transition-delay:.27s}
#final-cta .cta-wrap .req-card{
  transition:
    opacity .6s cubic-bezier(.2,.7,.2,1) .27s,
    transform .3s cubic-bezier(.2,.8,.2,1),
    box-shadow .3s cubic-bezier(.2,.8,.2,1)
}

/* ---------- footer ---------- */
footer.site{background:var(--ink);color:var(--paper);border-top:1px solid var(--line-ink)}
footer.site .wrap{padding-block:var(--s-8)}
.foot-top{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:var(--s-7);padding-bottom:var(--s-7);border-bottom:1px solid var(--line-ink)}
.foot-brand .wordmark{color:var(--paper)}
.foot-brand .wordmark .thin{color:var(--paper-dim)}
.foot-brand .slogan{font-family:var(--f-script);font-size:1.5rem;color:var(--tan);margin-top:var(--s-3)}
.foot-brand .social{display:flex;gap:var(--s-4);margin-top:var(--s-5)}
.foot-brand .social a{width:38px;height:38px;border:1px solid var(--line-ink);display:flex;align-items:center;justify-content:center;transition:background .16s,border-color .16s}
.foot-brand .social a:hover{background:var(--ink-2);border-color:var(--sage)}
.foot-brand .social svg{width:17px;color:var(--paper-dim)}
.foot-col h3{font-family:var(--f-body);text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:600;color:var(--sage);margin-bottom:var(--s-4)}
.foot-col a{display:block;text-decoration:none;color:var(--paper-dim);font-size:.9rem;padding:.3em 0;transition:color .16s}
.foot-col a:hover{color:var(--paper)}
.foot-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--s-3);padding-top:var(--s-5);font-size:.8rem;color:#8C8474}
.foot-bottom a{text-decoration:none;color:#8C8474}
.foot-bottom a:hover{color:var(--paper-dim)}
@media (max-width:760px){.foot-top{grid-template-columns:1fr;gap:var(--s-6)}}

/* ---------- analog layer (реф. 1–2) ---------- */
.polaroid{position:relative;background:var(--paper);padding:10px 10px 32px;border:1px solid var(--ink);box-shadow:6px 6px 0 rgba(26,23,18,.18);width:min(360px,60vw)}
.polaroid .ph{aspect-ratio:4/5;border:1px solid var(--ink);background-color:#241f18;
  background-image:url("assets/86ffa18dc1849260.jpg"),repeating-linear-gradient(135deg,rgba(26,23,18,.05) 0 8px,transparent 8px 16px),linear-gradient(160deg,#6f6455,#241f18);
  background-size:cover,auto,auto;background-position:center 12%,0 0,0 0;background-repeat:no-repeat}
.polaroid .cap{font-family:var(--f-script);color:#7c5a37;font-size:1.15rem;text-align:center;margin-top:8px}
.polaroid .pin{position:absolute;left:50%;top:-11px;width:94px;height:22px;transform:translateX(-50%) rotate(-2deg);background:rgba(176,142,104,.5);border:1px dashed rgba(26,23,18,.3)}

.story{position:relative}
.story-photo{float:right;margin:4px 0 var(--s-5) var(--s-7);transform:rotate(2.4deg)}
@media (max-width:640px){.story-photo{float:none;margin:0 auto var(--s-6);transform:none}}
.story-roles{float:right;clear:right;width:min(360px,60vw);margin:calc(-1 * var(--s-3)) 0 var(--s-6) var(--s-7);list-style:none;padding:0;text-align:center}
.story-roles li{font-family:var(--f-body);text-transform:uppercase;letter-spacing:.14em;font-size:.66rem;color:var(--ink-3);padding:.16em 0}
.story-roles li:first-child{color:var(--ink)}
.story-roles li.role-main{display:flex;align-items:center;justify-content:center;gap:.5em}
.story-roles li.role-main .seal{width:17px;height:17px;flex:none}
@media (max-width:640px){.story-roles{float:none;width:auto;margin:0 auto var(--s-6)}}

.seam-objs{position:absolute;right:5%;bottom:0;transform:translateY(50%);z-index:6;width:142px;pointer-events:none}
.zen-stones{display:block;width:100%;height:auto}
.faq-art{max-width:720px;margin:24px auto 0;display:flex;justify-content:flex-end;pointer-events:none}
.monolit-stairs{display:block;width:156px;height:auto}
@media(max-width:820px){
  .seam-objs{right:var(--edge);width:96px;margin:0}
  #author{padding-bottom:24px}
  #who-for{padding-top:24px}
  .monolit-stairs{width:120px}
}

.signature{font-family:var(--f-script);font-size:clamp(1.6rem,2.8vw,2.3rem);color:var(--paper);transform:rotate(-3deg);display:inline-block;margin-top:var(--s-6)}
.signature::after{content:"";display:block;width:60%;height:2px;background:var(--tan);margin-top:3px}

.who .no li svg{background:rgba(216,178,128,.16);color:var(--tan)}

/* ---------- reveal ---------- */
.reveal{opacity:0;transform:translateY(14px);transition:opacity .6s cubic-bezier(.2,.7,.2,1),transform .6s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}

/* price number roll */
.price .price-num{font-variant-numeric:tabular-nums}

/* heading cut-reveal (vanilla VerticalCutReveal) */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.cut-reveal.cut-ready{line-height:1.16}
.cut-w{display:inline-block;overflow:hidden;vertical-align:top;padding:.16em .03em;margin:-.16em -.03em}
.cut-w>span{display:inline-block;transform:translateY(120%);transition:transform .58s cubic-bezier(.16,.84,.28,1)}
.cut-reveal.play .cut-w>span{transform:translateY(0)}

@media (max-width:860px){
  .nav{display:none}
  .burger{display:flex}
  .wordmark{font-size:1.2rem}
  .tw{font-size:1.15rem}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
  .reveal{opacity:1;transform:none}
}
/* Revision: stable programme-button hover and aligned pricing rows. */
.hero-cta .btn-ghost:hover{animation-duration:15s}
.hero-cta .btn-ghost:hover::after{animation-duration:inherit}
.tier{min-width:0}
.tier .price{font-size:clamp(1.7rem,3.15vw,2.6rem);line-height:1.15}
@media(min-width:821px){
  .tiers{grid-template-rows:auto auto auto auto 1fr auto;row-gap:var(--s-4)}
  .tier{display:grid;grid-row:span 6;grid-template-rows:subgrid;row-gap:var(--s-4)}
  .tier .badge{grid-row:1;justify-self:start}
  .tier h3{grid-row:2}
  .tier .desc{grid-row:3}
  .tier .price{grid-row:4;align-self:stretch;margin:0}
  .tier ul{grid-row:5;align-self:start}
  .tier-foot{grid-row:6;align-self:end}
}
/* Dock interaction, adapted to the existing standalone site. */
.foot-brand .dock-social{gap:8px;align-items:flex-end;min-height:76px;padding-top:24px;max-width:100%}
.foot-brand .dock-social a{position:relative;flex:0 0 var(--dock-size,44px);width:var(--dock-size,44px);height:var(--dock-size,44px);transition:width .35s cubic-bezier(.16,1,.3,1),height .35s cubic-bezier(.16,1,.3,1),flex-basis .35s cubic-bezier(.16,1,.3,1),background .16s,border-color .16s}
.foot-brand .dock-social svg{width:48%;height:48%;flex:none}
.dock-label{position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%,5px);opacity:0;pointer-events:none;padding:4px 8px;background:var(--paper);color:var(--ink);font-size:12px;line-height:1.3;white-space:nowrap;transition:opacity .2s,transform .25s}
.dock-social a:focus-visible .dock-label{opacity:1;transform:translate(-50%,0)}
@media(hover:hover) and (pointer:fine){.dock-social a:hover .dock-label{opacity:1;transform:translate(-50%,0)}}
@media(prefers-reduced-motion:reduce){.foot-brand .dock-social a,.dock-label{transition:none}}
/* Burgundy dock tiles and recognizable service colours. */
.foot-brand .dock-social a{background:var(--oxblood);border-color:#794445;border-radius:12px;box-shadow:0 3px 9px rgba(0,0,0,.14)}
.foot-brand .dock-social a:hover,.foot-brand .dock-social a:focus-visible{background:var(--oxblood);border-color:#bd9290}
.foot-brand .dock-social a:focus-visible{outline-color:var(--paper)}
.foot-brand .dock-social svg{width:60%;height:60%}
.dock-label{background:var(--oxblood);color:var(--paper);border-radius:6px}
.fit-summary .fit-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(40px,7vw,96px);align-items:start;padding-top:clamp(64px,7vw,96px);padding-bottom:clamp(56px,6vw,80px)}
.fit-summary .sec-title{max-width:11ch;font-size:clamp(2.3rem,4.4vw,3.6rem);line-height:1.14;letter-spacing:-.025em;text-wrap:balance}
.fit-summary .sec-title i{display:block;color:var(--oxblood);font-weight:500}
.fit-content{min-width:0}
.fit-intro{font-family:var(--f-script);font-size:clamp(1.5rem,2.2vw,1.9rem);line-height:1.2;color:var(--oxblood);margin:0 0 20px}
.fit-points{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}
.fit-points li{display:grid;grid-template-columns:24px minmax(0,1fr);gap:16px;align-items:start;padding:22px 0;border-bottom:1px solid var(--line);font-family:var(--f-body);font-size:clamp(1rem,1.45vw,1.125rem);line-height:1.65;color:var(--ink-3)}
.fit-points strong{font-weight:500;color:var(--ink)}
.fit-check{display:block;width:24px;height:24px;margin-top:3px;color:var(--sage-deep)}
@media(max-width:720px){
  .fit-summary .fit-layout{grid-template-columns:1fr;gap:28px;padding-top:56px;padding-bottom:48px}
  .fit-summary .sec-title{max-width:17ch;font-size:clamp(2rem,8vw,2.8rem)}
  .fit-summary .sec-title i{display:inline}
  .fit-intro{margin-bottom:16px}
  .fit-points li{padding:18px 0;gap:12px}
}
/* Approved desert direction: live type and controls over a clean landscape. */
.hero-premium{position:relative;isolation:isolate;overflow:hidden;background:#201d18;color:#f4efe4;min-height:820px;min-height:max(820px,100svh)}
.mast-scene{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;z-index:-3;max-width:none}
.mast-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(17,18,17,.52) 0%,rgba(20,19,17,.34) 39%,rgba(20,19,17,.06) 65%,transparent 100%),linear-gradient(0deg,rgba(18,16,13,.7),transparent 30%)}
.mast-inner{max-width:1760px;margin:0 auto;min-height:inherit;padding:150px clamp(28px,6.65vw,112px) 48px;display:flex;flex-direction:column;justify-content:space-between;gap:72px}
.mast-copy{width:min(52%,700px)}
.mast-title{font-family:"Playfair Display",Georgia,serif;font-weight:400;font-size:clamp(3.8rem,6.2vw,6rem);line-height:1.07;letter-spacing:-.035em;margin:0;text-shadow:0 2px 22px rgba(0,0,0,.14)}
.mast-title>span{display:block}
.mast-title .mast-last{margin-top:.07em;white-space:nowrap}
.mast-title mark{display:inline-block;vertical-align:baseline;background:#5c2a2a;color:inherit;padding:.005em .19em .09em;margin-left:.045em;line-height:1.08;letter-spacing:-.025em}
.mast-description{font-family:Jost,var(--f-body);font-size:clamp(1.08rem,1.5vw,1.4rem);line-height:1.5;max-width:46ch;margin-top:26px;color:#f0e9dc;text-wrap:pretty}
.mast-author{font-family:Jost,var(--f-body);font-size:clamp(.95rem,1.2vw,1.13rem);font-weight:400;font-style:italic;margin-top:26px;color:#ddd2c0}
.mast-actions{display:flex;align-items:stretch;gap:20px;margin-top:32px;flex-wrap:wrap}
.mast-action{display:inline-flex;justify-content:center;align-items:center;min-height:58px;padding:15px 28px;border:1px solid transparent;border-radius:2px;font:500 clamp(.98rem,1.15vw,1.1rem)/1.3 Jost,var(--f-body);text-decoration:none;transition:box-shadow .2s,transform .2s}
.mast-primary{background:#5c2a2a;color:#f4efe4;border-color:#5c2a2a}
.mast-secondary{background:rgba(22,19,16,.12);color:#f4efe4;border-color:#ded5c4}
.mast-action:hover{box-shadow:0 5px 16px rgba(0,0,0,.2);transform:translateY(-2px)}
.mast-action:active{transform:translateY(0)}
.mast-action:focus-visible{outline:2px solid #f4efe4;outline-offset:5px}
.mast-modules{display:flex;flex-wrap:wrap;gap:10px 0;list-style:none;padding:0;margin:0;font:400 .86rem/1.5 Jost,var(--f-body);letter-spacing:.07em;color:#d9cfbf}
.mast-modules li+li::before{content:"·";margin:0 19px;color:#b8a184}
.masthead{background:linear-gradient(180deg,rgba(18,18,17,.54),rgba(18,18,17,0));padding-bottom:15px}
.masthead .nav-row{max-width:1760px;padding:24px clamp(28px,6.65vw,112px);min-height:88px;gap:30px}
.masthead .brand{align-items:center;gap:22px;flex:1}
.masthead .wordmark{position:relative;font-family:"Playfair Display",Georgia,serif;text-transform:none;letter-spacing:-.035em;font-weight:400;font-size:2.05rem;line-height:1.15;text-decoration:none;padding-bottom:9px}
.masthead .wordmark::after{content:"";position:absolute;bottom:0;left:0;width:100%;height:1px;background:currentColor;transform-origin:left;animation:brand-underline 1s cubic-bezier(.16,1,.3,1) both}
@keyframes brand-underline{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.masthead .tw{font-size:1.22rem;flex:0 1 190px;color:#dcc9aa}
.masthead .tw .cur{background:#dcc9aa}
.masthead .nav{margin-left:auto;gap:32px;flex:none}
.masthead .nav .dot{display:none}
.masthead .nav a{font-family:Jost,var(--f-body);font-size:1rem;letter-spacing:.01em;font-weight:400;text-transform:none;white-space:nowrap;text-shadow:0 1px 8px rgba(0,0,0,.7)}
.masthead.solid{background:var(--paper);padding-bottom:0;border-bottom:1px solid var(--line)}
.masthead.solid .nav-row{background:none;backdrop-filter:none;border:0}
.masthead.solid .tw{color:var(--ink-3)}
.masthead.solid .tw .cur{background:var(--ink-3)}
.mobile-menu{inset:88px 0 auto;visibility:hidden}
.mobile-menu.open{visibility:visible}
@media(min-width:1700px){.hero-premium{min-height:1000px;min-height:max(1000px,100svh)}.mast-inner{padding-top:180px}}
@media(min-width:901px) and (max-width:1100px){.masthead .tw{font-size:1.05rem;flex-basis:145px}.masthead .nav{gap:20px}.mast-copy{width:57%}.mast-title{font-size:4rem}.mast-action{padding-inline:20px}}
@media(max-width:900px){
  .masthead .nav{display:none}.masthead .burger{display:flex}
  .masthead .nav-row{padding:18px 24px;min-height:82px;gap:16px}
  .masthead .wordmark{font-size:1.8rem}.masthead .brand{gap:16px}.masthead .tw{font-size:1.15rem}
  .mobile-menu{inset:82px 0 auto}
  .hero-premium{min-height:0;display:block;padding:0}
  .mast-scene{height:560px;object-position:80% top}
  .mast-shade{background:linear-gradient(180deg,rgba(18,18,17,.05) 0,rgba(32,29,24,0) 285px,rgba(32,29,24,.7) 430px,#201d18 555px)}
  .mast-inner{min-height:0;padding:410px 32px 36px;gap:40px}
  .mast-copy{width:100%;max-width:650px}
  .mast-title{font-size:clamp(2.85rem,7.6vw,4.5rem);line-height:1.1;letter-spacing:-.025em}
  .mast-description{font-size:1.15rem;margin-top:26px;max-width:44ch}
  .mast-author{margin-top:22px;font-size:1rem}
  .mast-actions{gap:14px;margin-top:28px}.mast-action{flex:1;min-width:0;padding:15px 18px;font-size:1rem}
  .mast-modules{font-size:.78rem;letter-spacing:.025em}.mast-modules li+li::before{margin-inline:12px}
}
@media(max-width:480px){
  .masthead .nav-row{padding-inline:20px}.masthead .wordmark{font-size:1.65rem}.masthead .brand{gap:12px}.masthead .tw{font-size:1rem;flex-basis:120px}
  .mast-inner{padding-inline:24px;padding-top:385px}.mast-scene{height:530px;object-position:78% top}
  .mast-shade{background:linear-gradient(180deg,transparent 240px,rgba(32,29,24,.6) 385px,#201d18 530px)}
  .mast-title{font-size:clamp(2.5rem,10.5vw,3.15rem)}
  .mast-description{font-size:1.07rem}.mast-actions{flex-direction:column;gap:12px}.mast-action{min-height:54px}
  .mast-modules{font-size:.73rem}.mast-modules li+li::before{margin-inline:8px}
}
@media(prefers-reduced-motion:reduce){.masthead .wordmark::after{animation:none}.mast-action{transition:none}.mast-action:hover{transform:none}.tw .cur{animation:none}}


/* Full-bleed landscape; no horizontal masking or capped image plane. */
.hero-premium{min-height:max(820px,100svh,46vw)}
.mast-scene{inset:0;width:100%;height:100%;max-width:none;aspect-ratio:auto;object-fit:cover;object-position:75% 30%;transform:none;mask-image:none}
.mast-shade{background:linear-gradient(90deg,rgba(17,18,17,.52),rgba(20,19,17,.32) 39%,transparent 70%),linear-gradient(0deg,rgba(18,16,13,.72),transparent 26%)}
.masthead .wordmark{padding-bottom:2px}
.masthead .tw{font-family:Jost,var(--f-body);font-size:clamp(.82rem,1.1vw,1rem);font-style:normal;font-weight:400;letter-spacing:.015em;line-height:1.4;flex-basis:185px}
.masthead .tw .cur{width:1px;height:.9em;vertical-align:-.04em;margin-left:3px}
.mast-title .mast-last{display:flex;align-items:baseline;gap:.2em;margin-top:.16em;white-space:nowrap}
.mast-title mark{display:inline-block;position:relative;background:none;margin:0;padding:0 .2em;font:inherit;line-height:1;letter-spacing:inherit;isolation:isolate}
.mast-title mark::before{content:"";position:absolute;z-index:-1;left:0;right:0;top:var(--badge-top,.22em);height:var(--badge-height,.94em);background:#5c2a2a}
@media(max-width:900px){
 .hero-premium{min-height:0}
 .mast-scene{inset:0;width:100%;height:560px;object-position:75% top}
 .mast-shade{background:linear-gradient(180deg,rgba(18,18,17,.08),transparent 285px,rgba(32,29,24,.7) 430px,#201d18 555px)}
 .masthead .tw{font-size:.87rem;flex-basis:150px}
}
@media(max-width:480px){
 .mast-scene{height:530px;object-position:75% top}
 .mast-shade{background:linear-gradient(180deg,transparent 240px,rgba(32,29,24,.6) 385px,#201d18 530px)}
 .masthead .tw{font-size:.78rem;flex-basis:130px}
}

/* User-supplied 6144 x 4096 photograph, preserved without recompression.
   The 3:2 source is uniformly scaled; 75% horizontal anchor tracks the stone.
   Desktop height includes enough of the source to retain its top AND base. */
.hero-premium{min-height:max(820px,100svh,54vw)}
.mast-scene{inset:0;width:100%;height:100%;object-fit:cover;object-position:75% 25%;transform:none;mask-image:none;max-width:none;aspect-ratio:auto}
@media(max-width:900px){
 .hero-premium{--scene-height:clamp(440px,65vw,600px);min-height:0}
 .mast-scene{top:70px;height:var(--scene-height);object-position:75% top}
 .mast-inner{padding-top:calc(70px + var(--scene-height) - 30px)}
 .mast-shade{background:linear-gradient(to bottom,rgba(32,29,24,.12) 0,transparent 160px,transparent calc(70px + var(--scene-height)*.78),#201d18 calc(70px + var(--scene-height)))}
}

.mast-picture{display:contents}

/* The approved 768px composition now applies at every viewport width. */
.hero-premium{--scene-height:max(440px,65vw);min-height:0;display:block;padding:0}
.mast-scene{inset:70px 0 auto;width:100%;height:var(--scene-height);object-fit:cover;object-position:75% top;transform:none;mask-image:none}
.mast-shade{background:linear-gradient(to bottom,rgba(32,29,24,.12) 0,transparent 160px,transparent calc(70px + var(--scene-height)*.78),#201d18 calc(70px + var(--scene-height)))}
.mast-inner{width:100%;max-width:768px;min-height:0;margin-inline:auto;padding:calc(70px + var(--scene-height) - 30px) 32px 36px;gap:40px;justify-content:flex-start}
.mast-copy{width:100%;max-width:650px}
.mast-title{font-size:clamp(2.85rem,7.6vw,4.5rem);line-height:1.1;letter-spacing:-.025em}
.mast-description{font-size:1.15rem;margin-top:26px;max-width:44ch}
.mast-author{margin-top:22px;font-size:1rem}
.mast-actions{gap:14px;margin-top:28px}
.mast-action{flex:1;min-width:0;padding:15px 18px;font-size:1rem}
.mast-modules{font-size:.78rem;letter-spacing:.025em}
.mast-modules li+li::before{margin-inline:12px}
@media(max-width:480px){
 .mast-inner{padding-inline:24px}
 .mast-title{font-size:clamp(2.5rem,10.5vw,3.15rem)}
 .mast-description{font-size:1.07rem}
 .mast-actions{flex-direction:column;gap:12px}
 .mast-action{min-height:54px}
 .mast-modules{font-size:.73rem}
 .mast-modules li+li::before{margin-inline:8px}
}


/* Keep the approved vertical composition on portrait screens;
   spread the text into two columns only where the space supports it. */
.mast-context{display:contents}
@media(min-width:1100px) and (min-aspect-ratio:6/5){
 .mast-inner{max-width:1760px;padding-inline:clamp(48px,6vw,112px);padding-bottom:64px;gap:28px}
 .mast-copy{max-width:none;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);column-gap:clamp(56px,7vw,140px);row-gap:48px;align-items:start}
 .mast-title{grid-column:1;grid-row:1;font-size:clamp(3.25rem,4.8vw,5rem);line-height:1.1}
 .mast-context{display:block;grid-column:2;grid-row:1;padding-top:clamp(64px,8vw,128px);max-width:32rem}
 .mast-description{margin-top:0;font-size:clamp(1.15rem,1.5vw,1.5rem);line-height:1.55;max-width:34ch}
 .mast-author{margin-top:24px;font-size:clamp(1rem,1.1vw,1.15rem);line-height:1.5}
 .mast-actions{grid-column:1/-1;grid-row:2;justify-content:center;margin-top:0;gap:20px;flex-direction:row}
 .mast-action{flex:0 1 auto;min-width:220px;min-height:58px;padding:16px 30px;font-size:1.05rem}
 .mast-modules{justify-content:center;font-size:.86rem;text-align:center;letter-spacing:.04em}
 .mast-modules li+li::before{margin-inline:18px}
}


/* Scale the whole composition together on large landscape displays. */
@media(min-width:1100px) and (min-aspect-ratio:6/5){
 .hero-premium{--scene-height:max(560px,54vw)}
 .mast-scene{object-position:75% 25%}
 .mast-inner{max-width:none;width:88%;padding-inline:0;padding-bottom:clamp(48px,3.5vw,140px);gap:clamp(24px,1.8vw,72px)}
 .mast-copy{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);column-gap:7vw;row-gap:clamp(40px,3vw,120px)}
 .mast-title{font-size:clamp(3.25rem,4.5vw,11rem);line-height:1.08}
 .mast-context{padding-top:clamp(64px,7vw,280px);max-width:none}
 .mast-description{font-size:clamp(1.25rem,1.55vw,3.75rem);line-height:1.5;max-width:32ch}
 .mast-author{font-size:clamp(1rem,1.05vw,2.5rem);margin-top:1.5em}
 .mast-actions{gap:clamp(20px,1.5vw,60px)}
 .mast-action{font-size:clamp(1rem,1.05vw,2.5rem);padding:.9em 1.8em;min-height:3.3em;min-width:13em}
 .mast-modules{font-size:clamp(.8rem,.85vw,2rem);line-height:1.5;gap:.6em 0}
 .mast-modules li+li::before{margin-inline:1.3em}
}


@media(min-width:1100px) and (min-aspect-ratio:6/5){
 .mast-context{justify-self:end;width:88%}
}
/* Layout zoom scales type, fixed-pixel spacing, controls and artwork together.
   Unlike transform:scale(), it participates in document flow and section height.
   Hero already has its own fluid scale; leave it outside this rule. */
@media(min-width:1921px){
 main>section:not(.hero-premium),footer.site{zoom:var(--large-display-scale,1)}
}


@media(min-width:1100px) and (min-aspect-ratio:6/5){.mast-context{position:relative;inset-inline-start:3vw}}

/* Desktop landscape: offer and actions appear immediately over the scene.
   Tablet widths retain the approved stacked presentation. */
@media(min-width:1100px) and (min-aspect-ratio:6/5){
 .hero-premium{min-height:max(720px,100svh,46vw)}
 .mast-scene{inset:0;width:100%;height:100%;object-position:75% 25%}
 .mast-shade{background:linear-gradient(90deg,rgba(20,18,15,.86) 0%,rgba(20,18,15,.7) 38%,rgba(20,18,15,.18) 61%,transparent 82%),linear-gradient(0deg,rgba(20,18,15,.55),transparent 25%)}
 .mast-inner{width:100%;max-width:none;min-height:max(720px,100svh);padding:clamp(110px,12svh,170px) 6vw 32px;gap:24px;justify-content:space-between}
 .mast-copy{display:block;width:52%;max-width:1100px}
 .mast-title{font-size:clamp(3rem,4vw,7rem);line-height:1.06}
 .mast-context{position:static;inset:auto;width:100%;max-width:42ch;padding-top:0;margin-top:24px}
 .mast-description{font-size:clamp(1.1rem,1.1vw,1.9rem);line-height:1.45;max-width:40ch;margin:0}
 .mast-author{font-size:clamp(.95rem,.9vw,1.45rem);margin-top:16px;line-height:1.4}
 .mast-actions{justify-content:flex-start;gap:16px;margin-top:24px;flex-direction:row}
 .mast-action{font-size:clamp(1rem,.9vw,1.4rem);min-width:0;min-height:54px;padding:16px 28px;flex:0 1 auto}
 .mast-modules{justify-content:flex-start;font-size:clamp(.78rem,.7vw,1.1rem);text-align:left;gap:10px 0}
 .mast-modules li+li::before{margin-inline:1.2em}
}


/* Desktop composition is anchored to the actual hero edges, not a shorter
   inner viewport. The bottom gap stays 32px, matching the approved desktop. */
@media(min-width:1100px) and (min-aspect-ratio:6/5){
 .hero-premium{min-height:0}
 .mast-inner{min-height:max(720px,100svh);width:100%;padding:clamp(140px,15svh,210px) 6vw 32px;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);grid-template-rows:1fr auto auto;column-gap:7vw;row-gap:18px;align-items:end;justify-content:normal}
 .mast-copy{display:contents}
 .mast-title{grid-column:1;grid-row:1;align-self:end;margin-bottom:18px}
 .mast-context{grid-column:2;grid-row:1/4;align-self:end;justify-self:end;position:static;width:100%;max-width:36ch;margin:0;padding:0}
 .mast-description{max-width:36ch;font-size:clamp(1.05rem,1.05vw,1.8rem);line-height:1.5}
 .mast-author{margin-top:16px}
 .mast-actions{grid-column:1;grid-row:2;margin:0;align-self:end;justify-content:flex-start}
 .mast-modules{grid-column:1;grid-row:3;align-self:end;margin:0;justify-content:flex-start}
 .mast-shade{background:linear-gradient(0deg,rgba(20,18,15,.93) 0%,rgba(20,18,15,.77) 22%,rgba(20,18,15,.18) 60%,transparent 85%),linear-gradient(90deg,rgba(20,18,15,.5),transparent 68%)}
}


@media(min-width:1100px) and (min-aspect-ratio:6/5){
 .mast-inner{position:relative;row-gap:36px}
 .mast-title{position:absolute;top:50%;left:6%;width:46%;transform:translateY(-50%);margin:0;align-self:auto}
 .mast-actions{grid-row:2}
 .mast-modules{grid-row:3}
}


@media(min-width:1100px) and (min-aspect-ratio:6/5){
 .hero-premium{--hero-edge:6vw;background:#201d18}
 .mast-inner{padding-inline:var(--hero-edge)}
 .mast-title{left:var(--hero-edge);top:35%;margin-left:0;padding-left:0}
 .mast-actions,.mast-modules{margin-left:0;padding-left:0}
 .mast-scene{object-fit:contain;object-position:right center;width:100%;height:100%;transform:none}
}


@media(min-width:1100px) and (min-aspect-ratio:6/5){
 .mast-title{grid-column:auto;grid-row:auto;inset:auto;position:absolute;left:6vw;top:35%;transform:translateY(-50%);width:46%;margin:0;padding:0}
 .mast-scene{object-fit:cover;object-position:75% 25%;inset:0;width:100%;height:100%}
}

#program .program-layout{display:block}
#program .program-media{display:none}
#program .program-tilt-card{padding:40px;background:#191611;border:1px solid #65543f}
#program .stepper-dots{gap:12px;margin-bottom:32px}
#program .stepper-dots .dot::after{display:none}
#program .stepper-dots .dot{flex:1}
#program .stepper-dots .dot button{width:100%;height:auto;min-height:64px;border:1px solid #65543f;border-radius:0;padding:16px;display:flex;gap:12px;justify-content:flex-start;text-align:left;background:transparent;color:var(--paper)}
#program .stepper-dots button strong{font:500 1.1rem/1.3 Jost,var(--f-body)}
#program .stepper-dots button span{font-size:.75rem;opacity:.6}
#program .stepper-dots .dot.active button{background:var(--oxblood);border-color:#aa7770}
#program .stepper-panel{padding:24px 0}
#program .stepper-h{font-size:2rem;line-height:1.15}
#program .stepper-panel p{max-width:64ch;line-height:1.75}
@media(max-width:860px){#program .program-tilt-card{padding:24px}#program .stepper-dots{flex-wrap:wrap}#program .stepper-dots .dot{flex:1 1 40%}#program .stepper-h{font-size:1.6rem}}
#program .stepper-dots{margin:0;gap:4px;align-items:end}#program .stepper-dots .dot button{border-radius:12px 12px 0 0;border-bottom:0;min-height:72px}#program .stepper-dots .dot.active button{min-height:88px;background:#eee4d2;color:#211b15;border-color:#eee4d2}#program .stepper-viewport{background:#eee4d2;color:#211b15;padding:24px 40px;border-radius:0 4px 4px 4px}#program .stepper-panel p{color:#504536}@media(max-width:860px){#program .stepper-viewport{padding:16px 24px}#program .stepper-dots button strong{font-size:.95rem}}
@media(min-width:1100px) and (min-aspect-ratio:6/5){
 .mast-inner{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:36px;padding-top:130px}
 .mast-copy{display:flex;flex-direction:column;width:52%;max-width:1100px;gap:0}
 .mast-title{position:static;inset:auto;transform:none;width:100%;margin:0 0 24px;padding:0}
 .mast-context{position:static;inset:auto;align-self:flex-start;width:100%;max-width:42ch;padding:0;margin:0 0 26px}
 .mast-description{max-width:42ch;margin:0}
 .mast-author{margin-top:14px}
 .mast-actions{margin:0;justify-content:flex-start}
 .mast-modules{margin:0;padding:0;align-self:flex-start}
}


/* Module art shares the active reading area, independent of navigation. */
#program .program-reading{min-width:0;display:grid;grid-template-columns:minmax(160px,.65fr) minmax(0,1.35fr);gap:28px;align-items:start}
#program .program-reading .program-media{display:block;position:relative;grid-column:auto;grid-row:auto;width:100%;max-width:320px;aspect-ratio:4/3;min-height:0;justify-self:center;border:0;background:transparent;margin:0}
#program .program-reading .program-media .photo{padding:12px;width:100%;height:100%;object-fit:contain}
#program .program-reading .program-media::after{display:none}
#program .program-reading .program-media .cap{display:none}
#program .program-reading .stepper-viewport{grid-column:auto;grid-row:auto;min-width:0}

#program .program-reading{background:#eee4d2;color:#211b15;padding:32px}#program .program-reading .stepper-viewport{padding:0;background:transparent}
@media(max-width:860px){
 #program .program-reading{grid-template-columns:1fr;gap:16px}
 #program .program-reading .program-media{max-width:240px;aspect-ratio:16/9;justify-self:center}
 #program .program-reading{padding:24px}
}


/* One left column with a deliberate breathing space between all three groups. */
@media(min-width:1100px) and (min-aspect-ratio:6/5){
 .mast-inner{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:1fr auto auto auto;align-items:end;justify-content:normal;row-gap:36px;padding-top:clamp(130px,16svh,210px);padding-bottom:32px;padding-inline:6vw;min-height:max(720px,100svh)}
 .mast-copy{display:contents}
 .mast-title{position:static;inset:auto;transform:none;grid-column:1;grid-row:1;width:52%;max-width:1100px;align-self:center;margin:0;padding:0}
 .mast-context{position:static;inset:auto;grid-column:1;grid-row:2;justify-self:start;align-self:start;width:48%;max-width:42ch;margin:0 0 10px;padding:0}
 .mast-description{margin:0;max-width:42ch}
 .mast-author{margin-top:14px}
 .mast-actions{grid-column:1;grid-row:3;justify-self:start;margin:0;padding:0}
 .mast-modules{grid-column:1;grid-row:4;justify-self:start;margin:0;padding:0}
}


/* Folder tabs and reading sheet form one connected warm surface. */
#program .program-tilt-card{background:#372a23;border:1px solid #79604a;padding:28px;box-shadow:0 20px 40px -22px rgba(0,0,0,.55)}
#program .stepper-dots{gap:6px;align-items:stretch;margin-bottom:0}
#program .stepper-dots .dot{display:flex;align-items:stretch}
#program .stepper-dots .dot button{background:#5c3531;color:#f4e6d6;border:1px solid #896055;border-bottom:0;border-radius:10px 10px 0 0;min-height:76px;height:100%;transition:background .2s,color .2s}
#program .stepper-dots .dot.active button{background:#eee4d2;color:#35291f;border-color:#eee4d2;min-height:76px;box-shadow:0 2px 0 #eee4d2;position:relative;z-index:1}
#program .program-reading{background:#eee4d2;border-radius:0 0 5px 5px;padding:32px;gap:28px}
#program .program-reading .program-media{background:transparent;border:0;align-self:start;box-shadow:none}
#program .program-reading .program-media .photo{padding:0;object-fit:contain}
#program .stepper-controls{margin:0;padding:22px 32px;background:#eee4d2;border-top:1px solid #d4c3a8;border-radius:0 0 5px 5px;color:#504536}
#program .stepper-count,#program .stepper-count b,#program .stepper-arrow{color:#504536}
#program .stepper-arrow{border-color:#b8a386}
.result-inline-art{display:none}
@media(max-width:860px){
 #program .program-tilt-card{padding:14px}
 #program .stepper-dots{position:relative;display:flex;flex-direction:row;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#a78a6c #372a23;gap:5px;padding:0;scroll-snap-type:x proximity;overscroll-behavior-x:contain}
 #program .stepper-dots .dot{flex:0 0 auto;scroll-snap-align:start}
 #program .stepper-dots .dot button{width:auto;min-height:62px;padding:14px 18px;white-space:nowrap;gap:10px}
 #program .stepper-dots .dot.active button{min-height:62px}
 #program .stepper-dots button strong{font-size:1rem}
 #program .program-reading{padding:24px 20px;gap:22px}
 #program .program-reading .program-media{max-width:240px;justify-self:start}
 #program .stepper-controls{padding:18px 20px}
 #benefits .results-grid{grid-template-columns:minmax(0,1fr);gap:0}
 #benefits .results-illo{display:none}
 #benefits .r-item[aria-current="true"] .d{max-height:none;overflow:visible}
 #benefits .r-item .result-inline-art{display:block;width:132px;height:120px;margin:12px 0 18px;color:var(--oxblood)}
 #benefits .result-inline-art svg{display:block;width:100%;height:100%}
}
@media(prefers-reduced-motion:reduce){#program .stepper-dots .dot button{transition:none}}


/* Each result owns its plaque. Both copy and artwork follow active state. */
@media(max-width:860px){
 #benefits .r-item .result-inline-art{display:none}
 #benefits .r-item[aria-current="true"] .result-inline-art{display:flex;position:relative;align-items:center;justify-content:center;width:min(100%,210px);height:auto;aspect-ratio:4/3;margin:14px 0 20px;padding:22px 30px;background:var(--oxblood);color:var(--paper);box-shadow:0 8px 18px -12px rgba(26,15,15,.4)}
 #benefits .result-inline-art::before,#benefits .result-inline-art::after{content:'';position:absolute;top:0;bottom:0;width:8px;background:repeating-linear-gradient(180deg,var(--paper) 0 7px,transparent 7px 18px);pointer-events:none}
 #benefits .result-inline-art::before{left:0}
 #benefits .result-inline-art::after{right:0}
 #benefits .result-inline-art svg{width:100%;height:100%;max-height:116px;flex:none}
 #benefits .r-item:not([aria-current="true"]) .d{display:none}
 #benefits .r-item[aria-current="true"] .d{display:block;max-height:none;opacity:1;overflow:visible}
}


@media (max-width:1199px), (max-width:1366px) and (orientation:portrait){
 #benefits .benefits-layout{grid-template-columns:minmax(0,1fr);gap:32px}
 #benefits .results-grid{grid-template-columns:minmax(0,1fr);gap:0}
 #benefits .results-illo{display:none}
}

/* Each result owns its plaque. Both copy and artwork follow active state. */
@media (max-width:1199px), (max-width:1366px) and (orientation:portrait){
 #benefits .r-item .result-inline-art{display:none}
 #benefits .r-item[aria-current="true"] .result-inline-art{display:flex;position:relative;align-items:center;justify-content:center;width:min(100%,210px);height:auto;aspect-ratio:4/3;margin:14px 0 20px;padding:22px 30px;background:var(--oxblood);color:var(--paper);box-shadow:0 8px 18px -12px rgba(26,15,15,.4)}
 #benefits .result-inline-art::before,#benefits .result-inline-art::after{content:'';position:absolute;top:0;bottom:0;width:8px;background:repeating-linear-gradient(180deg,var(--paper) 0 7px,transparent 7px 18px);pointer-events:none}
 #benefits .result-inline-art::before{left:0}
 #benefits .result-inline-art::after{right:0}
 #benefits .result-inline-art svg{width:100%;height:100%;max-height:116px;flex:none}
 #benefits .r-item:not([aria-current="true"]) .d{display:none}
 #benefits .r-item[aria-current="true"] .d{display:block;max-height:none;opacity:1;overflow:visible}
}


#program .stepper-viewport{display:block;position:relative;overflow:hidden;align-self:start}
#program .stepper-panel{display:none;visibility:hidden;grid-area:auto;padding-top:8px;padding-bottom:8px}
#program .stepper-panel.active{display:block;visibility:visible;animation:stepFade .25s ease both}
#program .stepper-panel p+p{margin-top:1em}
#program .stepper-panel p{line-height:1.65}
#program .program-reading .program-media{width:100%;max-width:260px;aspect-ratio:4/3;align-self:start;justify-self:center}
#program .program-reading .program-media .photo{object-fit:contain;object-position:center;padding:12px}
#program .stepper-dots button:focus-visible{outline:2px solid #f4efe4;outline-offset:-5px}
@media(max-width:860px){
 #program .stepper-dots{scroll-padding-inline:8px}
 #program .stepper-dots .dot{flex:0 0 72%;max-width:260px}
 #program .stepper-dots .dot button{width:100%;white-space:normal}
 #program .program-reading .program-media{width:200px;max-width:100%;aspect-ratio:4/3;justify-self:start}
}
@media(prefers-reduced-motion:no-preference){#program .stepper-viewport.height-ready{transition:height .25s ease}}
@media(prefers-reduced-motion:reduce){#program .stepper-panel.active{animation:none}}


/* Large displays only: preserve the full 3:2 landscape while keeping the
   existing offer and controls within the first viewport. */
@media(min-width:2560px) and (min-aspect-ratio:6/5){
 .hero-premium{min-height:max(100svh,66.666667vw)}
 .mast-inner{min-height:100svh}
 .mast-scene{inset:0;width:100%;height:100%;object-fit:cover;object-position:center top}
 .mast-shade{background:linear-gradient(90deg,rgba(20,18,15,.68),rgba(20,18,15,.43) 38%,transparent 72%),linear-gradient(0deg,rgba(20,18,15,.65),transparent 20%)}
}


/* Spread the copy across the tall large-screen hero, with its footer at
   the landscape's real bottom. Preserve the title's viewport-based position. */
@media(min-width:2560px) and (min-aspect-ratio:6/5){
 .mast-inner{min-height:inherit;grid-template-rows:1fr auto auto auto;padding-bottom:32px;row-gap:36px}
 .mast-title{align-self:start;margin-top:clamp(0px,calc(50svh - 520px),200px)}
 .mast-context{align-self:end;margin-bottom:10px}
 .mast-actions{align-self:end}
 .mast-modules{align-self:end}
 .mast-shade{background:linear-gradient(90deg,rgba(20,18,15,.68),rgba(20,18,15,.43) 38%,transparent 72%),linear-gradient(0deg,rgba(20,18,15,.9),rgba(20,18,15,.6) 16%,transparent 35%)}
}


@media(min-width:3440px) and (min-aspect-ratio:6/5){
 .mast-title{margin-top:max(0px,calc(33.333333vw - clamp(130px,16svh,210px)))}
}
/* Ultrawide refinement: trim 4% of source height at each edge. */
@media(min-width:3000px) and (min-aspect-ratio:6/5){
 .hero-premium{min-height:max(100svh,61.333333vw)}
 .mast-scene{object-position:75% center}
 .mast-title{margin-top:max(0px,calc((clamp(0px,calc(50svh - 520px),200px) + 33.333333vw - clamp(130px,16svh,210px))/2))}
}

/* Release: preserve the approved composition, clarify states. */
.section-kicker,.story-kicker{color:#806044}
.req .field-error,.req .field-hint{display:block;font-size:.875rem;line-height:1.5;margin-top:6px}
.req .field-error{color:#5c2a2a}.req .field-error:empty{display:none}
.req [aria-invalid="true"]{border-color:#5c2a2a;outline:1px solid #5c2a2a}
#req-status{grid-column:1/-1;font-size:.9rem;line-height:1.5;margin:8px 0 0;color:var(--ink-3)}
#group-status:empty{display:none}#group-status{font-size:.9rem;line-height:1.5}
.req button:disabled{opacity:.65;cursor:wait}
.req select{width:100%;min-width:0;padding:.95em .6em;background:var(--bone);border:1px solid var(--line);color:var(--ink);font:inherit;border-radius:0}
.req select:focus-visible{outline:2px solid var(--oxblood);outline-offset:2px}
#format-note{color:var(--ink-3);font-size:.9rem;line-height:1.5;margin-top:12px}

