/*
Theme Name: ArkaDruk Theme
Theme URI: https://arkadruk.pl/
Description: motyw Drukarni ARKA. Wspiera AJAX, wielojęzyczność, czysty CSS Grid/Flexbox, bez zewnętrznych zależności.
Author: ArkaDruk
Version: 1.0.0
Text Domain: arkadruk-clean
*/

/* --- 1. RESET & ZASADY OGÓLNE --- */
* { box-sizing: border-box; margin: 0; padding: 0; }
body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; color: #333; background: #fff; line-height: 1.6; }
a { color: #004B87; text-decoration: none; transition: color 0.3s ease; }
a:hover { color: #FFCC00; }
img { max-width: 100%; height: auto; display: block; }
.container { max-width: 1200px; margin: 0 auto; padding: 0 20px; }

/* --- 2. NAGŁÓWEK & DROPDOWN MENU --- */
.top-bar { background: #002244; color: #fff; padding: 10px 0; font-size: 13px; }
.top-bar .container { display: flex; justify-content: space-between; align-items: center; }
.top-bar a { color: #fff; font-weight: bold; margin-right: 15px; }
.top-bar a:hover { color: #FFCC00; }
.language-switcher ul { display: flex; list-style: none; gap: 10px; }

.main-header { background: #ffffff; padding: 15px 0; box-shadow: 0 2px 10px rgba(0,0,0,0.05); position: sticky; top: 0; z-index: 999; }
.main-header .container { display: flex; justify-content: space-between; align-items: center; }
.logo img { max-height: 60px; }

/* Rozwijane Menu */
.main-nav ul { display: flex; list-style: none; gap: 20px; position: relative; }
.main-nav a { color: #004B87; font-weight: 700; text-transform: uppercase; font-size: 14px; padding: 15px 10px; display: block; }
.main-nav li { position: relative; }
.main-nav li:hover > a { color: #FFCC00; }

/* Submenu / Dropdown */
.main-nav ul ul {
    position: absolute; top: 100%; left: 0; background: #fff; min-width: 200px;
    box-shadow: 0 5px 15px rgba(0,0,0,0.1); display: block; visibility: hidden; opacity: 0;
    transition: all 0.3s ease; transform: translateY(10px); flex-direction: column; gap: 0; padding: 10px 0;
}
.main-nav ul ul li a { text-transform: none; padding: 10px 20px; font-weight: 500; font-size: 13px; }
.main-nav ul li:hover > ul { visibility: visible; opacity: 1; transform: translateY(0); }

.menu-toggle { display: none; background: none; border: none; font-size: 24px; color: #004B87; cursor: pointer; }

/* --- 3. SLIDER --- */
.slider-container { position: relative; width: 100%; height: 450px; overflow: hidden; background: #002244; }
.slides { display: flex; width: 300%; height: 100%; transition: transform 0.8s ease-in-out; }
.slide { width: 33.333%; height: 100%; position: relative; background-size: cover; background-position: center; display: flex; align-items: center; }
.slide-overlay { position: absolute; top:0; left:0; width:100%; height:100%; background: rgba(0,0,0,0.5); }
.slide-content { position: relative; z-index: 2; color: #fff; max-width: 600px; padding: 0 40px; }
.slide-content h2 { font-size: 42px; color: #FFCC00; margin-bottom: 15px; text-transform: uppercase; font-weight: 800; }
.slide-btn { display: inline-block; background: #FFCC00; color: #002244; padding: 10px 25px; font-weight: bold; text-transform: uppercase; border-radius: 4px; margin-top: 15px; }
.slide-btn:hover { background: #fff; color: #004B87; }

/* --- 4. ZAKŁADKI (TABS) --- */
.tabs-section { padding: 60px 0; background: #f9f9f9; }
.tabs-nav { display: flex; justify-content: center; gap: 10px; margin-bottom: 30px; list-style: none; }
.tab-link { padding: 12px 25px; background: #ddd; color: #333; font-weight: bold; cursor: pointer; border-radius: 4px; border: none; font-size: 15px; transition: 0.3s; }
.tab-link.active, .tab-link:hover { background: #004B87; color: #fff; }
.tab-content { display: none; background: #fff; padding: 30px; border-radius: 6px; box-shadow: 0 5px 15px rgba(0,0,0,0.05); }
.tab-content.active { display: block; animation: fadeIn 0.5s ease; }

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(5px); }
    to { opacity: 1; transform: translateY(0); }
}

/* --- 5. FORMULARZE AJAX --- */
.form-section { padding: 60px 0; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; }
.form-card { background: #fff; padding: 35px; border-radius: 8px; box-shadow: 0 5px 20px rgba(0,0,0,0.08); border-top: 4px solid #004B87; }
.form-card h3 { margin-bottom: 20px; color: #004B87; text-transform: uppercase; }
.form-group { margin-bottom: 15px; display: flex; flex-direction: column; }
.form-group label { font-weight: bold; margin-bottom: 5px; font-size: 13px; color: #555; }
.form-group input, .form-group textarea, .form-group select { padding: 10px; border: 1px solid #ccc; border-radius: 4px; font-size: 14px; width: 100%; }
.form-group input:focus, .form-group textarea:focus, .form-group select:focus { border-color: #004B87; outline: none; }
.form-btn { background: #004B87; color: #fff; border: none; padding: 12px 20px; font-weight: bold; cursor: pointer; text-transform: uppercase; border-radius: 4px; transition: 0.3s; }
.form-btn:hover { background: #FFCC00; color: #002244; }
.form-message { margin-top: 15px; padding: 10px; border-radius: 4px; display: none; font-weight: bold; }
.form-message.success { background: #d4edda; color: #155724; display: block; }
.form-message.error { background: #f8d7da; color: #721c24; display: block; }

/* --- 6. RESPONSYWNOŚĆ --- */
@media (max-width: 991px) {
    .menu-toggle { display: block; }
    .main-nav { display: none; width: 100%; position: absolute; top: 100%; left: 0; background: #fff; padding: 20px; box-shadow: 0 10px 15px rgba(0,0,0,0.1); }
    .main-nav.active { display: block; }
    .main-nav ul { flex-direction: column; gap: 10px; }
    .main-nav ul ul { position: static; visibility: visible; opacity: 1; box-shadow: none; transform: none; padding-left: 20px; display: none; }
    .main-nav li.open > ul { display: block; }
    .form-grid { grid-template-columns: 1fr; }
}