/*
Theme Name: Affinite DDA
Theme URI: https://affinite.io
Author: Affinite.io
Author URI: https://affinite.io
Description: Minimalistická FSE šablona pro DDA. Postaveno na WordPress Site Editor s podporou všech moderních block funkcí.
Version: 1.0.0
Requires at least: 6.4
Tested up to: 6.7
Requires PHP: 8.0
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: affinite-dda
Tags: full-site-editing, block-patterns, block-styles, wide-blocks, editor-style, custom-colors, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
*/

a:focus{
	border:none;
}

ul{
	padding-left:18px;	
}

ul li::marker{
	color:#d6d6d6;
}

button{
	color:#ffffff;
	border:none;
	border-radius:none;
	background-color: #f2101c;
	font-size:17px;
	line-height:24px;
	padding:8px 16px;
	cursor: pointer;
}
button:hover{
	opacity:0.7;
}

/* Remove default margin from main element */
main {
	margin-block-start: 0;
	margin-block-end: 0;
}

/* Remove default margin from elements inside main */
main > * {
	margin-block-start: 0;
	margin-block-end: 0;
}

/* Remove default margin from elements inside .wp-site-blocks within main */
main :where(.wp-site-blocks) > * {
	margin-block-start: 0;
	margin-block-end: 0;
}

/* Scroll to top button - fixed position */
.scroll-to-top {
	position: fixed;
	bottom: 30px;
	right: 30px;
	z-index: 9999;
	display: none;
	opacity: 0;
	transition: opacity 0.3s ease, transform 0.3s ease;
}

.scroll-to-top.show {
	display: block;
	opacity: 1;
}

.scroll-to-top .wp-block-button__link {
	border-radius: 50%;
	width: 50px;
	height: 50px;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 24px;
	line-height: 1;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
	transition: opacity 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease;
}

.scroll-to-top .wp-block-button__link:hover {
	opacity: 0.9;
	transform: translateY(-3px);
	box-shadow: 0 6px 16px rgba(0, 0, 0, 0.2);
}

@media (max-width: 781px) {
    .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
        padding-left: 10px;
        padding-right: 10px;
    }
}

.nowrap-text{
	white-space: nowrap;
}
.wp-block-buttons .wp-block-button__link:hover{
	opacity:0.7;
}
:root :where(a:where(:not(.wp-element-button)):focus){
	border:none;
}

/* Responsive part */
@media (min-width: 782px) {
	.desktop-hide{
		display:none;
	}
}
@media (max-width: 781px) {
	.mobile-hide{
		display:none;
	}
}

/* Footer part */
footer{
	background-image: url( 'assets/images/footer.png' );
	background-position: 80% bottom;
	background-repeat: no-repeat;
	font-size:0.88rem;
	background-color: #333;
}
footer>div.has-dark-background-color{
	background-color: transparent!important;
}
footer p{
	line-height:1.5rem;
}
footer p a{
	color:#ffffff;
	text-decoration: underline;
}
footer p a:hover{
	text-decoration: none;
}
.footer-logo img{
	width:100px;
	max-width: 100px;
}
@media (max-width: 781px) {

}

/* Single product part */
.woocommerce .woocommerce-breadcrumb{
	margin-bottom:0.7rem;
}
.woocommerce .woocommerce-breadcrumb a,
.woocommerce .woocommerce-breadcrumb a:hover{
	color:#333333;
}
.woocommerce .woocommerce-breadcrumb a:first-child{
	display: inline-flex;
    width: 18px;
    height: 11px;
	background-image: url( 'assets/images/icons/path-home.svg' );
	background-repeat: no-repeat;
	background-size: 22px 22px ;
	background-position:center center;
}
.wp-block-post-title{
	font-size:3.1rem;
	line-height:3.8rem;
	font-weight: 300;
	margin-top:0;
}
.wp-block-post-excerpt{
	font-size: 1.9rem;
    line-height: 2.5rem;
	font-weight: 300;
	margin-top:0;
}
.wp-block-post-featured-image img{
	max-width:fit-content;
}

/* Sidebar menu */
.page-menu{
	padding-top:6px;
}
.page-menu .affinite-nav-menu .menu{
	flex-direction:column;
	align-items: start;
	gap:16px;
}
.page-menu .affinite-nav-menu .menu li{
	width:100%;
}
.page-menu .affinite-nav-menu .menu li a{
	padding:0;
	font-weight:400;
	width:100%;
	background-image: url('assets/images/icons/menu-plus.svg');
	background-repeat: no-repeat;
	background-position: right center;
	background-size: 8px 8px;
}

.page-menu .affinite-nav-menu li.current-menu-item a{
	color:#f2101c;
	background-image: url('assets/images/icons/menu-minus-red.svg');
}

/* Product detail */
.acp-tabs{
	display:flex;
	margin-bottom: 30px;
    margin-block-end: 30px !important;
}

.acp-variants-table{
	border-collapse: collapse;
	white-space:nowrap;
	min-width:100%;
}
.acp-variants-table th{
	font-size:14px;
	line-height:22px;
	font-weight:400;
	padding:8px 8px;
	text-align: center;
}
.acp-variants-table__unit{
	display:flex;
	justify-self: center;
}
.acp-variants-table td{
	font-size:17px;
	line-height:24px;
	padding:8px 8px;
	text-align: right;
}
.acp-variants-table th,
.acp-variants-table td{
	border-right:solid 2px #eaeaea;
	border-bottom:solid 2px #eaeaea;
	text-align: center;
}

