/*
Theme Name: Eko Patrio Official
Theme URI: https://ekopatrio.com/
Author: Tim Eko Patrio
Description: Tema resmi ringan untuk profil, artikel, kegiatan, dan catatan kerja Eko Hendro Purnomo (Eko Patrio).
Version: 1.1.0
Requires at least: 6.5
Requires PHP: 8.0
Text Domain: eko-patrio-official
*/

:root {
  --navy: #08265f;
  --navy-deep: #04183f;
  --blue: #1145a5;
  --sky: #8fd3ff;
  --sky-soft: #dff3ff;
  --red: #e31c25;
  --yellow: #ffc83d;
  --cream: #f7f3ed;
  --paper: #fffdf9;
  --ink: #101a2d;
  --muted: #596273;
  --line: #d9d6d1;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--cream);
  color: var(--ink);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  text-rendering: optimizeLegibility;
}
/* Keep decorative artwork clipped horizontally without locking page scroll. */
body.brand-site {
  overflow-x: clip !important;
  overflow-y: auto !important;
}
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; height: auto; }
button, input, textarea, select { font: inherit; }
h1, h2, h3, p { text-wrap: pretty; }
.skip-link {
  position: fixed;
  z-index: 1000;
  top: 1rem;
  left: 1rem;
  transform: translateY(-180%);
  padding: .8rem 1rem;
  background: #fff;
  color: var(--navy);
  border-radius: .6rem;
  font-weight: 800;
}
.skip-link:focus { transform: translateY(0); }
.screen-reader-text {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.admin-bar .monitor-header { top: 32px; }
.eko-source-list { padding-left: 1.25rem; }
.eko-source-list li + li { margin-top: .7rem; }
.eko-page-shell { max-width: 900px; margin: 0 auto; padding: clamp(3rem, 7vw, 6rem) 1.2rem; }
.eko-page-shell h1 { color: var(--navy-deep); font-size: clamp(2.8rem, 7vw, 5.4rem); line-height: .96; letter-spacing: -.05em; }
.eko-page-shell h2 { margin-top: 2.8rem; color: var(--navy-deep); font-size: clamp(1.7rem, 4vw, 2.5rem); }
.eko-page-shell p, .eko-page-shell li { color: var(--muted); font-size: 1.05rem; line-height: 1.78; }
.eko-page-shell a { color: var(--red); font-weight: 800; text-decoration: underline; text-underline-offset: .18em; }
.eko-profile-hero { display: grid; grid-template-columns: 1fr minmax(260px, .48fr); gap: clamp(2rem, 6vw, 5rem); align-items: center; }
.eko-profile-portrait { padding: 1rem; background: var(--sky-soft); border: 3px solid var(--navy); border-radius: 1.5rem; box-shadow: 12px 12px 0 var(--red); }
.eko-profile-portrait img { width: 100%; max-height: 620px; object-fit: cover; border-radius: 1rem; }
.eko-profile-portrait figcaption { padding-top: .8rem; color: var(--muted); font-size: .78rem; line-height: 1.5; }
.eko-profile-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin: 2.5rem 0; }
.eko-profile-facts article { padding: 1.35rem; background: #fff; border: 1px solid var(--line); border-radius: 1rem; }
.eko-profile-facts strong { display: block; margin-bottom: .35rem; color: var(--navy); }
.eko-privacy-note { padding: 1.2rem 1.35rem; background: var(--sky-soft); border-left: 5px solid var(--navy); }
.monitor-footer a { color: var(--navy); font-weight: 800; text-decoration: underline; text-underline-offset: .15em; }
@media (max-width: 782px) { .admin-bar .monitor-header { top: 46px; } }
@media (max-width: 680px) {
  .eko-profile-hero, .eko-profile-facts { grid-template-columns: 1fr; }
  .eko-profile-portrait { max-width: 420px; }
}
