templates/Accueil/_footer_premium.html.twig line 1

Open in your IDE?
  1. {#
  2. /**
  3.  * Footer Premium - Espace Accueil (Public)
  4.  * Design moderne, minimaliste, charte 5sur5
  5.  */
  6. #}
  7. <footer class="premium-footer-accueil">
  8.     <div class="footer-container">
  9.         <!-- Section Principale -->
  10.         <div class="footer-main">
  11.             <!-- Logo et Description -->
  12.             <div class="footer-brand">
  13.                 <div class="footer-logo">
  14.                     <img src="{{ asset('Accueil/imagesAccueil/logoHeader.svg') }}" alt="5sur5 Séjour" />
  15.                     <span>5sur5 Séjour</span>
  16.                 </div>
  17.                 <p class="footer-tagline">
  18.                     Nous partageons les aventures et imprimons les souvenirs !
  19.                 </p>
  20.                 <div class="footer-social">
  21.                     <a href="https://www.instagram.com/5sur5sejour/" target="_blank" aria-label="Instagram">
  22.                         <i class="bi bi-instagram"></i>
  23.                     </a>
  24.                     <a href="https://www.facebook.com/5sur5sejour" target="_blank" aria-label="Facebook">
  25.                         <i class="bi bi-facebook"></i>
  26.                     </a>
  27.                     <a href="https://www.linkedin.com/company/5sur5sejour" target="_blank" aria-label="LinkedIn">
  28.                         <i class="bi bi-linkedin"></i>
  29.                     </a>
  30.                 </div>
  31.             </div>
  32.             <!-- Services -->
  33.             <div class="footer-links">
  34.                 <h4>Services</h4>
  35.                 <ul>
  36.                     <li>
  37.                         <a href="{{ path('boite_vocale') }}">
  38.                             <i class="bi bi-mic-fill"></i> Boîte vocale
  39.                         </a>
  40.                     </li>
  41.                     <li>
  42.                         <a href="{{ path('commande_groupee_accueil') }}">
  43.                             <i class="bi bi-people-fill"></i> Commande groupée
  44.                         </a>
  45.                     </li>
  46.                     <li>
  47.                         <a href="{{ path('pack_annuel_partenaires') }}">
  48.                             <i class="bi bi-briefcase-fill"></i> Devenir partenaire
  49.                         </a>
  50.                     </li>
  51.                     <li>
  52.                         <a href="{{ path('Besoindaide_5sur5_accueil') }}">
  53.                             <i class="bi bi-question-circle-fill"></i> Besoin d'aide
  54.                         </a>
  55.                     </li>
  56.                 </ul>
  57.             </div>
  58.             <!-- Informations -->
  59.             <div class="footer-links">
  60.                 <h4>Informations</h4>
  61.                 <ul>
  62.                     <li>
  63.                         <a href="{{ path('Mentionlegale_5sur5') }}">
  64.                             <i class="bi bi-file-text"></i> Mentions légales
  65.                         </a>
  66.                     </li>
  67.                     <li>
  68.                         <a href="{{ path('Conditons_generales_5sur5') }}">
  69.                             <i class="bi bi-file-earmark-text"></i> Conditions générales
  70.                         </a>
  71.                     </li>
  72.                     <li>
  73.                         <a href="{{ path('Politique_Confidentialite_5sur5') }}">
  74.                             <i class="bi bi-shield-check"></i> Politique de confidentialité
  75.                         </a>
  76.                     </li>
  77.                     <li>
  78.                         <a href="{{ path('ServiceClient_5sur5') }}">
  79.                             <i class="bi bi-headset"></i> Service client
  80.                         </a>
  81.                     </li>
  82.                 </ul>
  83.             </div>
  84.             <!-- Contact -->
  85.             <div class="footer-contact">
  86.                 <h4>Contact</h4>
  87.                 <div class="contact-item">
  88.                     <i class="bi bi-building"></i>
  89.                     <div>
  90.                         <strong>Trust Conseils</strong><br>
  91.                         199 Avenue Francis de Pressensé<br>
  92.                         69200 Vénissieux
  93.                     </div>
  94.                 </div>
  95.                 <div class="contact-item">
  96.                     <i class="bi bi-telephone-fill"></i>
  97.                     <a href="tel:0536282930">05 36 28 29 30</a>
  98.                 </div>
  99.                 <div class="contact-item">
  100.                     <i class="bi bi-envelope-fill"></i>
  101.                     <a href="mailto:contact@5sur5sejour.com">contact@5sur5sejour.com</a>
  102.                 </div>
  103.                 <div class="footer-payment">
  104.                     <span>Paiement sécurisé</span>
  105.                     <div class="payment-icons">
  106.                         <i class="bi bi-credit-card-fill"></i>
  107.                         <i class="bi bi-paypal"></i>
  108.                         <i class="bi bi-shield-lock-fill"></i>
  109.                     </div>
  110.                 </div>
  111.             </div>
  112.         </div>
  113.         <!-- Copyright -->
  114.         <div class="footer-bottom">
  115.             <p>&copy; {{ "now"|date("Y") }} Trust Conseils - 5sur5 Séjour. Tous droits réservés.</p>
  116.             <div class="footer-bottom-right">
  117.                 <p class="footer-france">
  118.                     <i class="bi bi-geo-alt-fill"></i> Données hébergées en France 🇫🇷
  119.                 </p>
  120.                 <p class="footer-info-text">
  121.                     <i class="bi bi-info-circle"></i> Aucun frais d'activation pour votre structure. Vous pouvez proposer aux familles un accès complet au journal du séjour (photos, vidéos, messages vocaux), en service optionnel. Vous pouvez aussi choisir d'inclure cet accès dans vos séjours et de l'offrir aux familles (prise en charge par votre structure).
  122.                 </p>
  123.             </div>
  124.         </div>
  125.     </div>
  126. </footer>
  127. <style>
  128.     .premium-footer-accueil {
  129.         background: linear-gradient(135deg, #41A2AA 0%, #359BA3 100%);
  130.         color: white;
  131.         padding: 60px 0 0 0;
  132.         font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  133.     }
  134.     .footer-container {
  135.         max-width: 1200px;
  136.         margin: 0 auto;
  137.         padding: 0 24px;
  138.     }
  139.     .footer-main {
  140.         display: grid;
  141.         grid-template-columns: 1.5fr 1fr 1fr 1.2fr;
  142.         gap: 40px;
  143.         padding-bottom: 40px;
  144.         border-bottom: 1px solid rgba(255, 255, 255, 0.15);
  145.     }
  146.     /* Brand Section */
  147.     .footer-brand {
  148.         display: flex;
  149.         flex-direction: column;
  150.         gap: 16px;
  151.     }
  152.     .footer-logo {
  153.         display: flex;
  154.         align-items: center;
  155.         gap: 12px;
  156.     }
  157.     .footer-logo img {
  158.         height: 48px;
  159.         background: white;
  160.         border-radius: 12px;
  161.         padding: 8px;
  162.     }
  163.     .footer-logo span {
  164.         font-size: 20px;
  165.         font-weight: 700;
  166.         letter-spacing: -0.5px;
  167.     }
  168.     .footer-tagline {
  169.         font-size: 15px;
  170.         line-height: 1.6;
  171.         opacity: 0.9;
  172.         margin: 0;
  173.     }
  174.     .footer-social {
  175.         display: flex;
  176.         gap: 12px;
  177.         margin-top: 8px;
  178.     }
  179.     .footer-social a {
  180.         width: 40px;
  181.         height: 40px;
  182.         border-radius: 10px;
  183.         background: rgba(255, 255, 255, 0.15);
  184.         display: flex;
  185.         align-items: center;
  186.         justify-content: center;
  187.         color: white;
  188.         font-size: 18px;
  189.         text-decoration: none;
  190.         transition: all 0.2s ease;
  191.     }
  192.     .footer-social a:hover {
  193.         background: white;
  194.         color: #41A2AA;
  195.         transform: translateY(-2px);
  196.     }
  197.     /* Links Sections */
  198.     .footer-links h4,
  199.     .footer-contact h4 {
  200.         font-size: 14px;
  201.         font-weight: 600;
  202.         text-transform: uppercase;
  203.         letter-spacing: 1px;
  204.         margin: 0 0 20px 0;
  205.         opacity: 0.8;
  206.     }
  207.     .footer-links ul {
  208.         list-style: none;
  209.         padding: 0;
  210.         margin: 0;
  211.         display: flex;
  212.         flex-direction: column;
  213.         gap: 12px;
  214.     }
  215.     .footer-links li a {
  216.         display: flex;
  217.         align-items: center;
  218.         gap: 10px;
  219.         color: white;
  220.         text-decoration: none;
  221.         font-size: 14px;
  222.         transition: all 0.2s ease;
  223.         opacity: 0.9;
  224.     }
  225.     .footer-links li a:hover {
  226.         opacity: 1;
  227.         transform: translateX(4px);
  228.     }
  229.     .footer-links li a i {
  230.         font-size: 14px;
  231.         opacity: 0.7;
  232.     }
  233.     /* Contact Section */
  234.     .footer-contact {
  235.         display: flex;
  236.         flex-direction: column;
  237.         gap: 16px;
  238.     }
  239.     .contact-item {
  240.         display: flex;
  241.         align-items: flex-start;
  242.         gap: 12px;
  243.         font-size: 14px;
  244.         line-height: 1.5;
  245.     }
  246.     .contact-item i {
  247.         font-size: 16px;
  248.         opacity: 0.8;
  249.         margin-top: 2px;
  250.     }
  251.     .contact-item a {
  252.         color: white;
  253.         text-decoration: none;
  254.         transition: opacity 0.2s ease;
  255.     }
  256.     .contact-item a:hover {
  257.         opacity: 0.8;
  258.         text-decoration: underline;
  259.     }
  260.     .footer-payment {
  261.         margin-top: 16px;
  262.         padding-top: 16px;
  263.         border-top: 1px solid rgba(255, 255, 255, 0.15);
  264.     }
  265.     .footer-payment span {
  266.         font-size: 12px;
  267.         text-transform: uppercase;
  268.         letter-spacing: 0.5px;
  269.         opacity: 0.7;
  270.         display: block;
  271.         margin-bottom: 8px;
  272.     }
  273.     .payment-icons {
  274.         display: flex;
  275.         gap: 12px;
  276.     }
  277.     .payment-icons i {
  278.         font-size: 24px;
  279.         opacity: 0.8;
  280.     }
  281.     /* Bottom Section */
  282.     .footer-bottom {
  283.         padding: 24px 0;
  284.         display: flex;
  285.         justify-content: space-between;
  286.         align-items: center;
  287.         font-size: 13px;
  288.         opacity: 0.8;
  289.     }
  290.     .footer-bottom p {
  291.         margin: 0;
  292.     }
  293.     .footer-france {
  294.         display: flex;
  295.         align-items: center;
  296.         gap: 6px;
  297.     }
  298.     .footer-bottom-right {
  299.         display: flex;
  300.         flex-direction: column;
  301.         gap: 8px;
  302.         align-items: flex-end;
  303.     }
  304.     .footer-info-text {
  305.         font-size: 12px;
  306.         opacity: 0.85;
  307.         margin: 0;
  308.         text-align: right;
  309.         max-width: 600px;
  310.         line-height: 1.5;
  311.     }
  312.     /* ============================================
  313.        RESPONSIVE - BREAKPOINTS OPTIMISÉS
  314.        ============================================ */
  315.     /* iPad et Tablettes (768px - 1024px) */
  316.     @media (max-width: 1024px) {
  317.         .footer-container {
  318.             padding: 0 20px;
  319.         }
  320.         .footer-main {
  321.             grid-template-columns: 1fr 1fr;
  322.             gap: 32px;
  323.         }
  324.         .footer-brand {
  325.             grid-column: span 2;
  326.         }
  327.         .footer-logo span {
  328.             font-size: 18px;
  329.         }
  330.         .footer-tagline {
  331.             font-size: 14px;
  332.         }
  333.     }
  334.     /* Tablettes Portrait (768px - 992px) */
  335.     @media (max-width: 992px) {
  336.         .premium-footer-accueil {
  337.             padding: 50px 0 0 0;
  338.         }
  339.         .footer-container {
  340.             padding: 0 20px;
  341.         }
  342.         .footer-main {
  343.             grid-template-columns: 1fr 1fr;
  344.             gap: 28px;
  345.             padding-bottom: 32px;
  346.         }
  347.         .footer-brand {
  348.             grid-column: span 2;
  349.         }
  350.         .footer-links h4,
  351.         .footer-contact h4 {
  352.             font-size: 13px;
  353.             margin-bottom: 16px;
  354.         }
  355.         .footer-links li a,
  356.         .contact-item {
  357.             font-size: 13px;
  358.         }
  359.     }
  360.     /* Mobile Landscape et petits écrans (576px - 768px) */
  361.     @media (max-width: 768px) {
  362.         .premium-footer-accueil {
  363.             padding: 40px 0 0 0;
  364.         }
  365.         .footer-container {
  366.             padding: 0 16px;
  367.         }
  368.         .footer-main {
  369.             grid-template-columns: 1fr;
  370.             gap: 28px;
  371.             padding-bottom: 28px;
  372.         }
  373.         .footer-brand {
  374.             grid-column: span 1;
  375.             text-align: center;
  376.             align-items: center;
  377.         }
  378.         .footer-logo {
  379.             flex-direction: row;
  380.             justify-content: center;
  381.             gap: 12px;
  382.         }
  383.         .footer-logo img {
  384.             height: 44px;
  385.         }
  386.         .footer-logo span {
  387.             font-size: 18px;
  388.         }
  389.         .footer-tagline {
  390.             font-size: 14px;
  391.             text-align: center;
  392.         }
  393.         .footer-social {
  394.             justify-content: center;
  395.         }
  396.         .footer-links,
  397.         .footer-contact {
  398.             text-align: center;
  399.         }
  400.         .footer-links h4,
  401.         .footer-contact h4 {
  402.             font-size: 12px;
  403.             margin-bottom: 14px;
  404.         }
  405.         .footer-links ul {
  406.             align-items: center;
  407.             gap: 10px;
  408.         }
  409.         .footer-links li a {
  410.             justify-content: center;
  411.             font-size: 13px;
  412.         }
  413.         .footer-links li a:hover {
  414.             transform: none;
  415.         }
  416.         .contact-item {
  417.             justify-content: center;
  418.             text-align: center;
  419.             flex-direction: column;
  420.             gap: 8px;
  421.         }
  422.         .contact-item i {
  423.             margin-top: 0;
  424.         }
  425.         .footer-payment {
  426.             text-align: center;
  427.             margin-top: 20px;
  428.             padding-top: 20px;
  429.         }
  430.         .payment-icons {
  431.             justify-content: center;
  432.             gap: 16px;
  433.         }
  434.         .footer-bottom {
  435.             flex-direction: column;
  436.             gap: 16px;
  437.             text-align: center;
  438.             padding: 20px 0;
  439.             align-items: center;
  440.         }
  441.         .footer-bottom-right {
  442.             align-items: center !important;
  443.             width: 100%;
  444.             text-align: center;
  445.         }
  446.         .footer-info-text {
  447.             text-align: center !important;
  448.             max-width: 100%;
  449.         }
  450.         .footer-france {
  451.             justify-content: center;
  452.         }
  453.         .footer-bottom p {
  454.             font-size: 12px;
  455.             line-height: 1.5;
  456.         }
  457.         .footer-bottom p:last-child {
  458.             font-size: 11px;
  459.             max-width: 100%;
  460.             text-align: center;
  461.         }
  462.     }
  463.     /* Mobile Portrait (< 576px) - FOOTER RÉDUIT AU MAXIMUM */
  464.     @media (max-width: 576px) {
  465.         .premium-footer-accueil {
  466.             padding: 24px 0 0 0 !important;
  467.         }
  468.         .footer-container {
  469.             padding: 0 12px !important;
  470.         }
  471.         .footer-main {
  472.             gap: 16px !important;
  473.             padding-bottom: 16px !important;
  474.         }
  475.         .footer-logo {
  476.             flex-direction: row !important;
  477.             gap: 8px !important;
  478.             justify-content: center !important;
  479.         }
  480.         .footer-logo img {
  481.             height: 32px !important;
  482.         }
  483.         .footer-logo span {
  484.             font-size: 14px !important;
  485.         }
  486.         .footer-tagline {
  487.             font-size: 11px !important;
  488.             line-height: 1.4 !important;
  489.             margin: 0 !important;
  490.         }
  491.         .footer-social {
  492.             gap: 8px !important;
  493.             margin-top: 6px !important;
  494.         }
  495.         .footer-social a {
  496.             width: 32px !important;
  497.             height: 32px !important;
  498.             font-size: 14px !important;
  499.         }
  500.         .footer-links h4,
  501.         .footer-contact h4 {
  502.             font-size: 10px !important;
  503.             margin-bottom: 8px !important;
  504.         }
  505.         .footer-links ul {
  506.             gap: 6px !important;
  507.         }
  508.         .footer-links li a {
  509.             font-size: 11px !important;
  510.             gap: 6px !important;
  511.             padding: 4px 0 !important;
  512.         }
  513.         .footer-links li a i {
  514.             font-size: 11px !important;
  515.         }
  516.         .contact-item {
  517.             font-size: 11px !important;
  518.             gap: 6px !important;
  519.             margin-bottom: 8px !important;
  520.         }
  521.         .contact-item i {
  522.             font-size: 12px !important;
  523.         }
  524.         .footer-payment {
  525.             margin-top: 12px !important;
  526.             padding-top: 12px !important;
  527.         }
  528.         .footer-payment span {
  529.             font-size: 10px !important;
  530.             margin-bottom: 4px !important;
  531.         }
  532.         .payment-icons {
  533.             gap: 10px !important;
  534.         }
  535.         .payment-icons i {
  536.             font-size: 18px !important;
  537.         }
  538.         .footer-bottom {
  539.             padding: 12px 0 !important;
  540.             gap: 8px !important;
  541.         }
  542.         .footer-bottom p {
  543.             font-size: 10px !important;
  544.             line-height: 1.4 !important;
  545.         }
  546.         .footer-bottom p:last-child {
  547.             font-size: 9px !important;
  548.             padding: 0 4px !important;
  549.             line-height: 1.3 !important;
  550.         }
  551.         .footer-france {
  552.             font-size: 10px !important;
  553.         }
  554.     }
  555.     /* Très petits écrans (< 400px) - FOOTER ULTRA COMPACT */
  556.     @media (max-width: 400px) {
  557.         .premium-footer-accueil {
  558.             padding: 20px 0 0 0 !important;
  559.         }
  560.         .footer-container {
  561.             padding: 0 10px !important;
  562.         }
  563.         .footer-main {
  564.             gap: 12px !important;
  565.             padding-bottom: 12px !important;
  566.         }
  567.         .footer-logo img {
  568.             height: 28px !important;
  569.         }
  570.         .footer-logo span {
  571.             font-size: 13px !important;
  572.         }
  573.         .footer-tagline {
  574.             font-size: 10px !important;
  575.             line-height: 1.3 !important;
  576.         }
  577.         .footer-social {
  578.             gap: 6px !important;
  579.         }
  580.         .footer-social a {
  581.             width: 30px !important;
  582.             height: 30px !important;
  583.             font-size: 13px !important;
  584.         }
  585.         .footer-links h4,
  586.         .footer-contact h4 {
  587.             font-size: 9px !important;
  588.             margin-bottom: 6px !important;
  589.         }
  590.         .footer-links ul {
  591.             gap: 4px !important;
  592.         }
  593.         .footer-links li a {
  594.             font-size: 10px !important;
  595.             gap: 5px !important;
  596.         }
  597.         .footer-links li a i {
  598.             font-size: 10px !important;
  599.         }
  600.         .contact-item {
  601.             font-size: 10px !important;
  602.             gap: 5px !important;
  603.             margin-bottom: 6px !important;
  604.         }
  605.         .contact-item i {
  606.             font-size: 11px !important;
  607.         }
  608.         .footer-payment {
  609.             margin-top: 10px !important;
  610.             padding-top: 10px !important;
  611.         }
  612.         .footer-payment span {
  613.             font-size: 9px !important;
  614.         }
  615.         .payment-icons {
  616.             gap: 8px !important;
  617.         }
  618.         .payment-icons i {
  619.             font-size: 16px !important;
  620.         }
  621.         .footer-bottom {
  622.             padding: 10px 0 !important;
  623.             gap: 6px !important;
  624.         }
  625.         .footer-bottom p {
  626.             font-size: 9px !important;
  627.         }
  628.         .footer-bottom p:last-child {
  629.             font-size: 8px !important;
  630.         }
  631.         .footer-france {
  632.             font-size: 9px !important;
  633.         }
  634.     }
  635.     /* Landscape Orientation - Mobile */
  636.     @media (max-width: 768px) and (orientation: landscape) {
  637.         .footer-main {
  638.             grid-template-columns: 1fr 1fr;
  639.             gap: 24px;
  640.         }
  641.         .footer-brand {
  642.             grid-column: span 2;
  643.         }
  644.         .footer-logo {
  645.             flex-direction: row;
  646.         }
  647.     }
  648. </style>