There is no demonstration of this component.
There is no demonstration of this component.
$header-height: 130px !default;
$header-height-mobile: 80px !default;

.a-anchor {

    $self: &;

    position: relative;
    top: $header-height-mobile * -1;

    @media(min-width: breakpoint-min($menu-breakpoint)) {

        top: $header-height * -1;

    }

    @at-root {

        .headroom--top,
        .headroom--unpinned {

            + .main {

                #{$self} {

                    top: 0;

                }

            }

        }

    }

}

Animace prulnutí

Vivamus porttitor turpis ac leo. Duis bibendum, lectus ut viverra rhoncus, dolor nunc faucibus libero, eget facilisis enim ipsum id lacus. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur?

Alt obrázku

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean id metus id velit ullamcorper pulvinar. Duis ante orci, molestie vitae vehicula venenatis, tincidunt ac pede. Nullam sapien sem, ornare ac, nonummy non, lobortis a enim. Praesent id justo in neque elementum ultrices. Pellentesque ipsum. Phasellus enim erat, vestibulum vel, aliquam a, posuere eu, velit. Integer in sapien. Ut tempus purus at lorem. Maecenas ipsum velit, consectetuer eu lobortis ut, dictum at dui. Etiam neque. Maecenas lorem. Aliquam erat volutpat. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Nulla non arcu lacinia neque faucibus fringilla.

In convallis. Mauris tincidunt sem sed arcu. Integer malesuada. Etiam neque. Duis sapien nunc, commodo et, interdum suscipit, sollicitudin et, dolor. Mauris dolor felis, sagittis at, luctus sed, aliquam non, tellus. In rutrum. Etiam dui sem, fermentum vitae, sagittis id, malesuada in, quam. Vestibulum erat nulla, ullamcorper nec, rutrum non, nonummy ac, erat. Pellentesque arcu. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

Animace zprava

1) Animace zestran

2) Animace zestran

3) Animace zestran

4) Animace zestran

5) Animace zestran

Animace zleva

Postupná animace

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean id metus id velit ullamcorper pulvinar. Duis ante orci, molestie vitae vehicula venenatis, tincidunt ac pede. Nullam sapien sem, ornare ac, nonummy non, lobortis a enim

Praesent id justo in neque elementum ultrices. Pellentesque ipsum. Phasellus enim erat, vestibulum vel, aliquam a, posuere eu, velit. Integer in sapien. Ut tempus purus at lorem.

Maecenas ipsum velit, consectetuer eu lobortis ut, dictum at dui. Etiam neque. Maecenas lorem. Aliquam erat volutpat.

Alt obrázku

Postupná animace

Alt obrázku

Postupná animace

Alt obrázku

Postupná animace

Alt obrázku

Postupná animace

