/*
Theme Name: Laurenz Ramsauer - Academic
Theme URI: https://laurenzramsauer.com
Author: Jochum Media e.U.
Author URI: https://jochum-media.at
Description: Akademische Personenseite – pixelgenaues Original-Design, einfach verwaltbar.
Version: 1.1.0
License: GNU General Public License v2 or later
Text Domain: lr-academic
Requires at least: 6.0
Requires PHP: 8.0
*/

/* ===== SELF-HOSTED FONTS (exact like original) ===== */
/*@charset "UTF-8";
@font-face {
	font-family: "Cormorant Garamond";
	font-weight: 300;
	font-style: normal;
	src: local("Cormorant Garamond Light"), local("CormorantGaramond-Light"), url("assets/fonts/CormorantGaramond-Light.v2.ttf") format("truetype");
	font-display: swap;
}
@font-face {
	font-family: "Cormorant Garamond";
	font-weight: 300;
	font-style: italic;
	src: local("Cormorant Garamond LightItalic"), local("CormorantGaramond-LightItalic"), url("assets/fonts/CormorantGaramond-LightItalic.v2.ttf") format("truetype");
	font-display: swap;
}
@font-face {
	font-family: "Cormorant Garamond";
	font-weight: 400;
	font-style: normal;
	src: local("Cormorant Garamond Regular"), local("CormorantGaramond-Regular"), url("assets/fonts/CormorantGaramond-Regular.v2.ttf") format("truetype");
	font-display: swap;
}
@font-face {
	font-family: "Cormorant Garamond";
	font-weight: 600;
	font-style: normal;
	src: local("Cormorant Garamond SemiBold"), local("CormorantGaramond-SemiBold"), url("assets/fonts/CormorantGaramond-SemiBold.v2.ttf") format("truetype");
	font-display: swap;
}
@font-face {
	font-family: "Cormorant Garamond";
	font-weight: 700;
	font-style: normal;
	src: local("Cormorant Garamond Bold"), local("CormorantGaramond-Bold"), url("assets/fonts/CormorantGaramond-Bold.v2.ttf") format("truetype");
	font-display: swap;
}
@font-face {
	font-family: "Cormorant Garamond";
	font-weight: 700;
	font-style: italic;
	src: local("Cormorant Garamond Bold Italic"), local("CormorantGaramond-BoldItalic"), url("assets/fonts/CormorantGaramond-BoldItalic.v2.ttf") format("truetype");
	font-display: swap;
}*/
/* cormorant-garamond-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 300;
  src: url('assets/fonts/cormorant-garamond-v21-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* cormorant-garamond-300italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 300;
  src: url('assets/fonts/cormorant-garamond-v21-latin-300italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* cormorant-garamond-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  src: url('assets/fonts/cormorant-garamond-v21-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* cormorant-garamond-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 400;
  src: url('assets/fonts/cormorant-garamond-v21-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* cormorant-garamond-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  src: url('assets/fonts/cormorant-garamond-v21-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* cormorant-garamond-500italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  src: url('assets/fonts/cormorant-garamond-v21-latin-500italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* cormorant-garamond-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  src: url('assets/fonts/cormorant-garamond-v21-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* cormorant-garamond-600italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 600;
  src: url('assets/fonts/cormorant-garamond-v21-latin-600italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* cormorant-garamond-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 700;
  src: url('assets/fonts/cormorant-garamond-v21-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* cormorant-garamond-700italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 700;
  src: url('assets/fonts/cormorant-garamond-v21-latin-700italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}


/* ===== ORIGINAL CSS FROM lr_min.css ===== */

.dropdown-switch {
	display: inline-block;
	margin-left: 25px;
	appearance: none;
	-webkit-appearance: none;
	cursor: pointer;
	background: none;
	border: none;
	padding: 0;
}
.dropdown-switch::after {
	display: inline-block;
	background-image: url("data:image/svg+xml,%3Csvg version='1.2' baseProfile='tiny' xmlns='http://www.w3.org/2000/svg' x='0px' y='0px' viewBox='0 0 36 36' overflow='visible'%3E%3Cg%3E%3Cpolyline fill='none' stroke='%234f8caa' stroke-width='4' stroke-miterlimit='10' points='10.2,2.4 25.8,18 10.2,33.6 '%3E%3C/polyline%3E%3C/g%3E%3C/svg%3E");
	background-color: inherit;
	content: "";
	padding: 12px;
	margin-top: -8px;
	margin-left: -2px;
	background-size: contain;
	background-repeat: no-repeat;
}
.dropdown-switch:checked::after { transform: rotate(90deg); }
.dropdown-switch:checked + .dropdown-content {
	max-height: 800px;
	animation-name: example;
	animation-duration: 2s;
	animation-timing-function: ease-in;
	animation-fill-mode: forwards;
}
.dropdown-switch + .dropdown-content { max-height: 0; overflow: hidden; }
@keyframes example { from { max-height: 0; } to { max-height: 5000px; } }

