html {
    scroll-behavior: smooth;
}

.anchor-target {
    scroll-margin-top: 105px;
}

body {
    font-family: 'Nunito Sans', sans-serif;
    color: #000;
    padding-top: 100px;
    font-size: 1.1rem;
}

h1,
h2,
h3,
h4,
h5 {
    font-family: 'Playfair Display', serif;
    color: #DB422D;
}

main a {
    color: #D7402C;
    text-decoration: underline;
}

main a:hover {
    color: #666;
    text-decoration: none;
}

/* navbar */
.navbar {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 1030;
    background: url('../images/yub-nav-bottom.png') center bottom repeat-x;
}

.navbar .container {
    margin-bottom: 15px;
}

.navbar-light .navbar-nav .nav-link {
    color: rgba(0,0,0,.9);
}

.navbar-light .navbar-nav .nav-link.highlight {
    color: rgba(219,66,45,.9);
}

.navbar-light .navbar-nav .nav-link.highlight:hover {
    color: rgba(219,66,45,.7);
}

/* headers */
.banner-text {
    margin-top: 300px;
    margin-bottom: -90px;
}

.big-h {
    font-size: 64px;
    line-height: 1;
}

.big-h span {
    font-family: 'Nunito Sans', sans-serif;
    color: #97C1D5;
    font-size: 42px;
    display: block;
}

/* banners */
.page-banner {
    background-position: center center;
    background-size: cover;
    text-align: center;
    background-color: #F9B6B3;
    padding: 6rem;
}

.banner-01 {
    background-image: url('../images/bakery-case-top.jpg');
    margin-bottom: 1rem;
}

.banner-02 {
    background-image: url('../images/bakery-case-bottom.jpg');
    margin-bottom: 1rem;
}

.banner-03 {
    padding: 0;
    background-color: #fff;
    background-image: url('../images/wave.svg');
}

.block-highlight {
    background-color: #FDE9EE;
    padding: 20px;
}

hr.cupcake {
    clear: both;
    margin: 40px 0;
    padding: 0;
    border: none;
    background: #A6D4E9;
    height: 2px;
    text-align: center;
    position: relative;
}

hr.cupcake:after {
    content: " ";
    display: inline-block;
    position: relative;
    top: -22px;
    background: url('../images/pie-icon.png') no-repeat scroll center;
    padding: 23px;
    background-size: 45px 45px;
    height: 45px;
}

/* footer */
.footer {
    background: #FEE69F url('../images/footer-bg.jpg');
    color: #000;
}

.footer a {
    color: #000;
}

.footer-top {
    background: url('../images/yub-footer-top.png') center top repeat-x;
    height: 133px;
}

@media (min-width: 992px) {
    .banner-text {
        margin-top: 400px;
        margin-bottom: -120px;
    }
}

@media (min-width: 1200px) {
    .banner-text {
        margin-top: 500px;
        margin-bottom: -120px;
    }
}

/* disable smooth scrolling */
@media screen and (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }
}