<div class="row">
	<div class="col-24 col-sm-16 offset-sm-4 text-center">
		<h2 class="a-animate-fade jq_intersection">Animace prulnutí</h2>

		<p class="font-medium">Vivamus porttitor turpis ac leo. Duis bibendum, lectus ut viverra rhoncus, dolor nunc faucibus libero, eget facilisis enim ipsum id lacus. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur?</p>
	</div>
	<div class="col-sm-12">
		<img src="https://placehold.jp/600x600.png" alt="Alt obrázku" class="d-block">
	</div>
	<div class="col-sm-12">
		<p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean id metus id velit ullamcorper pulvinar. Duis ante orci, molestie vitae vehicula venenatis, tincidunt ac pede. Nullam sapien sem, ornare ac, nonummy non, lobortis a enim. Praesent id justo in neque elementum ultrices. Pellentesque ipsum. Phasellus enim erat, vestibulum vel, aliquam a, posuere eu, velit. Integer in sapien. Ut tempus purus at lorem. Maecenas ipsum velit, consectetuer eu lobortis ut, dictum at dui. Etiam neque. Maecenas lorem. Aliquam erat volutpat. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Nulla non arcu lacinia neque faucibus fringilla.</p>

		<p>In convallis. Mauris tincidunt sem sed arcu. Integer malesuada. Etiam neque. Duis sapien nunc, commodo et, interdum suscipit, sollicitudin et, dolor. Mauris dolor felis, sagittis at, luctus sed, aliquam non, tellus. In rutrum. Etiam dui sem, fermentum vitae, sagittis id, malesuada in, quam. Vestibulum erat nulla, ullamcorper nec, rutrum non, nonummy ac, erat. Pellentesque arcu. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</p>

		<a href="#" class="a-animate-right jq_intersection d-inline-block">Animace zprava</a>
	</div>
	<div class="col-24">
		<div class="bg-gray py-4">
			<div class="row justify-content-center">
				<a href="#" class="col-auto a-animate-side jq_intersection">Animace zestran</a>
				<a href="#" class="col-auto a-animate-side jq_intersection">Animace zestran</a>
			</div>
		</div>
	</div>
	<div class="col-24 text-center font-medium line-height-large">
		<p class="a-animate-side jq_intersection">1) Animace zestran</p>
		<p class="a-animate-side a-animate-delay-2 jq_intersection">2) Animace zestran</p>
		<p class="a-animate-side a-animate-delay-3 jq_intersection">3) Animace zestran</p>
		<p class="a-animate-side a-animate-delay-4 jq_intersection">4) Animace zestran</p>
		<p class="a-animate-side a-animate-delay-5 jq_intersection">5) Animace zestran</p>
	</div>
	<div class="col-sm-6">
		<img src="https://placehold.jp/400x400.png" alt="Animace zleva" class="d-block a-animate-left jq_intersection">
	</div>
	<div class="col-sm-18">
		<h3>Postupná animace</h3>

		<p class="a-animate-fade jq_intersection">Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean id metus id velit ullamcorper pulvinar. Duis ante orci, molestie vitae vehicula venenatis, tincidunt ac pede. Nullam sapien sem, ornare ac, nonummy non, lobortis a enim</p>

		<p class="a-animate-fade a-animate-delay-2 jq_intersection">Praesent id justo in neque elementum ultrices. Pellentesque ipsum. Phasellus enim erat, vestibulum vel, aliquam a, posuere eu, velit. Integer in sapien. Ut tempus purus at lorem.</p>

		<p class="a-animate-fade a-animate-delay-3 jq_intersection">Maecenas ipsum velit, consectetuer eu lobortis ut, dictum at dui. Etiam neque. Maecenas lorem. Aliquam erat volutpat.</p>
	</div>
	<div class="col-sm-12 col-md-6 a-animate-fade jq_intersection">
		<img src="https://placehold.jp/300x190.png" alt="Alt obrázku" class="d-block">

		<p>Postupná animace</p>
	</div>
	<div class="col-sm-12 col-md-6 a-animate-fade a-animate-delay-2 jq_intersection">
		<img src="https://placehold.jp/300x190.png" alt="Alt obrázku" class="d-block">

		<p>Postupná animace</p>
	</div>
	<div class="col-sm-12 col-md-6 a-animate-fade a-animate-delay-3 jq_intersection">
		<img src="https://placehold.jp/300x190.png" alt="Alt obrázku" class="d-block">

		<p>Postupná animace</p>
	</div>
	<div class="col-sm-12 col-md-6 a-animate-fade a-animate-delay-4 jq_intersection">
		<img src="https://placehold.jp/300x190.png" alt="Alt obrázku" class="d-block">

		<p>Postupná animace</p>
	</div>
</div>
@import "scss/mixins/intersection";

.a-animate {

    $class-name: str-slice(#{&}, 2);

    @at-root {

        &,
        [class^="#{$class-name}-"],
        [class*=" #{$class-name}-"] {

            @include intersection(
                (
                    visibility: hidden,
                    animation-duration: 1s,
                    animation-fill-mode: both,
                    animation-timing-function: cubic-bezier(.075, .82, .165, 1),
                    will-change: transform,
                ), ( visibility: visible )
            );

        }

    }

    &-delay {

        @for $i from 1 through 5 {

            &-#{$i} {

                @include intersection(( animation-delay: .1s * $i ));
            }

        }

    }

    &-fade {

        @include intersection((), ( animation-name: fadeIn ));

    }

    &-left {

        @include intersection((), ( animation-name: fadeInLeft ));

    }

    &-right {

        @include intersection((), ( animation-name: fadeInRight ));

    }

    &-side {

        &:nth-of-type(odd) {

            @include intersection((), ( animation-name: fadeInLeft ));

        }

        &:nth-of-type(even) {

            @include intersection((), ( animation-name: fadeInRight ));

        }

    }

    &-top {

        @include intersection((), ( animation-name: fadeInTop ));

    }

    &-bottom {

        @include intersection((), ( animation-name: fadeInBottom ));

    }

}

@keyframes fadeIn {

    0% {

        opacity: 0;
        transform: scale3d(.8, .8, .8);

    }

    100% {

        opacity: 1;

    }

}

