@import "../utilities/mixins"; $hero-body-padding: 3rem 1.5rem !default; $hero-body-padding-tablet: 3rem 3rem !default; $hero-body-padding-small: 1.5rem !default; $hero-body-padding-medium: 9rem 4.5rem !default; $hero-body-padding-large: 18rem 6rem !default; $hero-colors: $colors !default; // Main container .#{$class-prefix}hero { align-items: stretch; display: flex; flex-direction: column; justify-content: space-between; .#{$class-prefix}navbar { background: none; } .#{$class-prefix}tabs { ul { border-bottom: none; } } // Colors @each $name, $pair in $hero-colors { $color: nth($pair, 1); $color-invert: nth($pair, 2); &.is-#{$name} { background-color: $color; color: $color-invert; a:not(.#{$class-prefix}button):not(.#{$class-prefix}dropdown-item):not(.tag):not(.#{$class-prefix}pagination-link.is-current), strong { color: inherit; } .#{$class-prefix}title { color: $color-invert; } .#{$class-prefix}subtitle { color: bulmaRgba($color-invert, 0.9); a:not(.#{$class-prefix}button), strong { color: $color-invert; } } .#{$class-prefix}navbar-menu { @include touch { background-color: $color; } } .#{$class-prefix}navbar-item, .#{$class-prefix}navbar-link { color: bulmaRgba($color-invert, 0.7); } a.#{$class-prefix}navbar-item, .#{$class-prefix}navbar-link { &:hover, &.is-active { background-color: bulmaDarken($color, 5%); color: $color-invert; } } .#{$class-prefix}tabs { a { color: $color-invert; opacity: 0.9; &:hover { opacity: 1; } } li { &.is-active a { color: $color !important; opacity: 1; } } &.is-boxed, &.is-toggle { a { color: $color-invert; &:hover { background-color: bulmaRgba($scheme-invert, 0.1); } } li.is-active a { &, &:hover { background-color: $color-invert; border-color: $color-invert; color: $color; } } } } // Modifiers @if type-of($color) == "color" { &.is-bold { $gradient-top-left: darken( saturate(adjust-hue($color, -10deg), 10%), 10% ); $gradient-bottom-right: lighten( saturate(adjust-hue($color, 10deg), 5%), 5% ); background-image: linear-gradient( 141deg, $gradient-top-left 0%, $color 71%, $gradient-bottom-right 100% ); @include mobile { .#{$class-prefix}navbar-menu { background-image: linear-gradient( 141deg, $gradient-top-left 0%, $color 71%, $gradient-bottom-right 100% ); } } } } } } // Sizes &.is-small { .#{$class-prefix}hero-body { padding: $hero-body-padding-small; } } &.is-medium { @include tablet { .#{$class-prefix}hero-body { padding: $hero-body-padding-medium; } } } &.is-large { @include tablet { .#{$class-prefix}hero-body { padding: $hero-body-padding-large; } } } &.is-halfheight, &.is-fullheight, &.is-fullheight-with-navbar { .#{$class-prefix}hero-body { align-items: center; display: flex; & > .#{$class-prefix}container { flex-grow: 1; flex-shrink: 1; } } } &.is-halfheight { min-height: 50vh; } &.is-fullheight { min-height: 100vh; } } // Components .#{$class-prefix}hero-video { @extend %overlay; overflow: hidden; video { left: 50%; min-height: 100%; min-width: 100%; position: absolute; top: 50%; transform: translate3d(-50%, -50%, 0); } // Modifiers &.is-transparent { opacity: 0.3; } // Responsiveness @include mobile { display: none; } } .#{$class-prefix}hero-buttons { margin-top: 1.5rem; // Responsiveness @include mobile { .#{$class-prefix}button { display: flex; &:not(:last-child) { margin-bottom: 0.75rem; } } } @include tablet { display: flex; justify-content: center; .#{$class-prefix}button:not(:last-child) { @include ltr-property("margin", 1.5rem); } } } // Containers .#{$class-prefix}hero-head, .#{$class-prefix}hero-foot { flex-grow: 0; flex-shrink: 0; } .#{$class-prefix}hero-body { flex-grow: 1; flex-shrink: 0; padding: $hero-body-padding; @include tablet { padding: $hero-body-padding-tablet; } }