h1 { font-family: "Cormorant Garamond", Georgia, serif; font-weight: 700; font-style: italic; font-size: 2.1875rem; }
h2 { font-family: "Cormorant Garamond", Georgia, serif; font-weight: 700; font-size: 2.05rem; }
h3 { font-family: "Cormorant Garamond", Georgia, serif; font-weight: 400; font-size: 2.125rem; }
h4 { font-family: "Cormorant Garamond", Georgia, serif; font-weight: 600; font-size: 1.1rem; margin-block: 0; }
p  { font-family: "Cormorant Garamond", Georgia, serif; font-weight: 600; font-size: 1.1rem; }

html { scroll-behavior: smooth !important; }
body { font-family: "Cormorant Garamond", Georgia, serif; margin: 0; }

/*body main .container { display: flex; padding-left: 6.5rem; padding-top: 3.25rem; padding-bottom: 3.25rem; max-width: 1440px; }*/
body main .container { 
	display: flex;
	box-sizing: border-box;    /* makes width:100% safe, no overflow */
	width: 100%;
	max-width: 1540px;
	padding-left: 6.5rem;      /* text inset — stays painted pale, untouched */
	padding-top: 3.25rem;
	padding-bottom: 3.25rem;
}
body .et-section {
  display: flex;
  justify-content: center;   /* centering now lives here, not on the child's margin */
}
body main .container.center { margin: 0 auto; }
/*body main .container.left-border { border-left-style: solid; border-left-width: 2.5rem; border-right-style: solid; border-right-width: 2.5rem; }*/
body main .container.left-border {  
	margin-left: 2.5rem;
	margin-right: 2.5rem;
}
body main .umbraco-forms-page input, body main .umbraco-forms-page textarea { border-radius: 0; }
body main .et-section h2 { scroll-margin-top: 6rem; }

body .et-section .container a { color: inherit; }
body .et-section .container .section-text { padding-right: 3rem; width: 35%; }
body .et-section .container .section-text p { padding-right: 5rem; }
body .et-section .container .section-text a.download-button { display: inline-block; padding: 1.5rem 3rem; font-size: 1.1rem; font-weight: 700; text-decoration: none; }
body .et-section .container .dropdown-wrapper { margin-top: 8.2rem; width: 50%; }
body .et-section .container .dropdown-wrapper h3 { margin-block-end: 1rem; display: inline-block; }
body .et-section .container .dropdown-wrapper .item-wrapper { display: flex; flex-direction: column; }
body .et-section .container .dropdown-wrapper .item-wrapper .content-wrapper { display: flex; flex-direction: row; margin-bottom: 1rem; }
body .et-section .container .dropdown-wrapper .item-wrapper .date { flex: 2; font-size: 1.1rem; }
body .et-section .container .dropdown-wrapper .item-wrapper .date .year { font-weight: 600; }
body .et-section .container .dropdown-wrapper .item-wrapper .date sup { font-size: 0.7em; }
body .et-section .container .dropdown-wrapper .item-wrapper .happening { flex: 17; }
body .et-section .container .dropdown-wrapper .item-wrapper .happening p { font-weight: 300; margin-block-start: 0; }
body .et-section .container .dropdown-wrapper .item-wrapper .happening a.download-button { display: inline-block; padding: 0.25rem 0.5rem; font-size: 1.1rem; font-weight: 700; text-decoration: none; margin: 0.15rem 0 2.5rem 0; }

body .et-section.section-contact .container { display: flex; flex-direction: column; }
body .et-section.section-contact .container .contact-wrapper { display: flex; flex-direction: row; }
body .et-section.section-contact .container .contact-wrapper .section-image { padding-right: 3rem; width: 35%; }
body .et-section.section-contact .container .contact-wrapper .section-image img { width: 100%; filter: grayscale(100%); }
body .et-section.section-contact .container .contact-wrapper .section-contact-text { width: 50%; }
body .et-section.section-contact .container .contact-wrapper .section-contact-text p { margin-block-start: 0; }
body .et-section.section-contact .container .contact-wrapper .section-contact-text p a { color: inherit; }