@keyframes fadeInLeft {

    0% {

        opacity: 0;
        transform: scale3d(.8, .8, .8) translate3d(-100%, 0, 0);

    }

    100% {

        opacity: 1;

    }

}

@keyframes fadeInRight {

    0% {

        opacity: 0;
        transform: scale3d(.8, .8, .8) translate3d(100%, 0, 0);

    }

    100% {

        opacity: 1;

    }

}

@keyframes fadeInTop {

    0% {

        opacity: 0;
        transform: scale3d(.8, .8, .8) translate3d(0, -100%, 0);

    }

    100% {

        opacity: 1;

    }

}

@keyframes fadeInBottom {

    0% {

        opacity: 0;
        transform: scale3d(.8, .8, .8) translate3d(0, 100%, 0);

    }

    100% {

        opacity: 1;

    }

}
import Intersection from 'js-src/common/intersection';

$(() => {
	new Intersection();
});
<a href="https://www.animato.cz/" title="Studio Animato" rel="noopener" target="_blank">
	<span class="a-animato">Studio Animato</span>
</a>
$a-animato-width: 115px !default;
$a-animato-height: 16px !default;
$a-animato-color: currentColor !default;
$a-animato-color-hover: color('red') !default;
$a-animato-logo: '//shared.animato.cz/imgs_system/svg/logo.svg';

.a-animato {

    display: inline-block;
    font-size: 0;
    height: $a-animato-height;
    position: relative;
    width: $a-animato-width;

    &:before {

        //background-color: $a-animato-color;
        content: '';
        height: 100%;
        left: 0;
        mask-image: url($a-animato-logo);
        mask-repeat: no-repeat;
        mask-size: contain;
        position: absolute;
        top: 0;
        width: 100%;

    }

    :link > & {

        cursor: pointer;

        &:before {

            background: $a-animato-color linear-gradient(-50deg, transparent 0%, transparent 45%, lighten($a-animato-color-hover, 30%) 50%, transparent 55%, transparent 100%) 85% 0 / 300% 100% no-repeat;
            transition: background-color $base-transition;

        }

        &:hover {

            &:before {

                animation: glanc .6s ease .2s forwards;
                background-color: $a-animato-color-hover;

            }

        }

    }

}

@keyframes glanc {

    0% {

        background-position: 85% 0;

    }

    10% {

        background-position: 70% 0;

    }

    40% {

        background-position: 60% 0;

    }

    60% {

        background-position: 50% 0;

    }

    100% {

        background-position: 10% 0;

    }

}
Background
<div class="d-block position-relative" style="height: 150px; width: 150px; z-index: 1;">
	<div class="a-background">
		<img src="https://placeimg.com/150/150/any" width="150" height="150" loading="lazy" alt="Background">
	</div>
</div>
.a-background {

    background-position: center top;
    background-repeat: no-repeat;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: -1;

    img {

        display: block;
        font-family: "object-fit: contain; object-position: 50% 100%";
        height: 100%;
        left: 0;
        object-fit: contain;
        object-position: 50% 100%;
        position: absolute;
        top: 0;
        width: 100%;

    }

    &--cover {

        background-size: cover;

        img {

            font-family: "object-fit: cover; object-position: 50% 50%";
            object-fit: cover;
            object-position: 50% 50%;

        }

    }

    &--contain {

        background-size: contain;

    }

    &--center {

        background-position: center center;

    }

    &--fixed {

        background-attachment: fixed;
        background-position: center center;

    }

}
<a href="#" class="a-button"><?php echo $text; ?></a>
.a-button {

    @include font-family(first, bold);
    @include font-size(normal);
    @include text-underline(none);
    background: color('gray');
    border: 0;
    color: color('black');
    cursor: pointer;
    display: inline-block;
    line-height: line-height(normal);
    max-width: 100%;
    min-width: 0;
    overflow: hidden;
    padding: em(12px);
    text-align: center;
    text-overflow: ellipsis;
    vertical-align: middle;
    white-space: nowrap;
    width: auto;

    &:hover {

        color: color('gray-dark');

    }

    &[disabled="disabled"] {

        background: color('gray-light');
        color: color('gray-dark');
        cursor: default;

        &:hover {

            background: color('gray-light');
            color: color('gray-dark');

        }

    }

    &--block {

        width: 100%;

    }

    @media(min-width: breakpoint-min(md)) {

        min-width: em(200px);

        &--block {

            min-width: 0;

        }

    }

}
Content of success notice
Content of error notice
<input type="checkbox" id="flash-message-status-1" class="a-flash-message__status" checked="checked">

