.market-hero { padding:28px 0 56px; }
.market-hero-grid { display:grid; grid-template-columns:1.2fr 1fr; gap:70px; align-items:center; }
.market-hero h1 { font-size:clamp(38px,4.3vw,64px); line-height:1.22; font-weight:800; letter-spacing:-.05em; }
.market-lead { font-size:20px; line-height:1.8; color:#444; margin:26px 0 32px; }
.market-visual { background:#f5f6f8; border:1px solid #e5e6e9; border-radius:20px; padding:28px; }
.market-visual img { display:block; width:100%; height:auto; max-height:240px; object-fit:contain; }
.market-visual>div { display:flex; justify-content:space-between; gap:20px; border-top:1px solid #dce0e6; padding-top:24px; align-items:center; }
.market-visual strong { font-size:46px; letter-spacing:-.05em; }
.market-visual strong span { display:block; font-size:13px; letter-spacing:0; color:#555; font-weight:600; margin-top:6px; }
.market-visual p { font-size:15px; color:#444; line-height:1.8; }
.market-disclosure { font-size:14px; line-height:1.8; color:#555; margin-top:34px; }
.market-capabilities { padding:65px 0; background:#f6f6f6; border-block:1px solid #e7e7e7; }
.market-section-heading h2 { font-size:clamp(28px,3.2vw,42px); line-height:1.3; font-weight:780; letter-spacing:-.045em; }
.market-section-heading>p:last-child { font-size:17px; color:#555; line-height:1.8; margin-top:18px; }
.market-capabilities ol { list-style:none; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); padding:0; margin:32px 0 24px; gap:12px; }
.market-capabilities li { display:flex; align-items:center; gap:18px; border:1px solid #e0e0e0; border-radius:8px; padding:20px 24px; background:#fff; }
.market-capabilities li span { font-size:12px; color:#666; }
.market-capabilities li strong { font-size:18px; }
.market-note { font-size:14px; line-height:1.8; color:#555; }
.market-directory { padding:80px 0; scroll-margin-top:115px; }
.market-controls { margin:35px 0 28px; display:grid; grid-template-columns:1fr 280px; align-items:end; gap:20px; }
.market-controls[hidden],.market-card[hidden],.market-empty[hidden] { display:none; }
.market-filters { display:flex; gap:8px; flex-wrap:wrap; }
.market-filters button { font:inherit; font-size:14px; font-weight:600; border:1px solid #d3d3d3; border-radius:99px; padding:12px 16px; background:#fff; color:#333; min-height:44px; }
.market-filters button span { color:#666; margin-left:5px; font-size:12px; }
.market-filters button[aria-pressed=true] { background:#171717; color:#fff; border-color:#171717; }
.market-filters button[aria-pressed=true] span { color:#ddd; }
.market-search label { display:block; font-size:13px; color:#444; margin-bottom:8px; }
.market-search>div { position:relative; }
.market-search input { width:100%; min-height:46px; font:inherit; font-size:15px; border:1px solid #ccc; padding:12px 44px 12px 14px; border-radius:8px; color:#222; background:white; }
.market-search input::-webkit-search-cancel-button { display:none; }
.market-search button { position:absolute; right:1px; top:1px; width:44px; height:44px; background:none; font-size:22px; color:#555; }
#market-count { grid-column:1/-1; font-size:13px; color:#555; }
.market-channel-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; align-items:start; }
.market-card { border:1px solid #ddd; padding:26px; border-radius:12px; min-width:0; }
.market-card-top { display:flex; justify-content:space-between; align-items:center; gap:8px; font-size:11px; color:#555; }
.market-status { background:#f2f2f2; padding:5px 8px; border-radius:20px; white-space:nowrap; }
.market-card h3 { font-size:26px; font-weight:750; margin-top:24px; letter-spacing:-.04em; }
.market-card>p { font-size:15px; line-height:1.8; color:#555; margin:14px 0 26px; }
.market-card details { border-top:1px solid #e4e4e4; }
.market-card summary { list-style:none; display:flex; justify-content:space-between; cursor:pointer; padding:18px 0 0; font-size:14px; font-weight:650; color:#222; }
.market-card summary::-webkit-details-marker { display:none; }
.market-card details[open] summary { color:#2563ed; }
.market-card details[open] summary>span { transform:rotate(45deg); }
.market-card ul { list-style:none; padding:16px 0 0; margin:0; }
.market-card li { display:flex; justify-content:space-between; gap:15px; font-size:13px; padding:10px 0; border-bottom:1px solid #eee; }
.market-card li:last-child { border:0; }
.market-pending { color:#666; white-space:nowrap; }
.market-empty { background:#f6f6f6; padding:45px 20px; text-align:center; border-radius:12px; }
.market-empty p { margin:15px auto 25px; color:#555; line-height:1.8; }
.market-request { display:flex; gap:30px; align-items:center; justify-content:space-between; background:#f6f6f6; padding:34px; border-radius:12px; margin-top:40px; }
.market-request h3 { font-size:25px; }
.market-request p { font-size:15px; color:#555; line-height:1.8; margin-top:12px; }
.market-request .button { flex-shrink:0; }
.market-catalog-link { display:flex; justify-content:space-between; align-items:center; gap:25px; padding:28px 32px; margin:0 0 45px; color:#fff; border-radius:12px; background:#2563ed; }
.market-catalog-link small { display:block; font-size:13px; margin-bottom:10px; color:#e8efff; }
.market-catalog-link strong { font-size:24px; line-height:1.5; letter-spacing:-.03em; }
.market-catalog-link>b { font-size:28px; }
.markets-page button:focus-visible,.market-card summary:focus-visible,.market-search input:focus-visible { outline:2px solid #2563ed; outline-offset:4px; }
@media(max-width:1100px) { .market-hero-grid { gap:35px; } .market-controls { grid-template-columns:1fr; } .market-search { max-width:400px; } .market-channel-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:760px) { .market-hero-grid { grid-template-columns:1fr; gap:32px; } .market-lead { font-size:17px; } .market-visual { padding:20px; } .market-visual img { max-height:180px; } .market-section-heading>p:last-child { font-size:16px; } .market-capabilities { padding:48px 0; } .market-capabilities ol { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; } .market-capabilities li { padding:16px 12px; gap:10px; } .market-capabilities li strong { font-size:14px; } .market-directory { padding:55px 0; } .market-card { padding:22px; } .market-request { display:block; padding:24px; } .market-request .button { margin-top:24px; } .market-catalog-link { padding:24px; } .market-catalog-link strong { font-size:20px; } }
@media(max-width:560px) { .market-channel-grid { grid-template-columns:1fr; gap:14px; } .market-search { max-width:none; } .market-filters button { font-size:13px; padding:10px 13px; } .market-card h3 { font-size:24px; } .market-visual strong { font-size:38px; } .market-visual p { font-size:13px; } .market-disclosure { font-size:13px; } .market-request .button { width:100%; } }
