:root { --pink:#ec7189; --rose:#fff1f1; --ink:#151317; --cream:#f9f3ef; --line:#f2d7d1; --gold:#c88d5e; }
    * { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; background:var(--cream); color:var(--ink); font-family:"DM Sans",sans-serif; }
    a { color:inherit; text-decoration:none; } .page { overflow:hidden; } .wrap { width:min(1400px,calc(100% - 80px)); margin:auto; }
    .nav { height:84px; display:flex; align-items:center; justify-content:flex-end; position:fixed; top:0; left:50%; transform:translateX(-50%); z-index:20; color:#211b1b; pointer-events:none; }.nav-actions { display:flex; align-items:center; gap:12px; pointer-events:auto; }
    .brand { display:flex; align-items:center; gap:12px; font-weight:600; letter-spacing:.12em; text-transform:uppercase; font-size:11px; }
    .brand-mark { font-family:Prata,serif; color:var(--gold); letter-spacing:-.14em; font-size:33px; line-height:1; }
    .nav-links { display:flex; gap:27px; font-size:12px; font-weight:500; } .nav-links a:hover { color:var(--pink); }
    .nav-cta,.button { border:1px solid var(--pink); color:#bb4d65; padding:11px 19px; border-radius:99px; font-weight:600; font-size:12px; transition:.25s; }.nav-cta { background:rgba(255,253,251,.9); backdrop-filter:blur(8px); }.lang-switch { display:flex; padding:3px; border:1px solid rgba(236,113,137,.55); border-radius:99px; background:rgba(255,253,251,.88); backdrop-filter:blur(8px); }.lang-switch a { border:0; padding:6px 8px; border-radius:99px; background:transparent; color:#8d7979; font:600 10px "DM Sans",sans-serif; letter-spacing:.08em; text-decoration:none; }.lang-switch a[aria-current="true"] { color:var(--cream); background:var(--pink); }.hero .wrap { position:relative; }.hero-lang { position:absolute; top:-42px; right:155px; }.hero .button { display:inline-block; }.nav-cta:hover,.button:hover { background:var(--pink); color:white; }
    .hero { min-height:720px; position:relative; padding-top:68px; background:linear-gradient(90deg,var(--cream) 0%,rgba(249,243,239,.94) 43%,rgba(249,243,239,.08) 71%),url('assets/ng-hero.png') center right/cover no-repeat; }
    .hero-copy { max-width:710px; }.hero-brand { width:245px; }.hero-monogram { display:block; color:var(--gold); font:100px/.75 Prata,serif; letter-spacing:-.18em; margin-left:-9px; }.hero-name { display:block; margin-top:24px; font-size:17px; line-height:1.42; letter-spacing:.19em; font-weight:600; }.hero-brand-line { display:block; width:245px; height:1px; background:#dfa98f; margin:27px 0 19px; }.hero-category { color:var(--pink); text-transform:uppercase; letter-spacing:.19em; font-size:14px; font-weight:600; }
    .tag { color:var(--pink); text-transform:uppercase; font-size:13px; font-weight:600; letter-spacing:.18em; display:block; margin-bottom:45px; }.tag:after,.section-title:after { content:""; display:block; height:2px; width:67px; margin-top:15px; background:var(--pink); }.section-heading { font-family:"DM Sans",sans-serif; font-size:clamp(16px,1.7vw,24px); font-weight:500; line-height:1.16; letter-spacing:.08em; text-transform:uppercase; white-space:nowrap; margin:0; }.section-heading:after { content:""; display:block; width:67px; height:1px; margin-top:19px; background:var(--pink); }.section-heading + * { margin-top:40px !important; }
    h1,h2 { font-family:Prata,Georgia,serif; font-weight:400; letter-spacing:-.035em; margin:0; } h1 { font-size:clamp(34px,4vw,62px); line-height:1.18; text-transform:uppercase; margin-top:38px; } h1 em { color:var(--pink); font-style:normal; } .hero-sub { margin:28px 0 39px; max-width:458px; font-size:18px; line-height:1.55; }
    .hero-actions { display:flex; align-items:center; gap:27px; margin-top:48px; }.hero-features { display:flex; gap:0; margin-top:56px; }.hero-feature { min-width:152px; padding:0 30px; border-left:1px solid #e8bcae; text-align:center; }.hero-feature:first-child { padding-left:0; border:0; }.hero-feature img { display:block; width:auto; height:48px; max-width:58px; object-fit:contain; margin:0 auto 12px; }.hero-feature small { letter-spacing:.14em; font-size:11px; font-weight:700; }.hero-site { display:flex; align-items:center; gap:9px; font-size:17px; letter-spacing:.02em; }.hero-site img { width:32px; height:32px; object-fit:contain; }.hero-site:hover { color:var(--pink); }
    .section { padding:120px 0; }.split-photo { min-height:760px; position:relative; background:linear-gradient(90deg,var(--cream) 0%,var(--cream) 43%,rgba(249,243,239,.17) 68%),url('assets/ng-hero.png') center right/cover no-repeat; }.split-photo .wrap { padding-top:43px; }.section-title { color:var(--pink); text-transform:uppercase; font-size:14px; letter-spacing:.16em; font-weight:600; }.about-title { font-family:Prata,Georgia,serif; font-size:clamp(34px,3.8vw,55px); font-weight:400; letter-spacing:-.035em; line-height:1.2; max-width:760px; margin:37px 0 35px; }.about-title .pink { white-space:nowrap; }.pink { color:var(--pink); }.about-text { font-size:18px; line-height:1.58; max-width:510px; }.stats { display:flex; margin-top:60px; }.stat { width:152px; min-height:147px; border-right:1px solid var(--line); padding:2px 20px; text-align:center; }.stat:first-child { padding-left:0; }.stat:last-child { border-right:0; }.stat img { display:block; height:50px; max-width:62px; object-fit:contain; margin:auto; }.stat strong { display:block; color:var(--pink); font-family:"DM Sans",sans-serif; font-size:42px; font-weight:300; line-height:1; margin:18px 0 12px; }.stat small { color:var(--ink); font-size:16px; font-weight:500; line-height:1.45; }.icon { display:grid; place-items:center; height:50px; width:50px; border-radius:50%; background:#fff0f0; color:var(--pink); font-size:25px; }
    .production { background:var(--cream); padding-top:42px; padding-bottom:42px; }.production-grid { display:grid; grid-template-columns:32% 68%; gap:35px; align-items:center; }.production h3 { font-family:Prata,Georgia,serif; font-size:clamp(34px,3.8vw,55px); font-weight:400; letter-spacing:-.035em; line-height:1.2; white-space:nowrap; color:var(--ink); margin:43px 0 33px; }.production h3 .pink { color:var(--pink); }.production-copy { max-width:350px; font-size:17px; line-height:1.65; padding-top:34px; }.orbit { position:relative; height:620px; max-width:850px; margin:auto; }.core { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:232px; height:232px; border:1px solid #e7a98e; border-radius:50%; display:grid; place-items:center; text-align:center; background:rgba(249,243,239,.88); box-shadow:0 15px 28px rgba(130,79,57,.16); z-index:1; }.core:before { content:""; position:absolute; width:464px; height:464px; border:1px solid rgba(231,169,142,.55); border-radius:50%; z-index:-1; }.core b { display:block; font:70px Prata,serif; color:var(--gold); letter-spacing:-.13em; }.core span { margin-top:-41px; font-weight:700; letter-spacing:.21em; font-size:11px; }.service-card { position:absolute; width:275px; padding:21px 22px; display:flex; gap:15px; align-items:center; border:1px solid #f0c6ba; border-radius:25px; background:rgba(249,243,239,.9); box-shadow:0 12px 25px rgba(112,66,41,.08); font-weight:600; line-height:1.38; z-index:2; }.service-card .service-icon { flex:0 0 68px; width:68px; height:68px; object-fit:contain; }.service-card small { display:block; font-weight:400; margin-top:5px; }.service-card.one { top:calc(50% - 232px); left:50%; transform:translate(-50%,-50%); }.service-card.two { top:calc(50% - 85px); left:calc(50% + 201px); transform:translate(-50%,-50%); }.service-card.three { top:calc(50% + 85px); left:calc(50% + 201px); transform:translate(-50%,-50%); }.service-card.four { top:calc(50% + 85px); left:calc(50% - 201px); transform:translate(-50%,-50%); }.service-card.five { top:calc(50% - 85px); left:calc(50% - 201px); transform:translate(-50%,-50%); }.service-card.six { top:calc(50% + 232px); left:50%; transform:translate(-50%,-50%); }
    .failure { min-height:745px; background:linear-gradient(90deg,var(--cream) 0%,rgba(249,243,239,.97) 44%,rgba(249,243,239,.16) 70%),url('assets/ng-hero.png') center right/cover no-repeat; }.failure .wrap,.requirements .wrap { padding-top:105px; }.failure .wrap { padding-top:63px; padding-bottom:42px; }.failure h3 { font-family:Prata,Georgia,serif; font-size:clamp(24px,2.65vw,39px); font-weight:400; letter-spacing:-.035em; line-height:1.2; white-space:nowrap; color:var(--ink); max-width:600px; margin:43px 0 29px; }.failure h3 .pink { color:var(--pink); font-size:1.2em; }.fact { border:1px solid #f0c7bd; border-radius:23px; padding:12px 11px; max-width:535px; display:flex; gap:27px; align-items:center; background:#fbf1f1; }.fact-icon { flex:0 0 120px; width:120px; height:120px; object-fit:contain; }.fact-label { display:block; width:max-content; padding-bottom:7px; border-bottom:1px solid #efbcb2; font-size:17px; font-weight:600; }.fact b { display:block; color:var(--pink); font-family:"DM Sans",sans-serif; font-size:50px; font-weight:400; line-height:1.1; margin:8px 0 6px; }.fact-copy { display:block; max-width:335px; font-size:17px; line-height:1.38; }.bullets { max-width:600px; margin-top:27px; }.bullets p { font-size:15px; line-height:1.55; margin:18px 0; padding-left:34px; position:relative; }.bullets p:before { content:'✓'; position:absolute; left:0; color:var(--pink); font-weight:bold; border:1px solid var(--pink); border-radius:50%; width:16px; height:16px; font-size:11px; text-align:center; line-height:14px; }.failure .button { display:inline-block; margin-top:16px; }
    .requirements { min-height:740px; background:linear-gradient(90deg,var(--cream) 0%,rgba(249,243,239,.96) 43%,rgba(249,243,239,.13) 70%),url('assets/ng-hero.png') center right/cover no-repeat; }.requirements .wrap { padding-top:63px; padding-bottom:42px; }.req-list { max-width:540px; margin-top:31px; }.req { display:flex; align-items:center; gap:28px; padding:5px 0; border-bottom:1px solid var(--line); font-size:19px; line-height:1.35; font-weight:500; }.req:last-child { border-bottom:0; }.req img { flex:0 0 68px; width:68px; height:68px; object-fit:contain; }.notice { width:100%; max-width:540px; margin-top:23px; padding:16px 20px; display:flex; align-items:center; gap:15px; border:1px solid #f3d3d3; border-radius:18px; background:#fbebea; font-size:13px; line-height:1.45; }.notice img { flex:0 0 46px; width:46px; height:46px; object-fit:contain; }
    .faq { padding:32px 0; }.faq h2 { margin-bottom:50px; }.faq-list { border-top:1px solid var(--line); }.faq-item { border-bottom:1px solid var(--line); }.faq-item summary { display:grid; grid-template-columns:1fr 52px; gap:25px; padding:25px 0; cursor:pointer; list-style:none; align-items:center; }.faq-item summary::-webkit-details-marker { display:none; }.faq-symbol { display:none; }.faq-toggle { width:52px; height:52px; display:grid; place-items:center; color:var(--pink); font:32px/1 "DM Sans",sans-serif; font-weight:300; border:1px solid var(--pink); border-radius:50%; transition:transform .25s ease,background .25s ease,color .25s ease; }.faq-item[open] .faq-toggle { color:var(--cream); background:var(--pink); transform:rotate(45deg); }.faq-item h3 { margin:4px 0 0; font-size:20px; line-height:1.3; }.faq-item p { max-width:930px; margin:0 77px 25px 0; font-size:15px; line-height:1.55; }.footer { background:#211a1b; color:#fff8f5; padding:66px 0 28px; }.footer-row { display:flex; justify-content:space-between; align-items:flex-end; }.footer h2 { font-size:clamp(36px,4vw,59px); max-width:620px; }.footer h2 em { color:var(--pink); font-style:normal; }.footer-contact { text-align:right; }.footer-contact a { display:block; color:#ff94a8; font-size:20px; margin-top:12px; }.legal { padding-top:60px; margin-top:50px; border-top:1px solid #594b4c; display:flex; justify-content:space-between; color:#baadae; font-size:11px; }
    @media(max-width:900px) { .wrap { width:min(100% - 40px,680px); }.nav { width:calc(100% - 40px); }.nav-links { display:none; }.hero { min-height:780px; background:linear-gradient(90deg,rgba(249,243,239,.98) 0%,rgba(249,243,239,.8) 62%,rgba(249,243,239,.15)),url('assets/ng-hero.png') 63% center/cover; }.hero-features { gap:8px; }.hero-feature { padding:0 12px; min-width:0; }.split-photo,.failure,.requirements { background:linear-gradient(90deg,rgba(249,243,239,.98) 0%,rgba(249,243,239,.85) 72%,rgba(249,243,239,.25)),url('assets/ng-hero.png') 65% center/cover; }.production-grid { grid-template-columns:1fr; }.orbit { transform:scale(.8); margin:-40px -85px; }.footer-row { display:block; }.footer-contact { text-align:left; margin-top:35px; }.legal { flex-direction:column; gap:12px; }.stat { width:25%; padding:2px 8px; }.stat strong { font-size:28px; } }
    @media(max-width:560px) { .wrap { width:calc(100% - 32px); }.nav { width:calc(100% - 32px); }.brand span { display:none; }.hero { padding-top:135px; min-height:730px; background:linear-gradient(90deg,rgba(249,243,239,.97),rgba(249,243,239,.61)),url('assets/ng-hero.png') 63% center/cover; }.hero-sub { font-size:16px; }.hero-features { margin-top:48px; }.hero-feature strong { font-size:23px; }.hero-feature small { font-size:8px; }.section,.faq { padding:75px 0; }.split-photo,.failure,.requirements { min-height:660px; }.split-photo .wrap,.failure .wrap,.requirements .wrap { padding-top:80px; }.about-text { font-size:16px; }.stats { margin-top:38px; }.stat { min-height:120px; }.stat small { font-size:10px; }.production h3 { margin:31px 0 25px; }.orbit { transform:scale(.58); margin:-120px -170px -110px; }.service-card { width:255px; }.fact { padding:15px; }.faq-item { grid-template-columns:50px 1fr; gap:14px; }.faq-symbol { width:40px; height:40px; font-size:25px; }.faq-item h3 { font-size:17px; }.faq-item p { font-size:14px; }.footer { padding-top:54px; } }

/* Фоны секций: главная, о нас, причины неудач, требования */
.hero { background-image:linear-gradient(90deg,var(--cream) 0%,rgba(249,243,239,.94) 43%,rgba(249,243,239,.08) 71%),url('assets/back_1.png'); }
.split-photo { background-image:linear-gradient(90deg,var(--cream) 0%,var(--cream) 43%,rgba(249,243,239,.17) 68%),url('assets/back_2.png'); }
.failure { background-image:linear-gradient(90deg,var(--cream) 0%,rgba(249,243,239,.97) 44%,rgba(249,243,239,.16) 70%),url('assets/back_3.png'); }
.requirements { background-image:linear-gradient(90deg,var(--cream) 0%,rgba(249,243,239,.96) 43%,rgba(249,243,239,.13) 70%),url('assets/back_4.png'); }
.hero,.split-photo,.failure,.requirements { background-position:center top; }

/* Hero title in the Russian version: two fixed lines, no word wrapping. */
html[lang="ru"] .hero h1 { white-space:nowrap; }

@media(max-width:900px) {
  .hero { background-image:linear-gradient(90deg,rgba(249,243,239,.98) 0%,rgba(249,243,239,.8) 62%,rgba(249,243,239,.15)),url('assets/back_1.png'); }
  .split-photo { background-image:linear-gradient(90deg,rgba(249,243,239,.98) 0%,rgba(249,243,239,.85) 72%,rgba(249,243,239,.25)),url('assets/back_2.png'); }
  .failure { background-image:linear-gradient(90deg,rgba(249,243,239,.98) 0%,rgba(249,243,239,.85) 72%,rgba(249,243,239,.25)),url('assets/back_3.png'); }
  .requirements { background-image:linear-gradient(90deg,rgba(249,243,239,.98) 0%,rgba(249,243,239,.85) 72%,rgba(249,243,239,.25)),url('assets/back_4.png'); }
}

@media(max-width:560px) {
  .hero { background-image:linear-gradient(90deg,rgba(249,243,239,.97),rgba(249,243,239,.61)),url('assets/back_1.png'); }
}
