/* Google Fonts */ @import url('https://fonts.googleapis.com/css2?family=Lato:wght@400;700&family=Playfair+Display:wght@700&display=swap'); /* Custom Properties */ :root { --primary-color: #D4A373; --secondary-color: #FAEDCD; --accent-color: #EAB676; --text-color: #333333; --bg-surface: #FEFDF8; --border-radius: 0.5rem; --font-heading: 'Playfair Display', serif; --font-body: 'Lato', sans-serif; } body { font-family: var(--font-body); background-color: var(--bg-surface); color: var(--text-color); padding-top: 70px; /* Offset for fixed navbar */ } h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 { font-family: var(--font-heading); color: var(--primary-color); } .navbar { background-color: rgba(254, 253, 248, 0.85); backdrop-filter: blur(10px); box-shadow: 0 2px 4px rgba(0,0,0,0.05); } .navbar-brand { font-family: var(--font-heading); font-weight: 700; font-size: 1.5rem; color: var(--primary-color) !important; } .nav-link { color: var(--text-color) !important; transition: color 0.3s; font-weight: 700; } .nav-link:hover, .nav-link.active { color: var(--primary-color) !important; } .carousel-item { height: 75vh; min-height: 400px; background: no-repeat center center scroll; background-size: cover; } .carousel-caption { bottom: 25%; background-color: rgba(0,0,0,0.5); padding: 1.5rem 2.5rem; border-radius: var(--border-radius); } .carousel-caption h5 { font-size: 3rem; color: #fff; font-weight: 700; } .product-card { border: none; border-radius: var(--border-radius); transition: transform 0.3s, box-shadow 0.3s; background-color: #fff; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.05); } .product-card:hover { transform: translateY(-10px); box-shadow: 0 12px 25px rgba(0,0,0,0.1); } .product-card img { aspect-ratio: 4 / 3; object-fit: cover; } .product-card .card-body { text-align: center; } .product-card .card-title { font-size: 1.2rem; font-family: var(--font-body); font-weight: 700; color: var(--text-color); } .product-card .card-price { font-size: 1.3rem; font-weight: 700; color: var(--primary-color); } .btn-primary { background: linear-gradient(to right, var(--accent-color), var(--primary-color)); border: none; padding: 0.75rem 1.5rem; border-radius: var(--border-radius); transition: transform 0.2s, box-shadow 0.2s; font-weight: 700; color: #fff; } .btn-primary:hover { transform: scale(1.05); box-shadow: 0 4px 15px rgba(212, 163, 115, 0.4); } footer { background-color: var(--secondary-color); } /* Contact Page Styles */ .contact-header { padding-top: 2rem; padding-bottom: 2rem; } .contact-form { background-color: #FFFFFF; padding: 2.5rem; border-radius: var(--border-radius); box-shadow: 0 4px 15px rgba(0,0,0,0.05); } .form-control { min-height: 48px; border-radius: var(--border-radius) !important; } .form-control:focus { border-color: var(--primary-color); box-shadow: 0 0 0 0.25rem rgba(212, 163, 115, 0.25); } body { display: flex; flex-direction: column; min-height: 100vh; } main { flex: 1; } /* Catalog & Product Page Specifics */ .page-header { padding-top: 2rem; padding-bottom: 2rem; text-align: center; border-bottom: 1px solid #eee; margin-bottom: 3rem; } .page-header-product { margin-top: -2rem; /* Pull up to align better with navbar */ padding-bottom: 1rem; } .product-image-single { border-radius: var(--border-radius); box-shadow: 0 8px 25px rgba(0,0,0,0.1); } .product-card-link { text-decoration: none; color: inherit; } .product-card-link:hover { color: inherit; }