/* Hex-Key Website - Device-Specific Responsive CSS */
/* 
   특정 기기에 맞춘 반응형 스타일:
   - iPhone 모델: 375 x 812 (DPR=3)
   - Samsung Galaxy S 시리즈: 360 x 780 (DPR=3)
   - Samsung Galaxy Z Fold 5: 344 x 882
   - Samsung Galaxy Z Flip 3: 380 ~ 390
   - Galaxy Note/iPhone Pro Max: 410 ~ 430
*/
/* PC 화면 버전 토글 - 모바일 버전 숨김 */

/* 서비스 섹션 텍스트 스타일 - 1366px 기준으로 텍스트 교체 */
/* 기본 상태에서는 모바일 텍스트 숨김, 데스크탑 텍스트 표시 */
.responsive-title, .responsive-text, .faq-mobile-text, .desc-mobile-only, .desc-title-mobile-only, .event-desc-mobile {
  display: none;
}

.desktop-service-title, .desktop-service-text, .faq-pc-text, .desc-desktop-only, .desc-title-desktop-only, .event-desc-desktop {
  display: block;
}
@media screen and (max-width: 570px) {
  .desc-title-mobile-only {
    display: block;
  }
  .desc-title-desktop-only {
    display: none;
  }
}


@media screen and (max-width: 1080px) {
  /* 1080px 이하에서는 모바일 텍스트 표시, 데스크탑 텍스트 숨김 */
  .desc-mobile-only {
    display: block;
  }
  .event-detail-section {
    padding-top: 30px;
  }
  .desc-desktop-only {
    display: none;
  }
  
  /* 모바일 폰트 크기 적용 */
  .desc-mobile-font-md {
    font-size: 15px;
    line-height: 1.6;
  }
}

@media screen and (max-width: 500px) {
  .faq-mobile-text {
    display: block;
  }
  .faq-pc-text {
    display: none;
  }
}

@media screen and (max-width: 1023px) {
  /* 1366px 이하에서는 모바일 텍스트 표시, 데스크탑 텍스트 숨김 */
  .responsive-title, .responsive-text {
    display: block;
  }
  
  .desktop-service-title, .desktop-service-text {
    display: none;
  }
  
  /* 모바일 폰트 크기 적용 */
  .responsive-title {
    font-size: 24px; /* mobile-font-lg와 같은 크기 */
  }
  
  .responsive-text {
    font-size: 16px; /* mobile-font-md와 같은 크기 */
    line-height: 1.6;
  }
  .event-title {
    font-size: 18px;
  }
}

@media screen and (min-width:1024px) and (max-width: 1366px) {
  .whitepaper-section p {
    font-size: 16px;
    margin-bottom: 15px;
  }
  .policy-sub-card p {
    font-size: 17px;
  }
  .event-detail-content p {
    font-size: 16px;
  }
  .service-card p {
    font-size: 13px;
  }
  .event-title {
    font-size: 25px;
  }
  .hero-flex-container {
    justify-content:center;
  }
  .hero-image-bg {
    position: relative;
    top: 0;
    right: 0;
    left: 0;
    width: 90%;
    max-width: 450px;
    height: 300px;
    margin: 20px auto 0;
  }
  .hero-text-content {
    text-align: center;
  }
  .hero-content p {
    text-align: center;
    max-width: 100%;
  }
  .hero-buttons {
    display: block;
    text-align: center;
    max-width: 100%;
  }
  .btn-primary {
    margin-right: 50px;
  }
  .hero-image-bg {
    max-width: 660px;
    left:-5px;
    height: 400px;
  }
  .features-grid p{
    font-size: 13.5px;
  }
  .feature2-pc-text {
    font-size: 13.5px;
  }
  .feature2-pc-list li {
    font-size: 11.5px;
  }
  .plan-features li {
    font-size: 14px;
  }
  .plan-price {
    font-size: 24px;
  }
  .pricing-plan {
    height : 480px;
  }
  /* 2x2 Grid Layout for Steps */
  .steps {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
    gap: 25px;
    width: 100%;
    margin: 0 auto;
    margin-bottom: 30px;
  }
  
  p.explanation-desktop-text {
    font-size: 15px;
  }
}


