willowmecreationsV2/style.css

468 lines
7.7 KiB
CSS
Raw Normal View History

2024-09-23 00:50:12 +01:00
/* Base styles */
:root {
--primary-color: #333;
--secondary-color: #FFD700;
--background-color: #FAF3E0;
--text-color: #333;
--header-bg-color: #888;
--white: #fff;
}
2024-05-26 03:59:54 +01:00
body {
font-family: 'Montserrat', sans-serif;
2024-09-23 00:50:12 +01:00
color: var(--text-color);
2024-05-26 03:59:54 +01:00
margin: 0;
padding: 0;
box-sizing: border-box;
2024-09-23 00:50:12 +01:00
background-color: var(--background-color);
2024-05-26 03:59:54 +01:00
}
2024-09-23 00:50:12 +01:00
/* Typography */
h1, h2, h3 {
font-family: 'Playfair Display', serif;
2024-05-26 03:59:54 +01:00
}
2024-09-23 00:50:12 +01:00
/* Layout */
2024-05-26 03:59:54 +01:00
.container {
width: 90%;
max-width: 1600px;
2024-05-26 03:59:54 +01:00
margin: 0 auto;
}
2024-09-23 00:50:12 +01:00
/* Header */
.header {
display: flex;
flex-direction: column;
align-items: center;
background-color: var(--header-bg-color);
color: var(--white);
padding: 20px 0;
}
.logo {
margin-bottom: 10px;
display: flex;
justify-content: center;
}
2024-05-26 03:59:54 +01:00
.logo img {
width: 150px;
height: auto;
margin-bottom: 20px;
2024-09-23 00:50:12 +01:00
border: 2px solid var(--white);
box-shadow: 0 0 10px #9b9b9b;
2024-05-26 03:59:54 +01:00
}
2024-09-23 00:50:12 +01:00
/* Navigation */
2024-05-26 03:59:54 +01:00
.topnav {
2024-09-23 00:50:12 +01:00
margin: 27px auto 0;
position: relative;
2024-09-23 00:50:12 +01:00
width: 600px;
height: 50px;
background-color: #e2ce977c; /* Slightly darker background */
border-radius: 8px;
font-size: 0;
2024-05-26 03:59:54 +01:00
}
.topnav a {
2024-09-23 00:50:12 +01:00
line-height: 50px;
height: 100%;
font-size: 15px;
display: inline-block;
position: relative;
z-index: 1;
2024-05-26 03:59:54 +01:00
text-decoration: none;
2024-09-23 00:50:12 +01:00
text-transform: uppercase;
text-align: center;
color: #f5f5f5; /* Softer white for text */
cursor: pointer;
transition: color 0.3s ease;
}
2024-09-23 00:50:12 +01:00
.topnav .animation {
position: absolute;
height: 100%;
top: 0;
z-index: 0;
transition: all 0.5s ease;
border-radius: 8px;
}
2024-09-23 00:50:12 +01:00
a:nth-child(1) {
width: 120px;
2024-05-26 03:59:54 +01:00
}
2024-09-23 00:50:12 +01:00
a:nth-child(2) {
width: 120px;
2024-05-26 03:59:54 +01:00
}
2024-09-23 00:50:12 +01:00
a:nth-child(3) {
width: 120px;
2024-05-26 03:59:54 +01:00
}
2024-09-23 00:50:12 +01:00
a:nth-child(4) {
width: 120px;
2024-05-26 03:59:54 +01:00
}
2024-09-23 00:50:12 +01:00
a:nth-child(5) {
width: 120px;
2024-05-26 03:59:54 +01:00
}
2024-09-23 00:50:12 +01:00
/* Updated hover colors for a more cohesive look */
.topnav .start-home,
.topnav a:nth-child(1):hover~.animation {
width: 120px;
left: 0;
background-color: #429b92; /* Calming teal to match earthy tones */
2024-05-26 03:59:54 +01:00
}
2024-09-23 00:50:12 +01:00
.topnav .start-about,
.topnav a:nth-child(2):hover~.animation {
width: 120px;
left: 120px;
background-color: #7ea580; /* Light green, subtle and soft */
2024-05-26 03:59:54 +01:00
}
2024-09-23 00:50:12 +01:00
.topnav .start-news,
.topnav a:nth-child(3):hover~.animation {
width: 120px;
left: 240px;
background-color: #7d9264; /* Very light green, keeping it soft */
2024-05-26 03:59:54 +01:00
}
2024-09-23 00:50:12 +01:00
.topnav .start-products,
.topnav a:nth-child(4):hover~.animation {
width: 120px;
left: 360px;
background-color: #773d81; /* Muted purple to go with crochet theme */
2024-05-26 03:59:54 +01:00
}
2024-09-23 00:50:12 +01:00
.topnav .start-contact,
.topnav a:nth-child(5):hover~.animation {
width: 120px;
left: 480px;
background-color: #d3a764; /* Muted peach for a warm touch */
2024-05-26 03:59:54 +01:00
}
2024-09-23 00:50:12 +01:00
/* Hero Section */
2024-05-26 03:59:54 +01:00
.hero {
position: relative;
overflow: hidden;
text-align: center;
height: 60vh;
}
.carousel {
position: relative;
height: 100%;
}
.carousel-inner {
display: flex;
transition: transform 0.5s ease-in-out;
height: 100%;
}
.carousel-item {
position: absolute;
opacity: 0;
transition: opacity 1s ease-in-out;
width: 100%;
height: 100%;
box-sizing: border-box;
}
.carousel-item.active {
opacity: 1;
position: relative;
}
.carousel-item img {
width: 100%;
height: 100%;
object-fit: cover;
}
.carousel-caption {
position: absolute;
bottom: 20%;
left: 50%;
transform: translateX(-50%);
2024-09-23 00:50:12 +01:00
color: var(--white);
2024-05-26 03:59:54 +01:00
text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
background: rgba(0, 0, 0, 0.5);
padding: 20px;
border-radius: 10px;
max-width: 90%;
text-align: center;
}
.carousel-caption h1 {
font-size: 3em;
margin-bottom: 20px;
}
.carousel-caption p {
font-size: 1.2em;
margin-bottom: 20px;
}
.prev,
.next {
position: absolute;
top: 50%;
transform: translateY(-50%);
2024-09-23 00:50:12 +01:00
color: var(--white);
2024-05-26 03:59:54 +01:00
font-size: 2em;
cursor: pointer;
padding: 16px;
margin-top: -22px;
user-select: none;
}
.prev {
left: 10px;
}
.next {
right: 10px;
}
.prev:hover,
.next:hover {
background-color: rgba(0, 0, 0, 0.8);
}
2024-09-23 00:50:12 +01:00
/* Sections */
2024-05-26 03:59:54 +01:00
.about,
.products,
2024-09-23 00:50:12 +01:00
.contact,
.news {
2024-05-26 03:59:54 +01:00
padding: 60px 0;
text-align: center;
}
.about h2,
.products h2,
2024-09-23 00:50:12 +01:00
.contact h2,
.news h2 {
2024-05-26 03:59:54 +01:00
font-size: 2.5em;
margin-bottom: 20px;
}
.about p,
.products p,
2024-09-23 00:50:12 +01:00
.contact p,
.news p {
2024-05-26 03:59:54 +01:00
font-size: 1.1em;
line-height: 1.8;
margin-bottom: 20px;
max-width: 800px;
margin-left: auto;
margin-right: auto;
}
2024-09-23 00:50:12 +01:00
/* Product Grid */
2024-05-26 03:59:54 +01:00
.product-grid {
display: flex;
justify-content: space-between;
2024-05-26 03:59:54 +01:00
flex-wrap: wrap;
2024-09-23 00:50:12 +01:00
gap: 20px;
2024-05-26 03:59:54 +01:00
}
.product-card {
2024-09-23 00:50:12 +01:00
background-color: var(--white);
2024-05-26 03:59:54 +01:00
padding: 20px;
border-radius: 10px;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
flex: 1 1 calc(30% - 20px);
2024-05-26 03:59:54 +01:00
margin-bottom: 20px;
box-sizing: border-box;
2024-05-26 03:59:54 +01:00
}
.product-card img {
2024-09-23 00:50:12 +01:00
width: 80%;
2024-05-26 03:59:54 +01:00
border-radius: 10px;
margin-bottom: 15px;
}
.product-card h3 {
font-size: 1.5em;
margin-bottom: 10px;
}
.product-card p {
font-size: 1em;
}
2024-09-23 00:50:12 +01:00
/* Buttons */
.btn,
.product-card button {
background-color: var(--primary-color);
color: var(--white);
2024-05-26 03:59:54 +01:00
padding: 10px 20px;
text-decoration: none;
font-weight: bold;
border-radius: 5px;
2024-09-23 00:50:12 +01:00
border: none;
cursor: pointer;
2024-05-26 03:59:54 +01:00
}
2024-09-23 00:50:12 +01:00
.btn:hover,
.product-card button:hover {
background-color: var(--secondary-color);
color: var(--primary-color);
2024-05-26 03:59:54 +01:00
}
2024-09-23 00:50:12 +01:00
/* Footer */
2024-05-26 03:59:54 +01:00
.footer {
2024-09-23 00:50:12 +01:00
background-color: var(--primary-color);
color: var(--white);
2024-05-26 03:59:54 +01:00
padding: 20px 0;
text-align: center;
}
.footer .social-media a {
2024-09-23 00:50:12 +01:00
color: var(--secondary-color);
2024-05-26 03:59:54 +01:00
margin: 0 10px;
font-size: 1.5em;
text-decoration: none;
}
.footer .social-media a:hover {
2024-09-23 00:50:12 +01:00
color: var(--white);
2024-05-26 03:59:54 +01:00
}
2024-09-23 00:50:12 +01:00
/* 404 Error Page */
2024-05-26 04:07:25 +01:00
.error-404 {
padding: 100px 0;
text-align: center;
}
.error-404 h1 {
font-size: 6em;
2024-09-23 00:50:12 +01:00
color: var(--secondary-color);
2024-05-26 04:07:25 +01:00
}
.error-404 h2 {
font-size: 2.5em;
margin-bottom: 20px;
}
2024-09-23 00:50:12 +01:00
/* Forms */
2024-08-09 06:21:29 +01:00
.form-group {
margin-bottom: 15px;
}
.form-group label {
display: block;
font-weight: bold;
margin-bottom: 5px;
}
.form-group input,
.form-group textarea {
width: 100%;
padding: 10px;
border: 1px solid #ccc;
border-radius: 5px;
}
.form-group textarea {
resize: vertical;
height: 150px;
}
2024-09-23 00:50:12 +01:00
/* Media Queries */
2024-05-26 03:59:54 +01:00
@media (max-width: 768px) {
.product-card {
width: calc(50% - 20px);
}
.hero {
height: 40vh;
}
.carousel-caption h1 {
font-size: 2em;
}
.carousel-caption p {
font-size: 1em;
}
.prev,
.next {
font-size: 1.5em;
}
2024-09-23 00:50:12 +01:00
.about p,
.products p,
.news p {
2024-05-26 03:59:54 +01:00
font-size: 1em;
max-width: 90%;
}
}
@media (max-width: 480px) {
.hero {
height: 30vh;
}
.carousel-caption h1 {
font-size: 1.5em;
}
.carousel-caption p {
font-size: 0.8em;
}
.prev,
.next {
font-size: 1.2em;
}
2024-09-23 00:50:12 +01:00
.about p,
.products p,
.news p {
2024-05-26 03:59:54 +01:00
font-size: 0.9em;
max-width: 90%;
}
}
@media screen and (max-width: 600px) {
.topnav a:not(:first-child) {
display: none;
}
.topnav a.icon {
float: right;
display: block;
}
.topnav.responsive {
flex-direction: column;
align-items: flex-start;
2024-09-23 00:50:12 +01:00
background-color: var(--primary-color);
}
.topnav.responsive .icon {
position: absolute;
right: 0;
top: 0;
2024-05-27 20:48:57 +01:00
background-color: #808080;
}
.topnav.responsive a {
float: none;
display: block;
text-align: left;
width: 100%;
2024-09-23 00:50:12 +01:00
color: var(--white);
}
.product-grid {
flex-direction: column;
}
.product-card {
width: 100%;
}
2024-08-09 06:21:29 +01:00
}