
/* roboto-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 300;
  src: url('assets/fonts/roboto-v30-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: url('assets/fonts/roboto-v30-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  src: url('assets/fonts/roboto-v30-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-900 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 900;
  src: url('assets/fonts/roboto-v30-latin-900.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* @link https://utopia.fyi/type/calculator?c=375,16,1.2,1240,18,1.25,8,2,&s=0.75|0.5|0.25,1.5|2|3|4|6,s-l&g=s,l,xl,12 */

:root {
  --step--2: clamp(0.69rem, calc(0.68rem + 0.05vw), 0.72rem);
  --step--1: clamp(0.83rem, calc(0.80rem + 0.12vw), 0.90rem);
  --step-0: clamp(1.00rem, calc(0.95rem + 0.23vw), 1.13rem);
  --step-1: clamp(1.20rem, calc(1.11rem + 0.38vw), 1.41rem);
  --step-2: clamp(1.44rem, calc(1.30rem + 0.59vw), 1.76rem);
  --step-3: clamp(1.73rem, calc(1.52rem + 0.87vw), 2.20rem);
  --step-4: clamp(2.07rem, calc(1.78rem + 1.25vw), 2.75rem);
  --step-5: clamp(2.49rem, calc(2.08rem + 1.75vw), 3.43rem);
  --step-6: clamp(2.99rem, calc(2.42rem + 2.41vw), 4.29rem);
  --step-7: clamp(3.58rem, calc(2.81rem + 3.29vw), 5.36rem);
  --step-8: clamp(4.30rem, calc(3.26rem + 4.45vw), 6.71rem);
}


:root {
    --pdv-red-25: #eccbcc;
    --pdv-red-50: #d89698;
    --pdv-red-75: #c26164;
    --pdv-red: #aa272f;
    --pdv-red-150: #8d161c;
    --pdv-red-200: #511218;
    --pdv-red-300: #2e0a0e;
    --pdv-group-25: #dedde0;
    --pdv-group-50: #bcbac0;
    --pdv-group-75: #9b98a1;
    --pdv-group: #7a7682;
    --pdv-group-150: #5a5662;
    --pdv-group-200: #3a3742;
    --pdv-group-300: #27252c;
    --pdv-blue-25: #c7ebf9;
    --pdv-blue-50: #90d7f2;
    --pdv-blue-75: #59c4ec;
    --pdv-blue: #21b0e6;
    --pdv-blue-150: #1294da;
    --pdv-blue-200: #0479cf;
    --pdv-blue-300: #0154bb;
}

:root {
    --primary-font: 'Roboto', sans-serif;
    --heading-font: 'Roboto', sans-serif;
	--primary-color-25: var(--pdv-group-25);
	--primary-color-50: var(--pdv-group-50);
	--primary-color-75: var(--pdv-group-75);
	--primary-color: var(--pdv-group);
	--primary-color-150: var(--pdv-group-150);
    --primary-color-200: var(--pdv-group-200);
    --primary-color-300: var(--pdv-group-300);
    --navigation-hover-color: var(--primary-color-200);
    --focus-color: red;
}

html{-webkit-tap-highlight-color: transparent;}
body{-webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility;}
body,p{font-family: var(--primary-font); font-size: var(--step-0); font-weight: 400; line-height: 1.6}
p{margin: 0 0 1em;}
h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{
    font-family: var(--heading-font); 
    font-weight: 900; 
    line-height: 1.2; 
    letter-spacing: 0; 
    text-transform: inherit; 
    margin: 0 0 .4em 0;
    color: var(--pdv-blue-200);
}

h1{font-size: var(--step-5);}
h2{font-size: var(--step-3);}
h3{font-size: var(--step-2);}
h4{font-size: var(--step-1);}
h5{font-size: var(--step-1);}
h6{font-size: var(--step-1);}

h1 span, 
h2 span, 
h3 span{font-weight: 400;}

* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

body {
    width: 750px;
    height: 900px;
    margin: 0 auto;
    overflow: hidden;
}

.container {
    width: 750px;
    height: 900px;
    position: relative;
    box-shadow: 0 0 2px #00000025;
    text-align: center;
}

.swiper {
    width: 100%;
    height: 100%;
}

.slide-wrapper {
    display: flex;
    flex-direction: column;
    height: 100%;
    /*justify-content: space-between;*/
    padding: 0;
}

.top {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.top img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.bottom {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1em;
    padding: 4em 2em 4em 2em;
}

button{
    font-size: var(--step--1);
    font-weight: 700;
    padding: 1em 2em;
    border-radius: 2em;
    background: var(--pdv-blue-200);
    border: 2px solid var(--pdv-blue-200);
    color: #fff;
    text-decoration: none;
    transition: .2s ease;
    text-transform: uppercase;
    cursor: pointer;
}

button.secondary {
    background-color: transparent;
    border-color: var(--pdv-blue-200);
    color: var(--pdv-blue-200); 
}

button.fake {
    background: #28a745;
    cursor: default;
}

figure{
    display: block;
    height: 420px;
    width: 100%;
    position: relative;
    background-color: var(--pdv-blue-200);
}

figure img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

figure::after{
    content: '';
    height: auto;
    width: 100%;
    position: absolute;
    bottom: -1px;
    left: 0;
    aspect-ratio: 750/96;
    background-image: url('data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20750%2096%22%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill%3A%23fff%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M0%2C0v96h750v-37.53C359.01%2C162.89.8.36%2C0%2C0Z%22%2F%3E%3C%2Fsvg%3E');
}

/* Sub Swiper */
.sub-swiper {
    width: 100%;
    height: 100%;
}

.sub-slide {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 0;
}

.sub-slide > div{
    max-width: 620px;
    margin: 120px auto 0 auto;
}

.sub-swiper .swiper-pagination-bullets {
    top: 480px !important;
    bottom: unset !important;
}


:root{
    --swiper-pagination-color: var(--pdv-blue-200);
}