@font-face{font-family:Inter;src:url('../fonts/inter-400.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Inter;src:url('../fonts/inter-500.woff2') format('woff2');font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:Inter;src:url('../fonts/inter-600.woff2') format('woff2');font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:Inter;src:url('../fonts/inter-700.woff2') format('woff2');font-style:normal;font-weight:700;font-display:swap}
/* PCO Poprad 2026 — derived layout measurements from supplied RustDesk saved webpage.
   Exact source metrics: Inter Variable; header 1280px; navigation 18px; h1 60px
   desktop/48px mobile; lead 20px; buttons 16px, 14px/24px; photo 1280px 16:9.
   Original content/links and WonderCMS editor behavior retained. */
:root {
  --paper: #ffffff;
  --ink: #101010;
  --heading: #000000;
  --text-muted: rgba(16,16,16,.66);
  --border: #e5e7eb;
  --line: #e5e7eb;
  --surface: #ffffff;
  --subtle-hover: #f3f4f6;
  --shadow: 0 3px 10px -5px rgba(0,0,0,.30);
  --gold: #d8b020;
  --gold-hover: #e0bb37;
  --gold-ink: #161616;
}
html[data-theme="dark"] {
  --paper: #030620;
  --ink: #e5ecf6;
  --heading: #f7f8f8;
  --text-muted: rgba(229,236,246,.72);
  --border: #30364b;
  --line: #3b435a;
  --surface: #11172f;
  --subtle-hover: #1b2440;
  --shadow: 0 3px 18px rgba(0,0,0,.33);
  --gold: #d8b020;
  --gold-hover: #edc34b;
  --gold-ink: #101010;
}
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin:0; min-width: 320px; background:var(--paper); color:var(--ink); font-family: Inter,'Inter Variable',ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; font-size:16px; line-height:1.5; letter-spacing:-.025em; -webkit-font-smoothing:antialiased; }
body,button,input { font-family:Inter,'Inter Variable',ui-sans-serif,system-ui,sans-serif; }
a { color:inherit; }
.site-header { height:65px; position:sticky; z-index:40; top:0; background:var(--paper); border-bottom:1px solid var(--border); box-shadow:var(--shadow); }
.header-inner { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); align-items:center; max-width:1280px; width:100%; padding:0 24px; height:100%; margin:0 auto; column-gap:12px; }
.brand { display:flex; align-items:center; justify-self:start; text-decoration:none; }
.brand img { display:block; width:38px; height:42px; object-fit:contain; }
.main-nav { justify-self:center; }
.menu { margin:0; padding:0; list-style:none; display:flex; gap:0; align-items:center; }
.menu .nav-item { list-style:none; margin:0; padding:0; }
.menu .nav-link { display:inline-flex; align-items:center; padding:12px 16px; font-size:18px; line-height:23px; font-weight:500; letter-spacing:.01rem; text-decoration:none; white-space:nowrap; color:var(--ink); transition:color .15s ease; }
.menu .nav-link:hover,.menu .nav-item.active .nav-link { color:var(--gold); }
.header-controls { display:flex; justify-self:end; align-items:center; gap:8px; }
.theme-toggle { width:40px; height:40px; display:inline-flex; align-items:center; justify-content:center; background:transparent; color:var(--text-muted); border:0; border-radius:8px; cursor:pointer; padding:10px; }
.theme-toggle:hover { background:var(--subtle-hover); color:var(--heading); }
.theme-toggle:focus-visible,.nav-toggle:focus-visible, a:focus-visible { outline:2px solid var(--gold); outline-offset:3px; }
.theme-toggle svg { display:block; width:20px; height:20px; stroke:currentColor; fill:none; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.moon-icon { display:none!important; }
html[data-theme="dark"] .moon-icon { display:block!important; }
html[data-theme="dark"] .sun-icon { display:none!important; }
.nav-toggle { display:none; }
/* Homepage hero: same hierarchy as reference. Remove announcement and domain notice entirely. */
.main-home { padding:0 24px 0; }
.hero { max-width:1280px; margin:0 auto; text-align:center; padding-top:80px; }
.hero-heading { margin:0 auto 64px; max-width:1100px; }
.hero h1 { margin:0 auto 16px; max-width:1100px; font-size:60px; line-height:1.06; font-weight:700; letter-spacing:-.05em; color:var(--heading); }
.hero-lead { max-width:768px; margin:0 auto 24px; color:var(--text-muted); font-size:20px; line-height:28px; letter-spacing:-.025em; font-weight:400; }
.hero-actions { display:flex; align-items:center; justify-content:center; gap:16px; margin:0; }
.pco-button { display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:14px 24px; min-height:50px; border-radius:9999px; border:1px solid #9ca3af; background:transparent; color:var(--ink); font-size:16px; font-weight:500; line-height:1.375; letter-spacing:-.025em; text-decoration:none; white-space:nowrap; transition:color .2s, background-color .2s, border-color .2s; }
.pco-button:hover { background:var(--subtle-hover); border-color:var(--ink); }
.pco-button.primary { background:var(--gold); border-color:var(--gold); color:var(--gold-ink); }
.pco-button.primary:hover { background:var(--gold-hover); border-color:var(--gold-hover); }
.pco-button img { display:inline-block; width:20px; height:20px; object-fit:contain; filter:grayscale(1) contrast(3); }
html[data-theme="dark"] .pco-button.secondary img { filter:grayscale(1) brightness(0) invert(1); }
.hero-photo { display:block; width:100%; max-width:1280px; margin:0 auto; aspect-ratio:16/9; overflow:hidden; border-radius:15px; border:1px solid var(--border); }
.hero-photo img { display:block; width:100%; height:100%; object-fit:cover; object-position:center center; }
/* Interior pages retain original structure; match reference typography and theme color system. */
.main-interior { max-width:1024px; min-height:calc(100vh - 164px); margin:0 auto; padding:80px 24px; }
.page-section h1 { color:var(--heading); font-size:48px; line-height:1.08; letter-spacing:-.05em; font-weight:700; margin:0 0 30px; }
.page-section h2 { color:var(--heading); font-size:24px; line-height:1.3; letter-spacing:-.035em; font-weight:650; margin:36px 0 16px; }
.page-section p { color:var(--text-muted); font-size:18px; line-height:1.8; margin:0 0 20px; }
.page-section strong { color:var(--ink); font-weight:700; }
.page-section a:not(.pco-button) { text-decoration-color:var(--gold); text-underline-offset:4px; }
.schedule { display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-top:30px; }
.schedule-day { background:var(--surface); border:1px solid var(--border); border-radius:15px; padding:30px; }
.schedule-day h2 { font-size:24px; margin:0 0 16px; }
.schedule-line { display:flex; align-items:baseline; justify-content:space-between; gap:16px; padding:14px 0; border-top:1px solid var(--line); }
.schedule-time { color:var(--heading); font-size:24px; letter-spacing:-.04em; font-weight:700; font-variant-numeric:tabular-nums; }
.schedule-service { color:var(--text-muted); font-size:16px; text-align:right; }
.temple-link { margin-top:8px; }
.contact-cols { display:grid; grid-template-columns:1fr 1fr; gap:36px; margin:30px 0 32px; }
.contact-part { border-top:1px solid var(--line); padding-top:18px; }
.contact-part h2 { font-size:22px; margin:0 0 18px; }
.contact-part p { margin-bottom:12px; }
.contact-part .name { color:var(--heading); font-weight:650; }
.contact-region { border-top:1px solid var(--line); padding-top:6px; }
.contact-region h2 { margin-top:24px; }
.site-footer { margin-top:60px; border-top:1px solid var(--border); }
.footer-inner { max-width:1280px; margin:0 auto; padding:24px; text-align:center; color:var(--text-muted); font-size:13px; }
/* WCMS editor outlines must remain visible. */
.main-home > .editable,.main-interior > .editable { display:block; }
@media (max-width: 850px) {
  .header-inner { display:flex; justify-content:space-between; padding:0 20px; }
  .brand { margin-right:auto; }
  .header-controls { gap:4px; position:relative; z-index:2; }
  .theme-toggle,.nav-toggle { touch-action:manipulation; -webkit-tap-highlight-color:transparent; }
  .nav-toggle { width:42px; height:42px; padding:10px; border:1px solid var(--border); background:var(--paper); border-radius:8px; display:flex; flex-direction:column; gap:5px; align-items:center; justify-content:center; cursor:pointer; }
  .nav-toggle span { width:20px; height:2px; border-radius:3px; background:var(--ink); display:block; }
  .main-nav { display:none; position:absolute; left:0; right:0; width:100%; top:65px; margin:0; padding:16px 20px 20px; background:var(--paper); box-shadow:var(--shadow); border-bottom:1px solid var(--border); }
  .main-nav.is-open { display:block; }
  .menu { flex-direction:column; align-items:stretch; width:100%; }
  .menu .nav-link { display:block; padding:12px; font-size:18px; }
  .hero { padding-top:48px; }
  .hero h1 { font-size:48px; line-height:1.08; }
  .hero-heading { margin-bottom:48px; }
  .main-interior { padding-top:64px; }
}
@media (max-width: 600px) {
  .main-home { padding:0 16px; }
  .hero { padding-top:48px; }
  .hero-heading { margin-bottom:38px; }
  .hero h1 { font-size:clamp(35px,9vw,48px); line-height:1.05; margin-bottom:20px; }
  .hero-lead { font-size:18px; line-height:27px; margin-bottom:24px; }
  .hero-actions { flex-direction:column; gap:12px; align-items:stretch; max-width:320px; margin:0 auto; }
  .pco-button { width:100%; justify-content:center; }
  .hero-photo { aspect-ratio:16/10; border-radius:13px; }
  .main-interior { padding:45px 18px 70px; }
  .page-section h1 { font-size:36px; }
  .page-section h2 { font-size:22px; }
  .page-section p { font-size:16px; }
  .schedule,.contact-cols { grid-template-columns:1fr; gap:16px; }
  .schedule-day { padding:23px 20px; }
  .site-footer { margin-top:48px; }
}
@media (prefers-reduced-motion: reduce) {
  *,*::before,*::after { transition-duration:.01ms!important; scroll-behavior:auto!important; }
}


/* Login-only presentation. Public website selectors/layout untouched. */
.pco-login-page .site-header,.pco-login-page .site-footer{display:none}
.pco-login-page .main-interior{max-width:none;min-height:100svh;display:grid;place-items:center;padding:32px 16px;margin:0;background:radial-gradient(ellipse at 50% 20%,rgba(216,176,32,.09),transparent 55%),var(--paper)}
.pco-login-shell{width:100%;max-width:440px}
.pco-login-card{position:relative;padding:48px 42px 36px;background:var(--surface);border:1px solid var(--border);border-radius:24px;box-shadow:0 20px 60px rgba(0,0,0,.065),0 1px 6px rgba(0,0,0,.035);text-align:center}
html[data-theme="dark"] .pco-login-card{box-shadow:0 20px 80px rgba(0,0,0,.25)}
.pco-login-toolbar{position:absolute;top:14px;right:14px}
.pco-login-brand{display:inline-flex;align-items:center;justify-content:center;padding:0;margin:0 auto 21px;min-width:95px;min-height:106px;border-radius:15px}
.pco-login-brand img{width:auto;height:96px;max-width:96px;object-fit:contain}
.pco-login-card h1{margin:0 0 8px;font-size:32px;line-height:1.18;letter-spacing:-.05em;color:var(--heading);font-weight:700}
.pco-login-intro{margin:0 auto 30px;color:var(--text-muted);font-size:15px;letter-spacing:-.01em}
.pco-login-form{text-align:left}
.pco-login-form label{display:block;font-size:14px;line-height:22px;font-weight:600;letter-spacing:0;margin-bottom:9px;color:var(--ink)}
.pco-password-wrap{position:relative}
.pco-password-wrap input{display:block;width:100%;height:52px;padding:0 52px 0 16px;color:var(--ink);background:var(--paper);border:1px solid var(--border);border-radius:12px;outline:none;font-size:16px;letter-spacing:normal;transition:border-color .15s,box-shadow .15s}
.pco-password-wrap input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(216,176,32,.16)}
.pco-password-wrap input::placeholder{color:var(--text-muted);opacity:.8}
.pco-show-password{border:0;background:transparent;display:grid;place-items:center;position:absolute;right:6px;top:6px;width:40px;height:40px;color:var(--text-muted);cursor:pointer;border-radius:8px}
.pco-show-password:hover{background:var(--subtle-hover);color:var(--ink)}
.pco-show-password svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.pco-login-submit{width:100%;height:52px;margin-top:19px;display:flex;justify-content:center;align-items:center;gap:14px;color:var(--gold-ink);background:var(--gold);border:1px solid var(--gold);border-radius:12px;font-size:16px;font-weight:650;cursor:pointer}
.pco-login-submit:hover{background:var(--gold-hover);border-color:var(--gold-hover)}
.pco-login-submit:focus-visible,.pco-show-password:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.pco-login-back{display:inline-block;margin-top:30px;text-decoration:none;font-size:14px;color:var(--text-muted);letter-spacing:0}
.pco-login-back:hover{color:var(--heading);text-decoration:underline}
@media(max-width:480px){.pco-login-card{padding:43px 22px 31px;border-radius:20px}.pco-login-card h1{font-size:30px}}