body nav.et-section { position: sticky; top: 0; z-index: 10; }
body nav.et-section .container { display: flex; padding-top: 1.15rem; padding-bottom: 1.15rem; justify-content: space-between; }
body nav.et-section .container #burgermenu { display: none; }
body nav.et-section .container ul.navigation { display: inline-flex; list-style: none; margin-block-start: 0; margin-block-end: 0; align-self: center; padding-inline-start: 0; font-size: 1.5615rem; font-weight: 600; padding-right: 8rem; }
body nav.et-section .container ul.navigation li { display: inline-flex; padding-left: 4rem; flex-wrap: nowrap; }
body nav.et-section .container ul.navigation li:first-of-type { padding-left: 0; }
body nav.et-section .container ul.navigation li a { text-decoration: none; color: inherit; }
body nav.et-section .container h1 { margin-block: 0; display: inline-block; }
body nav.et-section .container .section-text { margin-right: 0; width: auto; }
body nav.et-section .container .section-text label { display: none; transform: rotate(90deg); font-weight: bold; font-size: 2rem; cursor: pointer; }

body header.et-section .container { border-left-style: none; border-left-width: 0; padding-left: 9rem; }
body header.et-section .container .section-text { width: 100%; }
body header.et-section .container .section-text h2 { font-size: 2.9375rem; max-width: 870px; }
body header.et-section .container .section-text p { margin-left: 35%; padding-left: 3rem; font-size: 1.875rem; }

body footer.et-section .container { justify-content: flex-start; }
body footer.et-section .container h2 { margin-block-end: 0; }
body footer.et-section .container .section-text { display: flex; flex-direction: column; }
body footer.et-section .container .section-text ul.navigation { display: inline-flex; list-style: none; margin-block-start: 1rem; margin-block-end: 0; flex-direction: column; padding-inline-start: 0; font-size: 1.5615rem; font-weight: 600; }
body footer.et-section .container .section-text ul.navigation li { padding-right: 1rem; margin-bottom: 0.75rem; }
body footer.et-section .container .section-text ul.navigation li a { text-decoration: none; color: inherit; }
body footer.et-section .container .section-text h4 { margin-block: 0; display: inline-block; }
body footer.et-section .container .section-downloads { width: 50%; text-align: right; }
body footer.et-section .container .section-downloads ul.downloads { display: inline-flex; list-style: none; margin-block-start: 1rem; margin-block-end: 0; flex-direction: column; padding-inline-start: 0; font-size: 1.5615rem; font-weight: 700; }
body footer.et-section .container .section-downloads ul.downloads li { margin-bottom: 0.75rem; }
body footer.et-section .container .section-downloads ul.downloads li a { text-decoration: none; color: inherit; }

