:root {
--bg-color: #f4f4f4;
--text-color: #1a1a1a;
--accent-color: #00c853;
--secondary-color: #1b5e20;
--card-bg: #ffffff;
--header-bg: #263238;
--footer-bg: #1a1a2e;
--border-color: #e0e0e0;
--hover-color: #00e676;
}
body.dark-mode {
--bg-color: #121212;
--text-color: #f1f1f1;
--card-bg: #1e1e1e;
--header-bg: #0d0d0d;
--footer-bg: #0a0a0a;
--border-color: #333;
}
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
background-color: var(--bg-color);
color: var(--text-color);
line-height: 1.6;
transition: background-color 0.3s, color 0.3s;
scrollbar-width: thin;
scrollbar-color: var(--accent-color) var(--bg-color);
}
body::-webkit-scrollbar {
width: 12px;
}
body::-webkit-scrollbar-track {
background: var(--bg-color);
}
body::-webkit-scrollbar-thumb {
background-color: var(--accent-color);
border-radius: 6px;
border: 2px solid var(--bg-color);
}
.site-header {
background-color: var(--header-bg);
padding: 15px 0;
position: sticky;
top: 0;
z-index: 1000;
box-shadow: 0 2px 10px rgba(0,0,0,0.3);
}
.header-container {
max-width: 1200px;
margin: 0 auto;
display: flex;
align-items: center;
justify-content: space-between;
padding: 0 20px;
}
.logo {
display: flex;
align-items: center;
color: var(--accent-color);
font-size: 1.5rem;
font-weight: bold;
text-decoration: none;
}
.logo img {
width: 40px;
height: 40px;
border-radius: 50%;
margin-right: 10px;
}
.main-nav {
display: flex;
gap: 25px;
}
.main-nav a {
color: #ffffff;
text-decoration: none;
font-weight: 500;
transition: color 0.3s;
}
.main-nav a:hover {
color: var(--accent-color);
}
.theme-toggle .theme-btn {
background: none;
border: 2px solid var(--accent-color);
color: var(--accent-color);
padding: 8px 16px;
border-radius: 20px;
cursor: pointer;
font-size: 0.9rem;
transition: all 0.3s;
}
.theme-toggle .theme-btn:hover {
background: var(--accent-color);
color: #fff;
}
.hero-section {
background: linear-gradient(135deg, var(--secondary-color), #004d40);
color: #fff;
text-align: center;
padding: 80px 20px;
}
.hero-content h1 {
font-size: 3rem;
margin-bottom: 15px;
color: var(--accent-color);
}
.hero-content p {
font-size: 1.2rem;
max-width: 700px;
margin: 0 auto 30px;
}
.btn-primary {
display: inline-block;
background-color: var(--accent-color);
color: #fff;
padding: 12px 30px;
border-radius: 30px;
text-decoration: none;
font-weight: bold;
border: none;
cursor: pointer;
transition: all 0.3s;
font-size: 1rem;
}
.btn-primary:hover {
background-color: var(--hover-color);
transform: translateY(-2px);
box-shadow: 0 4px 15px rgba(0,200,83,0.4);
}
.btn-secondary {
display: inline-block;
background: none;
border: 2px solid var(--accent-color);
color: var(--accent-color);
padding: 10px 25px;
border-radius: 30px;
text-decoration: none;
font-weight: bold;
transition: all 0.3s;
cursor: pointer;
}
.btn-secondary:hover {
background: var(--accent-color);
color: #fff;
}
.features-section {
max-width: 1200px;
margin: 50px auto;
padding: 0 20px;
}
.features-section h2 {
text-align: center;
font-size: 2rem;
margin-bottom: 40px;
color: var(--secondary-color);
}
.features-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
gap: 30px;
}
.feature-item {
background: var(--card-bg);
padding: 30px;
border-radius: 10px;
text-align: center;
box-shadow: 0 4px 10px rgba(0,0,0,0.1);
transition: transform 0.3s;
}
.feature-item:hover {
transform: translateY(-5px);
}
.feature-icon {
color: var(--accent-color);
margin-bottom: 15px;
}
.about-products {
max-width: 1200px;
margin: 50px auto;
padding: 0 20px;
}
.about-products h2 {
text-align: center;
font-size: 2rem;
margin-bottom: 30px;
color: var(--secondary-color);
}
.about-products p {
margin-bottom: 20px;
font-size: 1.05rem;
}
.catalog-section {
max-width: 1200px;
margin: 50px auto;
padding: 0 20px;
}
.catalog-section h2 {
text-align: center;
font-size: 2rem;
margin-bottom: 40px;
color: var(--secondary-color);
}
.products-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
gap: 30px;
}
.product-card {
background: var(--card-bg);
border-radius: 10px;
padding: 20px;
text-align: center;
box-shadow: 0 4px 10px rgba(0,0,0,0.1);
position: relative;
transition: transform 0.3s;
}
.product-card:hover {
transform: translateY(-5px);
box-shadow: 0 8px 20px rgba(0,0,0,0.15);
}
.product-card img {
width: 100%;
height: auto;
border-radius: 8px;
margin-bottom: 15px;
}
.product-card h3 {
color: var(--text-color);
margin-bottom: 10px;
}
.product-card p {
color: var(--text-color);
font-size: 0.9rem;
margin-bottom: 10px;
}
.product-price {
font-size: 1.3rem;
font-weight: bold;
color: var(--accent-color);
margin-bottom: 15px;
}
.score-badge {
position: absolute;
top: 15px;
right: 15px;
background: var(--accent-color);
color: #fff;
width: 50px;
height: 50px;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
font-weight: bold;
font-size: 1.2rem;
}
.score-badge-large {
background: var(--accent-color);
color: #fff;
width: 80px;
height: 80px;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
font-weight: bold;
font-size: 2rem;
margin-bottom: 20px;
}
.stats-section {
background: var(--secondary-color);
padding: 50px 20px;
display: flex;
justify-content: space-around;
flex-wrap: wrap;
gap: 30px;
}
.stat-item {
text-align: center;
color: #fff;
}
.stat-item h3 {
font-size: 2.5rem;
color: var(--accent-color);
}
.stat-item p {
font-size: 1.1rem;
}
.cta-section {
text-align: center;
padding: 60px 20px;
max-width: 1200px;
margin: 0 auto;
}
.cta-section h2 {
font-size: 2rem;
color: var(--secondary-color);
margin-bottom: 20px;
}
.cta-section p {
font-size: 1.2rem;
margin-bottom: 30px;
}
.site-footer {
background-color: var(--footer-bg);
color: #fff;
padding: 40px 20px;
text-align: center;
}
.footer-content {
max-width: 1200px;
margin: 0 auto;
}
.footer-links {
display: flex;
justify-content: center;
gap: 30px;
margin-bottom: 20px;
}
.footer-links a {
color: #aaa;
text-decoration: none;
transition: color 0.3s;
}
.footer-links a:hover {
color: var(--accent-color);
}
.social-links {
display: flex;
justify-content: center;
gap: 20px;
margin-bottom: 20px;
}
.social-links a {
color: #aaa;
transition: color 0.3s;
}
.social-links a:hover {
color: var(--accent-color);
}
.cookie-banner {
position: fixed;
bottom: 0;
left: 0;
right: 0;
background: var(--footer-bg);
color: #fff;
padding: 20px;
display: none;
justify-content: space-between;
align-items: center;
flex-wrap: wrap;
z-index: 9999;
border-top: 3px solid var(--accent-color);
}
.cookie-banner p {
max-width: 700px;
margin: 0;
font-size: 0.9rem;
}
.cookie-banner a {
color: var(--accent-color);
}
.cookie-buttons {
display: flex;
gap: 10px;
align-items: center;
}
.btn-cookie {
background: var(--accent-color);
color: #fff;
border: none;
padding: 8px 16px;
border-radius: 5px;
cursor: pointer;
font-size: 0.9rem;
}
.btn-cookie:hover {
background: var(--hover-color);
}
.cookie-close {
background: none;
border: none;
color: #fff;
font-size: 1.5rem;
cursor: pointer;
margin-left: 10px;
}
.product-detail {
max-width: 1200px;
margin: 50px auto;
padding: 0 20px;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 50px;
align-items: start;
}
.product-image img {
width: 100%;
height: auto;
border-radius: 10px;
}
.product-info h1 {
font-size: 2.5rem;
color: var(--secondary-color);
margin-bottom: 10px;
}
.product-info .product-price {
font-size: 1.5rem;
margin-bottom: 20px;
}
.product-info p {
margin-bottom: 20px;
}
.product-specs {
list-style: none;
margin-bottom: 30px;
}
.product-specs li {
padding: 8px 0;
border-bottom: 1px solid var(--border-color);
}
.product-actions {
display: flex;
gap: 15px;
flex-wrap: wrap;
}
.cart-section, .checkout-section, .success-section, .contact-section, .about-section {
max-width: 1200px;
margin: 50px auto;
padding: 0 20px;
}
.cart-items {
margin-bottom: 30px;
}
.cart-item {
display: flex;
align-items: center;
gap: 20px;
background: var(--card-bg);
padding: 15px;
border-radius: 8px;
margin-bottom: 15px;
}
.cart-item img {
width: 80px;
height: 80px;
border-radius: 5px;
}
.cart-item-info {
flex: 1;
}
.cart-item-quantity {
display: flex;
align-items: center;
gap: 10px;
}
.cart-item-quantity button {
background: var(--accent-color);
color: #fff;
border: none;
width: 30px;
height: 30px;
border-radius: 50%;
cursor: pointer;
font-size: 1rem;
}
.cart-item-remove {
background: #dc3545;
color: #fff;
border: none;
padding: 5px 10px;
border-radius: 5px;
cursor: pointer;
}
.cart-summary {
background: var(--card-bg);
padding: 20px;
border-radius: 8px;
text-align: right;
}
.cart-summary p {
font-size: 1.3rem;
font-weight: bold;
margin-bottom: 20px;
}
.checkout-form, .contact-form {
background: var(--card-bg);
padding: 30px;
border-radius: 10px;
max-width: 600px;
margin: 0 auto;
}
.form-group {
margin-bottom: 20px;
}
.form-group label {
display: block;
margin-bottom: 5px;
font-weight: 500;
}
.form-group input, .form-group textarea {
width: 100%;
padding: 12px;
border: 1px solid var(--border-color);
border-radius: 5px;
background: var(--bg-color);
color: var(--text-color);
font-size: 1rem;
}
.form-group textarea {
resize: vertical;
}
.success-section {
text-align: center;
padding: 80px 20px;
}
.success-section h1 {
color: var(--accent-color);
font-size: 2.5rem;
margin-bottom: 20px;
}
.success-section p {
font-size: 1.2rem;
margin-bottom: 30px;
}
.contact-info {
background: var(--card-bg);
padding: 20px;
border-radius: 8px;
margin-bottom: 30px;
}
.contact-info p {
margin-bottom: 10px;
}
.team-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
gap: 30px;
margin-top: 30px;
}
.team-card {
background: var(--card-bg);
border-radius: 10px;
padding: 20px;
text-align: center;
box-shadow: 0 4px 10px rgba(0,0,0,0.1);
}
.team-card img {
width: 100%;
max-width: 250px;
height: auto;
border-radius: 50%;
margin-bottom: 15px;
}
.team-card h3 {
color: var(--secondary-color);
margin-bottom: 5px;
}
.team-card p {
color: var(--text-color);
font-size: 0.9rem;
}
@media (max-width: 768px) {
.header-container {
flex-direction: column;
gap: 15px;
}
.main-nav {
flex-wrap: wrap;
justify-content: center;
gap: 15px;
}
.product-detail {
grid-template-columns: 1fr;
}
.hero-content h1 {
font-size: 2rem;
}
.footer-links {
flex-direction: column;
gap: 10px;
}
}