@charset "UTF-8";
/*---CSS RESET---*/
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block; }

body {
  line-height: 1; }

ol,
ul {
  list-style: none; }

blockquote,
q {
  quotes: none; }

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

b,
strong {
  font-weight: bold; }

em {
  font-style: italic; }

a {
  text-decoration: none; }

a img {
  border: none; }

/*! normalize.css v2.0.0 | MIT License | git.io/normalize */
/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */
/*
 * Corrects `inline-block` display not defined in IE 8/9.
 */
audio,
canvas,
video {
  display: inline-block;
  *display: inline;
  *zoom: 1; }

/*
 * Prevents modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0; }

/*
 * Addresses styling for `hidden` attribute not present in IE 8/9.
 */
[hidden] {
  display: none; }

/* ==========================================================================
   Base
   ========================================================================== */
/*
 * 2. Prevents iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  -webkit-text-size-adjust: 100%;
  /* 2 */
  -ms-text-size-adjust: 100%;
  /* 2 */ }

/* ==========================================================================
   Links
   ========================================================================== */
/*
 * Addresses `outline` inconsistency between Chrome and other browsers.
 */
a:focus {
  outline: thin dotted; }

/*
 * Improves readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover,
a:focus {
  outline: 0; }

/* ==========================================================================
   Typography
   ========================================================================== */
/*
 * Addresses styling not present in IE 8/9, Safari 5, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted; }

/*
 * Addresses styling not present in Safari 5 and Chrome.
 */
dfn {
  font-style: italic; }

/*
 * Addresses styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000; }

/*
 * Improves readability of pre-formatted text in all browsers.
 */
pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word; }

/*
 * Sets consistent quote types.
 */
q {
  quotes: "“" "”" "‘" "’"; }

/*
 * Addresses inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%; }

/*
 * Prevents `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

/* ==========================================================================
   Embedded content
   ========================================================================== */
/*
 * Removes border when inside `a` element in IE 8/9.
 */
img {
  border: 0; }

/*
 * Corrects overflow displayed oddly in IE 9.
 */
svg:not(:root) {
  overflow: hidden; }

/* ==========================================================================
   Figures
   ========================================================================== */
/*
 * Addresses margin not present in IE 8/9 and Safari 5.
 */
figure {
  margin: 0; }

/* ==========================================================================
   Forms
   ========================================================================== */
/*
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

/*
 * 1. Corrects color not being inherited in IE 8/9.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */ }

/*
 * 1. Corrects font family not being inherited in all browsers.
 * 2. Corrects font size not being inherited in all browsers.
 * 3. Addresses margins set differently in Firefox 4+, Safari 5, and Chrome
 */
button,
input,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 2 */
  margin: 0;
  /* 3 */ }

/*
 * Addresses Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
button,
input {
  line-height: normal; }

/*
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Corrects inability to style clickable `input` types in iOS.
 * 3. Improves usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */ }

/*
 * Re-set default cursor for disabled elements.
 */
button[disabled],
input[disabled] {
  cursor: default; }

/*
 * 1. Addresses box sizing set to `content-box` in IE 8/9.
 * 2. Removes excess padding in IE 8/9.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/*
 * 1. Addresses `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Addresses `box-sizing` set to `border-box` in Safari 5 and Chrome
 *    (include `-moz` to future-proof).
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  /* 2 */
  box-sizing: content-box; }

/*
 * Removes inner padding and search cancel button in Safari 5 and Chrome
 * on OS X.
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/*
 * Removes inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

/*
 * 1. Removes default vertical scrollbar in IE 8/9.
 * 2. Improves readability and alignment in all browsers.
 */
textarea {
  overflow: auto;
  /* 1 */
  vertical-align: top;
  /* 2 */ }

/* =============================================================================
   Embedded content
   ========================================================================== */
/*
 * 1. Improve image quality when scaled in IE7: h5bp.com/d
 * 2. Remove the gap between images and borders on image containers: h5bp.com/i/440
 */
img {
  border: 0;
  -ms-interpolation-mode: bicubic;
  vertical-align: middle; }

/*
 * Correct overflow not hidden in IE9
 */
svg:not(:root) {
  overflow: hidden; }

/* =============================================================================
   Figures
   ========================================================================== */
figure {
  margin: 0; }

/* =============================================================================
   Forms
   ========================================================================== */
form {
  margin: 0; }

fieldset {
  border: 0;
  margin: 0;
  padding: 0; }

/* Indicate that 'label' will shift focus to the associated form element */
label {
  cursor: pointer; }

/*
 * 1. Correct color not inheriting in IE6/7/8/9
 * 2. Correct alignment displayed oddly in IE6/7
 */
legend {
  border: 0;
  *margin-left: -7px;
  padding: 0;
  white-space: normal; }

/*
 * 1. Correct font-size not inheriting in all browsers
 * 2. Remove margins in FF3/4 S5 Chrome
 * 3. Define consistent vertical alignment display in all browsers
 */
button,
input,
select,
textarea {
  font-size: 100%;
  margin: 0;
  vertical-align: baseline;
  *vertical-align: middle; }

/*
 * 1. Define line-height as normal to match FF3/4 (set using !important in the UA stylesheet)
 */
button,
input {
  line-height: normal; }

/*
 * 1. Display hand cursor for clickable form elements
 * 2. Allow styling of clickable form elements in iOS
 * 3. Correct inner spacing displayed oddly in IE7 (doesn't effect IE6)
 */
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
  cursor: pointer;
  -webkit-appearance: button;
  *overflow: visible; }

/*
 * Re-set default cursor for disabled elements
 */
button[disabled],
input[disabled] {
  cursor: default; }

/*
 * Consistent box sizing and appearance
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  padding: 0;
  *width: 13px;
  *height: 13px; }

input[type="search"] {
  -webkit-appearance: textfield;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  box-sizing: content-box; }

input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button {
  -webkit-appearance: none; }

/*
 * Remove inner padding and border in FF3/4: h5bp.com/l
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

/*
 * 1. Remove default vertical scrollbar in IE6/7/8/9
 * 2. Allow only vertical resizing
 */
textarea {
  overflow: auto;
  vertical-align: top;
  resize: vertical; }

/* Colors for form validity */
input:invalid,
textarea:invalid {
  background-color: #f0dddd; }

/* =============================================================================
   Chrome Frame Prompt
   ========================================================================== */
.chromeframe {
  margin: 0.2em 0;
  background: #ccc;
  color: black;
  padding: 0.2em 0; }

/* ==|== non-semantic helper classes ========================================
   Please define your styles before this section.
   ========================================================================== */
/* For image replacement */
.ir {
  display: block;
  border: 0;
  text-indent: -999em;
  overflow: hidden;
  background-color: transparent;
  background-repeat: no-repeat;
  text-align: left;
  direction: ltr;
  *line-height: 0; }

.ir br {
  display: none; }

/* Hide from both screenreaders and browsers: h5bp.com/u */
.hidden {
  display: none !important;
  visibility: hidden; }

/* Hide only visually, but have it available for screenreaders: h5bp.com/v */
.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; }

/* Extends the .visuallyhidden class to allow the element to be focusable when navigated to via the keyboard: h5bp.com/p */
.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto; }

/* Hide visually and from screenreaders, but maintain layout */
.invisible {
  visibility: hidden; }

/* ==|== print styles =======================================================
   Print styles.
   Inlined to avoid required HTTP connection: h5bp.com/r
   ========================================================================== */
button {
  background-color: transparent;
  border: none;
  padding: 0;
  margin: 0; }

.js-focus-visible :focus:not(.focus-visible) {
  outline: none; }

* {
  box-sizing: border-box;
  background-clip: padding-box; }

/* PATH */
/* FONTS */
/* COLORS */
/* BREAKPOINTS */
@font-face {
  font-family: 'Overpass';
  src: url(/site/templates/assets/fonts/fonts/Overpass-Regular.woff2) format("woff2"), url(/site/templates/assets/fonts/fonts/Overpass-Regular.woff) format("woff");
  font-weight: 400;
  /* Regular weight */
  font-style: normal; }

@font-face {
  font-family: 'Overpass';
  src: url(/site/templates/assets/fonts/fonts/Overpass-Bold.woff2) format("woff2"), url(/site/templates/assets/fonts/fonts/Overpass-Bold.woff) format("woff");
  font-weight: 700;
  /* Bold weight */
  font-style: normal; }

@font-face {
  font-family: 'Overpass';
  src: url(/site/templates/assets/fonts/fonts/Overpass-Italic.woff2) format("woff2"), url(/site/templates/assets/fonts/fonts/Overpass-Italic.woff) format("woff");
  font-weight: 400;
  /* Regular weight */
  font-style: italic; }

/* Esempio di altri stili o pesi */
@font-face {
  font-family: 'Overpass';
  src: url(/site/templates/assets/fonts/fonts/Overpass-Light.woff2) format("woff2"), url(/site/templates/assets/fonts/fonts/Overpass-Light.woff) format("woff");
  font-weight: 300;
  /* Light weight */
  font-style: normal; }

body {
  font-family: "Overpass", sans-serif;
  color: #010f59;
  text-rendering: optimizeLegibility;
  -webkit-text-size-adjust: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.heading-secondary, .course-files-heading, .course-video-heading,
.course-images-heading, .course-professors-heading {
  color: #7476e6;
  font-size: 1.4375rem;
  font-weight: 700;
  line-height: 1.26; }

.page-heading {
  font-size: 2.25rem;
  font-weight: 900;
  text-transform: uppercase;
  color: #7476e6; }
  @media screen and (max-width: 1024px) {
    .page-heading {
      font-size: 1.75rem; } }
  @media screen and (max-width: 768px) {
    .page-heading {
      font-size: 1.375rem; } }
  @media screen and (max-width: 480px) {
    .page-heading {
      font-size: 1.125rem; } }

.searched-mark {
  background-color: #7476e6;
  color: #ffffff; }

body {
  background: #f3f5f8;
  overflow-x: hidden; }

.page {
  width: calc(100% - 50px); }
  @media screen and (max-width: 1279px) {
    .page {
      width: 100%; } }

.elearning-bar {
  position: fixed;
  top: auto;
  bottom: 0;
  right: 0;
  width: 50px;
  height: 100%;
  background-color: #7476e6;
  color: #ffffff;
  border-left: 1px solid #010f59;
  padding-top: 40px; }
  @media screen and (max-width: 1279px) {
    .elearning-bar {
      display: none; } }
  .elearning-bar .elearning-bar-anchor {
    display: inline-block;
    height: 50px;
    line-height: 50px;
    font-size: 1.75rem;
    font-weight: 900;
    color: #ffffff;
    white-space: nowrap;
    transform-origin: 0 0;
    transform: rotate(90deg) translateY(-50px); }
    .elearning-bar .elearning-bar-anchor:before {
      content: "";
      width: 30px;
      height: 38px;
      display: inline-block;
      background-image: url(/site/templates/assets/images/5f88beafd1b519a4776698a990c0e699.svg);
      background-size: 30px 38px;
      background-repeat: no-repeat;
      background-position: center center;
      margin-right: 26px;
      vertical-align: middle;
      transform: rotate(-90deg); }

/*! Flickity v2.2.1
https://flickity.metafizzy.co
---------------------------------------------- */
.flickity-enabled {
  position: relative; }

.flickity-enabled:focus {
  outline: none; }

.flickity-viewport {
  overflow: hidden;
  position: relative;
  height: 100%; }

.flickity-slider {
  position: absolute;
  width: 100%;
  height: 100%; }

/* draggable */
.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.flickity-enabled.is-draggable .flickity-viewport {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab; }

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
  cursor: -webkit-grabbing;
  cursor: grabbing; }

/* ---- flickity-button ---- */
.flickity-button {
  position: absolute;
  background: rgba(255, 255, 255, 0.75);
  border: none;
  color: #333; }

.flickity-button:hover {
  background: white;
  cursor: pointer; }

.flickity-button:focus {
  outline: none;
  box-shadow: 0 0 0 5px #19F; }

.flickity-button:active {
  opacity: 0.6; }

.flickity-button:disabled {
  opacity: 0.3;
  cursor: auto;
  /* prevent disabled button from capturing pointer up event. #716 */
  pointer-events: none; }

.flickity-button-icon {
  fill: currentColor; }

/* ---- previous/next buttons ---- */
.flickity-prev-next-button {
  top: 50%;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  /* vertically center */
  transform: translateY(-50%); }

.flickity-prev-next-button.previous {
  left: 10px; }

.flickity-prev-next-button.next {
  right: 10px; }

/* right to left */
.flickity-rtl .flickity-prev-next-button.previous {
  left: auto;
  right: 10px; }

.flickity-rtl .flickity-prev-next-button.next {
  right: auto;
  left: 10px; }

.flickity-prev-next-button .flickity-button-icon {
  position: absolute;
  left: 20%;
  top: 20%;
  width: 60%;
  height: 60%; }

/* ---- page dots ---- */
.flickity-page-dots {
  position: absolute;
  width: 100%;
  bottom: -25px;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1; }

.flickity-rtl .flickity-page-dots {
  direction: rtl; }

.flickity-page-dots .dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 8px;
  background: #333;
  border-radius: 50%;
  opacity: 0.25;
  cursor: pointer; }

.flickity-page-dots .dot.is-selected {
  opacity: 1; }

/* Flickity fullscreen v1.0.1
------------------------- */
.flickity-enabled.is-fullscreen {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.9);
  padding-bottom: 35px;
  z-index: 500; }

.flickity-enabled.is-fullscreen .flickity-page-dots {
  bottom: 10px; }

.flickity-enabled.is-fullscreen .flickity-page-dots .dot {
  background: white; }

/* prevent page scrolling when flickity is fullscreen */
html.is-flickity-fullscreen {
  overflow: hidden; }

/* ---- flickity-fullscreen-button ---- */
.flickity-fullscreen-button {
  display: block;
  top: 16px;
  right: 16px;
  width: 24px;
  height: 24px;
  background-image: url(/site/templates/assets/images/d84a90ab3e6f7f0be6f7964e9c644780.svg);
  background-repeat: no-repeat;
  background-size: 24px 24px;
  background-position: center center;
  background-color: transparent;
  transition: transform 0.2s; }
  .flickity-fullscreen-button svg {
    opacity: 0; }
  .flickity-fullscreen-button:hover {
    background-image: url(/site/templates/assets/images/d84a90ab3e6f7f0be6f7964e9c644780.svg);
    background-color: transparent; }

/* right-to-left */
.flickity-rtl .flickity-fullscreen-button {
  right: auto;
  left: 10px; }

.flickity-fullscreen-button-exit {
  display: none; }

.flickity-enabled.is-fullscreen .flickity-fullscreen-button-exit {
  display: block;
  background-image: url(/site/templates/assets/images/bf19f71c2a3f489b95f80689cf54614a.svg); }
  .flickity-enabled.is-fullscreen .flickity-fullscreen-button-exit:hover {
    background-image: url(/site/templates/assets/images/bf19f71c2a3f489b95f80689cf54614a.svg); }

.flickity-enabled.is-fullscreen .flickity-fullscreen-button-view {
  display: none; }

.flickity-fullscreen-button .flickity-button-icon {
  position: absolute;
  width: 16px;
  height: 16px;
  left: 4px;
  top: 4px; }

/* flickity-fade */
.flickity-enabled.is-fade .flickity-slider > * {
  pointer-events: none;
  z-index: 0; }

.flickity-enabled.is-fade .flickity-slider > .is-selected {
  pointer-events: auto;
  z-index: 1; }

/**
 * Defaults
 */
.mCCF {
  font-size: initial;
  margin: 0;
  padding: 0.7em 1em;
  position: fixed;
  z-index: 9999; }

.mCCF--top,
.mCCF--bottom {
  right: 0;
  left: 0; }

.mCCF--top {
  top: 0; }

.mCCF--bottom {
  bottom: 0; }

.mCCF__message {
  font-size: 90%;
  letter-spacing: 0.03em;
  line-height: 1.4;
  margin: 0;
  float: left;
  width: calc(100% - 100px); }

.mCCF__link {
  border: none;
  text-decoration: none;
  margin-left: 0.5em; }

.mCCF__accept {
  border-radius: 4px;
  border: none;
  cursor: pointer;
  float: right;
  font-size: 0.9em;
  margin-left: 1em;
  padding: 0.4em 0.6em; }

/**
 * Dark
 */
.mCCF--dark {
  background: #7476e6; }

/*
.mCCF--dark.mCCF--top {
    box-shadow: 0 1px 8px #363535;
}
.mCCF--dark.mCCF--bottom {
    box-shadow: 0 -1px 4px #363535;
}*/
.mCCF--dark .mCCF__message {
  color: #fff; }

.mCCF--dark .mCCF__link {
  color: #ffffff;
  text-decoration: underline; }

.mCCF--dark .mCCF__accept {
  color: #ffffff;
  font-weight: 700; }

.mCCF--dark .mCCF__accept:hover {
  text-decoration: underline; }

/**
 * Light
 */
.mCCF--light {
  background: #e4e4e4;
  color: #000; }

.mCCF--light.mCCF--top {
  box-shadow: 0 0 8px #9a9a9a; }

.mCCF--light.mCCF--bottom {
  box-shadow: 1px -1px 3px #9a9a9a; }

.mCCF--light .mCCF__message {
  color: #000; }

.mCCF--light .mCCF__link {
  color: #6f6e6e; }

.mCCF--light .mCCF__link:hover {
  color: #7a7a7c; }

.mCCF--light .mCCF__accept {
  color: #fff;
  background: #929292; }

.mCCF--light .mCCF__accept:hover {
  background: #626263; }

/**
 * Swiper 11.1.15
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2024 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: November 18, 2024
 */
/* FONT_START */
@font-face {
  font-family: 'swiper-icons';
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA");
  font-weight: 400;
  font-style: normal; }

/* FONT_END */
:root {
  --swiper-theme-color: #007aff;
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  --swiper-wrapper-transition-timing-function: initial;
  */ }

:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1; }

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
  display: block; }

.swiper-vertical > .swiper-wrapper {
  flex-direction: column; }

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box; }

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0); }

.swiper-horizontal {
  touch-action: pan-y; }

.swiper-vertical {
  touch-action: pan-x; }

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block; }

.swiper-slide-invisible-blank {
  visibility: hidden; }

/* Auto Height */
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto; }

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height; }

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }

/* 3D Effects */
.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px; }

.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d; }

.swiper-3d {
  perspective: 1200px; }

.swiper-3d .swiper-slide,
.swiper-3d .swiper-cube-shadow {
  transform-style: preserve-3d; }

/* CSS Mode */
.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  /* For Firefox */
  -ms-overflow-style: none;
  /* For Internet Explorer and Edge */ }