<div class="a-flash-message a-flash-message--1 a-flash-message--success" style="animation: none; display: inline-flex; float: none">
	<span class="a-flash-message__icon"></span>

	Content of success notice

	<label for="flash-message-status-1" class="a-flash-message__close" aria-label="<?php echo $tx['close']; ?>">&#10005;</label>
</div>

<div class="clearfix"></div>

<input type="checkbox" id="flash-message-status-2" class="a-flash-message__status" checked="checked">

<div class="a-flash-message a-flash-message--2 a-flash-message--error" style="animation: none; display: inline-flex; float: none">
	<span class="a-flash-message__icon"></span>

	Content of error notice

	<label for="flash-message-status-2" class="a-flash-message__close" aria-label="<?php echo $tx['close']; ?>">&#10005;</label>
</div>
.a-flash-message {

    $self: &;

    @include flash-message('normal');
    clear: both;
    display: flex;
    float: right;
    margin-top: em(-300px);
    min-width: 200px;
    opacity: 0;
    transition: margin 2s, opacity 2s;

    &__status {

        display: none;

        &:checked {

            + #{$self} {

                animation: autoHideMessage 3s forwards 10s;
                margin-top: em(10px);
                opacity: 1;

                @for $i from 1 through 10 {

                    &--#{$i} {

                        animation-delay: 8s + ($i * 2);

                    }

                }

            }

        }

    }

    &__close {

        align-self: center;
        cursor: pointer;
        display: inline-block;
        margin-left: auto;
        padding: em(0 5px 0 15px);

    }

    &__icon {

        align-self: center;
        display: inline-block;
        height: em(100%);
        margin-right: em(20px);

    }

    &--success {

        background: color('green');
        color: color('white');

        #{$self}__icon {

            border: 0 solid;
            border-bottom-width: em(2px);
            border-right-width: em(2px);
            transform: rotate(40deg);
            transform-origin: right center;
            width: em(75%);

        }

    }

    &--error {

        background: color('red');
        color: color('white');

        #{$self}__icon {

            position: relative;
            width: em(100%);

            &:before,
            &:after {

                border-left: em(2px) solid;
                content: '';
                display: block;
                height: 100%;
                left: 50%;
                margin-left: em(-1px);
                position: absolute;
                top: 0;
                transform: rotate(45deg);
                transform-origin: center center;

            }

            &:after {

                transform: rotate(-45deg);

            }

        }

    }

}

@keyframes autoHideMessage {

    0% {

        opacity: 1;

    }

    100% {

        margin-top: em(-300px);
        opacity: 0;

    }

}

Description under field.

<p class="a-form-description">Description under field.</p>
.a-form-description {

    display: block;
    margin-bottom: space(1);
    margin-top: space(1);

    &:first-child {

        margin-top: 0;

    }

    &:last-child {

        margin-bottom: 0;

    }

}
Please fill this field.
<div style="margin-bottom: 80px; padding-bottom: 1px; position: relative">
	<span class="a-form-error">Please fill this field.</span>
</div>
.a-form-error {

    $caret-width: em(5px);

    @include caret($caret-width, up);
    background: color('gray');
    border-radius: $base-radius;
    left: 0;
    margin-top: $caret-width;
    max-width: 100%;
    padding: em(5px 10px);
    position: absolute;
    top: 100%;
    z-index: 9;

    &:after {

        color: color('gray');
        left: $caret-width;
        margin: 0;
        position: absolute;
        top: -$caret-width;

    }

}
<input type="text" class="a-form-input">
.a-form-input {

    @include font-family(first);
    background: color('white');
    border: 1px solid color('gray-light');
    border-radius: $base-radius;
    color: color('gray-dark');
    display: block;
    line-height: line-height(normal);
    margin-bottom: space(1);
    margin-top: space(1);
    padding: em(13px 20px 10px);
    width: 100%;

    &:first-child {
        margin-top: 0;
    }

    &:last-child {
        margin-bottom: 0;
    }

    &.error {
        border-color: currentColor;
        color: color('orange');

        &::placeholder {
            color: currentColor;
        }
    }

    &:focus {
        border-color: color('black');
        outline: none;
    }

}
<label class="a-form-label">Label</label>
.a-form-label {

    display: block;
    margin-bottom: space(1);
    margin-top: space(1);

    &:first-child {

        margin-top: 0;

    }

    &:last-child {

        margin-bottom: 0;

    }

    &__asterisk {

        color: color('red');

    }

}
<select class="a-form-select">
	<?php if ($prompt) { ?>
		<option><?php echo $prompt; ?></option>
	<?php } ?>
	<?php foreach($options as $option => $label) { ?>
		<option val="<?php echo $option; ?>"<?php echo $option == $value ? ' selected="selected"' : ''; ?>><?php echo $label; ?></option>
	<?php } ?>
