.pillar-hero {
  min-height: 790px;
  grid-template-columns: minmax(0, 1.04fr) minmax(480px, .96fr);
}

.pillar-hero h1 { max-width: 900px; }

.guarantee-window {
  position: relative;
  overflow: hidden;
  color: #eaf2ed;
  background: #0d211e;
  border: 1px solid rgba(255,255,255,.14);
  box-shadow: 18px 18px 0 rgba(117,51,29,.16), var(--shadow);
}

.guarantee-head {
  display: flex;
  justify-content: space-between;
  padding: 15px 20px;
  color: #9eb2aa;
  background: #071613;
  border-bottom: 1px solid rgba(255,255,255,.1);
  font-family: var(--mono);
  font-size: 11px;
  letter-spacing: .08em;
}

.guarantee-flow { margin: 0; padding: 26px; list-style: none; }
.guarantee-flow li { display: grid; grid-template-columns: 42px 1fr; gap: 17px; align-items: center; padding: 17px 0; border-bottom: 1px solid rgba(255,255,255,.1); }
.guarantee-flow li > span { width: 34px; height: 34px; display: grid; place-items: center; color: #f2bb9c; border: 1px solid rgba(242,187,156,.42); border-radius: 50%; font-family: var(--mono); font-size: 10px; }
.guarantee-flow small, .guarantee-flow strong, .guarantee-flow code { display: block; }
.guarantee-flow small { color: #79a08f; font-size: 10px; letter-spacing: .16em; }
.guarantee-flow strong { margin-top: 2px; font-size: 16px; }
.guarantee-flow code { color: #91a59d; font-family: var(--mono); font-size: 11px; }
.guarantee-branches { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: rgba(255,255,255,.12); border-top: 1px solid rgba(255,255,255,.12); }
.guarantee-branches div { padding: 19px; background: #102a26; }
.guarantee-branches small, .guarantee-branches strong, .guarantee-branches span { display: block; }
.guarantee-branches small { color: #f1ae86; font-family: var(--mono); font-size: 10px; letter-spacing: .12em; }
.guarantee-branches strong { margin-top: 6px; font-size: 14px; }
.guarantee-branches span { margin-top: 4px; color: #8fa59c; font-size: 11px; }

.product-section { padding-bottom: 150px; }
.product-section .section-heading { max-width: 1050px; }
.product-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin-top: 72px; }
.product-card { min-height: 640px; display: flex; flex-direction: column; padding: clamp(32px, 4vw, 54px); background: var(--paper); border: 1px solid var(--line); }
.product-card.sign-product { border-top: 5px solid var(--green); }
.product-card.anchor-product { border-top: 5px solid var(--copper); background: #efe6da; }
.product-status { display: flex; align-items: center; gap: 9px; color: var(--green); font-family: var(--mono); font-size: 10px; letter-spacing: .12em; }
.product-status span { width: 8px; height: 8px; border-radius: 50%; background: #5fd291; box-shadow: 0 0 0 5px rgba(95,210,145,.12); }
.product-status.private { color: var(--copper-dark); }
.product-status.private span { background: var(--copper); box-shadow: 0 0 0 5px rgba(168,84,49,.11); }
.product-number { margin: 48px 0 0; color: #7a827e; font-family: var(--mono); font-size: 11px; }
.product-card h3 { margin: 10px 0 0; font-family: var(--serif); font-size: clamp(42px, 4vw, 58px); letter-spacing: -.03em; }
.product-lead { margin: 18px 0 0; color: #4b5853; font-size: 20px; }
.product-card ul { margin: 34px 0; padding: 0; list-style: none; }
.product-card li { position: relative; padding: 9px 0 9px 24px; color: #45534d; }
.product-card li::before { content: "✓"; position: absolute; left: 0; color: var(--green); }
.anchor-product li::before { color: var(--copper-dark); }
.assurance-label { margin-top: auto; padding: 20px; background: rgba(255,255,255,.58); border: 1px solid rgba(23,34,30,.12); }
.assurance-label strong, .assurance-label span { display: block; }
.assurance-label strong { color: var(--copper-dark); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.assurance-label span { margin-top: 8px; color: #56615d; font-size: 13px; }
.text-link { display: inline-block; margin-top: 28px; color: var(--copper-dark); font-weight: 700; }

.time-section { width: 100%; display: grid; grid-template-columns: .8fr 1.2fr; gap: 7vw; align-items: center; padding: 120px max(48px, calc((100vw - 1280px) / 2)); color: #eff7f2; background: var(--forest); }
.time-section h2 { max-width: 650px; }
.time-explainer { display: grid; grid-template-columns: 1fr auto 1fr; gap: 24px; align-items: center; }
.time-explainer > div { min-height: 260px; padding: 30px; background: #153a33; border: 1px solid rgba(255,255,255,.15); }
.time-explainer code, .time-explainer strong { display: block; }
.time-explainer code { color: #f0b08d; font-family: var(--mono); font-size: 13px; }
.time-explainer strong { margin-top: 54px; font-family: var(--serif); font-size: 28px; }
.time-explainer p { color: #bdcec6; font-size: 14px; }
.time-explainer i { color: #f0b08d; font-style: normal; font-size: 28px; }

.choose-section { padding-block: 150px; }
.path-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin-top: 70px; }
.path-card { min-height: 430px; display: flex; flex-direction: column; padding: clamp(32px, 4vw, 52px); text-decoration: none; background: var(--paper); border: 1px solid var(--line); transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.path-card:hover { transform: translateY(-5px); border-color: var(--copper); box-shadow: var(--shadow); }
.path-card > span { color: var(--copper-dark); font-family: var(--mono); font-size: 10px; letter-spacing: .12em; }
.path-card h3 { max-width: 540px; margin-top: 54px; font-family: var(--serif); font-size: clamp(34px, 3.5vw, 49px); letter-spacing: -.03em; }
.path-card p { max-width: 570px; color: #56635d; }
.path-card > strong { margin-top: auto; color: var(--copper-dark); }

.closing-section { max-width: 1050px; text-align: center; }
.closing-section .hero-actions { justify-content: center; }

@media (max-width: 980px) {
  .pillar-hero, .product-grid, .time-section, .path-grid { grid-template-columns: 1fr; }
  .guarantee-window { max-width: 720px; }
  .time-explainer { max-width: 760px; }
}

@media (max-width: 640px) {
  .pillar-hero { padding-inline: 15px; }
  .guarantee-branches, .product-grid, .path-grid { grid-template-columns: 1fr; }
  .product-card { min-height: auto; }
  .time-section { padding: 84px 15px; }
  .time-explainer { grid-template-columns: 1fr; }
  .time-explainer i { transform: rotate(90deg); text-align: center; }
  .time-explainer > div { min-height: auto; }
  .time-explainer strong { margin-top: 26px; }
}
