@import "./_vars.css";
@import "./_fonts.css";


/*
 * @file
 * global.styles
 *
 * Styles you add here will load for all device sizes, they are "global", as
 * opposed to "responsive" styles, which only load for a given breakpoint (media
 * query) that you set in theme settings. See the README for more details.
 *
 *
 * How to use this file:
 * --------------------
 *
 * There are many empty selectors and some basic styles to act as a guide.
 * Nothing is set in stone and you can change anything - even delete all of it
 * and start with your own clean slate.
 *
 * See global.base also which includes normalize.css and some additional
 * helper classes and base styles.
 */

/* =============================================================================
 *   Base
 * ========================================================================== */

/*
 * To preserve theme settings never apply font properties to the HTML element.
 * This is critically important if you are using the Responsive JavaScript
 * feature as this relies on being able to set a pseudo font family on the HTML
 * element. If you need to set default font properties of any kind use the BODY
 * element as these can be overridden using font theme settings.
 */

html {
  background: #ffffff;
  line-height: 1.5;
}

/* --Drupal-displace-offset-top is a core/drupal.displace variable.
 * We use is to adjust the size of the body when the tool bar is activated.
 */
body {
  font-family: var(--osinet-font-copy);
  font-size: 100%;
  line-height: 25.2px; /* 157.5% */
  letter-spacing: 0.16px;
  position: relative;
  -webkit-font-smoothing: antialiased;
  margin: 0;
  height: calc(100vh - var(--drupal-displace-offset-top, 0px));
}

.dialog-off-canvas-main-canvas {
  height: 100%;
}
/*
 * Sticky footer from http://ryanfait.com/resources/footer-stick-to-bottom-of-page/
 * Repeated height attributes are hacks for IE6.
 */


html {
  height: 100%;
}

body,
#page {
  min-height: calc(100vh - var(--drupal-displace-offset-top, 0px));
}

#columns {
  min-height: 100%;
  height: auto !important;
  height: 100%;
  margin-top: 0;
  margin-bottom: -2em;
}

.push {
  height: 2em;
}

#footer {
  height: 120px;
  padding-top: 10px;
}

body {
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 0;
  padding-bottom: 0;
}


.ot-section-logo-references, .ot-section-icon-service {
  margin-top: 68px;
}

.ot-section-logo-references h2,
.ot-section-icon-service h2 {
  margin-bottom: 32px;
}

.ot-logo-references {
  display: flex;
  width: 100%;
  align-items: center;
  align-content: center;
  justify-content: space-between;
  gap: 0 70px;
  flex-wrap: wrap;
}

.ot-logo-references img {
  height: 59px;
}

.ot-icone-service {
  display: flex;
  width: 100%;
  align-items: flex-start;
  align-content: flex-start;
  justify-content: space-around;
  gap: 20px 27px;
  flex-wrap: wrap;
  margin-bottom: 72px;
}

.home-text {
  font-size: 18px;
  line-height: 1.5;
}

.home-text p:first-child {
  margin-top: 0;
}

.home-text p:first-of-type {
  margin-top: 0;
}

/* =============================================================================
 *   HTML Elements
 * ========================================================================== */

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--osinet-font-headings);
  font-weight: 700;
}

h1 {
  font-size: 38px;
  color: var(--osinet-fg);
  text-align: center;
  margin-bottom: 72px;
  line-height : 1.5;
}

h2 {
  color: var(--dark-text);
  font-size: 22px;
  font-style: normal;
  font-weight: 700;
  line-height: 33px;
}

.sidebar h2 {
  margin-top: 0;
}

pre,
code,
tt,
samp,
kbd,
var {
  font-family: var(--osinet-font-code);
}


/* =============================================================================
 *   Wrappers
 * ========================================================================== */

/*
 * Sets the width of the main blocks to default max.
 */

