/*
Theme Name: Katholisch in Haunstetten
Theme URI: https://katholisch-in-haunstetten.de
Author: PG Haunstetten Design System
Description: WordPress-Theme für die Pfarreiengemeinschaft St. Albert · St. Georg, Augsburg-Haunstetten. Sandstein-Neutrals, Jahreskreis-Grün, Kleeblattkreuz-Gold.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: pg-haunstetten
*/

/* ------------------------------------------------------------
   Schriften werden LOKAL geladen (siehe assets/fonts/fonts.css).
   Es besteht keine Verbindung mehr zu Google-Servern.
   ------------------------------------------------------------ */
@import url('assets/fonts/fonts.css');

:root{
--stone-50:#FAF6EF;--stone-100:#F3ECDF;--stone-200:#E7DCC8;--stone-300:#D6C6A8;--stone-400:#B9A581;--stone-500:#94835F;--stone-600:#6E6147;--stone-700:#514732;--stone-800:#352E20;--stone-900:#221E16;--white:#FFFFFF;
--green-50:#E9F0EA;--green-100:#D2E1D6;--green-200:#A9C6B1;--green-300:#6E9C7E;--green-500:#3C7355;--green-600:#2E5A43;--green-700:#244836;--green-800:#1B362A;
--gold-100:#F2E6C9;--gold-200:#E3CE9C;--gold-400:#C7A35A;--gold-500:#B8924A;--gold-600:#99773A;--gold-700:#74592B;
--liturgy-violet:#5A4A78;--liturgy-red:#A23128;
--color-canvas:var(--stone-50);--color-canvas-sunken:var(--stone-100);--surface-card:var(--white);
--text-heading:var(--stone-900);--text-body:var(--stone-800);--text-muted:var(--stone-600);--text-faint:var(--stone-500);--text-on-dark:var(--stone-50);
--color-primary:var(--green-600);--color-primary-hover:var(--green-700);--color-accent:var(--gold-500);--color-accent-hover:var(--gold-600);
--link:var(--green-600);--link-hover:var(--green-800);
--border-subtle:#EAE0CE;--border-default:#DDD0B8;
--font-display:'Cormorant Garamond',Georgia,serif;--font-serif:'Cormorant Garamond',Georgia,serif;/* Source Serif 4 wurde nirgends verwendet */--font-body:'Source Sans 3',system-ui,sans-serif;
--radius-md:10px;--radius-lg:16px;--shadow-md:0 4px 12px rgba(53,46,32,.10),0 2px 4px rgba(53,46,32,.06);--shadow-lg:0 12px 28px rgba(53,46,32,.14);
}

*{box-sizing:border-box}
body{margin:0;background:var(--color-canvas);color:var(--text-body);font-family:var(--font-body);font-size:16px;line-height:1.65}
a{color:var(--link);text-decoration:none}
a:hover{color:var(--link-hover);text-decoration:underline}
h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;color:var(--text-heading);line-height:1.15;margin:0 0 .5em}
img{max-width:100%;display:block}
.wrap{max-width:1400px;margin:0 auto;background:var(--surface-card);box-shadow:var(--shadow-lg)}

.pg-topbar{background:var(--green-800);color:var(--stone-50);font-size:13px;padding:8px 32px;display:flex;justify-content:flex-end;gap:20px;flex-wrap:wrap}
.pg-topbar a{color:var(--stone-50)}
.pg-topbar a.mail{color:var(--gold-200)}

.pg-header{display:flex;align-items:center;justify-content:space-between;padding:20px 32px;background:var(--surface-card);border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;gap:16px}
.pg-brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit}
.pg-brand img{width:52px;height:52px}
.pg-brand .name{font-family:var(--font-display);font-weight:600;font-size:23px;color:var(--text-heading);line-height:1.1}
.pg-brand .sub{font-size:12px;letter-spacing:.08em;color:var(--text-muted)}