</select>
.a-form-select {

    @extend .a-form-input;
    appearance: none;
    background-color: color('white');
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 4'%3E%3Cpath fill='%23#{str-slice(#{color('black')}, 2)}' d='M0 0h8L4 4'/%3E%3C/svg%3E");
    background-position: right em(20px) center;
    background-repeat: no-repeat;
    background-size: em(10px 4px);

    // sass-lint:disable no-vendor-prefixes
    &:-moz-focusring {

        color: transparent;
        text-shadow: 0 0 0 color('gray-dark');

    }

    &::-ms-expand {

        display: none;

    }
    // sass-lint:enable no-vendor-prefixes

}
<textarea class="a-form-textarea" rows="4" cols="50"></textarea>
.a-form-textarea {

    @extend .a-form-input;
    height: 200px;
    resize: none;

}
info a-gap
a-gap-0 height: 0px

a-gap-1 height: 10px

a-gap-2 height: 20px

a-gap-3 height: 40px

a-gap-4 height: 80px
<?php
/**
 *
 * The classes are named using the format .a-gap-{size} for all spacers.
 *
 * Where size is one of:
 *
 *    0 - for classes that eliminate the height or height by setting it to 0
 *    1 - (by default) for classes that set the height to $spacer * .25
 *    2 - (by default) for classes that set the height to $spacer * .5
 *    3 - (by default) for classes that set the height to $spacer
 *    4 - (by default) for classes that set the height to $spacer * 2
 *
 * Common component variables
 * @param array $spacers
 */
?>

<?php foreach ($spacers as $gap => $height) { ?>
	<div class="a-gap-<?php echo $gap; ?> mx-auto bg-orange">a-gap-<?php echo $gap; ?> <span class="float-right">height: <?php echo $height; ?>px</span></div>

	<?php if ($gap + 2 <= count($spacers)) { ?><hr><?php } ?>
<?php } ?>
.a-gap {

    @each $index, $value in $spacers {

        &-#{$index} {

            height: $value;

        }

    }

}

[class*="a-gap"] {

    box-sizing: content-box;

}

12

icon
icon
icon
icon
icon
icon
icon
icon
icon

16

icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon

20

icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon

24

icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
<?php

	//Tracy\Debugger::barDump($params);

	foreach($iconSets as $iconSet => $icons) { ?>

		<div class="row">
			<div class="col-24"><h3><?php echo $iconSet; ?></h3></div>
			<?php foreach($icons as $icon) { ?>
				<div class="col-auto">
					<!-- SVG sprite / inline SVG -->
					<!--<svg class="a-icon <?php echo $icon; ?>">
						<use xlink:href="<?php echo $params['appPath']; ?>dist/svg/icomoon/symbol-defs.svg#<?php echo $icon; ?>"></use>
					</svg>-->

					<img src="<?php echo $params['appPath']; ?>dist/svg/icomoon/SVG/<?php echo $icon; ?>.svg" class="a-icon <?php echo $icon; ?>" alt="icon">

					<!-- icon font -->
					<!-- <i class="a-icon <?php echo $icon; ?>"></i> -->

					<!-- SVG image -->
					<!-- <img src="<?php echo $params['appPath']; ?>dist/svg/icomoon/SVG/<?php echo $icon; ?>.svg" class="a-icon <?php echo $icon; ?>" alt="icon"> -->
				</div>
			<?php } ?>
		</div>

		<div style="height: 40px"></div>

	<?php }

?>
.a-icon {

    @include set-variable(icon-size, 1em);
    display: inline-block;

    @if map-has-key($font-families, 'icons') {

        @include icon();
        font-size: var(--icon-size);

    } @else {

        fill: currentColor;
        height: var(--icon-size);
        stroke: currentColor;
        stroke-width: 0;
        vertical-align: middle;
        width: var(--icon-size);

    }

    @if variable-exists(icon-sizes) {

        @each $icon-set, $icon-size in $icon-sizes {

            $icon-size-class: str-slice($icon-set, 1, (str-index($icon-set, 'x') - 1));

            &[class*="ic#{$icon-size-class}-"] {

                @include set-variable(icon-size, $icon-size);

            }

        }

    }

}