#header-content,
.breadcrumb-wrapper,
div.messages,
.block-region,
.region-inner,
.content-column,
#columns,
.region-footer {
  margin-left: auto;
  margin-right: auto;
  max-width: var(--max-width);
}

/*
 * Wraps all header elements - branding and .region-header
 */

.front #header {
  margin-bottom: 50px;
}

.not-front #header {
  margin-bottom: 30px;
}

/*
 * Footer wrapper
 */

#footer .block,
#footer .menu {
  display: inline-block;
  margin: 0;
  padding-top: 0.2em;
}

#footer .block-menu {
  float: right;
}

#footer ul.menu li {
  float: right;
}

.widgets-element-horizontal {
  line-height: 1;
  margin-right: 8px;
  margin-top: 0.2em;
}

/*
 * Wraps the header
 */
#header-wrapper {
  /* Debug styles, is this working */
  background: rgba(255, 192, 203, 0.5);
}

/*
 * Footer wrapper
 */
#footer-wrapper {
  /* Debug styles, is this working? */
  background: rgba(255, 192, 203, 0.5);
}


/* =============================================================================
 *   Page content header
 * ========================================================================== */

/*
 * Main content header wraps the page title, tabs and actions links
 */
#main-content-header {
  padding-bottom: 25px;
}

/*
 * The main page title (h1)
 */
#page-title {
  margin: 0;
}


/* =============================================================================
 *   Misc Global Styles
 * ========================================================================== */

/*
 * Generic styles for links. See the ul.links declaration in node and comment stylesheets
 */
ul.links {
  margin: 0;
  padding: 0;
}

ul.links.inline {
  display: block;
}

ul.links li {
  display: inline;
  list-style: none;
  padding: 0 10px 0 0;
}

ul.links li a {
  color: var(--dark-text);
  font-weight: 500;
}

/*
 * Search results are an ordered list so reset the margin
 */
.search-results {
  margin: 0;
}


/* =============================================================================
 *   Regions
 * ========================================================================== */
/*
 * Second sidebar
 */
.region-sidebar-second {
  position: relative;
}

/* =============================================================================
 *   Front page regions and blocks
 * ========================================================================== */

.front #main-content-header {
  padding-bottom: 0;
}

p.mission {
  margin-bottom: 1.2em;
}

p.mission:first-of-type {
  margin-top: 0;
  margin-bottom: 20px;
}

p.mission-1 {
  color: var(--osinet-fg);
  font-family: var(--osinet-font-headings);
  font-size: 280%;
  font-weight: 400;
  line-height: 1.7;
  margin-top: 0;
  margin-bottom: 0.5em;
}

.mission-2 {
  color: rgb(40, 21, 111);
  font-family: var(--osinet-font-headings);
  font-size: 160%;
  font-weight: 400;
  line-height: 1.7;
}

.mission-3 {
  color: #4c4c4c;
  font-size: 130%;
}

.mission-4 {
  color: #5f9392;
  font-family: var(--osinet-font-headings);
  font-size: 200%;
}

/*
.mission-suite {
  -moz-column-count: 2;
  -webkit-column-count: 2;
  column-count: 2;
}
*/

.front-highlight {
  color: rgb(40, 21, 111);
  font-weight: bold;
}

.front .block-title {
  font-weight: 400;
  text-transform: uppercase;
}

#block-views-news-block {
  border-top: lightgray 1px dotted;
  margin-bottom: 5em;
  margin-top: 2em;
  padding-top: 1em;
}

#block-views-news-block .node {
  margin-bottom: 0;
}

.front #footer .block-content {
  font-size: 100%;
}

/* =============================================================================
 *   Links
 * ========================================================================== */

a {
  /*text-decoration: none;*/
  text-underline-offset: 5px;
}

