.contract-main { overflow: hidden; background: #fffdf8; }
.contract-hero { position: relative; overflow: hidden; padding: 48px 0 0; background: linear-gradient(145deg, #fffaf0 0%, #f2ede5 100%); }
.contract-hero::before { position: absolute; top: -420px; right: -330px; width: 920px; height: 920px; border: 1px solid rgba(19,34,56,.08); border-radius: 50%; box-shadow: 0 0 0 85px rgba(19,34,56,.018), 0 0 0 170px rgba(19,34,56,.01); content: ""; }
.contract-orb { position: absolute; border-radius: 50%; pointer-events: none; }
.contract-orb-one { top: 28%; left: 45%; width: 82px; height: 82px; background: rgba(88,205,179,.23); }
.contract-orb-two { right: 4%; bottom: 15%; width: 120px; height: 120px; background: rgba(255,201,74,.26); }
.contract-hero .breadcrumbs { position: relative; z-index: 2; }
.contract-hero-grid { position: relative; z-index: 1; display: grid; align-items: center; min-height: 650px; grid-template-columns: 1.02fr .98fr; gap: 75px; }
.contract-hero-copy h1 { max-width: 720px; margin: 18px 0 25px; font-size: clamp(54px, 6.2vw, 88px); letter-spacing: -.064em; line-height: .94; }
.contract-hero-copy h1 span { display: block; color: var(--coral); }
.contract-lead { max-width: 660px; margin: 0; color: var(--ink-soft); font-size: 18px; }
.contract-actions { display: flex; flex-wrap: wrap; gap: 11px; margin-top: 31px; }
.contract-hero-checks { display: flex; flex-wrap: wrap; gap: 10px 22px; margin: 28px 0 0; padding: 0; list-style: none; }
.contract-hero-checks li { color: #46566b; font-size: 13px; font-weight: 720; }
.contract-hero-checks span { margin-right: 6px; color: #167960; }
.contract-document-stage { position: relative; min-height: 550px; }
.contract-sheet { position: absolute; width: min(78%, 390px); aspect-ratio: 1 / 1.414; border: 1px solid rgba(19,34,56,.12); border-radius: 5px; background: #fff; box-shadow: 0 35px 80px rgba(15,31,51,.17); }
.contract-sheet-back { top: 42px; right: 3%; transform: rotate(8deg); background: #dceee9; }
.contract-sheet-front { z-index: 2; top: 12px; left: 9%; display: flex; flex-direction: column; padding: 34px; transform: rotate(-4deg); }
.contract-sheet-front::before { position: absolute; inset: 14px; border: 1px solid #e7e1d8; content: ""; pointer-events: none; }
.contract-sheet-front header, .contract-sheet-front footer { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; }
.contract-sheet-front header small { color: #7c8794; font-size: 8px; font-weight: 850; letter-spacing: .14em; }
.contract-mini-brand { display: grid; width: 31px; height: 31px; border-radius: 9px; background: var(--ink); color: white; font-size: 15px; font-weight: 900; place-items: center; }
.contract-sheet-kicker { position: relative; z-index: 1; margin-top: 65px; color: var(--coral); font-size: 9px; font-weight: 850; letter-spacing: .15em; text-transform: uppercase; }
.contract-sheet-front h2 { position: relative; z-index: 1; margin: 11px 0 15px; font-size: clamp(35px, 4vw, 54px); letter-spacing: -.055em; line-height: .94; }
.contract-sheet-front > p { position: relative; z-index: 1; margin: 0; color: #687688; font-size: 12px; font-weight: 650; line-height: 1.7; }
.contract-sheet-lines { position: relative; z-index: 1; display: grid; gap: 12px; margin-top: auto; }
.contract-sheet-lines i { height: 1px; background: #d9dfe5; }
.contract-sheet-lines i:nth-child(2) { width: 82%; }.contract-sheet-lines i:nth-child(3) { width: 91%; }.contract-sheet-lines i:nth-child(4) { width: 67%; }
.contract-sheet-front footer { margin-top: 28px; color: #7c8794; font-size: 9px; }
.contract-sheet-front footer strong { color: var(--ink); }
.contract-free-badge { position: absolute; z-index: 3; right: 0; bottom: 65px; display: grid; width: 112px; height: 112px; border-radius: 50%; background: var(--yellow); box-shadow: 0 18px 40px rgba(20,42,70,.18); font-size: 28px; font-weight: 900; place-items: center; align-content: center; transform: rotate(7deg); }
.contract-free-badge small { display: block; margin-top: -2px; font-size: 9px; letter-spacing: .05em; text-transform: uppercase; }
.contract-proof { position: relative; z-index: 2; display: grid; border-top: 1px solid rgba(19,34,56,.12); grid-template-columns: repeat(4,1fr); }
.contract-proof span { display: grid; padding: 24px 30px; border-right: 1px solid rgba(19,34,56,.12); color: #778291; font-size: 10px; font-weight: 760; letter-spacing: .04em; text-transform: uppercase; }
.contract-proof span:first-child { padding-left: 0; }.contract-proof span:last-child { border-right: 0; }
.contract-proof strong { color: var(--ink); font-size: 20px; letter-spacing: -.025em; text-transform: none; }
.contract-value, .contract-how, .contract-guides, .contract-sources, .contract-faq { padding: 110px 0; }
.contract-section-head { display: grid; align-items: end; margin-bottom: 54px; grid-template-columns: 1.1fr .9fr; gap: 80px; }
.contract-section-head h2 { max-width: 740px; margin: 10px 0 0; font-size: clamp(42px,5vw,68px); letter-spacing: -.055em; line-height: .98; }
.contract-section-head > p { margin: 0; color: var(--ink-soft); }
.contract-value-grid { display: grid; border-top: 1px solid var(--line); grid-template-columns: repeat(4,1fr); }
.contract-value-grid article { min-height: 285px; padding: 28px 25px; border-right: 1px solid var(--line); }
.contract-value-grid article:first-child { padding-left: 0; }.contract-value-grid article:last-child { border-right: 0; }
.contract-value-grid span { color: var(--coral); font-size: 11px; font-weight: 900; }
.contract-value-grid h3 { margin: 65px 0 12px; font-size: 23px; letter-spacing: -.03em; }
.contract-value-grid p { margin: 0; color: var(--ink-soft); font-size: 14px; }
.contract-contents { padding: 115px 0; background: var(--navy-deep); color: white; }
.contract-contents-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: 100px; }
.contract-contents-intro { position: sticky; top: 110px; align-self: start; }
.contract-contents h2 { margin: 12px 0 22px; color: white; font-size: clamp(43px,5vw,68px); letter-spacing: -.055em; line-height: .98; }
.contract-contents-intro > p:not(.eyebrow) { max-width: 520px; margin: 0 0 28px; color: #b9c5d2; }
.contract-contents-list { margin: 0; padding: 0; border-top: 1px solid rgba(255,255,255,.15); list-style: none; }
.contract-contents-list li { display: grid; padding: 29px 0; border-bottom: 1px solid rgba(255,255,255,.15); grid-template-columns: 52px 1fr; gap: 15px; }
.contract-contents-list li > span { color: var(--mint); font-size: 11px; font-weight: 900; }
.contract-contents-list strong { display: block; color: white; font-size: 22px; letter-spacing: -.025em; }
.contract-contents-list p { margin: 4px 0 0; color: #aebbc9; font-size: 14px; }
.contract-steps { display: grid; margin: 0; padding: 0; list-style: none; grid-template-columns: repeat(4,1fr); gap: 18px; }
.contract-steps li { min-height: 310px; padding: 26px; border: 1px solid var(--line); border-radius: 22px; background: white; box-shadow: 0 16px 45px rgba(19,34,56,.05); }
.contract-steps li > span { display: grid; width: 42px; height: 42px; border-radius: 13px; background: var(--yellow-soft); font-size: 15px; font-weight: 900; place-items: center; }
.contract-steps h3 { margin: 80px 0 12px; font-size: 23px; letter-spacing: -.03em; }.contract-steps p { margin: 0; color: var(--ink-soft); font-size: 14px; }
.contract-legal-note { display: grid; align-items: start; margin-top: 10px; margin-bottom: 110px; padding: 38px 42px; border: 1px solid #efc9c1; border-radius: 25px; background: #fff0ec; grid-template-columns: 56px 1fr; gap: 25px; }
.contract-legal-note > span { display: grid; width: 52px; height: 52px; border-radius: 16px; background: var(--coral); color: white; font-size: 25px; font-weight: 900; place-items: center; }
.contract-legal-note h2 { margin: 7px 0 10px; font-size: clamp(28px,3vw,40px); letter-spacing: -.04em; line-height: 1.05; }.contract-legal-note p:last-child { margin: 0; color: #674d4a; }
.contract-guides { background: #f3eee5; }
.contract-guide-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 12px; }
.contract-guide-grid a { position: relative; display: grid; min-height: 150px; padding: 25px 65px 25px 27px; border: 1px solid #ded8ce; border-radius: 18px; background: white; transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.contract-guide-grid a:hover { border-color: var(--coral); box-shadow: 0 15px 35px rgba(19,34,56,.08); transform: translateY(-2px); }
.contract-guide-grid span { color: #8b7a69; font-size: 10px; font-weight: 850; letter-spacing: .09em; text-transform: uppercase; }
.contract-guide-grid strong { align-self: end; font-size: 20px; letter-spacing: -.025em; }
.contract-guide-grid i { position: absolute; right: 24px; bottom: 24px; color: var(--coral); font-style: normal; font-size: 22px; }
.contract-sources { background: white; }
.contract-sources-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 100px; }
.contract-sources h2 { margin: 10px 0 0; font-size: clamp(40px,4.7vw,63px); letter-spacing: -.05em; line-height: .98; }
.contract-sources ul { margin: 0; padding: 0; border-top: 1px solid var(--line); list-style: none; }
.contract-sources li { border-bottom: 1px solid var(--line); }.contract-sources a { display: flex; justify-content: space-between; gap: 20px; padding: 20px 0; font-weight: 730; }.contract-sources a:hover { color: #b74935; }
.contract-faq { background: #fffaf0; }
.contract-faq-grid { display: grid; grid-template-columns: .72fr 1.28fr; gap: 95px; }.contract-faq header { position: sticky; top: 110px; align-self: start; }
.contract-faq h2 { margin: 10px 0 14px; font-size: clamp(40px,4.5vw,62px); letter-spacing: -.05em; line-height: .98; }.contract-faq header > p:last-child { color: var(--ink-soft); font-size: 13px; }
.contract-download-final { padding: 95px 0; background: var(--coral); color: white; }
.contract-download-final-inner { display: grid; align-items: end; grid-template-columns: 1.25fr .75fr; gap: 80px; }
.contract-download-final h2 { max-width: 760px; margin: 10px 0 18px; color: white; font-size: clamp(45px,5vw,72px); letter-spacing: -.055em; line-height: .96; }.contract-download-final p:not(.eyebrow) { max-width: 650px; margin: 0; color: #fff1ed; }
.contract-download-final-inner > div:last-child { display: grid; justify-items: start; gap: 12px; }.contract-download-final small { color: #ffe7e1; font-size: 11px; }
@media (max-width: 980px) {
    .contract-hero-grid, .contract-section-head, .contract-contents-grid, .contract-sources-grid, .contract-faq-grid, .contract-download-final-inner { grid-template-columns: 1fr; }
    .contract-hero-grid { gap: 20px; }.contract-document-stage { width: min(100%,650px); margin: 0 auto; }.contract-section-head { gap: 22px; }.contract-proof, .contract-value-grid, .contract-steps { grid-template-columns: 1fr 1fr; }
    .contract-proof span:nth-child(2), .contract-value-grid article:nth-child(2) { border-right: 0; }.contract-proof span:nth-child(-n+2), .contract-value-grid article:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
    .contract-value-grid article:nth-child(3) { padding-left: 0; }.contract-contents-intro, .contract-faq header { position: static; }.contract-contents-grid, .contract-sources-grid, .contract-faq-grid { gap: 50px; }
}
@media (max-width: 680px) {
    .contract-hero { padding-top: 28px; }.contract-hero-grid { min-height: 0; padding: 40px 0 65px; }.contract-hero-copy h1 { font-size: 50px; }.contract-lead { font-size: 16px; }.contract-actions { align-items: stretch; flex-direction: column; }.contract-actions .button { justify-content: center; }
    .contract-document-stage { min-height: 470px; }.contract-sheet { width: 79%; }.contract-sheet-front { left: 4%; padding: 27px; }.contract-sheet-kicker { margin-top: 48px; }.contract-free-badge { right: 2%; bottom: 30px; width: 92px; height: 92px; font-size: 23px; }
    .contract-proof, .contract-value-grid, .contract-steps, .contract-guide-grid { grid-template-columns: 1fr; }.contract-proof span, .contract-proof span:first-child { padding: 17px 0; border-right: 0; border-bottom: 1px solid rgba(19,34,56,.12); }.contract-proof span:last-child { border-bottom: 0; }
    .contract-value, .contract-how, .contract-guides, .contract-sources, .contract-faq { padding: 78px 0; }.contract-section-head { margin-bottom: 35px; }.contract-section-head h2, .contract-contents h2 { font-size: 43px; }
    .contract-value-grid article, .contract-value-grid article:first-child, .contract-value-grid article:nth-child(3) { min-height: 0; padding: 25px 0; border-right: 0; border-bottom: 1px solid var(--line); }.contract-value-grid h3 { margin-top: 35px; }
    .contract-contents { padding: 80px 0; }.contract-contents-list strong { font-size: 19px; }.contract-contents-list li { grid-template-columns: 40px 1fr; }
    .contract-steps li { min-height: 0; }.contract-steps h3 { margin-top: 48px; }.contract-legal-note { margin-bottom: 75px; padding: 28px 22px; grid-template-columns: 1fr; }.contract-legal-note h2 { font-size: 31px; }
    .contract-guide-grid a { min-height: 132px; }.contract-sources-grid, .contract-faq-grid { gap: 35px; }.contract-download-final { padding: 75px 0; }.contract-download-final h2 { font-size: 46px; }
}