.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none; }

.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start; }

.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
  scroll-snap-type: x mandatory; }

.swiper-css-mode.swiper-vertical > .swiper-wrapper {
  scroll-snap-type: y mandatory; }

.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
  scroll-snap-type: none; }

.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: none; }

.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
  content: '';
  flex-shrink: 0;
  order: 9999; }

.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always; }

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before); }

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after); }

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before); }

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after); }

/* Slide styles start */
/* 3D Shadows */
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10; }

.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15); }

.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent; }

.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s infinite linear; }

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff; }

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000; }

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

/* Slide styles end */
:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-top-offset: 50%;
  --swiper-navigation-sides-offset: 10px;
  --swiper-navigation-color: var(--swiper-theme-color);
  */ }

.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: var(--swiper-navigation-top-offset, 50%);
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color)); }

.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none; }

.swiper-button-prev.swiper-button-hidden,
.swiper-button-next.swiper-button-hidden {
  opacity: 0;
  cursor: auto;
  pointer-events: none; }

.swiper-navigation-disabled .swiper-button-prev,
.swiper-navigation-disabled .swiper-button-next {
  display: none !important; }

.swiper-button-prev svg,
.swiper-button-next svg {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transform-origin: center; }

.swiper-rtl .swiper-button-prev svg,
.swiper-rtl .swiper-button-next svg {
  transform: rotate(180deg); }

.swiper-button-prev,
.swiper-rtl .swiper-button-next {
  left: var(--swiper-navigation-sides-offset, 10px);
  right: auto; }

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto; }

.swiper-button-lock {
  display: none; }

/* Navigation font start */
.swiper-button-prev:after,
.swiper-button-next:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  font-variant: initial;
  line-height: 1; }

.swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after {
  content: 'prev'; }

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto; }

.swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after {
  content: 'next'; }

/* Navigation font end */
.main-header-wrapper {
  position: relative;
  width: 100vw; }
  .main-header-wrapper:before {
    content: "";
    display: block;
    width: 456px;
    height: 456px;
    bottom: -193px;
    left: -195px;
    background-color: #ffffff;
    border-bottom: 1px solid #010f59;
    position: absolute;
    transform: rotate(-39deg);
    z-index: 2; }
    .linear-header .main-header-wrapper:before {
      display: none; }
    @media screen and (max-width: 1480px) {
      .main-header-wrapper:before {
        display: none; } }
  .main-header-wrapper:after {
    content: "";
    display: block;
    width: calc(100% - 50px);
    height: 10px;
    border-bottom: 1px solid #010f59;
    position: absolute;
    bottom: -1px;
    left: 50px;
    z-index: 1; }
    @media screen and (max-width: 1024px) {
      .main-header-wrapper:after {
        width: calc(100% - 20px);
        left: 20px; } }
    @media screen and (max-width: 540px) {
      .main-header-wrapper:after {
        width: 100%;
        left: 0; } }

.main-header {
  width: 100vw;
  position: relative;
  z-index: 11;
  background-color: #ffffff;
  transition: all 0.4s cubic-bezier(0.23, 1, 0.32, 1);
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  padding-left: 50px;
  padding-top: 3.13vw;
  padding-bottom: 2vw;
  padding-right: 7.81vw; }
  @media screen and (max-width: 1279px) {
    .main-header {
      height: 100px;
      min-height: 100px;
      padding-left: 50px;
      padding-top: 20px;
      padding-bottom: 24px;
      padding-right: 88px; } }
  @media screen and (max-width: 1023px) {
    .main-header {
      padding-left: 20px;
      padding-right: 68px;
      height: 74px;
      min-height: 74px; } }

.linear-header .main-header:before {
  display: none; }

.has-header-scrolled .main-header {
  position: fixed;
  z-index: 20;
  top: -100px;
  left: 0;
  width: 100vw;
  height: 100px;
  transform: translateY(100px);
  padding-left: 50px;
  padding-top: 20px;
  padding-bottom: 24px;
  padding-right: 88px; }
  @media screen and (max-width: 1279px) {
    .has-header-scrolled .main-header {
      height: 100px;
      min-height: 100px;
      top: -100px;
      transform: translateY(100px); } }
  @media screen and (max-width: 1023px) {
    .has-header-scrolled .main-header {
      height: 74px;
      min-height: 74px;
      top: 0;
      transform: translateY(0);
      padding-left: 20px;
      padding-right: 68px;
      padding-top: 0; } }
  .has-header-scrolled .main-header .main-logo-big-wrapper {
    display: none; }
  .has-header-scrolled .main-header .main-logo-small-wrapper {
    display: flex; }
  .has-header-scrolled .main-header .search-bar__trigger {
    bottom: 60%; }
  .has-header-scrolled .main-header .accademia-link-wrapper {
    width: 70px;
    margin-bottom: -8px; }
    @media screen and (max-width: 1023px) {
      .has-header-scrolled .main-header .accademia-link-wrapper {
        width: 50px;
        margin-bottom: -10px; } }

.contacts-block-wrapper {
  position: absolute;
  bottom: 1px;
  left: 0;
  width: 100%;
  transform: translate(0, 100%);
  background-color: #ffffff;
  border-bottom: 1px solid #010f59;
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transition: max-height 0.3s ease-out, opacity 0.1s 0.2s;
  padding-bottom: 20px; }