a:any-link {
  /*color: var(--osinet-fg);*/
  color: var(--osinet-fg);
  font-weight: 700;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

a:hover {
  color: var(--osinet-bg);
}

a:hover .view-portfolio-front {
  opacity: 0.7;
}

/* =============================================================================
 *   Primary, Secondary and Menu Bar region menus
 * ========================================================================== */

/*
 * Use one of the following id's for granular control:
 *  - #menu-bar (menu bar region)
 *  - #primary-menu (main menu)
 *  - #secondary-menu (secondary/user menu)
 * You can target all of these with .nav or div[id$="menu-bar"]
 */

#header-menu {
  position: relative;
}

/*
#menu-shape-1,
#menu-shape-2 {
  height: 41px;
  background: rgba(56,15,149,0.8);
  position: absolute;
}

#menu-shape-1 {
  -webkit-transform: skew(10deg);
  -moz-transform: skew(10deg);
  -o-transform: skew(10deg);
  right: 60px;
  top: 76px;
  transform: skew(10deg);
  width: 130px;
}

#menu-shape-2 {
  -webkit-transform: skew(-10deg);
  -moz-transform: skew(-10deg);
  -o-transform: skew(-10deg);
  right: 0;
  top: 73px;
  transform: skew(-10deg);
  width: 150px;
}
*/

.nav {
  clear: both;
  margin: 10px 0;
}

.block-menu li,
.nav ul,
.nav ul.menu {
  margin: 0;
  padding: 0;
}

.block-menu li,
.nav li,
.nav ul.menu li {
  display: inline;
  float: left;
  list-style: none;
  margin: 0;
  padding: 0;
}

.block-menu li a,
.nav li a,
.nav ul.menu li a {
  display: block;
  white-space: nowrap;
  padding: 0 10px;
}

.nav .block {
  margin-bottom: 0;
}

#block-menu-menu-footer-menu a {
  color: #4c4c4c;
}

#block-menu-menu-footer-menu a:hover {
  color: white;
}

#block-menu-menu-footer-menu .block-title {
  display: none;
}

/* =============================================================================
 *   Superfish
 * ========================================================================== */

ul.sf-menu {
  margin-bottom: 0;
}

ul.sf-menu a {
  border-left: 0;
  border-top: 0;
  padding: 0 10px;
  text-decoration: none;
  height: 2.5em;
  line-height: 2.5em;
}

ul.sf-menu li:hover,
ul.sf-menu li.sfHover {
  outline: 0;
}

ul.sf-menu a:focus,
ul.sf-menu a:hover,
ul.sf-menu a:active {
  outline: 0;
}

/*
 * Superfish blocks
 */
.block-superfish ul {
  margin: 0 !important;
  padding: 0 !important;
}

.block-superfish li {
  margin: 0 !important;
  padding: 0 !important;
}

/*
 * Vertical style
 */
.sf-vertical {
  width: 100%;
}

.sf-vertical li {
  width: 100%;
}

.sf-vertical li:hover ul,
.sf-vertical li.sfHover ul {
  left: 100%;
  top: 0;
  margin: 0;
  padding: 0;
}

.sf-vertical li a {
  padding: 0 10px;
}

/*
 * Navbar style
 */
.sf-navbar {
  padding-bottom: 0 !important;
}

/*
 * Sensible padding for the default style
 */
.sf-menu.sf-style-default a {
  padding: 0 10px;
}


/* =============================================================================
 *   Menus, usually blocks
 * ========================================================================== */

ul.menu {
  padding-left: 15px;
}

ul.menu ul {
  padding-left: 15px;
}

ul.menu li {
  margin: 0;
}

/* If li.content exists it's a problem, so reset the padding */
.block .menu li.content {
  padding: 0;
}

/* =============================================================================
 *   Pagers
 * ========================================================================== */

ul.pager {
  clear: both;
  margin: 0;
  text-align: center;
}

.item-list ul.pager li {
  margin: 0;
}


ul.pager li {
  background-image: none;
  display: inline;
  list-style-type: none;
  padding: .5em;
}

ul.pager li.pager-current {
  font-weight: 700;
}

