.home-page {
  --home-bg: #101317;
  --home-surface: #171c22;
  --home-surface-raised: #1c232b;
  --home-line: rgba(190, 207, 220, .13);
  --home-blue: #91b9d2;
  --home-blue-bright: #b2d0e2;
  background: var(--home-bg);
  color: #edf1f4;
}

.home-page .wrap { width: min(1220px, calc(100% - 64px)); }
.home-header { background: rgba(16, 19, 23, .88); backdrop-filter: blur(18px); border-bottom-color: var(--home-line); }
.home-header .nav { min-height: 76px; }
.home-header .brand { font-size: 1.02rem; letter-spacing: .02em; }
.home-header .brand span { color: var(--home-blue); }
.home-header .nav-links { gap: 30px; color: #b5bec6; }
.home-header .nav-links a { transition: color .2s ease; }
.home-header .nav-links a:hover { color: #fff; }
.home-header .nav-links a.home-nav-cta { display: inline-flex; align-items: center; gap: 14px; padding: 8px 13px; border: 1px solid rgba(145, 185, 210, .38); border-radius: 5px; color: #eaf3f8; }
.home-header .nav-links a.home-nav-cta span { color: var(--home-blue); }

.home-hero { position: relative; overflow: hidden; min-height: 510px; display: flex; align-items: center; border-bottom: 1px solid var(--home-line); background: radial-gradient(ellipse at 77% 48%, rgba(53, 88, 111, .22), transparent 39%), linear-gradient(110deg, #101317 20%, #12171c 100%); }
.home-hero__inner { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(280px, .9fr); align-items: center; gap: 48px; padding-top: 58px; padding-bottom: 68px; }
.home-hero__copy { max-width: 660px; }
.home-eyebrow { display: flex; align-items: center; gap: 10px; color: #a7c4d6; font-size: .72rem; letter-spacing: .16em; }
.home-eyebrow > span { width: 25px; height: 1px; background: var(--home-blue); }
.home-hero h1 { max-width: 760px; margin: 22px 0 17px; color: #f3f5f6; font-size: clamp(2.2rem, 3.25vw, 2.65rem); font-weight: 650; letter-spacing: -.055em; line-height: 1.28; }
.home-hero h1 span { color: #a9c9dd; }
.home-hero h1 .home-hero__title-first { color: #f3f5f6; white-space: nowrap; }
.home-hero__copy > p { max-width: 560px; margin: 0; color: #aeb8c1; font-size: 1rem; line-height: 2; }
.home-hero__actions { gap: 12px; margin-top: 28px; }
.home-hero__actions .btn { min-height: 48px; gap: 12px; padding: 10px 19px; border-radius: 5px; }
.home-hero__actions .btn.primary { background: #a2c5da; border-color: #a2c5da; color: #101820; }
.home-hero__actions .btn.primary:hover { background: #c0d9e7; }
.home-hero__actions .btn.ghost { border-color: rgba(196, 211, 223, .25); color: #e1e8ed; }
.home-hero__note { display: flex; align-items: center; gap: 9px; margin-top: 25px; color: #7f8c97; font-size: .8rem; letter-spacing: .02em; }
.home-status-dot { width: 6px; height: 6px; border-radius: 50%; background: #88b9a7; box-shadow: 0 0 0 4px rgba(136, 185, 167, .1); }
.home-hero__art { position: relative; min-height: 335px; display: grid; place-items: center; isolation: isolate; }
.home-hero__art::before { content: ""; position: absolute; width: min(31vw, 390px); aspect-ratio: 1; border-radius: 50%; background: radial-gradient(circle, rgba(113, 161, 190, .13), rgba(58, 87, 107, .07) 43%, transparent 72%); filter: blur(4px); }
.home-orbit { position: absolute; border: 1px solid rgba(160, 191, 211, .15); border-radius: 50%; transform: rotate(-22deg); }
.home-orbit--outer { width: min(35vw, 420px); aspect-ratio: 1.48; }
.home-orbit--inner { width: min(26vw, 320px); aspect-ratio: 1.48; border-color: rgba(160, 191, 211, .1); transform: rotate(32deg); }
.home-hero__monogram { position: relative; color: rgba(220, 233, 241, .88); font-size: clamp(1.8rem, 4.5vw, 4.5rem); font-weight: 650; letter-spacing: -.07em; text-shadow: 0 18px 60px rgba(103, 153, 184, .15); }
.home-hero__monogram span { color: rgba(145, 185, 210, .64); font-size: .55em; font-weight: 400; }
.home-hero__art-caption { position: absolute; right: 4%; bottom: 8%; display: grid; gap: 6px; text-align: right; }
.home-hero__art-caption span { color: #8396a4; font-size: .62rem; letter-spacing: .18em; }
.home-hero__art-caption b { color: #cad6de; font-size: .75rem; font-weight: 600; letter-spacing: .12em; }
.home-hero__glow { position: absolute; width: 420px; height: 420px; top: -300px; left: -220px; border-radius: 50%; background: rgba(68, 112, 139, .13); filter: blur(90px); }
.home-hero__bottom-line { position: absolute; bottom: 0; left: 50%; width: min(1220px, calc(100% - 64px)); height: 1px; transform: translateX(-50%); background: linear-gradient(90deg, transparent, rgba(151, 188, 210, .32), transparent); }

.home-page .section { padding: 78px 0; }
.home-catalog { background: #12161b; }
.home-section-head { align-items: end; margin-bottom: 28px; }
.home-section-head .eyebrow { margin-bottom: 10px; color: #8eacc0; font-size: .69rem; letter-spacing: .15em; }
.home-section-head h2 { color: #edf1f4; font-size: clamp(1.55rem, 2.5vw, 2rem); letter-spacing: -.025em; }
.home-section-head p { margin: 9px 0 0; color: #919da7; font-size: .91rem; }
.home-text-link { display: inline-flex; flex: none; align-items: center; gap: 14px; color: #bed0dc; font-size: .85rem; transition: color .2s ease; }
.home-text-link span { color: var(--home-blue); transition: transform .2s ease; }
.home-text-link:hover { color: #fff; }
.home-text-link:hover span { transform: translate(2px, -2px); }
.home-search { width: 100%; max-width: none; margin: 0 0 22px; }
.home-search > span:first-child { left: 17px; color: #9baab5; font-size: .85rem; }
.home-search input { height: 52px; padding: 9px 48px 9px 130px; border-color: rgba(185, 202, 215, .16); border-radius: 6px; background: #171d23; font-size: .9rem; transition: border-color .2s ease, background .2s ease; }
.home-search input:focus { outline: none; border-color: rgba(145, 185, 210, .65); background: #1a2128; }
.home-search__icon { position: absolute; top: 50%; right: 17px; left: auto !important; transform: translateY(-54%); color: #a9bdca !important; font-size: 1.55rem !important; line-height: 1; }
.home-catalog-grid { width: 100%; max-width: none; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.home-catalog-grid .catalog-card { position: relative; border: 1px solid rgba(190, 207, 220, .13); border-radius: 7px; background: #171c22; box-shadow: 0 8px 22px rgba(0, 0, 0, .12); transition: transform .24s ease, border-color .24s ease, box-shadow .24s ease; }
.home-catalog-grid .catalog-card:hover { transform: translateY(-4px); border-color: rgba(145, 185, 210, .46); background: #1b2229; box-shadow: 0 15px 30px rgba(0, 0, 0, .25); }
.home-catalog-grid .catalog-card img { aspect-ratio: 1.62; object-fit: cover; transition: transform .4s ease, filter .3s ease; filter: saturate(.88); }
.home-catalog-grid .catalog-card:hover img { transform: scale(1.025); filter: saturate(1); }
.home-catalog-grid .catalog-card h3 { min-height: 58px; display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 11px 13px; color: #e8edf1; font-size: .9rem; }
.home-catalog-grid .catalog-card h3::after { content: "↗"; display: block; flex: none; width: auto; margin: 0; border: 0; color: #91b9d2; font-size: .92rem; opacity: .75; }
.home-catalog-footer { display: flex; justify-content: space-between; align-items: center; gap: 18px; margin-top: 22px; color: #788691; font-size: .8rem; }
.home-catalog-footer a { display: inline-flex; gap: 10px; color: #b9cbd7; }
.home-catalog-footer a span { color: var(--home-blue); }

.home-buy-section { padding: 72px 0 78px; border-top: 1px solid rgba(190, 207, 220, .08); border-bottom: 1px solid rgba(190, 207, 220, .08); background: linear-gradient(110deg, #171d23, #14191e 70%); }
.home-buy-section .section-head { margin-bottom: 36px; }
.home-steps { position: relative; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 0; }
.home-steps::before { content: ""; position: absolute; top: 39px; left: 7%; right: 7%; height: 1px; background: linear-gradient(90deg, rgba(145, 185, 210, .42), rgba(145, 185, 210, .18)); }
.home-step { position: relative; z-index: 1; min-width: 0; padding: 0 18px 3px; border: 0; background: transparent; }
.home-step__number { display: block; margin-bottom: 12px; color: #8295a2; font-size: .7rem; letter-spacing: .1em; }
.home-step__icon { width: 50px; height: 50px; display: grid; place-items: center; border: 1px solid rgba(145, 185, 210, .38); border-radius: 50%; background: #18212a; color: #b5d0df; font-size: 1.28rem; box-shadow: 0 0 0 8px #171d23; }
.home-step h3 { margin: 17px 0 4px; color: #e6ebef; font-size: .98rem; font-weight: 600; }
.home-step p { margin: 0; color: #929da6; font-size: .81rem; line-height: 1.65; }

.home-guides { background: var(--home-bg); }
.home-guides .section-head { margin-bottom: 26px; }
.home-article-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.home-article-card { min-height: 220px; display: flex; flex-direction: column; align-items: flex-start; padding: 24px 26px; border-color: rgba(190, 207, 220, .13); border-radius: 7px; background: linear-gradient(135deg, #191f25, #151a1f); transition: border-color .2s ease, transform .2s ease, background .2s ease; }
.home-article-card:hover { transform: translateY(-3px); border-color: rgba(145, 185, 210, .4); background: linear-gradient(135deg, #1d252d, #171d23); }
.home-article-card__meta { width: 100%; display: flex; justify-content: space-between; gap: 12px; color: #8eacc0; font-size: .69rem; letter-spacing: .11em; }
.home-article-card__meta span:last-child { color: #97a2ab; letter-spacing: 0; }
.home-article-card h3 { margin: 26px 0 6px; color: #e9edf0; font-size: 1.12rem; }
.home-article-card p { max-width: 570px; margin: 0; color: #9da8b0; font-size: .88rem; line-height: 1.8; }
.home-article-card__link { display: inline-flex; gap: 10px; align-items: center; margin-top: auto; padding-top: 19px; color: #b9cbd7; font-size: .8rem; }
.home-article-card__link span { color: var(--home-blue); }

.home-contact { padding: 44px 0; border-top: 1px solid var(--home-line); background: #14191e; }
.home-contact__inner { display: flex; justify-content: space-between; align-items: center; gap: 24px; }
.home-contact .eyebrow { margin-bottom: 8px; color: #8eacc0; font-size: .68rem; letter-spacing: .14em; }
.home-contact h2 { margin: 0; color: #edf1f4; font-size: 1.25rem; font-weight: 600; }
.home-contact p { margin: 5px 0 0; color: #98a3ac; font-size: .87rem; }
.home-contact .btn { min-width: 175px; min-height: 46px; gap: 10px; border-radius: 5px; }
.home-footer { margin-top: 0; padding: 38px 0 78px; border-top: 0; background: #101317; }
.home-footer .brand { color: #e8edf1; }
.home-footer .brand span { color: var(--home-blue); }
.home-footer .footer-grid { gap: 36px; }
.home-page .bottom-nav { border-top-color: var(--home-line); background: rgba(16, 19, 23, .96); backdrop-filter: blur(14px); }

@media (max-width: 900px) {
  .home-hero__inner { position: relative; grid-template-columns: 1fr; gap: 0; }
  .home-hero__copy { position: relative; z-index: 1; max-width: 780px; }
  .home-hero h1 { max-width: none; font-size: clamp(2rem, 4.3vw, 2.8rem); }
  .home-hero__art { position: absolute; z-index: 0; top: 0; right: -18px; width: 360px; min-height: 100%; opacity: .24; pointer-events: none; }
  .home-catalog-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 13px; }
  .home-step { padding-right: 11px; padding-left: 11px; }
}

@media (max-width: 1200px) {
  .home-hero__inner { position: relative; grid-template-columns: 1fr; gap: 0; }
  .home-hero__copy { position: relative; z-index: 1; max-width: 780px; }
  .home-hero h1 { max-width: none; }
  .home-hero__art { position: absolute; z-index: 0; top: 0; right: -18px; width: 360px; min-height: 100%; opacity: .24; pointer-events: none; }
}

@media (max-width: 760px) {
  .home-page .wrap { width: min(1220px, calc(100% - 36px)); }
  .home-header .nav { min-height: 64px; }
  .home-header .nav-links { top: 64px; gap: 2px; border-color: var(--home-line); background: rgba(16, 19, 23, .98); }
  .home-header .nav-links a { padding: 10px 8px; }
  .home-header .nav-links a.home-nav-cta { justify-content: center; margin-top: 5px; }
  .home-hero { min-height: 0; }
  .home-hero__inner { grid-template-columns: 1fr; gap: 0; padding-top: 68px; padding-bottom: 46px; }
  .home-hero h1 { max-width: 680px; margin-top: 20px; font-size: clamp(1.1rem, 4.2vw, 1.9rem); }
  .home-hero__copy > p { max-width: 540px; font-size: .94rem; }
  .home-hero__art { position: absolute; z-index: -1; top: 18px; right: -95px; width: 300px; min-height: 260px; opacity: .5; }
  .home-hero__art::before { width: 230px; }
  .home-orbit--outer { width: 265px; }
  .home-orbit--inner { width: 210px; }
  .home-hero__monogram { font-size: 2.6rem; }
  .home-hero__art-caption { display: none; }
  .home-page .section { padding: 58px 0; }
  .home-section-head { align-items: flex-start; }
  .home-section-head p { max-width: 460px; font-size: .85rem; }
  .home-catalog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .home-catalog-grid .catalog-card img { aspect-ratio: 1.5; }
  .home-catalog-grid .catalog-card h3 { min-height: 54px; padding: 9px 10px; font-size: .83rem; }
  .home-buy-section { padding: 58px 0; }
  .home-steps { grid-template-columns: 1fr; gap: 0; padding-left: 3px; }
  .home-steps::before { top: 25px; bottom: 38px; left: 27px; right: auto; width: 1px; height: auto; background: linear-gradient(rgba(145, 185, 210, .42), rgba(145, 185, 210, .12)); }
  .home-step { display: grid; grid-template-columns: 50px 1fr; column-gap: 17px; align-items: center; min-height: 86px; padding: 8px 0; }
  .home-step__number { grid-column: 2; align-self: end; margin: 0 0 1px; }
  .home-step__icon { grid-column: 1; grid-row: 1 / span 3; width: 48px; height: 48px; box-shadow: 0 0 0 7px #171d23; }
  .home-step h3 { grid-column: 2; margin: 0; font-size: .94rem; }
  .home-step p { grid-column: 2; align-self: start; font-size: .78rem; }
  .home-article-list { grid-template-columns: 1fr; gap: 12px; }
  .home-article-card { min-height: 194px; padding: 21px; }
  .home-contact { padding: 34px 0; }
  .home-contact__inner { align-items: flex-start; flex-direction: column; gap: 20px; }
  .home-contact .btn { width: 100%; }
  .home-footer { padding-bottom: 86px; }
}

@media (max-width: 480px) {
  .home-page .wrap { width: calc(100% - 30px); }
  .home-hero__inner { padding-top: 57px; }
  .home-hero__art { top: 32px; right: -138px; opacity: .38; }
  .home-hero__copy > p { font-size: .9rem; }
  .home-hero__actions { display: grid; grid-template-columns: 1fr; gap: 9px; }
  .home-hero__actions .btn { width: 100%; }
  .home-section-head { flex-direction: column; gap: 12px; }
  .home-search input { padding-left: 118px; }
  .home-catalog-grid { gap: 9px; }
  .home-catalog-grid .catalog-card h3 { min-height: 49px; font-size: .78rem; }
  .home-catalog-footer { align-items: flex-start; flex-direction: column; gap: 10px; }
}

@media (prefers-reduced-motion: reduce) {
  .home-page *, .home-page *::before, .home-page *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