.contacts-block {
  padding: 20px 0 30px;
  margin-left: 50px;
  margin-right: 60px;
  position: relative; }
  .contacts-block .contact {
    display: inline-block;
    padding: 54px 0 0 46px;
    background-image: url(/site/templates/assets/images/7770562f7c5ada68ccea88fc27bc76ed.svg);
    background-position: top left 46px;
    background-size: 30px 36px;
    background-repeat: no-repeat;
    width: 300px;
    vertical-align: top; }
    .contacts-block .contact:first-child {
      border-left: 1px dotted #010f59; }
  .contacts-block .contacts-block__label {
    font-size: 1.3125rem;
    text-transform: uppercase;
    font-weight: 600;
    margin-bottom: 30px; }
  .contacts-block .contact__name {
    font-size: 1.3125rem;
    line-height: 1.2;
    font-weight: 600;
    margin-bottom: 8px; }
  .contacts-block .contact__role {
    font-size: 1.3125rem;
    line-height: 1.2;
    font-weight: 600;
    font-style: italic;
    margin-bottom: 8px;
    color: #7476e6; }
  .contacts-block .contact__address {
    font-size: 1.3125rem;
    line-height: 1.2;
    font-weight: 300; }
  .contacts-block .contact__phone-number,
  .contacts-block .contact__email {
    font-size: 1.3125rem;
    line-height: 1.2;
    font-weight: 300;
    color: #7476e6;
    display: block; }
  .contacts-block .contacts-close-button {
    position: absolute;
    right: -60px;
    width: 40px;
    height: 40px;
    text-indent: -99999em;
    overflow: hidden;
    background-image: url(/site/templates/assets/images/9cfdd9dfabadbbd587a7087e0ca0b3af.svg);
    background-position: center center;
    background-size: 18px 18px;
    background-repeat: no-repeat; }
  .contacts-block.contacts-block--offices a {
    color: #010f59; }
  .contacts-block.contacts-block--contacts .contacts-block__label {
    color: #7476e6; }
  .contacts-block.contacts-block--contacts .contact {
    background-image: url(/site/templates/assets/images/eabe5e947755ad44b1dbbbce8c62e427.svg);
    background-position: top left 46px;
    background-size: 20px 40px;
    background-repeat: no-repeat; }
    .contacts-block.contacts-block--contacts .contact:first-child {
      border-color: #7476e6; }
  .contacts-block.contacts-block--contacts .contact__name {
    color: #7476e6;
    margin-bottom: 4px; }

body.has-contacts-open .contacts-block-wrapper {
  max-height: 900px;
  opacity: 1;
  transition: max-height 0.3s ease-out, opacity 0.1s; }

.accademia-link-wrapper {
  width: 8.13vw;
  margin-left: auto; }
  @media screen and (max-width: 1279px) {
    .accademia-link-wrapper {
      width: 70px;
      margin-bottom: -8px; } }
  @media screen and (max-width: 1023px) {
    .accademia-link-wrapper {
      width: 50px;
      margin-bottom: -11px; } }
  .accademia-link-wrapper svg, .accademia-link-wrapper img {
    width: 100%; }

.main-navigation {
  color: #010f59;
  display: flex; }
  .main-navigation:hover .main-navigation__item {
    opacity: 0.4; }
    .main-navigation:hover .main-navigation__item:hover {
      opacity: 1; }
  @media screen and (max-width: 1279px) {
    .main-navigation {
      display: none; } }

.main-navigation__item {
  font-weight: 200;
  font-size: calc(18px + (23 - 18) * ((100vw - 1200px) / (1920 - 1200)));
  margin-right: 2.08vw;
  display: inline-block;
  transition: opacity 0.2s; }
  .main-navigation__item.is-active {
    border-bottom: 2px solid #7476e6; }

.main-navigation__anchor {
  color: #010f59; }

.navigation-mobile {
  position: fixed;
  width: 100%;
  height: 0;
  top: 0;
  left: 0;
  background-color: #010f59;
  color: #ffffff;
  z-index: 10;
  overflow: auto;
  opacity: 0;
  will-change: opacity, height;
  transition: opacity 500ms cubic-bezier(0.645, 0.045, 0.355, 1), height 500ms cubic-bezier(0.645, 0.045, 0.355, 1); }
  .navigation-mobile .navigation-mobile__content {
    position: relative;
    padding-bottom: 60px;
    padding-top: 90px;
    min-height: 100vh; }
  .navigation-mobile .navigation-mobile__item {
    font-size: 1.25rem;
    display: block;
    font-weight: 600;
    border-bottom: 1px solid #ffffff;
    margin-right: 0; }
    .navigation-mobile .navigation-mobile__item:first-child {
      border-top: 1px solid #ffffff; }
  .navigation-mobile .navigation-mobile__anchor {
    color: #ffffff;
    display: block;
    padding: 0 50px;
    height: 44px;
    line-height: 44px; }
    @media screen and (max-width: 1024px) {
      .navigation-mobile .navigation-mobile__anchor {
        padding: 0 20px; } }
  .navigation-mobile .navigation-mobile__item.is-contacts-item {
    border-bottom: none; }
    .navigation-mobile .navigation-mobile__item.is-contacts-item .navigation-mobile__anchor {
      border-bottom: 1px solid #ffffff;
      position: relative; }
      .navigation-mobile .navigation-mobile__item.is-contacts-item .navigation-mobile__anchor:before {
        content: "";
        display: block;
        height: 1px;
        width: 14px;
        position: absolute;
        top: 50%;
        right: 30px;
        background-color: #ffffff; }
        @media screen and (max-width: 1024px) {
          .navigation-mobile .navigation-mobile__item.is-contacts-item .navigation-mobile__anchor:before {
            right: 15px; } }
      .navigation-mobile .navigation-mobile__item.is-contacts-item .navigation-mobile__anchor:after {
        content: "";
        display: block;
        height: 1px;
        width: 14px;
        position: absolute;
        top: 50%;
        right: 30px;
        background-color: #ffffff;
        transform: rotate(90deg);
        will-change: transform;
        transition: transform 0.4s; }
        @media screen and (max-width: 1024px) {
          .navigation-mobile .navigation-mobile__item.is-contacts-item .navigation-mobile__anchor:after {
            right: 15px; } }
    .navigation-mobile .navigation-mobile__item.is-contacts-item.has-contacts-open .navigation-mobile__anchor:after {
      transform: rotate(0deg); }
    .navigation-mobile .navigation-mobile__item.is-contacts-item.has-contacts-open .contacts-block-wrapper--mobile {
      opacity: 1;
      max-height: 500px; }
      @media screen and (max-width: 1024px) {
        .navigation-mobile .navigation-mobile__item.is-contacts-item.has-contacts-open .contacts-block-wrapper--mobile {
          max-height: 1000px; } }
  .navigation-mobile .contacts-block-wrapper--mobile {
    opacity: 0;
    max-height: 0;
    transition: opacity 0.5s ease-out, max-height 0.5s ease-out;
    will-change: opacity, max-height;
    overflow: hidden; }
  .navigation-mobile .contacts-block__label {
    color: #ffffff;
    font-size: 0.875rem;
    margin-bottom: 16px; }
  .navigation-mobile .contacts-block {
    display: block;
    margin: 0;
    padding: 20px 50px; }
    @media screen and (max-width: 1024px) {
      .navigation-mobile .contacts-block {
        padding: 20px; } }
  .navigation-mobile .contact {
    padding: 30px 20px 0 0;
    background-image: url(/site/templates/assets/images/c847c4164edb9e307bd72872d61ae8d8.svg);
    background-position: top left;
    background-size: 18px 22px;
    background-repeat: no-repeat;
    width: auto;
    width: 200px; }
    @media screen and (max-width: 640px) {
      .navigation-mobile .contact {
        display: block;
        margin-bottom: 18px; } }
    .navigation-mobile .contact:first-child {
      border-left: 0; }
  .navigation-mobile .contacts-block--contacts .contacts-block__label {
    color: #ffffff; }
  .navigation-mobile .contacts-block--contacts .contact {
    padding-top: 40px;
    background-image: url(/site/templates/assets/images/e25b23f692f78fa30003510f7232cbd3.svg);
    background-position: top left;
    background-size: 15px 30px; }
  .navigation-mobile .contacts-block--contacts .contact__name {
    color: #ffffff; }
  .navigation-mobile .contact__name {
    font-size: 0.875rem;
    color: #ffffff; }
  .navigation-mobile .contact__address {
    font-size: 0.875rem;
    color: #ffffff; }
  .navigation-mobile .contact__role {
    font-size: 0.875rem;
    color: #ffffff; }
  .navigation-mobile .contacts-block--contacts .contact__phone-number {
    font-size: 0.875rem;
    color: #ffffff; }
  .navigation-mobile .contacts-block--contacts .contact__email {
    font-size: 0.875rem;
    color: #ffffff; }
  .navigation-mobile .navigation-mobile__footer {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 20px 50px; }
    .navigation-mobile .navigation-mobile__footer:after {
      content: ".";
      display: block;
      clear: both;
      visibility: hidden;
      line-height: 0;
      height: 0; }
    @media screen and (max-width: 1024px) {
      .navigation-mobile .navigation-mobile__footer {
        padding: 20px; } }
  .navigation-mobile .navigation-mobile__footer__linkedin {
    width: 20px;
    height: 20px;
    float: left;
    display: block; }
    .navigation-mobile .navigation-mobile__footer__linkedin img {
      width: 20px;
      height: 20px;
      display: block; }
  .navigation-mobile .navigation-mobile__footer__list {
    float: right;
    margin-top: 5px;
    white-space: nowrap; }
  .navigation-mobile .navigation-mobile__footer__item {
    display: inline-block;
    font-weight: 200;
    margin-left: 60px; }
    @media screen and (max-width: 540px) {
      .navigation-mobile .navigation-mobile__footer__item {
        margin-left: 40px; } }
    @media screen and (max-width: 480px) {
      .navigation-mobile .navigation-mobile__footer__item {
        margin-left: 20px; } }
    .navigation-mobile .navigation-mobile__footer__item:first-child {
      margin-left: 0; }
    .navigation-mobile .navigation-mobile__footer__item a {
      color: #ffffff;
      display: block; }
  .navigation-mobile .navigation-mobile__search-block {
    padding: 0 50px 24px;
    width: calc(100% - 60px); }
    .navigation-mobile .navigation-mobile__search-block:after {
      content: ".";
      display: block;
      clear: both;
      visibility: hidden;
      line-height: 0;
      height: 0; }
    @media screen and (max-width: 1024px) {
      .navigation-mobile .navigation-mobile__search-block {
        padding: 0 20px 24px; } }
  .navigation-mobile .navigation-mobile__trigger {
    height: 40px;
    width: 40px;
    float: left;
    padding-right: 16px; }
  .navigation-mobile .navigation-mobile__search-input-wrapper {
    width: calc(100% - 40px);
    float: left;
    padding-top: 8px;
    padding-bottom: 8px; }
  .navigation-mobile .navigation-mobile__search-input {
    background-color: transparent;
    border: none;
    border-bottom: 1px solid #ffffff;
    color: #ffffff;
    width: 100%;
    height: 24px;
    line-height: 24px;
    display: block;
    border-radius: 0;
    -webkit-appearance: none; }
  .navigation-mobile .navigation-mobile__language-anchor {
    position: absolute;
    font-size: 0.875rem;
    text-transform: lowercase;
    display: block;
    width: 30px;
    height: 30px;
    line-height: 30px;
    top: 90px;
    right: 15px;
    color: #ffffff; }
  @media screen and (min-width: 1280px) {
    .navigation-mobile {
      display: none; } }

.main-nav-trigger {
  width: 23px;
  height: 20px;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translate(0, -50%);
  transition: transform 0.2s;
  display: none; }
  @media screen and (max-width: 1279px) {
    .main-nav-trigger {
      display: block; } }
  .main-nav-trigger .trigger-line {
    height: 1px;
    width: 100%;
    background-color: #010f59;
    position: absolute;
    left: 0;
    transition: background-color 0.2s; }
    .main-nav-trigger .trigger-line:nth-child(1) {
      top: 0px; }
    .main-nav-trigger .trigger-line:nth-child(2) {
      top: 50%; }
    .main-nav-trigger .trigger-line:nth-child(3) {
      bottom: 0px; }

@media screen and (max-width: 1279px) {
  .has-nav-open {
    overflow: hidden; }
    .has-nav-open .main-header {
      background-color: #010f59; }
    .has-nav-open .main-nav-trigger {
      transform: translate(0, -50%) rotate(90deg); }
      .has-nav-open .main-nav-trigger .trigger-line {
        background-color: #ffffff; }
    .has-nav-open .navigation-mobile {
      height: 100vh;
      opacity: 1; } }

.main-logo-big-wrapper {
  width: 15.63vw;
  margin-right: 10.16vw; }
  @media screen and (max-width: 1279px) {
    .main-logo-big-wrapper {
      display: none; } }

.main-logo-link {
  display: block; }
  .main-logo-link img {
    display: block;
    width: 100%; }

.main-logo-link--big {
  width: 100%; }

.main-logo-small-wrapper {
  display: none;
  flex-direction: row;
  align-items: flex-end;
  margin-right: 5.2vw; }
  .main-logo-small-wrapper .partner-logo--tor-vergata {
    width: 124px;
    margin-right: 12px; }
    @media screen and (max-width: 1023px) {
      .main-logo-small-wrapper .partner-logo--tor-vergata {
        width: 80px;
        margin-right: 15px; } }
  .main-logo-small-wrapper .partner-logo--bambino-gesu {
    width: 82px; }
    @media screen and (max-width: 1023px) {
      .main-logo-small-wrapper .partner-logo--bambino-gesu {
        width: 52px; } }
  @media screen and (max-width: 1279px) {
    .main-logo-small-wrapper {
      display: flex; } }

.main-logo-link--small {
  width: 60px;
  margin-right: 35px;
  /*@media screen and (max-width: 1024px) {
    //left: 20px;
  }
  @media screen and (max-width: 768px) {
    display: block;
    //left: 20px;
  }
  @media screen and (max-width: 480px) {
    width: 38px;
    //bottom: 26px;
  }*/ }
  @media screen and (max-width: 1023px) {
    .main-logo-link--small {
      width: 38px;
      margin-right: 20px; } }

.sdp-logo-svg path {
  fill: #000f59;
  transition: fill 0.2s; }

@media screen and (max-width: 1279px) {
  .has-nav-open .sdp-logo-svg path {
    fill: #ffffff; } }

.partners-logos {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-end;
  margin-top: 0.89vw; }

.opbg-svg-logo {
  width: 100%; }
  .opbg-svg-logo .opbg-path-1 {
    fill: #213b86;
    transition: fill 0.2s; }
  .opbg-svg-logo .opbg-path-2 {
    fill: #84aedb;
    transition: fill 0.2s; }
  .opbg-svg-logo .opbg-path-3 {
    fill: #233986;
    transition: fill 0.2s; }

.tor-vergata-svg-logo {
  width: 100%; }
  .tor-vergata-svg-logo .tor-vergata-path-1 {
    fill: #007d34; }
  .tor-vergata-svg-logo .tor-vergata-path-2 {
    fill: #1d1d1b; }

.partner-logo img {
  display: block;
  width: 100%; }

@media screen and (max-width: 1279px) {
  .partner-logo {
    position: static;
    display: inline-block; } }

.partner-logo--bambino-gesu {
  width: 5.63vw; }
  @media screen and (max-width: 1279px) {
    .partner-logo--bambino-gesu {
      width: 82px; } }
  @media screen and (max-width: 480px) {
    .partner-logo--bambino-gesu {
      width: 56px; } }

.partner-logo--tor-vergata {
  width: 8.49vw; }
  @media screen and (max-width: 1279px) {
    .partner-logo--tor-vergata {
      transform: none;
      width: 124px;
      margin-right: 20px; } }
  @media screen and (max-width: 480px) {
    .partner-logo--tor-vergata {
      width: 86px; } }

@media screen and (max-width: 1279px) {
  .has-nav-open .opbg-svg-logo .opbg-path-1 {
    fill: #ffffff; }
  .has-nav-open .opbg-svg-logo .opbg-path-2 {
    fill: #ffffff; }
  .has-nav-open .opbg-svg-logo .opbg-path-3 {
    fill: #ffffff; }
  .has-nav-open .tor-vergata-svg-logo .tor-vergata-path-1 {
    fill: #ffffff; }
  .has-nav-open .tor-vergata-svg-logo .tor-vergata-path-2 {
    fill: #ffffff; } }

.search-bar {
  background-color: #09165d;
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  width: 50px; }
  .search-bar .language-anchor {
    color: #ffffff;
    font-size: 18px;
    position: absolute;
    bottom: 27%;
    left: 50%;
    transform: translateX(-50%); }
    .search-bar .language-anchor.language-anchor--is-current {
      display: none; }
  .search-bar .search-bar__trigger {
    width: 31px;
    height: 27px;
    position: absolute;
    bottom: 65%;
    left: 50%;
    transform: translate(-50%, 0);
    transition: all 0.4s ease-in-out;
    z-index: 2; }
    .search-bar .search-bar__trigger .search-bar__icon {
      width: 31px;
      height: 27px;
      display: block; }
  .search-bar .search-bar__close {
    width: 30px;
    height: 30px;
    position: absolute;
    bottom: 65%;
    left: 50%;
    transform: translate(-50%, -50px);
    opacity: 0;
    pointer-events: none;
    transition: all 0.4s ease-in-out;
    z-index: 1; }
    .search-bar .search-bar__close .search-bar__close-icon {
      width: 30px;
      height: 30px;
      display: block; }
  .search-bar .search-bar__input-wrapper {
    position: absolute;
    width: 0;
    height: 100%;
    top: 0;
    right: 100%;
    z-index: 100;
    overflow: hidden;
    transition: width 0.4s cubic-bezier(0.23, 1, 0.32, 1); }
    .search-bar .search-bar__input-wrapper .search-bar__input-content {
      width: calc(100vw - 31px);
      padding: 20px 24px 0 50px;
      background-color: #09165d;
      height: 100%;
      position: absolute;
      top: 0;
      right: 0; }
    .search-bar .search-bar__input-wrapper .search-bar__input {
      background-color: transparent;
      border: none;
      border-bottom: 1px solid #ffffff;
      width: 100%;
      height: 40px;
      line-height: 40px;
      font-size: 1.5rem;
      color: #ffffff;
      border-radius: 0;
      -webkit-appearance: none; }
      .search-bar .search-bar__input-wrapper .search-bar__input:focus {
        outline: #ffffff; }

.has-search-open .search-bar .search-bar__input-wrapper {
  width: calc(100vw - 31px); }

.has-search-open .search-bar__trigger {
  transform: translate(-50%, -50px);
  opacity: 0;
  pointer-events: none;
  z-index: 1; }

.has-search-open .search-bar__close {
  transform: translate(-50%, 0);
  opacity: 1;
  pointer-events: auto;
  z-index: 2; }

@media screen and (max-width: 1279px) {
  .search-bar {
    display: none; } }

.main-footer {
  background-color: #ffffff;
  border-top: 1px solid #010f59;
  padding: 36px 96px 36px 46px; }
  .main-footer:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0; }
  @media screen and (max-width: 1279px) {
    .main-footer {
      padding-right: 46px; } }
  @media screen and (max-width: 1024px) {
    .main-footer {
      padding: 36px 20px 36px 20px; } }
  .main-footer .main-footer-logo {
    width: 184px;
    height: 51px;
    float: left; }
    @media screen and (max-width: 1279px) {
      .main-footer .main-footer-logo {
        float: none;
        display: block;
        margin-bottom: 40px; } }
    @media screen and (max-width: 768px) {
      .main-footer .main-footer-logo {
        width: 120px;
        height: 33.26px; } }
    @media screen and (max-width: 440px) {
      .main-footer .main-footer-logo {
        width: 80px;
        height: 22.3px;
        margin-bottom: 30px; } }
  .main-footer .main-footer-navigation {
    float: right; }
    @media screen and (max-width: 1279px) {
      .main-footer .main-footer-navigation {
        float: none; } }
  .main-footer .main-footer-navigation-item {
    display: inline-block;
    margin-left: 84px; }
    @media screen and (max-width: 1024px) {
      .main-footer .main-footer-navigation-item {
        margin-left: 40px; } }
    @media screen and (max-width: 540px) {
      .main-footer .main-footer-navigation-item {
        margin-left: 20px; } }
    @media screen and (max-width: 440px) {
      .main-footer .main-footer-navigation-item {
        margin-left: 8px; } }
    .main-footer .main-footer-navigation-item:first-child {
      margin-left: 0; }
    .main-footer .main-footer-navigation-item a {
      color: #010f59;
      font-size: 1.25rem;
      font-weight: 200; }
      .main-footer .main-footer-navigation-item a:hover {
        text-decoration: underline; }
      @media screen and (max-width: 768px) {
        .main-footer .main-footer-navigation-item a {
          font-size: 1rem; } }
      @media screen and (max-width: 440px) {
        .main-footer .main-footer-navigation-item a {
          font-size: 0.8125rem; } }
  .main-footer .main-footer-navigation-item--linkedin {
    margin-right: 100px; }
    @media screen and (max-width: 1024px) {
      .main-footer .main-footer-navigation-item--linkedin {
        margin-right: 40px;
        margin-left: 40px; } }
    @media screen and (max-width: 768px) {
      .main-footer .main-footer-navigation-item--linkedin {
        margin-right: 0px; } }
    @media screen and (max-width: 540px) {
      .main-footer .main-footer-navigation-item--linkedin {
        margin-left: 20px; } }
    @media screen and (max-width: 440px) {
      .main-footer .main-footer-navigation-item--linkedin {
        margin-left: 8px; } }
    .main-footer .main-footer-navigation-item--linkedin img {
      display: block;
      width: 25px;
      height: 25px; }
      @media screen and (max-width: 768px) {
        .main-footer .main-footer-navigation-item--linkedin img {
          width: 18px;
          height: 18px; } }
      @media screen and (max-width: 440px) {
        .main-footer .main-footer-navigation-item--linkedin img {
          width: 14px;
          height: 14px; } }
  .main-footer .main-footer-navigation-item--dove-siamo {
    margin-right: 100px; }
    @media screen and (max-width: 1024px) {
      .main-footer .main-footer-navigation-item--dove-siamo {
        margin-right: 40px; } }
    @media screen and (max-width: 768px) {
      .main-footer .main-footer-navigation-item--dove-siamo {
        margin-right: 0px; } }
    .main-footer .main-footer-navigation-item--dove-siamo a:before {
      content: "";
      display: inline-block;
      width: 30px;
      height: 36px;
      background-image: url(/site/templates/assets/images/7770562f7c5ada68ccea88fc27bc76ed.svg);
      background-repeat: no-repeat;
      background-size: 30px 36px;
      background-position: center center;
      vertical-align: middle;
      margin-right: 24px; }
      @media screen and (max-width: 768px) {
        .main-footer .main-footer-navigation-item--dove-siamo a:before {
          margin-right: 12px;
          width: 20px;
          height: 24px;
          background-size: 20px 24px; } }
      @media screen and (max-width: 440px) {
        .main-footer .main-footer-navigation-item--dove-siamo a:before {
          margin-right: 6px;
          width: 14px;
          height: 16.8px;
          background-size: 14px 16.8px; } }

.page--home {
  position: relative; }
  .page--home:after {
    content: "";
    display: block;
    width: 50px;
    height: 830px;
    background-color: #ffffff;
    border-bottom: 1px solid #010f59;
    border-left: 1px solid #010f59;
    position: absolute;
    z-index: 2;
    right: -50px;
    top: 0;
    transform: skewY(-45deg) translate(1px, -123px); }
    @media screen and (max-width: 1279px) {
      .page--home:after {
        display: none; } }

.pointer {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 101;
  width: 20px;
  height: 20px;
  pointer-events: none;
  will-change: transform;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }
  .pointer #pointer {
    position: absolute;
    left: 0;
    top: 0;
    width: 40px;
    height: 40px;
    fill: #7476e6;
    opacity: 0;
    visibility: hidden;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    will-change: transform;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden; }

.home-hero {
  padding-left: 50px;
  display: flex;
  min-height: 830px;
  overflow: hidden; }
  @media screen and (max-width: 1279px) {
    .home-hero {
      display: block;
      min-height: 0px; } }
  @media screen and (max-width: 1024px) {
    .home-hero {
      padding-left: 20px; } }
  @media screen and (max-width: 540px) {
    .home-hero {
      padding-left: 0px; } }
  .home-hero .hero-slideshow {
    border-bottom: 1px solid #010f59;
    width: calc(100% - 300px);
    flex-basis: 0;
    flex-grow: 1;
    height: 830px;
    overflow: hidden;
    position: relative;
    transform-style: preserve-3d;
    will-change: transform;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    user-select: none;
    -moz-user-select: none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    -o-user-select: none; }
    @media screen and (max-width: 1279px) {
      .home-hero .hero-slideshow {
        width: 100%;
        height: calc(100vh - 74px); } }
    @media screen and (max-width: 768px) {
      .home-hero .hero-slideshow {
        height: 340px; } }
    .home-hero .hero-slideshow .hero-drag {
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0;
      left: 0;
      cursor: grab !important;
      cursor: -moz-grab !important;
      cursor: -webkit-grab !important;
      transform-style: preserve-3d;
      will-change: transform;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden; }
    .home-hero .hero-slideshow .hero-slides {
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      transform-style: preserve-3d;
      will-change: transform;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden;
      pointer-events: none; }
    .home-hero .hero-slideshow .hero-slide {
      position: absolute;
      left: 0;
      top: 0;
      width: 0;
      height: 100%;
      transform-style: preserve-3d;
      will-change: transform;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden;
      overflow: hidden;
      white-space: nowrap; }
    .home-hero .hero-slideshow .hero-slide__background {
      position: absolute;
      left: 0;
      top: 0;
      width: calc(100vw - 400px);
      height: 100%;
      background-size: cover;
      background-position: 50% 50%;
      transform-style: preserve-3d;
      will-change: transform;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden; }
      @media screen and (max-width: 1279px) {
        .home-hero .hero-slideshow .hero-slide__background {
          width: calc(100vw - 50px); } }
      @media screen and (max-width: 1024px) {
        .home-hero .hero-slideshow .hero-slide__background {
          width: calc(100vw - 20px); } }
      @media screen and (max-width: 540px) {
        .home-hero .hero-slideshow .hero-slide__background {
          width: 100vw; } }
    .home-hero .hero-slideshow .hero-slide__content {
      position: absolute;
      left: 0;
      top: 0;
      width: calc(100vw - 400px);
      height: 100%;
      will-change: transform;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden;
      z-index: 10; }
      @media screen and (max-width: 1279px) {
        .home-hero .hero-slideshow .hero-slide__content {
          width: calc(100vw - 50px); } }
      @media screen and (max-width: 1024px) {
        .home-hero .hero-slideshow .hero-slide__content {
          width: calc(100vw - 20px); } }
    .home-hero .hero-slideshow .hero-slide__text {
      position: absolute;
      font-size: 5.21vw;
      line-height: 1em;
      font-weight: 200;
      left: 36px;
      top: 180px; }
      @media screen and (max-width: 1279px) {
        .home-hero .hero-slideshow .hero-slide__text {
          top: 24%; } }
      @media screen and (max-width: 640px) {
        .home-hero .hero-slideshow .hero-slide__text {
          font-size: 32px;
          top: 40%;
          left: 20px; } }
      @media screen and (max-width: 480px) {
        .home-hero .hero-slideshow .hero-slide__text {
          font-size: 28px;
          left: 0px; } }
    .home-hero .hero-slideshow .hero-slide__anchor {
      display: block;
      pointer-events: auto;
      color: #010f59; }
  .home-hero .hero-slideshow__navigation {
    position: absolute;
    right: 0;
    bottom: 0;
    height: 90px;
    width: 180px; }
    .home-hero .hero-slideshow__navigation .hero-navigation__button {
      position: absolute;
      top: 0;
      width: 90px;
      height: 90px;
      opacity: 0.5;
      transition: opacity 0.3s; }
      .home-hero .hero-slideshow__navigation .hero-navigation__button:hover {
        opacity: 1; }
    .home-hero .hero-slideshow__navigation .hero-navigation__button--prev {
      left: 0; }
    .home-hero .hero-slideshow__navigation .hero-navigation__button--next {
      right: 0; }
    .home-hero .hero-slideshow__navigation .hero-navigation__icon {
      width: 20px;
      height: 40px;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate3d(-50%, -50%, 0); }
  .home-hero .hero-aside-column {
    border-bottom: 1px solid #010f59;
    border-left: 1px solid #010f59;
    width: 300px;
    background-color: #ffffff;
    position: relative; }
    .home-hero .hero-aside-column:after {
      content: "";
      display: block;
      width: 136px;
      height: 136px;
      background-color: #f3f5f8;
      border-left: 1px solid #010f59;
      position: absolute;
      bottom: -68px;
      right: -68px;
      transform: rotate(45deg); }
    @media screen and (max-width: 1279px) {
      .home-hero .hero-aside-column {
        width: calc(100% - 50px);
        background-color: transparent;
        border-left: none;
        border-bottom: none; }
        .home-hero .hero-aside-column:after {
          content: "";
          display: block;
          width: 50px;
          height: 100%;
          background-color: #ffffff;
          border-top: 1px solid #010f59;
          border-left: 1px solid #010f59;
          position: absolute;
          z-index: 2;
          right: -50px;
          top: 0;
          transform: skewY(-45deg) translate(1px, -25px); } }
    @media screen and (max-width: 1024px) {
      .home-hero .hero-aside-column {
        width: calc(100% - 20px); }
        .home-hero .hero-aside-column:after {
          width: 20px;
          right: -20px;
          transform: skewY(-45deg) translate(1px, -10px); } }
    @media screen and (max-width: 540px) {
      .home-hero .hero-aside-column {
        width: 100%; }
        .home-hero .hero-aside-column:after {
          display: none; } }
  .home-hero .hero-elearning-link {
    display: flex;
    background-color: #7476e6;
    border-bottom: 1px solid #010f59;
    color: #ffffff;
    height: 190px;
    padding: 24px 0px 24px 24px;
    align-items: center; }
    @media screen and (max-width: 1279px) {
      .home-hero .hero-elearning-link {
        height: 40px;
        line-height: 40px;
        padding: 0 24px;
        background-image: url(/site/templates/assets/images/5f88beafd1b519a4776698a990c0e699.svg);
        background-position: right 14px center;
        background-size: 22.5px 30px;
        background-repeat: no-repeat; } }
    .home-hero .hero-elearning-link .link-main {
      font-size: 2.875rem;
      font-weight: 900;
      display: block;
      margin-bottom: 14px; }
      @media screen and (max-width: 1279px) {
        .home-hero .hero-elearning-link .link-main {
          font-size: 24px;
          margin-bottom: 0; } }
      @media screen and (max-width: 768px) {
        .home-hero .hero-elearning-link .link-main {
          font-size: 20px;
          margin-bottom: 0; } }
    .home-hero .hero-elearning-link .link-secondary {
      font-size: 1.625rem;
      font-weight: 200;
      display: block; }
      @media screen and (max-width: 1279px) {
        .home-hero .hero-elearning-link .link-secondary {
          display: none; } }
  .home-hero .hero-news {
    padding: 40px 24px; }
    @media screen and (max-width: 1279px) {
      .home-hero .hero-news {
        padding: 16px 24px 24px; } }
  .home-hero .hero-news_heading {
    font-size: 1.625rem;
    font-weight: 600;
    margin-bottom: 20px; }
    @media screen and (max-width: 768px) {
      .home-hero .hero-news_heading {
        font-size: 1.25rem; } }
  @media screen and (max-width: 1279px) {
    .home-hero .hero-news-list {
      display: flex; } }
  @media screen and (max-width: 540px) {
    .home-hero .hero-news-list {
      flex-wrap: wrap; } }
  .home-hero .news-item {
    margin-bottom: 40px; }
    .home-hero .news-item:last-child {
      margin-bottom: 0; }
    @media screen and (max-width: 1279px) {
      .home-hero .news-item {
        width: 50%;
        margin-bottom: 0;
        padding-right: 30px; } }
    @media screen and (max-width: 540px) {
      .home-hero .news-item {
        width: 100%;
        margin-bottom: 40px; } }
    .home-hero .news-item:before {
      content: "";
      display: block;
      width: 6px;
      height: 6px;
      background-color: #010f59;
      border-radius: 50%;
      margin-bottom: 8px; }
      @media screen and (max-width: 1279px) {
        .home-hero .news-item:before {
          display: none; } }
  .home-hero .news-item__date {
    font-size: 1.25rem;
    font-weight: 600px;
    margin-bottom: 6px; }
    @media screen and (max-width: 768px) {
      .home-hero .news-item__date {
        font-size: 1.125rem; } }
  .home-hero .news-item__text {
    font-size: 1.3125rem;
    font-weight: 200;
    line-height: 1.3;
    margin-bottom: 20px; }
    @media screen and (max-width: 1279px) {
      .home-hero .news-item__text {
        max-width: 20em; } }
    @media screen and (max-width: 768px) {
      .home-hero .news-item__text {
        font-size: 1.125rem; } }
  .home-hero .news-item__anchor {
    font-weight: 300;
    font-size: 1.125rem;
    text-transform: uppercase;
    color: #010f59; }
    .home-hero .news-item__anchor:hover {
      text-decoration: underline; }

.home-educational-offer {
  padding: 90px 0 60px 50px;
  position: relative;
  z-index: 3; }
  @media screen and (max-width: 1279px) {
    .home-educational-offer {
      padding: 24px 0 75px 50px;
      border-top: 1px solid #010f59;
      width: calc(100% - 50px); }
      .home-educational-offer:after {
        content: "";
        display: block;
        width: 50px;
        height: 100%;
        background-color: #ffffff;
        border-bottom: 1px solid #010f59;
        border-left: 1px solid #010f59;
        position: absolute;
        z-index: 3;
        right: -50px;
        top: 0;
        transform: skewY(-45deg) translate(1px, -25px); } }
  @media screen and (max-width: 1024px) {
    .home-educational-offer {
      padding-left: 20px;
      width: calc(100% - 20px); }
      .home-educational-offer:after {
        width: 20px;
        right: -20px;
        transform: skewY(-45deg) translate(1px, -10px); } }
  @media screen and (max-width: 540px) {
    .home-educational-offer {
      width: 100%;
      padding-bottom: 0; }
      .home-educational-offer:after {
        display: none; } }
  .home-educational-offer .educational-offer-header {
    padding-bottom: 68px; }
    @media screen and (max-width: 1279px) {
      .home-educational-offer .educational-offer-header {
        padding-bottom: 30px; } }
  .home-educational-offer .educational-offer-heading {
    display: inline-block;
    font-size: 2.25rem;
    line-height: 1.2;
    color: #7476e6;
    font-weight: 900;
    text-transform: uppercase;
    padding-bottom: 10px;
    position: relative; }
    @media screen and (max-width: 1279px) {
      .home-educational-offer .educational-offer-heading {
        font-size: 1.125rem; } }
    @media screen and (max-width: 960px) {
      .home-educational-offer .educational-offer-heading {
        width: calc(50% - 50px); } }
    @media screen and (max-width: 640px) {
      .home-educational-offer .educational-offer-heading {
        width: 100%; } }
    .home-educational-offer .educational-offer-heading:before {
      content: "";
      position: absolute;
      bottom: 0;
      width: 100%;
      height: 1px;
      background-color: #010f59; }
      @media screen and (max-width: 640px) {
        .home-educational-offer .educational-offer-heading:before {
          display: none; } }
    .home-educational-offer .educational-offer-heading:after {
      content: "";
      display: block;
      width: 24px;
      height: 1px;
      background-color: #010f59;
      position: absolute;
      right: 0px;
      top: calc(100% - 1px);
      transform-origin: 100% 50%;
      transform: rotate(231deg); }
      @media screen and (max-width: 640px) {
        .home-educational-offer .educational-offer-heading:after {
          display: none; } }
    .home-educational-offer .educational-offer-heading a {
      color: #7476e6; }
  .home-educational-offer .educational-offer-courses {
    display: flex; }
    @media screen and (max-width: 960px) {
      .home-educational-offer .educational-offer-courses {
        flex-wrap: wrap; } }
    .home-educational-offer .educational-offer-courses .course-item {
      width: 33.33333%;
      padding-right: 50px;
      padding-bottom: 80px;
      position: relative; }
      @media screen and (max-width: 1279px) {
        .home-educational-offer .educational-offer-courses .course-item {
          padding-bottom: 36px; } }
      @media screen and (max-width: 960px) {
        .home-educational-offer .educational-offer-courses .course-item {
          width: 50%;
          margin-bottom: 36px; } }
      @media screen and (max-width: 540px) {
        .home-educational-offer .educational-offer-courses .course-item {
          width: 100%;
          padding-right: 0;
          padding-bottom: 0; } }
    .home-educational-offer .educational-offer-courses .course-item-icon {
      display: block;
      width: 128px;
      height: 128px;
      margin-bottom: 20px; }
      .home-educational-offer .educational-offer-courses .course-item-icon svg {
        width: 100%; }
      @media screen and (max-width: 1279px) {
        .home-educational-offer .educational-offer-courses .course-item-icon {
          width: 74px;
          height: 74px; } }
    .home-educational-offer .educational-offer-courses .course-item-title {
      font-size: 2.125rem;
      line-height: 1.2;
      color: #7476e6;
      font-weight: 300;
      margin-bottom: 6px; }
      @media screen and (max-width: 1279px) {
        .home-educational-offer .educational-offer-courses .course-item-title {
          font-size: 1.125rem; } }
    .home-educational-offer .educational-offer-courses .course-item-description {
      display: block;
      font-size: 1.3125rem;
      line-height: 1.4;
      font-weight: 100;
      transform-style: preserve-3d;
      will-change: transform;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden; }
      @media screen and (max-width: 1279px) {
        .home-educational-offer .educational-offer-courses .course-item-description {
          font-size: 1rem; } }
      @media screen and (max-width: 540px) {
        .home-educational-offer .educational-offer-courses .course-item-description {
          font-size: 1.125rem;
          margin-bottom: 18px; } }
    .home-educational-offer .educational-offer-courses .course-item-link {
      display: inline-block;
      height: 46px;
      line-height: 42px;
      padding: 0 18px 0 16px;
      border: 2px solid #010f59;
      color: #010f59;
      font-size: 1.5rem;
      font-weight: 600;
      text-align: center;
      position: absolute;
      bottom: 0;
      left: 0; }
      .home-educational-offer .educational-offer-courses .course-item-link:after {
        content: "";
        display: block;
        width: 20px;
        height: 20px;
        border-left: 2px solid #010f59;
        background-color: #f3f5f8;
        position: absolute;
        bottom: -11px;
        right: -12px;
        transform: rotate(45deg); }
      .home-educational-offer .educational-offer-courses .course-item-link .course-item-link__overlay {
        position: absolute;
        left: 0;
        top: 0;
        width: 0;
        height: 100%;
        background-color: #7476e6; }
      @media screen and (max-width: 1279px) {
        .home-educational-offer .educational-offer-courses .course-item-link {
          height: 24px;
          font-size: 1rem;
          line-height: 22px;
          border: 1px solid #010f59;
          padding: 0 9px 0 8px; }
          .home-educational-offer .educational-offer-courses .course-item-link:after {
            border-left: 1px solid #010f59;
            width: 8px;
            height: 9px;
            bottom: -5px;
            right: -5px; } }
      @media screen and (max-width: 540px) {
        .home-educational-offer .educational-offer-courses .course-item-link {
          position: static; } }

.home-projects {
  padding: 40px 0px 60px 50px;
  background-color: #ffffff;
  border-top: 1px solid #010f59;
  min-height: 300px;
  position: relative;
  width: calc(100vw - 50px); }
  @media screen and (max-width: 1279px) {
    .home-projects {
      width: calc(100vw - 50px);
      padding: 24px 0px 65px 50px; }
      .home-projects:after {
        content: "";
        display: block;
        width: 50px;
        height: calc(100% + 50px);
        background-color: #ffffff;
        border-left: 1px solid #010f59;
        position: absolute;
        z-index: 2;
        right: -50px;
        top: 0;
        transform: translate(1px, -50px); } }
  @media screen and (max-width: 1024px) {
    .home-projects {
      width: calc(100vw - 20px);
      padding-left: 20px;
      padding-right: 20px; }
      .home-projects:after {
        width: 20px;
        right: -20px;
        height: calc(100% + 20px);
        transform: translate(1px, -20px); } }
  @media screen and (max-width: 680px) {
    .home-projects {
      padding-left: 20px;
      padding-right: 20px;
      padding-bottom: 20px; } }
  @media screen and (max-width: 540px) {
    .home-projects {
      width: 100%; }
      .home-projects:after {
        display: none; } }
  .home-projects:before {
    content: "";
    display: block;
    background-color: #f3f5f8;
    border-bottom: 1px solid #010f59;
    width: 74px;
    height: 74px;
    position: absolute;
    top: -38px;
    left: -37px;
    transform: rotate(-45deg); }
    @media screen and (max-width: 1024px) {
      .home-projects:before {
        width: 30px;
        height: 30px;
        top: -16px;
        left: -15px; } }
    @media screen and (max-width: 680px) {
      .home-projects:before {
        display: none; } }
  .home-projects .home-projects-logo {
    width: 140px;
    margin-bottom: 30px; }
    .home-projects .home-projects-logo img {
      width: 100%; }
    @media screen and (max-width: 1280px) {
      .home-projects .home-projects-logo {
        width: 90px;
        margin-bottom: 0px; } }
  .home-projects .home-projects-heading {
    display: inline-block;
    font-weight: 900;
    font-size: 2.25rem;
    text-transform: uppercase;
    margin-bottom: 50px;
    padding-bottom: 10px;
    line-height: 1.2; }
    .home-projects .home-projects-heading:before {
      content: "";
      position: absolute;
      bottom: 0;
      width: 100%;
      height: 1px;
      background-color: #010f59; }
      @media screen and (max-width: 640px) {
        .home-projects .home-projects-heading:before {
          display: none; } }
    .home-projects .home-projects-heading:after {
      content: "";
      display: block;
      width: 24px;
      height: 1px;
      background-color: #010f59;
      position: absolute;
      right: 0px;
      top: calc(100% - 1px);
      transform-origin: 100% 50%;
      transform: rotate(231deg); }
      @media screen and (max-width: 640px) {
        .home-projects .home-projects-heading:after {
          display: none; } }
    @media screen and (max-width: 1279px) {
      .home-projects .home-projects-heading {
        font-size: 1.125rem;
        margin: 30px 0; } }
    @media screen and (max-width: 680px) {
      .home-projects .home-projects-heading {
        transform: none;
        position: static;
        font-size: 1.125rem;
        margin-bottom: 26px;
        margin-top: 16px; } }
  @media screen and (max-width: 1024px) {
    .home-projects .home-projects-wrapper {
      padding-right: 0; } }
  .home-projects .home-projects-wrapper .flickity-prev-next-button.next {
    background-image: url(/site/templates/assets/images/583acc67f24543eff270ce819eb17bb8.svg);
    background-position: center center;
    background-size: 21px 38px;
    background-repeat: no-repeat;
    top: 156px;
    right: 30px;
    border-radius: 0;
    background-color: transparent; }
    @media screen and (max-width: 1280px) {
      .home-projects .home-projects-wrapper .flickity-prev-next-button.next {
        top: 100px; } }
    @media screen and (max-width: 859px) {
      .home-projects .home-projects-wrapper .flickity-prev-next-button.next {
        right: 8px; } }
    .home-projects .home-projects-wrapper .flickity-prev-next-button.next svg {
      display: none; }
  .home-projects .home-projects-wrapper .flickity-prev-next-button.previous {
    background-image: url(/site/templates/assets/images/9444576b642ac2d271951e8dde3684b4.svg);
    background-position: center center;
    background-size: 21px 38px;
    background-repeat: no-repeat;
    top: 106px;
    right: 30px;
    left: auto;
    border-radius: 0;
    background-color: transparent; }
    @media screen and (max-width: 1280px) {
      .home-projects .home-projects-wrapper .flickity-prev-next-button.previous {
        top: 50px; } }
    @media screen and (max-width: 859px) {
      .home-projects .home-projects-wrapper .flickity-prev-next-button.previous {
        right: 8px; } }
    .home-projects .home-projects-wrapper .flickity-prev-next-button.previous svg {
      display: none; }
  .home-projects .home-projects-wrapper .flickity-prev-next-button[disabled] {
    display: none !important; }
  .home-projects .home-project-article {
    width: 50%;
    display: flex;
    padding: 20px 90px 20px 0; }
    @media screen and (max-width: 1024px) {
      .home-projects .home-project-article {
        width: 100%; } }
    @media screen and (max-width: 680px) {
      .home-projects .home-project-article {
        padding-right: 0px;
        justify-content: left;
        margin-bottom: 18px;
        flex-direction: column; } }
    @media screen and (max-width: 540px) {
      .home-projects .home-project-article {
        width: 100%; } }
  .home-projects .home-project-content {
    width: calc(100% - 230px);
    padding-right: 30px; }
    @media screen and (max-width: 1280px) {
      .home-projects .home-project-content {
        width: calc(100% - 120px); } }
    @media screen and (max-width: 1024px) {
      .home-projects .home-project-content {
        max-width: 35em; } }
    @media screen and (max-width: 680px) {
      .home-projects .home-project-content {
        order: 2;
        width: 100%;
        max-width: none; } }
    .home-projects .home-project-content .project-name {
      font-size: 2rem;
      line-height: 1.2;
      margin-bottom: 28px; }
      @media screen and (max-width: 1279px) {
        .home-projects .home-project-content .project-name {
          font-size: 1.125rem; } }
      @media screen and (max-width: 680px) {
        .home-projects .home-project-content .project-name {
          margin-bottom: 8px; } }
    .home-projects .home-project-content .project-description {
      line-height: 1.4;
      font-weight: 100;
      font-size: 1.25rem; }
      @media screen and (max-width: 680px) {
        .home-projects .home-project-content .project-description {
          font-size: 1.125rem; } }
    .home-projects .home-project-content .accademia-item-link {
      margin-top: 2.8vw; }
      @media screen and (max-width: 680px) {
        .home-projects .home-project-content .accademia-item-link {
          margin-top: 15px; } }
  .home-projects .home-project-image-wrapper {
    width: 230px;
    height: 230px;
    border-radius: 50%;
    overflow: hidden;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    border: 1px solid #010f59; }
    @media screen and (max-width: 1280px) {
      .home-projects .home-project-image-wrapper {
        width: 120px;
        height: 120px; } }
    @media screen and (max-width: 680px) {
      .home-projects .home-project-image-wrapper {
        width: 90px;
        height: 90px;
        margin-bottom: 16px; } }
  .home-projects .home-project-image {
    display: none; }
    @supports (object-fit: cover) {
      .home-projects .home-project-image {
        display: block;
        width: 100%;
        height: 230px;
        object-fit: cover; }
        @media screen and (max-width: 1280px) {
          .home-projects .home-project-image {
            height: 180px; } }
        @media screen and (max-width: 680px) {
          .home-projects .home-project-image {
            height: 90px; } } }

.geometric-button {
  display: inline-block;
  height: 46px;
  line-height: 40px;
  padding: 0 18px 0 16px;
  border: 2px solid #010f59;
  background-color: #010f59;
  color: #ffffff;
  font-size: 1.5rem;
  font-weight: 600;
  text-align: center;
  position: relative; }
  .geometric-button:after {
    content: "";
    display: block;
    width: 20px;
    height: 20px;
    border-left: 2px solid #010f59;
    background-color: #ffffff;
    position: absolute;
    bottom: -11px;
    right: -12px;
    transform: rotate(45deg); }
  .geometric-button .course-item-link__overlay {
    position: absolute;
    left: 0;
    top: 0;
    width: 0;
    height: 100%;
    background-color: #7476e6; }
  @media screen and (max-width: 1279px) {
    .geometric-button {
      height: 24px;
      font-size: 1rem;
      line-height: 22px;
      border: 1px solid #010f59;
      padding: 0 9px 0 8px; }
      .geometric-button:after {
        border-left: 1px solid #010f59;
        width: 8px;
        height: 9px;
        bottom: -5px;
        right: -5px; } }
  @media screen and (max-width: 540px) {
    .geometric-button {
      position: static; } }

.page--courses {
  padding-top: 96px; }
  @media screen and (max-width: 1024px) {
    .page--courses {
      padding-top: 40px; } }
  @media screen and (max-width: 768px) {
    .page--courses {
      padding-top: 30px; } }

.courses-categories-tabs {
  display: flex;
  padding-left: 350px;
  padding-right: 60px;
  margin-bottom: 90px; }
  @media screen and (max-width: 1480px) {
    .courses-categories-tabs {
      padding-left: 50px; } }
  @media screen and (max-width: 1024px) {
    .courses-categories-tabs {
      padding-left: 20px;
      padding-right: 20px; } }
  @media screen and (max-width: 768px) {
    .courses-categories-tabs {
      display: block;
      margin-bottom: 40px; } }
  .courses-categories-tabs .category-item {
    width: 33.33333%;
    max-width: 392px;
    margin-right: 3.12vw;
    position: relative; }
    @media screen and (max-width: 768px) {
      .courses-categories-tabs .category-item {
        width: 100%;
        margin-bottom: 12px; } }
    .courses-categories-tabs .category-item.is-active {
      background-color: #7476e6; }
    .courses-categories-tabs .category-item:last-child {
      margin-right: 0; }
    .courses-categories-tabs .category-item:after {
      content: "";
      display: block;
      width: 35px;
      height: 35px;
      border-left: 2px solid #7476e6;
      position: absolute;
      right: -18px;
      bottom: -17px;
      transform: rotate(45deg);
      background-color: #f3f5f8; }
  .courses-categories-tabs .category-anchor {
    width: 100%;
    height: 4.06vw;
    line-height: 4.06vw;
    padding: 0 4%;
    border: 2px solid #7476e6;
    display: block;
    font-size: calc(18px + (23 - 18) * ((100vw - 1200px) / (1920 - 1200)));
    font-weight: 700;
    text-transform: uppercase;
    color: #7476e6;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap; }
    @media screen and (max-width: 1024px) {
      .courses-categories-tabs .category-anchor {
        height: 6vw;
        line-height: 6vw; } }
    @media screen and (max-width: 768px) {
      .courses-categories-tabs .category-anchor {
        height: 45px;
        line-height: 45px; } }
    .courses-categories-tabs .category-anchor[aria-selected="true"], .courses-categories-tabs .category-anchor.is-active {
      background-color: #7476e6;
      color: #ffffff; }

.courses-lists-wrapper {
  padding-left: 350px;
  padding-bottom: 230px; }
  @media screen and (max-width: 1480px) {
    .courses-lists-wrapper {
      padding-left: 50px; } }
  @media screen and (max-width: 1024px) {
    .courses-lists-wrapper {
      padding-left: 20px; } }
  @media screen and (max-width: 768px) {
    .courses-lists-wrapper {
      padding-right: 20px; } }

.courses-filters-wrapper {
  margin-bottom: 40px; }

.courses-filters-label {
  display: inline-block;
  font-size: 1.25rem;
  margin-right: 16px;
  margin-bottom: 20px; }
  @media screen and (max-width: 940px) {
    .courses-filters-label {
      display: block; } }

.courses-filters-list {
  display: inline-block; }
  @media screen and (max-width: 768px) {
    .courses-filters-list {
      display: block; } }
  .courses-filters-list .courses-filters-item {
    display: inline-block;
    font-size: 1.25rem;
    text-transform: uppercase;
    padding: 0 16px;
    position: relative;
    margin-right: 28px;
    position: relative; }
    .courses-filters-list .courses-filters-item:last-child {
      margin-right: 0; }
    @media screen and (max-width: 1180px) {
      .courses-filters-list .courses-filters-item {
        margin-right: 0px; } }
    @media screen and (max-width: 960px) {
      .courses-filters-list .courses-filters-item {
        font-size: 1rem;
        padding-right: 6px; } }
    @media screen and (max-width: 768px) {
      .courses-filters-list .courses-filters-item {
        font-size: 0.875rem;
        padding-right: 0; } }
    @media screen and (max-width: 660px) {
      .courses-filters-list .courses-filters-item {
        display: block;
        margin-bottom: 8px; } }
  .courses-filters-list .courses-filters-anchor {
    color: #010f59; }
    .courses-filters-list .courses-filters-anchor.is-selected {
      color: #7476e6; }
      .courses-filters-list .courses-filters-anchor.is-selected:before {
        content: "";
        display: block;
        width: 8px;
        height: 8px;
        background-color: #7476e6;
        position: absolute;
        left: 0;
        top: 50%;
        margin-top: -4px; }

@media screen and (max-width: 768px) {
  .courses-tabpanel {
    border-top: none; } }

.courses-tabpanel .course-item {
  padding: 20px 220px 50px 0;
  border-bottom: 1px solid #7476e6;
  position: relative; }
  .courses-tabpanel .course-item:first-child {
    border-top: 1px solid #7476e6; }
  @media screen and (max-width: 768px) {
    .courses-tabpanel .course-item {
      padding-right: 0px;
      padding-bottom: 0px; } }
  .courses-tabpanel .course-item .course-item-anchor {
    color: #010f59; }
  .courses-tabpanel .course-item .course-item-running-head {
    font-size: 1.4375rem;
    font-weight: 200;
    margin-bottom: 14px; }
    @media screen and (max-width: 768px) {
      .courses-tabpanel .course-item .course-item-running-head {
        font-size: 1.125rem;
        line-height: 1.3; } }
  .courses-tabpanel .course-item .course-item-title {
    font-size: 1.625rem;
    font-weight: 600;
    text-transform: uppercase; }
    @media screen and (max-width: 768px) {
      .courses-tabpanel .course-item .course-item-title {
        font-size: 1.4375rem;
        text-decoration: underline;
        line-height: 1.3; } }
    @media screen and (max-width: 480px) {
      .courses-tabpanel .course-item .course-item-title {
        font-size: 1.125rem; } }
  .courses-tabpanel .course-item .course-item-status {
    height: 46px;
    line-height: 46px;
    min-width: 224px;
    padding: 0 16px;
    color: #ffffff;
    background-color: #09165d;
    text-align: right;
    font-size: 1.5625rem;
    font-weight: 600;
    position: absolute;
    top: 0;
    right: 0; }
    @media screen and (max-width: 768px) {
      .courses-tabpanel .course-item .course-item-status {
        display: block;
        position: static;
        font-size: 1.125rem;
        display: block;
        width: 224px;
        margin-top: 30px; } }
    .courses-tabpanel .course-item .course-item-status.iscrizioni-aperte {
      background-color: #505b8d; }
    .courses-tabpanel .course-item .course-item-status.in-attivazione {
      background-color: #7d85a8; }
    .courses-tabpanel .course-item .course-item-status.chiuso, .courses-tabpanel .course-item .course-item-status.iscrizioni-chiuse {
      background-color: #afb3ca; }
  .courses-tabpanel .course-item:hover:before {
    content: "";
    display: block;
    width: 14px;
    height: calc(100% - 30px);
    position: absolute;
    top: 20px;
    left: -48px;
    background-color: #7476e6; }
  .courses-tabpanel .course-item:hover .course-item-title {
    text-decoration: underline; }

.courses-navigation-list-wrapper {
  position: relative; }
  @media screen and (max-width: 768px) {
    .courses-navigation-list-wrapper {
      padding-right: 15px;
      padding-left: 15px; } }
  .courses-navigation-list-wrapper.has-slider {
    padding-right: 90px; }
    @media screen and (max-width: 1024px) {
      .courses-navigation-list-wrapper.has-slider {
        padding-right: 90px; } }
    @media screen and (max-width: 768px) {
      .courses-navigation-list-wrapper.has-slider {
        padding-right: 15px;
        padding-left: 15px; } }

.course-slider-buttons-wrapper {
  position: absolute;
  top: 0;
  right: 20px;
  width: 50px;
  height: 4.06vw;
  display: flex;
  align-items: center;
  justify-content: space-between; }
  @media screen and (max-width: 1024px) {
    .course-slider-buttons-wrapper {
      right: 20px;
      height: 6vw; } }
  @media screen and (max-width: 768px) {
    .course-slider-buttons-wrapper {
      display: none; } }
  .course-slider-buttons-wrapper .slider-button-prev, .course-slider-buttons-wrapper .slider-button-next {
    cursor: pointer;
    display: block; }
    .course-slider-buttons-wrapper .slider-button-prev img, .course-slider-buttons-wrapper .slider-button-next img {
      display: block;
      height: 30px;
      width: 15px; }
    .course-slider-buttons-wrapper .slider-button-prev.swiper-button-disabled, .course-slider-buttons-wrapper .slider-button-next.swiper-button-disabled {
      display: none; }

.courses-navigation-list {
  display: flex;
  flex-direction: row;
  width: 100%; }
  @media screen and (max-width: 768px) {
    .courses-navigation-list {
      flex-direction: column; } }

.courses-category-item {
  flex-basis: 14.53vw;
  flex-shrink: 0;
  flex-grow: 0;
  margin-right: 40px;
  position: relative;
  transform: translateZ(0);
  backface-visibility: hidden; }
  .swiper-wrapper .courses-category-item {
    margin-right: 0; }
  @media screen and (max-width: 768px) {
    .courses-category-item {
      flex-basis: 0;
      margin-bottom: 5px; } }

.courses-category-anchor {
  height: 4.06vw;
  line-height: 3.8vw;
  padding: 0 50px 0 20px;
  border: 2px solid #7476e6;
  display: block;
  font-size: calc(18px + (20 - 18) * ((100vw - 1200px) / (1920 - 1200)));
  font-weight: 400;
  color: #7476e6;
  white-space: nowrap;
  position: relative; }
  @media screen and (max-width: 1024px) {
    .courses-category-anchor {
      height: 6vw;
      line-height: 6vw; } }
  @media screen and (max-width: 768px) {
    .courses-category-anchor {
      height: 45px;
      line-height: 45px; } }
  .courses-category-anchor[aria-selected="true"],
  .is-active .courses-category-anchor {
    background-color: #7476e6;
    color: #ffffff; }
  .courses-category-anchor:after {
    content: "";
    display: block;
    width: 35px;
    height: 35px;
    border-left: 2px solid #7476e6;
    position: absolute;
    right: -20px;
    bottom: -19px;
    transform: rotate(45deg);
    background-color: #f3f5f8;
    z-index: 1; }

.subnavigation-list-wrapper {
  margin-top: 1.56vw; }
  @media screen and (max-width: 768px) {
    .subnavigation-list-wrapper {
      margin-top: 15px;
      padding: 0 30px 0 0; } }

.category-item {
  margin-bottom: 10px; }
  .category-item.is-active {
    border-left: 1px solid #7476e6;
    border-bottom: 1px solid #7476e6; }
    .category-item.is-active .category-anchor {
      opacity: 1; }

.category-anchor {
  display: flex;
  min-height: 30px;
  padding: 6px 10px;
  text-transform: uppercase;
  font-weight: 700;
  color: #7476e6;
  align-items: center;
  opacity: 0.34;
  line-height: 1.2;
  font-size: calc(16px + (18 - 16) * ((100vw - 768px) / (1920 - 768))); }
  @media screen and (max-width: 768px) {
    .category-anchor {
      font-size: 14px; } }
  .category-anchor:hover {
    opacity: 0.5; }

.accademia-intro-text {
  font-size: 1.4375rem;
  line-height: 1.4;
  margin-bottom: 4vw;
  padding-right: 150px; }
  .accademia-intro-text p {
    margin-bottom: 30px; }
  @media screen and (max-width: 1024px) {
    .accademia-intro-text {
      font-size: 1.125rem;
      padding-right: 20px; } }
  @media screen and (max-width: 768px) {
    .accademia-intro-text {
      padding-left: 20px; } }

.page--course {
  padding-top: 96px; }
  @media screen and (max-width: 1024px) {
    .page--course {
      padding-top: 40px; } }
  @media screen and (max-width: 768px) {
    .page--course {
      padding-top: 30px; } }

.course-back-anchor {
  color: #7476e6;
  font-size: 1.25rem;
  font-weight: 700;
  text-transform: uppercase;
  display: inline-block;
  margin-left: 350px;
  margin-bottom: 40px; }
  @media screen and (max-width: 1480px) {
    .course-back-anchor {
      margin-left: 50px; } }
  @media screen and (max-width: 1024px) {
    .course-back-anchor {
      margin-left: 20px; } }
  @media screen and (max-width: 768px) {
    .course-back-anchor {
      display: none; } }
  .course-back-anchor:before {
    content: "";
    display: inline-block;
    width: 12px;
    height: 24px;
    background-image: url(/site/templates/assets/images/a2a495ea8921cab8a59351a0c7530396.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 12px 24px;
    margin-right: 20px;
    vertical-align: middle; }

.course-header {
  padding: 20px 0 40px 0px;
  margin-left: 350px;
  border-top: 1px solid #010f59;
  border-bottom: 1px solid #010f59;
  position: relative; }
  @media screen and (max-width: 1480px) {
    .course-header {
      margin-left: 50px; } }
  @media screen and (max-width: 1024px) {
    .course-header {
      margin-left: 20px; } }
  @media screen and (max-width: 768px) {
    .course-header {
      display: none; } }
  .course-header:before {
    content: "";
    display: block;
    width: 14px;
    height: calc(100% - 30px);
    background-color: #7476e6;
    position: absolute;
    top: 20px;
    left: -48px; }

.course-running-head {
  font-size: 1.4375rem;
  font-weight: 200;
  margin-bottom: 12px; }

.course-main-title {
  font-size: 1.625rem;
  font-weight: 600;
  text-decoration: underline;
  text-transform: uppercase; }

.course-main {
  flex-basis: 0;
  flex-grow: 1; }
  @media screen and (max-width: 1280px) {
    .course-main {
      flex-grow: 0;
      width: calc(100% - 260px);
      flex-basis: auto; } }
  @media screen and (max-width: 768px) {
    .course-main {
      width: 100%; } }

.course-section-main {
  display: flex;
  padding-bottom: 80px; }
  @media screen and (max-width: 1024px) {
    .course-section-main {
      display: block;
      padding-bottom: 0; } }

.course-status {
  position: absolute;
  top: 0;
  right: 0; }

.status-tag {
  height: 46px;
  line-height: 46px;
  padding: 0 20px;
  display: inline-block;
  color: #ffffff;
  font-size: 1.5625rem; }
  .status-tag.status-tag--in-corso {
    background-color: #09165d; }
  .status-tag.status-tag--iscrizioni-aperte {
    background-color: #505b8d; }
  .status-tag.status-tag--in-attivazione {
    background-color: #7d85a8; }
  .status-tag.status-tag--chiuso {
    background-color: #afb3ca; }

.course-body {
  display: flex; }
  @media screen and (max-width: 768px) {
    .course-body {
      display: block; } }

.course-sidebar {
  width: 380px;
  border-left: 1px solid #010f59;
  padding: 0px 20px 50px; }
  @media screen and (max-width: 1280px) {
    .course-sidebar {
      width: 260px; } }
  @media screen and (max-width: 768px) {
    .course-sidebar {
      width: 100%;
      border-left: 0;
      padding: 0 20px;
      margin-bottom: 100px;
      margin-top: 40px; } }
  .page--type-course .course-sidebar {
    padding-top: 50px; }

.course-main-aside {
  width: 330px;
  padding: 0px 28px 0 46px; }
  @media screen and (max-width: 1024px) {
    .course-main-aside {
      width: 100%;
      padding: 0 20px; } }
  @media screen and (max-width: 768px) {
    .course-main-aside {
      margin-bottom: 30px; } }
  .page--type-course .course-main-aside {
    padding-top: 50px; }
    @media screen and (max-width: 1024px) {
      .page--type-course .course-main-aside {
        padding-top: 20px; } }

.course-description {
  flex-grow: 1;
  flex-basis: 0;
  padding: 0px 24px 50px;
  font-size: 1.4375rem;
  line-height: 1.34; }
  @media screen and (max-width: 1024px) {
    .course-description {
      padding: 0px 20px 50px;
      font-size: 1.125rem; } }
  .page--type-course .course-description {
    padding-top: 50px; }
  .course-description p {
    margin-bottom: 1em; }

.corse-aside-title {
  font-size: 1.4375rem;
  font-weight: 700;
  line-height: 1.2;
  color: #7476e6; }

.course-directors-list {
  font-weight: 100;
  color: #7476e6;
  font-size: 1.3125rem;
  line-height: 1.5;
  margin-bottom: 30px; }
  .course-directors-list .course-directors-item {
    display: block; }

@media screen and (max-width: 1024px) {
  .course-locations-link-wrapper {
    margin-bottom: 40px; }
    .course-locations-link-wrapper:after {
      content: ".";
      display: block;
      clear: both;
      visibility: hidden;
      line-height: 0;
      height: 0; } }

.course-locations-list {
  margin-bottom: 40px; }
  @media screen and (max-width: 1024px) {
    .course-locations-list {
      float: left;
      margin-bottom: 20px; }
      .course-locations-list:after {
        content: ".";
        display: block;
        clear: both;
        visibility: hidden;
        line-height: 0;
        height: 0; } }
  @media screen and (max-width: 768px) {
    .course-locations-list {
      margin-bottom: 20px; } }
  .course-locations-list .course-locations-item {
    padding-top: 50px;
    background-image: url(/site/templates/assets/images/51c54b86634fc5ff3fde0ab711fd391a.svg);
    background-repeat: no-repeat;
    background-position: top left;
    background-size: 30px 36px;
    margin-bottom: 20px; }
    @media screen and (max-width: 1024px) {
      .course-locations-list .course-locations-item {
        width: 220px;
        padding-right: 20px;
        float: left; } }
    .course-locations-list .course-locations-item:last-child {
      margin-bottom: 0; }
  .course-locations-list .location-name {
    font-size: 1.4375rem;
    font-weight: 700;
    line-height: 1.2;
    color: #7476e6;
    margin-bottom: 4px; }
    @media screen and (max-width: 1024px) {
      .course-locations-list .location-name {
        font-size: 1.125rem; } }
  .course-locations-list .location-address {
    font-weight: 200;
    color: #7476e6;
    font-size: 1.3125rem;
    line-height: 1.5; }
    @media screen and (max-width: 1024px) {
      .course-locations-list .location-address {
        font-size: 1.125rem; } }

.course-elearning-link-wrapper {
  padding-top: 20px;
  border-top: 1px solid #010f59; }
  @media screen and (max-width: 1024px) {
    .course-elearning-link-wrapper {
      padding-top: 0px;
      border-top: none;
      width: 220px;
      float: left; } }
  .course-elearning-link-wrapper .course-elearning-link {
    color: #010f59;
    font-size: 1.4375rem;
    font-weight: 700;
    line-height: 1.26;
    display: block;
    padding-bottom: 68px;
    background-image: url(/site/templates/assets/images/41e202bf5d2f1bdfa2f85b4dde9bfe03.svg);
    background-repeat: no-repeat;
    background-size: 30px 55px;
    background-position: left bottom; }
    @media screen and (max-width: 1024px) {
      .course-elearning-link-wrapper .course-elearning-link {
        padding-top: 50px;
        padding-bottom: 0px;
        background-position: left top;
        background-size: 20px 36px;
        font-size: 1.125rem; } }

.course-files {
  margin-bottom: 50px; }

.course-files-heading {
  margin-bottom: 1em; }

.course-file-item {
  margin-bottom: 50px; }
  .course-file-item:last-child {
    margin-bottom: 50px; }

.course-file-anchor {
  display: block;
  padding-left: 85px;
  padding-bottom: 36px;
  min-height: 90px;
  background-image: url(/site/templates/assets/images/b434f5cb1d2c480cbb42d8e6c71fc9ea.svg);
  background-repeat: no-repeat;
  background-position: left top;
  background-size: 70px 90px;
  font-size: 1.125rem;
  line-height: 20px;
  color: #010f59;
  position: relative; }
  .course-file-anchor:before {
    content: "";
    display: block;
    width: 24px;
    height: 29px;
    background-image: url(/site/templates/assets/images/81a7015564a6842b97424a0ebb9dd953.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 24px 29px;
    position: absolute;
    bottom: 0;
    left: 85px; }

.course-video,
.course-images {
  margin-bottom: 60px; }

.course-video-heading,
.course-images-heading {
  margin-bottom: 1em; }

.course-video-thumbnail-wrapper {
  position: relative;
  /*&:after {
    content: "";
    display: block;
    width: 24px;
    height: 24px;
    background-image: url(../../templates/assets/styles/images-src/icons/plus-icon.svg);
    background-repeat: no-repeat;
    background-size: 24px 24px;
    background-position: center center;
    position: absolute;
    top: 16px;
    right: 16px;
    pointer-events: none;
    @media screen and (max-width: 768px) {
      display: none;
    }
  }*/ }

.course-video-thumbnail {
  display: block;
  width: 100%; }
  @media screen and (max-width: 768px) {
    .course-video-thumbnail {
      display: none; } }

.course-video-player {
  display: none;
  padding-top: 56.25%;
  position: relative; }
  @media screen and (max-width: 768px) {
    .course-video-player {
      display: block; } }
  .course-video-player iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0; }

.course-images-thumbnail-slideshow .flickity-viewport {
  transition: height 0.2s; }

.course-images-thumbnail-slideshow .flickity-button {
  width: 30px;
  height: 30px; }

.course-images-thumbnail-slideshow.is-fullscreen {
  height: 100%;
  background-color: rgba(9, 22, 93, 0.9); }
  .course-images-thumbnail-slideshow.is-fullscreen .course-images-thumbnail-wrapper {
    height: 100%;
    width: 100%; }
    .course-images-thumbnail-slideshow.is-fullscreen .course-images-thumbnail-wrapper img {
      height: 100%;
      width: auto; }

.course-images-thumbnail-wrapper {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center; }
  .course-images-thumbnail-wrapper img {
    display: block;
    width: 100%; }

.course-professors {
  margin-bottom: 50px; }
  .course-professors:last-child {
    margin-bottom: 0; }

.course-professors-block.is-expanded .course-professors-expand-button:after {
  transform: translate(-50%, -50%) rotate(0deg); }

.course-professors-heading {
  margin-bottom: 0.5em; }

.course-professors-expand-button {
  position: relative;
  padding-right: 40px;
  display: block;
  width: 100%;
  text-align: left;
  color: #7476e6; }
  .course-professors-expand-button:before {
    content: "";
    width: 24px;
    height: 2px;
    background-color: #7476e6;
    position: absolute;
    right: -12px;
    top: 18px;
    transform-origin: 50% 50%;
    transform: translate(-50%, -50%); }
  .course-professors-expand-button:after {
    content: "";
    width: 24px;
    height: 2px;
    background-color: #7476e6;
    position: absolute;
    right: -12px;
    top: 18px;
    transform-origin: 50% 50%;
    transform: translate(-50%, -50%) rotate(90deg);
    transition: transform 0.2s; }

.course-professors-group {
  margin-bottom: 40px; }
  .course-professors-group .group-name {
    color: #7476e6;
    font-size: 1.25rem;
    margin-bottom: 9px;
    line-height: 1.3; }

.course-professors-accordion-wrapper {
  overflow: hidden;
  display: none; }

.course-professor-item {
  margin-bottom: 9px; }
  .course-professor-item .professor-name {
    font-size: 1.25rem;
    color: #010f59;
    cursor: pointer;
    min-height: 23px; }
  .course-professor-item .professor-info {
    overflow: hidden;
    display: none; }
    .course-professor-item .professor-info .professor-info-content {
      padding-top: 12px;
      padding-bottom: 30px; }
  .course-professor-item .professor-email-wrapper {
    margin-bottom: 8px; }
  .course-professor-item .professor-email {
    font-size: 1.25rem;
    line-height: 20px;
    color: #010f59;
    display: inline-block;
    width: 100%; }
    .course-professor-item .professor-email:before {
      content: "";
      display: inline-block;
      width: 22px;
      height: 20px;
      background-image: url(/site/templates/assets/images/c771ef99fdd16c22ceceb6494147c489.svg);
      background-position: left center;
      background-repeat: no-repeat;
      background-size: 22px 14px;
      margin-right: 12px;
      vertical-align: bottom; }
    .course-professor-item .professor-email .professor-email-content {
      overflow: hidden;
      text-overflow: ellipsis;
      width: calc(100% - 40px);
      display: inline-block; }
    .course-professor-item .professor-email:hover .professor-email-content {
      text-decoration: underline; }
  .course-professor-item .professor-cv {
    font-size: 1.25rem;
    line-height: 20px;
    color: #010f59;
    display: inline-block;
    width: 100%; }
    .course-professor-item .professor-cv:before {
      content: "";
      display: inline-block;
      width: 22px;
      height: 20px;
      background-image: url(/site/templates/assets/images/81a7015564a6842b97424a0ebb9dd953.svg);
      background-position: left center;
      background-repeat: no-repeat;
      background-size: 16px 20px;
      margin-right: 12px;
      vertical-align: bottom; }
    .course-professor-item .professor-cv:hover .professor-cv-content {
      text-decoration: underline; }
  .course-professor-item.is-expanded .professor-name {
    font-weight: 700;
    text-decoration: underline; }

.course-section-information {
  display: flex;
  padding-bottom: 230px; }
  @media screen and (max-width: 980px) {
    .course-section-information {
      display: block; } }
  @media screen and (max-width: 768px) {
    .course-section-information {
      padding-bottom: 0px; } }

.course-information-navigation-wrapper {
  width: 330px;
  padding: 0px 28px 0 46px; }
  @media screen and (max-width: 1024px) {
    .course-information-navigation-wrapper {
      padding-left: 20px;
      width: 220px; } }
  @media screen and (max-width: 980px) {
    .course-information-navigation-wrapper {
      display: none; } }

.course-information-contents {
  flex-grow: 1;
  flex-basis: 0;
  padding: 0px 24px 0px 0px; }
  @media screen and (max-width: 980px) {
    .course-information-contents {
      flex-basis: auto;
      padding: 0 20px; } }

.course-information-navigation-item {
  font-size: 1.4375rem;
  line-height: 1.3;
  font-weight: 700;
  color: #010f59;
  min-height: 30px;
  margin-bottom: 14px;
  text-transform: uppercase; }
  @media screen and (max-width: 1024px) {
    .course-information-navigation-item {
      font-size: 1.125rem; } }

.course-information-navigation-anchor {
  display: inline-block;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #010f59;
  opacity: 0.3;
  padding-bottom: 4px;
  position: relative; }
  .course-information-navigation-anchor[aria-selected="true"] {
    opacity: 1; }
    .course-information-navigation-anchor[aria-selected="true"]:after {
      content: "";
      width: 100%;
      height: 2px;
      background-color: #7476e6;
      position: absolute;
      bottom: 0;
      left: 0;
      display: block; }

@media screen and (max-width: 980px) {
  .course-info-section {
    margin-bottom: 60px; } }

@media screen and (max-width: 768px) {
  .course-info-section:last-child {
    margin-bottom: 0px; } }

.course-info-section[hidden="hidden"] {
  display: none; }
  @media screen and (max-width: 980px) {
    .course-info-section[hidden="hidden"] {
      display: block; } }

.course-info-section__header {
  margin-bottom: 24px;
  display: none; }
  @media screen and (max-width: 980px) {
    .course-info-section__header {
      display: block; } }

.course-info-section__heading {
  font-size: 1.4375rem;
  line-height: 1.3;
  font-weight: 700;
  color: #010f59;
  text-transform: uppercase; }

.course-info-section-text {
  font-size: 1.4375rem;
  line-height: 1.34; }
  .course-info-section-text p {
    margin-bottom: 1em; }
  @media screen and (max-width: 980px) {
    .course-info-section-text {
      margin-bottom: 40px;
      font-size: 1.125rem; } }

.course-program-block {
  margin-bottom: 44px; }
  @media screen and (max-width: 768px) {
    .course-program-block {
      margin-bottom: 20px; } }
  .course-program-block.is-expanded .course-program-trigger-button:after {
    transform: translate(50%, -50%) rotate(0deg); }

.course-program-trigger-button {
  display: block;
  background-color: #7476e6;
  height: 54px;
  min-width: 480px;
  font-size: 1.3125rem;
  color: #ffffff;
  font-weight: 700;
  text-align: left;
  padding: 0px 60px 0 23px;
  position: relative; }
  @media screen and (max-width: 1024px) {
    .course-program-trigger-button {
      font-size: 1.125rem; } }
  @media screen and (max-width: 580px) {
    .course-program-trigger-button {
      min-width: 100%;
      height: auto;
      padding: 8px 40px 8px 10px; } }
  .course-program-trigger-button:before {
    content: "";
    width: 18px;
    height: 1.5px;
    background-color: #ffffff;
    position: absolute;
    right: 40px;
    top: 50%;
    transform: translate(50%, -50%); }
    @media screen and (max-width: 580px) {
      .course-program-trigger-button:before {
        right: 20px; } }
  .course-program-trigger-button:after {
    content: "";
    width: 18px;
    height: 1.5px;
    background-color: #ffffff;
    position: absolute;
    right: 40px;
    top: 50%;
    transform: translate(50%, -50%) rotate(90deg);
    transition: transform 0.2s; }
    @media screen and (max-width: 580px) {
      .course-program-trigger-button:after {
        right: 20px; } }

.course-program-block-wrapper {
  margin-bottom: 30px; }

.course-program-block-content {
  display: none;
  overflow: hidden; }

.course-program-block-content-inner {
  padding: 20px 0;
  font-size: 1.3125rem;
  line-height: 1.34;
  max-width: 35em; }
  @media screen and (max-width: 980px) {
    .course-program-block-content-inner {
      font-size: 1.125rem; } }
  @media screen and (max-width: 768px) {
    .course-program-block-content-inner {
      max-width: 100%; } }
  .course-program-block-content-inner p {
    margin-bottom: 1em; }
  .course-program-block-content-inner ul li {
    padding-left: 24px;
    position: relative;
    margin-bottom: 6px; }
    .course-program-block-content-inner ul li:before {
      content: "";
      width: 9px;
      height: 9px;
      background-color: #7476e6;
      position: absolute;
      left: 0;
      top: 8px; }

.course-program-download-anchor {
  font-size: 1.25rem;
  color: #010f59; }
  .course-program-download-anchor:after {
    content: "";
    display: inline-block;
    width: 24px;
    height: 29px;
    background-image: url(/site/templates/assets/images/81a7015564a6842b97424a0ebb9dd953.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 24px 29px;
    vertical-align: baseline;
    margin-left: 30px; }
  .course-program-download-anchor:hover {
    text-decoration: underline; }

.courses-navigation-wrapper {
  margin-left: 350px;
  margin-bottom: 60px; }
  @media screen and (max-width: 1480px) {
    .courses-navigation-wrapper {
      margin-left: 50px; } }
  @media screen and (max-width: 1024px) {
    .courses-navigation-wrapper {
      margin-left: 20px; } }
  @media screen and (max-width: 768px) {
    .courses-navigation-wrapper {
      margin-left: 0;
      margin-bottom: 20px; } }

.course-navigation-heading {
  margin-bottom: 3.12vw;
  font-size: 2.25rem; }
  @media screen and (max-width: 1024px) {
    .course-navigation-heading {
      font-size: 1.75rem; } }
  @media screen and (max-width: 768px) {
    .course-navigation-heading {
      padding-left: 20px;
      font-size: 1.375rem; } }
  @media screen and (max-width: 480px) {
    .course-navigation-heading {
      font-size: 1.125rem; } }

.courses-navigation-item {
  font-size: calc(18px + (23 - 18) * ((100vw - 768px) / (1480 - 768)));
  color: #7476e6;
  display: inline-block;
  margin-right: 36px;
  vertical-align: top;
  line-height: 1.2;
  opacity: 0.5;
  transition: opacity 0.2s; }
  @media screen and (max-width: 980px) {
    .courses-navigation-item {
      margin-right: 18px; } }
  @media screen and (max-width: 768px) {
    .courses-navigation-item {
      display: block;
      background-color: #7476e6;
      color: #ffffff;
      margin-right: 0;
      font-size: 18px;
      padding: 0;
      border-bottom: 1px solid #ffffff;
      opacity: 1; } }
  .courses-navigation-item:last-child {
    margin-right: 0; }
  .courses-navigation-item:hover {
    opacity: 1; }
  .courses-navigation-item.is-active {
    opacity: 1;
    border-bottom: 2px solid #7476e6; }
    @media screen and (max-width: 768px) {
      .courses-navigation-item.is-active {
        border-bottom: 1px solid #ffffff; }
        .courses-navigation-item.is-active .courses-navigation-anchor {
          opacity: 1; } }

.courses-navigation-anchor {
  color: #7476e6; }
  @media screen and (max-width: 768px) {
    .courses-navigation-anchor {
      color: #ffffff;
      display: block;
      padding: 12px 20px;
      opacity: 0.5; }
      .courses-navigation-anchor br {
        display: none; } }

.video-modal {
  position: fixed;
  background-color: rgba(9, 22, 93, 0.8);
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
  padding: 60px;
  text-align: center;
  display: none; }
  .video-modal.is-active {
    display: block; }
  .video-modal:before {
    content: "";
    display: inline-block;
    height: 100%;
    vertical-align: middle; }
  .video-modal .video-modal__player-block {
    width: 100%;
    max-width: 1024px;
    margin: 0 auto;
    display: inline-block;
    text-align: left;
    position: relative; }
  .video-modal .video-modal__player-wrapper {
    width: 100%;
    padding-top: 56.25%;
    position: relative; }
    .video-modal .video-modal__player-wrapper iframe {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%; }
  .video-modal .video-modal__close-button {
    width: 40px;
    height: 40px;
    position: absolute;
    top: -12px;
    right: -46px;
    color: #ffffff;
    font-size: 30px; }

.course-share {
  margin-top: 12px; }
  .course-share:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0; }
  .course-share .MarkupSocialShareButtons {
    float: left; }
  .course-share .mssb-item {
    display: inline-block;
    margin-right: 30px;
    vertical-align: middle; }
    .course-share .mssb-item svg {
      display: block;
      width: 100%; }
    .course-share .mssb-item.mssb-facebook {
      width: 10px;
      height: 22px; }
    .course-share .mssb-item.mssb-twitter {
      width: 19px;
      height: 16px; }
    .course-share .mssb-item.mssb-linkedin {
      width: 19px;
      height: 19px; }
  .course-share .course-share__icon {
    display: block;
    width: 21px;
    height: 24px;
    float: right; }

.scuola-hero-slideshow {
  width: 100%;
  height: 660px;
  overflow: hidden;
  border-bottom: 1px solid #010f59;
  transform-style: preserve-3d;
  position: relative;
  will-change: transform;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  user-select: none;
  -moz-user-select: none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -o-user-select: none; }
  @media screen and (max-width: 1024px) {
    .scuola-hero-slideshow {
      height: calc(100vh - 74px); } }
  @media screen and (max-width: 768px) {
    .scuola-hero-slideshow {
      height: 340px; } }
  .scuola-hero-slideshow .scuola-hero-drag {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    cursor: grab !important;
    cursor: -moz-grab !important;
    cursor: -webkit-grab !important;
    transform-style: preserve-3d;
    will-change: transform;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden; }
  .scuola-hero-slideshow .scuola-hero-slides-big {
    position: absolute;
    left: 0;
    top: 0;
    width: 66.66666%;
    height: 100%;
    transform-style: preserve-3d;
    will-change: transform;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    pointer-events: none; }
    @media screen and (max-width: 1024px) {
      .scuola-hero-slideshow .scuola-hero-slides-big {
        width: 100%; } }
    .scuola-hero-slideshow .scuola-hero-slides-big .scuola-hero-slide {
      width: 0;
      height: 100%; }
    .scuola-hero-slideshow .scuola-hero-slides-big .scuola-hero-slide__background {
      width: calc(66.66666vw - 25px); }
      @media screen and (max-width: 1024px) {
        .scuola-hero-slideshow .scuola-hero-slides-big .scuola-hero-slide__background {
          width: calc(100vw - 20px); } }
      @media screen and (max-width: 540px) {
        .scuola-hero-slideshow .scuola-hero-slides-big .scuola-hero-slide__background {
          width: 100vw; } }
  .scuola-hero-slideshow .scuola-hero-slides-small {
    position: absolute;
    left: 66.66666%;
    top: 0;
    width: 33.33333%;
    height: 100%;
    transform-style: preserve-3d;
    will-change: transform;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    pointer-events: none; }
    @media screen and (max-width: 1024px) {
      .scuola-hero-slideshow .scuola-hero-slides-small {
        display: none; } }
    .scuola-hero-slideshow .scuola-hero-slides-small .scuola-hero-slide {
      width: 100%;
      height: 0; }
    .scuola-hero-slideshow .scuola-hero-slides-small .scuola-hero-slide__background {
      width: 100%;
      height: 660px; }
  .scuola-hero-slideshow .scuola-hero-slide {
    position: absolute;
    left: 0;
    top: 0;
    transform-style: preserve-3d;
    will-change: transform;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow: hidden;
    white-space: nowrap; }
  .scuola-hero-slideshow .scuola-hero-slide__background {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    background-size: cover;
    background-position: 50% 50%;
    transform-style: preserve-3d;
    will-change: transform;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden; }
  .scuola-hero-slideshow .scuola-hero-navigation {
    position: absolute;
    right: 0;
    bottom: 0;
    height: 90px;
    width: 180px; }
    .scuola-hero-slideshow .scuola-hero-navigation .scuola-hero-navigation__button {
      position: absolute;
      top: 0;
      width: 90px;
      height: 90px;
      opacity: 0.5;
      transition: opacity 0.3s; }
      .scuola-hero-slideshow .scuola-hero-navigation .scuola-hero-navigation__button:hover {
        opacity: 1; }
    .scuola-hero-slideshow .scuola-hero-navigation .scuola-hero-navigation__button--prev {
      left: 0; }
    .scuola-hero-slideshow .scuola-hero-navigation .scuola-hero-navigation__button--next {
      right: 0; }
    .scuola-hero-slideshow .scuola-hero-navigation .hero-navigation__icon {
      width: 20px;
      height: 40px;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate3d(-50%, -50%, 0); }

.scuola-body {
  padding: 115px 140px 150px 200px; }
  @media screen and (max-width: 1480px) {
    .scuola-body {
      padding: 96px 50px; } }
  @media screen and (max-width: 1024px) {
    .scuola-body {
      padding: 40px 20px; } }

.scuola-body-main {
  display: flex; }
  @media screen and (max-width: 1024px) {
    .scuola-body-main {
      display: block; } }
  .scuola-body-main .scuola-header {
    width: 304px;
    padding-right: 20px;
    padding-top: 6px; }
    @media screen and (max-width: 1024px) {
      .scuola-body-main .scuola-header {
        width: 100%;
        padding: 0;
        margin-bottom: 30px; } }
  .scuola-body-main .scuola-heading {
    font-size: 2.25rem;
    font-weight: 900;
    text-transform: uppercase; }
    @media screen and (max-width: 1024px) {
      .scuola-body-main .scuola-heading {
        font-size: 1.75rem; } }
    @media screen and (max-width: 768px) {
      .scuola-body-main .scuola-heading {
        font-size: 1.375rem; } }
    @media screen and (max-width: 480px) {
      .scuola-body-main .scuola-heading {
        font-size: 1.125rem; } }
  .scuola-body-main .scuola-main-text {
    flex-basis: 0;
    flex-grow: 1;
    font-size: calc(18px + (33 - 18) * ((100vw - 768px) / (1920 - 768)));
    line-height: 1.5;
    /*p {
      margin-bottom: 1em;
      &:last-child {
        margin-bottom: 0;
      }
    }
    u {
      text-decoration: none;
      border-bottom: 2px solid $purple;
    }*/ }
    @media screen and (max-width: 1024px) {
      .scuola-body-main .scuola-main-text {
        font-size: 1.125rem; } }

.scuola-numbers-wrapper {
  flex-basis: 0;
  flex-grow: 1;
  display: flex; }
  @media screen and (max-width: 768px) {
    .scuola-numbers-wrapper {
      display: block; } }

.scuola-numbers-slider {
  width: 500px; }
  @media screen and (max-width: 1180px) {
    .scuola-numbers-slider {
      width: 300px; } }
  @media screen and (max-width: 1024px) {
    .scuola-numbers-slider {
      width: 400px; } }
  @media screen and (max-width: 768px) {
    .scuola-numbers-slider {
      width: 100%;
      margin-bottom: 30px; } }

.scuola-numbers-texts {
  width: calc(100% - 500px);
  padding-left: 5%; }
  @media screen and (max-width: 1180px) {
    .scuola-numbers-texts {
      width: calc(100% - 300px); } }
  @media screen and (max-width: 1024px) {
    .scuola-numbers-texts {
      width: calc(100% - 400px);
      padding-left: 20px; } }
  @media screen and (max-width: 768px) {
    .scuola-numbers-texts {
      width: 100%;
      padding-left: 0; } }

.scuola-numbers-slide {
  width: 100%; }
  @media screen and (max-width: 768px) {
    .scuola-numbers-slide:last-child .number-item {
      margin-bottom: 0; } }
  @media screen and (max-width: 480px) {
    .scuola-numbers-slide:last-child .number-item {
      margin-bottom: 30px; } }

.scuola-numbers {
  margin-top: 100px;
  display: flex; }
  @media screen and (max-width: 1024px) {
    .scuola-numbers {
      margin-top: 50px;
      display: block; } }
  @media screen and (max-width: 768px) {
    .scuola-numbers {
      margin-bottom: 50px; } }
  .scuola-numbers .number-item-content-wrapper {
    width: 50%;
    padding-left: 5%; }
    @media screen and (max-width: 1180px) {
      .scuola-numbers .number-item-content-wrapper {
        width: 100%;
        padding-left: 0; } }
    @media screen and (max-width: 1024px) {
      .scuola-numbers .number-item-content-wrapper {
        padding-left: 20px; } }
    @media screen and (max-width: 768px) {
      .scuola-numbers .number-item-content-wrapper {
        width: calc(100% - 300px);
        float: left;
        padding-top: 20px; } }
    @media screen and (max-width: 600px) {
      .scuola-numbers .number-item-content-wrapper {
        width: calc(100% - 220px); } }
    @media screen and (max-width: 480px) {
      .scuola-numbers .number-item-content-wrapper {
        width: calc(100% - 130px);
        padding-top: 0px; } }
    @media screen and (max-width: 380px) {
      .scuola-numbers .number-item-content-wrapper {
        width: calc(100% - 110px); } }
  .scuola-numbers .scuola-numbers-header {
    width: 238px;
    padding-right: 20px; }
    @media screen and (max-width: 1024px) {
      .scuola-numbers .scuola-numbers-header {
        margin-bottom: 40px;
        padding: 0;
        width: 100%; } }
  .scuola-numbers .scuola-numbers-heading {
    font-size: 2.25rem;
    font-weight: 900; }
    @media screen and (max-width: 1024px) {
      .scuola-numbers .scuola-numbers-heading {
        font-size: 1.75rem; } }
    @media screen and (max-width: 768px) {
      .scuola-numbers .scuola-numbers-heading {
        font-size: 1.375rem; } }
    @media screen and (max-width: 480px) {
      .scuola-numbers .scuola-numbers-heading {
        font-size: 1.125rem; } }
  .scuola-numbers .number-item {
    display: flex;
    margin-bottom: 100px; }
    @media screen and (max-width: 1180px) {
      .scuola-numbers .number-item {
        flex-direction: column; } }
    @media screen and (max-width: 1024px) {
      .scuola-numbers .number-item {
        flex-direction: row; } }
    @media screen and (max-width: 768px) {
      .scuola-numbers .number-item {
        display: block;
        margin-bottom: 20px;
        padding-left: 0; }
        .scuola-numbers .number-item:after {
          content: ".";
          display: block;
          clear: both;
          visibility: hidden;
          line-height: 0;
          height: 0; } }
    @media screen and (max-width: 480px) {
      .scuola-numbers .number-item {
        margin-bottom: 30px; } }
  .scuola-numbers .number-item-image-wrapper {
    width: 50%;
    position: relative; }
    @media screen and (max-width: 1180px) {
      .scuola-numbers .number-item-image-wrapper {
        width: 100%;
        margin-bottom: 12px; } }
    @media screen and (max-width: 1024px) {
      .scuola-numbers .number-item-image-wrapper {
        width: 194px; } }
    @media screen and (max-width: 768px) {
      .scuola-numbers .number-item-image-wrapper {
        float: left;
        width: 300px; } }
    @media screen and (max-width: 600px) {
      .scuola-numbers .number-item-image-wrapper {
        width: 220px; } }
    @media screen and (max-width: 480px) {
      .scuola-numbers .number-item-image-wrapper {
        width: 130px;
        float: left; } }
    @media screen and (max-width: 380px) {
      .scuola-numbers .number-item-image-wrapper {
        width: 110px; } }
  .scuola-numbers .number-item-image {
    width: 170px;
    height: 170px;
    border-radius: 50%;
    border: 1px solid #010f59;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    float: right;
    transform-origin: 100% 0;
    transform: translate(-79px, 79px); }
    @media screen and (max-width: 1180px) {
      .scuola-numbers .number-item-image {
        float: none;
        transform: translate(0, 0);
        margin-top: -80px;
        margin-left: 106px; } }
    @media screen and (max-width: 1024px) {
      .scuola-numbers .number-item-image {
        width: 122px;
        height: 122px;
        margin-left: 70px;
        margin-top: -22px; } }
    @media screen and (max-width: 768px) {
      .scuola-numbers .number-item-image {
        width: 190px;
        height: 190px;
        margin-top: -96px;
        margin-left: 0px; } }
    @media screen and (max-width: 600px) {
      .scuola-numbers .number-item-image {
        width: 122px;
        height: 122px;
        margin-left: 0px;
        margin-top: -50px; } }
    @media screen and (max-width: 480px) {
      .scuola-numbers .number-item-image {
        width: 130px;
        height: 130px;
        margin-left: 0px;
        margin-top: 12px; } }
    @media screen and (max-width: 380px) {
      .scuola-numbers .number-item-image {
        width: 100px;
        height: 100px;
        margin-left: 0px;
        margin-top: 12px; } }
  .scuola-numbers .number-item-amount {
    width: 122px;
    height: 122px;
    border: 1px solid #010f59;
    border-radius: 50%;
    line-height: 120px;
    text-align: center;
    font-size: 1.5rem;
    font-weight: 900;
    position: absolute;
    right: 0;
    top: 0;
    color: #7476e6; }
    @media screen and (max-width: 1180px) {
      .scuola-numbers .number-item-amount {
        position: static; } }
    @media screen and (max-width: 768px) {
      .scuola-numbers .number-item-amount {
        margin-left: calc(100% - 122px); } }
    @media screen and (max-width: 480px) {
      .scuola-numbers .number-item-amount {
        height: auto;
        border: 0;
        border-radius: 0;
        line-height: 1em;
        text-align: right;
        font-size: 1.25rem; } }
  .scuola-numbers .number-item-header {
    width: 100%; }
    @media screen and (max-width: 1280px) {
      .scuola-numbers .number-item-header {
        padding-right: 0;
        margin-bottom: 30px; } }
  .scuola-numbers .number-item-heading {
    font-size: 1.875rem;
    font-weight: 700;
    margin-bottom: 16px;
    line-height: 1.1;
    color: #7476e6; }
    @media screen and (max-width: 1024px) {
      .scuola-numbers .number-item-heading {
        font-size: 1.5rem; } }
    @media screen and (max-width: 480px) {
      .scuola-numbers .number-item-heading {
        font-size: 1.25rem;
        margin-bottom: 9px; } }
  .scuola-numbers .number-item-running-heading {
    font-size: 1.25rem;
    font-weight: 300;
    line-height: 1.2; }
    @media screen and (max-width: 480px) {
      .scuola-numbers .number-item-running-heading {
        font-size: 1rem; } }
  .scuola-numbers .number-item-text {
    flex-basis: 0;
    flex-grow: 3;
    font-size: 1.5rem;
    line-height: 1.3; }
    @media screen and (max-width: 768px) {
      .scuola-numbers .number-item-text {
        font-size: 1.125rem; } }
    .scuola-numbers .number-item-text p {
      margin-bottom: 1em; }
      .scuola-numbers .number-item-text p:last-child {
        margin-bottom: 0; }
  .scuola-numbers .scuola-numbers__text {
    font-size: 1.5rem;
    line-height: 1.3; }
    @media screen and (max-width: 768px) {
      .scuola-numbers .scuola-numbers__text {
        font-size: 1.125rem; } }
    .scuola-numbers .scuola-numbers__text p {
      margin-bottom: 1em; }
      .scuola-numbers .scuola-numbers__text p:last-child {
        margin-bottom: 0; }
    .scuola-numbers .scuola-numbers__text.scuola-numbers__text--first {
      margin-bottom: 100px; }
      @media screen and (max-width: 768px) {
        .scuola-numbers .scuola-numbers__text.scuola-numbers__text--first {
          margin-bottom: 30px; } }

.page--professors {
  padding: 96px 150px 100px 350px; }
  @media screen and (max-width: 1480px) {
    .page--professors {
      padding-left: 50px; } }
  @media screen and (max-width: 1024px) {
    .page--professors {
      padding-left: 20px;
      padding-right: 20px;
      padding-top: 40px; } }

.professors-heading {
  margin-bottom: 60px; }
  @media screen and (max-width: 1024px) {
    .professors-heading {
      margin-bottom: 30px; } }

.professors-search-wrapper {
  margin-bottom: 80px; }
  @media screen and (max-width: 1024px) {
    .professors-search-wrapper {
      margin-bottom: 40px; } }

.professors-intro-text {
  font-size: 1.4375rem;
  line-height: 1.4;
  margin-bottom: 60px; }
  @media screen and (max-width: 1024px) {
    .professors-intro-text {
      margin-bottom: 30px;
      font-size: 1.125rem; } }

.professors-search-label {
  width: 50px;
  height: 44px;
  margin-right: 5px;
  display: inline-block;
  vertical-align: bottom; }
  @media screen and (max-width: 768px) {
    .professors-search-label {
      width: 36px;
      height: 30px;
      vertical-align: baseline; } }
  .professors-search-label img {
    display: block;
    width: 50px;
    height: 44px; }
    @media screen and (max-width: 768px) {
      .professors-search-label img {
        width: 36px;
        height: 30px; } }

.professor-search-input {
  display: inline-block;
  height: 54px;
  line-height: 54px;
  padding: 0 24px;
  color: #010f59;
  font-size: 23px;
  vertical-align: bottom;
  width: calc(100% - 59px);
  background-color: transparent;
  border: none;
  border-bottom: 1px solid #010f59; }

.professor-item {
  padding: 20px 0;
  border-bottom: 1px solid #7476e6; }

.professors-list-wrapper .professor-item {
  display: flex;
  align-items: flex-end; }
  @media screen and (max-width: 1024px) {
    .professors-list-wrapper .professor-item {
      flex-wrap: wrap; } }

.professors-list-wrapper .professor-item-info {
  flex-basis: 0;
  flex-grow: 1;
  padding-right: 30px; }
  @media screen and (max-width: 1024px) {
    .professors-list-wrapper .professor-item-info {
      width: 100%;
      flex-basis: auto;
      margin-bottom: 12px; } }

.professors-list-wrapper .professor-item-name {
  font-size: 1.8125rem;
  margin-bottom: 4px; }
  @media screen and (max-width: 1024px) {
    .professors-list-wrapper .professor-item-name {
      font-size: 1.5rem; } }

.professors-list-wrapper .professor-item-role {
  font-size: 1.625rem;
  font-weight: 100; }
  @media screen and (max-width: 1024px) {
    .professors-list-wrapper .professor-item-role {
      font-size: 1.25rem; } }

.professors-list-wrapper .professor-item-email {
  width: 37%; }
  @media screen and (max-width: 1024px) {
    .professors-list-wrapper .professor-item-email {
      width: auto;
      margin-right: 20px; } }
  @media screen and (max-width: 768px) {
    .professors-list-wrapper .professor-item-email {
      margin-bottom: 10px; } }
  .professors-list-wrapper .professor-item-email a {
    font-size: 1.625rem;
    color: #010f59;
    display: inline-block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap; }
    @media screen and (max-width: 1024px) {
      .professors-list-wrapper .professor-item-email a {
        font-size: 1.25rem; } }
    .professors-list-wrapper .professor-item-email a:before {
      content: "";
      display: inline-block;
      width: 35px;
      height: 24px;
      margin-right: 26px;
      background-image: url(/site/templates/assets/images/c771ef99fdd16c22ceceb6494147c489.svg);
      background-size: 35px 24px;
      background-position: center center;
      background-repeat: no-repeat;
      vertical-align: bottom; }
      @media screen and (max-width: 1024px) {
        .professors-list-wrapper .professor-item-email a:before {
          width: 20px;
          height: 14px;
          margin-right: 12px;
          background-size: 20px 24px; } }
    .professors-list-wrapper .professor-item-email a:hover {
      text-decoration: underline; }

.professors-list-wrapper .professor-item-cv {
  width: 210px; }
  @media screen and (max-width: 1024px) {
    .professors-list-wrapper .professor-item-cv {
      width: auto; } }
  @media screen and (max-width: 768px) {
    .professors-list-wrapper .professor-item-cv {
      margin-bottom: 10px; } }
  .professors-list-wrapper .professor-item-cv a {
    font-size: 1.625rem;
    color: #010f59;
    display: inline-block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap; }
    @media screen and (max-width: 1024px) {
      .professors-list-wrapper .professor-item-cv a {
        font-size: 1.25rem; } }
    .professors-list-wrapper .professor-item-cv a:before {
      content: "";
      display: inline-block;
      width: 26px;
      height: 31px;
      margin-right: 26px;
      background-image: url(/site/templates/assets/images/81a7015564a6842b97424a0ebb9dd953.svg);
      background-size: 26px 31px;
      background-position: center center;
      background-repeat: no-repeat;
      vertical-align: bottom; }
      @media screen and (max-width: 1024px) {
        .professors-list-wrapper .professor-item-cv a:before {
          width: 16px;
          height: 20px;
          margin-right: 12px;
          background-size: 16px 20px; } }
    .professors-list-wrapper .professor-item-cv a:hover {
      text-decoration: underline; }

.page--news {
  padding: 96px 150px 100px 350px;
  overflow-x: hidden; }
  @media screen and (max-width: 1480px) {
    .page--news {
      padding-left: 50px;
      padding-right: 50px; } }
  @media screen and (max-width: 1024px) {
    .page--news {
      padding-left: 20px;
      padding-right: 20px;
      padding-top: 40px; } }

.news-heading {
  margin-bottom: 100px; }
  @media screen and (max-width: 1024px) {
    .news-heading {
      margin-bottom: 30px; } }

.news-list {
  display: flex;
  flex-wrap: wrap; }
  .news-list .news-preview {
    width: 33.33333%;
    padding-top: 34px;
    padding-bottom: 80px;
    padding-right: 10%;
    border-top: 1px solid #7476e6;
    position: relative; }
    @media screen and (max-width: 1024px) {
      .news-list .news-preview {
        width: 50%; } }
    @media screen and (max-width: 768px) {
      .news-list .news-preview {
        width: 100%;
        padding-right: 0;
        padding-bottom: 40px; } }
    .news-list .news-preview:before {
      content: "";
      width: 8px;
      height: 8px;
      border-radius: 50%;
      background-color: #09165d;
      display: block;
      margin-bottom: 8px; }
    .news-list .news-preview:nth-child(3n):after {
      content: "";
      display: block;
      width: 100vw;
      height: 1px;
      position: absolute;
      top: -1px;
      left: 100%;
      border-top: 1px solid #7476e6; }
      @media screen and (max-width: 1024px) {
        .news-list .news-preview:nth-child(3n):after {
          display: none; } }
  .news-list .news-preview-date {
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 14px;
    line-height: 1.4; }
  .news-list .news-preview-text {
    font-size: 1.5rem;
    font-weight: 200;
    margin-bottom: 30px;
    line-height: 1.4; }
  .news-list .news-preview-anchor {
    font-weight: 300;
    text-transform: uppercase;
    font-size: 1.3125rem;
    color: #010f59; }
    .news-list .news-preview-anchor:hover {
      text-decoration: underline; }

.page--single-news {
  padding: 96px 150px 100px 350px;
  min-height: calc(100vh - 200px); }
  @media screen and (max-width: 1480px) {
    .page--single-news {
      padding-left: 50px;
      padding-right: 50px; } }
  @media screen and (max-width: 1024px) {
    .page--single-news {
      padding-left: 20px;
      padding-right: 20px;
      padding-top: 40px; } }
  .page--single-news .news-heading {
    margin-bottom: 60px; }
    @media screen and (max-width: 1024px) {
      .page--single-news .news-heading {
        margin-bottom: 30px; } }

.single-news-back-wrapper {
  padding-bottom: 20px;
  border-bottom: 1px solid #7476e6;
  position: relative;
  margin-bottom: 66px; }
  @media screen and (max-width: 1024px) {
    .single-news-back-wrapper {
      margin-bottom: 30px; } }
  .single-news-back-wrapper a {
    text-transform: uppercase;
    font-weight: 700;
    font-size: 1.25rem;
    color: #7476e6; }
    @media screen and (max-width: 1024px) {
      .single-news-back-wrapper a {
        font-size: 1rem; } }
    .single-news-back-wrapper a:before {
      content: "";
      display: inline-block;
      width: 12px;
      height: 24px;
      vertical-align: middle;
      background-image: url(/site/templates/assets/images/fb6f64be827d6aea3b8716a2592250dd.svg);
      background-position: center center;
      background-size: 12px 24px;
      background-repeat: no-repeat;
      margin-right: 20px; }

.single-news:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0; }

.single-news .single-news-body {
  font-size: 1.4375rem;
  max-width: 35em; }
  @media screen and (max-width: 1024px) {
    .single-news .single-news-body {
      font-size: 1.125rem; } }

.single-news .single-news-date {
  font-size: 1.5rem;
  font-weight: 600;
  margin-bottom: 14px;
  display: block; }
  @media screen and (max-width: 1024px) {
    .single-news .single-news-date {
      font-size: 1.125rem; } }

.single-news .single-news-title {
  font-size: 1.625rem;
  line-height: 1.3;
  font-weight: 600;
  margin-bottom: 70px;
  text-transform: uppercase; }
  @media screen and (max-width: 1024px) {
    .single-news .single-news-title {
      font-size: 1.125rem;
      margin-bottom: 30px; } }

.single-news .single-news-text {
  font-size: 1.4375rem;
  line-height: 1.34;
  margin-bottom: 60px; }
  @media screen and (max-width: 1024px) {
    .single-news .single-news-text {
      font-size: 1.125rem;
      margin-bottom: 30px; } }
  .single-news .single-news-text p {
    margin-bottom: 1em; }
    .single-news .single-news-text p:last-child {
      margin-bottom: 0; }

.single-news .single-news-file-download {
  font-size: 1.25rem;
  color: #010f59; }
  @media screen and (max-width: 1024px) {
    .single-news .single-news-file-download {
      font-size: 1rem; } }
  .single-news .single-news-file-download:after {
    content: "";
    width: 24px;
    height: 29px;
    display: inline-block;
    background-image: url(/site/templates/assets/images/81a7015564a6842b97424a0ebb9dd953.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 24px 29px;
    margin-left: 40px;
    vertical-align: baseline; }
  .single-news .single-news-file-download:hover {
    text-decoration: underline; }

.single-news .single-news-image-wrapper {
  float: right;
  width: 304px;
  height: 304px;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  border-radius: 50%;
  border: 1px solid #010f59;
  overflow: hidden;
  margin-left: 60px; }
  @media screen and (max-width: 1024px) {
    .single-news .single-news-image-wrapper {
      margin-left: 30px; } }
  @media screen and (max-width: 940px) {
    .single-news .single-news-image-wrapper {
      width: 260px;
      height: 260px; } }
  @media screen and (max-width: 768px) {
    .single-news .single-news-image-wrapper {
      width: 260px;
      height: 260px;
      float: none;
      margin-bottom: 30px;
      margin-left: 0; } }
  .single-news .single-news-image-wrapper img {
    display: none; }
    @supports (object-fit: cover) {
      .single-news .single-news-image-wrapper img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover; } }

.single-news.single-news--has-image .single-news-body {
  width: calc(100% - 364px);
  float: left; }
  @media screen and (max-width: 1024px) {
    .single-news.single-news--has-image .single-news-body {
      width: calc(100% - 334px); } }
  @media screen and (max-width: 940px) {
    .single-news.single-news--has-image .single-news-body {
      width: calc(100% - 290px); } }
  @media screen and (max-width: 768px) {
    .single-news.single-news--has-image .single-news-body {
      float: none;
      width: 100%; } }

.page--projects {
  padding: 96px 150px 100px 350px; }
  @media screen and (max-width: 1480px) {
    .page--projects {
      padding-left: 50px; } }
  @media screen and (max-width: 1024px) {
    .page--projects {
      padding-left: 20px;
      padding-right: 20px;
      padding-top: 40px; } }

.projects-heading {
  margin-bottom: 60px; }
  @media screen and (max-width: 1024px) {
    .projects-heading {
      margin-bottom: 30px; } }

.projects-intro-text {
  font-size: 1.4375rem;
  line-height: 1.4; }
  .projects-intro-text p {
    margin-bottom: 30px; }
  @media screen and (max-width: 1024px) {
    .projects-intro-text {
      font-size: 1.125rem; } }

.projects-main-text {
  font-size: 1.4375rem;
  line-height: 1.4; }
  @media screen and (max-width: 1024px) {
    .projects-main-text {
      font-size: 1.125rem; } }
  .projects-main-text p {
    margin-bottom: 40px; }
  .projects-main-text ul {
    margin-bottom: 40px; }
    .projects-main-text ul li {
      margin-bottom: 30px; }
  .projects-main-text a {
    color: #010f59;
    text-decoration: underline; }
    .projects-main-text a:hover {
      color: #7476e6; }

.page--legal {
  padding: 96px 150px 100px 350px; }
  @media screen and (max-width: 1480px) {
    .page--legal {
      padding-left: 50px; } }
  @media screen and (max-width: 1024px) {
    .page--legal {
      padding-left: 20px;
      padding-right: 20px;
      padding-top: 40px; } }

.legal-heading {
  margin-bottom: 60px; }
  @media screen and (max-width: 1024px) {
    .legal-heading {
      margin-bottom: 30px; } }

.legal-main-text {
  font-size: 1.4375rem;
  line-height: 1.4; }
  @media screen and (max-width: 1024px) {
    .legal-main-text {
      font-size: 1.125rem; } }
  .legal-main-text p {
    margin-bottom: 1em; }
  .legal-main-text ul {
    margin-bottom: 1em; }
    .legal-main-text ul li {
      margin-bottom: 0.5em; }
  .legal-main-text a {
    color: #010f59;
    text-decoration: underline; }
    .legal-main-text a:hover {
      color: #7476e6; }

.page--search {
  padding: 96px 150px 100px 350px;
  min-height: calc(100vh - 200px); }
  @media screen and (max-width: 1480px) {
    .page--search {
      padding-left: 50px; } }
  @media screen and (max-width: 1024px) {
    .page--search {
      padding-left: 20px;
      padding-right: 20px;
      padding-top: 40px; } }

.search-results-label {
  text-transform: uppercase;
  font-size: 1.4375rem;
  margin-bottom: 60px;
  font-weight: 700; }
  @media screen and (max-width: 1024px) {
    .search-results-label {
      font-size: 1.125rem;
      margin-bottom: 30px; } }

.search-results-item {
  padding: 40px 0;
  border-bottom: 1px solid #010f59; }
  .search-results-item:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0; }
  @media screen and (max-width: 1024px) {
    .search-results-item {
      padding: 20px 0; } }

.search-result-title {
  font-size: 1.4375rem;
  font-weight: 700;
  color: #010f59;
  float: left; }
  @media screen and (max-width: 1024px) {
    .search-result-title {
      font-size: 1.125rem; } }
  @media screen and (max-width: 680px) {
    .search-result-title {
      float: none;
      margin-bottom: 12px; } }

.search-result-goto {
  font-size: 1.25rem;
  font-weight: 700;
  text-transform: uppercase;
  color: #7476e6;
  float: right; }
  @media screen and (max-width: 1024px) {
    .search-result-goto {
      font-size: 1rem; } }
  @media screen and (max-width: 680px) {
    .search-result-goto {
      float: none; } }

.lazy-background {
  filter: blur(1px); }