.block ul.pager li {
  margin: 0;
}

/* =============================================================================
 *   Skip Navigation
 * ========================================================================== */

#skip-link {
  left: 50%;
  margin-left: -6.5em;
  margin-top: 0;
  padding: 0 0.5em;
  position: absolute;
  width: 12em;
  z-index: 50;
}

#skip-link a {
  background: #444444;
  background: rgba(0, 0, 0, 0.6);
  color: #ffffff;
  display: block;
  line-height: 2;
  padding: 0;
  text-align: center;
  text-decoration: none;
}

#skip-link a:link,
#skip-link a:visited {
  background: #444444;
  background: rgba(0, 0, 0, 0.6);
  color: #ffffff;
  display: block;
  line-height: 2;
  padding: 0;
  text-align: center;
  text-decoration: none;
}

#skip-link a:hover,
#skip-link a:focus,
#skip-link a:active {
  outline: 0;
}


/* =============================================================================
 *   Action links
 * ========================================================================== */

ul.action-links {
  margin: 20px 0 0;
  list-style: none;
}

/* =============================================================================
 *  Field Styling
 * ========================================================================== */

/*
 * Labels are h2 in Adaptivetheme. Use a strong selector to mitigate unwanted ineritance issues
 */
.field-label {
  font-size: 1em;
  font-weight: 700;
  font-family: inherit;
  line-height: inherit;
  margin-bottom: 0;
}


/*
 * Field types (Core)
 */

/*
 * Image fields use the <figure> and <figcaption> elements from HTML5
 */

.submitted .user-picture,
.field-type-image {
  float: left;
  margin-bottom: 0.5em;
  margin-right: 1em;
  position: relative;
  top: 0.5em;
}

/*
 * Taxonomy
 */
.field-type-taxonomy-term-reference {
  /* The same bottom margin as p, blockquote, ul, ol and dl */
  margin-bottom: 1.5em;
}

.field-type-taxonomy-term-reference.field-label-inline .field-items {
  margin: 0;
  padding: 0;
}

.field-type-taxonomy-term-reference.field-label-inline .field-item {
  display: inline;
  list-style: none;
  padding: 0 10px 0 0;
}

/*
 * Image Alignment Theme Settings - included here so you can easily override
 */

/*
 * Float left setting
 */
.ia-l .field-type-image figure,
.iat-l .field-type-image figure {
  margin: 5px 20px 15px 0;
}

/*
 * Centered setting
 */
.ia-c .field-type-image figure,
.iat-c .field-type-image figure {
  margin: 5px auto 15px;
}

/*
 * Float right setting
 */
.ia-r .field-type-image figure,
.iat-r .field-type-image figure {
  margin: 5px 0 15px 20px;
}


/* =============================================================================
 *   Block Styling
 * ========================================================================== */

/*
 * Main wrapper for most blocks, block_system_main does not have it
 */
.block {
  margin-bottom: 20px;
}

#main-content .block {
  float: left;
}

#main-content .block-title {
  margin-top: 1.8em;
  margin-bottom: 0.7em;
}

/*
 * Match item list and block menu margin and padding
 */
.block-content ul,
.block-content ol {
  padding: 0 0 0 15px;
}

.block-content li {
  margin: 0;
  padding: 0;
}

.block-book h2 a {
  color: #4c4c4c;
}

.block-book h2 a:hover {
  color: white;
}

/*
 * Portfolio filters block
 */

.not-front .region-sidebar-second {
  margin-bottom: 150px;
  position: relative;
  top: 73px;
}

#block-osinetm-term-accordion ul {
  list-style: none;
}

#block-osinetm-term-accordion .block-content ul {
  padding: 0;
}

#block-osinetm-term-accordion .osinetm-accordion-item {
  background-color: white;
  border-bottom: 1px solid lightgray;
  margin: 0;
  padding: 0.5em;
}


