/*
VARIABLES

$base-font: Main font family.
$base-font-size: Main font size
$fontsize-f3-cta: CTA (button font size)
$fontsize-f3-mid: End frame (non button) base font size
$fontsize-f3-mid: End frame (non button) base font size
$logo-width: Width of the logo.
$content-pad: The base padding for all content.
$full-width: The size of the layout coordinate plane.  Derived from the actual ad width.
$full-height: The size of the layout coordinate plane.  Derived from the actual ad height.
$base-color: Primary foreground color.

$endframe-layout: Flex direction of end frame.
 * 'row' : Generally used for horizontal ads.
 * 'column': Standard system to slot content into a column.
 $logo-pos: Logo position.
 * 'centered': vertically centered
 * '*': top ($content-pad), left ($content-pad)

 */
/*
MIXINS
 */
/*
AD CONTAINER STUFF
 */
#background_exit_ad {
  background: url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7") 0 0 repeat;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  cursor: pointer;
  z-index: 400;
  border: none; }

#reloader {
  position: absolute;
  top: 6px;
  left: 6px;
  width: 15px;
  height: 15px;
  z-index: 500;
  opacity: 0; }
  #reloader .restarter {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 15px;
    height: 15px; }

/*
General helpers
 */
sup {
  vertical-align: text-top;
  font-size: 0.5em;
  line-height: 1em; }

.textbox-price {
  display: inline-block;
  position: relative; }

*,
*:after,
*:before {
  box-sizing: border-box; }

.showing {
  opacity: 1 !important; }

.ad-container {
  margin: 0px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  line-height: 1.1em; }
  .ad-container,
  .ad-container button,
  .ad-container td {
    font-family: wf_gdsage-bold;
    font-weight: 400;
    font-size: 19px;
    color: #ffffff; }

.logo {
  transform: scale(1.2);
  position: absolute !important;
  left: 16px;
  top: 16px;
  right: auto;
  bottom: auto;
  width: 84px;
  height: 18.48px;
  opacity: 1;
  z-index: 100; }
  .logo #gd_logo {
    fill: #ffffff;
    position: absolute;
    top: 0px;
    width: 100%;
    height: 100%; }
    .logo #gd_logo path {
      opacity: 0; }

/* Attempt at putting a border for white background using a flag   */
/*
  FRAME SETUP
   */
.ad-container {
  width: 300px;
  height: 250px;
  overflow: hidden;
  position: absolute;
  top: 0px;
  left: 0px;
  opacity: 0; }

.ad-content {
  opacity: 0; }
  .ad-content.showing {
    opacity: 1; }

/*
SETUP
 */