Section Title


Section Title

<div class="a-line"></div>

<hr class="my-3">

<header class="a-line-dotted">
	<h2>Section Title</h2>
</header>

<hr class="my-3">

<header class="a-line text-center">
	<h2>Section Title</h2>
</header>
[class*="a-line"] {

    display: block;
    font-size: 0;
    margin: space(2) 0;

    &:first-child {

        margin-top: 0;

    }

    &:last-child {

        margin-bottom: 0;

    }

    &:after {

        @include calc-size(width, 30px, 80px);
        border-bottom: 2px solid;
        content: '';
        display: inline-block;

    }

    &:not(:empty) {

        &:after {

            margin-top: space(2);

        }

    }

}

.a-line {

    &-dotted {

        &:after {

            @include font-size(normal);
            border: 0;
            content: '······';
            line-height: .125;
            width: auto;

        }

    }

}
max-width-sm

max-width-md

max-width-lg
<?php
/**
 *
 * The classes are named using the format .max-width-{breakpoint} for all breakpoints.
 *
 * Where breakpoint is one of:
 *
 *    sm
 *    md
 *    lg
 *
 * Common component variables
 * @param array $breakpoint
 */
?>

<?php foreach ($breakpoint as $i => $break) { ?>
	<div class="a-max-width-<?php echo $break; ?> mx-auto bg-<?php switch($i) { case 0: echo 'green'; break; case 1: echo 'orange'; break; default: echo 'red'; break; } ?>">max-width-<?php echo $break; ?></div>

	<?php if ($i + 2 <= count($breakpoint)) { ?><hr><?php } ?>
<?php } ?>
@if variable-exists(container-max-widths) and variable-exists(grid-gutter-width) {

    .a-max-width {

        padding-right: ($grid-gutter-width / 2);
        padding-left: ($grid-gutter-width / 2);

        @each $breakpoint, $container-max-width in $container-max-widths {

            &-#{$breakpoint} {

                max-width: $container-max-width;

            }

        }

    }

}

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Curabitur bibendum justo non orci. Lorem ipsum dolor sit amet, consectetuer adipiscing elit.

<p class="a-perex">Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Curabitur bibendum justo non orci. Lorem ipsum dolor sit amet, consectetuer adipiscing elit.</p>
.a-perex {

    @include font-size(medium);
    line-height: line-height(normal);
    margin-left: auto;
    margin-right: auto;
    max-width: map-get($container-max-widths, 'md');
    text-align: center;

}

Notice Title

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Pellentesque arcu. Nullam lectus justo, vulputate eget mollis sed, tempor sed magna. Etiam ligula pede, sagittis quis, interdum ultricies.

<input type="checkbox" id="theme-notice-status-example" class="a-theme-notice__status">

<div class="a-theme-notice">
	<p class="h3">Notice Title</p>

	<p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Pellentesque arcu. Nullam lectus justo, vulputate eget mollis sed, tempor sed magna. Etiam ligula pede, sagittis quis, interdum ultricies.</p>

	<label for="theme-notice-status-example" class="a-theme-notice__close" aria-label="<?php echo $tx['close']; ?>">&#10005;</label>
</div>

<div class="a-theme-notice__background"></div>

<?php /* Below control is just for this demonstration */ ?>

<label for="theme-notice-status-example">Show notice</label>
.a-theme-notice {
    $self: &;

    background: color('white');
    box-shadow: 0 0 em(4px) color('shadow');
    left: 50%;
    max-height: 100%;
    max-width: em(520px);
    opacity: 0;
    overflow: auto;
    padding: em(20px);
    position: fixed;
    text-align: left;
    top: 50%;
    transform: translate(-50%, -150%);
    transition: transform 1s, opacity 1s;
    width: 95%;
    z-index: 999;

    &__background {
        background: color('black');
        bottom: 0;
        height: 100%;
        left: 0;
        opacity: .7;
        position: fixed;
        transition: bottom 2s;
        width: 100%;
        z-index: 998;
    }

    &__status {
        display: none;

        &:checked {

            + #{$self} {
                opacity: 1;
                transform: translate(-50%, -50%);
            }
        }

        &:not(:checked) {

            ~ #{$self}__background {
                bottom: 100%;
            }
        }
    }

    &__close {
        background: color('black');
        color: color('white');
        cursor: pointer;
        display: block;
        line-height: em(20px);
        position: absolute;
        right: 0;
        text-align: center;
        top: 0;
        width: em(20px);
    }
}