/*
#block-osinetm-term-accordion .item-list ul li {
  border-bottom: 1px solid lightgray;
  margin: 0;
  padding: 0.5em;
}
*/


/* =============================================================================
 *   Node Styling
 * ========================================================================== */
/* --- D10 port ---- */
.ott-image,
.ott-news-image {
  float: left;
  /* 1.5rem because line-height is 1.5 */
  margin: 0.5rem 2rem 0.5rem 0;
}
.ott-image img,
.ott-news-image img {
  /* Remove the small space below the image due to the default
    vertical-align: baseline on img elements */
  vertical-align: top;
}
/* Blog user picture */
article.ott-image {
  float: left;
  /* No margin-top: user meta has none either */
  margin: 0 1rem 0.5rem 0;
}

/* --- /D10 port --- */

.node {
  margin-bottom: 20px;
}

.node .node-title {
  margin: 0;
}

.author-datetime {
  color: var(--dim-text);
  font-style: italic;
}

.views-row h1 {
  font-size: 1.6em;
}

/*
 * Portfolio: project
 */

.taxonomy-term-description {
  margin: 0;
}

.view-blog .views-row {
  overflow: auto;
}

.view-portfolio .views-row {
  border: dotted 1px var(--box);
  margin-bottom: 2em;
}

/* Uses
 - Portfolio: term logo
 */
.field-name-field-logo {
  float: left;
  line-height: 1;
}

.field-name-field-screenshot {
  float: left;
  margin-bottom: 0.5em;
  margin-right: 1em;
  position: relative;
  top: 0.5em;
  width: 30%;
}

.field-name-field-exercice {
  color: var(--medium);
  float: left;
  margin-right: 0.5em;
}

.field-name-field-url {
  margin-bottom: 0.5em;
}

.group-display-termes {
  font-size: 74%;
}

.group-display-termes .field,
.group-display-termes .field-item {
  display: inline-block;
}

.group-display-termes .field-item {
  background-color: rgb(40, 21, 111);
  color: white;
  margin-right: 0.5em;
  margin-top: 0.5em;
  padding: 0.2em 0.5em 0.15em 0.5em;
  text-transform: uppercase;
}

.group-display-termes .field-item a {
  color: white;
}

/*
 * User profiles view
 */
.view-equipe .views-row {
  border: dotted 1px var(--box);
  margin-bottom: 2em;
}

.view-equipe .views-field {
  margin-left: auto;
  margin-right: auto;
  width: 95%;
}

.view-equipe h3 {
  margin: 0.3em 0 0 0;
}

.view-equipe .views-field-field-people-fonction {
  margin-bottom: 0.5em;
}

.view-equipe .views-field-field-people-about {
  padding-bottom: 0.5em;
}

/*
#block-views-equipe-block h2 {
  background-color: #dbeeee;
  border-left: 10px solid rgb(159,200,199);
  font-weight: 400;
  padding-left: 0.5em;
}
*/

.user-picture {
  float: left;
  margin-bottom: 0.2em;
  margin-right: 0.5em;
}

.view-equipe .user-picture {
  position: relative;
  top: 0.8em;
  width: 30%;
}

/*
 * "New" marker for comments that are new for the current user
 */
.new {
  color: #cc0000;
}

/*
 * Nested comments are indented
 */
.indented {
  margin-left: 40px;
}


/* =============================================================================
 *   Forms
 * ========================================================================== */

/*
 * Wrapper for a form element (or group of form elements) and its label
 */
.form-item input.error,
.form-item textarea.error,
.form-item select.error {
  border: 1px solid orange;
}

.form-item {
  margin-bottom: 20px;
}

.form-item input[type="text"],
.form-item input[type="email"],
.form-item textarea {
  border: 1px solid var(--box);
  border-radius: 3px;
}

.form-item input[type="text"]:focus,
.form-item input[type="email"]:focus,
.form-item textarea:focus {
  outline: none;
  border: 3px solid var(--box);
}