@media screen and (min-width:770px) and (max-width: 1023px) {
  .whitepaper-section p {
    font-size: 12px;
    margin-bottom: 15px;
  }
  .event-detail-content p {
    font-size: 13px;
  }
  .requirement li {
    font-size: 11px;
  }
  .hero-content h1 {
    font-size: 72px;
  }
  .hero-content h2 {
    font-size: 42px;
  }
  .hero-content p {
    font-size: 24px;
  }
  .hero-flex-container {
    justify-content:center;
  }
  .service-card p {
    font-size: 14px;
  }
  .hero-image-bg {
    position: relative;
    top: 0;
    right: 0;
    left: 0;
    width: 90%;
    max-width: 450px;
    height: 300px;
    margin: 20px auto 0;
  }
  .plan-features {
    margin-bottom: 70px;
  }
  .feature-box h3 {
    font-size: 16px;
    margin-bottom: 6px;
  }
  .limited-offer-text {
    font-size: 18px;
  }
  .hero-text-content {
    text-align: center;
    padding:0px;
  }
  .hero-content p {
    text-align: center;
    max-width: 100%;
  }
  .hero-buttons {
    display: block;
    text-align: center;
    max-width: 100%;
  }
  .btn-primary {
    margin-right: 50px;
  }
  .hero-image-bg {
    max-width: 660px;
    left:-5px;
    height: 400px;
  }
  .features-grid p{
    font-size: 10px;
  }
  .feature2-pc-text {
    font-size: 19px;
  }
  .feature2-pc-list li {
    font-size: 16px;
  }
  .plan-features li {
    font-size: 13px;
  }
  .plan-price {
    font-size: 24px;
  }
  .pricing-plan {
    height : 480px;
  }
  /* 2x2 Grid Layout for Steps */
  .steps {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
    gap: 25px;
    width: 100%;
    margin: 0 auto;
    margin-bottom: 30px;
  }
  
  p.explanation-desktop-text {
    font-size: 11px !important;
  }
  .feature-box {
    padding: 15px;
  }
  .icon {
    margin-bottom: 20px;
  }
}


/* PC 화면 버전 토글 - 모바일 버전 숨김 */
@media screen and (min-width: 769px) {
  .page-hero-content,
  .intro-text-mobile,
  .tech-text-mobile,
  .feature-list-mobile {
    display: none;
  }
}

/* 공통 모바일 스타일 변수 */
:root {
  --iphone-width: 375px;
  --galaxy-s-width: 360px;
  --galaxy-fold-width: 344px;
  --galaxy-flip-width: 385px;
  --note-promax-width: 420px;
  
  --small-font-size: 12px;
  --medium-font-size: 14px;
  --large-font-size: 16px;
  --heading-small: 18px;
  --heading-medium: 20px;
  --heading-large: 22px;
  --heading-xlarge: 24px;
}

/* ======== 모든 모바일 기기에 공통 적용되는 스타일 ======== */
@media screen and (max-width: 768px) {
/* 이벤트 페이지 텍스트 토글 - 768px 이하에서 모바일 버전 표시 */
.event-desc-desktop {
  display: none;
}

.event-desc-mobile {
  display: block;
}
.policy-sub-card p {
  font-size: 14px;
}
.event-desc-mobile.wallet {
  font-size: 12px;
}

/* 페이지 히로 PC/모바일 버전 토글 */
.page-hero-content-pc,
.intro-text-pc,
.tech-text-pc,
.feature-list-pc {
  display: none;
}
.hero-buttons .btn {
  font-size: 15px;
}

.tech-detail p {
  margin-bottom: 0px;
}

.video-btn {
  font-size: 15px;
  padding: 50px 15px 12px; /* 아이콘과 텍스트 사이 간격 늘림 */
  width: 200px;
}
.tech-detail h4 {
  text-align: center;
}

.services-nav-btn {
  top: 90%;
}

.tech-detail p {
  text-align: center;
}

.page-hero {
  height : 30vh;
}

.page-hero-content {
  display: block;
}
.testimonial-slide .quote {
  margin-bottom: 60px;
  font-size: 13px !important;
}

.name {
  font-size: 15px;
}

.role {
  font-size: 13px;
}

.page-hero-content h1 {
  font-size: 26px;
}

.page-hero-content p {
  font-size: 16px;
}
}


