html {
font-size: 62.5%;
-webkit-text-size-adjust: 100%;
text-size-adjust: 100%;
}

@font-face {
font-family: "PP Neue Montreal";
src: url("https://retronill.lt/wp-content/themes/retronill/fonts/PPNeueMontreal-Variable.woff2") format("woff2");
font-weight: 200 800;
font-style: normal;
font-display: swap;
}

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

:root {
  --size-font: clamp(0.5rem, calc(0.5rem + 0.52083vw), 1rem);
  --size-08: 0.8rem;
  --size-10: 1rem;
  --size-16: 1.6rem;
  --size-20: 2rem;
  --size-24: 2.4rem;
  --size-32: 3.2rem;
  --size-40: 4rem;
  --size-48: 4.8rem;
  --size-64: 6.4rem;
  --size-80: 8rem;
  --size-128: 12.8rem;
  --line-height-1: 1em;
  --line-height-2: 1.12em;
  --line-height-3: 1.24em;
  --line-height-4: 1.32em;
  --line-height-5: 1.48em;
  --letter-spacing-tight: -0.024em;
  --letter-spacing-tighter: -0.032em;
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-bold: 700;
  --radius-sm: 0.8rem;
  --radius-md: 1.6rem;
  --radius-lg: 2.4rem;
  --radius-xl: 3.2rem;
  --font-family: "PP Neue Montreal", sans-serif;
  --smooth-ease: cubic-bezier(.32, .72, 0, 1);
  --opacity-ease: cubic-bezier(.4, 0, .2, 1);
  --scale-hover: 1.03;
  --scale-text-hover: 0.8;
  --scale-text-hover-up: 1.2;
  --transition-speed: 0.4s;
}

body {
font-size: var(--size-font);
font-family: var(--font-family)!important;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}

a:focus-visible {
outline: 1px solid #FF6EC7;
outline-offset: 0;
}

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

.site-header{
width:100%;
z-index: 1002;
position: relative;
}
.page-id-4674 .site-header{
background:#f3f3f3;
}
.site-header__inner{
max-width:1600px;
margin:0 auto;
padding:clamp(1.6rem, 2.5vw, 2.4rem);
display:flex;
align-items:center;
position: relative;
justify-content:space-between;
}
.site-header__inner::after{
content:"";
position:absolute;
left:0;
right:0;
bottom:0;
height:1px;
background:#CCCCCC;
transform:scaleX(0);
transform-origin:100% 50%;
transition:transform .64s cubic-bezier(.38,0,.215,1);
transition-delay: .16s;
}
html.has-menu-open .site-header__inner::after{
transform:scaleX(1);
transform-origin:0% 50%;
}
.site-header__logo{
font-size:2.4rem;
font-weight:600;
text-decoration:none;
color:inherit;
}
.site-header__menu{
display:flex;
align-items: center;
gap:2.4rem;
list-style:none;
margin:0;
padding:0;
}
.site-header__menu a{
text-decoration:none;
color:#666666;
}
.site-header__nav a{
font-size:1.8rem;
font-weight:500;
line-height:1em;
letter-spacing:-0.024em;
}
.site-header__menu-item{
display:flex;
align-items:center;
}
.site-header__nav i,
.cta--header i{
font-size:1.6rem;
line-height:1em;
}
.site-header__nav i,
.cta--header i{
font-size:1.6rem;
line-height:1em;
}
.site-header__nav a:hover,
.site-header__nav a:focus-visible{
color:black;
}
@media (prefers-reduced-motion:reduce){
.site-header__nav a,
.cta--header{
transition:none;
}
}
.site-header__nav a:not(.cta){
transition:
color var(--transition-speed) var(--smooth-ease),
transform var(--transition-speed) var(--smooth-ease);
}

@media (min-width: 768px) {
.c-header_menu,
.mobile-menu {
display: none;
}
}

@media (max-width:767px){
.site-header__nav{
display:none;
}
}

@media (max-width: 767px) {
.site-header__menu {
display: none;
}
.c-header_menu {
align-items: center;
display: flex;
height: 48px;
width: 48px;
position: relative;
overflow: hidden;
background: transparent;
border: none;
z-index: 1002;
pointer-events: auto;
}
}

