commit 95e3bad443ec7ec9fbd73e4370862b8dc234d7ac Author: Arnaud Delcasse Date: Tue Dec 30 12:14:33 2025 +0100 first commit diff --git a/.gitea/workflows/publish.yaml b/.gitea/workflows/publish.yaml new file mode 100644 index 0000000..0f0439c --- /dev/null +++ b/.gitea/workflows/publish.yaml @@ -0,0 +1,44 @@ +name: Publish To Prod + +on: + push: + branches: + - main + pull_request: + +jobs: + deploy_and_publish: + runs-on: ubuntu-latest + concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + steps: + - uses: actions/checkout@v4 + with: + submodules: true # Fetch Hugo themes (true OR recursive) + fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmod + + - uses: actions/setup-node@v4 + with: + node-version: 22 + + - run: npm install + + - name: Setup Hugo + uses: peaceiris/actions-hugo@v2 + with: + hugo-version: "latest" + extended: true + + - name: Build + run: hugo --minify + + - uses: jakejarvis/s3-sync-action@master + with: + args: --acl public-read --follow-symlinks --delete + env: + AWS_S3_ENDPOINT: https://s3.fr-par.scw.cloud + AWS_S3_BUCKET: mms43-www + AWS_ACCESS_KEY_ID: ${{ secrets.SCW_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.SCW_SECRET_ACCESS_KEY }} + AWS_REGION: "fr-par" + SOURCE_DIR: "public" diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..86c95ef --- /dev/null +++ b/.gitignore @@ -0,0 +1,13 @@ +# Generated files by hugo +/public/ +/resources/_gen/ +/assets/jsconfig.json +hugo_stats.json + +# Executable may be added to repository +hugo.exe +hugo.darwin +hugo.linux + +# Temporary lock file while building +/.hugo_build.lock diff --git a/archetypes/default.md b/archetypes/default.md new file mode 100644 index 0000000..25b6752 --- /dev/null +++ b/archetypes/default.md @@ -0,0 +1,5 @@ ++++ +date = '{{ .Date }}' +draft = true +title = '{{ replace .File.ContentBaseName "-" " " | title }}' ++++ diff --git a/content/pages/contact/index.md b/content/pages/contact/index.md new file mode 100644 index 0000000..b2b4a7e --- /dev/null +++ b/content/pages/contact/index.md @@ -0,0 +1,8 @@ +--- +title: "Contact" +headline: "La Maison de la Mobilité Solidaire Haute-Loire est à votre écoute" +--- + +Vous avez une question ? Vous souhaitez plus d'informations sur nos solutions de mobilité ? + +{{< contact-form >}} diff --git a/content/pages/devenez-conducteur-solidaire/indemnisation.md b/content/pages/devenez-conducteur-solidaire/indemnisation.md new file mode 100644 index 0000000..7408393 --- /dev/null +++ b/content/pages/devenez-conducteur-solidaire/indemnisation.md @@ -0,0 +1,7 @@ +--- +title: "Indemnisation" +icon: "images/picto/Picto - Conducteur solidaire - Indemnisation.svg" +weight: 3 +--- + +En plus de partager de bons moments, la Maison de la Mobilité Solidaire Haute- Loire vous indemnise pour chaque trajet de transport solidaire (0.30 €/km ou déduction fiscale).  diff --git a/content/pages/devenez-conducteur-solidaire/index.md b/content/pages/devenez-conducteur-solidaire/index.md new file mode 100644 index 0000000..4f43df1 --- /dev/null +++ b/content/pages/devenez-conducteur-solidaire/index.md @@ -0,0 +1,15 @@ +--- +title: "Devenez conducteur solidaire" +layout: "devenez-conducteur-solidaire" +menu: + main: + weight: 2 +etapesTitle: "Une démarche simple et pratique" +--- + +Aidez une personne de votre territoire sans solution de transport pour un trajet ponctuel. + +Vous êtes libre : +- d'accepter ou refuser une demande, +- d'arrêter ou suspendre votre participation à tout moment, +- de partager vos anecdotes, votre playlist et de chanter à tue-tête ! diff --git a/content/pages/devenez-conducteur-solidaire/mise-en-relation.md b/content/pages/devenez-conducteur-solidaire/mise-en-relation.md new file mode 100644 index 0000000..e850414 --- /dev/null +++ b/content/pages/devenez-conducteur-solidaire/mise-en-relation.md @@ -0,0 +1,7 @@ +--- +title: "Mise en relation" +icon: "images/picto/Picto - Conducteur solidaire - Mise en relation.svg" +weight: 2 +--- + +Notre référent recherche le conducteur disponible selon les besoins du passager et organise la mise en relation. diff --git a/content/pages/devenez-conducteur-solidaire/page-footer.md b/content/pages/devenez-conducteur-solidaire/page-footer.md new file mode 100644 index 0000000..a70b64a --- /dev/null +++ b/content/pages/devenez-conducteur-solidaire/page-footer.md @@ -0,0 +1,8 @@ +--- +title: "Vous souhaitez rejoindre la communauté des conducteurs solidaires ?" +type: "page-footer" +--- + +**Remplissez le formulaire ci-dessous !** + +{{< contact-form buttonText="Envoyer" fields=`[{"name":"date_naissance","label":"Date de naissance (JJ/MM/AAAA)","type":"text"},{"name":"telephone","label":"Numéro de téléphone","type":"text"},{"name":"email","label":"Adresse email","type":"email","required":true},{"name":"souhait","label":"Que souhaitez-vous ?","type":"multicheckboxes","options":[{"label":"M'engager pour du transport et/ou du covoiturage solidaire"},{"label":"Obtenir plus d'informations"}]}]` >}} diff --git a/content/pages/devenez-conducteur-solidaire/prise-de-contact.md b/content/pages/devenez-conducteur-solidaire/prise-de-contact.md new file mode 100644 index 0000000..b6cf740 --- /dev/null +++ b/content/pages/devenez-conducteur-solidaire/prise-de-contact.md @@ -0,0 +1,7 @@ +--- +title: "Prise de contact" +icon: "images/picto/Picto - Conducteur solidaire - Prise de contact .svg" +weight: 1 +--- + +Notre référent, véritable guide des routes partagées, vous accompagne lors de votre inscription. diff --git a/content/pages/engagez-votre-entreprise/avantage-environnemental.md b/content/pages/engagez-votre-entreprise/avantage-environnemental.md new file mode 100644 index 0000000..2e134cd --- /dev/null +++ b/content/pages/engagez-votre-entreprise/avantage-environnemental.md @@ -0,0 +1,8 @@ +--- +title: "Avantage environnemental" +type: "avantage" +icon: "images/picto/Entreprise - Avantage environnemental.svg" +weight: 2 +--- + +Les trajets représentent 30% des émissions de gaz à effet de serre, leur baisse est un enjeu clé de la lutte contre le dérèglement climatique. diff --git a/content/pages/engagez-votre-entreprise/avantage-financier.md b/content/pages/engagez-votre-entreprise/avantage-financier.md new file mode 100644 index 0000000..896be00 --- /dev/null +++ b/content/pages/engagez-votre-entreprise/avantage-financier.md @@ -0,0 +1,8 @@ +--- +title: "Avantage financier" +type: "avantage" +icon: "images/picto/Entreprise - Avantage financier.svg" +weight: 1 +--- + +Pour vos salariés : réduction de leur budget domicile-travail. Pour l'entreprise : des recrutements facilités, le forfait de mobilité durable est exonéré de charges sociales, une action valorisable dans votre RSE. diff --git a/content/pages/engagez-votre-entreprise/avantage-humain.md b/content/pages/engagez-votre-entreprise/avantage-humain.md new file mode 100644 index 0000000..c799542 --- /dev/null +++ b/content/pages/engagez-votre-entreprise/avantage-humain.md @@ -0,0 +1,8 @@ +--- +title: "Avantage social et humain" +type: "avantage" +icon: "images/picto/Entreprise - Avantage humain.svg" +weight: 3 +--- + +Moins de stress, de fatigue et d'isolement. Plus de solidarité ! diff --git a/content/pages/engagez-votre-entreprise/engagement-covoiturage.md b/content/pages/engagez-votre-entreprise/engagement-covoiturage.md new file mode 100644 index 0000000..94e933f --- /dev/null +++ b/content/pages/engagez-votre-entreprise/engagement-covoiturage.md @@ -0,0 +1,9 @@ +--- +title: "Déployer du covoiturage entreprise" +type: "engagement" +icon: "images/picto/Entreprise - Covoit.svg" +weight: 4 +--- + +- Créer une communauté de covoitureurs dans votre entreprise. +- Animer et pérenniser le service. diff --git a/content/pages/engagez-votre-entreprise/engagement-lever-freins.md b/content/pages/engagez-votre-entreprise/engagement-lever-freins.md new file mode 100644 index 0000000..4b6a41a --- /dev/null +++ b/content/pages/engagez-votre-entreprise/engagement-lever-freins.md @@ -0,0 +1,9 @@ +--- +title: "Lever les freins à la mobilité des candidats et de vos salariés" +type: "engagement" +icon: "images/picto/Entreprise - Lever les freins.svg" +weight: 1 +--- + +- Recevoir chaque personne pour identifier les besoins et les problématiques de déplacement. +- Trouver des solutions à court puis à long terme. diff --git a/content/pages/engagez-votre-entreprise/engagement-mutualiser.md b/content/pages/engagez-votre-entreprise/engagement-mutualiser.md new file mode 100644 index 0000000..bc68ec6 --- /dev/null +++ b/content/pages/engagez-votre-entreprise/engagement-mutualiser.md @@ -0,0 +1,10 @@ +--- +title: "Mutualiser les solutions inter-entreprises pour une mobilité plus efficace" +type: "engagement" +icon: "images/picto/Entreprise - Mutualiser solutions.svg" +weight: 5 +--- + +- Repérer les partenaires locaux pour des solutions partagées (covoiturage, navettes, etc.). +- Faciliter les accords et les projets communs (horaires, flotte de véhicules partagés, etc.). +- Animer le réseau inter-entreprises autour des enjeux de mobilité. diff --git a/content/pages/engagez-votre-entreprise/engagement-optimiser.md b/content/pages/engagez-votre-entreprise/engagement-optimiser.md new file mode 100644 index 0000000..0e68b15 --- /dev/null +++ b/content/pages/engagez-votre-entreprise/engagement-optimiser.md @@ -0,0 +1,9 @@ +--- +title: "Optimiser la mobilité de vos salariés avec des solutions adaptées" +type: "engagement" +icon: "images/picto/Entreprise - Optimiser mobilite.svg" +weight: 2 +--- + +- Identifier les besoins de vos salariés, notamment les plus vulnérables et les informer sur les aides et solutions adaptées. +- Concevoir et mettre en œuvre un plan de mobilité et le valoriser dans votre politique RSE. diff --git a/content/pages/engagez-votre-entreprise/engagement-sensibiliser.md b/content/pages/engagez-votre-entreprise/engagement-sensibiliser.md new file mode 100644 index 0000000..a99e3a8 --- /dev/null +++ b/content/pages/engagez-votre-entreprise/engagement-sensibiliser.md @@ -0,0 +1,9 @@ +--- +title: "Sensibiliser vos salariés aux alternatives à la voiture individuelle" +type: "engagement" +icon: "images/picto/Entreprise - Sensibiliser.svg" +weight: 3 +--- + +- Faciliter la connaissance des solutions de mobilité de votre territoire. +- Organiser des ateliers d'information sur les alternatives et des sessions test : vélo mécanique et électrique, auto-partage, covoiturage, etc. diff --git a/content/pages/engagez-votre-entreprise/index.md b/content/pages/engagez-votre-entreprise/index.md new file mode 100644 index 0000000..bf9673b --- /dev/null +++ b/content/pages/engagez-votre-entreprise/index.md @@ -0,0 +1,7 @@ +--- +title: "Engagez votre entreprise" +layout: "engagez-votre-entreprise" +menu: + main: + weight: 3 +--- diff --git a/content/pages/mentions-legales/index.md b/content/pages/mentions-legales/index.md new file mode 100644 index 0000000..b49a3fa --- /dev/null +++ b/content/pages/mentions-legales/index.md @@ -0,0 +1,42 @@ +--- +title: "Mentions légales et politique de confidentialité" +--- + +Conformément aux dispositions de la loi n° 2004-575 du 21 juin 2004 pour la confiance en l’économie numérique, il est précisé aux utilisateurs du site l’identité des différents intervenants dans le cadre de sa réalisation et de son suivi. + +#### Édition du site + +Le site est édité par l’association FIT, dont le siège social est situé au 64 rue Lamartine, 63000 Clermont-Ferrand + +Responsable de publication +Renaud Morand + +#### Hébergeur + +Scaleway + +#### Réalisation + +Développement web
Mobicoop + +Maquettes et navigation
Hélène Vatthana + +#### Cookies + +Ce site internet utilise des cookies nécessaires à son fonctionnement. Ils ne nécessitent pas de consentement de l’internaute et aucune donnée personnelle n’est stockée. + +#### Crédits photographiques + +Page d’accueil : © DR + +Photo de l’équipe : © DR + +Page “Nos solutions de mobilité” : © Eric Soudan-Agence Photo Andia + +Page “Devenez conducteur solidaire” : © DR + +Page “Engagez votre entreprise” : © istock + +#### Nous contacter + +Par email : contact@mms43.org diff --git a/content/pages/nos-solutions-de-mobilite/accompagnement-mobilite.md b/content/pages/nos-solutions-de-mobilite/accompagnement-mobilite.md new file mode 100644 index 0000000..e6d027c --- /dev/null +++ b/content/pages/nos-solutions-de-mobilite/accompagnement-mobilite.md @@ -0,0 +1,7 @@ +--- +title: "Accompagnement à ma mobilité" +image: "images/visuels/Accompagnement-mobilite.png" +weight: 1 +--- + +Nos conseillères vous accueillent pour faire le point sur vos besoins, et élaborent votre projet personnalisé de mobilité. diff --git a/content/pages/nos-solutions-de-mobilite/auto-ecole-solidaire.md b/content/pages/nos-solutions-de-mobilite/auto-ecole-solidaire.md new file mode 100644 index 0000000..339d815 --- /dev/null +++ b/content/pages/nos-solutions-de-mobilite/auto-ecole-solidaire.md @@ -0,0 +1,7 @@ +--- +title: "Auto-école solidaire" +image: "images/visuels/Auto-ecole-Eric-Soudan.png" +weight: 4 +--- + +Des cours de code et de conduite avec une pédagogie adaptée aux besoins de chacun. diff --git a/content/pages/nos-solutions-de-mobilite/garage-solidaire.md b/content/pages/nos-solutions-de-mobilite/garage-solidaire.md new file mode 100644 index 0000000..7b90815 --- /dev/null +++ b/content/pages/nos-solutions-de-mobilite/garage-solidaire.md @@ -0,0 +1,7 @@ +--- +title: "Garage solidaire" +image: "images/visuels/Garage-solidaire-Eric-Soudan.png" +weight: 6 +--- + +Solidarauto43 est un garage réservé aux quotients familiaux inférieur à 750 €. Locations, vente et réparations de véhicules, conseils pour l'achat en direct à un particulier. En savoir plus sur Solidarauto43 diff --git a/content/pages/nos-solutions-de-mobilite/index.md b/content/pages/nos-solutions-de-mobilite/index.md new file mode 100644 index 0000000..a0512e4 --- /dev/null +++ b/content/pages/nos-solutions-de-mobilite/index.md @@ -0,0 +1,9 @@ +--- +title: "Nos solutions de mobilité" +layout: "nos-solutions-de-mobilite" +headline: "La Maison de la Mobilité Solidaire Haute-Loire vous propose un bouquet de solutions pour vos déplacements" +menu: + main: + weight: 1 +headless: false +--- diff --git a/content/pages/nos-solutions-de-mobilite/location-vehicules.md b/content/pages/nos-solutions-de-mobilite/location-vehicules.md new file mode 100644 index 0000000..cf97db0 --- /dev/null +++ b/content/pages/nos-solutions-de-mobilite/location-vehicules.md @@ -0,0 +1,7 @@ +--- +title: "Location de véhicules" +image: "images/visuels/Location-vehicule.png" +weight: 5 +--- + +La MMS43 met à disposition des vélos, scooters, voiturettes et voitures électriques, de la demi-journée à la semaine. diff --git a/content/pages/nos-solutions-de-mobilite/transport-solidaire.md b/content/pages/nos-solutions-de-mobilite/transport-solidaire.md new file mode 100644 index 0000000..d748b3d --- /dev/null +++ b/content/pages/nos-solutions-de-mobilite/transport-solidaire.md @@ -0,0 +1,7 @@ +--- +title: "Transport solidaire et covoiturage" +image: "images/visuels/covoit.png" +weight: 3 +--- + +Notre communauté de conducteurs solidaires vous aide dans vos déplacements ponctuels. diff --git a/content/pages/nos-solutions-de-mobilite/velo-ecole.md b/content/pages/nos-solutions-de-mobilite/velo-ecole.md new file mode 100644 index 0000000..60b8b97 --- /dev/null +++ b/content/pages/nos-solutions-de-mobilite/velo-ecole.md @@ -0,0 +1,7 @@ +--- +title: "Vélo-école" +image: "images/visuels/Velo-Ecole-Eric-Soudan.png" +weight: 2 +--- + +Notre formatrice vous accompagne dans un parcours d'apprentissage au vélo (musculaire ou électrique) ou de remise en selle. La MMS est adhérente à la Fédération française des Usagers de la Bicyclette. diff --git a/content/pages/qui-sommes-nous/index.md b/content/pages/qui-sommes-nous/index.md new file mode 100644 index 0000000..b56448b --- /dev/null +++ b/content/pages/qui-sommes-nous/index.md @@ -0,0 +1,24 @@ +--- +title: "Qui sommes-nous ?" +layout: "qui-sommes-nous" +menu: + main: + weight: 4 +savoirPlusLinks: + - text: "Découvrez l'article consacré à la Maison de la Mobilité Solidaire de Haute-Loire dans le journal Le Bimsa" + url: "https://lebimsa.fr/l-actu-des-territoires/mobilite-en-haute-loire-la-solution-du-covoiturage/" + - text: "Découvrez l'interview de Willy Guieau, Directeur opérationnel de la Maison de la Mobilité Solidaire de Haute-Loire" + url: "https://www.linkedin.com/pulse/maison-de-la-mobilit%C3%A9-solidaire-haute-loire-humains-%C3%A0-coeur-bw18e/" +--- + +La Maison de la Mobilité Solidaire Haute-Loire est un projet porté par les associations FIT, Solidarauto43 et FACE43, avec pour missions : + +- l'information, l'orientation et l'accompagnement vers des solutions de mobilité durable, solidaire et alternative à l'usage individuel de la voiture ; +- le déploiement de nouvelles solutions de mobilité partagées, actives et accessibles à tous, en particulier aux personnes en difficulté de mobilité ; +- le développement d'un programme de sensibilisation et d'accompagnement des acteurs territoriaux. + +Le projet « Maison de la Mobilité Solidaire Haute-Loire » est lauréat du programme TIMS, qui vise à développer la mobilité durable et solidaire dans les territoires et à professionnaliser ce secteur. L'enjeu est de permettre à tous de se déplacer en réduisant l'impact écologique des transports. + +Le programme TIMS est piloté par le réseau CLER, Mob'in, Auvergne-Rhône-Alpes Energie Environnement et le réseau des Agences Régionales de l'Energie et de l'Environnement. + +La MMS bénéficie également du soutien financier de l'Etat via le PACTE des solidarités et de l'Agence Nationale de la Cohésion Territoriale, ainsi que de la MSA. diff --git a/hugo.toml b/hugo.toml new file mode 100644 index 0000000..300124e --- /dev/null +++ b/hugo.toml @@ -0,0 +1,50 @@ +baseURL = 'https://www.mms43.fr/' +languageCode = 'fr-fr' +title = 'MMS43' +theme = 'mms43' + +[params] + description = "Site vitrine MMS43" + phone = "06 56 78 29 75" + phoneHours = "(du lundi au vendredi, 9h - 17h)" + email = "contact@mms43.org" + + # Réseaux sociaux + linkedinUrl = "" + facebookUrl = "" + + # Hero + [params.hero] + line1before = "VOTRE" + line1highlight = "SOLUTION" + line1after = "DE" + line2highlight = "MOBILITÉ" + line2after = "EN HAUTE-LOIRE" + + # Bloc recherche + [params.search] + title = "Rechercher un trajet" + labelDepart = "Départ" + labelDestination = "Destination" + labelDate = "Date" + labelHeure = "Heure" + buttonText = "Rechercher" + + # Bloc vidéo + [params.video] + title = "Découvrez la Maison de la Mobilité Solidaire !" + + # Bloc contact + [params.contact] + title = "La Maison de la Mobilité Solidaire vous accompagne pour tous vos trajets !" + phrases = [ + "Vous recherchez des solutions pour vous déplacer ?", + "Vous souhaitez faire évoluer vos pratiques de déplacements ?", + "Après analyse de votre besoin, nous vous proposerons une solution adaptée." + ] + buttonText = "Contactez nous !" + + # Footer + [params.footer] + ctaTitle = "Organisez vos trajets en Haute-Loire !" + copyright = "MMS43" diff --git a/themes/mms43/archetypes/default.md b/themes/mms43/archetypes/default.md new file mode 100644 index 0000000..25b6752 --- /dev/null +++ b/themes/mms43/archetypes/default.md @@ -0,0 +1,5 @@ ++++ +date = '{{ .Date }}' +draft = true +title = '{{ replace .File.ContentBaseName "-" " " | title }}' ++++ diff --git a/themes/mms43/assets/css/main.css b/themes/mms43/assets/css/main.css new file mode 100644 index 0000000..3877a75 --- /dev/null +++ b/themes/mms43/assets/css/main.css @@ -0,0 +1,2086 @@ +@import url('https://fonts.googleapis.com/css2?family=Quicksand:wght@300;400;500;600;700&display=swap'); + +:root { + /* Couleurs principales */ + --color-primary: #283959; + --color-secondary: #00A396; + --color-highlight: #F08F29; + --color-text: #222; + --color-white: #fff; + + /* Typographie */ + --font-family: 'Quicksand', sans-serif; + + /* Header */ + --header-height: 106px; + --header-bg: var(--color-primary); + --header-phone-bg: var(--color-secondary); +} + +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +body { + color: var(--color-text); + font-family: var(--font-family); + line-height: 1.5; +} + +/* Header */ +header { + position: fixed; + top: 0; + left: 0; + right: 0; + height: var(--header-height); + background-color: var(--header-bg); + z-index: 1000; +} + +.header-container { + display: flex; + align-items: center; + justify-content: space-between; + height: 100%; + padding: 0 2rem; + max-width: 1440px; + margin: 0 auto; +} + +.header-logo img { + height: 80px; + width: auto; +} + +.header-nav { + display: flex; + flex: 1; + justify-content: center; + align-items: center; + gap: 2rem; + flex-wrap: wrap; +} + +.header-nav .nav-link { + color: var(--color-white); + text-decoration: none; + font-size: 16px; + font-weight: 500; + transition: opacity 0.2s; + text-align: center; +} + +.header-nav .nav-link:hover { + opacity: 0.8; +} + +.header-nav .nav-link.active { + font-weight: 700; +} + +.header-phone { + display: flex; + align-items: center; + background-color: var(--header-phone-bg); + border-radius: 50px; + padding: 0.5rem 1.25rem 0.5rem 0.75rem; + gap: 0.75rem; +} + +.header-phone .phone-icon { + display: flex; + align-items: center; + justify-content: center; +} + +.header-phone .phone-icon img { + width: 24px; + height: 24px; + filter: brightness(0) invert(1); +} + +.header-phone .phone-info { + display: flex; + flex-direction: column; +} + +.header-phone .phone-number { + color: var(--color-white); + font-size: 18px; + font-weight: 600; +} + +.header-phone .phone-hours { + color: rgba(255, 255, 255, 0.8); + font-size: 12px; +} + +/* Header mobile elements - hidden by default */ +.header-phone-mobile, +.header-burger { + display: none; +} + +.header-phone-mobile { + display: none; + align-items: center; + background-color: var(--header-phone-bg); + border-radius: 50px; + padding: 0.5rem 1rem 0.5rem 0.75rem; + gap: 0.5rem; + text-decoration: none; +} + +.header-phone-mobile .phone-icon { + display: flex; + align-items: center; + justify-content: center; +} + +.header-phone-mobile .phone-icon img { + width: 20px; + height: 20px; + filter: brightness(0) invert(1); +} + +.header-phone-mobile .phone-info { + display: flex; + flex-direction: column; +} + +.header-phone-mobile .phone-number { + color: var(--color-white); + font-size: 14px; + font-weight: 600; +} + +.header-phone-mobile .phone-hours { + color: rgba(255, 255, 255, 0.8); + font-size: 10px; +} + +.header-burger { + background: none; + border: none; + cursor: pointer; + padding: 0.5rem; + display: none; + flex-direction: column; + gap: 5px; +} + +.burger-line { + display: block; + width: 24px; + height: 3px; + background-color: var(--color-white); + border-radius: 2px; + transition: transform 0.3s, opacity 0.3s; +} + +/* Mobile menu overlay */ +.mobile-menu { + display: none; + position: fixed; + top: 0; + left: 0; + right: 0; + bottom: 0; + background-color: var(--color-primary); + z-index: 2000; + flex-direction: column; + padding: 1.5rem; + overflow-y: auto; + transform: translateX(100%); + transition: transform 0.3s ease; +} + +.mobile-menu.is-open { + transform: translateX(0); +} + +.mobile-menu-close { + position: absolute; + top: 1.5rem; + right: 1.5rem; + background: none; + border: none; + cursor: pointer; + padding: 0.5rem; +} + +.mobile-menu-close img { + width: 32px; + height: 32px; +} + +.mobile-menu-close span { + color: var(--color-white); + font-size: 32px; + line-height: 1; +} + +.mobile-menu-nav { + margin-top: 4rem; + display: flex; + flex-direction: column; +} + +.mobile-menu-link { + display: flex; + align-items: center; + justify-content: space-between; + padding: 1rem 0; + color: var(--color-white); + text-decoration: none; + font-size: 18px; + font-weight: 500; + border-bottom: 1px solid rgba(255, 255, 255, 0.2); +} + +.mobile-menu-link:first-child { + border-top: 1px solid rgba(255, 255, 255, 0.2); +} + +.mobile-menu-arrow { + width: 24px; + height: 24px; + filter: brightness(0) invert(1); +} + +.mobile-menu-contact { + margin-top: 6rem; + background-color: var(--color-secondary); + border-radius: 20px; + padding: 1rem 1.5rem; + text-align: center; + align-self: center; +} + +.mobile-menu-contact-title { + color: var(--color-white); + font-size: 13px; + font-weight: normal; + margin-bottom: 0.25rem; +} + +.mobile-menu-contact-info { + color: var(--color-white); + font-size: 12px; + font-weight: 600; +} + +/* Mobile breakpoint */ +@media (max-width: 1024px) { + :root { + --header-height: 80px; + } + + .header-nav, + .header-phone { + display: none; + } + + .header-phone-mobile, + .header-burger { + display: flex; + } + + .mobile-menu { + display: flex; + } + + .header-logo img { + height: 60px; + } +} + +/* Main content - offset for fixed header */ +main { + margin-top: var(--header-height); +} + +/* Hero */ +.hero { + background-size: cover; + background-position: center; + background-repeat: no-repeat; + height: 394px; + display: flex; + justify-content: center; + padding-top: 58px; +} + +.hero-headline { + font-weight: 700; + line-height: 1.2; + text-align: center; +} + +.hero-headline .text-primary { + color: var(--color-primary); + font-size: 40px; +} + +.hero-headline .text-highlight { + color: var(--color-highlight); + font-size: 50px; +} + +/* Search Block */ +.search-block { + background-color: var(--color-secondary); + border-radius: 35px; + box-shadow: 0 4px 15px rgba(0, 0, 0, 0.15); + max-width: 1328px; + height: 252px; + margin: -58px auto 0; + padding: 2rem 3rem; + position: relative; + z-index: 10; +} + +.search-title { + color: var(--color-white); + font-size: 24px; + font-weight: 700; + margin-bottom: 1.5rem; + text-align: center; +} + +.search-form { + display: flex; + align-items: flex-end; + gap: 1.5rem; +} + +.form-group { + flex: 1; + display: flex; + flex-direction: column; +} + +.form-group-row { + display: flex; + flex: 1; + gap: 1.5rem; +} + +.form-group-locations { + display: contents; +} + +.form-group label { + display: flex; + align-items: center; + gap: 0.5rem; + color: var(--color-white); + font-size: 14px; + font-weight: 500; + margin-bottom: 0.5rem; +} + +.form-group label .label-icon { + width: 20px; + height: 20px; + filter: brightness(0) invert(1); +} + +.form-group input { + padding: 0.75rem 1rem; + border: none; + border-radius: 8px; + font-family: var(--font-family); + font-size: 14px; + background-color: var(--color-white); + color: var(--color-text); +} + +.form-group input:focus { + outline: 2px solid var(--color-primary); +} + +.swap-btn { + display: flex; + align-items: center; + justify-content: center; + background: transparent; + border: none; + cursor: pointer; + padding: 0; + margin: 0 -0.5rem; + margin-bottom: 0.25rem; + align-self: flex-end; +} + +.swap-btn img { + width: 24px; + height: 24px; + filter: brightness(0) invert(1); + transition: transform 0.2s; +} + +.swap-btn:hover img { + transform: rotate(180deg); +} + +.search-btn { + display: flex; + align-items: center; + gap: 0.5rem; + background-color: var(--color-highlight); + color: var(--color-white); + border: none; + border-radius: 50px; + padding: 0.75rem 2rem; + font-family: var(--font-family); + font-size: 16px; + font-weight: 600; + cursor: pointer; + transition: opacity 0.2s; +} + +.search-btn:hover { + opacity: 0.9; +} + +.search-btn .btn-icon { + width: 20px; + height: 20px; + filter: brightness(0) invert(1); +} + +/* Video Block */ +.video-block { + padding: 4rem 2rem; + text-align: center; +} + +.video-title { + color: var(--color-primary); + font-size: 25px; + font-weight: 700; + margin-bottom: 2rem; +} + +.video-container { + max-width: 1022px; + margin: 0 auto; +} + +.video-container video { + width: 100%; + max-width: 1022px; + height: auto; + border-radius: 8px; +} + +/* Contact Block */ +.contact-block { + background-color: var(--color-primary); + border-radius: 35px; + max-width: 1328px; + margin: 2rem auto; + padding: 2.5rem 3rem; + text-align: center; +} + +.contact-title { + color: var(--color-white); + font-size: 25px; + font-weight: 700; + margin-bottom: 2.5rem; +} + +.contact-phrases { + margin-bottom: 2.5rem; +} + +.contact-phrases p { + color: var(--color-white); + font-size: 16px; + margin-bottom: 0.5rem; +} + +.contact-btn { + display: inline-flex; + align-items: center; + justify-content: center; + background-color: var(--color-highlight); + color: var(--color-white); + text-decoration: none; + border-radius: 50px; + width: 408px; + height: 43px; + font-size: 16px; + font-weight: 600; + transition: opacity 0.2s; +} + +.contact-btn:hover { + opacity: 0.9; +} + +/* Partners Block */ +.partners-block { + padding: 2rem; + text-align: center; +} + +.partners-block img { + max-width: 1168px; + width: 100%; + height: auto; +} + +.partners-desktop { + display: block; + margin: 0 auto; +} + +.partners-mobile { + display: none; + margin: 0 auto; +} + +@media (max-width: 480px) { + .partners-desktop { + display: none; + } + + .partners-mobile { + display: block; + max-width: 344px; + } +} + +/* Pages */ +.page-solutions { + padding: 3rem 2rem; +} + +.page-title { + font-size: 30px; + color: var(--color-text); + text-align: center; + font-weight: 700; + max-width: 1200px; + margin: 0 auto 3rem; +} + +/* Solutions Grid */ +.solutions-grid { + display: grid; + grid-template-columns: repeat(3, 1fr); + gap: 2rem; + max-width: 1280px; + margin: 0 auto; +} + +.solution-card { + width: 403px; + max-width: 100%; + aspect-ratio: 403 / 362; + background-color: var(--color-white); + border-radius: 20px; + overflow: hidden; + box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1); + position: relative; +} + +.solution-front { + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + display: flex; + flex-direction: column; + transition: opacity 0.3s; +} + +.solution-header { + height: 107px; + display: flex; + align-items: center; + justify-content: center; + padding: 1rem; + background-color: var(--color-white); +} + +.solution-title { + font-size: 18px; + font-weight: 700; + color: var(--color-primary); + text-align: center; +} + +.solution-image-container { + flex: 1; + position: relative; + overflow: hidden; +} + +.solution-image { + width: 100%; + height: 100%; + object-fit: cover; +} + +.solution-toggle { + position: absolute; + right: 1rem; + top: 50%; + transform: translateY(-50%); + width: 45px; + height: 45px; + border-radius: 50%; + background-color: var(--color-secondary); + display: flex; + align-items: center; + justify-content: center; + box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15); + cursor: pointer; +} + +.solution-toggle img { + width: 24px; + height: 24px; + filter: brightness(0) invert(1); +} + +.solution-back { + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + background-color: var(--color-white); + opacity: 0; + pointer-events: none; + transition: opacity 0.3s; +} + +.solution-close { + position: absolute; + top: 1rem; + right: 1rem; + width: 34px; + height: 34px; + display: flex; + align-items: center; + justify-content: center; + cursor: pointer; +} + +.solution-close img { + width: 24px; + height: 24px; + filter: invert(48%) sepia(79%) saturate(438%) hue-rotate(131deg) brightness(95%) contrast(101%); +} + +.solution-content { + display: flex; + align-items: center; + justify-content: center; + height: 100%; + padding: 2rem; +} + +.solution-card.open .solution-front { + opacity: 0; + pointer-events: none; +} + +.solution-card.open .solution-back { + opacity: 1; + pointer-events: auto; +} + +.solution-text { + font-size: 20px; + color: var(--color-primary); + line-height: 1.6; + text-align: center; + max-width: 339px; +} + +.solutions-cta { + text-align: center; + margin-top: 3rem; +} + +.solutions-btn { + display: inline-flex; + align-items: center; + gap: 0.5rem; + background-color: var(--color-highlight); + color: var(--color-white); + text-decoration: none; + border-radius: 50px; + padding: 0.75rem 2rem; + font-size: 16px; + font-weight: 600; + transition: opacity 0.2s; +} + +.solutions-btn:hover { + opacity: 0.9; +} + +.solutions-btn .btn-icon { + width: 20px; + height: 20px; + filter: brightness(0) invert(1); +} + +/* Page Conducteur Solidaire */ +.conducteur-hero { + height: 380px; + background-size: cover; + background-position: center; + background-repeat: no-repeat; + border-radius: 0 0 35px 35px; +} + +.page-conducteur { + padding: 3rem 2rem; + max-width: 1600px; + margin: 0 auto; +} + +.conducteur-content { + display: flex; + gap: 3rem; + max-width: 1200px; + margin: 0 auto; +} + +.conducteur-image { + flex-shrink: 0; + width: 408px; +} + +.conducteur-image img { + width: 100%; + height: auto; +} + +.conducteur-text { + flex: 1; +} + +.conducteur-text ul { + list-style-position: inside; + padding-left: 4px; +} + +/* Etapes */ +.conducteur-etapes-section { + display: flex; + gap: 2rem; + margin-top: 3rem; + align-items: center; +} + +.conducteur-etapes { + flex: 1; +} + +.etapes-title { + font-size: 25px; + font-weight: 700; + color: var(--color-secondary); + text-align: left; + margin-bottom: 2rem; + margin-left: 100px; +} + +.etapes-list { + display: flex; + flex-direction: column; + gap: 0; + max-width: 900px; + margin: 0 100px; + position: relative; +} + +.etape-block { + display: flex; + align-items: center; + gap: 1.5rem; + background-color: var(--color-primary); + border-radius: 20px; + padding: 1.5rem; + margin-bottom: 1.5rem; + position: relative; +} + +.etape-block:last-child { + margin-bottom: 0; +} + +.etape-icon { + flex-shrink: 0; + width: 60px; +} + +.etape-icon img { + width: 100%; + height: auto; +} + +.etape-content { + flex: 1; +} + +.etape-title { + font-size: 18px; + font-weight: 700; + color: var(--color-white); + margin-bottom: 0; +} + +.etape-text { + font-size: 16px; + color: var(--color-white); + line-height: 1.6; +} + +.etape-arrow { + position: absolute; + bottom: -50px; + z-index: 10; +} + +.etape-arrow img { + width: 80px; + height: auto; +} + +.etape-arrow-right { + right: -80px; +} + +.etape-arrow-left { + left: -80px; +} + +/* Plus d'infos */ +.plus-infos { + width: 100%; + max-width: 475px; + flex-shrink: 0; + background-color: #F2E5DD; + border-radius: 20px; + padding: 2rem; + box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15); + display: flex; + flex-direction: column; + align-items: flex-start; + text-align: left; +} + +.plus-infos-title { + font-size: 25px; + font-weight: 700; + color: var(--color-text); + margin-bottom: 1rem; +} + +.plus-infos-text { + font-size: 18px; + font-weight: 600; + color: var(--color-text); + margin-bottom: 1.5rem; + line-height: 1.5; +} + +.plus-infos-button { + display: inline-block; + background-color: var(--color-highlight); + color: var(--color-white); + padding: 0.75rem 1.5rem; + border-radius: 25px; + text-decoration: none; + font-weight: 600; + margin-bottom: 1.5rem; + transition: opacity 0.2s; +} + +.plus-infos-button:hover { + opacity: 0.9; +} + +.plus-infos-download { + display: flex; + align-items: center; + gap: 0.5rem; + color: var(--color-text); + text-decoration: none; + font-size: 18px; + font-weight: 600; + line-height: 1; + transition: opacity 0.2s; +} + +.plus-infos-download:hover { + opacity: 0.8; +} + +.plus-infos-download img { + width: 42px; + height: 42px; +} + +.plus-infos-download span { + text-decoration: underline; +} + +/* Conducteur Video */ +.conducteur-video { + margin-top: 3rem; + text-align: center; +} + +.conducteur-video-title { + font-size: 25px; + font-weight: 700; + color: var(--color-primary); + margin-bottom: 1.5rem; +} + +.conducteur-video-container { + max-width: 1063px; + margin: 0 auto; +} + +.conducteur-video-container video { + width: 100%; + max-height: 520px; + border-radius: 20px; +} + +/* Page Engagez votre entreprise */ +.entreprise-hero { + height: 380px; + background-size: cover; + background-position: center; + background-repeat: no-repeat; + border-radius: 0 0 35px 35px; +} + +.page-entreprise { + padding: 3rem 2rem; + max-width: 1600px; + margin: 0 auto; +} + +.entreprise-avantages { + display: grid; + grid-template-columns: repeat(3, 1fr); + gap: 2rem; + margin-top: 2rem; +} + +.avantage-block { + text-align: center; +} + +.avantage-icon { + margin-bottom: 1rem; +} + +.avantage-icon img { + width: 80px; + height: auto; +} + +.avantage-title { + font-size: 20px; + font-weight: 700; + color: var(--color-primary); + margin-bottom: 0.5rem; +} + +.avantage-text { + font-size: 16px; + color: var(--color-text); + line-height: 1.5; +} + +.entreprise-subtitle { + font-size: 25px; + font-weight: 700; + color: var(--color-secondary); + margin-top: 6rem; + margin-bottom: 3rem; + text-align: center; +} + +.entreprise-engagements { + display: flex; + gap: 8rem; + justify-content: center; + align-items: flex-start; +} + +.engagements-column { + display: flex; + flex-direction: column; + gap: 1.5rem; + width: 475px; +} + +.engagements-column:nth-child(2) { + margin-top: 150px; +} + +.engagement-block { + display: flex; + align-items: center; + gap: 1.5rem; + background-color: var(--color-primary); + border-radius: 20px; + padding: 1.5rem; + max-width: 475px; +} + +.engagement-icon { + flex-shrink: 0; + width: 80px; +} + +.engagement-icon img { + width: 100%; + height: auto; +} + +.engagement-content { + flex: 1; +} + +.engagement-title { + font-size: 18px; + font-weight: 700; + color: var(--color-white); + margin-bottom: 0.5rem; +} + +.engagement-text { + font-size: 16px; + color: var(--color-white); + line-height: 1.5; +} + +.engagement-text ul { + list-style-position: inside; + padding-left: 4px; + margin: 0; +} + +.engagement-text li { + margin-bottom: 0.25rem; +} + +/* Entreprise Video */ +.entreprise-video { + margin-top: 3rem; +} + +.entreprise-video-container { + max-width: 1063px; + margin: 0 auto; +} + +.entreprise-video-container video { + width: 100%; + max-height: 520px; + border-radius: 20px; +} + +/* Page Qui sommes-nous */ +.quisommesnous-hero { + height: 380px; + background-size: cover; + background-position: center; + background-repeat: no-repeat; + border-radius: 0 0 35px 35px; +} + +.page-quisommesnous { + padding: 3rem 2rem; + max-width: 1600px; + margin: 0 auto; +} + +.quisommesnous-content { + display: flex; + gap: 3rem; + align-items: flex-start; +} + +.quisommesnous-text { + max-width: 600px; + flex: 1; + font-size: 18px; + line-height: 1.7; + color: var(--color-text); +} + +.quisommesnous-text p { + margin-bottom: 1.5rem; +} + +.quisommesnous-text p:last-child { + margin-bottom: 0; +} + +.quisommesnous-text ul { + list-style: none; + padding-left: 0; + margin: 1.5rem 0; +} + +.quisommesnous-text li { + position: relative; + padding-left: 1.5rem; + margin-bottom: 0.75rem; +} + +.quisommesnous-text li::before { + content: ""; + position: absolute; + left: 0; + top: 0.6em; + width: 8px; + height: 8px; + background-color: var(--color-secondary); + border-radius: 50%; +} + +.quisommesnous-image { + flex: 1; + padding: 100px; +} + +.quisommesnous-image img { + width: 100%; + height: auto; +} + +.quisommesnous-savoirplus { + background-color: #F2E5DD; + border-radius: 0 0 35px 35px; + padding: 2.5rem 3rem; + margin-top: 3rem; + margin-bottom: 8rem; + box-shadow: 0 4px 10px rgba(0, 0, 0, 0.25); +} + +.savoirplus-title { + font-size: 25px; + font-weight: 700; + color: var(--color-primary); + margin-bottom: 1.5rem; +} + +.savoirplus-links { + list-style: none; + padding: 0; + margin: 0; + display: flex; + flex-direction: column; + gap: 1rem; +} + +.savoirplus-item { + display: flex; + align-items: center; + gap: 0.75rem; +} + +.savoirplus-arrow { + width: 24px; + height: 24px; + flex-shrink: 0; +} + +.savoirplus-link { + color: var(--color-text); + font-size: 18px; + font-weight: 600; + text-decoration: underline; + transition: opacity 0.2s; +} + +.savoirplus-link:hover { + opacity: 0.8; +} + +/* Page Default */ +.page-default { + padding: 3rem 2rem; + max-width: 1600px; + margin: 0 auto; + margin-top: var(--header-height); +} + +.page-content { + font-size: 18px; + line-height: 1.7; + color: var(--color-text); + max-width: 900px; + margin: auto; +} + +.page-content p { + margin-bottom: 1.5rem; +} + +.page-content p:last-child { + margin-bottom: 0; +} + +.page-content ul { + list-style: none; + padding-left: 0; + margin: 1.5rem 0; +} + +.page-content li { + position: relative; + padding-left: 1.5rem; + margin-bottom: 0.75rem; +} + +.page-content li::before { + content: ""; + position: absolute; + left: 0; + top: 0.6em; + width: 8px; + height: 8px; + background-color: var(--color-secondary); + border-radius: 50%; +} + +.page-content a { + color: var(--color-secondary); + text-decoration: underline; +} + +.page-content a:hover { + opacity: 0.8; +} + +/* Contact Form */ +.contact-form { + max-width: 600px; + margin: 2rem auto 0; +} + +.contact-form-row { + display: flex; + gap: 1rem; +} + +.contact-form-group { + flex: 1; + margin-bottom: 1rem; + display: flex; + flex-direction: column; +} + +.contact-form label { + font-size: 14px; + font-weight: 600; + color: var(--color-text); + margin-bottom: 0.25rem; + text-align: left; +} + +.contact-form input, +.contact-form textarea { + width: 100%; + padding: 1rem; + font-size: 16px; + font-family: var(--font-family); + border: 1px solid #ccc; + border-radius: 10px; + background-color: var(--color-white); + color: var(--color-text); +} + +.contact-form input::placeholder, +.contact-form textarea::placeholder { + color: #999; +} + +.contact-form input:focus, +.contact-form textarea:focus { + outline: none; + border-color: var(--color-secondary); +} + +.contact-form textarea { + resize: vertical; + min-height: 150px; +} + +.contact-form-submit { + display: block; + margin: 0 auto; + padding: 1rem 2rem; + font-size: 18px; + font-weight: 600; + font-family: var(--font-family); + background-color: var(--color-highlight); + color: var(--color-white); + border: none; + border-radius: 25px; + cursor: pointer; + transition: opacity 0.2s; +} + +.contact-form-submit:hover { + opacity: 0.9; +} + +.contact-form-privacy { + font-size: 12px; + color: var(--color-text); + text-align: center; + margin-top: 1rem; + line-height: 1.5; +} + +/* Multicheckboxes */ +.contact-form-checkboxes { + text-align: left; +} + +.contact-form-checkbox-label { + display: block; + font-size: 14px; + font-weight: 600; + color: var(--color-text); + margin-bottom: 0.5rem; +} + +.contact-form-checkbox-options { + display: flex; + flex-direction: column; + gap: 0.5rem; +} + +.contact-form-checkbox { + display: flex; + align-items: center; + gap: 0.5rem; + cursor: pointer; + font-size: 14px; + font-weight: 400; +} + +.contact-form-checkbox input[type="checkbox"] { + width: 18px; + height: 18px; + margin: 0; + padding: 0; + accent-color: var(--color-secondary); + cursor: pointer; +} + +@media (max-width: 1300px) { + .solutions-grid { + grid-template-columns: repeat(2, 1fr); + justify-items: center; + } +} + +@media (max-width: 860px) { + .solutions-grid { + grid-template-columns: 1fr; + } + + .solution-card { + width: calc(100% - 2rem); + margin: 0 1rem; + } + + .quisommesnous-content { + flex-direction: column-reverse; + } + + .quisommesnous-image { + width: calc(100% - 2rem); + max-width: none; + margin: 0 1rem; + } +} + +/* Footer */ +footer { + margin-top: 2rem; +} + +/* Footer Contact Block */ +.footer-contact-block { + background-color: var(--color-primary); + border-radius: 35px; + max-width: 1328px; + margin: 0 auto 2rem; + padding: 2.5rem 3rem; + text-align: center; +} + +.footer-contact-title { + color: var(--color-white); + font-size: 25px; + font-weight: 700; + margin-bottom: 2.5rem; +} + +.footer-contact-phrases { + margin-bottom: 2.5rem; +} + +.footer-contact-phrases p { + color: var(--color-white); + font-size: 16px; + margin-bottom: 0.5rem; +} + +/* Footer Partners Block */ +.footer-partners-block { + padding: 2rem; + text-align: center; +} + +.footer-partners-block img { + max-width: 1168px; + width: 100%; + height: auto; +} + +.footer-partners-block .partners-desktop { + display: block; + margin: 0 auto; +} + +.footer-partners-block .partners-mobile { + display: none; + margin: 0 auto; +} + +@media (max-width: 480px) { + .footer-partners-block .partners-desktop { + display: none; + } + + .footer-partners-block .partners-mobile { + display: block; + max-width: 344px; + } +} + +/* Footer Main */ +.footer-main { + height: 152px; +} + +.footer-container { + display: flex; + height: 152px; +} + +.footer-left, +.footer-center { + background-color: var(--color-primary); +} + +.footer-right { + background-color: var(--color-secondary); +} + +.footer-left { + flex: 0 0 200px; + display: flex; + align-items: center; + justify-content: center; + padding: 2rem; +} + +.footer-logo img { + height: 80px; + width: auto; +} + +.footer-logo-horizontal { + display: none; +} + +.footer-center { + flex: 1; + display: flex; + align-items: center; + justify-content: center; + gap: 2rem; + padding: 2rem; +} + +.footer-nav { + display: flex; + flex-direction: row; + gap: 2rem; +} + +.footer-nav a { + color: var(--color-white); + text-decoration: none; + font-size: 14px; + transition: opacity 0.2s; +} + +.footer-nav a:hover { + opacity: 0.8; +} + +.footer-social { + display: flex; + gap: 1rem; +} + +.footer-social .social-link img { + height: 24px; + width: auto; + transition: opacity 0.2s; +} + +.footer-social .social-link:hover img { + opacity: 0.8; +} + +.footer-right { + flex: 0 0 300px; + display: flex; + flex-direction: column; + justify-content: center; + padding: 1rem 1.5rem; + position: relative; +} + +.footer-cta { + text-align: center; +} + +.footer-cta-title { + color: var(--color-white); + font-size: 13px; + font-weight: normal; + margin-bottom: 0.25rem; +} + +.footer-cta-contact { + color: var(--color-white); + font-size: 12px; + font-weight: 600; +} + +.footer-copyright { + color: var(--color-white); + font-size: 10px; + text-align: right; + position: absolute; + bottom: 0.5rem; + right: 1rem; +} + +.footer-copyright-mobile { + display: none; +} + +a { + color: #00e; + text-decoration: none; +} + +/* Page Footer Section (réutilisable) */ +.page-footer-section { + margin-top: 4rem; + text-align: center; +} + +.page-footer-title { + font-size: 30px; + font-weight: 700; + color: var(--color-secondary); + margin-bottom: 1rem; +} + +.page-footer-content { + max-width: 700px; + margin: 0 auto; + font-size: 18px; + line-height: 1.6; +} + +/* =========================================== + RESPONSIVE STYLES + =========================================== */ + +/* Tablet - 1024px */ +@media (max-width: 1024px) { + /* Hero */ + .hero { + height: 300px; + padding-top: 40px; + } + + .hero-headline .text-primary { + font-size: 30px; + } + + .hero-headline .text-highlight { + font-size: 38px; + } + + /* Search Block */ + .search-block { + height: auto; + margin: -40px 1rem 0; + padding: 1.5rem; + border-radius: 20px; + } + + .search-title { + font-size: 20px; + margin-bottom: 1rem; + } + + .search-form { + flex-direction: column; + align-items: stretch; + gap: 1rem; + } + + .form-group-locations { + display: flex; + flex-direction: column; + position: relative; + gap: 0.5rem; + } + + .form-group-locations .swap-btn { + position: absolute; + right: 0.75rem; + top: calc(50% + 0.75rem); + transform: translateY(-50%) rotate(90deg); + margin: 0; + z-index: 5; + } + + .form-group-row { + display: flex; + gap: 1rem; + } + + .search-btn { + width: 100%; + justify-content: center; + } + + /* Page content */ + .page-solutions, + .page-conducteur, + .page-entreprise, + .page-quisommesnous, + .page-default { + padding: 2rem 1rem; + } + + .page-title { + font-size: 24px; + margin-bottom: 2rem; + } + + /* Hero sections for inner pages */ + .conducteur-hero, + .entreprise-hero, + .quisommesnous-hero { + height: 250px; + } + + /* Conducteur content */ + .conducteur-content { + flex-direction: column; + } + + .conducteur-image { + width: 100%; + max-width: 400px; + margin: 0 auto; + } + + /* Etapes section */ + .conducteur-etapes-section { + flex-direction: column; + } + + .conducteur-etapes { + max-width: 100%; + } + + .etapes-title { + margin-left: 0; + text-align: center; + } + + .etapes-list { + margin: 0 2rem; + } + + .etape-arrow-right { + right: -35px; + } + + .etape-arrow-left { + left: -35px; + } + + .etape-arrow img { + width: 50px; + } + + .etape-block { + margin-left: 0 !important; + margin-right: 0 !important; + } + + .plus-infos { + position: static; + width: 100%; + max-width: 400px; + margin: 2rem auto 0; + } + + /* Entreprise */ + .entreprise-avantages { + grid-template-columns: 1fr; + gap: 1.5rem; + } + + .avantage-block { + width: 100%; + max-width: 400px; + margin: 0 auto; + } + + .entreprise-engagements { + flex-direction: column; + gap: 1.5rem; + } + + .engagements-column { + width: 100%; + margin-top: 0 !important; + } + + .engagement-block { + width: 100%; + max-width: 400px; + margin: 0 auto; + } + + /* Qui sommes nous */ + .quisommesnous-content { + flex-direction: column-reverse; + gap: 2rem; + } + + .quisommesnous-text { + max-width: 100%; + } + + .quisommesnous-image { + width: calc(100% - 2rem); + max-width: none; + margin: 0 1rem; + padding: 0; + } + + .quisommesnous-savoirplus { + max-width: 100%; + } + + /* Video sections */ + .conducteur-video-container, + .video-container { + max-width: 100%; + } + + /* Contact form */ + .contact-form { + max-width: 100%; + padding: 0 1rem; + } + + .contact-form-row { + flex-direction: column; + gap: 0; + } + + /* Footer */ + .footer-contact-block { + margin: 0 1rem 2rem; + padding: 2rem 1.5rem; + border-radius: 20px; + } + + .footer-contact-title { + font-size: 20px; + } + + .footer-container { + flex-direction: column; + height: auto; + } + + .footer-left { + flex: none; + width: 100%; + padding: 0.5rem 1.5rem; + order: 2; + display: flex; + justify-content: center; + } + + .footer-logo-vertical { + display: none; + } + + .footer-logo-horizontal { + display: block; + width: 100%; + max-width: 350px; + height: auto; + } + + .footer-center { + flex-direction: column; + gap: 1.5rem; + padding: 1.5rem; + text-align: center; + order: 3; + } + + .footer-nav { + flex-direction: column; + gap: 1rem; + } + + .footer-right { + flex: none; + width: 100%; + padding: 1.5rem; + order: 1; + } + + .footer-right .footer-copyright { + display: none; + } + + .footer-copyright-mobile { + display: block; + position: static; + text-align: center; + margin-top: 1rem; + } + + /* Page footer section */ + .page-footer-section { + margin-top: 2rem; + } + + .page-footer-title { + font-size: 24px; + padding: 0 1rem; + } + + .page-footer-content { + padding: 0 1rem; + } +} + +/* Mobile - 600px */ +@media (max-width: 600px) { + /* Hero */ + .hero { + height: 220px; + padding-top: 30px; + } + + .hero-headline .text-primary { + font-size: 22px; + } + + .hero-headline .text-highlight { + font-size: 28px; + } + + /* Search Block */ + .search-block { + margin: -30px 0.75rem 0; + padding: 1rem; + border-radius: 15px; + } + + .search-title { + font-size: 16px; + } + + /* Video block */ + .video-block { + padding: 2rem 1rem; + } + + .video-title { + font-size: 20px; + } + + /* Contact block */ + .contact-block { + margin: 1rem 0.75rem; + padding: 1.5rem 1rem; + border-radius: 20px; + } + + .contact-title { + font-size: 20px; + margin-bottom: 1.5rem; + } + + .contact-btn { + width: 100%; + max-width: 300px; + } + + /* Inner page heroes */ + .conducteur-hero, + .entreprise-hero, + .quisommesnous-hero { + height: 180px; + border-radius: 0 0 20px 20px; + } + + /* Page title */ + .page-title { + font-size: 20px; + } + + /* Etapes */ + .etapes-title { + font-size: 20px; + margin-left: 0; + } + + .etape-block { + padding: 1rem; + } + + .etape-title { + font-size: 16px; + } + + .etape-text { + font-size: 14px; + } + + /* Plus infos */ + .plus-infos { + padding: 1.5rem; + } + + .plus-infos-title { + font-size: 20px; + } + + .plus-infos-text { + font-size: 16px; + } + + /* Avantages */ + .avantage-block { + padding: 1rem; + } + + .avantage-title { + font-size: 16px; + } + + .avantage-text { + font-size: 14px; + } + + /* Engagements */ + .engagement-block { + padding: 1rem; + } + + .engagement-number { + font-size: 60px; + } + + .engagement-title { + font-size: 16px; + } + + .engagement-text { + font-size: 14px; + } + + /* Qui sommes nous */ + .quisommesnous-text { + font-size: 16px; + } + + .savoirplus-link { + font-size: 14px; + } + + /* Footer */ + .footer-contact-block { + margin: 0 0.75rem 1.5rem; + padding: 1.5rem 1rem; + } + + .footer-contact-title { + font-size: 18px; + margin-bottom: 1.5rem; + } + + .footer-contact-phrases p { + font-size: 14px; + } + + .footer-logo img { + height: 60px; + } + + .footer-nav a { + font-size: 12px; + } + + /* Page footer */ + .page-footer-title { + font-size: 20px; + } + + .page-footer-content { + font-size: 16px; + } +} diff --git a/themes/mms43/assets/images/logos/Logo Facebook.png b/themes/mms43/assets/images/logos/Logo Facebook.png new file mode 100644 index 0000000..58a808b Binary files /dev/null and b/themes/mms43/assets/images/logos/Logo Facebook.png differ diff --git a/themes/mms43/assets/images/logos/Logo Linkedin.png b/themes/mms43/assets/images/logos/Logo Linkedin.png new file mode 100644 index 0000000..26add04 Binary files /dev/null and b/themes/mms43/assets/images/logos/Logo Linkedin.png differ diff --git a/themes/mms43/assets/images/logos/Logo_MMS43-Defonce_Horizontal.svg b/themes/mms43/assets/images/logos/Logo_MMS43-Defonce_Horizontal.svg new file mode 100644 index 0000000..e6c13c2 --- /dev/null +++ b/themes/mms43/assets/images/logos/Logo_MMS43-Defonce_Horizontal.svg @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/themes/mms43/assets/images/logos/Logo_MMS43_Vertical_Defonce.svg b/themes/mms43/assets/images/logos/Logo_MMS43_Vertical_Defonce.svg new file mode 100644 index 0000000..8a676e7 --- /dev/null +++ b/themes/mms43/assets/images/logos/Logo_MMS43_Vertical_Defonce.svg @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/themes/mms43/assets/images/picto/.DS_Store b/themes/mms43/assets/images/picto/.DS_Store new file mode 100644 index 0000000..5008ddf Binary files /dev/null and b/themes/mms43/assets/images/picto/.DS_Store differ diff --git a/themes/mms43/assets/images/picto/Entreprise - Avantage environnemental.svg b/themes/mms43/assets/images/picto/Entreprise - Avantage environnemental.svg new file mode 100644 index 0000000..65d8dbb --- /dev/null +++ b/themes/mms43/assets/images/picto/Entreprise - Avantage environnemental.svg @@ -0,0 +1,3 @@ + + + diff --git a/themes/mms43/assets/images/picto/Entreprise - Avantage financier.svg b/themes/mms43/assets/images/picto/Entreprise - Avantage financier.svg new file mode 100644 index 0000000..89b083b --- /dev/null +++ b/themes/mms43/assets/images/picto/Entreprise - Avantage financier.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/themes/mms43/assets/images/picto/Entreprise - Avantage humain.svg b/themes/mms43/assets/images/picto/Entreprise - Avantage humain.svg new file mode 100644 index 0000000..2c7480d --- /dev/null +++ b/themes/mms43/assets/images/picto/Entreprise - Avantage humain.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/themes/mms43/assets/images/picto/Entreprise - Covoit.svg b/themes/mms43/assets/images/picto/Entreprise - Covoit.svg new file mode 100644 index 0000000..3f54d25 --- /dev/null +++ b/themes/mms43/assets/images/picto/Entreprise - Covoit.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/themes/mms43/assets/images/picto/Entreprise - Lever les freins.svg b/themes/mms43/assets/images/picto/Entreprise - Lever les freins.svg new file mode 100644 index 0000000..9a4bca5 --- /dev/null +++ b/themes/mms43/assets/images/picto/Entreprise - Lever les freins.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/themes/mms43/assets/images/picto/Entreprise - Mutualiser solutions.svg b/themes/mms43/assets/images/picto/Entreprise - Mutualiser solutions.svg new file mode 100644 index 0000000..8b72771 --- /dev/null +++ b/themes/mms43/assets/images/picto/Entreprise - Mutualiser solutions.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/themes/mms43/assets/images/picto/Entreprise - Optimiser mobilite.svg b/themes/mms43/assets/images/picto/Entreprise - Optimiser mobilite.svg new file mode 100644 index 0000000..e918d2b --- /dev/null +++ b/themes/mms43/assets/images/picto/Entreprise - Optimiser mobilite.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/themes/mms43/assets/images/picto/Entreprise - Sensibiliser.svg b/themes/mms43/assets/images/picto/Entreprise - Sensibiliser.svg new file mode 100644 index 0000000..d82b589 --- /dev/null +++ b/themes/mms43/assets/images/picto/Entreprise - Sensibiliser.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/themes/mms43/assets/images/picto/Picto - Conducteur solidaire - Fleche orange.svg b/themes/mms43/assets/images/picto/Picto - Conducteur solidaire - Fleche orange.svg new file mode 100644 index 0000000..e524479 --- /dev/null +++ b/themes/mms43/assets/images/picto/Picto - Conducteur solidaire - Fleche orange.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/themes/mms43/assets/images/picto/Picto - Conducteur solidaire - Fleche verte.svg b/themes/mms43/assets/images/picto/Picto - Conducteur solidaire - Fleche verte.svg new file mode 100644 index 0000000..509df01 --- /dev/null +++ b/themes/mms43/assets/images/picto/Picto - Conducteur solidaire - Fleche verte.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/themes/mms43/assets/images/picto/Picto - Conducteur solidaire - Indemnisation.svg b/themes/mms43/assets/images/picto/Picto - Conducteur solidaire - Indemnisation.svg new file mode 100644 index 0000000..645b7d2 --- /dev/null +++ b/themes/mms43/assets/images/picto/Picto - Conducteur solidaire - Indemnisation.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/themes/mms43/assets/images/picto/Picto - Conducteur solidaire - Mise en relation.svg b/themes/mms43/assets/images/picto/Picto - Conducteur solidaire - Mise en relation.svg new file mode 100644 index 0000000..e280f1f --- /dev/null +++ b/themes/mms43/assets/images/picto/Picto - Conducteur solidaire - Mise en relation.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/themes/mms43/assets/images/picto/Picto - Conducteur solidaire - Prise de contact .svg b/themes/mms43/assets/images/picto/Picto - Conducteur solidaire - Prise de contact .svg new file mode 100644 index 0000000..752bacb --- /dev/null +++ b/themes/mms43/assets/images/picto/Picto - Conducteur solidaire - Prise de contact .svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/themes/mms43/assets/images/picto/arrow_back_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg b/themes/mms43/assets/images/picto/arrow_back_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg new file mode 100644 index 0000000..1ea8776 --- /dev/null +++ b/themes/mms43/assets/images/picto/arrow_back_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/themes/mms43/assets/images/picto/arrow_right_alt_24dp_1F1F1F_FILL1_wght400_GRAD0_opsz24.svg b/themes/mms43/assets/images/picto/arrow_right_alt_24dp_1F1F1F_FILL1_wght400_GRAD0_opsz24.svg new file mode 100644 index 0000000..cd74706 --- /dev/null +++ b/themes/mms43/assets/images/picto/arrow_right_alt_24dp_1F1F1F_FILL1_wght400_GRAD0_opsz24.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/themes/mms43/assets/images/picto/calendar_today_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg b/themes/mms43/assets/images/picto/calendar_today_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg new file mode 100644 index 0000000..34f71db --- /dev/null +++ b/themes/mms43/assets/images/picto/calendar_today_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/themes/mms43/assets/images/picto/call_24dp_1F1F1F_FILL1_wght400_GRAD0_opsz24.svg b/themes/mms43/assets/images/picto/call_24dp_1F1F1F_FILL1_wght400_GRAD0_opsz24.svg new file mode 100644 index 0000000..b282f93 --- /dev/null +++ b/themes/mms43/assets/images/picto/call_24dp_1F1F1F_FILL1_wght400_GRAD0_opsz24.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/themes/mms43/assets/images/picto/check_box_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg b/themes/mms43/assets/images/picto/check_box_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg new file mode 100644 index 0000000..776f6ab --- /dev/null +++ b/themes/mms43/assets/images/picto/check_box_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/themes/mms43/assets/images/picto/check_box_outline_blank_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg b/themes/mms43/assets/images/picto/check_box_outline_blank_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg new file mode 100644 index 0000000..7aef77b --- /dev/null +++ b/themes/mms43/assets/images/picto/check_box_outline_blank_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/themes/mms43/assets/images/picto/chevron_forward_24dp_1F1F1F_FILL1_wght400_GRAD0_opsz24.svg b/themes/mms43/assets/images/picto/chevron_forward_24dp_1F1F1F_FILL1_wght400_GRAD0_opsz24.svg new file mode 100644 index 0000000..976b2ae --- /dev/null +++ b/themes/mms43/assets/images/picto/chevron_forward_24dp_1F1F1F_FILL1_wght400_GRAD0_opsz24.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/themes/mms43/assets/images/picto/close_34dp_1F1F1F_FILL0_wght400_GRAD0_opsz40.svg b/themes/mms43/assets/images/picto/close_34dp_1F1F1F_FILL0_wght400_GRAD0_opsz40.svg new file mode 100644 index 0000000..a5aafd7 --- /dev/null +++ b/themes/mms43/assets/images/picto/close_34dp_1F1F1F_FILL0_wght400_GRAD0_opsz40.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/themes/mms43/assets/images/picto/directions_bus_24dp_1F1F1F_FILL1_wght400_GRAD0_opsz24.svg b/themes/mms43/assets/images/picto/directions_bus_24dp_1F1F1F_FILL1_wght400_GRAD0_opsz24.svg new file mode 100644 index 0000000..33549d1 --- /dev/null +++ b/themes/mms43/assets/images/picto/directions_bus_24dp_1F1F1F_FILL1_wght400_GRAD0_opsz24.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/themes/mms43/assets/images/picto/directions_walk_24dp_1F1F1F_FILL1_wght400_GRAD0_opsz24.svg b/themes/mms43/assets/images/picto/directions_walk_24dp_1F1F1F_FILL1_wght400_GRAD0_opsz24.svg new file mode 100644 index 0000000..525b114 --- /dev/null +++ b/themes/mms43/assets/images/picto/directions_walk_24dp_1F1F1F_FILL1_wght400_GRAD0_opsz24.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/themes/mms43/assets/images/picto/download_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg b/themes/mms43/assets/images/picto/download_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg new file mode 100644 index 0000000..77e5a2c --- /dev/null +++ b/themes/mms43/assets/images/picto/download_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/themes/mms43/assets/images/picto/keyboard_arrow_up_24dp_1F1F1F_FILL1_wght400_GRAD0_opsz24.svg b/themes/mms43/assets/images/picto/keyboard_arrow_up_24dp_1F1F1F_FILL1_wght400_GRAD0_opsz24.svg new file mode 100644 index 0000000..d7faaa7 --- /dev/null +++ b/themes/mms43/assets/images/picto/keyboard_arrow_up_24dp_1F1F1F_FILL1_wght400_GRAD0_opsz24.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/themes/mms43/assets/images/picto/location_on_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg b/themes/mms43/assets/images/picto/location_on_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg new file mode 100644 index 0000000..891ab35 --- /dev/null +++ b/themes/mms43/assets/images/picto/location_on_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/themes/mms43/assets/images/picto/menu_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg b/themes/mms43/assets/images/picto/menu_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg new file mode 100644 index 0000000..4dafe61 --- /dev/null +++ b/themes/mms43/assets/images/picto/menu_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/themes/mms43/assets/images/picto/schedule_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg b/themes/mms43/assets/images/picto/schedule_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg new file mode 100644 index 0000000..e80c419 --- /dev/null +++ b/themes/mms43/assets/images/picto/schedule_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/themes/mms43/assets/images/picto/search_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg b/themes/mms43/assets/images/picto/search_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg new file mode 100644 index 0000000..98eaa3e --- /dev/null +++ b/themes/mms43/assets/images/picto/search_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/themes/mms43/assets/images/picto/sync_alt_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg b/themes/mms43/assets/images/picto/sync_alt_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg new file mode 100644 index 0000000..45ffa1b --- /dev/null +++ b/themes/mms43/assets/images/picto/sync_alt_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/themes/mms43/assets/images/visuels/.DS_Store b/themes/mms43/assets/images/visuels/.DS_Store new file mode 100644 index 0000000..1fe7ce5 Binary files /dev/null and b/themes/mms43/assets/images/visuels/.DS_Store differ diff --git a/themes/mms43/assets/images/visuels/Accompagnement-mobilite.png b/themes/mms43/assets/images/visuels/Accompagnement-mobilite.png new file mode 100644 index 0000000..3499627 Binary files /dev/null and b/themes/mms43/assets/images/visuels/Accompagnement-mobilite.png differ diff --git a/themes/mms43/assets/images/visuels/Auto-ecole-Eric-Soudan.png b/themes/mms43/assets/images/visuels/Auto-ecole-Eric-Soudan.png new file mode 100644 index 0000000..943be1e Binary files /dev/null and b/themes/mms43/assets/images/visuels/Auto-ecole-Eric-Soudan.png differ diff --git a/themes/mms43/assets/images/visuels/Conducteur-solidaire.png b/themes/mms43/assets/images/visuels/Conducteur-solidaire.png new file mode 100644 index 0000000..eab9f20 Binary files /dev/null and b/themes/mms43/assets/images/visuels/Conducteur-solidaire.png differ diff --git a/themes/mms43/assets/images/visuels/Desktop - Bandeau logos.png b/themes/mms43/assets/images/visuels/Desktop - Bandeau logos.png new file mode 100644 index 0000000..e74f4f4 Binary files /dev/null and b/themes/mms43/assets/images/visuels/Desktop - Bandeau logos.png differ diff --git a/themes/mms43/assets/images/visuels/Garage-solidaire-Eric-Soudan.png b/themes/mms43/assets/images/visuels/Garage-solidaire-Eric-Soudan.png new file mode 100644 index 0000000..3d1caaf Binary files /dev/null and b/themes/mms43/assets/images/visuels/Garage-solidaire-Eric-Soudan.png differ diff --git a/themes/mms43/assets/images/visuels/Location-vehicule.png b/themes/mms43/assets/images/visuels/Location-vehicule.png new file mode 100644 index 0000000..39c5080 Binary files /dev/null and b/themes/mms43/assets/images/visuels/Location-vehicule.png differ diff --git a/themes/mms43/assets/images/visuels/Mobile - Bandeau logos.png b/themes/mms43/assets/images/visuels/Mobile - Bandeau logos.png new file mode 100644 index 0000000..86ae1ad Binary files /dev/null and b/themes/mms43/assets/images/visuels/Mobile - Bandeau logos.png differ diff --git a/themes/mms43/assets/images/visuels/Photo equipe.jpg b/themes/mms43/assets/images/visuels/Photo equipe.jpg new file mode 100644 index 0000000..9fcc9e8 Binary files /dev/null and b/themes/mms43/assets/images/visuels/Photo equipe.jpg differ diff --git a/themes/mms43/assets/images/visuels/Velo-Ecole-Eric-Soudan.png b/themes/mms43/assets/images/visuels/Velo-Ecole-Eric-Soudan.png new file mode 100644 index 0000000..98d7473 Binary files /dev/null and b/themes/mms43/assets/images/visuels/Velo-Ecole-Eric-Soudan.png differ diff --git a/themes/mms43/assets/images/visuels/covoit.png b/themes/mms43/assets/images/visuels/covoit.png new file mode 100644 index 0000000..925a620 Binary files /dev/null and b/themes/mms43/assets/images/visuels/covoit.png differ diff --git a/themes/mms43/assets/images/visuels/covoiturage.svg b/themes/mms43/assets/images/visuels/covoiturage.svg new file mode 100644 index 0000000..a31d7d6 --- /dev/null +++ b/themes/mms43/assets/images/visuels/covoiturage.svg @@ -0,0 +1,276 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/themes/mms43/assets/images/visuels/engagez.jpg b/themes/mms43/assets/images/visuels/engagez.jpg new file mode 100644 index 0000000..c3ce7f4 Binary files /dev/null and b/themes/mms43/assets/images/visuels/engagez.jpg differ diff --git a/themes/mms43/assets/images/visuels/incontournable-haut-pays-velay.jpg b/themes/mms43/assets/images/visuels/incontournable-haut-pays-velay.jpg new file mode 100644 index 0000000..8f2d7d2 Binary files /dev/null and b/themes/mms43/assets/images/visuels/incontournable-haut-pays-velay.jpg differ diff --git a/themes/mms43/assets/images/visuels/les-membres-de-la-maison-de-la-mobilite-solidaire-et-de-solidarauto-43-devant-le-parc-de-vehicules-electriques-photo-fabrice-furnon-1732822741.jpg b/themes/mms43/assets/images/visuels/les-membres-de-la-maison-de-la-mobilite-solidaire-et-de-solidarauto-43-devant-le-parc-de-vehicules-electriques-photo-fabrice-furnon-1732822741.jpg new file mode 100644 index 0000000..37d77a6 Binary files /dev/null and b/themes/mms43/assets/images/visuels/les-membres-de-la-maison-de-la-mobilite-solidaire-et-de-solidarauto-43-devant-le-parc-de-vehicules-electriques-photo-fabrice-furnon-1732822741.jpg differ diff --git a/themes/mms43/assets/images/visuels/visuel-mms43.svg b/themes/mms43/assets/images/visuels/visuel-mms43.svg new file mode 100644 index 0000000..15eb51a --- /dev/null +++ b/themes/mms43/assets/images/visuels/visuel-mms43.svg @@ -0,0 +1,1173 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/themes/mms43/assets/js/main.js b/themes/mms43/assets/js/main.js new file mode 100644 index 0000000..4e96557 --- /dev/null +++ b/themes/mms43/assets/js/main.js @@ -0,0 +1,15 @@ +document.addEventListener('DOMContentLoaded', function() { + // Solution cards - open with toggle button + document.querySelectorAll('.solution-toggle').forEach(function(btn) { + btn.addEventListener('click', function() { + this.closest('.solution-card').classList.add('open'); + }); + }); + + // Solution cards - close with X button + document.querySelectorAll('.solution-close').forEach(function(btn) { + btn.addEventListener('click', function() { + this.closest('.solution-card').classList.remove('open'); + }); + }); +}); \ No newline at end of file diff --git a/themes/mms43/assets/videos/capsule_covoiturage.mp4 b/themes/mms43/assets/videos/capsule_covoiturage.mp4 new file mode 100644 index 0000000..df5ec63 Binary files /dev/null and b/themes/mms43/assets/videos/capsule_covoiturage.mp4 differ diff --git a/themes/mms43/assets/videos/video_presentation_mms43.mp4 b/themes/mms43/assets/videos/video_presentation_mms43.mp4 new file mode 100644 index 0000000..e0d8ece Binary files /dev/null and b/themes/mms43/assets/videos/video_presentation_mms43.mp4 differ diff --git a/themes/mms43/hugo.toml b/themes/mms43/hugo.toml new file mode 100644 index 0000000..1410ef9 --- /dev/null +++ b/themes/mms43/hugo.toml @@ -0,0 +1,4 @@ +[module] + [module.hugoVersion] + extended = false + min = '0.146.0' diff --git a/themes/mms43/layouts/_default/single.html b/themes/mms43/layouts/_default/single.html new file mode 100644 index 0000000..11d5abf --- /dev/null +++ b/themes/mms43/layouts/_default/single.html @@ -0,0 +1,9 @@ +{{ define "main" }} +
+

