This repository has been archived on 2025-08-21. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
hugo-mistergeek/assets/css/scss/elements/_slider.scss
2025-08-19 09:54:49 +02:00

715 lines
12 KiB
SCSS

//
// Slider styles //
//
.owl-carousel {
&[data-owl-nav="true"] {
&:not([class*='owl-nav-']) {
padding: 0 56px;
@include breakpoint-less(md) {
padding: 0 48px;
}
}
}
.owl-item {
img { width: auto; }
}
.owl-nav {
position: absolute;
top: 50%;
right: 0;
left: 0;
@include transform(translateY(-50%));
z-index: -1;
height: 36px;
button {
&.owl-prev { left: 0; }
&.owl-next { right: 0; }
&.owl-next, &.owl-prev {
position: absolute;
width: 36px;
height: 36px;
border-radius: 50%;
color: get-color("dark", 0.6);
@include transition(ease-out 0.16s);
i {
font-size: 1.3em;
line-height: 36px;
}
&:hover, &:focus {
background: $bg-gray;
color: black;
}
}
}
@include breakpoint-less(md) {
height: 32px;
button {
&.owl-next, &.owl-prev {
width: 32px;
height: 32px;
i {
font-size: 1em;
line-height: 32px;
}
}
}
}
}
&.owl-nav-left, &.owl-nav-right {
.owl-nav {
padding-bottom: 0;
}
}
.owl-dots {
margin-top: 20px;
margin-right: -2px;
margin-left: -2px;
text-align: center;
line-height: 0;
@include breakpoint-less(md) {
margin-top: 16px;
}
.owl-dot {
position: relative;
display: inline-block;
width: 20px;
height: 20px;
margin: 0 2px;
vertical-align: middle;
&:before, &:after {
content: '';
position: absolute;
border-radius: 50%;
@include transition(ease-out 0.16s);
}
&:before {
top: 2px;
right: 2px;
bottom: 2px;
left: 2px;
opacity: 0;
background: transparent;
border: 1px solid black;
}
&:after {
top: 50%;
left: 50%;
@include transform(translate(-50%,-50%));
opacity: 0.3;
background: black;
width: 6px;
height: 6px;
}
&:hover, &:focus, &.active {
&:after {
opacity: 1;
}
}
&.active {
&:before, &:after {
opacity: 1;
}
&:before {
top: 0;
right: 0;
bottom: 0;
left: 0;
}
}
}
}
&:not([data-owl-dots="false"], [class*='owl-dots-over']) {
.owl-nav {
margin-top: -20px;
@include breakpoint-less(md) {
margin-top: -18px;
}
}
}
}
.bg-black,
[class*='bg-dark'],
[class*='bg-gradient-'],
[class*='bg-color-'] {
.owl-carousel {
&:not([class*='owl-dots-over'], [class*='owl-nav-over']) {
.owl-nav {
button {
&.owl-next, &.owl-prev {
color: get-color("white", 0.7);
&:hover, &:focus {
background: get-color("white", 0.15);
color: white;
}
}
}
}
.owl-dots {
.owl-dot {
&:before { border-color: white; }
&:after { background: white; opacity: 0.5; }
&:hover, &:focus, &.active {
&:after {
opacity: 1;
}
}
}
}
}
}
}
[class*='bg-gray'],
[class*='bg-light'] {
.owl-carousel {
.owl-nav {
button {
&.owl-next, &.owl-prev {
&:hover, &:focus {
background: get-color("dark", 0.05);
}
}
}
}
}
}
//
// Owl Nav - Left, Right //
//
.owl-carousel {
&.owl-nav-left,
&.owl-nav-right {
.owl-nav {
height: auto;
button {
position: static;
display: block;
margin: 8px 0;
&.owl-prev, &.owl-next {
right: auto;
left: auto;
}
}
}
}
&.owl-nav-left {
padding: 0 0 0 56px;
@include breakpoint-less(md) {
padding: 0 0 0 48px;
}
.owl-nav {
right: auto;
}
}
&.owl-nav-right {
padding: 0 56px 0 0;
@include breakpoint-less(md) {
padding: 0 48px 0 0;
}
.owl-nav {
left: auto;
}
}
}
//
// Owl Nav Overlay //
//
.owl-carousel {
&.owl-nav-overlay {
.owl-nav {
z-index: 1;
padding-bottom: 0;
button {
&.owl-next, &.owl-prev {
opacity: 1;
background: get-color("dark", 0.3);
width: 50px;
height: 50px;
border: 0;
border-radius: 50%;
color: get-color("white", 0.8);
text-align: center;
i {
line-height: 50px;
}
&:hover, &:focus {
opacity: 1;
background: get-color("dark", 0.4);
color: white;
}
}
}
}
@include breakpoint-above(lg) {
.owl-nav {
opacity: 0;
@include transition(ease-out 0.16s);
}
&:hover {
.owl-nav { opacity: 1; }
}
}
@include breakpoint-less(md) {
.owl-nav {
display: none;
}
}
}
&.owl-nav-overlay {
.owl-nav {
height: 50px;
button {
&.owl-prev { left: 20px; }
&.owl-next { right: 20px; }
}
}
&:not([data-owl-dots="false"], [class*='owl-dots-over']) {
.owl-nav {
margin-top: -20px;
}
}
}
}
//
// Owl Dots - Left, Right //
//
.owl-carousel {
&.owl-dots-left {
.owl-dots { text-align: left; }
}
&.owl-dots-right {
.owl-dots { text-align: right; }
}
}
//
// Owl Dots Overlay //
//
.owl-carousel {
&.owl-dots-overlay {
.owl-dots {
position: absolute;
bottom: 20px;
background: get-color("dark", 0.3);
border-radius: 20px;
margin: 0;
padding: 5px;
@include breakpoint-less(md) {
bottom: 16px;
}
.owl-dot {
&:before { border-color: white; }
&:after { background: white; opacity: 0.5; }
&:hover, &:focus, &.active {
&:after {
opacity: 1;
}
}
}
}
}
&.owl-dots-overlay {
.owl-dots {
right: auto;
left: 50%;
@include transform(translateX(-50%));
}
&.owl-nav-overlap-right {
.owl-dots {
margin-left: -12.5px;
}
}
&.owl-nav-left {
.owl-dots {
margin-left: 28px;
}
}
&.owl-nav-right {
.owl-dots {
margin-left: -28px;
}
}
@include breakpoint-above(lg) {
&.owl-nav-overlap-left {
.owl-dots {
margin-left: 12.5px;
}
}
}
@include breakpoint-less(md) {
&.owl-nav-overlap-left, &.owl-nav-overlap-right {
.owl-dots {
margin-left: -10px;
}
}
}
}
}
//
// Owl Dots Overlap //
//
.owl-carousel {
&.owl-dots-overlap,
&.owl-dots-overlap-left,
&.owl-dots-overlap-right {
.owl-dots {
position: absolute;
bottom: 0;
background: white;
border-radius: 20px;
@include box-shadow(0 6px 30px 0 rgba(22,24,26,0.13));
margin: 0;
padding: 5px;
&:hover, &:focus {
@include box-shadow(0 6px 36px 0 rgba(22,24,26,0.19));
}
.owl-dot {
&:before { border-color: get-color("dark"); }
&:after { background: get-color("dark"); opacity: 0.3; }
&:hover, &:focus, &.active {
&:after {
opacity: 1;
}
}
}
}
}
&.owl-dots-overlap {
.owl-dots {
right: auto;
left: 50%;
@include transform(translateY(50%) translateX(-50%));
}
&.owl-nav-left {
.owl-dots {
margin-left: 28px;
}
}
&.owl-nav-right {
.owl-dots {
margin-left: -28px;
}
}
&.owl-nav-overlap-right {
.owl-dots {
margin-left: -12.5px;
}
}
@include breakpoint-above(lg) {
&.owl-nav-overlap-left {
.owl-dots {
margin-left: 12.5px;
}
}
}
}
&.owl-dots-overlap-left,
&.owl-dots-overlap-right {
.owl-dots {
@include transform(translateY(50%));
}
}
&.owl-dots-overlap-left {
.owl-dots {
right: auto;
left: 20px;
@include breakpoint-less(md) {
left: 16px;
}
}
&[data-owl-nav="true"], &.owl-nav-left {
&:not(.owl-nav-right, [class*='owl-nav-over']) {
.owl-dots {
left: 76px;
@include breakpoint-less(md) {
left: 64px;
}
}
}
}
&.owl-nav-overlap {
.owl-dots {
left: 45px;
}
}
@include breakpoint-above(lg) {
&.owl-nav-overlap-left {
.owl-dots {
left: 45px;
}
}
}
}
&.owl-dots-overlap-right {
.owl-dots {
right: 20px;
left: auto;
@include breakpoint-less(md) {
right: 16px;
}
}
&[data-owl-nav="true"], &.owl-nav-right {
&:not(.owl-nav-left, [class*='owl-nav-over']) {
.owl-dots {
right: 76px;
@include breakpoint-less(md) {
right: 64px;
}
}
}
}
&.owl-nav-overlap, &.owl-nav-overlap-right {
.owl-dots {
right: 45px;
@include breakpoint-less(md) {
right: 36px;
}
}
}
}
}
//
// Owl Nav Overlap //
//
.owl-carousel {
&.owl-nav-overlap {
padding: 0 25px;
.owl-nav {
right: 25px;
left: 25px;
z-index: 1;
height: 50px;
button {
opacity: 1;
background: white;
width: 50px;
height: 50px;
border-radius: 50%;
@include box-shadow(0 10px 36px 0 rgba(22,24,26,0.13));
color: get-color("dark");
&.owl-prev {
right: auto;
left: 0;
@include transform(translateX(-50%));
}
&.owl-next {
right: 0;
left: auto;
@include transform(translateX(50%));
}
&:hover, &:focus {
opacity: 1;
background: white;
color: get-color("dark");
@include box-shadow(0 10px 40px 0 rgba(22,24,26,0.19));
}
}
}
&:not([data-owl-dots="false"], [class*='owl-dots-over']) {
.owl-nav {
margin-top: -20px;
@include breakpoint-less(md) {
margin-top: -18px;
}
}
}
@include breakpoint-less(md) {
padding: 0 20px;
.owl-nav {
right: 20px;
left: 20px;
height: 40px;
button.owl-prev,
button.owl-next {
width: 40px;
height: 40px;
}
}
}
}
&.owl-nav-overlap-left {
@include breakpoint-above(lg) {
padding: 0 0 0 25px;
.owl-nav {
left: 25px;
right: auto;
@include transform(translateY(-50%) translateX(-50%));
}
}
}
&.owl-nav-overlap-right {
padding: 0 25px 0 0;
.owl-nav {
left: auto;
right: 25px;
@include transform(translateY(-50%) translateX(50%));
}
}
&.owl-nav-overlap-left,
&.owl-nav-overlap-right {
.owl-nav {
z-index: 1;
width: 50px;
height: auto;
padding-bottom: 0;
button.owl-prev,
button.owl-next {
position: static;
right: 0;
left: 0;
opacity: 1;
background: white;
width: 50px;
height: 50px;
margin: 4px 0;
border-radius: 50%;
@include box-shadow(0 10px 36px 0 rgba(22,24,26,0.13));
color: get-color("dark");
&:hover, &:focus {
opacity: 1;
background: white;
@include box-shadow(0 10px 40px 0 rgba(22,24,26,0.19));
color: get-color("dark");
}
}
}
&:not([data-owl-dots="false"], [class*='owl-dots-over']) {
.owl-nav {
margin-top: -20px;
@include breakpoint-less(md) {
margin-top: -18px;
}
}
}
@include breakpoint-less(md) {
padding: 0 20px 0 0;
.owl-nav {
left: auto;
right: 20px;
@include transform(translateY(-50%) translateX(50%));
width: 40px;
button.owl-prev,
button.owl-next {
width: 40px;
height: 40px;
}
}
}
}
}
//
// Swiper //
//
.hero-portfolio-slider {
@include breakpoint-less(md) {
padding: 0 30px;
}
.swiper-wrapper {
.swiper-slide {
@include transform(scale(0.9));
opacity: 0.9;
@include transition(ease-in 0.16s);
&.swiper-slide-active {
@include transform(scale(1));
opacity: 1;
}
}
}
.swiper-pagination {
.swiper-pagination-bullet {
position: relative;
display: inline-block;
opacity: 1;
background: transparent;
width: 20px;
height: 20px;
margin: 0 2px;
vertical-align: middle;
&:before, &:after {
content: '';
position: absolute;
border-radius: 50%;
@include transition(ease-out 0.16s);
}
&:before {
top: 2px;
right: 2px;
bottom: 2px;
left: 2px;
opacity: 0;
background: transparent;
border: 1px solid black;
}
&:after {
top: 50%;
left: 50%;
@include transform(translate(-50%,-50%));
opacity: 0.3;
background: black;
width: 6px;
height: 6px;
}
&:hover, &:focus, &.swiper-pagination-bullet-active {
&:after {
opacity: 1;
}
}
&.swiper-pagination-bullet-active {
&:before, &:after {
opacity: 1;
}
&:before {
top: 0;
right: 0;
bottom: 0;
left: 0;
}
}
}
&.swiper-pagination-horizontal {
position: absolute;
bottom: 20px;
left: 50%;
@include transform(translateX(-50%));
background: get-color("dark", 0.3);
width: auto;
border-radius: 20px;
margin: 0;
padding: 5px;
@include breakpoint-less(md) {
bottom: 16px;
}
.swiper-pagination-bullet {
&:before { border-color: white; }
&:after { background: white; opacity: 0.5; }
&:hover, &:focus, &.swiper-pagination-bullet-active {
&:after {
opacity: 1;
}
}
}
}
}
}
//
// Sliding Text //
//
.sliding-text,
.sliding-text-reverse {
.swiper-slide {
width: auto;
}
}
.sliding-boxes .swiper-wrapper,
.sliding-text .swiper-wrapper,
.sliding-text-reverse .swiper-wrapper {
transition-timing-function: linear;
}