.opc-market,.opc-map-embed,.opc-board-digest{font-family:var(--wp--preset--font-family--public-sans,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif);color:#111;box-sizing:border-box}
.opc-market *,.opc-map-embed *,.opc-board-digest *{box-sizing:border-box}
.opc-market h1,.opc-market h2,.opc-market h3,.opc-market h4,.opc-map-embed h2,.opc-board-digest h4{font-family:inherit}
.opc-market{max-width:1350px;margin:40px auto 65px;padding:32px max(18px,2.5vw);background:#fff;border:1px solid #ddd;border-radius:16px;scroll-margin-top:110px}
.opcm-heading{max-width:850px;margin-bottom:24px}
.opcm-heading h2{font-size:clamp(27px,3.4vw,42px);letter-spacing:-.045em;line-height:1.08;margin:8px 0 12px;color:#111}
.opcm-heading p{font-size:15px;line-height:1.65;margin:8px 0}
.opcm-kicker{font-size:10px!important;font-weight:750;letter-spacing:.11em;text-transform:uppercase;line-height:1.6;margin:0 0 7px!important;color:#555}
.opc-market a,.opc-map-embed a,.opc-board-digest a{color:#111;text-underline-offset:4px}
.opcm-tabs{display:flex;gap:8px;flex-wrap:wrap;border-block:1px solid #ddd;padding:12px 0;margin:20px 0}
.opcm-tabs a{display:inline-flex;align-items:center;border:1px solid #111;border-radius:7px;min-height:40px;padding:8px 13px;text-decoration:none;font-size:13px;font-weight:650}
.opcm-tabs a[aria-current],#opc-paper .opcm-tabs a[aria-current]{background:#111;color:#fff!important}
.opcm-intro h3,.opcm-panel-head h3{font-size:22px;letter-spacing:-.025em;margin:18px 0 8px}
.opcm-intro p{font-size:14px;line-height:1.6;margin:8px 0 20px}
.opcm-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 20px}
.opcm-form label{display:flex;flex-direction:column;gap:6px;min-width:0;font-size:13px;font-weight:600}
.opcm-form input:not([type=checkbox]),.opcm-form select,.opcm-form textarea{display:block;width:100%;border:1px solid #ccc;border-radius:7px;padding:10px 12px;font-family:inherit;font-size:15px;font-weight:400;line-height:1.4;color:#111;background:#fff;min-height:43px}
.opcm-form textarea{font-family:inherit;resize:vertical}
.opcm-form input[type=file]{font-size:12px}
.opcm-form small,.opcm-small{font-size:12px;font-weight:400;line-height:1.6;color:#555}
.opcm-wide{grid-column:1/-1}
.opcm-form .opcm-check{display:flex;flex-direction:row;align-items:center;gap:10px;line-height:1.5;font-weight:400}
.opcm-check input{width:17px;height:17px;flex:0 0 auto;accent-color:#111}
.opcm-public-note{font-size:12px;line-height:1.65;max-width:900px;margin:20px 0 15px}
.opcm-submit,.opcm-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 17px;border:1px solid #111;border-radius:7px;background:#111;color:#fff!important;text-decoration:none;font-family:inherit;font-size:14px;font-weight:600;line-height:1.4;cursor:pointer}
.opcm-submit:disabled{opacity:.5;cursor:wait}
.opcm-form>.opcm-small{margin-top:12px}
.opcm-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.opcm-error{border-left:3px solid #111;padding:12px;background:#fff;font-size:14px;font-weight:600}
.opcm-success{border:1px solid #111;border-radius:8px;padding:14px;font-size:14px;line-height:1.6}
.opcm-address-results{display:grid;gap:3px;border:1px solid #ddd;border-radius:8px;padding:5px;max-height:210px;overflow:auto}
.opcm-address-results[hidden]{display:none}
.opcm-address-results button{display:block;text-align:left;min-height:40px;border:0;border-bottom:1px solid #ddd;background:#fff;padding:8px 10px;font-family:inherit;font-size:13px;font-weight:400;line-height:1.4;color:#111;cursor:pointer}
.opcm-address-results button:hover{background:#f5f5f5}
.opcm-panel{margin-top:32px;border-top:1px solid #111;padding-top:20px}
.opcm-panel[hidden]{display:none}
.opcm-panel-head{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap}
.opcm-panel-head a{font-size:13px}
.opcm-category-links{display:flex;gap:8px 14px;flex-wrap:wrap;margin:10px 0 20px}
.opcm-category-links a{font-size:12px}
.opcm-category-links a[aria-current]{font-weight:750}
.opcm-location-filter{display:flex;align-items:end;gap:9px;flex-wrap:wrap;margin:15px 0 24px}
.opcm-location-filter label{font-size:12px}
.opcm-location-filter select{display:block;margin-top:5px;min-height:37px;border:1px solid #bbb;border-radius:6px;background:#fff;color:#111;font-family:inherit;font-size:13px;padding:5px 9px;max-width:100%}
.opcm-location-filter button{min-height:37px;border:1px solid #111;border-radius:6px;background:#fff;font-family:inherit;font-size:13px;padding:6px 12px;cursor:pointer}
.opcm-list,.opc-board-digest{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.opcm-card,.opcm-digest-card{min-width:0;border:1px solid #ddd;border-radius:10px;padding:17px;overflow-wrap:anywhere;scroll-margin-top:115px}
.opcm-card h4,.opcm-digest-card h4{font-size:19px;line-height:1.25;letter-spacing:-.02em;margin:6px 0 12px}
.opcm-card h4 a,.opcm-digest-card h4 a{text-decoration:none}
.opcm-card>p,.opcm-digest-card>p{font-size:14px;line-height:1.6;margin:12px 0}
.opcm-card small{display:block;font-size:11px;line-height:1.5;color:#555;margin:10px 0}
.opcm-card-photo{display:block;margin:-17px -17px 15px;overflow:hidden}
.opcm-card-photo img{width:100%;height:auto;aspect-ratio:1.6;object-fit:cover;display:block}
.opcm-card-price{display:block;font-size:17px;margin:15px 0}
.opcm-read{display:inline-block;font-size:12px;font-weight:650;margin:10px 0 2px}
.opcm-empty{grid-column:1/-1;border-left:2px solid #ddd;font-size:14px;line-height:1.7;padding:12px 15px}
.opcm-pagination{display:flex;gap:6px;flex-wrap:wrap;margin-top:22px}
.opcm-pagination a{border:1px solid #111;padding:7px 12px;border-radius:5px;text-decoration:none}
.opcm-pagination a[aria-current]{background:#111;color:#fff}
.opc-map-embed{max-width:1500px;margin:60px auto 35px;padding:28px 0;background:#fff;border-top:1px solid #111;border-bottom:1px solid #ddd;scroll-margin-top:100px}
.opc-map-embed>.opcm-heading{padding-inline:20px}
.opc-map-embed iframe{background:#fff;max-width:100%;min-height:500px}
.opcm-detail{max-width:1000px;padding:25px;margin:0 auto 30px}
.opcm-detail h1{font-size:clamp(32px,4vw,52px);letter-spacing:-.04em;line-height:1.08;margin:15px 0}
.opcm-detail>p{line-height:1.65}
.opcm-breadcrumb{font-size:12px;margin-bottom:25px}
.opcm-detail-photo{display:block;max-width:100%;height:auto;max-height:650px;object-fit:contain;margin:25px auto}
.opcm-detail-price{font-size:28px;font-weight:750;letter-spacing:-.03em}
.opcm-description{font-size:16px;line-height:1.8;white-space:normal;margin:25px 0}
.opcm-description p{margin-bottom:14px}
.opcm-contact{margin:25px 0;padding:20px;border-block:1px solid #ddd}
.opcm-comments{max-width:1000px}
.opcm-comments label{display:block;margin-bottom:6px}
.opcm-comments input:not([type=checkbox]),.opcm-comments textarea{display:block;max-width:100%;border:1px solid #ccc;border-radius:6px;padding:10px;font-family:inherit;font-size:14px}
.opcm-comments textarea{width:100%}
.opcm-comments .submit{border:1px solid #111;border-radius:7px;padding:10px 15px;background:#111;color:#fff}
.opcm-comments .comment-list{list-style:none;padding:0}
.opcm-comments .comment{border-bottom:1px solid #ddd;padding:14px 0}
@media(max-width:800px){.opcm-list,.opc-board-digest{grid-template-columns:repeat(2,minmax(0,1fr))}.opc-market{margin-inline:12px;padding:22px 16px}.opc-map-embed{margin-top:40px}}
@media(max-width:550px){.opcm-fields,.opcm-list,.opc-board-digest{grid-template-columns:minmax(0,1fr)}.opcm-tabs{gap:5px}.opcm-tabs a{font-size:11px;padding:7px 8px;flex:1;justify-content:center}.opcm-heading h2{font-size:28px}.opcm-panel-head h3{font-size:21px}.opc-market{border-radius:10px}.opcm-card,.opcm-digest-card{padding:14px}.opcm-detail{padding:15px;margin:0}.opcm-detail h1{font-size:33px}}
