*{
    margin:0;
    padding:0;
    font-family:'Poppins', sans-serif;
    box-sizing: border-box;
}

@media only screen and (max-width: 1199px) and (min-width: 801px){
    .header-img{
        display: none !important;
    }
    .header-text{
        border: solid 1px #ff004f;
        margin-top:25%;
        font-size:16px;
        flex-basis: 100% !important;
    }
    
    .header-text p{
        width: 100%;
        margin-right: 5%;
    }
    #B1-s{font-size: 25px;}


    .sub-title{
        font-size: 40px;
    }
    .about-col-1, .about-col-2{
        flex-basis: 100%;
    }
    .about-col-1{
        margin-bottom: 30px;
    }
    .about-col-2{
        font-size: 14px;
    }
    .tab-links{
        font-size: 16px;
        margin-right: 20px;
    }
    .contact-left, .contact-right{
        flex-basis: 100%;
    }
    .tab-contents{
        padding:0px;
    }
    .pl-wrapper{
        display: none;
    }
}
@media only screen and (min-width: 1200px){
    

body{
    overflow:hidden;
}

.pl-wrapper {
    position: absolute;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.pl {
    opacity: 1;
    animation: fadeOut 3s forwards 1s; /* Késleltetés az SVG eltűnéséhez */
}

@keyframes fadeOut {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        visibility: hidden;
    }
}

.header-img{
    visibility: hidden;
    opacity: 0;
    transform: translateY(50px);
    animation: slideUp 1s forwards 3.3s;
}
#upper-nav{
    visibility: hidden;
    opacity: 0;
    transform: translateY(50px);
    animation: slideUp 1s forwards 3.5s;
}
.content{
    visibility: hidden;
    opacity: 0;
    transform: translateY(50px);
    animation: slideUp 1s forwards 3.2s; /* Késleltetés a tartalom megjelenésére */
}


@keyframes slideUp {
    0% {
        opacity: 0;
        visibility: hidden;
        transform: translateY(50px);
    }
    100% {
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
    }
}


:root {
	--hue: 223;
	--bg: hsl(var(--hue),10%,90%);
	--fg: hsl(var(--hue),10%,10%);
	font-size: calc(16px + (24 - 16) * (100vw - 320px) / (1280 - 320));
}

.pl {
	display: block;
	width: 6.25em;
	height: 6.25em;
}
.pl__ring, .pl__ball {
	animation: ring 2s ease-out infinite;
}
.pl__ball {
	animation-name: ball;
}

@media (prefers-color-scheme: dark) {
	:root {
		--bg: hsl(var(--hue),10%,10%);
		--fg: hsl(var(--hue),10%,90%);
	}
}

@keyframes ring {
	from {
		stroke-dasharray: 0 257 0 0 1 0 0 258;
	}
	25% {
		stroke-dasharray: 0 0 0 0 257 0 258 0;
	}
	50%, to {
		stroke-dasharray: 0 0 0 0 0 515 0 0;
	}
}
@keyframes ball {
	from, 50% {
		animation-timing-function: ease-in;
		stroke-dashoffset: 1;
	}
	64% {
		animation-timing-function: ease-in;
		stroke-dashoffset: -109;
	}
	78% {
		animation-timing-function: ease-in;
		stroke-dashoffset: -145;
	}
	92% {
		animation-timing-function: ease-in;
		stroke-dashoffset: -157;
	}
	57%, 71%, 85%, 99%, to {
		animation-timing-function: ease-out;
		stroke-dashoffset: -163;
	}
}
html{
    scroll-behavior: smooth;}
body.loaded {
    overflow: auto; /* Görgetés engedélyezése */
    font-size: 16px;
}
}
body{
    background: linear-gradient(to bottom, #1f1f1f, #7a0000);
    color:#fff;
}
#header{
    width: 100%;
    height: 100%;
}
.container{
    padding: 10px 10%;
}

nav{
    display: flex;
    align-items: center;
    justify-content:space-between;
    flex-wrap: wrap;
}
.logo{ 
    width: 80px;
}

nav ul li{
    display: inline-block;
    list-style:none;
    margin: 10px 20px;
}
nav ul li a{
    color: #fff;
    text-decoration: none;
    font-size: 18px;
    position: relative;
}
nav ul li a::after{
    content: '';
    width: 0%;
    height: 3px;
    background: #ff004f;
    position: absolute;
    left:0;
    bottom: -6px;
    transition: 0.5s;
}
nav ul li a:hover::after{
    width: 100%;
}

.row2{
    display:flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.header-img{
    position:absolute;
    left: 43%;
    padding: 10px 10px;
    display: flex;
    flex-basis: 55%;
    margin-top: 5%;
    justify-content: center;
    align-items: center;

}
.profile-img{
    width: 55%;
    border-radius: 15px;
    object-fit: cover; 
    border-radius: 50%; 
  
}
.header-text{
    flex-basis: 40%;
    margin-top:20%;
    font-size: 20px;
}
.header-text h1{
    font-size: 60px;
    margin-top:20px;
}
.header-text p {
    width: 100%;
    word-wrap: break-word;
}
#B1-s{
    color:#ffcc00
}
#typed-text {
    display: inline-block;
    color:#ffcc00

}
.download-btn {
    display: inline-block;
    padding: 15px 30px;
    font-size: 18px;
    color: Black;
    background-color: #ffcc00; 
    border-radius: 25px; 
    text-decoration: none;
    font-weight: bold;
    transition: background-color 0.3s ease; 
}