{{ .Title }}

+ +
+ {{ .Content }} +
+
+{{ end }} diff --git a/themes/mms43/layouts/_partials/footer.html b/themes/mms43/layouts/_partials/footer.html new file mode 100644 index 0000000..968713a --- /dev/null +++ b/themes/mms43/layouts/_partials/footer.html @@ -0,0 +1,66 @@ + + + + + diff --git a/themes/mms43/layouts/_partials/head.html b/themes/mms43/layouts/_partials/head.html new file mode 100644 index 0000000..02c2240 --- /dev/null +++ b/themes/mms43/layouts/_partials/head.html @@ -0,0 +1,5 @@ + + +{{ if .IsHome }}{{ site.Title }}{{ else }}{{ printf "%s | %s" .Title site.Title }}{{ end }} +{{ partialCached "head/css.html" . }} +{{ partialCached "head/js.html" . }} diff --git a/themes/mms43/layouts/_partials/head/css.html b/themes/mms43/layouts/_partials/head/css.html new file mode 100644 index 0000000..d76d23a --- /dev/null +++ b/themes/mms43/layouts/_partials/head/css.html @@ -0,0 +1,9 @@ +{{- with resources.Get "css/main.css" }} + {{- if hugo.IsDevelopment }} + + {{- else }} + {{- with . | minify | fingerprint }} + + {{- end }} + {{- end }} +{{- end }} diff --git a/themes/mms43/layouts/_partials/head/js.html b/themes/mms43/layouts/_partials/head/js.html new file mode 100644 index 0000000..16ffbed --- /dev/null +++ b/themes/mms43/layouts/_partials/head/js.html @@ -0,0 +1,16 @@ +{{- with resources.Get "js/main.js" }} + {{- $opts := dict + "minify" (not hugo.IsDevelopment) + "sourceMap" (cond hugo.IsDevelopment "external" "") + "targetPath" "js/main.js" + }} + {{- with . | js.Build $opts }} + {{- if hugo.IsDevelopment }} + + {{- else }} + {{- with . | fingerprint }} + + {{- end }} + {{- end }} + {{- end }} +{{- end }} diff --git a/themes/mms43/layouts/_partials/header.html b/themes/mms43/layouts/_partials/header.html new file mode 100644 index 0000000..a0a2cdf --- /dev/null +++ b/themes/mms43/layouts/_partials/header.html @@ -0,0 +1,107 @@ +
+ + + + +
+ {{ $phoneIcon := resources.Get "images/picto/call_24dp_1F1F1F_FILL1_wght400_GRAD0_opsz24.svg" }} + {{ if $phoneIcon }} +
+ Téléphone +
+ {{ end }} +
+ {{ site.Params.phone | default "04 XX XX XX XX" }} + {{ site.Params.phoneHours | default "(du lundi au vendredi, 9h - 17h)" }} +
+
+ + + + {{ $phoneIcon := resources.Get "images/picto/call_24dp_1F1F1F_FILL1_wght400_GRAD0_opsz24.svg" }} + {{ if $phoneIcon }} +
+ Téléphone +
+ {{ end }} +
+ {{ site.Params.phone | default "04 XX XX XX XX" }} + {{ site.Params.phoneHours | default "(du lundi au vendredi, 9h - 17h)" }} +
+
+ + + +
+ + +
+ + + + +
+

