.visitbhv-ad-admin-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.visitbhv-ad-admin-grid label { display: grid; gap: 6px; }
.visitbhv-ad-admin-grid input, .visitbhv-ad-admin-grid textarea { box-sizing: border-box; width: 100%; }
.visitbhv-ad-admin-grid .visitbhv-ad-wide { grid-column: 1 / -1; }
.visitbhv-attraction-details, .visitbhv-related-attractions { width: min(100%, 1120px); margin: 3rem auto 0; }
.visitbhv-attraction-details { padding: clamp(1.35rem, 4vw, 2.5rem); border-radius: 24px; background: #f1f5f4; color: #0d1b2a; }
.visitbhv-ad-heading p, .visitbhv-related-eyebrow { margin: 0 0 .45rem; color: #287d79; font-size: .76rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.visitbhv-ad-heading h2, .visitbhv-related-attractions h2 { margin: 0 0 1.5rem; }
.visitbhv-ad-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; overflow: hidden; margin: 0; border-radius: 16px; background: rgba(13,27,42,.09); }
.visitbhv-ad-item { display: grid; grid-template-columns: 34px 1fr; gap: .75rem; min-height: 92px; padding: 1rem; background: #fff; }
.visitbhv-ad-icon { display: grid; width: 32px; height: 32px; place-items: center; border-radius: 50%; background: #e5f0ef; color: #0d5f63; font-weight: 900; }
.visitbhv-ad-item dt { margin: 0 0 .25rem; color: #577; font-size: .72rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.visitbhv-ad-item dd { margin: 0; font-weight: 650; }
.visitbhv-ad-transit { display:grid; grid-template-columns:minmax(180px,.8fr) minmax(240px,1.2fr); gap:1rem; align-items:center; margin-top:1.25rem; padding:1rem 1.15rem; border-radius:16px; background:#0d1b2a; color:#fff; }
.visitbhv-ad-transit p { margin:0 0 .25rem; color:#65d2ca; font-size:.7rem; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }
.visitbhv-ad-transit h3 { margin:0 0 .2rem; color:#fff; font-size:1.25rem; }
.visitbhv-ad-transit span { color:rgba(255,255,255,.68); font-size:.8rem; }
.visitbhv-ad-bus-lines { display:flex; flex-wrap:wrap; gap:.4rem; align-items:center; }
.visitbhv-ad-bus-lines img { width:auto; height:34px; border-radius:6px; }
.visitbhv-ad-bus-lines > span { display:grid; min-width:42px; height:32px; place-items:center; border-radius:6px; background:#2a8b88; color:#fff; font-weight:900; }
.visitbhv-ad-transit .visitbhv-ad-transit-note { grid-column:1 / -1; margin:.15rem 0; color:rgba(255,255,255,.75); font-size:.82rem; font-weight:600; letter-spacing:0; text-transform:none; }
.visitbhv-ad-transit-links { grid-column:1 / -1; display:flex; flex-wrap:wrap; gap:.5rem; }
.visitbhv-ad-transit-links a { padding:.5rem .75rem; border:1px solid rgba(255,255,255,.2); border-radius:999px; color:#fff; font-size:.76rem; font-weight:800; text-decoration:none; }
.visitbhv-ad-good-for { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; margin-top: 1.25rem; }
.visitbhv-ad-good-for span { padding: .45rem .7rem; border-radius: 999px; background: #fff; font-size: .84rem; }
.visitbhv-ad-tip { margin-top: 1.25rem; padding: 1rem 1.15rem; border-left: 4px solid #d6a331; border-radius: 0 12px 12px 0; background: #fff9e8; }
.visitbhv-ad-tip p { margin: .35rem 0 0; }
.visitbhv-ad-actions { display: flex; flex-wrap: wrap; gap: .7rem; margin-top: 1.35rem; }
.visitbhv-ad-actions a { padding: .72rem 1rem; border: 1px solid #0d5f63; border-radius: 999px; color: #0d5f63; font-weight: 800; text-decoration: none; }
.visitbhv-ad-actions a.visitbhv-ad-primary { background: #0d5f63; color: #fff; }
.visitbhv-related-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.visitbhv-related-card { overflow: hidden; border: 1px solid rgba(13,27,42,.12); border-radius: 18px; background: #fff; }
.visitbhv-related-image { display: block; min-height: 180px; background: #0d1b2a center/cover no-repeat; }
.visitbhv-related-card > div { padding: 1rem; }
.visitbhv-related-card h3 { margin: 0 0 .55rem; }
.visitbhv-related-card h3 a { color: inherit; text-decoration: none; }
.visitbhv-related-link { color: #287d79; font-weight: 800; text-decoration: none; }
@media (max-width: 800px) { .visitbhv-ad-grid, .visitbhv-related-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .visitbhv-ad-admin-grid, .visitbhv-ad-grid, .visitbhv-related-grid, .visitbhv-ad-transit { grid-template-columns: 1fr; } .visitbhv-ad-transit .visitbhv-ad-transit-note,.visitbhv-ad-transit-links { grid-column:auto; } }