.download-btn:hover {
    background-color: Black;
    color: #ffcc00;
    border:1px solid #ffcc00;
}

.button-container {
    display: flex;
    align-items: center; 
    gap: 20px; 
}

.github-logo,.fb-logo {
    height: 50px;
    transition: transform 0.3s ease, filter 0.3s ease;
}

.github-logo:hover,.fb-logo:hover {
    transform: scale(1.1); 
    filter: brightness(1.2); 
}
/* -----------------------------------------Rólam------------------------ */
#about{
    padding: 80px 0;
    color: #ababab;
}
.row{
    display:flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.about-col-1{
    flex-basis: 35%;
}
.about-col-1 img{
    width: 100%;
    border-radius: 15px;
}
.about-col-2{
    flex-basis:60%; 
}
.sub-title{
    font-size:60px;
    font-weight: 600;
    color: white;

}
.tab-title{    
    display:flex;
    margin:20px 0 40px;
}
.tab-links{
    margin-right: 50px;
    font-size:18px;
    font-weight: 500;
    cursor:pointer;
    position: relative;
}
.tab-links::after{
    content: "";
    width: 0;
    height: 3px;
    background:#ff004f;
    position: absolute;
    left:0;
    bottom: -8px;
    transition:0.5s;
}
.tab-links.active-link::after{
    width: 50%;
}
.tab-contents ul li{
    list-style:none;
    margin: 10px 0;
}
.tab-contents ul li span{
    color:#b54769;
     font-size: 14px;
}
.tab-contents{
    display:none;
}
.tab-contents.active-tab{
    display: block;
}

.hidden {
    opacity: 0;
    transition: all 0.8s ease-in-out;
}

.slide-left {
    transform: translateX(-100px);
}


.slide-right {
    transform: translateX(100px);
}

.show {
    opacity: 1;
    transform: translateX(0);
}


/* services*/

#services {
    padding: 30px 0;
}
.services-list{
    display:grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    grid-gap: 40px;
    margin-top: 50px;
}
.services-list div{
    background-color: #262626;
    padding: 40px;
    font-size: 13px; 
    font-weight: 300;
    border-radius: 10px;
    transition: background 0.5s, transform 0.5s;
}
.services-list div i{
    font-size: 50px;
    margin-bottom: 30px;;
}
.services-list div h2{
    font-size: 30px;
    font-weight: 500;
    margin-bottom: 15px;
}
.services-list div:hover{
    background-color: #ff004f;
    transform: translateY(-10px);
}

/*------------elérhetősék-----------------*/

.contact-title{
    font-size:32px;
}
.contact-left
{
    flex-basis: 35%;
}
.contact-right
{
    flex-basis: 60%;
}
.contact-left p{
    margin-top: 30px;
}
.contact-left p i{
    color: #ff004f;
    margin-right: 15px;
    font-size:25px;
}
.social-icons{
    margin-top:30px;

}
.social-icons a{
    text-decoration: none;
    font-size: 30px;
    margin-right: 15px;
    color: #ababab;
    display: inline-block;
}
.social-icons a:hover{
    color:#ff004f;
    transform: scale(1.3); 
    filter: brightness(1.2); 
}
.btn{
    margin:50px auto;
 display: inline-block;
 width: fit-content;
 background: black;
 border: 1px solid #ff004f;
 padding: 14px 50px;
 border-radius: 6px;
 color: white;
 transition: background 0.5s;
}
.btn:hover{
    background: #ff004f;
}
.contact-right form{
    width: 100%;
}
form input, form textarea{
    width: 100%;
    border:0;
    outline:none;
    background: #262626;
    padding: 15px;
    margin: 15px 0;
    color: #fff;
    font-size: 18px;
    border-radius: 6px;
}
form .btn{
    padding: 14px 60px;
    font-size: 18px;
    margin-top: 10px;
    cursor: pointer;
}

/* -------------------------mobilméretre szabás----------- */
nav .fas{
    display: none;
}
@media only screen and (max-width: 800px){
    .header-img{
        display: none;
    }
    .header-text{
        margin-top:25%;
        font-size:16px;
        flex-basis: 100%;
    }
    
    .header-text p{
        width: 100%;
        margin-right: 5%;
    }
    #B1-s{font-size: 25px;}
    nav .fas{
        display: block;
        font-size: 25px;
    }
    nav ul{
        background: #ff004f;
        position: fixed;
        top:0;
        right: -200px;
        width: 200px;
        height: 100vh;
        padding-top: 50px;
        z-index: 2;
        transition: right 0.5s;
    }
    nav ul li{
        display: block;
        margin: 25px;
    }
    nav ul .fas{
        position: absolute;
        top: 25px;
        left: 25px;
        cursor: pointer;
    }
    .sub-title{
        font-size: 40px;
    }
    .about-col-1, .about-col-2{
        flex-basis: 100%;
    }
    .about-col-1{
        margin-bottom: 30px;
    }
    .about-col-2{
        font-size: 14px;
    }
    .tab-links{
        font-size: 16px;
        margin-right: 20px;
    }
    .contact-left, .contact-right{
        flex-basis: 100%;
    }
    .tab-contents{
        padding:0px;
    }
    .pl-wrapper{
        display: none;
    }
}
@media only screen and (min-width: 1800px) {
    .header-img{
        position: inherit !important; 
        padding: 10px 10px;
        display: flex;
        flex-basis: 55%;
        margin-top: 5%;
        justify-content: center;
        align-items: center;    
    }
    
}
#msg{
    color:#61b752;
    margin-top: -40px;
    display: block;
}