{{ site.Params.footer.ctaTitle | default "Organisez vos déplacements en Haute-Loire" }}

+

{{ site.Params.phone }} / {{ site.Params.email }}

+
+
+ + diff --git a/themes/mms43/layouts/_partials/menu.html b/themes/mms43/layouts/_partials/menu.html new file mode 100644 index 0000000..14245b5 --- /dev/null +++ b/themes/mms43/layouts/_partials/menu.html @@ -0,0 +1,51 @@ +{{- /* +Renders a menu for the given menu ID. + +@context {page} page The current page. +@context {string} menuID The menu ID. + +@example: {{ partial "menu.html" (dict "menuID" "main" "page" .) }} +*/}} + +{{- $page := .page }} +{{- $menuID := .menuID }} + +{{- with index site.Menus $menuID }} + +{{- end }} + +{{- define "_partials/inline/menu/walk.html" }} + {{- $page := .page }} + {{- range .menuEntries }} + {{- $attrs := dict "href" .URL }} + {{- if $page.IsMenuCurrent .Menu . }} + {{- $attrs = merge $attrs (dict "class" "active" "aria-current" "page") }} + {{- else if $page.HasMenuCurrent .Menu .}} + {{- $attrs = merge $attrs (dict "class" "ancestor" "aria-current" "true") }} + {{- end }} + {{- $name := .Name }} + {{- with .Identifier }} + {{- with T . }} + {{- $name = . }} + {{- end }} + {{- end }} +
  • + {{ $name }} + {{- with .Children }} + + {{- end }} +
  • + {{- end }} +{{- end }} diff --git a/themes/mms43/layouts/_partials/terms.html b/themes/mms43/layouts/_partials/terms.html new file mode 100644 index 0000000..8a6ebec --- /dev/null +++ b/themes/mms43/layouts/_partials/terms.html @@ -0,0 +1,23 @@ +{{- /* +For a given taxonomy, renders a list of terms assigned to the page. + +@context {page} page The current page. +@context {string} taxonomy The taxonomy. + +@example: {{ partial "terms.html" (dict "taxonomy" "tags" "page" .) }} +*/}} + +{{- $page := .page }} +{{- $taxonomy := .taxonomy }} + +{{- with $page.GetTerms $taxonomy }} + {{- $label := (index . 0).Parent.LinkTitle }} +
    +
    {{ $label }}:
    + +
    +{{- end }} diff --git a/themes/mms43/layouts/baseof.html b/themes/mms43/layouts/baseof.html new file mode 100644 index 0000000..39dcbec --- /dev/null +++ b/themes/mms43/layouts/baseof.html @@ -0,0 +1,17 @@ + + + + {{ partial "head.html" . }} + + +
    + {{ partial "header.html" . }} +
    +
    + {{ block "main" . }}{{ end }} +
    + + + diff --git a/themes/mms43/layouts/home.html b/themes/mms43/layouts/home.html new file mode 100644 index 0000000..0993cdc --- /dev/null +++ b/themes/mms43/layouts/home.html @@ -0,0 +1,81 @@ +{{ define "main" }} + {{ $heroBg := resources.Get "images/visuels/incontournable-haut-pays-velay.jpg" }} +
    +

    + {{ site.Params.hero.line1before }} {{ site.Params.hero.line1highlight }} {{ site.Params.hero.line1after }}
    + {{ site.Params.hero.line2highlight }} {{ site.Params.hero.line2after }} +

    +
    + +
    +

    {{ site.Params.search.title }}

    +
    + {{ $iconLocation := resources.Get "images/picto/location_on_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg" }} + {{ $iconCalendar := resources.Get "images/picto/calendar_today_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg" }} + {{ $iconSchedule := resources.Get "images/picto/schedule_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg" }} + {{ $iconSearch := resources.Get "images/picto/search_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg" }} + + {{ $iconSwap := resources.Get "images/picto/sync_alt_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg" }} + +
    +
    + + +
    + + + +
    + + +
    +
    + +
    +
    + + +
    + +
    + + +
    +
    + + +
    +
    + +
    +

    {{ site.Params.video.title }}

    + {{ $video := resources.Get "videos/video_presentation_mms43.mp4" }} + {{ if $video }} +
    + +
    + {{ end }} +
    + + {{ .Content }} +{{ end }} diff --git a/themes/mms43/layouts/page.html b/themes/mms43/layouts/page.html new file mode 100644 index 0000000..5dbf606 --- /dev/null +++ b/themes/mms43/layouts/page.html @@ -0,0 +1,9 @@ +{{ define "main" }} +
    +

    {{ .Params.headline | default .Title }}

    + +
    + {{ .Content }} +
    +
    +{{ end }} diff --git a/themes/mms43/layouts/pages/devenez-conducteur-solidaire.html b/themes/mms43/layouts/pages/devenez-conducteur-solidaire.html new file mode 100644 index 0000000..5621214 --- /dev/null +++ b/themes/mms43/layouts/pages/devenez-conducteur-solidaire.html @@ -0,0 +1,101 @@ +{{ define "main" }} + {{ $heroImage := .Params.heroImage | default "images/visuels/Conducteur-solidaire.png" }} + {{ $heroBg := resources.Get $heroImage }} +
    +
    + +
    +

    {{ .Params.headline | default "Rejoignez la communauté des conducteurs solidaires !" }}

    + +
    + {{ $carImagePath := .Params.contentImage | default "images/visuels/covoiturage.svg" }} + {{ $carImage := resources.Get $carImagePath }} + {{ if $carImage }} +
    + Covoiturage +
    + {{ end }} +
    + {{ .Content }} +
    +
    + +
    + {{ $allResources := .Resources.Match "*.md" }} + {{ $etapes := where $allResources "Params.type" "!=" "page-footer" }} + {{ $arrowGreen := resources.Get "images/picto/Picto - Conducteur solidaire - Fleche verte.svg" }} + {{ $arrowOrange := resources.Get "images/picto/Picto - Conducteur solidaire - Fleche orange.svg" }} + {{ if $etapes }} +
    +

    {{ .Params.etapesTitle | default "Une démarche simple et pratique" }}

    +
    + {{ $sortedEtapes := sort $etapes "Params.weight" }} + {{ $total := len $sortedEtapes }} + {{ range $index, $etape := $sortedEtapes }} +
    + {{ if $etape.Params.icon }} + {{ $icon := resources.Get $etape.Params.icon }} + {{ if $icon }} +
    + +
    + {{ end }} + {{ end }} +
    +

    {{ $etape.Title }}

    +
    {{ $etape.Content }}
    +
    + {{ if lt (add $index 1) $total }} + {{ if eq (mod $index 2) 0 }} +
    + +
    + {{ else }} +
    + +
    + {{ end }} + {{ end }} +
    + {{ end }} +
    +
    + {{ end }} + +
    + {{ $downloadIcon := resources.Get "images/picto/Telechargez.svg" }} +

    {{ .Params.plusInfosTitle | default "Plus d'infos ?" }}

    +

    {{ .Params.plusInfosText | default "Vous avez des questions ? Vous souhaitez recevoir de la documentation imprimée ?" }}

    + Contactez-nous + + {{ if $downloadIcon }} + + {{ end }} + Ou téléchargez le dépliant d'information + +
    +
    + +
    +
    + {{ $videoPath := .Params.video | default "videos/capsule_covoiturage.mp4" }} + {{ $video := resources.Get $videoPath }} + {{ if $video }} + + {{ end }} +
    +
    + + {{ $pageFooter := where $allResources "Params.type" "page-footer" }} + {{ range $pageFooter }} + + {{ end }} +
    +{{ end }} diff --git a/themes/mms43/layouts/pages/engagez-votre-entreprise.html b/themes/mms43/layouts/pages/engagez-votre-entreprise.html new file mode 100644 index 0000000..c050673 --- /dev/null +++ b/themes/mms43/layouts/pages/engagez-votre-entreprise.html @@ -0,0 +1,103 @@ +{{ define "main" }} + {{ $heroImage := .Params.heroImage | default "images/visuels/engagez.jpg" }} + {{ $heroBg := resources.Get $heroImage }} +
    +
    + +
    +

    {{ .Params.headline | default "La mobilité, un enjeu RSE pour votre entreprise" }}

    + + {{ .Content }} + + {{ $allResources := .Resources.Match "*.md" }} + {{ $avantages := where $allResources "Params.type" "avantage" }} + {{ if $avantages }} +
    + {{ range sort $avantages "Params.weight" }} +
    + {{ if .Params.icon }} + {{ $icon := resources.Get .Params.icon }} + {{ if $icon }} +
    + +
    + {{ end }} + {{ end }} +

    {{ .Title }}

    +
    {{ .Content }}
    +
    + {{ end }} +
    + {{ end }} + +

    {{ .Params.engagementTitle | default "De plus en plus d'entreprises s'engagent, pourquoi pas vous ?" }}

    + + {{ $engagements := where $allResources "Params.type" "engagement" }} + {{ if $engagements }} + {{ $sortedEngagements := sort $engagements "Params.weight" }} +
    +
    + {{ range first 3 $sortedEngagements }} + + {{ end }} +
    +
    + {{ range after 3 $sortedEngagements }} + + {{ end }} + +
    + {{ $downloadIcon := resources.Get "images/picto/download_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg" }} +

    {{ .Params.plusInfosTitle | default "Plus d'infos ?" }}

    +

    {{ .Params.plusInfosText | default "Vous avez des questions ? Vous souhaitez recevoir de la documentation imprimée à mettre à disposition de vos publics ?" }}

    + Contactez-nous + + {{ if $downloadIcon }} + + {{ end }} + {{ .Params.plusInfosDownloadText | default "Ou téléchargez le dépliant d'informations Mobi'Conseil" }} + +
    +
    +
    + {{ end }} + +
    +
    + {{ $videoPath := .Params.video | default "videos/entreprise.mp4" }} + {{ $video := resources.Get $videoPath }} + {{ if $video }} + + {{ end }} +
    +
    +
    +{{ end }} diff --git a/themes/mms43/layouts/pages/nos-solutions-de-mobilite.html b/themes/mms43/layouts/pages/nos-solutions-de-mobilite.html new file mode 100644 index 0000000..7e670a7 --- /dev/null +++ b/themes/mms43/layouts/pages/nos-solutions-de-mobilite.html @@ -0,0 +1,47 @@ +{{ define "main" }} +
    +

    {{ .Params.headline }}

    + + {{ $iconChevron := resources.Get "images/picto/chevron_forward_24dp_1F1F1F_FILL1_wght400_GRAD0_opsz24.svg" }} + {{ $iconClose := resources.Get "images/picto/close_34dp_1F1F1F_FILL0_wght400_GRAD0_opsz40.svg" }} + +
    + {{ range sort (.Resources.Match "*.md") "Params.weight" }} +
    +
    +
    +

    {{ .Title }}

    +
    +
    + {{ if .Params.image }} + {{ $img := resources.Get .Params.image }} + {{ if $img }} + {{ .Title }} + {{ end }} + {{ end }} +
    + {{ if $iconChevron }}{{ end }} +
    +
    +
    +
    +
    + {{ if $iconClose }}{{ end }} +
    +
    +

    {{ .Content | plainify }}

    +
    +
    +
    + {{ end }} +
    + +
    + {{ $iconSearch := resources.Get "images/picto/search_24dp_1F1F1F_FILL0_wght400_GRAD0_opsz24.svg" }} + + {{ if $iconSearch }}{{ end }} + Rechercher un trajet + +
    +
    +{{ end }} diff --git a/themes/mms43/layouts/pages/qui-sommes-nous.html b/themes/mms43/layouts/pages/qui-sommes-nous.html new file mode 100644 index 0000000..8fb7192 --- /dev/null +++ b/themes/mms43/layouts/pages/qui-sommes-nous.html @@ -0,0 +1,40 @@ +{{ define "main" }} + {{ $heroImage := .Params.heroImage | default "images/visuels/Photo equipe.jpg" }} + {{ $heroBg := resources.Get $heroImage }} +
    +
    + +
    +

    {{ .Params.headline | default "Qu'est-ce que la Maison de la Mobilité Solidaire ?" }}

    + +
    +
    + {{ .Content }} +
    + {{ $visuel := resources.Get "images/visuels/visuel-mms43.svg" }} + {{ if $visuel }} +
    + Maison de la Mobilité Solidaire +
    + {{ end }} +
    + +
    + + {{ if .Params.savoirPlusLinks }} +
    +

    {{ .Params.savoirPlusTitle | default "Pour en savoir plus" }}

    + {{ $arrowIcon := resources.Get "images/picto/arrow_right_alt_24dp_1F1F1F_FILL1_wght400_GRAD0_opsz24.svg" }} + +
    + {{ end }} +{{ end }} diff --git a/themes/mms43/layouts/section.html b/themes/mms43/layouts/section.html new file mode 100644 index 0000000..50fc92d --- /dev/null +++ b/themes/mms43/layouts/section.html @@ -0,0 +1,8 @@ +{{ define "main" }} +

    {{ .Title }}

    + {{ .Content }} + {{ range .Pages }} +

    {{ .LinkTitle }}

    + {{ .Summary }} + {{ end }} +{{ end }} diff --git a/themes/mms43/layouts/shortcodes/contact-form.html b/themes/mms43/layouts/shortcodes/contact-form.html new file mode 100644 index 0000000..8c75642 --- /dev/null +++ b/themes/mms43/layouts/shortcodes/contact-form.html @@ -0,0 +1,76 @@ +{{ $action := .Get "action" | default "/api/contact" }} +{{ $buttonText := .Get "buttonText" | default "Envoyer" }} +{{ $lastnameLabel := .Get "lastnameLabel" | default "Nom" }} +{{ $firstnameLabel := .Get "firstnameLabel" | default "Prénom" }} +{{ $privacyText := .Get "privacyText" | default "La protection de vos données est au coeur de nos préoccupations. Celles-ci sont confidentielles et ne seront utilisées que dans le cadre de la mobilité solidaire. Vous pouvez à tout moment les modifier où demander à les faire supprimer de notre base de données." }} + +{{/* Récupérer les champs dynamiques : d'abord depuis le paramètre, sinon depuis le front matter */}} +{{ $fieldsParam := .Get "fields" }} +{{ $fields := slice }} +{{ if $fieldsParam }} + {{ $fields = transform.Unmarshal $fieldsParam }} +{{ else }} + {{ $fields = .Page.Params.formFields }} +{{ end }} + +
    +
    +
    + + +
    +
    + + +
    +
    + + {{/* Champs dynamiques */}} + {{ if $fields }} + {{ range $index, $field := $fields }} + {{ $fieldId := $field.name | default (printf "field_%d" $index) }} + {{ $fieldRequired := $field.required | default false }} + + {{ if eq $field.type "multicheckboxes" }} +
    + {{ $field.label }} +
    + {{ range $optIndex, $option := $field.options }} + + {{ end }} +
    +
    + {{ else if eq $field.type "textarea" }} +
    + + +
    + {{ else }} +
    + + +
    + {{ end }} + {{ end }} + {{ else }} + {{/* Champs par défaut si aucun champ dynamique n'est défini */}} +
    + + +
    +
    + + +
    +
    + + +
    + {{ end }} + + +

    {{ $privacyText }}

    +
    diff --git a/themes/mms43/layouts/taxonomy.html b/themes/mms43/layouts/taxonomy.html new file mode 100644 index 0000000..c2e7875 --- /dev/null +++ b/themes/mms43/layouts/taxonomy.html @@ -0,0 +1,7 @@ +{{ define "main" }} +

    {{ .Title }}

    + {{ .Content }} + {{ range .Pages }} +

    {{ .LinkTitle }}

    + {{ end }} +{{ end }} diff --git a/themes/mms43/layouts/term.html b/themes/mms43/layouts/term.html new file mode 100644 index 0000000..c2e7875 --- /dev/null +++ b/themes/mms43/layouts/term.html @@ -0,0 +1,7 @@ +{{ define "main" }} +

    {{ .Title }}

    + {{ .Content }} + {{ range .Pages }} +

    {{ .LinkTitle }}

    + {{ end }} +{{ end }} diff --git a/themes/mms43/static/favicon.ico b/themes/mms43/static/favicon.ico new file mode 100644 index 0000000..67f8b77 Binary files /dev/null and b/themes/mms43/static/favicon.ico differ