@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&display=swap');

/* general */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html{
    scroll-behavior: smooth;
}

body{
    background: #FFF5E4;
    color: black;
    overflow-x: hidden;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}
a{
    text-decoration: none;
}

/* navbar */
nav{
    background: #ad4200;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 48px;
    height: 72px;
    position: sticky;
    top: 0;
    z-index: 100;
    margin:0;
}

.logo{
    display: flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
}

.logo-icon{
    width: 38px;
    height: 38px;
}

.logo-text{
    font-family: 'Bebas Neue', sans-serif;
    font-size: 26px;
    color: orange;
    letter-spacing: 2px;
    line-height: 1;
    text-decoration: none;
}

.logo-sub{
    font-size:9px;
    letter-spacing: 3px;
    color: #fd6a05;
    text-transform: uppercase;
    line-height: 1;
    margin-top: 2px;
    text-decoration:none;
}

.nav-links{
    display: flex;
    align-items: center;
    gap: 36px;
    list-style: none;
}

.nav-links a{
    font-family: "Bebas Neue", sans-serif;
    font-size: 16px;
    letter-spacing: 2px;
    color: #fd6a05;
    text-decoration: none;
    transition: color .2s;
}

.nav-links a:hover{
    color: orange;
}

.btn-nav{
    background: orange;
    color: black;
    padding: 10px 22px;
    border-radius: 50px;
    font-family: 'Bebas Neue', sans-serif;
    font-size: 15px;
    letter-spacing: 2px;
    transition: background .2s, transform .15s;
}

.btn-nav:hover{
    background: #ad4200;
    transform: scale(1.04);
}

/* weho we are */
.who-section{
    padding: 80px 60px;
    background: linear-gradient(to bottom, #FFF5E4, #fde8c0)
}
.who-inner{
    max-width: 1100px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    gap: 80px;
}
.who-text{
    flex: 1;
}
.who-title{
    font-family: 'Bebas Neue', sans-serif;
    font-size: clamp(52px, 7vw, 96px);
    line-height: .92;
    color: #0F0D0A;
    margin-bottom: 24px;
}
.who-title span{
    color: #ad4200;
}
.who-body{
    font-size: 18px;
    line-height: 1.8;
    color: #5a3a18;
    max-width: 580px;
    font-family: sans-serif;
}
.who-logo{
    flex-shrink:0;
}
.who-logo img{
    width:280px;
    height:280px;
    object-fit:contain;
}

/* team members & paws */
.team{
    margin-top: 50px;
    margin-bottom: 50px;
}
.team-section{
    padding:80px 60px;
    background: linear-gradient(to bottom, #FFF5E4, #fdd5a0);
}
.team-title{
    font-family: 'Bebas Neue', sans-serif;
    font-size: clamp(48px, 6vw, 84px);
    line-height:.92;
    color: #0F0D0A;
    text-align: center;
    margin-bottom: 60px;
}
.team-grid{
    max-width: 1100px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap:40px;
    justify-items: center;
}
.team-member{
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}
.team-paw{
    margin-bottom: 16px;
    svg{
        width:72px;
        height:72px;
        fill: #ad4200;
        opacity:0.85;
    }
}
.team-name{
    font-family: 'Bebas Neue', sans-serif;
    font-size: 22px;
    letter-spacing: 1px;
    color: #0F0D0A;
    margin-bottom: 4px;
}
.team-role{
    font-size: 13px;
    color: #7a5030;
    font-weight: 600;
    letter-spacing: .5px;
}

/* footer */
footer{
    display: flex;
    gap:31.5vw;
    background-color: #ad4200;
    color:wheat;
    font-family: sans-serif;
    padding-top: 10px;
    padding-bottom:10px;
    margin-top: auto;
}
.credit{
    text-decoration: none;
    color:wheat
}

/* responsive*/
.nav-toggle{ display: none; width: 44px; height: 44px; border: none; background: transparent; cursor: pointer; padding: 10px; flex-direction: column; justify-content: center; gap: 5px; z-index: 101; }
.nav-toggle span{ display: block; width: 24px; height: 2px; background: #fd6a05; transition: transform .25s, opacity .25s; margin: 0 auto; }
nav.nav-open .nav-toggle span:nth-child(1){ transform: translateY(7px) rotate(45deg); }
nav.nav-open .nav-toggle span:nth-child(2){ opacity: 0; }
nav.nav-open .nav-toggle span:nth-child(3){ transform: translateY(-7px) rotate(-45deg); }

@media (max-width: 900px){
    .nav-toggle{ display: flex; }
    .nav-links{ position: fixed; top: 0; right: 0; width: min(280px, 85vw); height: 100vh; background: #ad4200; flex-direction: column; justify-content: center; gap: 24px; padding: 80px 32px 32px; box-shadow: -4px 0 20px rgba(0,0,0,.2); transform: translateX(100%); transition: transform .3s ease; }
    nav.nav-open .nav-links{ transform: translateX(0); }
    .nav-links a{ font-size: 18px; }
}
@media (max-width: 768px){
    nav{ padding: 0 20px; }
    .who-section{ padding: 48px 24px; }
    .who-inner{ flex-direction: column; gap: 40px; text-align: center; }
    .who-body{ margin: 0 auto; }
    .who-logo img{ width: 200px; height: 200px; }
    .team{ padding: 48px 24px; }
    .team-title{ font-size: clamp(36px, 8vw, 56px); margin-bottom: 40px; }
    .team-grid{ grid-template-columns: 1fr; gap: 32px; }
    footer{ flex-direction: column; gap: 12px; padding: 20px 24px; text-align: center; }
}
@media (max-width: 480px){
    .logo-text{ font-size: 20px; }
    .who-title{ font-size: clamp(36px, 9vw, 52px); }
    .who-body{ font-size: 16px; }
    .who-logo img{ width: 160px; height: 160px; }
    .team-name{ font-size: 18px; }
}