/* Web Design Page Specific Styles */

/* Light mode override */
body.dark-mode .why-card {
    background: #1A1A1A; /* putih */
    box-shadow: 0 4px 20px rgba(0,0,0,0.1); /* opsional, bayangan ringan */
}

body.dark-mode p {
    color: whitesmoke;
}

.webdesign-hero {

    padding: 120px 0 80px;

    background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%);

    color: white;

    position: relative;

    overflow: hidden;

}



.webdesign-hero .container {

    max-width: 1200px;

    margin: 0 auto;

    padding: 0 20px;

}



.webdesign-hero .hero-content {

    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 60px;

    align-items: center;

}



.webdesign-hero .hero-title {

    font-size: 3.5rem;

    line-height: 1.2;

    margin-bottom: 20px;

    font-family: 'Orbitron', sans-serif;

}



.webdesign-hero .hero-subtitle {

    font-size: 1.2rem;

    margin-bottom: 30px;

    opacity: 0.9;

}



.design-elements {

    position: relative;

    height: 400px;

}



.design-elements .element {

    position: absolute;

    width: 80px;

    height: 80px;

    background: rgba(255, 255, 255, 0.1);

    border-radius: 20px;

    display: flex;

    align-items: center;

    justify-content: center;

    font-size: 2rem;

    backdrop-filter: blur(10px);

    animation: float 6s ease-in-out infinite;

}



.design-elements .element-1 {

    top: 20%;

    left: 10%;

    animation-delay: 0s;

    background: rgba(108, 99, 255, 0.2);

}



.design-elements .element-2 {

    top: 60%;

    left: 20%;

    animation-delay: 1s;

    background: rgba(0, 212, 255, 0.2);

}



.design-elements .element-3 {

    top: 30%;

    right: 20%;

    animation-delay: 2s;

    background: rgba(255, 107, 107, 0.2);

}



.design-elements .element-4 {

    top: 70%;

    right: 10%;

    animation-delay: 3s;

    background: rgba(76, 217, 100, 0.2);

}



@keyframes float {

    0%, 100% { transform: translateY(0px); }

    50% { transform: translateY(-20px); }

}



/* Importance Section */

.importance-section {

    padding: 80px 0;

    background: var(--bg-color);

}



.importance-content {

    display: grid;

    grid-template-columns: 2fr 1fr;

    gap: 60px;

    margin-top: 40px;

}



.importance-text p {

    font-size: 1.1rem;

    line-height: 1.8;

    margin-bottom: 20px;

    color: var(--text-color);

}



.importance-list {

    list-style: none;

    padding: 0;

    margin: 30px 0;

}

.importance-list-2 {

    list-style: none;

    padding: 0;

    margin: 30px 0;

}



.importance-list li {

    display: flex;

    align-items: center;

    margin-bottom: 15px;

    padding: 15px;

    background: var(--card-bg);

    border-radius: var(--border-radius);

    border-left: 4px solid var(--primary-color);

}

.importance-list-2 li {

    display: flex;

    align-items: center;

    margin-bottom: 15px;

    padding: 15px;

    background: var(--card-bg);

    border-radius: var(--border-radius);

    border-left: 4px solid var(--primary-color);

}


.importance-list i {

    color: var(--primary-color);

    font-size: 1.2rem;

    margin-right: 15px;

    width: 30px;

}

.importance-list-2 i {

    color: var(--primary-color);

    font-size: 1.2rem;

    margin-right: 15px;

    width: 30px;

}


.importance-list span {

    font-size: 1rem;

    color: var(--text-color);

}



.quote-box {

    background: var(--card-bg);

    border-radius: var(--border-radius);

    padding: 30px;

    margin-top: 40px;

    border-left: 5px solid var(--primary-color);

    position: relative;

}



.quote-box i.fa-quote-left {

    font-size: 2rem;

    color: var(--primary-color);

    opacity: 0.3;

    position: absolute;

    top: 20px;

    left: 20px;

}



.quote-text {

    font-style: italic;

    font-size: 1.1rem;

    line-height: 1.7;

    color: var(--text-color);

    margin: 10px 0 20px;

    padding-left: 40px;

}



.quote-author {

    padding-left: 40px;

}



.quote-author strong {

    display: block;

    color: var(--primary-color);

    font-size: 1.1rem;

}



.quote-author span {

    color: var(--text-secondary);

    font-size: 0.9rem;

}



.importance-stats {

    display: grid;

    grid-template-columns: 1fr;

    gap: 20px;

}



.stat-card {

    background: var(--card-bg);

    border-radius: var(--border-radius);

    padding: 25px;

    text-align: center;

    border: 1px solid var(--border-color);

    transition: var(--transition);

}



.stat-card:hover {

    transform: translateY(-5px);

    box-shadow: var(--shadow);

}



.stat-icon {

    width: 60px;

    height: 60px;

    background: var(--primary-color);

    border-radius: 50%;

    display: flex;

    align-items: center;

    justify-content: center;

    margin: 0 auto 20px;

    color: white;

    font-size: 1.5rem;

}



.stat-card h3 {

    font-size: 2.5rem;

    color: var(--primary-color);

    margin-bottom: 10px;

    font-family: 'Orbitron', sans-serif;

}



.stat-card p {

    color: var(--text-secondary);

    font-size: 0.9rem;

}



/* Templates Section */

.templates-section {

    padding: 80px 0;

    background: var(--bg-secondary);

}



