#home-concept { --concept-ink:#092340; --concept-deep:#071d34; --concept-yellow:#ffd43b; }
#home-concept .concept-hero { display:grid; grid-template-columns: .96fr 1.04fr; min-height:465px; position:relative; isolation:isolate; overflow:hidden; margin-top:22px; border-radius:24px; background:var(--concept-deep); color:white; }
.concept-copy { position:relative; z-index:1; align-self:center; padding:clamp(30px,3.3vw,48px) 10px clamp(30px,3.3vw,48px) clamp(32px,4.6vw,68px); }
.concept-kicker { display:flex; align-items:center; gap:10px; margin:0 0 18px; color:#dce9f6; font-size:12px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.concept-kicker::before { content:""; width:27px; height:3px; border-radius:3px; background:var(--concept-yellow); }
.concept-copy h1 { margin:0; color:white; font-size:clamp(45px,4.3vw,64px); font-weight:800; line-height:1.01; letter-spacing:-.055em; }
.concept-copy h1 span { display:block; margin-top:10px; color:var(--concept-yellow); font-size:.61em; line-height:1.1; letter-spacing:-.037em; }
.concept-lead { max-width:45ch; margin:18px 0 24px; color:#d9e5f2; font-size:16px; line-height:1.55; }
.concept-actions { display:flex; align-items:center; flex-wrap:wrap; gap:12px; }
.concept-btn { display:inline-flex; align-items:center; justify-content:center; gap:12px; min-height:48px; padding:10px 18px; border:1px solid transparent; border-radius:9px; font-size:14px; font-weight:800; text-decoration:none; }
.concept-btn-primary { background:var(--concept-yellow); color:#112640; }
.concept-btn-primary:hover { background:#ffe278; color:#112640; }
.concept-btn-outline { color:white; border-color:#8fa8bf; }
.concept-btn-outline:hover { background:#edf5ff; color:#112640; }
.concept-image { position:relative; min-width:0; margin:0; }
.concept-image img { display:block; width:100%; height:100%; position:absolute; inset:0; object-fit:cover; object-position:61% center; }
.concept-image::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#071d34 0%,transparent 33%),linear-gradient(0deg,#071d3470,transparent 31%); }
.concept-local { display:flex; flex-wrap:wrap; align-items:center; gap:5px 12px; margin:23px 0 0; color:#d9e5f2; font-size:12px; font-weight:700; }
.concept-local a { color:inherit; text-underline-offset:3px; }
.concept-local .concept-divider { color:var(--concept-yellow); }
.concept-shortcuts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; padding:0; margin-top:13px; margin-bottom:0; }
.concept-shortcut { display:flex; align-items:center; gap:10px; min-height:63px; padding:10px 14px; border:1px solid #dbe6f2; border-radius:12px; background:#f0f5fb; color:var(--concept-ink); font-size:13px; font-weight:800; line-height:1.25; text-decoration:none; }
.concept-shortcut:hover { background:#e0edfb; color:#092340; }
.concept-shortcut svg { width:23px; height:23px; flex:0 0 23px; fill:none; stroke:currentColor; stroke-width:1.65; stroke-linecap:round; stroke-linejoin:round; }
#home-concept #solutions { padding-top:clamp(35px,4.5vw,60px); padding-bottom:30px; }
#home-concept #solutions .section-heading { margin-bottom:18px; }
#home-concept #solutions .section-heading h2 { font-size:clamp(25px,3vw,34px); }
.concept-category-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.concept-category-link { display:grid; grid-template-rows:156px 1fr; height:100%; min-width:0; overflow:hidden; border:1px solid #dce6ef; border-radius:14px; background:#fff; color:var(--concept-ink); text-decoration:none; }
.concept-category-link:hover { border-color:#86a7c9; color:var(--concept-ink); }
.concept-category-link:focus-visible, .concept-category-sub summary:focus-visible { outline:2px solid #1b61a4; outline-offset:3px; }
.concept-category-copy { grid-row:2; padding:9px 12px 11px; }
.concept-category-copy h3 { margin:0; color:inherit; font-size:16px; line-height:1.25; font-weight:750; letter-spacing:normal; overflow-wrap:anywhere; }
.concept-category-copy span { display:block; margin-top:4px; color:#4a6076; font-size:12px; line-height:1.25; }
.concept-category-photo { grid-row:1; display:grid; place-items:center; min-width:0; overflow:hidden; background:radial-gradient(ellipse at 50% 38%,#f8fbff,#e5edf7); border-bottom:1px solid #e5edf6; }
.concept-category-photo img { display:block; width:100%; height:150px; object-fit:contain; mix-blend-mode:multiply; }
.concept-category-photo-wide img { transform:scale(1.3); }
.concept-category-sub { margin-top:12px; color:#304c68; font-size:13px; }
.concept-category-sub summary { width:fit-content; padding:7px 4px; cursor:pointer; font-weight:700; }
.concept-category-sub > div { display:flex; flex-wrap:wrap; gap:8px 18px; padding:7px 4px; }
.concept-category-sub a { color:inherit; text-underline-offset:3px; }
@media (max-width:1100px) {
  .concept-category-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .concept-category-link { grid-template-rows:143px 1fr; }
  .concept-category-photo img { height:137px; }
}
@media (max-width:680px) {
  .concept-category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
  .concept-category-link { grid-template-rows:123px 1fr; }
  .concept-category-copy { padding:8px 9px 9px; }
  .concept-category-copy h3 { font-size:14px; }
  .concept-category-copy span { margin-top:3px; }
  .concept-category-photo img { height:118px; }
}
#home-concept #solutions, #home-concept #contacts, #home-concept #catalog { scroll-margin-top:150px; }
.concept-brand-section { padding-block:26px 14px; }
.concept-brand-section .section-heading { margin-bottom:18px; }
.concept-brand-section h2 { font-size:clamp(26px,3.2vw,42px); }
.concept-brands { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.concept-brand-card { min-height:164px; display:grid; grid-template-columns:minmax(0,1fr) minmax(90px,.66fr); align-items:center; gap:12px; padding:20px; border:1px solid #d8e6f4; border-radius:18px; background:#eef5ff; color:var(--concept-ink); text-decoration:none; }
.concept-brand-card:nth-child(2) { background:#f1f4f7; }
.concept-brand-card:hover { border-color:#83a8d2; color:var(--concept-ink); }
.concept-brand-card h3 { margin:0; font-size:clamp(22px,3vw,37px); font-weight:800; letter-spacing:-.03em; }
.concept-brand-card p { margin:5px 0 12px; color:#425c77; font-size:13px; }
.concept-brand-card span { font-size:13px; font-weight:800; }
.concept-brand-card img { width:100%; height:128px; object-fit:contain; mix-blend-mode:multiply; }
.concept-header-icon { width:18px; height:18px; flex:0 0 18px; fill:none; stroke:currentColor; stroke-width:1.75; stroke-linecap:round; stroke-linejoin:round; vertical-align:middle; }
.header-search .concept-header-icon { color:white; }
.site-header .concept-header-phone { order:2; display:inline-flex; flex:none; align-items:center; justify-content:center; gap:8px; min-height:46px; padding:0 13px; border-radius:12px; background:#ffd43b; color:#092340; font-size:17px; font-weight:800; line-height:1; white-space:nowrap; text-decoration:none; }
.site-header .concept-header-phone:hover { background:#ffe276; color:#092340; }
.site-header .concept-header-phone:focus-visible { outline:3px solid #2276cd; outline-offset:3px; }
@media (max-width:960px) {
  .site-header .concept-header-phone { order:1; margin-inline-start:auto; min-height:44px; padding-inline:9px; gap:5px; font-size:13px; }
  .site-header .concept-header-phone .concept-header-icon { width:15px; height:15px; flex-basis:15px; }
  .site-header .mobile-nav { margin-inline-start:0; }
}
@media (max-width:420px) {
  header.site-header { column-gap:7px; }
  .site-header .brand { gap:6px; }
}
@media (max-width:360px) {
  header.site-header { display:grid; grid-template-columns:auto minmax(0,1fr) auto; }
  .site-header .concept-header-phone { justify-self:end; margin-inline-start:0; }
  .site-header .header-search, .site-header .shop-actions { grid-column:1 / -1; }
  .site-header .mobile-nav > summary { min-width:44px; justify-content:center; padding-inline:8px; }
  .site-header .mobile-nav > summary > span:last-child { display:none; }
}
#home-concept a:focus-visible { outline:3px solid #2276cd; outline-offset:3px; }
@media(max-width:900px) {
  #home-concept .concept-hero { min-height:420px; }
  .concept-copy { padding-left:32px; }
  .concept-copy h1 { font-size:clamp(38px,5.4vw,51px); }
}
@media(max-width:680px) {
  #home-concept .concept-hero { grid-template-columns:minmax(0,1fr); min-height:0; margin-top:12px; border-radius:17px; }
  .concept-copy { padding:25px 20px 8px; }
  .concept-kicker { font-size:10px; margin-bottom:13px; }
  .concept-copy h1 { font-size:clamp(33px,8.8vw,52px); }
  .concept-copy h1 span { margin-top:7px; }
  .concept-lead { font-size:14px; margin:13px 0 18px; }
  .concept-actions { gap:8px; }
  .concept-btn { min-height:44px; padding-inline:10px; font-size:12px; gap:6px; }
  .concept-local { margin-top:13px; }
  .concept-image { aspect-ratio:1.65; }
  .concept-image img { object-position:center 56%; }
  .concept-image::after { background:linear-gradient(180deg,#071d34,transparent 30%); }
  .concept-shortcuts { grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; }
  .concept-shortcut { min-height:53px; padding:8px 9px; font-size:11px; gap:7px; }
  .concept-shortcut svg { width:19px; height:19px; flex-basis:19px; }
  .concept-brands { grid-template-columns:minmax(0,1fr); gap:10px; }
  .concept-brand-card { padding:14px; min-height:126px; }
  .concept-brand-card img { height:104px; }
}
