/* IRELAND — perbukitan + timeline shamrock */
.ie-page { --color-primary:#15803d; --color-accent:#f97316; --color-bg:#f0f7f1; --ie-ink:#1c2c21; --ie-muted:#6d7d72;
  background:var(--color-bg); color:var(--ie-ink); font-family:'Quicksand',system-ui,sans-serif; margin:-1.5rem -12px 0; padding-bottom:54px; text-align:center; }
.ie-container { width:100%; max-width:920px; margin:0 auto; padding:0 16px; }
.ie-hills { position:relative; background:#fff; padding:30px 16px 96px; overflow:hidden; margin-top:14px; }
.ie-hills-inner { position:relative; z-index:1; max-width:920px; margin:0 auto; }
.ie-breadcrumb { font-size:12px; color:var(--ie-muted); text-align:left; margin-bottom:10px; } .ie-breadcrumb a { color:var(--color-primary); }
.ie-hill { position:absolute; left:-10%; right:-10%; border-radius:50% 50% 0 0/100% 100% 0 0; }
.ie-hill-1 { bottom:-40px; height:120px; background:#a7d8b4; }
.ie-hill-2 { bottom:-56px; height:104px; background:#5fae78; left:-24%; right:6%; }
.ie-hill-3 { bottom:-64px; height:92px; background:var(--color-primary); left:6%; right:-24%; }
.ie-kicker { margin:0 0 8px; font-size:11px; font-weight:700; letter-spacing:.28em; color:var(--color-primary); }
.ie-h1 { font-weight:700; font-size:clamp(24px,5.8vw,40px); line-height:1.12; margin:0 0 8px; }
.ie-date { margin:0; font-size:12.5px; color:var(--ie-muted); }
.ie-shamrocks { display:flex; flex-wrap:wrap; justify-content:center; gap:16px; padding:26px 0 0; }
.ie-sham { position:relative; width:clamp(78px,20vw,102px); height:clamp(86px,22vw,112px); opacity:0; transform:scale(.88);
  animation:ie-in .45s ease forwards; }
.ie-leaf { position:absolute; width:52%; height:52%; border-radius:50% 50% 50% 0; background:var(--color-primary); }
.ie-leaf-a { top:0; left:24%; transform:rotate(-45deg); }
.ie-leaf-b { top:26%; left:0; transform:rotate(-135deg); }
.ie-leaf-c { top:26%; right:0; transform:rotate(45deg); }
.ie-stem { position:absolute; bottom:0; left:calc(50% - 2px); width:4px; height:26%; background:var(--color-primary); border-radius:2px; }
.ie-num { position:absolute; top:30%; left:0; right:0; text-align:center; font-weight:700; font-size:clamp(24px,6.4vw,32px); color:#fff; z-index:1; }
.ie-sham-empty .ie-leaf, .ie-sham-empty .ie-stem { background:#c9dccf; } .ie-sham-empty .ie-num { color:#8ba394; }
@keyframes ie-in { to{opacity:1;transform:scale(1);} }
.ie-meta { margin:20px 0 0; font-size:12.5px; color:var(--ie-muted); }
.ie-desc { margin:14px auto 0; max-width:600px; font-size:14px; color:var(--ie-muted); }
.ie-section { margin-top:42px; }
.ie-h2 { font-weight:700; font-size:clamp(20px,4.6vw,28px); margin:0 0 16px; color:var(--color-primary); }
.ie-filter { display:flex; flex-wrap:wrap; justify-content:center; gap:8px; margin-bottom:20px; }
.ie-filter select { height:42px; padding:0 14px; border:2px solid var(--color-primary); border-radius:12px; background:#fff; font-family:inherit; font-size:13px; font-weight:700; }
.ie-btn { display:inline-flex; align-items:center; height:42px; padding:0 20px; border:2px solid var(--color-primary); border-radius:12px;
  background:var(--color-primary); color:#fff; font-size:12px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; cursor:pointer; }
.ie-btn:hover { background:#166534; color:#fff; } .ie-btn-ghost { background:var(--color-accent); border-color:var(--color-accent); }
.ie-timeline { position:relative; list-style:none; margin:0; padding:6px 0; }
.ie-timeline::before { content:''; position:absolute; left:14px; top:0; bottom:0; width:3px; background:#bcd9c6; }
.ie-tl { position:relative; padding:0 0 14px 40px; text-align:left; }
.ie-knot { position:absolute; left:6px; top:14px; width:19px; height:19px; background:var(--color-accent); border:3px solid #fff;
  border-radius:6px; transform:rotate(45deg); }
.ie-tl-card { display:flex; align-items:center; justify-content:space-between; gap:12px; background:#fff; border:2px solid #cfe3d6;
  border-radius:12px; padding:12px 16px; }
.ie-tl-date { font-size:13.5px; font-weight:700; } .ie-tl-date small { display:block; font-weight:400; font-size:11.5px; color:var(--ie-muted); }
.ie-tl-num { font-size:24px; font-weight:700; letter-spacing:.12em; color:var(--color-primary); }
.ie-empty { background:#fff; border:2px dashed var(--color-primary); border-radius:12px; padding:38px 18px; }
.ie-empty h3 { font-weight:700; font-size:18px; margin:0 0 6px; } .ie-empty p { margin:0; font-size:13px; color:var(--ie-muted); }
.ie-pagination { margin-top:14px; font-size:13px; color:var(--ie-muted); }
.ie-pagination .page-link { border-radius:10px; border:2px solid var(--color-primary); color:var(--color-primary); font-weight:700; }
.ie-pagination .page-item.active .page-link { background:var(--color-primary); border-color:var(--color-primary); color:#fff; }
.ie-cards { display:grid; gap:12px; }
.ie-card { background:#fff; border:2px solid #cfe3d6; border-radius:12px; border-bottom:6px solid var(--color-accent); padding:18px 14px; }
.ie-card-label { display:block; font-size:10.5px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; color:var(--ie-muted); }
.ie-card-value { display:block; margin:6px 0 3px; font-size:19px; font-weight:700; color:var(--color-primary); }
.ie-card-note { display:block; font-size:11.5px; color:var(--ie-muted); }
.ie-note { margin:18px 0 0; font-size:13px; color:var(--ie-muted); } .ie-note a { color:var(--color-accent); font-weight:700; }
@media (min-width:768px) { .ie-cards { grid-template-columns:repeat(3,1fr); }
  .ie-timeline::before { left:50%; transform:translateX(-50%); }
  .ie-tl { width:50%; padding:0 0 16px 0; } .ie-tl-kiri { padding-right:32px; } .ie-tl-kanan { margin-left:50%; padding-left:32px; }
  .ie-tl-kiri .ie-knot { left:auto; right:-10px; } .ie-tl-kanan .ie-knot { left:-10px; } }
@media (min-width:992px) { .ie-page { margin-left:-24px; margin-right:-24px; } }
@media (max-width:575.98px) { .ie-hills { padding:24px 12px 78px; } .ie-shamrocks { gap:10px; } }
@media (prefers-reduced-motion:reduce) { .ie-sham { animation:none; opacity:1; transform:none; } }