.frame-container {
  top: 0px;
  left: 0px;
  width: 300px;
  height: 250px; }
  .frame-container .frame {
    top: 0px;
    left: 0px;
    width: 300px;
    height: 250px;
    overflow: hidden;
    opacity: 1; }
    .frame-container .frame .textholder {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
          align-items: center; }
    .frame-container .frame .v5frame {
      display: block;
      position: absolute;
      top: 0px;
      left: 0px;
      width: 300px;
      height: 250px;
      opacity: 0;
      background: #111111;
      color: #ffffff; }
      .frame-container .frame .v5frame.reversed {
        background: #111111;
        color: #ffffff; }
    .frame-container .frame .imgframe {
      position: absolute;
      display: block;
      position: absolute;
      top: 0px;
      left: 0px;
      width: 300px;
      height: 250px; }
      .frame-container .frame .imgframe.svg {
        padding: 8px;
        display: -ms-flexbox;
        display: flex; }
        .frame-container .frame .imgframe.svg svg {
          width: 100%;
          max-height: 100%; }
  .frame-container.background {
    top: 0px;
    left: 0px;
    width: 300px;
    height: 250px; }
  .frame-container.foreground {
    top: 0px;
    left: 0px;
    width: 300px;
    height: 250px; }
    .frame-container.foreground .textholder {
      width: 268px;
      line-height: 1.1em; }
      .frame-container.foreground .textholder .text span {
        position: relative;
        white-space: nowrap; }
        .frame-container.foreground .textholder .text span:last-child {
          margin-right: 0; }
        .frame-container.foreground .textholder .text span.supered {
          padding-right: 0.26em; }
    .frame-container.foreground .frame {
      position: absolute; }
    .frame-container.foreground .frame-1 {
      display: -ms-flexbox;
      display: flex;
      -ms-flex: 1;
          flex: 1;
      z-index: 50;
      display: block;
      position: absolute;
      top: 0px;
      left: 0px;
      width: 300px;
      height: 250px;
      line-height: 1.1em;
      font-size: 20px;
      -ms-flex-direction: column;
          flex-direction: column;
      -ms-flex-pack: center;
          justify-content: center; }
    .frame-container.foreground .frame-2 {
      font-size: 24px; }
    .frame-container.foreground .frame-end {
      position: absolute;
      z-index: 50;
      color: #ffffff; }
      .frame-container.foreground .frame-end .content {
        /*  Absolutely positioned since some of the layouts need to go edge to edge. */
        display: block;
        position: absolute;
        top: 0px;
        left: 0px;
        width: 300px;
        height: 250px;
        display: -ms-flexbox;
        display: flex;
        line-height: 1.1em;
        font-size: 20px;
        -ms-flex-direction: column;
            flex-direction: column;
        -ms-flex-pack: justify;
            justify-content: space-between;
        padding: 16px; }
        .frame-container.foreground .frame-end .content .textbox-headline {
          font-size: 1.35em;
          line-height: 1.1em; }
      .frame-container.foreground .frame-end .text-block {
        display: -ms-flexbox;
        display: flex;
        -ms-flex: 1;
            flex: 1;
        -ms-flex-direction: column;
            flex-direction: column;
        -ms-flex-pack: center;
            justify-content: center; }
      .frame-container.foreground .frame-end .cta-block {
        -ms-flex-align: center;
            align-items: center; }
        .frame-container.foreground .frame-end .cta-block .button-wrapper button {
          padding: 0.5em 1em;
          width: auto;
          max-width: 100%;
          background: #ffffff;
          color: #111111;
          border: none;
          font-size: 16px; }

.frame-container .frame .v5frame {
  /*
  z-index: 20;
   */ }

.frame-container.foreground .frame-1 .textholder .text {
  font-family: wf_gd_sherpa_semibold; }

.frame-container.foreground .frame-2 .textholder .text {
  font-family: wf_gdsage-medium; }

.frame-container.foreground .frame-end .content .textbox-headline {
  font-family: wf_gdsage-medium; }

.frame-container.foreground .frame-end .content .textbox-headline {
  font-family: wf_gdsage-medium; }

.frame-container.foreground .frame-end .content .textbox-subtext {
  font-family: wf_gd_sherpa_semibold; }

.frame-container.foreground .frame-end .content .textbox-price {
  font-family: wf_gdsage-bold; }

.frame-container.foreground .frame-end .content .textbox-descriptor {
  font-family: wf_gd_sherpa_semibold; }

.frame-container.foreground .frame-end .cta-block .button-wrapper button {
  font-family: wf_gd_sherpa_semibold; }

.frame-container.foreground .frame-end .content .price-block {
  display: none; }

.textbox-subtext {
  display: none; }

.textbox-headline span span {
  font-size: 0.5em;
  line-height: 0.5em;
  position: relative;
  top: -0.8em; }

.ad-content .frame-container.foreground .frame-end .content .textbox-headline {
  font-size: 25px;
  line-height: 1.1em; }

.frame-container.foreground .frame-end .disclaimer {
  margin-top: 6px;
  font-size: 12px;
  font-family: wf_gd_sherpa_semibold;
  line-height: 14px; }

.frame-container.foreground .frame-end .priceoffer {
  display: initial !important; }

.frame-2 {
  display: none; }

.frame-container.foreground .frame-end .has-domain-search .text-block {
  -ms-flex-pack: justify;
      justify-content: space-between; }

.frame-container.foreground .frame-end .has-domain-search .domain-search-input {
  margin-top: 6px;
  display: -ms-flexbox;
  display: flex; }
  .frame-container.foreground .frame-end .has-domain-search .domain-search-input input[type='text'] {
    border: 1px solid black(0.5);
    height: 36px;
    width: 63%;
    margin: 0px;
    padding: 6px 6px;
    font-size: 12px; }
  .frame-container.foreground .frame-end .has-domain-search .domain-search-input button {
    margin: 0px;
    height: 36px;
    color: #111111;
    background: #ffffff;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    border: none;
    width: 33%;
    margin-left: 4%;
    font-family: wf_gd_sherpa_semibold;
    font-size: 14px; }

.frame-container.foreground .frame-end .has-domain-search .disclaimer {
  font-size: 12px;
  font-family: wf_gd_sherpa_semibold;
  line-height: 14px;
  margin-top: 0;
  margin-bottom: 0; }

.frame-container.foreground .frame-end .has-domain-search h5 {
  margin-top: 13px;
  margin-bottom: 7px;
  font-family: wf_gd_sherpa_semibold;
  font-size: 16px;
  line-height: 18px;
  font-weight: normal !important; }

.frame-container.foreground .frame-end .has-domain-search .domainshort {
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin-top: 10px;
  margin-bottom: 10px;
  -ms-flex-align: center;
      align-items: center;
  margin-left: 13px; }

.frame-container.foreground .frame-end .has-domain-search .domain {
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin-top: 10px;
  margin-bottom: 10px;
  -ms-flex-align: center;
      align-items: center; }
  .frame-container.foreground .frame-end .has-domain-search .domain a {
    margin-left: auto; }
  .frame-container.foreground .frame-end .has-domain-search .domain button {
    height: 28px;
    color: #111111;
    background: #ffffff;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    border: none;
    width: 25%;
    font-family: wf_gd_sherpa_semibold;
    font-size: 12px;
    margin-left: auto;
    padding-top: 6px;
    padding-bottom: 6px;
    width: 80px; }
  .frame-container.foreground .frame-end .has-domain-search .domain h3 {
    font-family: wf_gd_sherpa_semibold;
    color: #ffffff;
    font-size: 18px;
    line-height: 20px;
    margin: 0px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis; }

#searchMore {
  display: none; }

.frame-container.foreground .frame {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column-reverse;
      flex-direction: column-reverse; }
  .frame-container.foreground .frame .textholder {
    width: auto;
    padding: 16px;
    height: auto; }

.frame-container.foreground .frame-end .content {
  height: 200px;
  top: 50px; }

.frame-container .frame .imgframe.svg {
  height: 250px;
  padding: 20px;
  top: 20px; }

.frame-container .frame .v5frame-2 {
  z-index: 20; }

.button-wrapper {
  width: 70%; }

.frame-container.foreground .logo {
  left: 7px;
  top: 13px;
  width: 147px;
  height: 29px; }

.logo {
  transform: scale(1.06); }

.frame-container.foreground .frame-1 .textholder .text {
  margin-top: -10px; }

.frame-container.foreground .frame-2 {
  display: none; }

.frame-container .imgframe {
  position: absolute; }
  .frame-container .imgframe.imgframe-1 {
    width: 145px;
    top: 30px;
    left: 0px;
    height: 220px; }

.frame-container.foreground .logo {
  left: 161px;
  top: 23px;
  width: 112px;
  height: 25px;
  left: 117px;
  top: 18px;
  width: 147px;
  height: 29px;
  left: 161px;
  top: 14px;
  width: 125px;
  height: 29px; }
  .frame-container.foreground .logo #heart-path-2 {
    display: none; }
  .frame-container.foreground .logo #heart-path-2 {
    display: initial; }
  .frame-container.foreground .logo #gd_logo {
    fill: #ffffff; }