/* ======== 모든 모바일 기기에 공통 적용되는 스타일 ======== */
@media screen and (max-width: 400px) {
  /* 컨테이너 패딩 조정 */
  .container {
    padding-left: 15px;
    padding-right: 15px;
  }
  /* 폰트 사이즈 조정 */
  body {
    font-size: var(--medium-font-size);
  }
  
  /* 네비게이션 관련 스타일은 style.css에서만 처리하도록 제거 */
  
  /* 버튼 크기 조정 */
  .btn {
    padding: 8px 16px;
    font-size: 14px;
  }

  .mobile-feature-card p {
    font-size: 13px !important;
  }
  .faq-question h4 {
    font-size: 14px;
  }
  .services-nav-btn {
    top: 91.5%;
  }
  .services-prev-btn {
    left: 90px;
  }
  .services-next-btn {
    right: 90px;
  }
}

/* 추가 모바일 공통 스타일 */
@media screen and (max-width: 769px) {
  .step p {
    font-size: 16px;
  }
  .whitepaper-section p {
    margin-bottom: 15px;
  }
  .use-case p {
    margin-bottom: 5px;
    }
  .tech-detail p {
    margin-bottom: 5px;
  }
  /* 섹션 여백 조정 */
  section {
    padding: 40px 0;
  }
  
  /* 섹션 헤더 조정 */
  .section-header h2 {
    font-size: 28px !important;
    margin-bottom: 10px;
  }
  
  /* 슬라이더 아이템 간격 조정 */
  .feature-slide, .step-slide {
    padding: 0px;
  }
  
  .pricing-plan { 
    height: 392px;
    min-height: 475px;
  }

  .feature-content {
    padding: 25px;
  }

  /* 피처 박스 여백 조정 */
  .feature-box {
    padding: 15px;
    margin-bottom: 20px;
  }
  
  /* 텍스트 줄간격 조정 */
  p {
    line-height: 1.5;
  }
  
  /* 페이지 전체 텍스트 크기 조정 */
  h1 {
    font-size: var(--heading-large);
  }
  
  h2 {
    font-size: var(--heading-medium);
  }
  
  h3 {
    font-size: var(--heading-small);
  }
  
  /* 모바일 메뉴 조정 */
  .nav-toggle {
    right: 15px;
  }
  
  /* 모바일용 컨텐츠 활성화 */
  .hero-text-content {
    display: none;
  }
  
  .hero-text-content-mobile {
    display: block;
  }
  
  /* feature2-title-mobile 재정의 (모든 모바일 기기 공통) */
  .feature2-title-mobile {
    font-size: 18px !important;
    line-height: 20px !important;
    text-align: center !important;
  }
  
  /* 슬라이더 컨테이너 최적화 */
  .combined-sliders-container {
    display: block;
  }
  
  /* 모바일 테스티모니얼 조정 */
  .testimonial {
    padding: 15px;
  }
  
  .testimonial .quote {
    font-size: var(--medium-font-size);
  }
  
  /* 설명 텍스트 조정 */
  .explanation-content p {
    font-size: var(--small-font-size);
  }

  .feature2-mobile-text {
    font-size: 15px;
  }

  .plan-features li {
    font-size: 14px;
    padding: 8px 0;
  }
  
}

