

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}
    
body{
    font-family: Georgia, "Times New Roman", serif;
    background:#ffffff;
    color:#222;
    line-height:1.6;
}
    
html{
    scroll-behavior:smooth;
}

a:focus,
button:focus{
    outline:3px solid #1ea2d4;
    outline-offset:3px;
}

/* HEADER */
    
.header{
    background:#1380E5;
}
    
.header__container{
    max-width:1200px;
    margin:auto;
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:15px;
}
    
.header__logo img{
    height:45px;
}
    
/* NAV */
    
.nav__list{
    display:flex;
    gap:30px;
    list-style:none;
    align-items:center;
}
    
.nav__link{
    text-decoration:none;
    color:white;
    font-size:18px;
}

.nav__link--active{
    border-bottom:2px solid white;
}

/* BURGER BUTTON */

.nav__toggle{
    display:none;
    flex-direction:column;
    gap:5px;
    background:none;
    border:none;
    cursor:pointer;
}
    
.nav__burger{
    width:25px;
    height:3px;
    background:white;
    display:block;
}

/* Title */
.case__back{
    display:inline-block;
    margin-bottom:10px;
    color:#1380E5;
}

.section-header__title{
    display:flex;
    align-items:center;
    gap:20px;
    font-size:28px;
    margin:40px 0;
}
    
.section-header__title::before,
.section-header__title::after{
    content:"";
    flex:1;
    height:2px;
    background:#888;
}
  
/* HERO */
.hero__container{
    max-width:1100px;
    margin:auto;
    margin-top: 50px;

    display:grid;
    grid-template-columns:1fr 1fr;
    align-items:center;
    gap:60px;
}

.hero__subtitle .hero__title{
    font-size:22px;
    margin-bottom:20px;
}

.hero__image{
    display: flex;
    justify-content: center;
}

.hero__image img{
    width:100%;
    max-width:400px;
}
    
/* SECTION TITLES */
.section-title{
    text-align:center;
    margin:60px 0 40px 0;
    font-size:28px;
}

.section-header{
    max-width:1100px;
    margin:60px auto 40px;
}
    
.section-header__title{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:30px;
    
    font-size:28px;
    text-align:center;
}
    
/* linjerne */
    
.section-header__title::before,
.section-header__title::after{
    content:"";
    flex:1;
    height:2px;
    background:black;
}

/* ABOUT */
.about__container{
    max-width:1100px;
    margin:auto;
    display:grid;
    grid-template-columns:200px 1fr;
    gap:40px;
    border:2px solid #5fb7d9;
    padding:40px;
}
    
.about__image{
    width:100%;
    max-width: 200px;
}
    
/* SKILLS */
    
.skills__grid{
    max-width:1100px;
    margin:auto;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
}
    
.skill-card{
    background:white;
    padding:25px;
    border:2px solid #1ea2d4;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.skill-card__icon{
    width:70px;
    margin-bottom:15px;
}
    
.skill-card img{
    width:70px;
    margin-bottom:15px;
}

.skill-card__list{
    list-style:none;
    padding:0;
    margin-top: 15px;
    text-align:left;
}

.skill-card__list li{
    position:relative;
    padding-left:15px;
    margin-bottom:6px;
}

.skill-card__list li::before{
    content:"-";
    position:absolute;
    left:0;
}

.skill-card{
    transition:transform 0.2s ease, box-shadow 0.2s ease;
}

.skill-card:hover{
    transform:translateY(-5px);
    box-shadow:0 6px 14px rgba(0,0,0,0.15);
}

/* TOOLS */

.tools{
    margin-top:40px;
    padding: 0px 20px;
}

.tools__container{
    max-width:1100px;
    margin:auto;
    border:2px solid #1ea2d4;
    padding:35px;
}

.tools__list{
    max-width:1100px;
    margin:auto;
    
    display:grid;
    grid-template-columns:repeat(8,1fr);
    gap:25px;
    
    list-style:none;
    padding:0;
}
    
.tools__item{
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    cursor: pointer;
    padding: 10px;
}

.tools__item:hover{
    transform: translateY(-8px);
    box-shadow: 0 8px 20px rgba(30, 162, 212, 0.3);
}

.tools__icon{
    width:65px;
    height:auto;
    margin-bottom:8px;
    
}

.tools__name{
    font-size:13px;
}

.tools__item:hover .tools__name{
    color: #1ea2d4;
}
    
/* PROJECTS */
    
.projects__grid{
    max-width:1100px;
    margin:auto;
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:30px;
}

.project-card{
    position:relative;
    border:2px solid #1ea2d4;
    overflow:hidden;
}

.project-card__link{
    position:relative;
    display:block;
}

.project-card__link img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.project-card img{
    width:100%;
    display:block;
    transition:transform 0.4s ease;
}


.project-card .button{
    position:absolute;
    top: 50%;
    left:50%;
    transform:translate(-50%, -50%);
}

.project-card:hover img{
    transform:scale(1.05);
}

.cta{
    text-align:center;
    margin:60px 0;
}
    
.button{
    background:#1380E5;
    color:white;
    padding:12px 30px;
    text-decoration:none;
    display:inline-block;
    margin-top:10px;
}

.button:hover{
    background:#00AEFF;
}
    
/* FOOTER */
    
.footer{
    background:#1380E5;
    color:white;
    margin-top:60px;
}
    
.footer__container{
    max-width:1100px;
    margin:auto;
    padding:40px 20px;
    
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
}
    
.footer__title{
    margin-bottom:10px;
}
    
.footer__contact a{
    color:white;
    text-decoration:none;
}
    
.footer__links {
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: flex-end;
}
    
.footer__link{
    color:white;
    text-decoration:none;
}
    
.footer__link:hover{
    text-decoration:underline;
}
    
.footer__bottom{
    text-align:center;
    padding:15px;
    font-size:14px;
    border-top:1px solid rgba(255,255,255,0.3);
}
    
    
/* RESPONSIVE */
    
@media (max-width:900px){
    
    .nav__toggle{
        display:flex;
    }
        
    .nav{
        position:absolute;
        top:70px;
        right:0;
        background:#1380E5;
        width:100%;
        display:none;
    }
        
    .nav--open{
        display:block;
    }
        
    .nav__list{
        flex-direction:column;
        align-items:center;
        padding:20px;
        gap:20px;
    }


    .hero__container,
    .about__container,
    .skills__grid,
    .projects__grid,
    .tools__container,
    .section-header {
        padding-left: 20px;
        padding-right: 20px;
    }


    .hero__container{
    grid-template-columns:1fr;
    text-align:center;
    }

    .hero__image img{
        max-width:250px;
    }
    
    .about__container{
        grid-template-columns:1fr;
        text-align:center;
        margin: 0px 20px;
    }

    .about__image{
        display:block;
        margin-left:auto;
        margin-right:auto;
    }
   
    .about__intro{
        grid-template-columns:1fr;
    }
    
    .skills__grid{
    grid-template-columns:1fr;
    }


    .tools__container {
        max-width: none;
        width: 100%;
        margin: 0 auto;
        box-sizing: border-box;
    }

    .tools__list {
        max-width: none;
        width: 100%;
        margin: 0;
        padding: 0;
        grid-template-columns: repeat(auto-fit, minmax(80px, 1fr));
    }
    
    .projects__grid{
    grid-template-columns:1fr;
    }
    
    .section-header__title {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 15px;          
        font-size: 22px;    
        text-align: center;
    }
    
    .section-header__title::before,
    .section-header__title::after {
        height: 1.5px;      
    }

    
}