/* styles.css */
body { margin:0; font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; line-height:1.6; color:#111; background:#fafafa; }
.site-header { background:#050816; color:#fff; padding:16px 24px; }
.nav-wrap { max-width:960px; margin:0 auto; display:flex; justify-content:space-between; align-items:center; }
.brand { font-weight:700; letter-spacing:0.05em; }
nav a { color:#fff; text-decoration:none; margin-left:16px; font-size:0.95rem; }
nav a:hover { text-decoration:underline; }
.container { max-width:960px; margin:0 auto; padding:24px 16px 48px; }
.page-header { padding:16px 0 8px; }
.page-header h1 { margin-bottom:4px; }
.section { padding:24px 0; }
.cards { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:16px; }
.card { background:#fff; border-radius:12px; padding:16px; box-shadow:0 2px 6px rgba(15,23,42,0.06); }
.card h3 { margin-top:0; }
.two-col { display:grid; grid-template-columns:minmax(0,2fr) minmax(0,1.5fr); gap:24px; align-items:flex-start; }
.schedule-table { width:100%; border-collapse:collapse; background:#fff; border-radius:12px; overflow:hidden; box-shadow:0 2px 6px rgba(15,23,42,0.06); }
.schedule-table th, .schedule-table td { padding:10px 12px; border-bottom:1px solid #e5e7eb; text-align:left; font-size:0.9rem; }
.schedule-table th { background:#f3f4f6; text-transform:uppercase; font-size:0.8rem; letter-spacing:0.03em; }
.form-row { margin-bottom:12px; }
label { display:block; font-size:0.9rem; }
input, select, textarea { width:100%; padding:8px 10px; margin-top:4px; border-radius:8px; border:1px solid #d1d5db; font-family:inherit; font-size:0.9rem; }
input:focus, select:focus, textarea:focus { outline:none; border-color:#f97316; box-shadow:0 0 0 1px #f97316; }
.btn { display:inline-block; padding:10px 18px; border-radius:999px; border:2px solid transparent; font-size:0.95rem; cursor:pointer; text-decoration:none; }
.btn-primary { background:#f97316; color:#111; border-color:#f97316; }
.btn-primary:hover { background:#ea580c; border-color:#ea580c; }
.site-footer { background:#020617; color:#9ca3af; padding:16px; text-align:center; font-size:0.85rem; }
.portrait-placeholder { background:#111; color:#fff; border-radius:12px; padding:40px 16px; text-align:center; font-size:0.9rem; margin-bottom:12px; }
.video-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:16px; }
.video-card { background:#fff; border-radius:12px; padding:12px; box-shadow:0 2px 6px rgba(15,23,42,0.06); }
.video-placeholder { background:#111; color:#fff; border-radius:8px; height:180px; display:flex; align-items:center; justify-content:center; font-size:0.9rem; }
@media (max-width:768px){
  .two-col { grid-template-columns:1fr; }
  nav a { margin-left:10px; font-size:0.85rem; }
}
