/*
Theme Name: Obwegeser
Theme URI: https://www.prof-obwegeser.at
Author: mooci
Description: Website Univ.-Prof. Dr. Reinhard Obwegeser – umgesetzt nach der Design-Vorlage.
Version: 1.0.0
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: obwegeser
*/
/* latin-ext */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("fonts/1f507f18-d47b-446b-b99b-c7e28c44029c.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("fonts/aaeef222-b356-453f-a510-73ec8bbab2e4.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/e64e4492-03a7-4890-b601-8d9d8ff7f5a7.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/12b01703-b97e-416f-b3ca-004796c5ba98.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/f6d943fc-e239-4a85-a8c8-5f88f99d755f.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/68a07382-9f10-4f84-b369-fe32361321ea.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic */
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/ac15dc6e-5db8-44b5-ac30-544460c085f5.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/ab650455-3ca3-46f0-9dd6-ad6b5673c9ba.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/194f2ba1-01c0-4680-b868-2d9834f849bd.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/69e4db1c-0a22-4542-8f59-201f4d5e3afb.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/faa00185-9375-4df1-9a46-b2fee2c66b2d.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/7cd30ed1-2460-471f-9f36-7f897d0beec4.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/883b78cc-019e-4eec-a7e9-2c9528f36708.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/2fc84c78-f6f2-44c6-9579-377f3e9cf32d.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/faa00185-9375-4df1-9a46-b2fee2c66b2d.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/7cd30ed1-2460-471f-9f36-7f897d0beec4.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/883b78cc-019e-4eec-a7e9-2c9528f36708.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/2fc84c78-f6f2-44c6-9579-377f3e9cf32d.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


  html, body { margin: 0; padding: 0; background: #FFFFFF; }
  * { box-sizing: border-box; }
  a { color: #0B0B0B; }
  a:hover { color: #6E1F2A; }
  ::selection { background: #EFE6E7; }

a.hov:hover { color: #6E1F2A !important; }
button.hovbtn:hover { background: #0B0B0B !important; }
#obw select { -webkit-appearance: none; appearance: none; border-radius: 0; }
#obw input, #obw textarea, #obw select { border-radius: 0; }
#obw input:focus, #obw textarea:focus, #obw select:focus { outline: 1px solid #6E1F2A; }
#obw img { max-width: 100%; }
body.admin-bar #obw header { top: 32px; }

/* Responsiv – die Vorlage ist für Desktop gesetzt; darunter wird gestapelt */
@media (max-width: 1100px) {
  #obw section[style*="repeat(4, 1fr)"] > div[style*="grid-template-columns: repeat(4, 1fr)"],
  #obw div[style*="grid-template-columns: repeat(4, 1fr)"] { grid-template-columns: repeat(2, 1fr) !important; gap: 40px !important; }
  #obw footer > div[style*="grid-template-columns"] { grid-template-columns: 1fr 1fr !important; }
}
@media (max-width: 900px) {
  #obw header > div { padding: 18px 24px !important; flex-direction: column; align-items: flex-start !important; gap: 14px !important; }
  #obw header nav { justify-content: flex-start !important; gap: 10px 18px !important; }
  #obw section, #obw footer { padding-left: 24px !important; padding-right: 24px !important; }
  #obw section[style*="grid-template-columns"] { grid-template-columns: 1fr !important; gap: 40px !important; min-height: 0 !important; }
  #obw section > div[style*="grid-template-columns"], #obw footer > div[style*="grid-template-columns"],
  #obw div[style*="grid-template-columns: repeat(3, 1fr)"], #obw div[style*="grid-template-columns: repeat(2, 1fr)"],
  #obw div[style*="grid-template-columns: 1fr 1fr"], #obw div[style*="grid-template-columns: 1fr 220px"] { grid-template-columns: 1fr !important; gap: 36px !important; }
  #obw div[style*="grid-template-columns: 150px 1fr"] { grid-template-columns: 110px 1fr !important; gap: 20px !important; }
  #obw div[style*="grid-template-columns: 70px 1fr 130px"] { grid-template-columns: 60px 1fr !important; }
  #obw div[style*="grid-template-columns: 70px 1fr 130px"] > div:last-child { grid-column: 2; text-align: left !important; }
  #obw div[style*="grid-template-columns: 1fr 220px"] > div:last-child { text-align: left !important; }
  #obw [style*="font-size: 62px"] { font-size: 42px !important; }
  #obw [style*="font-size: 56px"], #obw [style*="font-size: 54px"], #obw [style*="font-size: 52px"] { font-size: 38px !important; }
  #obw [style*="font-size: 40px"] { font-size: 30px !important; }
  #obw [style*="font-size: 34px"] { font-size: 27px !important; }
  #obw section[style*="padding: 96px"], #obw section[style*="padding: 92px"], #obw section[style*="padding: 100px"] { padding-top: 64px !important; }
  #obw section[style*="margin: 100px auto 0"] { margin-top: 64px !important; }
  #obw footer { padding-top: 70px !important; }
  #obw div[style*="padding: 40px 38px"] { padding: 28px 22px !important; }
}
@media (max-width: 600px) {
  /* Zentrierte Fließtexte (Hero-Einleitung, CTA) am Handy linksbündig */
  #obw section[style*="text-align: center"] p { text-align: left; }
  #obw section[style*="text-align: center"] h1 { font-size: 34px !important; }
}
