/*
Theme Name: PBS 2025
Theme URI: 
Author: Silberweiss
Author URI: 
Description: Theme für PB-Steuern.de 2025
Requires at least: 6.7
Tested up to: 6.7
Requires PHP: 7.2
Version: 1.2
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: pbs-2025
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, wide-blocks, block-styles, style-variations, accessibility-ready, blog, portfolio, news

/* Styles intended only for the frontend.*/
html {
	scroll-behavior: smooth;
}

body {
  text-underline-offset: .2em;
  hyphens: auto;
}

strong {
	font-weight: 700 !important;
}

/* basics */
* {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}

img {
    max-width: 100%;
    height: auto;
}

@media screen and (prefers-reduced-motion: reduce) {

	html {
		scroll-behavior: auto;
	}
}

/* View transition */
@view-transition {
	navigation: auto;
  }

/*
 * Link styles
 * https://github.com/WordPress/gutenberg/issues/42319
 */

/*
 * Link styles
 * https://github.com/WordPress/gutenberg/issues/42319
 */
 a {
	text-decoration-thickness: 1px !important;
	text-underline-offset: .3em;
}

a:hover {
	text-decoration-thickness: 1px !important;
	text-underline-offset: .3em;
}

* {
	text-underline-offset: 0.3em;
}

/* Focus styles */
:where(.wp-site-blocks *:focus) {
	outline-width: 2px;
	outline-style: solid;
}

/* Increase the bottom margin on submenus, so that the outline is visible. */
.wp-block-navigation .wp-block-navigation-submenu .wp-block-navigation-item:not(:last-child) {
	margin-bottom: 3px;
}

/* Increase the outline offset on the parent menu items, so that the outline does not touch the text. */
.wp-block-navigation .wp-block-navigation-item .wp-block-navigation-item__content {
	outline-offset: 4px;
}

/* Remove outline offset from the submenus, otherwise the outline is visible outside the submenu container. */
.wp-block-navigation .wp-block-navigation-item ul.wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	outline-offset: 0;
}

/*
 * Progressive enhancement to reduce widows and orphans
 * https://github.com/WordPress/gutenberg/issues/55190
 */
h1, h2, h3, h4, h5, h6, blockquote, caption, figcaption, p {
	text-wrap: pretty;
}

/*
 * Change the position of the more block on the front, by making it a block level element.
 * https://github.com/WordPress/gutenberg/issues/65934
*/
.more-link {
	display: block;
}

main {
	position: relative;
	top: calc(var(--wp--custom--header-height)*-1);
}

.wp-block-button__link:hover {
    color: var(--wp--preset--color--accent-2) !important;
    background-color: var(--wp--preset--color--accent-1) !important;
    -webkit-transition: 0.2s ease-in-out;
    -o-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;
}


.headline-break div a:focus {
	outline: none !important;
}

.headline-break {
	word-break: break-word;
	overflow-wrap: break-word;
	-webkit-hyphens: auto;
	    -ms-hyphens: auto;
	        hyphens: auto;
  }


@media (max-width: 1026px) {
	.right-column-first {
		-webkit-box-ordinal-group: 0;
		    -ms-flex-order: -1;
		        order: -1;
	}
}


@media (max-width: 1026px) {
	.header-tablet {
		display: -webkit-box !important;
		display: -ms-flexbox !important;
		display: flex !important;
		-webkit-box-orient:	vertical !important;
		-webkit-box-direction:	normal !important;
		    -ms-flex-direction:	column !important;
		        flex-direction:	column !important;
	}
	.img-besonders-stark img{
		height: 480px;
		-o-object-position: top;
		   object-position: top;	
	}
}

/* honorarrechner anpassungen */

body #rechner {
	display: grid;
	grid-template-columns: 12fr;
	gap: 2rem;
}

@media (min-width: 768px) {
	body #rechner {
		grid-template-columns: 4fr 8fr;
	}
}

body #rechner > div {
	width: 100% !important;
}

body #rechner > div.col-sm-4 { 
	padding-left: 0;
	padding-right: 0;
}

body #rechner > div.col-sm-8 { 
	padding-left: 0;
	padding-right: 0;
}

/* Kontaktformular */

.ff_btn_style {
	background-color: var(--wp--preset--color--accent-2) !important;
	color: var(--wp--preset--color--accent-1) !important;
	border-radius: 6px !important;
	width: calc(50% - 7.5px) !important;
}

@media (max-width: 768px) {
	.ff_btn_style {
		width: 100% !important;
	}
}

.ff_btn_style:hover,
.ff_btn_style:focus{
    background-color: var(--wp--preset--color--accent-1) !important;
    opacity: 1 !important;
    border-color: var(--wp--preset--color--accent-1) !important;
    color: var(--wp--preset--color--accent-2) !important;
}

.wp-block-group.column {
	-webkit-column-width: 30rem;
	   -moz-column-width: 30rem;
	        column-width: 30rem;
	gap: 6rem;
}

.fluentform .ff-el-input--label.ff-el-is-required.asterisk-right label:after {
	color: var(--wp--preset--color--accent-3);
}

.ff-el-form-control::-webkit-input-placeholder {
    color: var(--fluentform-secondary) !important;
}

.ff-el-form-control::-moz-placeholder {
    color: var(--fluentform-secondary) !important;
}

.ff-el-form-control:-ms-input-placeholder {
    color: var(--fluentform-secondary) !important;
}

.ff-el-form-control::-ms-input-placeholder {
    color: var(--fluentform-secondary) !important;
}

.ff-el-form-control::placeholder {
    color: var(--fluentform-secondary) !important;
}

