{% extends 'vitrine/lexend/layout.html.twig' %}{% block title %}Postez votre Offre d'Emploi{% endblock title %}{% block description %}{% endblock description %}{% block robots %}index,follow{% endblock robots %}{% block body %} <style> /* ==================== SYSTÈME DE GRILLE COMPLET ==================== */ /* Container */ .container { width: 100%; padding-right: 15px; padding-left: 15px; margin-right: auto; margin-left: auto; } @media (min-width: 576px) { .container { max-width: 540px; } } @media (min-width: 768px) { .container { max-width: 720px; } } @media (min-width: 992px) { .container { max-width: 960px; } } @media (min-width: 1200px) { .container { max-width: 1140px; } } @media (min-width: 1400px) { .container { max-width: 1320px; } } /* Container fluide */ .container-fluid { width: 100%; padding-right: 15px; padding-left: 15px; margin-right: auto; margin-left: auto; } /* Row */ .row { display: flex; flex-wrap: wrap; margin-left: -15px; margin-right: -15px; } /* Colonnes de base */ [class*="col-"] { position: relative; width: 100%; padding-left: 15px; padding-right: 15px; } /* ==================== COLONNES PAR DÉFAUT (Mobile) ==================== */ .col { flex-basis: 0; flex-grow: 1; max-width: 100%; } .col-auto { flex: 0 0 auto; width: auto; max-width: 100%; } .col-1 { flex: 0 0 8.333333%; max-width: 8.333333%; } .col-2 { flex: 0 0 16.666667%; max-width: 16.666667%; } .col-3 { flex: 0 0 25%; max-width: 25%; } .col-4 { flex: 0 0 33.333333%; max-width: 33.333333%; } .col-5 { flex: 0 0 41.666667%; max-width: 41.666667%; } .col-6 { flex: 0 0 50%; max-width: 50%; } .col-7 { flex: 0 0 58.333333%; max-width: 58.333333%; } .col-8 { flex: 0 0 66.666667%; max-width: 66.666667%; } .col-9 { flex: 0 0 75%; max-width: 75%; } .col-10 { flex: 0 0 83.333333%; max-width: 83.333333%; } .col-11 { flex: 0 0 91.666667%; max-width: 91.666667%; } .col-12 { flex: 0 0 100%; max-width: 100%; } /* ==================== SMALL (≥576px) ==================== */ @media (min-width: 576px) { .col-sm { flex-basis: 0; flex-grow: 1; max-width: 100%; } .col-sm-auto { flex: 0 0 auto; width: auto; max-width: 100%; } .col-sm-1 { flex: 0 0 8.333333%; max-width: 8.333333%; } .col-sm-2 { flex: 0 0 16.666667%; max-width: 16.666667%; } .col-sm-3 { flex: 0 0 25%; max-width: 25%; } .col-sm-4 { flex: 0 0 33.333333%; max-width: 33.333333%; } .col-sm-5 { flex: 0 0 41.666667%; max-width: 41.666667%; } .col-sm-6 { flex: 0 0 50%; max-width: 50%; } .col-sm-7 { flex: 0 0 58.333333%; max-width: 58.333333%; } .col-sm-8 { flex: 0 0 66.666667%; max-width: 66.666667%; } .col-sm-9 { flex: 0 0 75%; max-width: 75%; } .col-sm-10 { flex: 0 0 83.333333%; max-width: 83.333333%; } .col-sm-11 { flex: 0 0 91.666667%; max-width: 91.666667%; } .col-sm-12 { flex: 0 0 100%; max-width: 100%; } } /* ==================== MEDIUM (≥768px) ==================== */ @media (min-width: 768px) { .col-md { flex-basis: 0; flex-grow: 1; max-width: 100%; } .col-md-auto { flex: 0 0 auto; width: auto; max-width: 100%; } .col-md-1 { flex: 0 0 8.333333%; max-width: 8.333333%; } .col-md-2 { flex: 0 0 16.666667%; max-width: 16.666667%; } .col-md-3 { flex: 0 0 25%; max-width: 25%; } .col-md-4 { flex: 0 0 33.333333%; max-width: 33.333333%; } .col-md-5 { flex: 0 0 41.666667%; max-width: 41.666667%; } .col-md-6 { flex: 0 0 50%; max-width: 50%; } .col-md-7 { flex: 0 0 58.333333%; max-width: 58.333333%; } .col-md-8 { flex: 0 0 66.666667%; max-width: 66.666667%; } .col-md-9 { flex: 0 0 75%; max-width: 75%; } .col-md-10 { flex: 0 0 83.333333%; max-width: 83.333333%; } .col-md-11 { flex: 0 0 91.666667%; max-width: 91.666667%; } .col-md-12 { flex: 0 0 100%; max-width: 100%; } } /* ==================== LARGE (≥992px) ==================== */ @media (min-width: 992px) { .col-lg { flex-basis: 0; flex-grow: 1; max-width: 100%; } .col-lg-auto { flex: 0 0 auto; width: auto; max-width: 100%; } .col-lg-1 { flex: 0 0 8.333333%; max-width: 8.333333%; } .col-lg-2 { flex: 0 0 16.666667%; max-width: 16.666667%; } .col-lg-3 { flex: 0 0 25%; max-width: 25%; } .col-lg-4 { flex: 0 0 33.333333%; max-width: 33.333333%; } .col-lg-5 { flex: 0 0 41.666667%; max-width: 41.666667%; } .col-lg-6 { flex: 0 0 50%; max-width: 50%; } .col-lg-7 { flex: 0 0 58.333333%; max-width: 58.333333%; } .col-lg-8 { flex: 0 0 66.666667%; max-width: 66.666667%; } .col-lg-9 { flex: 0 0 75%; max-width: 75%; } .col-lg-10 { flex: 0 0 83.333333%; max-width: 83.333333%; } .col-lg-11 { flex: 0 0 91.666667%; max-width: 91.666667%; } .col-lg-12 { flex: 0 0 100%; max-width: 100%; } } /* ==================== EXTRA LARGE (≥1200px) ==================== */ @media (min-width: 1200px) { .col-xl { flex-basis: 0; flex-grow: 1; max-width: 100%; } .col-xl-auto { flex: 0 0 auto; width: auto; max-width: 100%; } .col-xl-1 { flex: 0 0 8.333333%; max-width: 8.333333%; } .col-xl-2 { flex: 0 0 16.666667%; max-width: 16.666667%; } .col-xl-3 { flex: 0 0 25%; max-width: 25%; } .col-xl-4 { flex: 0 0 33.333333%; max-width: 33.333333%; } .col-xl-5 { flex: 0 0 41.666667%; max-width: 41.666667%; } .col-xl-6 { flex: 0 0 50%; max-width: 50%; } .col-xl-7 { flex: 0 0 58.333333%; max-width: 58.333333%; } .col-xl-8 { flex: 0 0 66.666667%; max-width: 66.666667%; } .col-xl-9 { flex: 0 0 75%; max-width: 75%; } .col-xl-10 { flex: 0 0 83.333333%; max-width: 83.333333%; } .col-xl-11 { flex: 0 0 91.666667%; max-width: 91.666667%; } .col-xl-12 { flex: 0 0 100%; max-width: 100%; } } /* ==================== EXTRA EXTRA LARGE (≥1400px) ==================== */ @media (min-width: 1400px) { .col-xxl { flex-basis: 0; flex-grow: 1; max-width: 100%; } .col-xxl-auto { flex: 0 0 auto; width: auto; max-width: 100%; } .col-xxl-1 { flex: 0 0 8.333333%; max-width: 8.333333%; } .col-xxl-2 { flex: 0 0 16.666667%; max-width: 16.666667%; } .col-xxl-3 { flex: 0 0 25%; max-width: 25%; } .col-xxl-4 { flex: 0 0 33.333333%; max-width: 33.333333%; } .col-xxl-5 { flex: 0 0 41.666667%; max-width: 41.666667%; } .col-xxl-6 { flex: 0 0 50%; max-width: 50%; } .col-xxl-7 { flex: 0 0 58.333333%; max-width: 58.333333%; } .col-xxl-8 { flex: 0 0 66.666667%; max-width: 66.666667%; } .col-xxl-9 { flex: 0 0 75%; max-width: 75%; } .col-xxl-10 { flex: 0 0 83.333333%; max-width: 83.333333%; } .col-xxl-11 { flex: 0 0 91.666667%; max-width: 91.666667%; } .col-xxl-12 { flex: 0 0 100%; max-width: 100%; } } /* ==================== UTILITAIRES DE GRILLE ==================== */ /* Alignement horizontal */ .row.justify-start { justify-content: flex-start; } .row.justify-center { justify-content: center; } .row.justify-end { justify-content: flex-end; } .row.justify-between { justify-content: space-between; } .row.justify-around { justify-content: space-around; } .row.justify-evenly { justify-content: space-evenly; } /* Alignement vertical */ .row.align-start { align-items: flex-start; } .row.align-center { align-items: center; } .row.align-end { align-items: flex-end; } .row.align-stretch { align-items: stretch; } .row.align-baseline { align-items: baseline; } /* Pas de gutters */ .row.no-gutters { margin-left: 0; margin-right: 0; } .row.no-gutters > [class*="col-"] { padding-left: 0; padding-right: 0; } /* ==================== UTILITAIRES FORMULAIRE ==================== */ .form-group { margin-bottom: 1rem; } .form-label { display: block; margin-bottom: 0.5rem; font-weight: 500; } .bordered-section { border: 1px solid #dee2e6; border-radius: 0.25rem; padding: 1rem; margin-bottom: 1rem; } </style> <div id="hero_header" class="hero-header section panel overflow-hidden"> <div class="position-absolute top-0 start-0 end-0 h-screen bg-secondary dark:bg-gray-300 dark:bg-opacity-15 rounded-bottom-2 lg:rounded-bottom-5"></div> <div class="section-outer panel py-8 lg:py-9 xl:py-10"> <div class="container"> <div class="section-inner panel"> <div class="d-none xl:d-block"> <div class="position-absolute rounded-circle border border-dashed border-primary-300 dark:border-white dark:border-opacity-15 cstack w-56px h-56px d-none lg:d-block" style="top: 5%; left: 5%" data-anime="translateY: [0, 10]; easing: linear; loop: true; direction: alternate; delay: 0;"><img class="p-narrow rounded-circle" src="/uploads/no_avatar.png" alt="Candidat anonyme"></div> <div class="position-absolute rounded-circle border border-dashed border-primary-300 dark:border-white dark:border-opacity-15 cstack w-56px h-56px d-none lg:d-block" style="top: 20%; left: 10%" data-anime="translateY: [0, 15]; easing: linear; loop: true; direction: alternate; delay: 25;"><img class="p-narrow rounded-circle" src="/uploads/no_avatar.png" alt="Candidat anonyme"></div> <div class="position-absolute rounded-circle border border-dashed border-primary-300 dark:border-white dark:border-opacity-15 cstack w-56px h-56px d-none lg:d-block" style="top: 35%; left: 0%" data-anime="translateY: [0, 5]; easing: linear; loop: true; direction: alternate; delay: 25;"><img class="p-narrow rounded-circle" src="/uploads/no_avatar.png" alt="Candidat anonyme"></div> <div class="position-absolute rounded-circle border border-dashed border-primary-300 dark:border-white dark:border-opacity-15 cstack w-56px h-56px d-none lg:d-block" style="top: 5%; right: 5%" data-anime="translateY: [0, 10]; easing: linear; loop: true; direction: alternate; delay: 0;"><img class="p-narrow rounded-circle" src="/uploads/no_avatar.png" alt="Candidat anonyme"></div> <div class="position-absolute rounded-circle border border-dashed border-primary-300 dark:border-white dark:border-opacity-15 cstack w-56px h-56px d-none lg:d-block" style="top: 20%; right: 10%" data-anime="translateY: [0, 15]; easing: linear; loop: true; direction: alternate; delay: 25;"><img class="p-narrow rounded-circle" src="/uploads/no_avatar.png" alt="Candidat anonyme"></div> <div class="position-absolute rounded-circle border border-dashed border-primary-300 dark:border-white dark:border-opacity-15 cstack w-56px h-56px d-none lg:d-block" style="top: 35%; right: 0%" data-anime="translateY: [0, 5]; easing: linear; loop: true; direction: alternate; delay: 25;"><img class="p-narrow rounded-circle" src="/uploads/no_avatar.png" alt="Candidat anonyme"></div> </div> <div class="row child-cols-12 justify-center items-center g-8"> <div class="lg:col-12"> <div class="panel vstack gap-4 lg:gap-8"> <div class="panel vstack justify-center items-center gap-2 px-2 pt-4 text-center"> <h1 class="h2 md:h1 lg:display-5 m-0">Poster votre <span class="text-primary dark:text-tertiary">offre d'emploi</span> <br /> dans la tech</h1> <p class="fs-6 xl:fs-4 xl:px-10 dark:text-white text-opacity-70"> Vous recrutez dans la tech ? <span class="text-primary dark:text-tertiary">Postez votre offre gratuitement</span> et connectez-vous aux meilleurs talents. Formulaire simple et rapide. Bénéficiez avec votre accès business d'un matching intelligent par IA. Accès direct aux profils tech qualifiés qui correspondent exactement à vos besoins. <span class="text-primary dark:text-tertiary">Recrutez plus vite, recrutez mieux.</span> </p> <div class="vstack md:hstack justify-center"> <a href="#form" class="btn btn-md btn-primary dark:border-tertiary dark:text-tertiary dark:hover:bg-tertiary dark:hover:text-primary-700 border-2 px-3 w-auto" style="margin-top:10px;">Poster gratuitement <i class="icon-2 unicon-arrow-up-right rtl:-rotate-90"></i></a> </div> </div> <div class="hero-scroll-scene panel max-w-850px mx-auto"> <div class="panel border shadow-lg rounded-1-5 p-1 bg-white dark:bg-gray-800 overflow-hidden"> <img class="rounded-default" src="/uploads/home.jpg" alt="Hero image"> </div> <div class="hero-ten-01 position-absolute w-150px xl:w-250px d-none lg:d-block" style="top: 20%"> <img class="rounded-2 shadow-lg border" src="/uploads/no_avatar.png" alt="hero-image"> </div> <div class="hero-ten-02 position-absolute w-200px xl:w-300px d-none lg:d-block" style="bottom: 20%"> <img class="rounded-2 shadow-lg border" src="/uploads/no_avatar.png" alt="hero-image"> </div> <div class="hero-ten-03 position-absolute w-150px d-none lg:d-block" style="top: 10%"> <img class="rounded-2 shadow-lg border" src="/uploads/no_avatar.png" alt="hero-image"> </div> </div> </div> </div> </div> </div> </div> </div> </div> <div class="container mx-auto max-w-4xl py-12" id="form"> {{ form_start(form) }} <div class="card mb-4" style="background-color:#F9FAFB; border:0;"> <div class="card-header" style="padding:20px;"> <h3 class="h5">Job Information</h3> </div> <div class="card-body"> <div class="row"> <div class="col-md-12"> <div class="form-group mb-3"> {{ form_label(form.jobTitle) }} {{ form_widget(form.jobTitle) }} </div> </div> <div class="col-md-6"> <div class="form-group mb-3"> {{ form_label(form.category) }} {{ form_widget(form.category) }} </div> </div> <div class="col-md-6"> <div class="form-group mb-3"> {{ form_label(form.employmentType) }} {{ form_widget(form.employmentType) }} </div> </div> <div class="col-md-6"> <div class="form-group mb-3"> {{ form_label(form.experienceLevel) }} {{ form_widget(form.experienceLevel) }} </div> </div> <div class="col-md-6"> <div class="form-group mb-3"> {{ form_label(form.remoteWork) }} {{ form_widget(form.remoteWork) }} </div> </div> </div> </div> </div> <div class="card mb-4" style="background-color:#FBF5FF; border:0;"> <div class="card-header" style="padding:20px;"> <h3 class="h5">Company Information</h3> </div> <div class="card-body"> <div class="row"> <div class="col-md-6"> <div class="form-group mb-3"> {{ form_label(form.companyName) }} {{ form_widget(form.companyName) }} </div> </div> <div class="col-md-6"> <div class="form-group mb-3"> {{ form_label(form.companySize) }} {{ form_widget(form.companySize) }} </div> </div> <div class="col-md-6"> <div class="form-group mb-3"> {{ form_label(form.address) }} {{ form_widget(form.address) }} </div> </div> <div class="col-md-6"> <div class="form-group mb-3"> {{ form_label(form.website) }} {{ form_widget(form.website) }} </div> </div> <div class="col-md-12"> <div class="form-group mb-3"> {{ form_label(form.companyDescription) }} {{ form_widget(form.companyDescription) }} </div> </div> </div> </div> </div> <div class="card mb-4" style="background-color:#F0FDF4; border:0;"> <div class="card-header" style="padding:20px;"> <h3 class="h5">Required Skills & Qualifications</h3> </div> <div class="card-body"> <div class="row"> <div class="col-md-12"> <div class="form-group mb-3"> {{ form_label(form.requiredSkills) }} {{ form_widget(form.requiredSkills) }} <div class="form-text">Add skills separated by commas</div> </div> </div> <div class="col-md-12"> <div class="form-group mb-3"> {{ form_label(form.niceToHaveSkills) }} {{ form_widget(form.niceToHaveSkills) }} </div> </div> </div> </div> </div> <div class="card mb-4" style="background-color:#FFFCE8; border:0;"> <div class="card-header" style="padding:20px;"> <h3 class="h5">Job Description</h3> </div> <div class="card-body"> <div class="row"> <div class="col-md-12"> <div class="form-group mb-3"> {{ form_label(form.jobSummary) }} {{ form_widget(form.jobSummary) }} </div> </div> <div class="col-md-12"> <div class="form-group mb-3"> {{ form_label(form.keyResponsabilities) }} {{ form_widget(form.keyResponsabilities) }} </div> </div> <div class="col-md-12"> <div class="form-group mb-3"> {{ form_label(form.requirements) }} {{ form_widget(form.requirements) }} </div> </div> </div> </div> </div> <div class="card mb-4" style="background-color:#FFF8ED; border:0;"> <div class="card-header" style="padding:20px;"> <h3 class="h5">Compensation & Benefits</h3> </div> <div class="card-body"> <div class="row"> <div class="col-md-3"> <div class="form-group mb-3"> <label class="form-label">Salary Min</label> <div class="input-group"> {{ form_widget(form.salaryMin, {'attr': {'placeholder': 'Min'}}) }} </div> </div> </div> <div class="col-md-3"> <div class="form-group mb-3"> <label class="form-label">Salary Max</label> <div class="input-group"> {{ form_widget(form.salaryMax, {'attr': {'placeholder': 'Max'}}) }} </div> </div> </div> <div class="col-md-3"> <div class="form-group mb-3"> <label class="form-label">Devise</label> <div class="input-group"> {{ form_widget(form.devise) }} </div> </div> </div> <div class="col-md-3"> <div class="form-group mb-3"> <label class="form-label">Period</label> {{ form_widget(form.salaryPeriod) }} </div> </div> <div class="col-md-12"> <div class="form-group mb-3"> {{ form_label(form.benefits) }} {{ form_widget(form.benefits) }} </div> </div> </div> </div> </div> <div class="card mb-4" style="background-color:#EFF6FF; border:0;"> <div class="card-header" style="padding:20px;"> <h3 class="h5">Contact Information</h3> </div> <div class="card-body"> <div class="row"> <div class="col-md-6"> <div class="form-group mb-3"> {{ form_label(form.contactEmail) }} {{ form_widget(form.contactEmail) }} </div> </div> <div class="col-md-6"> <div class="form-group mb-3"> {{ form_label(form.contactName) }} {{ form_widget(form.contactName) }} </div> </div> <div class="col-md-12"> <div class="form-group mb-3"> {{ form_label(form.contactURL) }} {{ form_widget(form.contactURL) }} </div> </div> </div> </div> </div> <div class="text-center pt-4"> <button type="submit" class="btn btn-primary btn-lg px-5"> Post Job Now - $0 </button> <div class="text-muted small mt-3"> <p class="mb-1"> By posting a job, you agree to our <a href="/terms" class="text-primary hover:underline">Terms of Service</a> and <a href="/privacy" class="text-primary hover:underline">Privacy Policy</a> </p> </div> </div> {{ form_rest(form) }} {{ form_end(form) }} </div>{% endblock body %}