.form-item label {
  font-family: var(--osinet-font-headings);
  font-weight: 700;
  font-size: 17px;
  margin-bottom: 12px;
}

/*
 * Highlight marks and form required mark
 */
.marker,
.form-required {
  color: rgb(159, 200, 199);
}

.form-item .description {
  font-size: 0.85em;
}

/*
 * The submit button
 */
.container-inline div,
.container-inline label {
  display: inline;
}

.form-actions input[type="submit"] {
  background-color: var(--osinet-fg);
  color: var(--bg);
  padding: 12px 55px;
  border-radius: 3px;
  border: none;
  text-decoration: none;
  font-size: 15px;
  font-weight: 600;
  margin-right: 15px;
  cursor: pointer;
}

.form-actions input[type="submit"]:nth-of-type(2) {
  border: 1px solid var(--osinet-fg);
  background-color: rgba(245, 145, 51, 0.05);
  color: var(--dark-text);
}


/*
 * Define consistent borders
 */
fieldset {
  border: 1px solid #cccccc;
}

/*
 * Buttons used by contrib modules like Media
 */
a.button {
  -webkit-appearance: button;
  -moz-appearance: button;
  appearance: button; /* CSS Basic User Interface Module Level 4 */
}

/*
 * Password confirmation
 */
.password-parent,
.confirm-parent {
  margin: 0;
}


/* =============================================================================
 *   Tables
 * ========================================================================== */

table {
  margin: 10px 0;
  padding: 0;
  width: 100%;
}

table.sticky-header {
  z-index: 10;
}

table,
thead,
tbody,
tr,
th,
td {
  border-color: #cccccc;
}

table,
td,
th {
  vertical-align: middle;
}

caption,
th,
td {
  text-align: left;
}

thead tr {
  font-weight: 700;
  background-color: #e5e5e5;
}

td,
th {
  border-bottom: 0;
  border-left: 1px solid #cccccc;
  margin: 0;
  padding: 5px 7px;
}

tbody tr {
  border-top: 1px solid #cccccc;
}

tr.odd {
  background: #ffffff;
}

tr.info,
tr.even,
tr:nth-child(2n+2) {
  border-bottom: 0;
}

tr.odd td.active {
  background-color: #eeeeee;
}

tr.even td.active {
  background-color: #ebebeb;
}

/*
 * Forum tables
 * Core sets white-space to nowrap, which makes no sense
 */
#forum td .created,
#forum td .posts,
#forum td .topics,
#forum td .last-reply,
#forum td .replies,
#forum td .pager {
  white-space: normal;
}


/* =============================================================================
 *   Messages
 * ========================================================================== */

/* Left and right margin are set by the global gutter width */
div.messages {
  margin-bottom: 10px;
  margin-top: 10px;
}

div.messages ul {
  margin-top: 0;
  margin-bottom: 0;
}

.element-invisible {
  border: 0;
  clip: rect(1px 1px 1px 1px);
  /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

/*
 * Unpublished nodes
 */
.node-unpublished p.unpublished,
.comment-unpublished p.unpublished {
  color: pink;
  color: rgba(239, 170, 170, 0.4);
  font-family: Impact, "Arial Narrow", Helvetica, sans-serif;
  font-size: 75px;
  font-weight: bold;
  height: 0;
  line-height: 1.2;
  margin: 0;
  padding: 0;
  overflow: visible;
  text-align: center;
  text-transform: uppercase;
  word-wrap: break-word;
}

/*
 * Otherwise these elements will appear below the "Unpublished" text
 */
.lt-ie8 .node-unpublished > *,
.lt-ie8 .comment-unpublished > * {
  position: relative;
}


/* =============================================================================
 *    Maintenance pages
 * ========================================================================== */

.maintenance-page .container {
  padding: 40px 0;
}

.maintenance-page #site-name,
.maintenance-page #page-title {
  margin: 0;
}

