@import url('https://fonts.googleapis.com/css2?family=Bai+Jamjuree:wght@400;500;600;700&display=swap');

:root{
    --color-body:#b6cbce;
    --color-heading:#eef3db;
    --color-base:#033f47;
    --color-base2:#022a30;
    --color-brand:#e0f780;
    --color-brand2:#deff58;
    --sidbar-width:240px;
    --font-base:"Bai Janjuree";
}

body{
    background-color: var(--color-base2);
    color:var(--color-body);
    font-family: var(--font-base), sans-seriif;
}

h1,h2,h3,h4,h5,h6{
    color:var(--color-heading);
    font-weight: 700;
}

a{
    text-decoration: none;
    color:var(--color-body);
    transition:all 0.4s ease;
}

a:hover{
    color:var(--color-brand);
}

img{
    width:100%;
}
.text-brand{
    color:var(--color-brand);
}
.bg-base{
    background-color: var(--color-base);
}

.full-height{
    min-height:100vh;
    height:100%;
    display:flex;
    flex-direction: column;
    justify-content: center;
    padding-top:80px;
    padding-bottom:80px;
    border-bottom: 2px solid rgba(255,255,255,0.1);
}
.shadow-effect{
    transition: all 0.5s;
}
.shadow-effect:hover{
    box-shadow: -6px 6px 0 0 var(--color-brand);
}

/* navbar */
.navbar{
    background-color: var(--color-base);
}
.navbar .nav-link{
    font-weight: 700;
    text-transform: uppercase;
    color:#fff;
}
.navbar .nav-link:hover{
    color:var(--color-brand);
}
.navbar .nav-link.active{
    color:var(--color-brand);
}

@media(min-width:992px)
{
    .navbar{
        min-height: 100vh;
        width:var(--sidbar-width);
        background:linear-gradient(rgba(3,63,71,0.8),rgba(3,63,71,0.8)), url(../images/sidebar-img.jpg);
        background-size: cover;
        background-position: center;
    }
    .navbar-brand img
    {
        border:4px solid var(--color-brand);
    }

    /* content-wrapper */
    #content-wrapper{
        padding-left:var(--sidbar-width)
    }
}

/* btn */
.btn{
    padding:12px 28px;
    font-weight: 700;
}
.btn-brand{
    background-color: var(--color-brand);
    border-color: var(--color-brand);
    color:var(--color-base);
}
.btn-brand:hover,
.btn-brand:focus{
    background-color: var(--color-brand2);
    border-color: var(--color-brand2);
}
.link-custom{
    font-weight:700;
    position:relative;
}
.link-custom::after{
    content:" ";
    width:0%;
    height:2px;
    background-color:var(--color-brand);
    position:absolute;
    left:0;
    top:110%;
    transition: all 0.4s;
}
.link-custom:hover::after{
    width:100%
}

   /*CARD*/
.card-custom .card-custom-image{
  overflow:hidden;
}

.link-custom .card-custom-image img{
    transition:all 0.4s ease;
}

.card-custom:hover .card-custom-image img{
    transform:scale(1.1);
}

/* contact */
#contact .form-control{
    background-color: var(--color-base);
    border-color: var(--color-base);
    color: var(--color-body);
}
#contact .form-control:focus{
    border-color: var(--color-brand);
    box-shadow: none;
}
#contact .form-control::placeholder{
  color: var(--color-body);
}
#contact input.form-control{
    height:44px;
}

/* social icons */

.social-icons i{
    width:40px;
    height:40px;
    display:inline-flex;
    align-items: center;
    justify-content: center;
    background-color: var(--color-base);
    border-radius: 100px;
    font-size: 24px;
}

/* --- Project Card Uniform Size --- */
.card-custom {
  height: 100%;
  width: 100%;                /* take full column width */
  display: flex;
  flex-direction: column;
  border-radius: 15px;
}

/* Image box same size for all */
.card-custom-image {
  height: 250px;              /* consistent image height */
  width: 100%;                /* full width of the card */
  overflow: hidden;
  border-top-left-radius: 15px;
  border-top-right-radius: 15px;
}

/* Make image fill box evenly */
.card-custom-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;           /* keeps proportion, fills nicely */
}

/* Keep content area flexible */
.card-custom-content {
  flex-grow: 1;
  width: 100%;
}