/* ===== CONTACT FORM 7 ===== */
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 textarea {
	background-color: #d9e6ea !important;
	color: #6a9da8 !important;
	border: 0 !important;
	padding: 1rem !important;
	font-family: "Cormorant Garamond", Georgia, serif !important;
	font-weight: 400 !important;
	font-size: 1.1rem !important;
	width: 100% !important;
	box-sizing: border-box !important;
	margin-bottom: 0.5rem !important;
	border-radius: 0 !important;
}
.wpcf7 input[type="text"]::placeholder,
.wpcf7 input[type="email"]::placeholder,
.wpcf7 textarea::placeholder { color: #6a9da8 !important; }
.wpcf7 input[type="text"]:focus,
.wpcf7 input[type="email"]:focus,
.wpcf7 textarea:focus { outline: 2px solid #6a9da8 !important; }
.wpcf7 textarea { height: 150px !important; resize: vertical !important; }
.wpcf7 input[type="submit"] {
	background-color: #6a9da8 !important;
	color: #fff !important;
	border: 0 !important;
	padding: 1rem 1.5rem !important;
	font-family: "Cormorant Garamond", Georgia, serif !important;
	font-weight: 400 !important;
	font-size: 1.1rem !important;
	cursor: pointer !important;
	border-radius: 0 !important;
}
.wpcf7 input[type="submit"]:hover { opacity: 0.9 !important; }
.wpcf7 .wpcf7-acceptance label {
	font-family: "Cormorant Garamond", Georgia, serif;
	font-size: 1rem;
	font-weight: 400;
}
.wpcf7 p { margin-bottom: 0.25rem; }
.wpcf7 .wpcf7-not-valid-tip {
	color: #c0392b !important;
	font-family: "Cormorant Garamond", Georgia, serif !important;
	font-size: 0.95rem !important;
	font-weight: 400 !important;
	display: block !important;
	margin-top: 0.25rem !important;
}
.wpcf7 .wpcf7-response-output {
	font-family: "Cormorant Garamond", Georgia, serif !important;
	font-size: 1rem !important;
	padding: 0.75rem 1rem !important;
	margin: 1rem 0 !important;
}
.wpcf7 .wpcf7-response-output.wpcf7-validation-errors {
	border-color: #c0392b !important;
	color: #c0392b !important;
}
.wpcf7 .wpcf7-response-output.wpcf7-mail-sent-ok {
	border-color: #27ae60 !important;
	color: #27ae60 !important;
}
.wpcf7 .wpcf7-not-valid { border: 2px solid #c0392b !important; }

/* Fallback basic form */
.contact-form input[type="text"],
.contact-form input[type="email"],
.contact-form textarea {
	background-color: #d9e6ea;
	color: #6a9da8;
	border: 0;
	padding: 1rem;
	font-family: "Cormorant Garamond", Georgia, serif;
	font-weight: 400;
	font-size: 1.1rem;
	width: 100%;
	box-sizing: border-box;
	margin-bottom: 0.5rem;
	border-radius: 0;
}

/* ===== ADMIN BAR ===== */
.admin-bar nav.et-section { top: 32px; }
@media (max-width: 782px) { .admin-bar nav.et-section { top: 46px; } }

/* ===== RESPONSIVE (exact from original) ===== */
@media screen and (max-width: 1250px) {
	body nav.et-section .container ul.navigation li { padding-left: 2rem; }
}
@media screen and (max-width: 1130px) {
	/*body .et-section { display: flex; }*/
	body .et-section .container { padding-right: 5%; padding-top: 5%; padding-bottom: 5%; padding-left: 5%; }
	/*body .et-section .container.left-border { border-left-width: 2.5rem; border-right-width: 2.5rem; }*/
	body .et-section .container .section-text { padding-right: 3rem; width: 50%; }
	body .et-section.section-contact .container { width: 100%; }
	body nav.et-section .container ul.navigation { padding-right: 1rem; }
}
@media screen and (max-width: 980px) {
	body main .et-section .container h2 { scroll-margin-top: 18rem; }
	body .et-section .container .dropdown-wrapper .item-wrapper .date { margin-right: 1rem; }
	body .et-section.section-contact .container { width: 100%; }
	body .et-section.section-contact .container .contact-wrapper .section-image { padding-right: 3rem; width: 50%; }
	body header.et-section .container { padding-left: 3rem; }
	body header.et-section .container .section-text h2 { font-size: 2.9375rem; max-width: 100%; }
	body header.et-section .container .section-text p { margin-left: 0; padding-left: 0; padding-right: 0; font-size: 1.875rem; }
	body nav.et-section .container { flex-direction: column; width: 100%; }
	body nav.et-section .container .section-text { display: flex; justify-content: space-between; }
	body nav.et-section .container .section-text label { display: inline-block; }
	body nav.et-section .container ul.navigation { padding-right: 1rem; flex-direction: column; align-self: flex-start; display: none; padding-top: 1rem; }
	body nav.et-section .container ul.navigation li { margin-bottom: 0.75rem; padding-left: 0; }
	body nav.et-section .container #burgermenu:checked ~ ul { display: flex; }
}
@media screen and (max-width: 760px) {
	body .et-section .container { flex-direction: column; /*padding-right: 1rem;*/ }
	/*body .et-section .container.left-border { border-left-width: 1rem; border-right-width: 1rem; }*/
	body .et-section .container.left-border { margin-left: 1rem; margin-right: 1rem; }
	body .et-section .container .section-text { padding-right: 1rem; width: 100%; }
	body .et-section .container .section-text p { padding-right: 0; }
	body .et-section .container .dropdown-wrapper { width: 100%; margin-top: 0; padding-bottom: 2rem; }
	body .et-section .container .dropdown-wrapper h3 { font-size: 1.6rem; }
	body .et-section .container .dropdown-wrapper .dropdown-switch { margin-left: 8px; }
	body .et-section.section-contact .container .contact-wrapper { flex-direction: column; }
	body .et-section.section-contact .container .contact-wrapper .section-image { padding-right: 0; width: 98%; }
	body .et-section.section-contact .container .contact-wrapper .section-contact-text { width: auto; }
	body header.et-section .container { padding-left: 2.5rem; }
	body header.et-section .container .section-text h2 { font-size: 2rem; }
	body header.et-section .container .section-text p { font-size: 1.25rem; }
	body footer.et-section .container .section-downloads { text-align: left; }
	body h2 { font-size: 1.8rem; }
	body .et-section .container .section-text a.download-button { padding: 1.5rem 1.5rem; }
	body .et-section.section-contact .container .contact-wrapper .section-contact-text p a { word-wrap: anywhere; }
}

@media only screen and (max-width: 480px) {
	.wpforms-container .wpforms-is-turnstile {
		transform: scale(0.85);
		transform-origin: 0 0;
	}
}

.date p {
	margin-top: 0;
}