.pg-nav ul{display:flex;gap:22px;flex-wrap:wrap;margin:0;padding:0;list-style:none;font-size:15px;font-weight:600}
.pg-nav a{color:var(--text-heading)}
.pg-nav li.current-menu-item>a{color:var(--color-primary)}
.pg-nav ul ul{display:none}

.pg-hero{position:relative;background:var(--green-700);color:var(--stone-50);padding:72px 32px;overflow:hidden}
.pg-hero .mark-bg{position:absolute;right:-40px;top:-40px;width:320px;height:320px;opacity:.08}
.pg-hero .inner{position:relative;max-width:720px}
.pg-hero .eyebrow{font-size:13px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-200);margin-bottom:14px}
.pg-hero h1{font-size:48px;color:var(--stone-50);margin-bottom:20px}
.pg-hero p{font-size:18px;color:var(--green-100);max-width:56ch;margin:0 0 30px}
.pg-btn{display:inline-flex;align-items:center;height:48px;padding:0 26px;font-weight:600;border-radius:10px;text-decoration:none}
.pg-btn.primary{background:var(--gold-500);color:var(--stone-900)}
.pg-btn.secondary{background:transparent;color:var(--stone-50);border:1.5px solid rgba(255,255,255,.5)}

.pg-quicklinks{padding:22px 32px;background:var(--color-canvas-sunken);border-bottom:1px solid var(--border-subtle);display:flex;gap:12px;flex-wrap:wrap;justify-content:center}
.pg-quicklinks a{padding:8px 18px;background:var(--surface-card);border:1px solid var(--border-default);border-radius:999px;font-size:14px;font-weight:600;color:var(--text-heading)}

.pg-section{padding:64px 32px}
.pg-section-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:8px}
.pg-rule{width:56px;height:3px;background:var(--color-accent);border-radius:999px;margin-bottom:32px}

.pg-news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.pg-card{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-md)}
.pg-card img{width:100%;aspect-ratio:16/9;object-fit:cover;background:var(--stone-200)}
.pg-card .body{padding:20px}
.pg-card .eyebrow{font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent-hover);margin-bottom:8px}
.pg-card h3{font-size:20px;margin-bottom:8px}
.pg-card p{font-size:14.5px;color:var(--text-body);margin:0}

.pg-lower{padding:0 32px 64px;display:grid;grid-template-columns:2fr 1fr;gap:32px}
.pg-mass-times{background:var(--color-canvas-sunken);border-radius:16px;padding:36px}
.pg-mass-times .cols{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.pg-mass-times .cols div div:first-child{font-weight:700;color:var(--text-heading);margin-bottom:8px}
.pg-termine{background:var(--green-700);border-radius:16px;padding:28px;color:var(--stone-50)}
.pg-termine h3{color:var(--stone-50);font-size:20px;margin-bottom:16px}
.pg-termine .item{margin-bottom:14px;font-size:14px}
.pg-termine .date{font-weight:700;color:var(--gold-200)}

.pg-footer{background:var(--stone-900);color:var(--stone-300);padding:48px 32px 24px}
.pg-footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr;gap:32px;margin-bottom:32px}
.pg-footer h4{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--stone-50);margin-bottom:14px}
.pg-footer a{color:var(--stone-300)}
.pg-footer .brand-row{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.pg-footer .brand-row img{width:36px;height:36px}
.pg-footer .brand-row .n{font-family:var(--font-display);font-weight:600;font-size:19px;color:var(--stone-50)}
.pg-footer .links{display:flex;flex-direction:column;gap:9px;font-size:14px}
.pg-footer .bottom{border-top:1px solid var(--stone-700);padding-top:20px;font-size:12.5px;color:var(--stone-500)}

@media(max-width:900px){
.pg-nav ul{gap:12px;font-size:14px}
.pg-news-grid{grid-template-columns:1fr}
.pg-lower{grid-template-columns:1fr}
.pg-footer .cols{grid-template-columns:1fr}
.pg-hero h1{font-size:34px}
}
