:root { --bc-accent: #a9e6dd; --bc-panel: #0c1413; --bc-line: rgba(169, 230, 221, .25); --bc-muted: #9da7a4; }

.bc-section { position: relative; padding: clamp(64px, 8vw, 120px) clamp(24px, 7vw, 108px); border-top: 1px solid var(--bc-line); background: #080d0c; color: #f4f7f5; }
.bc-section::before { content: ""; position: absolute; inset: 20px; border: 1px solid rgba(169, 230, 221, .08); pointer-events: none; }
.bc-gallery { display: grid; grid-template-columns: minmax(220px, .8fr) minmax(0, 1.45fr); gap: clamp(32px, 6vw, 88px); align-items: start; }
.bc-section-intro { position: relative; z-index: 1; max-width: 480px; }
.bc-eyebrow { margin: 0 0 18px; color: var(--bc-accent); font: 700 10px/1.2 ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: .13em; }
.bc-section h2 { margin: 0; max-width: 600px; font-size: clamp(34px, 5vw, 72px); line-height: .98; letter-spacing: -.05em; color: #f7fbf9; }
.bc-section-intro > p:not(.bc-eyebrow) { margin: 24px 0 0; color: #b7c0bd; font-size: 16px; line-height: 1.7; }
.bc-link-button { margin-top: 30px; border: 1px solid var(--bc-accent); background: transparent; color: var(--bc-accent); padding: 13px 18px; cursor: pointer; font: 700 11px/1.1 ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: .08em; text-transform: uppercase; }
.bc-link-button:hover { background: var(--bc-accent); color: #08100e; }
.bc-gallery-grid { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.bc-gallery-card { margin: 0; border: 1px solid var(--bc-line); background: var(--bc-panel); min-width: 0; overflow: hidden; }
.bc-gallery-card:nth-child(3n) { grid-column: span 2; }
.bc-gallery-card img { width: 100%; aspect-ratio: 1 / .9; object-fit: cover; display: block; filter: saturate(.78) contrast(1.08); transition: transform .45s ease, filter .45s ease; }
.bc-gallery-card:hover img { transform: scale(1.035); filter: saturate(1) contrast(1.02); }
.bc-gallery-card div { padding: 14px 15px 16px; }
.bc-gallery-card span { color: var(--bc-accent); font: 700 9px/1.2 ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: .1em; }
.bc-gallery-card h3 { margin: 8px 0 0; color: #eff4f2; font-size: 14px; line-height: 1.35; font-weight: 600; }
.bc-contact { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, .78fr); gap: clamp(34px, 9vw, 140px); align-items: start; }
.bc-contact-details { display: grid; gap: 12px; margin-top: 32px; }
.bc-contact-details a { display: grid; gap: 5px; max-width: max-content; color: #eef8f5; font-size: 16px; text-decoration: none; border-bottom: 1px solid var(--bc-line); padding-bottom: 12px; }
.bc-contact-details a:hover { color: var(--bc-accent); }
.bc-contact-details span { color: var(--bc-accent); font: 700 9px/1.2 ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: .11em; text-transform: uppercase; }
.bc-contact-form { position: relative; z-index: 1; display: grid; gap: 16px; padding: clamp(22px, 3vw, 38px); border: 1px solid var(--bc-line); background: var(--bc-panel); }
.bc-contact-form label { display: grid; gap: 8px; color: #eaf3f0; font-size: 13px; font-weight: 600; }
.bc-contact-form label span { color: var(--bc-muted); font-size: 12px; font-weight: 400; }
.bc-contact-form input, .bc-contact-form textarea { width: 100%; box-sizing: border-box; border: 1px solid rgba(169, 230, 221, .3); outline: none; background: #07100e; color: #fff; padding: 13px; border-radius: 0; font: inherit; }
.bc-contact-form input:focus, .bc-contact-form textarea:focus { border-color: var(--bc-accent); box-shadow: 0 0 0 3px rgba(169,230,221,.1); }
.bc-contact-form textarea { resize: vertical; min-height: 130px; }
.bc-contact-form button { border: 0; background: var(--bc-accent); color: #07100e; padding: 15px 18px; cursor: pointer; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.bc-contact-form button:disabled { opacity: .6; cursor: wait; }
.bc-form-status { min-height: 1.5em; margin: 0; color: var(--bc-accent); font-size: 13px; line-height: 1.5; }
.bc-hidden { display: none !important; }

@media (max-width: 860px) { .bc-gallery, .bc-contact { grid-template-columns: 1fr; } .bc-gallery-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .bc-section { padding: 56px 20px; } .bc-section::before { inset: 10px; } .bc-gallery-grid { grid-template-columns: 1fr; } .bc-gallery-card:nth-child(3n) { grid-column: auto; } }