.c-header_menu_icon {
left: 50%;
position: absolute;
top: 50%;
}

.c-header_menu_icon.-open {
transform: translate(-50%, -50%);
width: 27px;
}

.c-header_menu_icon.-close {
height: 22px;
transform: translate(-50%, -50%) rotate(45deg);
transform-origin: 50%;
width: 22px;
}

.c-header_menu_line {
display: block;
height: 1px;
width: 100%;
}

.c-header_menu_line::before {
content: "";
position: absolute;
inset: 0;
background: black;
transform-origin: 0 0;
transition: transform .48s cubic-bezier(.38,0,.215,1);
transition-delay: calc(var(--item-delay,0s) + var(--extra-delay,0s))
}

.c-header_menu_icon.-open .c-header_menu_line:first-child {
margin-bottom: 6px;
--item-delay: .12s;
}

.c-header_menu_icon.-open .c-header_menu_line {
--extra-delay: .24s;
position: relative
}

html.has-menu-open .c-header_menu_icon.-open
.c-header_menu_line::before {
transform: scaleX(0);
--extra-delay:0s;
transform-origin: 100% 0;
}

.c-header_menu_icon.-close .c-header_menu_line {
position: absolute;
--extra-delay: .24s;
top: 50%;
}

.c-header_menu_icon.-close .c-header_menu_line:first-child {
--item-delay: .1s;
transform: rotate(90deg);
transform-origin: 50%
}

html:not(.has-menu-open)
.c-header_menu_icon.-close
.c-header_menu_line::before {
transform: scaleX(0);
--extra-delay:0s;
transform-origin: 100% 0;
}

.mobile-menu__overlay{
position:fixed;
inset:0;
width:100vw;
height:100dvh;
background:white;
opacity:0;
pointer-events:none;
clip-path:polygon(0% 100%,100% 100%,100% 100%,0% 100%);
z-index:1000;
display:flex;
padding:8rem 0rem;
}

.mobile-menu__nav{
width:100%;
display:flex;
flex-direction:column;
}

.mobile-menu__nav__item {
border-bottom: 1px solid #CCCCCC;
padding: 2.4rem 1.6rem;
}

.mobile-menu__nav a{
font-size:2.4rem;
font-weight:500;
letter-spacing: -0.012em;
line-height: 1em;
color:black;
text-decoration:none;
display:flex;
justify-content:space-between;
align-items:center;
}

.mobile-menu__nav i {
  font-size: 2.4rem;
}

.mobile-menu__nav a{
will-change:transform,opacity;
}

@media (min-width:768px){
.mobile-menu__overlay, .site-header__inner::after{
display:none!important;
}
}

.sr-only{
position:absolute!important;
width:1px!important;
height:1px!important;
padding:0!important;
margin:-1px!important;
overflow:hidden!important;
clip:rect(0,0,0,0)!important;
clip-path:inset(50%)!important;
white-space:nowrap!important;
border:0!important;
}

html.has-menu-open,
html.has-menu-open body{
overflow:hidden;
height:100%;
}

.cta {
position: relative;
cursor: pointer;
padding: 1.6rem 2.4rem;
border-radius: 0.8rem;
overflow: hidden;
display: inline-grid;
place-items: center;   
transform: scale(1);
transition: all var(--transition-speed) var(--smooth-ease);
backface-visibility: hidden;
background: #FF6EC7;
}
.cta--header {
  color: white !important;
}
.cta__text {
grid-area: 1 / 1; 
transition: all var(--transition-speed) var(--smooth-ease), color .32s ease;
white-space: nowrap;
display: inline-flex;
align-items: center;
gap: 0.4rem;
}
.cta__text--default {
opacity: 1;
filter: blur(0);
transform: translateY(0) scale(1);
z-index: 1;
}
.cta__text--hover {
opacity: 0;
filter: blur(4px);
transform: translateY(100%) scale(var(--scale-text-hover-up));
z-index: 0;
pointer-events: none;
}
.cta:hover {
transform: scale(var(--scale-hover));
}
.cta:hover .cta__text--default {
transform: translateY(-100%) scale(var(--scale-text-hover));
opacity: 0;
filter: blur(4px);
}
.cta:hover .cta__text--hover {
transform: translateY(0) scale(1);
opacity: 1;
filter: blur(0);
}

