
body {
    margin: 0;
    font-family: Arial, sans-serif;
    background-color: #DCF4F0;
    text-align: center;
    padding-top: 60px; /* 헤더 높이만큼 여백 추가 */
}

 /* 헤더 스타일 (상단 고정) */
header {
    position: fixed; /* 상단 고정 */
    top: 0;
    left: 0;
    width: 100%;
    background-color: white;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 20px;
    border-bottom: 2px solid #ddd; /* 헤더 구분선 */
    z-index: 1000; /* 다른 요소 위에 표시 */
}
.menu a {
    margin: 0 15px;
    text-decoration: none;
    color: black;
    font-size: 16px;
}
.hero {
    padding: 50px 20px;
    background-color: #DCF4F0;
}
.hero h1 span  {
    color: #24D1C0;
}

/* 히어로 섹션 */
/* .hero {
    text-align: center;
    padding: 40px 20px;
    background-color: #DCF4F0;
    display: flex;
    flex-direction: column;
    align-items: center;
} */
.hero {
    position: relative;
    text-align: center;
    padding: 60px 20px;
    background: url("/asset/image/bg3.png") no-repeat center center; 
    background-size: cover; /* 배경을 화면 크기에 맞게 조절 */
    background-attachment: fixed; /* 스크롤해도 배경 고정 */
    display: flex;
    flex-direction: column;
    align-items: center;
}
/* 기본 이미지 스타일 */
.hero img {
    width: 60%;  /* 기본적으로 부모 컨테이너의 50% */
    max-width: 200px; /* 데스크탑에서 최대 너비 200px */
    height: auto; /* 비율 유지 */
    margin-top: 20px; /* 위쪽 여백 */
    animation: floatAnimation 3s ease-in-out infinite; /* 애니메이션 적용 */
}

/* 반응형: 모바일에서는 크기 자동 조정 */
@media (max-width: 768px) {
    .hero img {
        width: 80%; /* 태블릿에서는 너비를 80%로 조정 */
        max-width: 250px; /* 최대 크기를 250px로 살짝 증가 */
    }
}

@media (max-width: 480px) {
    .hero img {
        width: 90%; /* 모바일에서는 더 크게 */
        max-width: 300px; /* 최대 크기 300px */
    }
}

/* 위아래로 둥둥 떠다니는 애니메이션 */
@keyframes floatAnimation {
    0% { transform: translateY(0px); }
    50% { transform: translateY(-15px); } /* 위로 15px 이동 */
    100% { transform: translateY(0px); }
}



/* 버튼 스타일 */
.btn {
    display: inline-flex;
    align-items: center;
    padding: 10px 20px;
    border-radius: 5px;
    color: white;
    text-decoration: none;
    font-weight: bold;
    margin: 5px;
    font-size: 16px;
    transition: background-color 0.3s, color 0.3s; /* 부드러운 전환 효과 */
}

/* Google Play 버튼 */
.google-play {
    background-color: #002CCC;
}

/* App Store 버튼 */
.app-store {
    background-color: #24D1C0;
}

/* 버튼 내부 아이콘 스타일 */
.btn-icon {
    width: 20px;
    height: 20px;
    margin-right: 10px;
    transition: filter 0.3s;
}

/* 🎨 마우스를 올리면 배경색과 글씨 색상이 반전 */
.btn:hover {
    background-color: white; /* 기존 배경을 흰색으로 */
    color: inherit; /* 글씨 색상을 원래 버튼 색상으로 유지 */
}

/* 아이콘 색상 반전 */
.google-play:hover .btn-icon {
    filter: invert(16%) sepia(99%) saturate(4873%) hue-rotate(235deg) brightness(94%) contrast(107%);
}

.app-store:hover .btn-icon {
    filter: invert(49%) sepia(87%) saturate(559%) hue-rotate(127deg) brightness(94%) contrast(98%);
}




/* 버튼 내부 SVG 아이콘 스타일 */
.btn svg {
    width: 20px; /* 아이콘 크기 */
    height: 20px;
    margin-right: 10px; /* 아이콘과 텍스트 간격 */
}

.mockup {
    margin-top: 20px;
    max-width: 80%;
    height: auto;
}
.about {
    background-color: white;
    padding: 40px 20px;
    margin-top: 40px;
}
.about h2 {
    color: #24D1C0;
}
/* 헤더 스타일 */
header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 20px;
    background-color: white;
    border-bottom: 2px solid #ddd; /* 헤더 구분선 추가 */
}

.logo {
    display: flex;
    align-items: center;
}

.logo img {
    height: 30px;
    margin-right: 8px;
}

.brand-name {
    font-size: 18px;
    font-weight: bold;
    color: black;
}

/* 메뉴 스타일 */
nav ul {
    list-style: none;
    display: flex;
    padding: 0;
    margin: 0;
}

nav ul li {
    margin: 0 12px;
}

nav ul li a {
    text-decoration: none;
    color: black;
    font-size: 16px;
    padding: 8px 12px;
    border-radius: 5px;
    transition: 0.3s;
}

nav ul li a:hover {
    background-color: #DCF4F0;
    color: #24D1C0;
}



