/* * Theme for www.ercosarl40.com * * Copyright (C) 2025 * */ /*-------------------- DATA, CLASS --------------------*/ @vermillion: #E05048; @gray: #4F6D7A; @apricot: #FFD1BA; @purple: #32213A; @azure: #6CD4FF; @blanc: #FFFFFF; .transition { transition: All 0.8s ease; -webkit-transition: All 0.8s ease; -moz-transition: All 0.8s ease; -o-transition: All 0.8s ease; } :root { --rouge: #E05048; --bleu-gris: #4F6D7A; --peche: #FFD1BA; --violet: #32213A; --cyan: #6CD4FF; } /*-------------------- FONT FACE --------------------*/ @font-face { font-family: 'Tanker-Regular'; src: url('../fonts/Tanker-Regular.woff2') format('woff2'), url('../fonts/Tanker-Regular.woff') format('woff'), url('../fonts/Tanker-Regular.ttf') format('truetype'); font-weight: 100; font-display: swap; font-style: normal; } /*-------------------- HTML, BODY --------------------*/ html { scroll-behavior: smooth; } body { font-family: Tanker-Regular, Tahoma, Geneva, Verdana, sans-serif; line-height: 1.6; color: var(--violet); background-color: @blanc; margin: 0px; padding: 0px; } img { border: 0 none; } h2 { color: @vermillion; } a { text-decoration: none; color: @vermillion; .transition; } a:hover { .transition; } /*-------------------- NAV --------------------*/ nav { position: fixed; top: 0; width: 100%; background-color: @blanc; backdrop-filter: blur(10px); box-shadow: 0 2px 20px rgba(0,0,0,0.05); z-index: 1000; padding: 1.2rem 0; } nav ul { list-style: none; display: flex; justify-content: center; gap: 3rem; max-width: 1200px; margin: 0 auto; padding: 0 2rem; } nav a { text-decoration: none; color: var(--violet); font-weight: 500; font-size: 2rem; position: relative; transition: color 0.3s ease; &:hover { color: var(--rouge); } } nav a::after { content: ''; position: absolute; bottom: -5px; left: 0; width: 0; height: 2px; background-color: var(--rouge); transition: width 0.3s ease; } nav a:hover::after { width: 100%; } #img-logo-nav { height: 50px; } /*-------------------- SECTIONS COMMUNES --------------------*/ section { min-height: 80vh; display: flex; align-items: center; justify-content: center; padding: 6rem 2rem 4rem; } .container { max-width: 1200px; width: 100%; } h1 { font-size: 3.5rem; margin-bottom: 1.5rem; font-weight: 700; } h2 { font-size: 2.5rem; margin-bottom: 3rem; font-weight: 600; text-align: center; } /*-------------------- SECTION ACCUEIL --------------------*/ #accueil { background: linear-gradient(135deg, var(--peche) 0%, rgba(255, 209, 186, 0.3) 100%); position: relative; overflow: hidden; } #accueil::before { content: ''; position: absolute; top: -50%; right: -20%; width: 400px; height: 400px; background: radial-gradient(circle, var(--cyan) 0%, transparent 70%); opacity: 0.1; animation: float 20s ease-in-out infinite; } @keyframes float { 0%, 100% { transform: translate(0, 0) rotate(0deg); } 50% { transform: translate(-50px, 50px) rotate(180deg); } } .hero-content { position: relative; z-index: 1; } .hero-subtitle { font-size: 1.3rem; color: var(--bleu-gris); margin-bottom: 2rem; } .cta-button { display: inline-block; padding: 1rem 2.5rem; background-color: var(--rouge); color: @blanc; text-decoration: none; border-radius: 50px; font-size: 1.5rem; transition: all 0.3s ease; box-shadow: 0 4px 15px rgba(224, 80, 72, 0.3); &:hover { transform: translateY(-3px); box-shadow: 0 6px 25px rgba(224, 80, 72, 0.4); background-color: #c94440; } } #img-logo-accueil { height: 250px; position: absolute; right: 200px; top: 300px; } /*-------------------- SECTIONS PRESTATIONS --------------------*/ #prestations { background-color: @blanc; } .prestations-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 2rem; margin-top: 3rem; } .prestation-card { background: linear-gradient(135deg, rgba(108, 212, 255, 0.05) 0%, rgba(79, 109, 122, 0.05) 100%); padding: 2.5rem; border-radius: 15px; transition: all 0.3s ease; border: 2px solid transparent; text-align: justify; ul { list-style-image: url('../images/liste.png'); } h3 { color: var(--bleu-gris); font-size: 1.5rem; margin-bottom: 1rem; } p { color: var(--violet); line-height: 1.8; } &:hover { transform: translateY(-10px); border-color: var(--cyan); box-shadow: 0 10px 30px rgba(108, 212, 255, 0.2); } } /*-------------------- SECTIONS REFERENCES --------------------*/ #references { background: linear-gradient(135deg, rgba(50, 33, 58, 0.03) 0%, rgba(79, 109, 122, 0.03) 100%); } .references-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 2rem; margin-top: 3rem; } .reference-item { background-color: @blanc; padding: 2rem; border-radius: 15px; text-align: justify; transition: all 0.3s ease; box-shadow: 0 5px 15px rgba(0,0,0,0.05); p { color: var(--bleu-gris); text-decoration: underline; } &:hover { transform: scale(1.05); box-shadow: 0 8px 25px rgba(0,0,0,0.1); } } .reference-image { width: 100%; height: auto; margin: 10px auto; padding: 5px auto; display: flex; align-items: center; justify-content: center; } .img-reference { width: 150px; height: auto; } /*-------------------- SECTIONS CONTACT --------------------*/ #contact { background: linear-gradient(135deg, var(--violet) 0%, var(--bleu-gris) 100%); color: @blanc; h2 { color: @blanc; } } .contact-content { text-align: center; max-width: 400px; margin: 0 auto; p { font-size: 1.5rem; } } .contact-info { margin: 3rem 0; font-size: 1.5rem; p { margin: 1rem 0; } a { &:hover { color: @blanc; .transition; } } } .contact-button { display: inline-block; padding: 1.1rem 2.5rem; margin-right: 10px; border-radius: 50px; background-color: var(--rouge); color: @blanc; text-decoration: none; font-size: 1.5rem; transition: all 0.3s ease; &:hover { transform: translateY(-3px); background-color: @blanc; color: var(--rouge); } } .contact-img-social { height: 40px; } .contact-button-social { display: inline-block; padding: 1.6rem 2.5rem; margin-left: 10px; border-radius: 50px; transition: all 0.3s ease; background-image: url('../images/linkedin.png'); background-repeat: no-repeat; background-size: 50px; background-position: center center; background-color:@vermillion; &:hover { transform: translateY(-3px); background-image: url('../images/linkedin-hover.png'); background-color: @blanc; color: var(--rouge); } } #img-logo-contact { margin-top: 40px; height: 150px; } /*-------------------- FOOTER --------------------*/ footer { background-color: var(--violet); color: white; text-align: center; padding: 2rem; font-size: 0.9rem; font-weight: 100; } /*-------------------- RESPONSIVE --------------------*/ @media (max-width: 768px) { .hide-mobile { display: none; } h1 { font-size: 2.5rem; } h2 { font-size: 2rem; } nav ul { gap: 1.5rem; flex-wrap: wrap; } section { padding: 5rem 1.5rem 3rem; } } /*-------------------- MISCELLEANOUS --------------------*/ .bold { font-weight: bold; } /* End of file index.less */ /* Location: ./assets/less/index.less */