.db-offline .container {
  margin: 0 auto;
  padding: 40px 0;
  width: 100%;
  max-width: var(--max-width);
}

.db-offline div.messages {
  margin: 20px 0 0;
}

.db-offline #content {
  padding: 20px 0;
}


/* =============================================================================
 *   Misc overrides for contrib modules
 * ========================================================================== */

/*
 * Admin menu overrides
 */
#admin-menu {
  margin: 0;
  padding: 0;
}

.toolbar-tray a {
  color: var(--dark-text);
}

.menu-item a:hover {
  text-decoration: none;
}
/*
 * Devel Module
 */
.dev-query {
  background: #eeeeee;
  padding: 30px;
}

/*
 * Styleguide module tweaks
 */
#styleguide-header {
  padding: 0 10px;
}

#styleguide-header .item-list {
  font-family: inherit;
  margin: 0 20px 20px 0;
  min-height: 260px;
  width: auto;
}

/* =============================================================================
 D10 new
 * ========================================================================== */
.layout-container {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
}

.layout-container > * {
  max-width: var(--max-width);
  width: 100%;
}

.layout-container > footer,
.layout-container > header {
  max-width: 100%;
}

section#main-wrapper {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}


@media all and (max-width: 794px) {

  /* =============================================================================
 *   HTML Elements
 * ========================================================================== */
  h1 {
    font-size: 35px;
    line-height: 150%;
    text-align: left;
    padding: 0 16px;
    margin-bottom: 16px;
  }

  h2 {
    font-size: 20px;
    line-height: 150%;
  }

  p.mission-1 {
    margin: 0 16px;
    font-size: 35px;
  }

  /* =============================================================================
*   Main section
* ========================================================================== */
  main[role="main"] {
    display: block;

  }

  main .main-content {
    width: 100%;
    padding: 0 1em;
    margin-bottom: 28px;
  }

  /* =============================================================================
*   Home Page
* ========================================================================== */
  .ot-icone-service {
    gap: 20px;
    justify-content: space-around;
  }

  .ot-icone-service img {
    width: 134px;
    height: auto;
  }

  .ot-section-logo-references h2,
  .ot-section-icon-service h2 {
    margin-bottom: 28px;
  }

  /* =============================================================================
*   Forms
* ========================================================================== */

  .form-actions input[type="submit"] {
    width: 100%;
    margin-right: 0;
    margin-bottom: 16px;
  }

  .ot-logo-references {
    gap: 0 41px;
    flex-direction: column;
  }
}


@media all and (min-width: 795px) and (max-width: 1080px) {
  .layout-container > footer, .layout-container > header {
    padding: 0 32px;
    max-width: calc(100% - 64px);
  }

  .ot-logo-references {
    gap: 0 15px;
  }

  .ot-logo-references img {
    height: 45px;
    width: auto;
  }


}

@media all and (min-width: 421px) and (max-width: 576px) {
  .ot-logo-references img {
    height: 45px;
    width: auto;
  }

  .ot-logo-references {
    gap: 0 22px;
  }
}

.a-propos:any-link {
  color: var(--dark-bg);
  font-size: 16px;
  font-weight: 700;
  border: 1px solid var(--dark-bg);
  background: var(--light-bg);
  padding: 10px 38px;
  border-radius: 5px;
  margin-top: 16px;
  display: inline-block;
  text-decoration: none;
}

.a-propos:any-link::after {
  content: url('https://api.iconify.design/carbon/arrow-right.svg?color=%2328156f&width=20&height=20');
  display: inline-block;
  position: relative;
  top: 4px;
  left: 4px;
  transition: transform 0.4s ease;
  transform-origin: center;
}
.a-propos:any-link:hover::after {
  transform: rotate(-45deg);
}


@media (max-width: 420px) {
  .ot-logo-references img {
    height: 45px;
    width: auto;
  }
}