/* 이미지 슬라이더 스타일 */
.image-slider {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    margin-top: 20px;
}

/* 기본 이미지 스타일 */
#slider-img {
    width: 50%;
    max-width: 400px; /* 데스크탑에서 최대 너비 200px */
    height: auto;
    animation: floatAnimation 3s ease-in-out infinite; /* 둥둥 떠다니는 애니메이션 */
}

/* 화살표 버튼 스타일 */
.arrow {
    position: absolute;
    background-color: rgba(0, 161, 182, 0);
    color: rgb(0, 173, 165);
    border: none;
    padding: 10px 15px;
    cursor: pointer;
    font-size: 20px;
    border-radius: 50%;
    transition: background-color 0.3s;
}

.arrow:hover {
    background-color: rgba(255, 255, 255, 0.8);
}

/* 좌우 화살표 위치 조정 */
.left {
    left: -40px;
}

.right {
    right: -40px;
}

/* 반응형 조정 */
@media (max-width: 768px) {
    #slider-img {
        width: 80%;
        max-width: 250px;
    }

    .left {
        left: -30px;
    }

    .right {
        right: -30px;
    }
}

@media (max-width: 480px) {
    #slider-img {
        width: 90%;
        max-width: 300px;
    }
}


/* 섹션 기본 스타일 */
.info-section {
    text-align: center;
    background-color: white;
    padding: 40px 20px;
}

/* 섹션 제목 */
.info-section h2 {
    font-size: 22px;
    font-weight: bold;
    color: #24D1C0;
    margin-bottom: 20px;
}

/* 박스 컨테이너 (PC에서 4개, 모바일에서 2개씩 보이도록 설정) */
/* .info-container {
    display: grid;
    grid-template-columns: repeat(4, 1fr);  
    gap: 20px;
    max-width: 1000px;
    margin: 0 auto;
} */

/* 개별 박스 스타일 */
/* .info-box {
    background-color: #F6F6F8;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    height: 250px;
    padding: 15px;
    transition: transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out;  
} */

/* 박스 컨테이너 */
.info-container {
    display: grid;
    grid-template-columns: repeat(4, 1fr); /* PC에서 4개 */
    gap: 20px;
    max-width: 1000px;
    margin: 0 auto;
}

/* 개별 박스 스타일 */
.info-box {
    background-color: #e2e2e2;
    border-radius: 20px; /* 박스 전체 모서리 둥글게 */
    overflow: hidden;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    height: 300px;
    padding: 15px;
}

/* 이미지 컨테이너 */
.info-image {
    width: 100%;
    height: 150px; /* 모든 이미지 높이 동일하게 조정 */
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 20px; /* 이미지 컨테이너도 둥글게 */
    overflow: hidden; /* 둥근 테두리 유지 */
    /* border: 1px solid rgb(172, 172, 172); */
}

/* 이미지 스타일 */
.info-image img {
    width: 100%; /* 가득 차게 */
    height: 100%; /* 컨테이너 높이 맞춤 */
    object-fit: cover; /* 이미지가 잘리는 것 없이 크기 조정 */
    border-radius: 20px; /* 이미지 자체도 둥글게 */
}

/* 텍스트 영역 */
.info-text {
    padding: 10px;
    text-align: center;
}

/* 타이틀 스타일 */
.info-text h3 {
    font-size: 18px;
    font-weight: bold;
    color: black;
    margin-bottom: 5px;
}

/* 설명 텍스트 스타일 */
.info-text p {
    font-size: 14px;
    color: #555;
    margin: 0;
}

/* 반응형 조정 (모바일에서는 2개씩 보이게) */
@media (max-width: 768px) {
    .info-container {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 480px) {
    .info-container {
        grid-template-columns: repeat(1, 1fr);
    }
}


/* 🎨 마우스를 올리면 박스가 위로 떠오르는 효과 */
.info-box:hover {
    transform: translateY(-10px); /* 위로 10px 이동 */
    box-shadow: 0px 8px 16px rgba(0, 0, 0, 0.2); /* 그림자 강화 */
}


/* 위쪽 이미지 자리 */
.info-image {
    background-color: #ddd; /* 임시 배경 (이미지 자리) */
    width: 100%;
    height: 60%; /* 박스의 60% 차지 */
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    color: black;
}

/* 아래쪽 텍스트 자리 */
.info-text {
    padding: 10px;
    text-align: center;
}

/* 타이틀 텍스트 스타일 */
.info-text h3 {
    font-size: 18px;
    font-weight: bold;
    color: black;
    margin-bottom: 5px;
}

/* 내용 텍스트 스타일 */
.info-text p {
    font-size: 14px;
    color: #555;
    margin: 0;
}

/* 반응형 설정 (태블릿 & 모바일에서 2개씩 보이도록 변경) */
@media (max-width: 768px) {
    .info-container {
        grid-template-columns: repeat(2, 1fr); /* 모바일에서 2개씩 */
    }
}

@media (max-width: 480px) {
    .info-container {
        grid-template-columns: repeat(1, 1fr); /* 더 작은 화면에서는 1개씩 */
    }
}

/* footer */

.footer{
    background-color: black;
    color:grey;
}