.tender-main { background:#f5f7f5; padding-bottom:6rem; }
.tender-intro { color:#fff; background:radial-gradient(circle at 83% 15%,rgba(227,110,40,.28),transparent 26rem),linear-gradient(120deg,#142b2b,#10242f); padding:clamp(4rem,8vw,7rem) max(24px,calc((100vw - 1180px)/2)); }
.tender-kicker { margin:0; color:#d7ac85; font-size:.72rem; font-weight:700; letter-spacing:.15em; }
.tender-intro h1 { margin:1.25rem 0; font-size:clamp(2.5rem,6vw,5rem); line-height:1.08; letter-spacing:-.05em; }
.tender-intro h1 em { color:#ffad72; font-style:normal; }
.tender-intro p:not(.tender-kicker) { max-width:42rem; color:#d9e7e4; line-height:1.8; }
.tender-intro > a { display:inline-block; margin-top:1rem; padding-bottom:.2rem; color:#ffbd90; border-bottom:1px solid currentColor; font-weight:700; }
.tender-notice,.tender-share-entry,.tender-group,.tender-source-note { width:min(calc(100% - 48px),1180px); margin-left:auto; margin-right:auto; }
.tender-notice { margin-top:3rem; padding:1.15rem 1.4rem; background:#f9fbf9; border:1px solid #dce6e0; border-left:2px solid #9fb5aa; }
.tender-notice strong { color:#365248; font-size:.9rem; }
.tender-notice p { max-width:90ch; margin:.55rem 0 0; color:#435b58; font-size:.88rem; line-height:1.8; }
.tender-notice .tender-notice-context { color:#5b7068; font-size:.8rem; }
.tender-share-entry { display:flex; align-items:center; justify-content:space-between; gap:2rem; margin-top:2rem; padding:1.7rem 2rem; background:#e8f0eb; border:1px solid #cdded3; }
.tender-share-entry span { color:#8d421e; font-size:.72rem; font-weight:700; letter-spacing:.08em; }
.tender-share-entry h2 { margin:.5rem 0; color:#173d31; font-size:1.7rem; }
.tender-share-entry p { max-width:43rem; margin:.3rem 0 0; color:#496055; font-size:.87rem; line-height:1.7; }
.tender-share-entry > a { flex:none; padding:.75rem 1.15rem; color:#fff; background:#1e573f; border-radius:4px; font-size:.88rem; font-weight:700; }
.tender-share-entry > a:focus-visible { outline:3px solid #1463df; outline-offset:3px; }
.tender-group { margin-top:4.5rem; }
.tender-group-head { display:flex; align-items:end; justify-content:space-between; gap:2rem; margin-bottom:1.3rem; }
.tender-group-head span { color:#a04416; font-size:.7rem; font-weight:700; letter-spacing:.13em; }
.tender-group-head h2 { margin:.6rem 0 0; font-size:clamp(2rem,4vw,3rem); letter-spacing:-.045em; }
.tender-group-head p { max-width:30rem; margin:0; color:#4f6560; font-size:.86rem; line-height:1.7; }
.tender-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.tender-card { display:flex; flex-direction:column; min-width:0; padding:1.8rem; background:#fff; border:1px solid #dce6e0; }
.tender-card-meta { display:flex; justify-content:space-between; gap:1rem; color:#47645c; font-size:.76rem; }
.tender-card-meta time { white-space:nowrap; }
.tender-card h3 { margin:1.3rem 0 .4rem; color:#152b2b; font-size:clamp(1.4rem,2.3vw,2rem); letter-spacing:-.04em; }
.tender-card > p { margin:.45rem 0 1.25rem; color:#425b54; font-size:.9rem; line-height:1.75; }
.tender-card dl { display:grid; gap:.75rem; margin:auto 0 0; padding:1rem 0; border-top:1px solid #e5ede8; border-bottom:1px solid #e5ede8; }
.tender-card dl div { display:grid; grid-template-columns:6rem 1fr; gap:.7rem; font-size:.82rem; line-height:1.55; }
.tender-card dt { color:#415d51; }
.tender-card dd { margin:0; color:#223f35; }
.tender-card .expired { color:#8b431d; font-weight:700; }
.tender-card > a { align-self:start; margin-top:1.3rem; padding-bottom:.2rem; color:#9c390b; border-bottom:1px solid #d99365; font-size:.85rem; font-weight:700; }
.tender-card > a:hover { color:#6f2608; border-color:currentColor; }
.tender-source-note { margin-top:3rem; padding-top:1.3rem; color:#4f655f; border-top:1px solid #ccdcd2; font-size:.8rem; line-height:1.7; }
@media (max-width:760px) { .tender-group-head { display:block; } .tender-group-head p { margin-top:.7rem; } .tender-grid { grid-template-columns:1fr; } .tender-card { padding:1.35rem; } .tender-card dl div { grid-template-columns:5.2rem 1fr; } .tender-intro { padding:4.2rem 24px; } .tender-share-entry { display:block; padding:1.4rem; } .tender-share-entry > a { display:inline-block; margin-top:1rem; } }