.templates-grid {

    display: grid;

    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));

    gap: 40px;

    margin-top: 50px;

}

.templates-grid-2 {

    display: grid;

    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));

    gap: 0px;

    margin-top: 0px;

}


.template-card {

    background: var(--card-bg);

    border-radius: var(--border-radius);

    overflow: hidden;

    border: 1px solid var(--border-color);

    transition: var(--transition);

}



.template-card:hover {

    transform: translateY(-10px);

    box-shadow: var(--shadow-lg);

}



.template-image {

    position: relative;

    height: 250px;

    overflow: hidden;

}



.template-image img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition: transform 0.5s ease;

}



.template-card:hover .template-image img {

    transform: scale(1.05);

}



.template-overlay {

    position: absolute;

    top: 0;

    left: 0;

    right: 0;

    bottom: 0;

    background: rgba(0, 0, 0, 0.7);

    display: flex;

    align-items: center;

    justify-content: center;

    opacity: 0;

    transition: opacity 0.3s ease;

}



.template-card:hover .template-overlay {

    opacity: 1;

}



.preview-btn {

    background: var(--primary-color);

    color: white;

    padding: 12px 25px;

    border-radius: var(--border-radius);

    text-decoration: none;

    display: inline-flex;

    align-items: center;

    gap: 10px;

    font-weight: 500;

    transition: var(--transition);

}



.preview-btn:hover {

    background: var(--primary-dark);

    transform: scale(1.05);

}



.template-badge {

    position: absolute;

    top: 15px;

    right: 15px;

    background: var(--primary-color);

    color: white;

    padding: 5px 15px;

    border-radius: 20px;

    font-size: 0.8rem;

    font-weight: 600;

    text-transform: uppercase;

}



.template-badge.hot {

    background: #ff4757;

}



.template-info {

    padding: 25px;

}



.template-info h3 {

    font-size: 1.5rem;

    margin-bottom: 10px;

    color: var(--text-color);

}



.template-info p {

    color: var(--text-secondary);

    line-height: 1.6;

    margin-bottom: 20px;

    font-size: 0.95rem;

}



.template-features {

    display: flex;

    flex-wrap: wrap;

    gap: 15px;

    margin-bottom: 25px;

    padding-bottom: 20px;

    border-bottom: 1px solid var(--border-color);

}



.template-features span {

    display: flex;

    align-items: center;

    gap: 5px;

    font-size: 0.85rem;

    color: var(--text-secondary);

}



.template-features i {

    color: var(--success-color);

    font-size: 0.9rem;

}



.template-actions .btn {

    width: 100%;

    text-align: center;

    justify-content: center;

}



/* More Templates */

.more-templates {

    margin-top: 60px;

    padding-top: 40px;

    border-top: 1px solid var(--border-color);

}



.more-templates h3 {

    text-align: center;

    margin-bottom: 30px;

    color: var(--text-color);

}



.template-mini-grid {

    display: grid;

    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));

    gap: 20px;

}



.mini-template {

    background: var(--card-bg);

    border-radius: var(--border-radius);

    overflow: hidden;

    border: 1px solid var(--border-color);

    transition: var(--transition);

}



.mini-template:hover {

    transform: translateY(-5px);

    box-shadow: var(--shadow);

}



.mini-template img {

    width: 100%;

    height: 150px;

    object-fit: cover;

}



.mini-template h4 {

    padding: 15px;

    text-align: center;

    margin: 0;

    font-size: 1rem;

    color: var(--text-color);

}



/* CTA Section */

.cta-section {

    padding: 80px 0;

    /*background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%);*/

    color: white;

    text-align: center;

}



.cta-content h2 {

    font-size: 2.5rem;

    margin-bottom: 20px;

    font-family: 'Orbitron', sans-serif;

}



.cta-content p {
    font-size: 1.1rem;
    font-color:white;
    max-width: 600px;
    margin: 0 auto 40px;
    opacity: 0.9;
}

.cta-buttons {
    display: flex;
    gap: 20px;
    justify-content: center;
    flex-wrap: wrap;
}



.btn-large {

    padding: 15px 30px;

    font-size: 1.1rem;

}



.btn-large i {

    margin-right: 10px;

}



/* Responsive Design */

@media (max-width: 992px) {

    .webdesign-hero .hero-content {

        grid-template-columns: 1fr;

        gap: 40px;

    }

    

    .importance-content {

        grid-template-columns: 1fr;

    }

    

    .webdesign-hero .hero-title {

        font-size: 2.8rem;

    }

}

/* Default (dark) */
.why-card {
    background: var(--bg-card, #1A1A1A);
}

.cta-section {

    background: linear-gradient(135deg, var(--primary-color) 0%, #1a237e 100%);

}


@media (max-width: 768px) {

    .webdesign-hero {

        padding: 100px 0 60px;

    }

    

    .webdesign-hero .hero-title {

        font-size: 2.2rem;

    }

    

    .templates-grid {

        grid-template-columns: 1fr;

    }

    

    .cta-content h2 {

        font-size: 2rem;

    }

    

    .cta-buttons {

        flex-direction: column;

        align-items: center;

    }

    

    .btn-large {

        width: 100%;

        max-width: 300px;

    }

}



@media (max-width: 480px) {

    .webdesign-hero .hero-title {

        font-size: 1.8rem;

    }

    

    .template-mini-grid {

        grid-template-columns: 1fr 1fr;

    }

    

    .stat-card h3 {

        font-size: 2rem;

    }

}