/* ROMANIA — kastil gelap + accordion mingguan */
.ro-page { --color-primary:#eab308; --color-accent:#1e40af; --color-bg:#1c1b22; --ro-merah:#b91c1c; --ro-card:#26242e; --ro-muted:#9c97ab;
  background:var(--color-bg); color:#e8e6ef; font-family:'Raleway',system-ui,sans-serif; margin:-1.5rem -12px 0; padding-bottom:54px; text-align:center; }
.ro-container { width:100%; max-width:940px; margin:0 auto; padding:0 16px; }
.ro-breadcrumb { padding:14px 0 0; font-size:12px; color:var(--ro-muted); text-align:left; } .ro-breadcrumb a { color:var(--color-primary); }
.ro-castle { position:relative; margin-top:16px; padding:52px 18px 30px; background:var(--ro-card); border:1px solid #3a3746; }
.ro-castle::before { content:''; position:absolute; left:0; right:0; top:-14px; height:16px; background:var(--ro-card);
  clip-path:polygon(0 100%,0 0,10% 0,10% 60%,22% 60%,22% 0,32% 0,32% 60%,44% 60%,44% 0,56% 0,56% 60%,68% 60%,68% 0,78% 0,78% 60%,90% 60%,90% 0,100% 0,100% 100%); }
.ro-kicker { margin:0 0 10px; font-family:'Cinzel',Georgia,serif; font-size:11px; letter-spacing:.34em; color:var(--color-primary); }
.ro-h1 { font-family:'Cinzel',Georgia,serif; font-weight:700; font-size:clamp(22px,5.4vw,36px); line-height:1.16; margin:0 0 8px; color:#fff; }
.ro-date { margin:0; font-size:12.5px; color:var(--ro-muted); }
.ro-windows { display:flex; flex-wrap:wrap; justify-content:center; gap:12px; padding:30px 0 0; }
.ro-window { display:inline-flex; align-items:flex-end; justify-content:center; width:clamp(58px,15vw,76px); height:clamp(92px,24vw,124px);
  padding-bottom:16px; background:var(--ro-card); border:2px solid var(--color-accent); border-radius:50% 50% 3px 3px/38% 38% 3px 3px;
  font-family:'Cinzel',Georgia,serif; font-weight:700; font-size:clamp(26px,7vw,38px); color:var(--color-primary);
  opacity:0; transform:translateY(10px); animation:ro-in .45s ease forwards; }
.ro-window-empty { color:#4d4a5c; border-color:#3a3746; }
@keyframes ro-in { to{opacity:1;transform:translateY(0);} }
.ro-meta { margin:20px 0 0; font-size:12.5px; color:var(--ro-muted); }
.ro-desc { margin:14px auto 0; max-width:600px; font-size:14px; color:var(--ro-muted); }
.ro-section { margin-top:42px; }
.ro-h2 { font-family:'Cinzel',Georgia,serif; font-weight:700; font-size:clamp(19px,4.4vw,26px); margin:0 0 16px; color:#fff; }
.ro-filter { display:flex; flex-wrap:wrap; justify-content:center; gap:8px; margin-bottom:16px; }
.ro-filter select { height:40px; padding:0 12px; border:1px solid #3a3746; border-radius:0; background:var(--ro-card); color:#e8e6ef; font-family:inherit; font-size:13px; }
.ro-btn { display:inline-flex; align-items:center; height:40px; padding:0 18px; border:1px solid var(--color-primary); border-radius:0;
  background:transparent; color:var(--color-primary); font-size:12px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; cursor:pointer; }
.ro-btn:hover { background:var(--color-primary); color:#1c1b22; } .ro-btn-ghost { border-color:var(--ro-merah); color:#f0a3a3; }
.ro-btn-ghost:hover { background:var(--ro-merah); color:#fff; }
.ro-accordion { text-align:left; }
.ro-panel { background:var(--ro-card); border:1px solid #3a3746; margin-bottom:10px; }
.ro-panel summary { display:flex; align-items:center; justify-content:space-between; gap:12px; cursor:pointer; padding:14px 16px;
  font-family:'Cinzel',Georgia,serif; font-size:14px; color:var(--color-primary); list-style:none; }
.ro-panel summary::-webkit-details-marker { display:none; }
.ro-panel summary::after { content:'+'; font-size:18px; color:var(--ro-muted); }
.ro-panel[open] summary::after { content:'–'; }
.ro-panel-range { font-family:'Raleway',sans-serif; font-size:11.5px; color:var(--ro-muted); margin-left:auto; margin-right:10px; }
.ro-panel ul { list-style:none; margin:0; padding:0 16px 12px; }
.ro-panel li { display:flex; align-items:center; gap:12px; padding:9px 0; border-top:1px solid #33313e; }
.ro-li-day { flex:0 0 76px; font-size:11.5px; color:var(--ro-muted); }
.ro-li-date { flex:1 1 auto; font-size:13px; }
.ro-li-num { font-family:'Cinzel',Georgia,serif; font-size:17px; letter-spacing:.12em; color:var(--color-primary); }
.ro-empty { background:var(--ro-card); border:1px solid #3a3746; padding:40px 18px; }
.ro-empty h3 { font-family:'Cinzel',Georgia,serif; font-size:18px; margin:0 0 6px; color:#fff; }
.ro-empty p { margin:0; font-size:13px; color:var(--ro-muted); }
.ro-pagination { margin-top:14px; font-size:12.5px; color:var(--ro-muted); }
.ro-pagination .page-link { border-radius:0; border:1px solid #3a3746; background:var(--ro-card); color:#e8e6ef; }
.ro-pagination .page-item.active .page-link { background:var(--color-primary); border-color:var(--color-primary); color:#1c1b22; }
.ro-cards { display:grid; gap:12px; }
.ro-card { background:var(--ro-card); border:1px solid #3a3746; border-top:3px solid var(--color-accent); padding:20px 14px; }
.ro-card-label { display:block; font-size:10px; font-weight:700; letter-spacing:.2em; text-transform:uppercase; color:var(--ro-muted); }
.ro-card-value { display:block; margin:6px 0 3px; font-family:'Cinzel',Georgia,serif; font-size:19px; color:var(--color-primary); }
.ro-card-note { display:block; font-size:11.5px; color:var(--ro-muted); }
.ro-note { margin:18px 0 0; font-size:12.5px; color:var(--ro-muted); } .ro-note a { color:var(--color-primary); font-weight:700; }
@media (min-width:768px) { .ro-cards { grid-template-columns:repeat(3,1fr); } }
@media (min-width:992px) { .ro-page { margin-left:-24px; margin-right:-24px; } }
@media (max-width:575.98px) { .ro-castle { padding:34px 12px 22px; } .ro-windows { gap:8px; } .ro-li-day { flex:0 0 64px; } }
@media (prefers-reduced-motion:reduce) { .ro-window { animation:none; opacity:1; transform:none; } }