/* Image Hover */
.service__carousel__card__image img {
  transition: transform 0.48s var(--smooth-ease), 0.64s var(--opacity-ease);
  transform: scale(1);
}

.service__carousel__card__image img:hover {
  transform: scale(1.08);
}

.service__carousel__card__image {
    overflow: hidden;
}


/* Service Carousel */
.service__carousel__card svg {
    stroke: #F3F3F3!important;
    fill: transparent !important;
    transition: none !important;
}

.service__carousel__card__icon svg:hover {
    stroke: #F3F3F3!important;
    fill: transparent !important;
}

.service__carousel__card__icon {
  opacity: 0;
  transform: translateY(10px) scale(0);
  transition: all 0.48s var(--opacity-ease); 
  pointer-events: none;
  will-change: opacity, transform;
}

.service__carousel__card:hover .service__carousel__card__icon {
  opacity: 1;
  transform: translateY(0) scale(1);
}

.underline-hover{
position:relative;
display:inline-block;
}

.underline-hover::after{
content:"";
position:absolute;
left:0;
bottom:-2px;
width:100%;
height:1px;
background:black;
transform:scaleX(0);
transform-origin:right;
transition:transform .32s cubic-bezier(.32,.72,0,1);
}

.underline-hover:hover::after{
transform:scaleX(1);
transform-origin:left;
}

.site-footer .underline-hover::after{
background:white;
}

.site-footer{
background:#1D1C1C;
color:white;
}

.site-footer__inner{
max-width:1600px;
margin:0 auto;
padding:8rem clamp(1.6rem, 4vw, 4.8rem);
display:flex;
align-items:flex-start;
}

.site-footer__brand{
flex:0 0 auto;
}

.site-footer__right{
margin-left:auto;
display:flex;
gap:clamp(4rem,4vw,8rem);
}

.site-footer__logo{
font-size:clamp(1.8rem,2.4vw,2.4rem);
font-weight:600;
margin-bottom:1.2rem;
}

.site-footer__legal{
font-size:1.8rem;
display:flex;
gap:0.8rem;
}

.site-footer__heading{
font-size:2.4rem;
font-weight:500;
margin-bottom:1.6rem;
}

.site-footer ul{
list-style:none;
margin:0;
padding:0;
display:flex;
flex-direction:column;
gap:1.2rem;
}

.site-footer__list{
display:flex;
flex-direction:column;
gap:1.2rem;
}

.site-footer a, 
.site-footer p, 
.site-footer span {
  font-size: 1.8rem;
  font-weight: 400;
  color: white;
  opacity: .92;
  text-decoration: none;
  transition: all var(--transition-speed) var(--smooth-ease);
}

.site-footer a:hover,
.site-footer a:focus-visible{
opacity:1;
}

.site-footer__bottom{
max-width:1600px;
margin:0 auto;
padding:4.8rem clamp(1.6rem, 4vw, 4.8rem);
display:flex;
justify-content:space-between;
align-items:center;
font-size:1.8rem;
}

.site-footer__divider{
flex:1;
height:1px;
background:white;
margin:0 clamp(1.6rem, 4vw, 2.4rem);
transform-origin:left;
}

@media (max-width:1024px){
.site-footer__inner{
display:grid;
grid-template-columns:1fr;
row-gap:4.8rem;
}
.site-footer__right{
margin-left:0;
display:grid;
grid-template-columns:repeat(3,1fr);
gap:4rem;
}
}

@media (max-width:600px){
.site-footer__right{
grid-template-columns:repeat(2,1fr);
gap:3.2rem;
}
.site-footer__contact{
grid-column:1 / -1;
}
.site-footer__divider{
width:100%;
margin:0;
flex:none;
}
.site-footer__bottom{
flex-direction:column;
align-items:flex-start;
gap:1.6rem;
text-align:left;
}
}