/*
 * responsive.css - 핏이지 반응형 스타일시트
 */

/* Tablet */
@media (max-width:1024px) {
    :root { --section-padding:80px 0; --header-height:64px; }
    .footer-grid { grid-template-columns:1fr 1fr; gap:32px; }
    .stats-bar { grid-template-columns:repeat(2,1fr); }
    .greeting-content { grid-template-columns:1fr; gap:40px; }
    .greeting-image { max-width:400px; margin:0 auto; }
    .hero-title { font-size:clamp(36px,6vw,56px); }
    .posts-grid { grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); }
}

/* Mobile Landscape */
@media (max-width:768px) {
    :root { --section-padding:60px 0; }
    .container { padding:0 20px; }
    .main-nav { display:none; }
    .mobile-toggle { display:flex; }
    .hero-section { min-height:85vh; }
    .hero-title { font-size:clamp(32px,8vw,44px); }
    .hero-desc { font-size:16px; }
    .hero-actions { flex-direction:column; align-items:flex-start; }
    .hero-actions .btn { width:100%; justify-content:center; }
    .hero-scroll { display:none; }
    .slider-container { aspect-ratio:16/9; border-radius:var(--radius-md); }
    .slider-slide-overlay { padding:24px 28px; }
    .slider-slide-title { font-size:20px; }
    .slider-slide-desc { font-size:13px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
    .slider-nav { width:36px; height:36px; }
    .slider-prev { left:8px; }
    .slider-next { right:8px; }
    .card-grid,.posts-grid,.feature-grid { grid-template-columns:1fr; }
    .stats-bar { grid-template-columns:repeat(2,1fr); }
    .stat-number { font-size:28px; }
    .stat-item { padding:24px 16px; }
    .footer-grid { grid-template-columns:1fr; gap:32px; }
    .footer-content { padding:40px 0 32px; }
    .page-header { padding-top:calc(var(--header-height) + 40px); padding-bottom:40px; }
    .page-title { font-size:clamp(28px,6vw,36px); }
    .gallery-grid { grid-template-columns:repeat(2,1fr); gap:12px; }
    .job-card { flex-direction:column; align-items:flex-start; }
    .notice-item { flex-direction:column; align-items:flex-start; gap:8px; }
    .notice-title { white-space:normal; }
    .map-container { aspect-ratio:4/3; }
    .contact-info-grid { grid-template-columns:1fr; }
    .sitemap-grid { grid-template-columns:1fr; }
    .timeline { padding-left:32px; }
    .timeline-item { padding-left:24px; }
    .timeline-item::before { left:-37px; width:10px; height:10px; }
    .section-title { font-size:clamp(24px,5vw,34px); }
    .back-to-top { bottom:20px; right:20px; width:40px; height:40px; }
    .cta-section { padding:60px 0; }
}

/* Mobile */
@media (max-width:480px) {
    :root { --section-padding:48px 0; }
    .container { padding:0 16px; }
    .hero-title { font-size:clamp(28px,9vw,36px); }
    .hero-badge { font-size:10px; padding:6px 14px; }
    .hero-desc { font-size:15px; }
    .card-body { padding:20px; }
    .card-footer { padding:12px 20px; }
    .feature-item { padding:24px 20px; }
    .feature-icon { width:48px; height:48px; font-size:20px; }
    .gallery-grid { grid-template-columns:1fr 1fr; gap:8px; }
    .gallery-item { border-radius:var(--radius-sm); }
    .faq-question { padding:16px 18px; font-size:14px; }
    .faq-answer-inner { padding:0 18px 16px; font-size:13px; }
    .stat-number { font-size:24px; }
    .stat-label { font-size:11px; }
    .mobile-nav-list a { font-size:20px; padding:10px 20px; }
    .data-table { display:block; overflow-x:auto; }
    .notice-item { padding:16px 18px; }
    .page-header { padding-top:calc(var(--header-height) + 32px); padding-bottom:32px; }
    .btn { padding:12px 24px; font-size:13px; }
    .footer-bottom p { font-size:11px; }
    .greeting-text { font-size:15px; }
    .cta-title { font-size:clamp(24px,6vw,32px); }
}

/* Large Screens */
@media (min-width:1440px) {
    .container { max-width:1320px; }
    .hero-title { font-size:76px; }
    .posts-grid { grid-template-columns:repeat(3,1fr); }
}

/* Reduced Motion */
@media (prefers-reduced-motion:reduce) {
    *,*::before,*::after { animation-duration:0.01ms !important; animation-iteration-count:1 !important; transition-duration:0.01ms !important; scroll-behavior:auto !important; }
    .film-grain { display:none; }
}

/* Print */
@media print {
    .site-header,.site-footer,.back-to-top,.mobile-toggle,.mobile-nav-overlay,.film-grain,.hero-bg,.interstellar-canvas,.ink-drop-canvas,.slider-nav,.slider-pagination,.scroll-progress { display:none !important; }
    body { background:#fff; color:#000; }
    .container { max-width:100%; }
}