/* ======== iPhone 모델 (375px) 특화 스타일 ======== */
@media screen and (min-width: 370px) and (max-width: 380px) {
  /* 네비게이션 - 아이폰 특화 스타일 */
  .logo a {
    font-size: 20px;
    padding: 7px 0;
  }
  .policy-sub-card p {
    font-size: 12px;
  }
  .event-detail-content p {
    font-size: 12px;
  }
  .event-desc-mobile.wallet {
    font-size: 11px;
  }
  .event-title {
    font-size: 21px;
  }
  .desc-mobile-font-md {
    font-size: 11px !important;
  }
  .services-prev-btn {
    left: 40px;
  }
  .faq-answer p {
    font-size: 12px !important;
  }
  .faq-question h4 {
    font-size: 13px !important;
  }
  .services-next-btn {
    right: 40px;
  }
  .nav-menu li a {
    font-size: 13px;
    padding: 5px 7px;
  }
  .puzzle-card-address-value {
    font-size: 16px;
  }
  .mobile-feature-card p {
    font-size: 12px !important;
  }

  header {
    padding: 12px 0;
  }
  /* iPhone 전용 미세 조정 */
  .container {
    max-width: 360px;
    margin: 0 auto;
  }
  
  .explanation-mobile-text {
    font-size: 13px !important;
  }

  /* 헤더 높이 조정 */
  header {
    padding: 12px 0;
  }
  
  /* 아이폰 전용 버튼 조정 */
  .btn {
    border-radius: 10px;
    font-size: 14px;
  }
  
  /* 아이폰 전용 feature2-title-mobile 조정 */
  .feature2-title-mobile {
    font-size: 17px !important;
    line-height: 21px !important;
  }
  .feature-content {
    padding: 20px;
  }

  /* 히어로 섹션 내 텍스트 조정 */
  .hero-text-content-mobile h1 {
    font-size: 34px;
    margin-bottom: 6px;
  }
  
  .feature2-mobile-text {
    font-size: 14px;
  }

  .hero-text-content-mobile h2 {
    font-size: 20px;
    margin-bottom: 10px;
  }
  
  .hero-text-content-mobile p {
    font-size: 14px;
    line-height: 1.5;
  }
  
  /* 피처 섹션 조정 */
  .feature-box {
    height: 180px;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  
  .feature-box h3 {
    font-size: 16px;
    margin-bottom: 6px;
  }
  
  .feature-box p {
    font-size: 12px;
    line-height: 1.5;
  }
  
  /* 가격 섹션 조정 */
  .pricing-plan {
    padding: 20px 15px;
    height: 392px;
    min-height: 440px;
  }
  
  .plan-price {
    font-size: 24px;
    margin-bottom: 15px;
  }
  
  .plan-features li {
    font-size: 14px;
    padding: 8px 0;
  }
  
  /* 푸터 조정 */
  .footer-content {
    flex-direction: column;
  }
  
  .footer-logo, .footer-links, .footer-contact {
    width: 100%;
    margin-bottom: 20px;
  }

  .testimonial-slide .quote {
    margin-bottom: 60px;
    font-size: 12px !important;
  }
  
  .name {
    font-size: 15px;
  }
  
  .role {
    font-size: 13px;
  }
}

/* ======== 삼성 갤럭시 S 시리즈 (360px) 플립 3 특화 스타일 ======== */
@media screen and (min-width: 355px) and (max-width: 365px) {
  /* 네비게이션 - 갤럭시 S 특화 스타일 */
  .logo a {
    font-size: 19px;
    padding: 6px 0;
  }
  .faq-question h4 {
    font-size: 13px;
  }
  .policy-sub-card p {
    font-size: 11px;
  }
  .event-detail-content p {
    font-size: 11.5px;
  }
  .faq-answer p {
    font-size: 12px;
  }
  .service-card p {
    font-size:13px;
  }
  .services-prev-btn {
    left: 40px;
  }
  .services-next-btn {
    right: 40px;
  }
  .service-card p {
    font-size:12.4px !important;
  }
  .faq-answer p {
    font-size: 11.5px !important;
  }
  .faq-question h4 {
    font-size: 12px !important;
  }
  .explanation-mobile-text {
    font-size: 13px !important;
  }
  .puzzle-card-value {
    font-size: 15px;
  }
  .puzzle-card-hexkey-value {
    font-size: 15px;
  }
  .puzzle-card-address-value {
    font-size: 15px;
  }
  .nav-menu li a {
    font-size: 13px;
    padding: 5px 6px;
  }
  
  .feature-content {
    padding: 15px;
  }

  .feature2-mobile-text {
    font-size: 14px;
    line-height: 1.4;
  }

  .hero {
    padding: 0px;
  }

  header {
    padding: 10px 0;
  }
  /* 갤럭시 S 시리즈 전용 미세 조정 */
  .container {
    max-width: 350px;
    margin: 0 auto;
  }
  
  /* 헤더 높이 조정 */
  header {
    padding: 10px 0;
  }
  
  /* 버튼 미세 조정 */
  .btn {
    border-radius: 18px;
    font-size: 12px;
    padding: 7px 16px;
  }
  
  /* 갤럭시 S 시리즈 전용 feature2-title-mobile 조정 */
  .feature2-title-mobile {
    font-size: 17px !important;
    line-height: 20px !important;
  }
  
  /* 히어로 섹션 내 텍스트 조정 */
  .hero-text-content-mobile h1 {
    font-size: 34px;
    margin-bottom: 5px;
  }
  
  .hero-text-content-mobile h2 {
    font-size: 19px;
    margin-bottom: 10px;
  }
  
  .hero-text-content-mobile p {
    font-size: 13px;
    line-height: 1.4;
    margin-bottom: 14px;
  }
  
  /* 피처 박스 조정 */
  .feature-box {
    height: 175px;
  }
  
  .feature-box h3 {
    font-size: 15px;
    margin-bottom: 5px;
  }
  
  .feature-box p {
    font-size: 11px;
  }
  
  /* 가격 섹션 조정 */
  .pricing-plan {
    padding: 18px 12px;
    min-height: 410px;
  }
  
  .plan-price {
    font-size: 18px;
    margin-bottom: 14px;
  }
  
  .plan-features li {
    font-size: 14px;
    padding: 7px 0;
  }
  
  /* 푸터 조정 */
  .footer-logo h3 {
    font-size: 20px;
  }
  
  .footer-contact li {
    font-size: 12px;
  }

  .mobile-feature-card p {
    font-size: 12px !important;
  }

  .testimonial-slide .quote {
    margin-bottom: 60px;
    font-size: 11.8px !important;
  }
  
  .name {
    font-size: 15px;
  }
  
  .role {
    font-size: 13px;
  }
}

/* ======== 갤럭시 Z 폴드 5 (344px) 특화 스타일 ======== */
@media screen and (min-width: 340px) and (max-width: 348px) {
  /* 네비게이션 - 갤럭시 Z 폴드 5 특화 스타일 */
  /* 갤럭시 Z 폴드 전용 미세 조정 */
  .container {
    max-width: 330px;
    margin: 0 auto;
  }
  .policy-sub-card p {
    font-size: 10.4px;
  }
  .desc-mobile-font-md {
    font-size: 10px !important;
  }
  .event-desc-mobile.wallet {
    font-size: 11px;
  }
  .event-detail-content p {
    font-size: 12px;
  }
  .event-detail {
    padding: 15px;
  }
  .service-card p {
    font-size:11.5px !important;
  }
  .faq-answer p {
    font-size: 10.5px !important;
  }
  .faq-question h4 {
    font-size: 12px !important;
  }

  .services-prev-btn {
    left: 40px;
  }
  .services-next-btn {
    right: 40px;
  }
  /* 폴드 스크린에 맞게 네비게이션 조정 */
  .logo a {
    font-size: 18px;
    padding: 5px 0;
  }
  
  .nav-menu li {
    margin-left: 6px;
  }
  
  .nav-menu li a {
    font-size: 13px;
    padding: 4px 5px;
  }
  
  .cta-content h2 {
    font-size: 17px !important;
  }

  header {
    padding: 8px 0;
  }
  
  .feature-slide .feature-box p {
    font-size: 15px;
  }

  .feature-slide .feature-box h3 {
    font-size: 24px;
  }

  /* 폴드 화면에 맞게 버튼 조정 */
  .btn {
    padding: 7px 15px;
    font-size: 11px;
    border-radius: 15px;
  }
  
  /* 히어로 섹션 내 텍스트 조정 */
  .hero-text-content-mobile h1 {
    font-size: 30px;
    margin-bottom: 5px;
  }
  
  .hero-text-content-mobile h2 {
    font-size: 18px;
    margin-bottom: 8px;
  }
  
  .hero-text-content-mobile p {
    font-size: 13px;
    line-height: 1.4;
    margin-bottom: 20px;
  }
  
  /* 섹션 헤더 조정 */
  .section-header h2 {
    font-size: 18px;
  }
  
  /* 피처 박스 높이 조정 */
  .feature-box {
    height: 170px;
  }
  
  .feature-box h3 {
    font-size: 14px;
    margin-bottom: 5px;
  }
  
  .feature-box p {
    font-size: 10px;
    line-height: 1.4;
  }
  
  .feature-content {
    padding: 20px;
  }

  .mobile-feature-card p {
    font-size: 11px !important;
  }

  /* 설명 텍스트 폰트 사이즈 조정 */
  .explanation-mobile-text {
    font-size: 12px !important;
    line-height: 1.5 !important;
    letter-spacing: -0.2px;
  }

  /* 피처 하이라이트 섹션 조정 */
  .feature2-title-mobile {
    font-size: 15px !important;
    line-height: 18px !important;
    text-align: center !important;
    margin-bottom: 10px !important;
    color: var(--accent-color);
  }
  
  .feature2-mobile-text {
    font-size: 13px;
    line-height: 1.4;
  }
  
  /* 가격 섹션 조정 */
  .pricing-plan {
    padding: 16px 10px;
    height: 392px;
    min-height: 400px;
  }
  
  .plan-price {
    font-size: 16px;
    margin-bottom: 12px;
  }
  
  .plan-features li {
    font-size: 14px;
    padding: 6px 0;
  }
  
  /* 작동 원리 단계 조정 */
  .step-number {
    width: 30px;
    height: 30px;
    font-size: 16px;
    line-height: 30px;
  }
  
  .step h3 {
    font-size: 20px;
    margin: 10px 0 5px;
  }
  
  .step p {
    font-size: 14px;
  }
  
  /* 설명 섹션 패딩 조정 */
  .operation-explanation {
    padding: 16px;
  }
  
  /* 푸터 패딩 조정 */
  footer {
    padding: 30px 0;
  }
  
  .footer-logo h3 {
    font-size: 18px;
  }
  
  .footer-logo p, 
  .footer-links li, 
  .footer-contact li {
    font-size: 11px;
  }
  
  .testimonial-slide .quote {
    margin-bottom: 60px;
    font-size: 11px !important;
  }
  
  .name {
    font-size: 15px;
  }
  
  .role {
    font-size: 13px;
  }
  /* 갤럭시 폴드 전용 세로 높이 조정 */
  @media screen and (min-height: 870px) and (max-height: 890px) {
    .hero {
      height: auto;
      min-height: 450px;
    }
    
    .steps {
      margin-bottom: 30px;
    }
    
    .testimonials {
      padding-top: 40px;
      padding-bottom: 40px;
    }
  }
}

/* ======== 갤럭시 Z 플립 3 (380 ~ 390px) 특화 스타일 ======== */
@media screen and (min-width: 380px) and (max-width: 390px) {
  /* 네비게이션 - 갤럭시 Z 플립 3 특화 스타일 */
  .logo a {
    font-size: 21px;
    padding: 7px 0;
  }
  .services-prev-btn {
    left: 70px;
  }
  .event-detail-content p {
    font-size: 12.5px;
  }
  .services-next-btn {
    right: 70px;
  }
  .service-card p {
    font-size:13.5px !important;
  }
  .faq-answer p {
    font-size: 12px !important;
  }
  .faq-question h4 {
    font-size: 13px !important;
  }
  .nav-menu li {
    margin-left: 9px;
  }
  
  .nav-menu li a {
    font-size: 12px;
    padding: 6px 8px;
  }
  .puzzle-card-value {
    font-size: 17px;
  }
  .puzzle-card-privatekey-value {
    font-size : 16px;
  }
  
  header {
    padding: 12px 0;
  }
  /* 갤럭시 Z 플립 3 전용 미세 조정 */
  .container {
    max-width: 370px;
    margin: 0 auto;
  }

  .feature2-title-mobile {
    font-size: 17px !important;
  }

  /* 헤더 높이 조정 */
  header {
    padding: 12px 0;
  }
  
  /* 버튼 미세 조정 */
  .btn {
    border-radius: 10px;
    font-size: 13px;
    padding: 8px 18px;
  }

  .feature-content {
    padding: 20px;
  }
  /* 히어로 섹션 내 텍스트 조정 */
  .hero-text-content-mobile h1 {
    font-size: 34px;
    margin-bottom: 6px;
  }
  
  .hero-text-content-mobile h2 {
    font-size: 20px;
    margin-bottom: 10px;
  }
  
  .hero-text-content-mobile p {
    font-size: 14px;
    line-height: 1.5;
    margin-bottom: 15px;
  }

  .feature2-mobile-text {
    font-size: 14px;
  }

  /* 피처 섹션 조정 */
  .feature-box {
    height: 180px;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  
  .feature-box h3 {
    font-size: 16px;
    margin-bottom: 6px;
  }
  
  .feature-box p {
    font-size: 12px;
    line-height: 1.5;
  }
  
  /* 가격 섹션 조정 */
  .pricing-plan {
    padding: 20px 15px;
    height: 392px;
    min-height: 450px;
  }
  
  .plan-price {
    font-size: 24px;
    margin-bottom: 15px;
  }
  
  .plan-features li {
    font-size: 15px;
    padding: 8px 0;
  }
  
  /* 푸터 조정 */
  .footer-content {
    flex-direction: column;
  }
  
  .footer-logo, .footer-links, .footer-contact {
    width: 100%;
    margin-bottom: 20px;
  }

  .mobile-feature-card p {
    font-size: 12px !important;
  }

  .explanation-mobile-text {
    font-size: 13px !important; 
  }
}
/* ========  (401 ~ 409px) 405 px 특화 스타일 ======== */
@media screen and (min-width: 401px) and (max-width: 409px) {
  .desc-mobile-font-md {
    font-size: 13px;
  }
  .service-card p {
      font-size: 15px;
  }
  .faq-answer p {
      font-size: 12.5px;
  }
  .faq-question h4 {
    font-size: 15px;
  }
  .event-detail-content p {
    font-size: 14px;
  }
}
/* ======== Galaxy Note/iPhone Pro Max (410 ~ 430px) 특화 스타일 ======== */
@media screen and (min-width: 410px) and (max-width: 430px) {
  /* 네비게이션 - Galaxy Note/iPhone Pro Max 특화 스타일 */
  .logo a {
    font-size: 24px;
    padding: 8px 0;
  }
  .event-detail-content p {
    font-size: 14px;
  }
  .faq-question h4 {
    font-size: 15px;
  }
  .faq-answer p {
    font-size: 14px;
  }
  .service-card p {
    font-size: 15px;
  }
  .services-prev-btn {
    left: 80px;
  }
  .services-next-btn {
    right: 80px;
  }
  .service-card p {
    font-size:14px !important;
  }
  .faq-answer p {
    font-size: 13.5px !important;
  }
  .faq-question h4 {
    font-size: 14.5px !important;
  }
  .mobile-feature-card p {
    font-size: 14px;
  }

  .limited-offer-mobile {
    font-size: 15px;
  }
  .use-case {
    padding: 20px;
  }
  .feature2-title-mobile {
    font-size: 20px !important;
  }
  .feature-content {
    padding: 25px;
  }

  .nav-menu li {
    margin-left: 12px;
  }
  
  .nav-menu li a {
    font-size: 14px;
    padding: 7px 10px;
  }
  
  header {
    padding: 14px 0;
  }
  /* Galaxy Note/iPhone Pro Max 전용 미세 조정 */
  .container {
    max-width: 420px;
    margin: 0 auto;
  }
  
  /* 헤더 이미 위에서 설정함 */
  
  /* 버튼 미세 조정 */
  .btn {
    border-radius: 10px;
    font-size: 14px;
    padding: 9px 20px;
  }
  
  /* 히어로 섹션 내 텍스트 조정 */
  .hero-text-content-mobile h1 {
    font-size: 38px;
    margin-bottom: 8px;
  }
  
  .hero-text-content-mobile h2 {
    font-size: 22px;
    margin-bottom: 12px;
  }
  
  .hero-text-content-mobile p {
    font-size: 15px;
    line-height: 1.6;
    margin-bottom: 50px;
  }
  
  /* 피처 섹션 조정 */
  .feature-box {
    height: 200px;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  
  .feature-box h3 {
    font-size: 18px;
    margin-bottom: 8px;
  }
  
  .feature-box p {
    font-size: 14px;
    line-height: 1.6;
  }
  
  /* 가격 섹션 조정 */
  .pricing-plan {
    padding: 24px 18px;
    height: 420px;
    min-height: 480px;
  }
  
  .plan-price {
    font-size: 22px;
    margin-bottom: 18px;
  }
  
  .plan-features li {
    font-size: 14px;
    padding: 10px 0;
  }
  
  /* 푸터 조정 */
  .footer-content {
    flex-direction: column;
  }
  
  .footer-logo, .footer-links, .footer-contact {
    width: 100%;
    margin-bottom: 24px;
  }

  .hero {
    padding-top: 0px;
    padding-bottom: 0px;
  }

  .feature2-mobile-text{
    font-size: 16px;
  }
  .explanation-mobile-text {
    font-size: 15px !important;
  }

}

/* ======== 모든 기기에서 공통적으로 적용할 폰트 최적화 ======== */
@media screen and (max-width: 400px) {
  /* 가독성 향상을 위한 글자 간격 조정 */
  body {
    letter-spacing: 0.2px;
  }
  .event-detail-section {
    padding-top: 20px;
  }
  .service-card p {
    font-size: 14px;
  }
  h1, h2, h3, h4 {
    letter-spacing: 0.5px;
  }
  .desc-mobile-font-md {
    font-size: 12.5px;
  }
  /* 폰트 렌더링 최적화 */
  * {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
  }
  .plan-price {
    font-size: 24px;
  }
  /* 버튼 텍스트 가독성 향상 */
  .btn {
    letter-spacing: 0.5px;
    font-weight: 500;
    border-radius: 10px;
  }
  .puzzle-card-value {
    font-size:15px;
  }
  .puzzle-card-address-value {
    font-size: 15px;
  }
  .puzzle-card-privatekey-value {
    font-size: 15px;
  }
  .puzzle-card-hexkey-value {
    font-size: 15px;
  }
  /* 숫자 폰트 가독성 향상 */
  .plan-price, .step-number, .discount-price {
    font-variant-numeric: tabular-nums;
  }
  .faq-answer p {
    font-size: 13px;
  }
  .faq-question h4 {
    font-size: 14px;
  }
}

/* 디바이스 픽셀 비율(DPR) 고려한 이미지 최적화 */
@media screen and (max-width: 430px) and (-webkit-min-device-pixel-ratio: 3), 
       screen and (max-width: 430px) and (min-resolution: 3dppx) {
  /* 고밀도 디스플레이(DPR=3)에 대한 이미지 최적화 */
  .hero-image-bg,
  .feature-image img,
  .diagram-image {
    image-rendering: -webkit-optimize-contrast;
    image-rendering: crisp-edges;
  }
}

/* ======== 터치 인터랙션 최적화 ======== */
@media screen and (max-width: 430px) {
  /* 터치 타겟 크기 확대 */
  .btn,
  .nav-item a,
  .slider-nav-btn,
  .steps-nav-btn,
  .slide-nav-btn {
    min-height: 10px;
    min-width: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }


  /* 탭 하이라이트 색상 조정 */
  * {
    -webkit-tap-highlight-color: rgba(0, 255, 65, 0.2);
  }
  
  /* 스와이프 인터랙션 개선 */
  .features-slider,
  .steps-slider,
  .feature-cards-slider,
  .testimonial-slider,
  .slideshow-container {
    touch-action: pan-y;
    user-select: none;
    -webkit-user-select: none;
  }
}