.acp-variants-table tbody tr:nth-child(even) td {
    background-color: #f9f9fa;
}
.acp-variants-table tbody tr:last-child td {
	border-bottom:none;
}
.acp-variants-table thead tr th:last-child,
.acp-variants-table tbody tr td:last-child {
	border-right:none;
}
.tech-param-expand{
	margin-left:auto;
	display:none;
}
.tech-param-pdf{
	margin-left:auto;
	display:inline-flex;
	align-items:center;
	justify-content: center;
	gap:6px;
	font-size:14px;
	color:#ffffff;
	background-color: #f2101c;
	text-decoration:none;
	padding:3px 16px;
	height:30px;
}
.tech-param-pdf svg{
	width:20px;
}
.tech-param-pdf:hover{
	opacity: 0.8;
}
.tech-param-pdf + .tech-param-expand{
	margin-left:12px;
}

.acp-variants-wrapper{
	overflow: hidden;
	padding-top:6px;
}
.acp-variants-wrapper.expanded{
	overflow: visible;
}

/* Multi-table cable products (variant groups) */
.acp-variants-group{
	margin-bottom:32px;
}
.acp-variants-group:last-child{
	margin-bottom:0;
}
.acp-variants-group__header{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:12px;
	margin:16px 0 4px;
}
.acp-variants-group__title{
	font-size:18px;
	font-weight:700;
	margin:0;
	color:#333;
}
.acp-variants-group__header .tech-param-expand{
	margin-left:auto;
}

.anchor-nav-wrapper{
	display:flex;
	flex-direction: column;
}
.anchor-nav{
	display:flex;
	flex-direction: column;
	width:100%;
	padding:0;
	margin:0;
	list-style:none;
	gap:16px;
}
.anchor-nav .anchor-nav__item{
	width:100%;
}
.anchor-nav .anchor-nav__item a{
	display: flex;
	box-sizing: border-box;
	width:100%;
	border: none;
    border-radius: 4px;
    color: #333;
    display: inline-block;
    font-size: 17px;
	line-height:27px;
    text-decoration: none;
	position:relative;
	padding:0 20px 0 0;   
	background-color: transparent;
	background-image: url(assets/images/icons/menu-plus.svg);
	background-position: right center;
	background-repeat: no-repeat;
	background-size: 8px 8px;
}
.anchor-nav .anchor-nav__item a:hover {
	background-color: transparent;
    color: #f2101c;	
	background-image: url(assets/images/icons/menu-plus-red.svg);
}

/* Contact form */
.contact-form__submit{
	text-transform:uppercase;
	font-size:17px;
	border-radius:none;
	width:fit-content;
	background-color:#f2101c;
	background-image: url( assets/images/icons/btn-c2a-white.svg );
	background-repeat: no-repeat;
	background-position: right center;
	background-size: 20px;
}

main:has(.woocommerce){
	padding:24px 7px;
}

/* My account navigation */
.woocommerce-account .woocommerce-MyAccount-navigation ul{
	margin: 0 0 2em;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.woocommerce-account .woocommerce-MyAccount-navigation li{
	padding:0;
}
.woocommerce-account .woocommerce-MyAccount-navigation li a{
	display: flex;
	box-sizing: border-box;
	width:100%;
	border: none;
    border-radius: 4px;
    color: #333;
    display: inline-block;
    font-size: 17px;
	line-height:27px;
    text-decoration: none;
	position:relative;
	padding:0 20px 0 0;   
	background-color: transparent;
	background-image: url(assets/images/icons/menu-plus.svg);
	background-position: right center;
	background-repeat: no-repeat;
	background-size: 8px 8px;
}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover{
	background-color: transparent;
    color: #f2101c;	
	background-image: url(assets/images/icons/menu-plus-red.svg);
	text-decoration: none;
}
.woocommerce-account .woocommerce-MyAccount-content{
	width:66%;
}

:root :where(.wp-element-button, .wp-block-button__link){
	border-radius:0;
	font-weight:300;
}
@media (max-width: 781px) {
	.page-menu{
		display:none;
	}
	footer{
		text-align: center;
	}
	.wp-block-buttons-is-layout-flex{
		justify-content:center;
	}
	footer .has-text-align-right{
		text-align:center;
	}
}
.woocommerce-account .woocommerce {
    max-width: 100% !important;
    display: flex;
    gap: 30px;
}
.myaccount-boxes{
	width:100%;
	display:flex;
	flex-wrap:wrap;
	gap:30px;
}
.myaccount-box{
	display:flex;
	padding:20px 40px;
	border:solid #ededed 1px;
	justify-content: center;
	align-items: center;
	background-color: #f2101c;
	width:30%;
}
.myaccount-box__label{
	color:#ffffff;
	text-decoration: none;
	font-size:20px;
}
.myaccount-box__label:hover{
	text-decoration:none;
}
@media (max-width: 836px) {
	.myaccount-box{
		width:100%;
		box-sizing: border-box;
	}
}
@media (max-width: 1299px) {
	.product-nav.product-menu.wp-block-acp-product-menu{
		padding-left:30px;
	}
}