/* ========================================================================== */
/* ===== WRAPPERS =========================================================== */
/* ========================================================================== */
.wp-wrapper { width:100%; }

.f-wrapper { padding-bottom:50px; }
@media screen and (min-width: 980px) {
  .f-wrapper { margin:0; padding-bottom:50px; }
}


/* ========================================================================== */
/* ===== UTILITIES ========================================================== */
/* ========================================================================== */
@media screen and (max-width: 619px) {
  .hideon-mobile { display:none !important; }
}
@media screen and (min-width: 620px) and (max-width: 979px) {
  .hideon-tablet { display:none !important; }
}
@media screen and (min-width: 980px) {
  .hideon-desktop { display:none !important; }
}


/* ========================================================================== */
/* ===== STYLE FOR ALL MODULES ============================================== */
/* ========================================================================== */
.f-box { clear:both; margin:20px 0 0; }
.f-box-content { text-align:center; }

@media screen and (min-width: 980px) {
  .f-box { width:980px; margin:25px auto 0; }
}


/* ========================================================================== */
/* ===== MODULE - CAROUSEL BLURB ============================================ */
/* ========================================================================== */
.f-caroblurb .f-box-content { display:flex; flex-flow:column; justify-content:space-between; align-items:center; padding:0 4%; }
.f-caroblurb .image { width:100%; }
.f-caroblurb .text { text-align:left; }
.f-caroblurb .text p { margin:20px 0; font-size:14px; line-height:22px; }
.f-caroblurb .text strong { font-family:FBD; }
.f-caroblurb .swiper-container { padding-bottom: 25px; }
.f-caroblurb .carousel { width:100%; }
.f-caroblurb .carousel p { font-size:13px; line-height:24px; color:initial; }
.f-caroblurb .carousel a { display:block; color:#333; }
.f-caroblurb .carousel img { max-width:80%; margin-bottom:10px; }
.f-caroblurb .carousel .brand { display:block; letter-spacing:0.1em; text-transform:uppercase; }
.f-caroblurb .carousel .name { display:block; letter-spacing:initial; text-transform:none; }
.f-caroblurb .carousel .price { display:block; }

.f-caroblurb.hide-caro-pagination .swiper-pagination { display:none; }

@media screen and (min-width: 620px) {
  .f-caroblurb .f-box-content { flex-flow:row; padding:0; }
  .f-caroblurb .text { padding:0 30px; }

  .f-caroblurb.d-reverse .f-box-content { flex-flow:row-reverse; }
}
@media screen and (min-width: 980px) {
  .f-caroblurb .image { width:310px; }
  .f-caroblurb .text { box-sizing:border-box; width:360px; font-size:14px; line-height:24px; }
  .f-caroblurb .text p { margin:20px 0; }
  .f-caroblurb .text p:first-child { margin-top:0; }
  .f-caroblurb .text p:last-child { margin-bottom:0; }
  .f-caroblurb .carousel { box-sizing:border-box; width:310px; }
  .f-caroblurb .carousel img { max-height:300px; margin-bottom:15px; }

  .is-no-flexbox .f-caroblurb .image,
  .is-no-flexbox .f-caroblurb .text,
  .is-no-flexbox .f-caroblurb .carousel { float:left; }
}


/* ========================================================================== */
/* ===== MODULE - CAROUSEL ================================================== */
/* ========================================================================== */
.f-carousel .f-box-content { background:#fff; }
.f-carousel img { width:100%; }
.f-carousel .heading { text-align:center; }
.f-carousel .text { padding:15px 4% 30px; }
.f-carousel .text h4 { font-family:FBD; font-size:16px; letter-spacing:0.01em; }
.f-carousel .text .upper { letter-spacing:0.1em; text-transform:uppercase; }
.f-carousel .text a { text-decoration:underline; }

@media screen and (min-width: 620px) {
  .f-carousel .f-box-content { background:none; }
  .f-carousel { text-align:center; }
  .f-carousel .inner { position:relative; box-sizing:border-box; margin:0 auto; }
  .f-carousel .swiper-slide { box-sizing:border-box; padding:0 50px; }
  .f-carousel .text { position:absolute; top:0; right:50px; bottom:0; display:flex; flex-flow:column; justify-content:center; align-items:center; box-sizing:border-box; width:calc(50% - 50px); padding:0 30px; font-size:14px; line-height:28px; text-align:center; background:none; }
  .f-carousel .reverse .text { right:initial; left:50px; }
  .f-carousel .text h4,
  .f-carousel .text p { width:100%; }
}
@media screen and (min-width: 980px) {
  .f-carousel .inner { width:980px; }
}


/* ========================================================================== */
/* ===== MODULE - COLUMN LINKS ============================================== */
/* ========================================================================== */
.f-column-links a { float:left; box-sizing:border-box; width:50%; padding:5px 10px; color:#333; }
.f-column-links a:hover { color:#000; }
.f-column-links.uppercase a { letter-spacing:0.1em; text-transform:uppercase; }

@media screen and (min-width: 980px) {
  .f-column-links a { width:25%; }
}


/* ========================================================================== */
/* ===== MODULE - COPY BLOCK ================================================ */
/* ========================================================================== */
.f-copy-block .f-box-content { padding:25px 4%; }
.f-copy-block h2 { margin-bottom:10px; font-family:FBD; font-size:24px; line-height:30px; letter-spacing:0.1em; text-transform:uppercase; color:#fff; }
.f-copy-block hr { width:60%; height:2px; margin:20px auto; padding:0; border:0; background:#fff; }
.f-copy-block a { display:block; margin:0; margin-bottom:10px; font-family:FBD; letter-spacing:0.1em; text-transform:uppercase; color:#000; }
.f-copy-block .button { display:block; margin-top:20px; }
.f-copy-block .button a { display:inline-block; display:inline-block; height:40px; margin:0; padding:0 40px; font-family:FB; line-height:40px; background:#fff; }
.f-copy-block .button a:hover { color:#fff; background:#000; }

@media screen and (min-width: 620px) {
  .f-copy-block .f-box-content { padding:30px; }
  .f-copy-block .button { display:inline-block; margin:20px 10px 0; }
}
@media screen and (min-width: 980px) {
  .f-copy-block h2 { margin-bottom:20px; font-size:30px; }
}


/* ========================================================================== */
/* ===== MODULE - CTA ======================================================= */
/* ========================================================================== */
.f-cta { text-align:center; }
.f-cta a { display:inline-block; height:40px; padding:0 40px; line-height:40px; letter-spacing:0.1em; text-transform:uppercase; color:#fff; background:#333; }

@media screen and (min-width: 980px) {
  .f-cta a { background:#666; }
}


/* ========================================================================== */
/* ===== MODULE - FASHION SLIDE  ============================================ */
/* ========================================================================== */
.f-fashion-slide { width:100%; margin:0; }
.f-fashion-slide .f-box-content { position:fixed; top:110px; right:0; bottom:0; left:0; height:calc(100vh - 110px); margin:0; }
.f-fashion-slide .arrows { position:absolute; bottom:20px; left:50%; width:100px; margin-left:-50px; }
.f-fashion-slide .is-arrows-hidden .arrows { display:none; }
.f-fashion-slide .arrows:before { display:block; font-family:FM; font-size:14px; line-height:14px; content:"swipe"; letter-spacing:0.1em; text-transform:uppercase; color:#fff; }
.f-fashion-slide .arrows.is-text-hidden:before { display:none; }
.f-fashion-slide .arrows .arrow { display:block; width:50px; height:40px; font-family:ico; font-size:20px; line-height:40px; color:#fff; }
.f-fashion-slide .arrows .arrow.up { float:left; }
.f-fashion-slide .arrows .arrow.up:before { content:"\e027"; }
.f-fashion-slide .arrows .arrow.down { float:right; }
.f-fashion-slide .arrows .arrow.down:before { content:"\e02a"; }
.f-fashion-slide .arrows .scroll { display:none; width:50px; height:25px; line-height:25px; }

.f-fashion-slide .slide { position:absolute; width:100%; height:100%; transition:all 350ms ease-out; }
.f-fashion-slide .slide.complete { transform:translate(0, -100%); }

.f-fashion-slide .shoot-button { position:absolute; z-index:2; bottom:20px; left:20px; min-width:50px; height:50px; line-height:50px; transition:all 350ms ease-out; opacity:0; color:#fff; }
.f-fashion-slide .active .shoot-button { opacity:1; }
.f-fashion-slide .is-lightbox-open .shoot-button { z-index:1; }
.f-fashion-slide .shoot-button span { margin-left:10px; letter-spacing:0.1em; text-transform:uppercase; }
.f-fashion-slide .shoot-button:before { font-family:ico; font-size:50px; content:"\e71c"; vertical-align:bottom; }
.f-fashion-slide .shoot-button:hover { color:inherit; }
.f-fashion-slide .shoot-button:hover:before { content:"\e71d"; }

.f-fashion-slide .slide-content { position:relative; width:100%; height:100%; }
.f-fashion-slide .foreground { position:absolute; z-index:1; display:flex; flex-flow:column; justify-content:center; align-items:center; width:100%; height:100%; }

.f-fashion-slide .lightbox { display:flex; visibility:hidden; flex-flow:column; justify-content:center; align-items:center; width:100%; height:100%; background:rgba(0,0,0,0.7); }
.f-fashion-slide .is-lightbox-open .lightbox { visibility:visible; }

.f-fashion-slide .heading-1 { font-family:FBD; font-size:36px; line-height:40px; letter-spacing:0.1em; text-transform:uppercase; color:#fff; }
.f-fashion-slide .heading-2 { font-size:18px; line-height:40px; color:#fff; }

.f-fashion-slide .close { align-self:flex-end; width:40px; height:40px; margin-right:20px; line-height:40px; text-align:center; }
.f-fashion-slide .close:after { font-family:ico; font-size:20px; content:"\e01a"; color:#fff; }
.f-fashion-slide .box { width:calc(100% - 40px); height:80%; max-height:550px; margin:0 auto; background:#fff; }
.f-fashion-slide .products-wrap { height:calc(100% - 140px); padding:20px 20px 0px; }
.f-fashion-slide .item { box-sizing:border-box; width:100%; text-align:center; color:#000; }
.f-fashion-slide .item img { max-width:100%; max-height:calc(100% - 50px); width:auto; height: auto; }
.f-fashion-slide .item .product-brand { letter-spacing:0.1em; text-transform:uppercase; }

.f-fashion-slide .swiper-disabled .swiper-pagination ,
.f-fashion-slide .swiper-disabled .swiper-button-next ,
.f-fashion-slide .swiper-disabled .swiper-button-prev { display:none; }
.f-fashion-slide .swiper-disabled .products { display:flex; justify-content:center; }

.f-fashion-slide .ctas-wrap { padding:20px 0 0; }
.f-fashion-slide .cta { display:inline-block; height:40px; margin:0 10px 20px; padding:0 40px; line-height:40px; letter-spacing:0.1em; text-transform:uppercase; }
.f-fashion-slide .cta-primary { color:#fff; border:1px solid transparent; background:#999; }
.f-fashion-slide .cta-primary:hover { background:#333; }
.f-fashion-slide .cta-secondary { color:#999; border:1px solid #999; }
.f-fashion-slide .cta-secondary:hover { color:#333; border:1px solid #333; }

.f-fashion-slide .background { position:absolute; width:100%; height:100%; background-repeat:no-repeat; background-position:center; background-size:cover; }

@media screen and (min-width: 980px) {
  .f-fashion-slide .f-box-content { height:calc(100vh - 140px); top:140px; }
  .f-fashion-slide .arrows:before { content:"scroll"; }
  .f-fashion-slide .close { align-self:initial; margin-right:0; margin-left:900px; }
  .f-fashion-slide .box { width:940px; }
  .f-fashion-slide .products-wrap { height:calc(100% - 80px); }
  .f-fashion-slide .item { width:25%; }
}


/* ========================================================================== */
/* ===== MODULE - FENCED CAROUSEL BLURB ===================================== */
/* ========================================================================== */
.f-fenced-caroblurb .f-box-content { padding-top:52px; }
.f-fenced-caroblurb .fence { padding-bottom:20px; border:3px solid #f1c6b5; }
.f-fenced-caroblurb .heading { display:flex; flex-direction:column; align-items:center; margin:-55px 0 20px; line-height:24px; letter-spacing:0.1em; text-transform:uppercase; }
.f-fenced-caroblurb .heading h2 { width:80%; min-height:48px; padding:5px; font-family:FBD; color:#fff; background:#f1c6b5; }
.f-fenced-caroblurb .image { margin-bottom:20px; }
.f-fenced-caroblurb .text { width:300px; margin:0 auto 20px; text-align:left; }
.f-fenced-caroblurb .text p { margin-bottom:20px; }
.f-fenced-caroblurb .text p:last-child { margin-bottom:0; }
.f-fenced-caroblurb .swiper-container { margin:0 auto; padding-bottom:25px; }
.f-fenced-caroblurb .swiper-wrapper span { display:block; }
.f-fenced-caroblurb .swiper-pagination { bottom:0; }

@media screen and (min-width: 620px) {
  .f-fenced-caroblurb .f-box-content { padding-top:40px; }
  .f-fenced-caroblurb .fence { padding-right:10px; padding-left:10px; }
  .f-fenced-caroblurb .heading { margin-top:-43px; }
  .f-fenced-caroblurb .heading h2 { min-height:initial; }
  .f-fenced-caroblurb .image { float:left; margin-right:20px; }
  .f-fenced-caroblurb .text { width:initial; margin:0; }
  .f-fenced-caroblurb .carousel { clear:both; }
}
@media screen and (min-width: 980px) {
  .f-fenced-caroblurb { width:100%; }
  .f-fenced-caroblurb .f-box-content { position:relative; }
  .f-fenced-caroblurb .fence { box-sizing:border-box; width:calc(50% + 335px); padding:0 0 50px; border-left:0; }
  .f-fenced-caroblurb .heading { float:right; width:664px; }
  .f-fenced-caroblurb .heading h2 { width:auto; padding-right:20px; padding-left:20px; }
  .f-fenced-caroblurb .image { position:absolute; top:102px; left:calc(50% + 185px); margin:0; }
  .f-fenced-caroblurb .text { display:flex; float:right; clear:right; flex-direction:column; justify-content:center; width:315px; min-height:423px; margin-left:20px; padding-right:167px; }
  .f-fenced-caroblurb .carousel { float:right; clear:none; width:320px; max-height:423px; }
  .f-fenced-caroblurb .swiper-slide img { width:235px; }

  .f-fenced-caroblurb.reverse .fence { float:right; border-right:0; border-left:3px solid #f1c6b5; }
  .f-fenced-caroblurb.reverse .heading { float:left; }
  .f-fenced-caroblurb.reverse .image { left:calc(50% - 491px); }
  .f-fenced-caroblurb.reverse .text { float:left; clear:left; padding-right:0; padding-left:167px; }
  .f-fenced-caroblurb.reverse .carousel { float:left; }
}


/* ========================================================================== */
/* ===== MODULE - FENCED HEADLINE =========================================== */
/* ========================================================================== */
.f-fenced-headline .f-box-content { position:relative; padding-top:50px; }
.f-fenced-headline img { position:absolute; top:0; left:calc(50% - 150px); width:300px; height:370px; }
.f-fenced-headline .fence { border:3px solid #f1c6b5; }
.f-fenced-headline .info { display:flex; flex-direction:column; box-sizing:border-box; padding:330px 4% 20px; }
.f-fenced-headline h1 { margin-bottom:5px; padding:0 10px; font-size:26px; line-height:30px; letter-spacing:0.1em; text-transform:uppercase; }
.f-fenced-headline h2 { align-self:center; margin-bottom:15px; padding:0 10px; font-family:FBD; font-size:25px; line-height:33px; letter-spacing:0.1em; text-transform:uppercase; color:#fff; background:#f1c6b5; }
.f-fenced-headline p { margin-bottom:15px; }
.f-fenced-headline a { text-decoration:underline; color:#000; }

@media screen and (min-width: 620px) {
  .f-fenced-headline { width:100%; }
  .f-fenced-headline img { left:50%; }
  .f-fenced-headline .fence { box-sizing:border-box; width:calc(50% + 200px); padding-right:195px; border-left:0; }
  .f-fenced-headline .info { float:right; justify-content:center; width:310px; min-height:380px; padding:30px; }
  .f-fenced-headline h1 { font-size:32px; line-height:1; }
  .f-fenced-headline h2 { margin-bottom:30px; padding:5px 15px; font-size:30px; line-height:1; }
  .f-fenced-headline p { margin-bottom:15px; font-size:16px; }
  .f-fenced-headline a { align-self:center; font-size:16px; }
}
@media screen and (min-width: 980px) {
  .f-fenced-headline img { left:calc(50% + 90px); width:400px; height:480px; }
  .f-fenced-headline .fence { width:calc(50% + 300px); padding-right:205px; }
  .f-fenced-headline .info { width:580px; height:470px; padding:50px; }
  .f-fenced-headline h1 { font-size:40px; }
  .f-fenced-headline h2 { margin-bottom:50px; font-size:40px; }
}


/* ========================================================================== */
/* ===== MODULE - IMAGE WITH TEXT =========================================== */
/* ========================================================================== */
.f-image-text .f-box-content { display:flex; flex-direction:column; text-align:left; }
.f-image-text img { display:block; }
.f-image-text .copy { margin:0 4%; }
.f-image-text .copy h3 { margin:0; font-size:14px; line-height:28px; }
.f-image-text .copy h3.upper { letter-spacing:0.1em; text-transform:uppercase; }
.f-image-text .copy h3.bold { font-family:FBD; }
.f-image-text .copy p { margin:0; margin-bottom:28px; font-size:14px; line-height:28px; }
.f-image-text .copy p:last-child { margin-bottom:0; }
.f-image-text .copy a { text-decoration:underline; }

.f-image-text.m-img-v-top .f-box-content,
.f-image-text.m-img-v-top .f-box-content { flex-direction:column; }
.f-image-text.m-img-v-bottom .f-box-content { flex-direction:column-reverse; }

@media screen and (min-width: 620px) {
  .f-image-text .f-box-content,
  /* default is image on the left */
  .f-image-text.d-img-h-left .f-box-content { flex-direction:row; }
  .f-image-text.d-img-h-right .f-box-content { flex-direction:row-reverse; }

  .f-image-text .copy { margin:0; padding-left:50px; }
  .f-image-text.d-img-h-right .copy { padding-right:50px; padding-left:0; }

  .f-image-text.d-img-v-top .image { align-self:flex-start; }
  .f-image-text.d-img-v-center .image { align-self:center; }
  .f-image-text.d-img-v-bottom .image { align-self:flex-end; }

  .f-image-text.d-txt-v-top .copy { align-self:flex-start; }
  .f-image-text.d-txt-v-center .copy { align-self:center; }
  .f-image-text.d-txt-v-bottom .copy { align-self:flex-end; }

  .is-no-flexbox .f-image-text.d-img-h-left .image { float:left; margin-right:50px; }
  .is-no-flexbox .f-image-text.d-img-h-right .image { float:right; margin-left:50px; }
}


/* ========================================================================== */
/* ===== MODULE - HORIZONTAL LINE =========================================== */
/* ========================================================================== */
.f-line hr { display:none; border:none; border-bottom:1px solid #000; }
@media screen and (min-width: 980px) {
  .f-line hr { display:block; width:980px; }
}


/* ========================================================================== */
/* ===== MODULE - SECTION TITLE ============================================= */
/* ========================================================================== */
.f-section-title .f-box-content { position:relative; }
.f-section-title .background { width:100%; }
.f-section-title .foreground { position:absolute; top:0; left:0; display:flex; flex-direction:column; justify-content:center; width:100%; height:100%; font-size:14px; }
.f-section-title h1,
.f-section-title h2,
.f-section-title p { margin:0; line-height:20px; }
.f-section-title h1,
.f-section-title h2 { font-size:16px; }
.f-section-title p { font-size:14px; }
.f-section-title span { display:block; }
.f-section-title .bold { margin:0; font-family:FBD; font-size:15px; }
.f-section-title .upper { letter-spacing:0.1em; text-transform:uppercase; }
.f-section-title .bold.upper { letter-spacing:0.075em; }

.is-no-flexbox .f-section-title .foreground { display:table; }
.is-no-flexbox .f-section-title h1,
.is-no-flexbox .f-section-title h2,
.is-no-flexbox .f-section-title p { display:table-cell; vertical-align:middle; }

@media screen and (min-width: 620px) {
  .f-section-title .background { width:auto; }
}
@media screen and (min-width: 980px) {
  .f-section-title { padding-top:50px; }
}


/* ========================================================================== */
/* ===== MODULE - SLIDE ===================================================== */
/* ========================================================================== */
.f-slide .f-box-content { position:relative; }
.f-slide .image { width:100%; }
.f-slide .text { position:absolute; top:0; left:0; display:flex; flex-flow:column; justify-content:center; align-items:center; width:100%; height:100%; color:#fff; }
.f-slide span { display:block; font-family:FL; font-size:16px; letter-spacing:0.05em; margin-bottom:10px; }
.f-slide .big { font-size:32px; }
.f-slide .bold { font-family:FBD; }
.f-slide .upper { letter-spacing:0.1em; text-transform:uppercase; }
@media screen and (min-width: 620px) {
}
@media screen and (min-width: 980px) {
}


/* ========================================================================== */
/* ===== MODULE - SPLASH SCREEN ============================================= */
/* ========================================================================== */
.f-splash-screen { position:relative; box-sizing:border-box; width:100%; height:calc(100vh - 110px); margin:0; padding:0; color:#fff; border:5px solid #fff; }
.f-splash-screen .plane { position:absolute; right:0; left:0; width:100%; height:100%; }
.f-splash-screen .background { background-position:center; background-size:cover; }
.f-splash-screen .foreground { z-index:1; display:-webkit-flex; display:-moz-flex; display:-ms-flexbox; display:flex; flex-direction:column; justify-content:center; box-sizing:border-box; padding:30px 20px 80px; }
.f-splash-screen h1 { margin-bottom:30px; font-family:FBD; font-size:31px; line-height:36px; letter-spacing:0.1em; text-transform:uppercase; }
.f-splash-screen p { font-size:16px; line-height:26px; }
.f-splash-screen .scroll-down { position:absolute; bottom:20px; left:50%; display:block; width:150px; margin-left:-75px; padding:10px; cursor:pointer; }
.f-splash-screen .scroll-down:before { display:block; margin-bottom:10px; font-family:FM; font-size:15px; line-height:13px; content:"Scroll down"; letter-spacing:0.1em; text-transform:uppercase; }
.f-splash-screen .scroll-down:after { display:block; font-family:ico; font-size:12px; line-height:12px; content:"\e033"; }

/* option: text-align-left */
.f-splash-screen.text-align-left h1 ,
.f-splash-screen.text-align-left p { text-align:left; }

/* option: text-align-right */
.f-splash-screen.text-align-right h1 ,
.f-splash-screen.text-align-right p { text-align:right; }

/* legacy: no-flexbox */
.is-no-flexbox .f-splash-screen .f-box-content { margin:0 auto; padding-top:25vh; }

@media screen and (min-width: 980px) {
  .f-splash-screen { height:calc(100vh - 140px); }
  .f-splash-screen .foreground { padding-right:100px; padding-left:100px; }
}


/* ========================================================================== */
/* ===== MODULE - STICKY NAV ================================================ */
/* ========================================================================== */
.f-sticky-nav { display:none; }
.f-sticky-nav .f-box-content { width:980px; margin:0 auto; }
.f-sticky-nav ul { display:flex; justify-content:space-between; align-items:center; }
.f-sticky-nav a { position:relative; display:block; flex-direction:row; justify-content:center; font-family:FBD; font-size:13px; transition:all 0.25s; text-align:center; letter-spacing:0.05em; color:#f5e3dc; }
.f-sticky-nav a:hover { color:#000; }
.f-sticky-nav img { display:block; transition:opacity 0.25s; opacity:1; }
.f-sticky-nav img.hover { position:absolute; top:0; left:0; opacity:0; }
.f-sticky-nav a:hover img.normal { opacity:0; }
.f-sticky-nav a:hover img.hover { opacity:1; }
.f-sticky-nav span { position:absolute; top:0; left:0; display:flex; justify-content:center; align-items:center; width:100%; height:100%; }

@media screen and (min-width: 980px) {
  .f-sticky-nav { display:block; width:100%; }
  .f-sticky-nav.is-sticky .f-box-content { position:fixed; z-index:10; top:140px; padding:0; border-top:1px solid #fff; background:#000; widtH:100%; }
  .is-header-collapsed .f-sticky-nav.is-sticky .f-box-content { top:65px; }
  .f-sticky-nav.is-sticky .f-box-content ul { width:980px; margin:0 auto; }

  .is-no-flexbox .f-sticky-nav li { float:left; }
  .is-no-flexbox .f-sticky-nav span { line-height:70px; }
}


/* ========================================================================== */
/* ===== MODULE - TEXT ====================================================== */
/* ========================================================================== */
.f-text .f-box-content { padding:0 20px; }
.f-text.bold p { font-family:FBD; }
.f-text.uppercase p { letter-spacing:0.1em; text-transform:uppercase; }


/* ========================================================================== */
/* ===== MODULE - QUOTE ===================================================== */
/* ========================================================================== */
.f-quote { padding-right:4%; padding-left:4%; }
.f-quote p { font-family:FBD; font-size:14px; line-height:24px; }


/* ========================================================================== */
/* ===== MODULE - VIDEO ===================================================== */
/* ========================================================================== */
.f-video .video-window { position:relative; height:0; }
.f-video .video-window.ratio-16-9 { padding-bottom:56.25%; }
.f-video .video-trigger,
.f-video .video-frame { position:absolute; top:0; left:0; width:100%; height:100%; }
.f-video .video-trigger img { width:100%; height:100%; }
.f-video .video-frame-hidden { display:none; }

@media screen and (max-width: 979px) {
  .f-video { width:100%; }
}
@media screen and (min-width: 980px) {
  .f-video { width:980px; }
}

/* ========================================================================== */
/* ===== MODULE - CODE BOX ================================================== */
/* ========================================================================== */
.f-codebox .f-box-content {background: #fff; border:1px solid #000; text-align: left;}
.f-codebox h2 {margin-bottom: 10px; padding: 10px 10px 0; font-family:FBD; }
.f-codebox pre {padding: 10px; background: #ebebeb; font-family: monospace;}


/* ========================================================================== */
/* ===== MODULE - CATEGORY CAROUSEL ========================================= */
/* ========================================================================== */
.f-catcarousel {}
.f-catcarousel .swiper-container { padding-bottom:40px; background: #fff; padding: 0 20px 40px; }
.f-catcarousel .swiper-slide { padding:20px; box-sizing: border-box; }
.f-catcarousel img { width:100%; }