@media (min-width: 768px) {
	.benefits-icon-row {
		flex-direction: column !important;
	}
	.benefits-icon-row div {
		justify-content: flexstart;
	}
}

@media screen and (max-width: 560px) {
	.job-listing .job-preview .job-content, .job-listing .job-preview .job-cta {
		height: auto !important;
		max-height: fit-content !important;
	}
}

.wp-block-greenshift-blocks-container:has(> .wp-block-greenshift-blocks-iconbox:first-child + .wp-block-group) {
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	align-items: flex-start;
	column-gap: 1rem;
	row-gap: 1rem;
}

.wp-block-greenshift-blocks-container > .wp-block-greenshift-blocks-iconbox:first-child {
	flex: 0 0 72px;
}

.wp-block-greenshift-blocks-container > .wp-block-greenshift-blocks-iconbox:first-child + .wp-block-group {
	flex: 1 1 200px;
}

/* Bewerbungsfunnel Anpassungen */

.bewerbungsfunnel {

	box-shadow: rgba(255, 255, 255, 0.1) 0px 1px 1px 0px inset, rgba(50, 50, 93, 0.25) 0px 50px 100px -20px, rgba(0, 0, 0, 0.3) 0px 30px 60px -30px;
	border-radius: 16px !important;

	.fluentform .ff-el-group.ff_list_buttons .ff-el-form-check label:focus-within span {
		background-color: unset !important;
		border-color: unset !important;
		color: unset !important;
		box-shadow: unset !important;
	}

	.fluentform .ff-el-group.ff_list_buttons .ff-el-form-check.ff_item_selected label>span {
		background-color: var(--wp--preset--color--accent-2) !important;
		border-color: var(--wp--preset--color--accent-2) !important;
		box-shadow: none !important;
		color: var(--wp--preset--color--base) !important;
	}

	.fluentform .ff-el-group.ff_list_buttons .ff-el-form-check label>span:hover {
		background-color: var(--wp--preset--color--accent-2) !important;
		border-color: var(--wp--preset--color--accent-2) !important;
		color: var(--wp--preset--color--base) !important;
		box-shadow: none !important;
	}

	.fluentform .ff-el-group.ff_list_buttons .ff-el-form-check label>span {
		border-color: var(--wp--preset--color--accent-2) !important;
		border-left: 1px solid var(--wp--preset--color--accent-2) !important;
		border-radius: 4px !important;
	}

	.fluentform .ff-el-group.ff_list_buttons .ff-el-image-holder label>span {
		border-left: none !important;
	}

	.quiz-auswahl-button .ff-el-input--content {
		display: flex;
		justify-content: center;
		gap: 2rem;
	}

	.ff-step-container {
		border-radius: 8px !important;
	}

	.fluentform-step.active {
		display: flex !important;
		flex-direction: column !important;
		justify-content: space-between !important;
		min-height: 50vh !important;
	}

	.ff_el_checkable_photo_holders {
		display: flex !important;
		gap: 1rem !important;
		margin-bottom: 1rem !important;
	}

	.fluentform .ff-el-group.ff_list_buttons .ff-el-form-check.ff-el-image-holder {
		border-radius: 8px;
	}

	.fluentform .ff-el-group.ff_list_buttons .ff-el-form-check.ff-el-image-holder.ff_item_selected {
		border-color: #fff !important;
		border-radius: 8px;
	}

	.flatpickr-day.selected {
		background: var(--wp--preset--color--accent-2);
		border-color: #fff;
	}

	.flatpickr-day.today:hover, .flatpickr-day:hover {
		background: var(--wp--preset--color--accent-2);
		border-color: #fff;
		color: #fff;
	}

	.ff-default .ff-el-form-control:focus {
		border-color: var(--wp--preset--color--accent-2) !important;
	}

	.fluentform .ff-el-group.ff_list_buttons .ff-el-form-check {
		margin: 0 1rem 10px 0 !important;
	}

	.ff-btn-prev, .ff-btn-next {
		cursor: pointer;
	}

	.fluentform_wrapper_4.ffs_custom_wrap .ff-el-group input[type=checkbox] {
		position: absolute !important;
	}

	.dsgvo {
		position: relative !important;

		input[type=checkbox] {
			top: 20% !important;
		}

		.ff_t_c {
			margin-left: 1.5rem !important;
		}
	}

	@media (max-width: 768px) {
		.ff-step-container {
		border-radius: 8px !important;
		padding: 1rem !important;
		}

		.quiz-auswahl-button .ff-el-input--content {
			flex-direction: column;
			gap: 0rem;
		}

		.ff_el_checkable_photo_holders {
			flex-direction: column !important;
			gap: 0rem !important;
		}

		.ff-el-image-holder  {
			label.ff-el-image-input-src {
				width: 100% !important;
			}
			.ff-el-form-check-label {
				display: flex !important;
			}
		}

		.correct-margin .ff-el-form-check {
			margin-left: 0 !important;
			margin-right: 0 !important;
		}

		.ff-el-form-check-label {
			display: flex !important;
		}
	}
}

/* Karriere Popup Button */
@media screen and (max-width: 600px) {
  .wp-block-buttons.karriere-popup-button {
    justify-content: flex-start !important; /* !important ist jetzt wahrscheinlich nicht mehr nötig */
  }

  .karriere-popup-button .wp-block-button__link {
    text-align: left !important;
  }

}

@media screen and (max-width: 768px) {
	#myContent .col-20, #myContent .col-75 {
		width: 100% !important;
		min-width: 100% !important;
	}

}