.frame-container.foreground .frame-1 .textholder {
  position: absolute;
  left: 145px;
  top: 30px;
  width: 155px;
  bottom: 0px;
  padding: 16px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center; }

.frame-container.foreground .frame-2 .textholder {
  position: absolute;
  left: 145px;
  top: 30px;
  width: 155px;
  bottom: 0px;
  padding: 16px;
  display: none;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center; }

.frame-container.foreground .frame-3 .textholder {
  font-size: 24px;
  position: absolute;
  left: 145px;
  top: 30px;
  width: 155px;
  bottom: 0px;
  padding: 16px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center; }

.frame-container.foreground .frame-end .content {
  top: 30px;
  height: auto;
  bottom: 0px; }

.frame-container.foreground .frame-1 .textholder .text {
  margin-top: -10px; }

.frame-container.foreground .frame-end .disclaimer {
  bottom: 12px;
  left: 16px; }

.frame-container.foreground .frame-end .has-domain-search .disclaimer {
  position: absolute;
  bottom: 12px;
  left: 16px;
  margin-left: 0 !important; }

.frame-container.foreground .frame-end .disclaimer {
  margin-top: -12px;
  margin-left: 153px;
  text-align: right; }

.logo {
  transform: scale(1); }

.st0 {
  fill: #FFFFFF !important; }

.frame-container.foreground .frame-3 .textholder .text {
  font-family: wf_gdsage-medium; }

.texture-5 svg .st0 {
  fill: #61EAEA !important; }

.frame-container.foreground .frame-1 .textholder, .frame-container.foreground .frame-3 .textholder, .ad-content .frame-container.foreground .frame-end .content .textbox-headline {
  font-kerning: none; }

.frame-container .imgframe.imgframe-1 {
  width: 150px;
  top: 40px;
  left: 75px;
  height: 137px; }

.frame-container.foreground .logo {
  left: 100px;
  top: 218px;
  width: 100px;
  height: 27px; }

.texture-1 svg {
  position: absolute;
  margin-top: 80px;
  margin-left: 40px;
  height: 45px;
  background-repeat: no-repeat;
  transform: rotate(-15deg);
  z-index: 0; }

.texture-1 svg .cls-1 {
  fill: #61EAEA; }

.texture-2 svg {
  position: absolute;
  margin-top: 107px;
  margin-left: 222px;
  height: 45px;
  background-repeat: no-repeat;
  transform: rotate(15deg);
  z-index: 1; }

.texture-2 svg .cls-1 {
  fill: #FADCD9; }

.frame-container.foreground .frame-1 .textholder .text {
  width: 135px; }

.frame-container.foreground .frame-1 .textholder {
  position: absolute;
  top: -16px;
  transform: initial;
  left: 73px;
  right: 0px; }

#FRAME_1A {
  margin-top: 145px;
  width: 125px; }

.frame-container.foreground .frame-3 .textholder {
  position: absolute;
  top: -145px;
  transform: initial;
  left: 0px;
  right: 0px;
  width: 185px; }

.frame-container.foreground .frame-3 .textholder .text span:nth-child(2)::before {
  content: '\A';
  white-space: pre; }

.texture-3 svg {
  position: absolute;
  margin-top: 38px;
  margin-left: 66px;
  height: 26px;
  background-repeat: no-repeat;
  z-index: 1; }

.texture-3 svg .cls-1 {
  fill: #61EAEA; }

.texture-4 svg {
  position: absolute;
  margin-top: 180px;
  margin-left: 210px;
  height: 45px;
  background-repeat: no-repeat;
  transform: rotate(15deg);
  z-index: 1; }

.texture-4 svg .cls-1 {
  fill: #FED317; }

.texture-5 svg {
  position: absolute;
  margin-top: 150px;
  margin-left: 242px;
  height: 45px;
  background-repeat: no-repeat; }

.texture-5 svg .cls-1 {
  fill: #61EAEA; }

.texture-6 {
  height: 200px; }

.frame-container .frame .imgframe-3 {
  background-repeat: no-repeat;
  top: 0px; }

.frame-container.foreground .frame-end .content {
  display: block;
  top: 10px;
  height: auto;
  bottom: 0px;
  left: 30px;
  width: 290px; }

.ad-content .frame-container.foreground .frame-end .content .textbox-headline span:nth-child(3)::before {
  content: '\A';
  white-space: pre; }

.frame-container.foreground .frame-end .cta-block {
  margin-top: 32px; }

.frame-container.foreground .frame-end .cta-block .button-wrapper button {
  border: 2px solid #ffffff;
  background: #111111;
  color: #FFFFFF;
  font-size: 11px; }

.frame-container.foreground .frame-end .disclaimer {
  margin-top: 3px;
  margin-left: 23px;
  text-align: left;
  font-size: 9px; }
