@layer reset, base, layout, blocks, pages;

@layer reset {
  *, *::before, *::after { box-sizing: border-box; }
  html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
  body, h1, h2, h3, p, ul, ol, dl, dd, figure { margin: 0; }
  ul, ol { padding: 0; list-style: none; }
  img, picture, svg { display: block; max-inline-size: 100%; block-size: auto; }
  button { font: inherit; color: inherit; background: none; border: 0; padding: 0; cursor: pointer; }
  a { color: inherit; }
  table { border-collapse: collapse; }
  @media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } * { transition: none !important; } }
}

@layer base {
  :root {
    --blue: #0a34b0; --blue-deep: #071f6e; --blue-soft: #e7eefc; --sky: #bfe0f2;
    --red: #d0121e; --green: #00a85c; --green-neon: #34e08a; --yellow: #ffd23f;
    --ply: #f4e7cc; --ply-dark: #e3cfa6; --ink: #0b173a; --mute: #55607a; --line: #d9deea; --paper: #ffffff;
    --head: "Bai Jamjuree", "Trebuchet MS", sans-serif; --text: "Instrument Sans", system-ui, sans-serif;
    --wrap: 1240px; --gut: clamp(16px, 4vw, 40px);
  }
  body { font-family: var(--text); font-size: 17px; line-height: 1.6; color: var(--ink); background: var(--paper); overflow-x: hidden; }
  h1, h2, h3 { font-family: var(--head); line-height: 1.15; letter-spacing: -.01em; }
  a:focus-visible, button:focus-visible, summary:focus-visible, label:focus-visible { outline: 3px solid var(--blue); outline-offset: 3px; }
  .qq9gl { position: absolute; inset-inline-start: -999px; inset-block-start: 8px; background: var(--ink); color: #fff; padding: .5rem 1rem; z-index: 99; }
  .qq9gl:focus { inset-inline-start: 8px; }
  .ani3 { position: absolute; inline-size: 1px; block-size: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  .m1h6 { --fill: 90%; display: inline-block; font-size: .95em; letter-spacing: .08em; line-height: 1;
    background: linear-gradient(90deg, #f5a300 var(--fill), #cfd5e3 var(--fill)); -webkit-background-clip: text; background-clip: text; color: transparent; }
  .e0g09h { display: block; inline-size: 100%; max-inline-size: 320px; transition: transform .15s ease, filter .15s ease; }
  .e0g09h img { inline-size: 100%; }
  .e0g09h:hover { transform: translateY(-2px); filter: brightness(1.05); }
  .y8sb { display: inline-flex; align-items: center; justify-content: center; min-block-size: 48px; padding: .7rem 1.7rem; border-radius: 999px;
    font-family: var(--head); font-weight: 700; font-size: 1rem; text-decoration: none; letter-spacing: .02em; transition: transform .15s ease; }
  .y8sb:hover { transform: translateY(-2px); }
  .xzoq9 { background: var(--green-neon); color: var(--ink); box-shadow: 0 4px 0 #0f9a57; }
  .sct5gd { background: #fff; color: var(--blue); font-size: .8rem; letter-spacing: .14em; text-transform: uppercase; min-block-size: 42px; padding: .5rem 1.6rem; }
  .wuc6u { background: var(--blue); color: #fff; font-size: .85rem; letter-spacing: .14em; text-transform: uppercase; }
}

@layer layout {
  /* полоса и шапка — The Science Hut: тонкая строка, лого по центру, ряд ссылок ниже */
  .idcsw { background: var(--blue-deep); color: var(--green-neon); text-align: center; font-weight: 600; font-size: .82rem; padding: .45rem var(--gut); }
  .s7qbtd { background: #fff; border-block-end: 4px solid var(--red); position: sticky; inset-block-start: 0; z-index: 40; }
  .p0cxgby { max-inline-size: var(--wrap); margin-inline: auto; padding: .7rem var(--gut) 0; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; }
  .f0ghar0 { grid-column: 2; justify-self: center; }
  .f0ghar0 img { inline-size: clamp(150px, 16vw, 210px); }
  .i108 { grid-column: 3; justify-self: end; inline-size: 250px; }
  .kf9yfo1 { grid-column: 1 / -1; }
  .kf9yfo1 ul { display: flex; justify-content: center; flex-wrap: wrap; gap: .2rem 2.2rem; padding-block: .8rem .7rem; }
  .kf9yfo1 a { font-family: var(--head); font-weight: 600; text-decoration: none; color: var(--blue); font-size: 1rem; padding-block: .3rem; border-block-end: 2px solid transparent; }
  .kf9yfo1 a:hover, .kf9yfo1 a[aria-current] { color: var(--red); border-color: var(--red); }
  .w97h { position: absolute; opacity: 0; pointer-events: none; }
  .v9cwup { display: none; grid-column: 1; grid-row: 1; inline-size: 44px; block-size: 44px; padding: 11px 9px; cursor: pointer; border-radius: 10px; border: 2px solid var(--line); }
  .v9cwup span { display: block; block-size: 3px; background: var(--blue); border-radius: 2px; margin-block-end: 5px; }
  .v9cwup span:last-child { margin: 0; }
  .w97h:focus-visible + .v9cwup { outline: 3px solid var(--blue); }

  main { display: block; }
  .j7izc4j { background: #fff; padding: clamp(18px, 3vw, 34px) var(--gut) 0; }
  .j7izc4j img { max-inline-size: var(--wrap); inline-size: 100%; margin-inline: auto; border-radius: 14px; }

  /* подвал — Home Science Tools: синий, лого + адрес, колонки, нижняя полоса */
  .g2s74n { background: var(--blue); color: #fff; margin-block-start: clamp(18px, 3vw, 34px); }
  .g2s74n a { color: #fff; text-decoration: none; }
  .g2s74n a:hover { text-decoration: underline; }
  .e54in6 { max-inline-size: var(--wrap); margin-inline: auto; padding: 3rem var(--gut) 2rem; display: grid; grid-template-columns: 1.3fr 1fr 1fr 1fr; gap: 2rem; }
  .om15qxq { display: inline-block; background: #fff; border-radius: 12px; padding: .6rem 1rem; margin-block-end: 1.1rem; }
  .om15qxq img { inline-size: 170px; }
  .ymhm3 { display: flex; gap: .7rem; font-size: .93rem; margin-block-end: .7rem; line-height: 1.5; }
  .c1li { flex: none; inline-size: 20px; block-size: 20px; margin-block-start: 2px; }
  .qsrxn { font-family: var(--text); font-size: .82rem; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; margin-block-end: 1rem; }
  .g2s74n li { margin-block-end: .55rem; font-size: .95rem; }
  .s6ddtwo { max-inline-size: var(--wrap); margin-inline: auto; padding: 0 var(--gut) 2rem; display: flex; align-items: center; gap: 1.3rem; }
  .s6ddtwo img { inline-size: 150px; border-radius: 10px; }
  .s6ddtwo p { max-inline-size: 46ch; font-size: .95rem; opacity: .92; }
  .oj532e { background: #0a2a8f; display: flex; flex-wrap: wrap; justify-content: center; gap: .6rem 3rem; padding: 1rem var(--gut); font-size: .75rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }

  .pvy616 { display: none; }

  .sbjpc ol { display: flex; flex-wrap: wrap; gap: .2rem .55rem; font-size: .86rem; color: var(--mute); margin-block-end: 1.2rem; }
  .sbjpc li + li::before { content: "›"; margin-inline-end: .55rem; color: var(--mute); }
  .sbjpc a { color: var(--blue); text-decoration: none; }
  .sbjpc a:hover { text-decoration: underline; }
}

@layer blocks {
  /* хиро — The Science Hut */
  .v3zbwn { position: relative; isolation: isolate; min-block-size: clamp(440px, 62vh, 620px); display: grid; place-items: center; text-align: center; color: #fff; overflow: hidden; }
  .v3zbwn picture, .tocm { position: absolute; inset: 0; inline-size: 100%; block-size: 100%; object-fit: cover; object-position: 50% 35%; z-index: -2; }
  .v3zbwn::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(7, 18, 60, .55), rgba(7, 18, 60, .78)); }
  .kqrdq { max-inline-size: 860px; padding: 3rem var(--gut); }
  .v3zbwn h1 { font-size: clamp(2.1rem, 5vw, 3.6rem); font-weight: 700; color: #fff; }
  .v3zbwn h1 span { display: block; color: var(--yellow); }
  .v3zbwn p { margin: 1rem auto 1.8rem; max-inline-size: 60ch; font-size: clamp(1rem, 1.6vw, 1.15rem); color: #e9eefb; }
  .caqae { display: flex; flex-wrap: wrap; gap: 1rem 1.3rem; justify-content: center; align-items: center; }
  .caqae .e0g09h { inline-size: 300px; }

  /* плитки категорий — The Science Hut */
  .tnl7dz { max-inline-size: var(--wrap); margin: 0 auto; padding: 2.6rem var(--gut) 1rem; }
  .klhmk { font-size: clamp(1.3rem, 2.2vw, 1.6rem); margin-block-end: 1.3rem; }
  .vf0a { display: grid; grid-template-columns: repeat(5, 1fr); gap: 1.1rem; }
  .vf0a a { display: block; text-decoration: none; font-weight: 700; font-size: .95rem; }
  .vf0a picture { aspect-ratio: 1; border-radius: 18px; overflow: hidden; border: 3px solid var(--ink); box-shadow: 4px 6px 0 rgba(11, 23, 58, .22); margin-block-end: .7rem; }
  .vf0a img { inline-size: 100%; block-size: 100%; object-fit: cover; transition: transform .25s ease; }
  .vf0a a:hover img { transform: scale(1.05); }
  .vf0a i { font-style: normal; color: var(--red); }

  /* bestsellers — CircuitMess */
  .spku9lq { max-inline-size: var(--wrap); margin: 0 auto; padding: 2.4rem var(--gut) 3rem; }
  .jdz7eph { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: end; gap: .4rem 2rem; margin-block-end: 1.4rem; }
  .jdz7eph h2 { font-size: clamp(1.6rem, 3vw, 2.1rem); }
  .jdz7eph p { color: var(--mute); max-inline-size: 52ch; font-size: .95rem; }
  .ww6ayxs { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.4rem; }
  .bs7y { position: relative; display: flex; flex-direction: column; background: #fff; border-radius: 12px; box-shadow: 0 2px 14px rgba(11, 23, 58, .12); padding: 1rem 1.1rem 1.2rem; }
  .ol9uq { position: absolute; inset-block-start: .9rem; inset-inline-start: .9rem; z-index: 2; background: var(--yellow); color: var(--ink); font-size: .7rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; border-radius: 999px; padding: .25rem .7rem .25rem 1.9rem; }
  .ol9uq::before { content: "%"; position: absolute; inset-inline-start: -.2rem; inset-block-start: 50%; translate: 0 -50%; inline-size: 1.75rem; block-size: 1.75rem; border-radius: 50%; background: var(--ink); color: #fff; display: grid; place-items: center; font-size: .78rem; }
  .q47v { display: block; aspect-ratio: 1; margin-block-end: .7rem; }
  .q47v img { inline-size: 100%; block-size: 100%; object-fit: contain; }
  .kj77b { flex: 1; }
  .qyez { font-size: 1.08rem; font-weight: 700; }
  .qyez a { text-decoration: none; }
  .qyez a:hover { color: var(--blue); }
  .x4d1uvf { font-size: .85rem; color: var(--mute); margin-block: .2rem .6rem; }
  .yvhm { display: flex; justify-content: space-between; align-items: center; gap: .6rem; margin-block-end: .9rem; }
  .enbtng { display: flex; align-items: center; gap: .4rem; font-size: .85rem; color: var(--mute); }
  .odfn { font-family: var(--head); font-weight: 700; font-size: 1.45rem; color: var(--red); text-align: end; line-height: 1.1; }
  .odfn s { display: block; font-size: .78rem; color: var(--mute); font-weight: 600; }
  .xk17dv { max-inline-size: none; margin-block-start: auto; }

  /* диагональная полоса — CircuitMess */
  .fpppk6n { background: var(--blue-deep) radial-gradient(circle at 20% 30%, rgba(255, 255, 255, .5) 1px, transparent 1.6px) 0 0 / 48px 48px;
    clip-path: polygon(0 0, 100% 0, 100% 82%, 0 100%); color: #fff; padding: 4rem var(--gut) 7rem; }
  .kpy1h1 { max-inline-size: 1060px; margin-inline: auto; display: grid; grid-template-columns: .9fr 1.1fr; gap: 3rem; align-items: center; }
  .yn9y { display: block; background: #fff; border-radius: 26px; padding: 1rem; rotate: -4deg; box-shadow: 0 30px 60px rgba(0, 0, 0, .45); max-inline-size: 420px; }
  .x5yrf h2 { font-size: clamp(1.8rem, 3.6vw, 2.6rem); margin-block-end: 1rem; }
  .x5yrf p { color: #d8e1fb; margin-block-end: 1.5rem; max-inline-size: 48ch; }
  .jwfrtcs { inline-size: 300px; }

  /* вкладки навыков — CircuitMess */
  .ovsez { max-inline-size: var(--wrap); margin: 0 auto; padding: 2rem var(--gut) 3.4rem; text-align: center; }
  .ovsez > h2 { font-size: clamp(1.7rem, 3.4vw, 2.5rem); margin-block-end: 1rem; }
  .fn9vw { position: absolute; opacity: 0; pointer-events: none; }
  .ard7j { display: flex; flex-wrap: wrap; justify-content: center; gap: .3rem 2rem; margin-block-end: 1.6rem; }
  .ard7j label { cursor: pointer; font-weight: 600; color: var(--mute); padding-block: .35rem; border-block-end: 3px solid transparent; }
  .qm2de { display: none; grid-template-columns: 1fr 1.1fr 1fr; gap: 2rem; align-items: center; text-align: start; }
  .z1kr { position: relative; text-align: end; font-size: 1rem; padding-inline-end: 2.4rem; }
  .z1kr::after { content: ""; position: absolute; inset-inline-end: 0; inset-block-start: 50%; inline-size: 2rem; block-size: 2px; background: var(--green); }
  .z1kr::before { content: ""; position: absolute; inset-inline-end: -6px; inset-block-start: calc(50% - 6px); inline-size: 14px; block-size: 14px; border-radius: 50%; background: var(--green); box-shadow: 0 0 0 6px rgba(0, 168, 92, .25); }
  .e7fiqwc { display: block; border-radius: 50%; overflow: hidden; background: radial-gradient(#fff 55%, #eef2fa); box-shadow: 0 20px 50px rgba(11, 23, 58, .12); aspect-ratio: 1; }
  .e7fiqwc img { inline-size: 100%; block-size: 100%; object-fit: cover; }
  .mhtik h3 { font-size: 1.45rem; margin-block-end: .6rem; }
  .mhtik p { color: var(--mute); margin-block-end: 1.2rem; }

  /* возраст — Home Science Tools */
  .oe78evp { max-inline-size: var(--wrap); margin: 0 auto; padding: 2rem var(--gut) 3.4rem; display: grid; grid-template-columns: .8fr 2.6fr; gap: 1.4rem; align-items: center; }
  .oe78evp h2 { font-family: var(--text); font-weight: 400; font-size: clamp(2rem, 3.6vw, 2.8rem); color: var(--blue-deep); line-height: 1.15; }
  .oe78evp ul { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
  .oe78evp a { position: relative; display: block; border-radius: 8px; overflow: hidden; aspect-ratio: .95; text-decoration: none; color: #fff; isolation: isolate; }
  .oe78evp picture, .oe78evp img { position: absolute; inset: 0; inline-size: 100%; block-size: 100%; object-fit: cover; z-index: -2; }
  .oe78evp a::after { content: ""; position: absolute; inset: 0; background: rgba(10, 52, 176, .72); z-index: -1; transition: background .2s; }
  .oe78evp a:hover::after { background: rgba(10, 52, 176, .6); }
  .i9wccp { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .3rem; block-size: 100%; text-align: center; padding: 1rem; font-size: 1.05rem; font-weight: 600; }
  .i9wccp b { font-family: var(--text); font-size: 1.55rem; font-weight: 500; }
  .i9wccp .y8sb { margin-block-start: 1.1rem; font-style: normal; }

  /* три рамочных блока — The Science Hut */
  .bjnm9 { max-inline-size: var(--wrap); margin: 0 auto; padding: 1rem var(--gut) 3rem; }
  .bjnm9 > h2 { text-align: center; font-size: clamp(1.3rem, 2.4vw, 1.6rem); margin-block-end: 1.3rem; }
  .v0ftx5 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.2rem; }
  .pas0 { background: #f4f5f7; border: 2px solid var(--ink); border-radius: 8px; box-shadow: 5px 6px 0 rgba(11, 23, 58, .28); padding: 1.3rem 1.3rem 1.5rem; }
  .pas0 h3 { font-family: var(--text); font-size: 1rem; font-weight: 700; margin-block-end: .7rem; }
  .pas0 p { color: #4b5368; font-size: .98rem; line-height: 1.75; }
  .ewtu { margin-block-start: 1.8rem; }
  .ewtu img { border-radius: 14px; inline-size: 100%; }

  /* рейтинги — CircuitMess (тёмный фон, облака) */
  .qr831x { position: relative; background: linear-gradient(180deg, #120b52, #2a0f6e 70%, #3a137d); color: #fff; padding: 4.5rem var(--gut) 6rem; overflow: hidden; }
  .qr831x::before, .qr831x::after { content: ""; position: absolute; background: #fff; border-radius: 50%; }
  .qr831x::before { inline-size: 260px; block-size: 110px; inset-inline-end: -40px; inset-block-start: -50px; box-shadow: -120px 20px 0 -20px #fff, 90px 30px 0 -10px #fff; }
  .qr831x::after { inline-size: 340px; block-size: 120px; inset-inline-start: -60px; inset-block-end: -60px; box-shadow: 150px 20px 0 -30px #fff, 300px 40px 0 -20px #fff, 900px 30px 0 -10px #fff, 1080px 10px 0 0 #fff; }
  .vfllu7z { position: relative; z-index: 1; max-inline-size: var(--wrap); margin-inline: auto; }
  .qr831x h2 { font-size: clamp(1.7rem, 3.2vw, 2.3rem); max-inline-size: 22ch; }
  .vfllu7z > p { max-inline-size: 62ch; margin-block: .8rem 1.8rem; color: #d9d6f5; }
  .oaed { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
  .oaed a { display: grid; grid-template-columns: 84px 1fr; gap: .9rem; align-items: center; background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .16); border-radius: 14px; padding: .8rem; text-decoration: none; font-size: .86rem; color: #e8e5ff; }
  .oaed a:hover { background: rgba(255, 255, 255, .14); }
  .oaed picture { border-radius: 10px; overflow: hidden; background: #fff; }
  .oaed b { display: block; color: #fff; font-size: .95rem; margin-block-end: .25rem; line-height: 1.3; }
  .eqb9z4z { margin-block-start: 1.8rem; }
  .eqb9z4z img { border-radius: 14px; inline-size: 100%; }

  /* build notes — Solar Made (белая панель на фоне-текстуре) */
  .cuwh4 { background: var(--ply) repeating-linear-gradient(100deg, transparent 0 22px, rgba(160, 120, 60, .08) 22px 24px, transparent 24px 61px); padding: 3rem var(--gut); }
  .qtws { max-inline-size: var(--wrap); margin-inline: auto; background: #fff; padding: 2.2rem clamp(16px, 3vw, 3rem) 2.6rem; text-align: center; box-shadow: 0 2px 0 var(--ply-dark); }
  .qtws h2, .qtws h1 { font-style: italic; font-weight: 600; font-size: clamp(1.5rem, 2.6vw, 1.9rem); }
  .cxoj { display: inline-block; color: var(--blue); font-size: .9rem; letter-spacing: .12em; margin-block: .2rem 1.6rem; text-decoration: none; }
  .qtws ul { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.8rem; }
  .qtws li a { display: flex; flex-direction: column; align-items: center; gap: .45rem; text-decoration: none; }
  .qtws picture { aspect-ratio: 1.3; overflow: hidden; inline-size: 100%; margin-block-end: .4rem; }
  .qtws img { inline-size: 100%; block-size: 100%; object-fit: cover; }
  .qtws time { font-size: .78rem; letter-spacing: .14em; color: var(--mute); }
  .qtws span { font-weight: 700; letter-spacing: .06em; font-size: 1.02rem; line-height: 1.35; }
  .qtws em { font-style: normal; color: var(--blue); font-size: .9rem; letter-spacing: .1em; }
  .kgqx .bup9r { margin: .6rem auto 2rem; }
  .kgqx em { letter-spacing: 0; color: var(--mute); max-inline-size: 40ch; }

  /* SEO-сплиты — Home Science Tools */
  .u9rzb { padding: 3.4rem var(--gut); }
  .nfcv2jy { background: var(--sky); }
  .ygmitcq { max-inline-size: var(--wrap); margin-inline: auto; display: grid; grid-template-columns: 1fr 1.25fr; gap: 3rem; align-items: center; }
  .nfcv2jy .ygmitcq { grid-template-columns: 1.25fr 1fr; }
  .nfcv2jy figure { order: 2; }
  .u9rzb figure img { border-radius: 8px; inline-size: 100%; aspect-ratio: 1.25; object-fit: cover; }
  .u9rzb h2 { font-family: var(--text); font-weight: 400; font-size: clamp(1.6rem, 3vw, 2.2rem); color: var(--blue-deep); margin-block-end: 1rem; }
  .u9rzb p { color: #475069; margin-block-end: 1rem; line-height: 1.75; }
  .u9rzb .y8sb { margin-block-start: .5rem; }

  /* ряд гарантий — CircuitMess */
  .gwy528e { max-inline-size: var(--wrap); margin: 0 auto; padding: 3rem var(--gut) 1rem; }
  .gwy528e ul { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.4rem; text-align: center; }
  .gwy528e li { display: flex; flex-direction: column; align-items: center; gap: .25rem; font-size: .85rem; color: var(--mute); }
  .gwy528e b { color: var(--ink); text-transform: uppercase; font-size: .82rem; letter-spacing: .04em; margin-block-start: .6rem; }
  .gst4 { inline-size: 64px; block-size: 64px; border-radius: 50%; background: var(--blue-deep); color: #fff; display: grid; place-items: center; }
  .gst4 svg { inline-size: 30px; block-size: 30px; }

  /* FAQ — CircuitMess */
  .ltodgv { max-inline-size: var(--wrap); margin: 0 auto; padding: 3rem var(--gut) 3.2rem; display: grid; grid-template-columns: 1fr 2.2fr; gap: 2.4rem; align-items: start; }
  .ltodgv > h2 { font-size: clamp(1.5rem, 2.6vw, 1.9rem); }
  .o4efkbf details { border-block-start: 1px solid #b8bfcd; }
  .o4efkbf details:last-of-type { border-block-end: 1px solid #b8bfcd; }
  .o4efkbf summary { list-style: none; cursor: pointer; padding: 1rem 2.4rem 1rem 0; position: relative; font-weight: 600; }
  .o4efkbf summary::-webkit-details-marker { display: none; }
  .o4efkbf summary::after { content: ""; position: absolute; inset-inline-end: .4rem; inset-block-start: 1.25rem; inline-size: 10px; block-size: 10px; border-inline-end: 2.5px solid var(--ink); border-block-end: 2.5px solid var(--ink); rotate: 45deg; transition: rotate .2s; }
  .o4efkbf details[open] summary::after { rotate: -135deg; inset-block-start: 1.5rem; }
  .o4efkbf details p { padding-block-end: 1.1rem; color: #475069; }
}

@layer pages {
  /* коллекция — Solar Made */
  .vy93o { max-inline-size: var(--wrap); margin: 0 auto; padding: 1.4rem var(--gut) 3rem; }
  .e6w7wf { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: end; gap: 1rem 2rem; margin-block-end: 1.6rem; }
  .vy93o h1 { font-style: italic; font-weight: 600; font-size: clamp(1.8rem, 3.4vw, 2.5rem); }
  .bup9r { max-inline-size: 64ch; color: var(--mute); letter-spacing: .02em; margin-block-start: .5rem; }
  .uxn7sl { font-size: .8rem; letter-spacing: .14em; text-transform: uppercase; color: var(--blue); font-weight: 700; }
  .yy7yto { display: grid; grid-template-columns: repeat(4, 1fr); border-block-start: 1px solid var(--line); border-inline-start: 1px solid var(--line); }
  .s1om { display: flex; flex-direction: column; align-items: center; text-align: center; padding: 1.1rem 1rem 1.3rem; border-inline-end: 1px solid var(--line); border-block-end: 1px solid var(--line); }
  .x5vcx { display: flex; flex-direction: column; align-items: center; gap: .7rem; text-decoration: none; flex: 1; }
  .x5vcx picture { aspect-ratio: 1; inline-size: 100%; max-inline-size: 230px; }
  .x5vcx img { inline-size: 100%; block-size: 100%; object-fit: contain; }
  .vfz6 { font-weight: 700; letter-spacing: .05em; font-size: .95rem; line-height: 1.35; }
  .x5vcx:hover .vfz6 { color: var(--blue); }
  .xej1i { font-size: .78rem; color: var(--mute); margin-block: .5rem .2rem; }
  .oucu0 { font-family: var(--head); font-weight: 700; font-size: 1.25rem; color: var(--red); margin-block-end: .7rem; }
  .oucu0 s { font-size: .8rem; color: var(--mute); font-weight: 500; }
  .x4pc { max-inline-size: 240px; }
  .l7w6 { max-inline-size: 76ch; margin-block-start: 2.2rem; }
  .l7w6 p { margin-block-end: 1rem; color: #3d4660; }
  .bvta52 { margin-block-start: 2rem; padding-block-start: 1.6rem; border-block-start: 1px solid var(--line); }
  .bvta52 h2 { font-size: 1.2rem; margin-block-end: .8rem; }
  .bvta52 ul, .wy3v { display: flex; flex-wrap: wrap; gap: .6rem; }
  .bvta52 a, .wy3v a { display: inline-block; border: 2px solid var(--blue); color: var(--blue); border-radius: 999px; padding: .45rem 1.1rem; text-decoration: none; font-weight: 600; font-size: .92rem; }
  .bvta52 a:hover, .wy3v a:hover { background: var(--blue); color: #fff; }
  .i7ii { position: absolute; opacity: 0; pointer-events: none; }
  .dumy96 { display: flex; flex-wrap: wrap; gap: .5rem; margin-block-end: 1.4rem; }
  .dumy96 label { cursor: pointer; border: 2px solid var(--line); border-radius: 8px; padding: .5rem 1rem; font-weight: 600; font-size: .92rem; }
  .dumy96 small { color: inherit; opacity: .7; margin-inline-start: .2rem; }

  /* карточка товара */
  .kwdr { max-inline-size: var(--wrap); margin: 0 auto; padding: 1.4rem var(--gut) 3rem; }
  .yzwspp { display: grid; grid-template-columns: 1.05fr 1fr; gap: clamp(1.6rem, 4vw, 3.4rem); align-items: start; }
  .n5df22 { position: absolute; opacity: 0; pointer-events: none; }
  .uymtc1c { border: 1px solid var(--line); border-radius: 14px; overflow: hidden; background: #fff; }
  .v6z78l { display: none; }
  .v6z78l img { inline-size: 100%; aspect-ratio: 1; object-fit: contain; }
  .msdf { display: grid; grid-template-columns: repeat(6, 1fr); gap: .5rem; margin-block-start: .6rem; }
  .ubaps { cursor: pointer; border: 2px solid var(--line); border-radius: 8px; overflow: hidden; background: #fff; }
  .ubaps img { aspect-ratio: 1; object-fit: cover; inline-size: 100%; }
  .xzz7woy { display: inline-block; background: var(--yellow); font-size: .74rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; border-radius: 999px; padding: .25rem .8rem; }
  .ghactx0 h1 { font-size: clamp(1.7rem, 3vw, 2.35rem); margin-block: .7rem .6rem; }
  .grfoz { display: flex; flex-wrap: wrap; align-items: center; gap: .4rem; color: var(--mute); font-size: .95rem; }
  .grfoz .m1h6 { font-size: 1.15rem; }
  .grfoz b { color: var(--ink); }
  .me2m2q1 { font-family: var(--head); font-weight: 700; font-size: 2.3rem; color: var(--red); margin-block: .6rem .9rem; display: flex; align-items: baseline; gap: .7rem; flex-wrap: wrap; }
  .me2m2q1 s { font-size: 1.05rem; color: var(--mute); font-weight: 500; }
  .me2m2q1 em { font-style: normal; font-size: .82rem; background: var(--green); color: #fff; border-radius: 6px; padding: .15rem .55rem; font-family: var(--text); }
  .a9slw { max-inline-size: 360px; }
  .a5ef { display: grid; grid-template-columns: 1fr 1fr; gap: 0; margin-block: 1.4rem; border: 1px solid var(--line); border-radius: 12px; overflow: hidden; }
  .a5ef div { padding: .75rem 1rem; border-block-end: 1px solid var(--line); }
  .a5ef div:nth-child(odd) { border-inline-end: 1px solid var(--line); }
  .a5ef div:nth-last-child(-n+2) { border-block-end: 0; }
  .a5ef dt { font-size: .72rem; letter-spacing: .14em; text-transform: uppercase; color: var(--mute); font-weight: 700; }
  .a5ef dd { font-weight: 600; }
  .a5ef a { color: var(--blue); }
  .s1uvb { font-size: 1.08rem; color: #33405f; }
  .isztb { display: grid; grid-template-columns: 1.2fr 1fr; gap: 2.4rem; margin-block-start: 3rem; padding-block-start: 2.4rem; border-block-start: 4px solid var(--ply-dark); }
  .isztb h2 { font-size: 1.5rem; margin-block-end: 1rem; }
  .ih0wr p { margin-block-end: 1rem; color: #3d4660; }
  .d4e7 { background: var(--blue-soft); border-radius: 16px; padding: 1.6rem; }
  .d4e7 li { position: relative; padding-inline-start: 2rem; margin-block-end: .8rem; }
  .d4e7 li::before { content: ""; position: absolute; inset-inline-start: 0; inset-block-start: .25rem; inline-size: 1.2rem; block-size: 1.2rem; border-radius: 50%; background: var(--green) no-repeat center / 70% url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2 6.5l2.5 2.5L10 3' stroke='white' stroke-width='2' fill='none'/%3E%3C/svg%3E"); }
  .d4e7 .e0g09h { margin-block-start: 1.2rem; }
  .pvrgb { margin-block-start: 3rem; }
  .pvrgb h2 { font-size: 1.6rem; margin-block-end: 1.2rem; }

  /* build note */
  .pgxm9 { max-inline-size: 860px; margin: 0 auto; padding: 1.4rem var(--gut) 3rem; }
  .ab0xri { font-size: .8rem; letter-spacing: .14em; text-transform: uppercase; color: var(--blue); font-weight: 700; }
  .rv0kei h1 { font-size: clamp(1.9rem, 4vw, 2.7rem); margin-block: .5rem .9rem; }
  .pbsx1f0 { font-size: 1.15rem; color: #33405f; margin-block-end: 1.6rem; }
  .ft0qyy h2 { font-size: 1.45rem; margin-block: 2rem .7rem; }
  .ft0qyy p { margin-block-end: 1rem; color: #3d4660; line-height: 1.75; }
  .tbb5f { margin-block-start: 2.6rem; }
  .tbb5f h2 { font-size: 1.4rem; margin-block-end: 1rem; }
  .i5od2e { display: grid; grid-template-columns: 200px 1fr; gap: 1.4rem; align-items: center; border: 2px solid var(--ink); border-radius: 14px; box-shadow: 5px 6px 0 rgba(11, 23, 58, .2); padding: 1rem; margin-block-end: 1.2rem; background: #fff; }
  .qfvl { font-size: .72rem; letter-spacing: .14em; text-transform: uppercase; color: var(--blue); font-weight: 700; }
  .i5od2e h3 { font-size: 1.2rem; margin-block: .2rem .4rem; }
  .i5od2e h3 a { text-decoration: none; }
  .dfdj > p { font-size: .95rem; color: #475069; margin-block-end: .5rem; }
  .i5od2e .enbtng b { color: var(--red); font-family: var(--head); font-size: 1.1rem; margin-inline-start: .4rem; }
  .nv0u4 { max-inline-size: 280px; margin-block-start: .4rem; }

  /* сервисные */
  .c0it7 { max-inline-size: 960px; margin: 0 auto; padding: 1.4rem var(--gut) 3rem; }
  .rf04 { margin-block-end: 2rem; padding-block-end: 1.4rem; border-block-end: 4px solid var(--red); }
  .rf04 h1 { font-size: clamp(1.9rem, 4vw, 2.7rem); margin-block-end: .7rem; }
  .rf04 p { font-size: 1.1rem; color: #33405f; max-inline-size: 66ch; }
  .c0it7 > p { margin-block-end: 1rem; color: #3d4660; }
  .c0it7 a { color: var(--blue); }
  .jm1j9 { font-size: 1.4rem; margin-block: 2rem 1rem; }
  .pj2eqqh { font-size: .88rem; color: var(--mute); }
  .ltjjm69 li { display: grid; grid-template-columns: 70px 1fr; gap: 1rem; padding-block: 1.1rem; border-block-end: 1px dashed var(--line); }
  .ukixbz { font-family: var(--head); font-weight: 700; font-size: 2rem; color: var(--red); line-height: 1; }
  .ltjjm69 h2 { font-size: 1.2rem; margin-block-end: .3rem; }
  .ltjjm69 p { color: #475069; }
  .ay3seo { margin-block: 2rem; }
  .ay3seo img { border-radius: 14px; }
  .xafhn3 { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem; }
  .xafhn3 div { background: var(--ply); border-radius: 12px; padding: 1rem 1.2rem; }
  .xafhn3 dt { font-family: var(--head); font-weight: 700; font-size: 1.1rem; }
  .h3mip3 { display: grid; grid-template-columns: 1fr 1.4fr; gap: 2rem; align-items: start; }
  .d2czr { background: var(--blue); color: #fff; border-radius: 16px; padding: 1.6rem; }
  .d2czr h2 { font-size: 1.3rem; margin-block-end: .8rem; }
  .d2czr p { margin-block-end: .9rem; }
  .d2czr .pj2eqqh { color: #d8e1fb; }
  .k38znu { color: #fff !important; font-weight: 700; font-size: 1.08rem; word-break: break-all; }
  .kdtjo4 { inline-size: 100%; font-size: .95rem; }
  .kdtjo4 th, .kdtjo4 td { text-align: start; vertical-align: top; padding: .8rem .9rem; border-block-end: 1px solid var(--line); }
  .kdtjo4 thead th { background: var(--ink); color: #fff; font-size: .78rem; letter-spacing: .1em; text-transform: uppercase; }
  .kdtjo4 tbody th { font-weight: 700; inline-size: 30%; }
  .h3mip3 .jm1j9 { margin-block-start: 0; }
  .yxiwfti { counter-reset: r; display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; }
  .yxiwfti li { counter-increment: r; position: relative; background: var(--blue-soft); border-radius: 14px; padding: 3.2rem 1rem 1.1rem; }
  .yxiwfti li::before { content: counter(r); position: absolute; inset-block-start: .9rem; inset-inline-start: 1rem; inline-size: 2rem; block-size: 2rem; border-radius: 50%; background: var(--red); color: #fff; display: grid; place-items: center; font-weight: 700; }
  .yxiwfti b { display: block; font-family: var(--head); font-size: 1.05rem; margin-block-end: .3rem; }
  .yxiwfti p { font-size: .92rem; color: #475069; }
  .a7hd ul { display: grid; grid-template-columns: repeat(2, 1fr); gap: .5rem 1.4rem; margin-block-end: 1rem; }
  .a7hd li::before { content: "▪ "; color: var(--green); }
  .k6ta { background: var(--ply); border-inline-start: 5px solid var(--red); border-radius: 8px; padding: 1rem 1.2rem; }
  .fag46a6 tbody th { inline-size: 24%; }
  .mkgb { display: grid; grid-template-columns: 1fr 1fr; gap: 1.2rem; margin-block-end: 1.8rem; }
  .j7v2aa { border-radius: 16px; padding: 1.4rem; }
  .j7v2aa h2 { font-size: 1.2rem; margin-block-end: .7rem; }
  .j7v2aa li { margin-block-end: .5rem; padding-inline-start: 1.4rem; position: relative; }
  .nm7sd { background: var(--blue-soft); }
  .nm7sd li::before { content: "+"; position: absolute; inset-inline-start: 0; color: var(--green); font-weight: 700; }
  .a9kve { background: #fdecee; }
  .a9kve li::before { content: "×"; position: absolute; inset-inline-start: 0; color: var(--red); font-weight: 700; }
  .vsftt3t { counter-reset: q; }
  .vsftt3t li { counter-increment: q; display: grid; grid-template-columns: 56px 1fr; column-gap: 1rem; padding-block: 1rem; border-block-end: 1px solid var(--line); }
  .vsftt3t li::before { content: counter(q); grid-row: span 2; inline-size: 44px; block-size: 44px; border: 3px solid var(--ink); border-radius: 10px; display: grid; place-items: center; font-family: var(--head); font-weight: 700; font-size: 1.2rem; }
  .vsftt3t h2 { font-size: 1.1rem; }
  .vsftt3t p { color: #475069; }
  .lrwcq8 ul { display: flex; flex-wrap: wrap; gap: .5rem; margin-block-end: 1.6rem; }
  .lrwcq8 a { display: inline-block; background: var(--ply); border-radius: 8px; padding: .45rem 1rem; text-decoration: none; font-weight: 600; color: var(--ink) !important; }
  .qbynv { margin-block-end: 1.8rem; }
  .qbynv h2 { font-size: 1.25rem; margin-block-end: .5rem; color: var(--blue); }
  .ws3j { max-inline-size: 760px; margin: 0 auto; padding: 4rem var(--gut); text-align: center; }
  .w5jmd2 { font-family: var(--head); font-weight: 700; font-size: clamp(5rem, 16vw, 9rem); line-height: 1; color: var(--ply-dark); }
  .ws3j h1 { font-size: 2rem; margin-block: .6rem; }
  .ws3j p { color: var(--mute); margin-block-end: 1.4rem; }
  .wy3v { justify-content: center; }

  /* адаптив */
  @media (max-width: 1060px) {
    .i108 { display: none; }
    .pvy616 { display: block; position: fixed; inset-inline: 0; inset-block-end: 0; z-index: 50; background: rgba(255, 255, 255, .96); box-shadow: 0 -4px 16px rgba(11, 23, 58, .15); padding: .5rem 16px calc(.5rem + env(safe-area-inset-bottom)); }
    .bjagqdw { max-inline-size: 300px; margin-inline: auto; }
    body { padding-block-end: 84px; }
    .vf0a { grid-template-columns: repeat(3, 1fr); }
    .ww6ayxs { grid-template-columns: repeat(2, 1fr); }
    .qm2de { grid-template-columns: 1fr 1fr; }
    .z1kr { grid-column: 1 / -1; text-align: center; padding: 0; }
    .z1kr::before, .z1kr::after { display: none; }
    .oe78evp { grid-template-columns: 1fr; }
    .oaed { grid-template-columns: repeat(2, 1fr); }
    .e54in6 { grid-template-columns: 1fr 1fr; }
    .yy7yto { grid-template-columns: repeat(3, 1fr); }
    .yxiwfti { grid-template-columns: repeat(2, 1fr); }
  }
  @media (max-width: 860px) {
    .v9cwup { display: block; }
    .p0cxgby { padding-block-end: .7rem; }
    .kf9yfo1 { display: none; }
    .w97h:checked ~ .kf9yfo1 { display: block; }
    .kf9yfo1 ul { flex-direction: column; align-items: stretch; gap: 0; padding-block: .6rem 0; }
    .kf9yfo1 a { display: block; padding: .8rem .2rem; border-block-end: 1px solid var(--line); }
    .fpppk6n { clip-path: polygon(0 0, 100% 0, 100% 92%, 0 100%); padding-block-end: 5rem; }
    .kpy1h1, .ygmitcq, .nfcv2jy .ygmitcq, .ltodgv, .yzwspp, .isztb, .h3mip3 { grid-template-columns: 1fr; }
    .nfcv2jy figure { order: 0; }
    .yn9y { max-inline-size: 300px; margin-inline: auto; }
    .v0ftx5, .qtws ul { grid-template-columns: 1fr; }
    .gwy528e ul { grid-template-columns: repeat(2, 1fr); }
    .a5ef { grid-template-columns: 1fr 1fr; }
  }
  @media (max-width: 560px) {
    body { font-size: 16px; }
    .vf0a { grid-template-columns: repeat(2, 1fr); gap: .8rem; }
    .ww6ayxs { grid-template-columns: 1fr; }
    .qm2de { grid-template-columns: 1fr; }
    .oe78evp ul { grid-template-columns: 1fr; }
    .oe78evp a { aspect-ratio: 1.6; }
    .oaed { grid-template-columns: 1fr; }
    .yy7yto { grid-template-columns: repeat(2, 1fr); }
    .s1om { padding: .8rem .5rem 1rem; }
    .vfz6 { font-size: .85rem; }
    .e54in6 { grid-template-columns: 1fr; }
    .s6ddtwo { flex-direction: column; align-items: flex-start; }
    .i5od2e { grid-template-columns: 1fr; }
    .dgpj { max-inline-size: 220px; }
    .yxiwfti, .xafhn3, .mkgb, .a7hd ul { grid-template-columns: 1fr; }
    .msdf { grid-template-columns: repeat(6, 1fr); gap: .3rem; }
    .kdtjo4 thead { display: none; }
    .kdtjo4 tr { display: block; border-block-end: 2px solid var(--line); padding-block: .5rem; }
    .kdtjo4 th, .kdtjo4 td { display: block; inline-size: auto !important; border: 0; padding: .3rem .2rem; }
    .caqae .e0g09h { inline-size: 270px; }
  }
}
.fn9vw:nth-of-type(1):checked~.na5iv>.qm2de:nth-child(1){display:grid}.fn9vw:nth-of-type(1):checked~.ard7j label:nth-child(1){color:var(--ink);border-color:var(--green)}.fn9vw:nth-of-type(1):focus-visible~.ard7j label:nth-child(1){outline:3px solid var(--blue);outline-offset:3px}.fn9vw:nth-of-type(2):checked~.na5iv>.qm2de:nth-child(2){display:grid}.fn9vw:nth-of-type(2):checked~.ard7j label:nth-child(2){color:var(--ink);border-color:var(--green)}.fn9vw:nth-of-type(2):focus-visible~.ard7j label:nth-child(2){outline:3px solid var(--blue);outline-offset:3px}.fn9vw:nth-of-type(3):checked~.na5iv>.qm2de:nth-child(3){display:grid}.fn9vw:nth-of-type(3):checked~.ard7j label:nth-child(3){color:var(--ink);border-color:var(--green)}.fn9vw:nth-of-type(3):focus-visible~.ard7j label:nth-child(3){outline:3px solid var(--blue);outline-offset:3px}.fn9vw:nth-of-type(4):checked~.na5iv>.qm2de:nth-child(4){display:grid}.fn9vw:nth-of-type(4):checked~.ard7j label:nth-child(4){color:var(--ink);border-color:var(--green)}.fn9vw:nth-of-type(4):focus-visible~.ard7j label:nth-child(4){outline:3px solid var(--blue);outline-offset:3px}.fn9vw:nth-of-type(5):checked~.na5iv>.qm2de:nth-child(5){display:grid}.fn9vw:nth-of-type(5):checked~.ard7j label:nth-child(5){color:var(--ink);border-color:var(--green)}.fn9vw:nth-of-type(5):focus-visible~.ard7j label:nth-child(5){outline:3px solid var(--blue);outline-offset:3px}.n5df22:nth-of-type(1):checked~.uymtc1c>.v6z78l:nth-child(1){display:block}.n5df22:nth-of-type(1):checked~.msdf .ubaps:nth-child(1){border-color:var(--red)}.n5df22:nth-of-type(1):focus-visible~.msdf .ubaps:nth-child(1){outline:3px solid var(--blue)}.n5df22:nth-of-type(2):checked~.uymtc1c>.v6z78l:nth-child(2){display:block}.n5df22:nth-of-type(2):checked~.msdf .ubaps:nth-child(2){border-color:var(--red)}.n5df22:nth-of-type(2):focus-visible~.msdf .ubaps:nth-child(2){outline:3px solid var(--blue)}.n5df22:nth-of-type(3):checked~.uymtc1c>.v6z78l:nth-child(3){display:block}.n5df22:nth-of-type(3):checked~.msdf .ubaps:nth-child(3){border-color:var(--red)}.n5df22:nth-of-type(3):focus-visible~.msdf .ubaps:nth-child(3){outline:3px solid var(--blue)}.n5df22:nth-of-type(4):checked~.uymtc1c>.v6z78l:nth-child(4){display:block}.n5df22:nth-of-type(4):checked~.msdf .ubaps:nth-child(4){border-color:var(--red)}.n5df22:nth-of-type(4):focus-visible~.msdf .ubaps:nth-child(4){outline:3px solid var(--blue)}.n5df22:nth-of-type(5):checked~.uymtc1c>.v6z78l:nth-child(5){display:block}.n5df22:nth-of-type(5):checked~.msdf .ubaps:nth-child(5){border-color:var(--red)}.n5df22:nth-of-type(5):focus-visible~.msdf .ubaps:nth-child(5){outline:3px solid var(--blue)}.n5df22:nth-of-type(6):checked~.uymtc1c>.v6z78l:nth-child(6){display:block}.n5df22:nth-of-type(6):checked~.msdf .ubaps:nth-child(6){border-color:var(--red)}.n5df22:nth-of-type(6):focus-visible~.msdf .ubaps:nth-child(6){outline:3px solid var(--blue)}#f-speaker-kits:checked~.yy7yto .s1om:not([data-c=speaker-kits]){display:none}#f-speaker-kits:checked~.dumy96 label[for=f-speaker-kits]{background:var(--blue);color:#fff;border-color:var(--blue)}#f-speaker-kits:focus-visible~.dumy96 label[for=f-speaker-kits]{outline:3px solid var(--green)}#f-radio-kits:checked~.yy7yto .s1om:not([data-c=radio-kits]){display:none}#f-radio-kits:checked~.dumy96 label[for=f-radio-kits]{background:var(--blue);color:#fff;border-color:var(--blue)}#f-radio-kits:focus-visible~.dumy96 label[for=f-radio-kits]{outline:3px solid var(--green)}#f-solar-kits:checked~.yy7yto .s1om:not([data-c=solar-kits]){display:none}#f-solar-kits:checked~.dumy96 label[for=f-solar-kits]{background:var(--blue);color:#fff;border-color:var(--blue)}#f-solar-kits:focus-visible~.dumy96 label[for=f-solar-kits]{outline:3px solid var(--green)}#f-gift-sets:checked~.yy7yto .s1om:not([data-c=gift-sets]){display:none}#f-gift-sets:checked~.dumy96 label[for=f-gift-sets]{background:var(--blue);color:#fff;border-color:var(--blue)}#f-gift-sets:focus-visible~.dumy96 label[for=f-gift-sets]{outline:3px solid var(--green)}#f-all:checked~.dumy96 label[for=f-all]{background:var(--blue);color:#fff;border-color:var(--blue)}#f-all:focus-visible~.dumy96 label[for=f-all]{outline:3px solid var(--green)}