Advertisement
Guest User

Untitled

a guest
Dec 6th, 2016
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
CSS 21.69 KB | None | 0 0
  1. @import 'https://fonts.googleapis.com/css?family=Lato:100,300,400,700';
  2.  
  3. $color-fur-edge: #BFB48C;
  4. $color-eye: #260F02;
  5. $color-body: #C49152;
  6. $color-body-dark: #9D7442;
  7. $color-body-light: #cca069;
  8. $color-ear: #6a3c1c;
  9. $color-fur: #EFE1AF;
  10. $easing: cubic-bezier(0.645, 0.045, 0.355, 1);
  11. $total-kf: 13;
  12. $duration: 10s;
  13.  
  14. $k-bounce-down: (0, 1, 2, 3, 4,
  15.     6, 7, 8, 9,
  16.     $total-kf);
  17. $k-bounce-up: (0.5, 1.5, 2.5, 3.5,
  18.     6.5, 7.5, 8.5, 9.5,);
  19. $k-attack-prep: 10;
  20. $kap: $k-attack-prep; // I'm being lazy
  21. $k-attack: (10.3, $total-kf - 1);
  22.  
  23. $kf-head: (
  24.  $k-bounce-down: translateY(4%),
  25.  $k-bounce-up: translateY(0),
  26.  4.5: translateY(2%) rotate(-3deg),
  27.  5: translateY(-5%) rotate(7deg),
  28.  $k-attack-prep: translateY(7%) rotate(-3deg),
  29.  ($k-attack-prep + 1): translateY(-7%) rotate(3deg),
  30. );
  31.  
  32. $kf-head-shadow: (
  33.  $k-bounce-down: translateY(-2%),
  34.  $k-bounce-up: translateY(1%),
  35.  4.5: translateY(-5%),
  36.  5: translateY(5%),
  37.  $k-attack-prep: translateY(-4%),
  38.  ($k-attack-prep + 1): translateY(10%) scale(0.9)
  39. );
  40.  
  41. $kf-eyes: (
  42.  $k-bounce-down: rotateX(-7deg) translateZ(10px),
  43.  $k-bounce-up: rotateX(7deg) translateZ(10px),
  44.  $k-attack-prep: translateY(5%) rotateX(-20deg) translateZ(10px),
  45.  ($k-attack-prep + 1): rotateX(20deg) translateZ(10px),
  46. );
  47.  
  48. $kf-nose: (
  49.  $k-bounce-down: translateY(30%),
  50.  $k-bounce-up: translateY(-20%),
  51.  $k-attack-prep: translateY(70%),
  52.  ($k-attack-prep + 1): translateY(-60%),
  53. );
  54.  
  55. $kf-mouth-move: (
  56.  $k-bounce-down: translateY(15%),
  57.  $k-bounce-up: translateY(-5%),
  58.  
  59.  $k-attack-prep: translateY(30%),
  60.  ($k-attack-prep + 1): translateY(-10%),
  61. );
  62.  
  63. $kf-body: (
  64.  $k-bounce-down: translateY(1%),
  65.  $k-bounce-up: translateY(0),
  66.  4.5: translateY(4%),
  67.  5: translateY(0),
  68.  $k-attack-prep: translateY(3%),
  69.  $k-attack: translateY(-5%),
  70. );
  71.  
  72. $kf-eyelid: (
  73.  (0,
  74.    3, 3.2,
  75.    10,
  76.    $total-kf - 0.6,
  77.  ): translateY(-120%) rotate(-30deg) ,
  78.  (
  79.    3.05, 3.18,
  80.    10.05,
  81.    $total-kf - 0.8,
  82.  ): translateY(0) rotate(0) ,
  83.  $k-attack: translateY(-85%) rotate(30deg),
  84. );
  85.  
  86. $kf-mouth: (
  87.  (0, $total-kf - 0.9): (
  88.    width: 12%,
  89.    height: 6%,
  90.    bottom: 13%,
  91.    left: 33%,
  92.    border-radius: 50%,
  93.    box-shadow: 0 -2px $color-eye,
  94.    border: none,
  95.    background: transparent,
  96.  ),
  97.  $k-attack: (
  98.    height: 10%,
  99.    background: #B37B7E,
  100.    border-top-left-radius: 50% 60%,
  101.    border-top-right-radius: 50% 60%,
  102.    border-bottom-left-radius: 50% 40%,
  103.    border-bottom-right-radius: 50% 40%,
  104.    box-shadow: inset 0 5px $color-eye,
  105.    border: 2px solid $color-eye,
  106.  ),
  107. );
  108.  
  109. $kf-mouth-side: (
  110.  (0, $total-kf - 0.9): (opacity: 1),
  111.  10.3: (opacity: 0),
  112. );
  113.  
  114. $kf-leg: (
  115.  $k-bounce-down: rotate(-12deg),
  116.  $k-bounce-up: rotate(-6deg),
  117.  4.5: rotate(-16deg),
  118.  5: rotate(9deg),
  119.  $k-attack-prep: translateY(-10%) rotate(-18deg),
  120.  $k-attack: translateY(5%) rotate(0),
  121. );
  122.  
  123. $kf-leg-inner: (
  124.  $k-bounce-down: rotate(28deg),
  125.  $k-bounce-up: rotate(16deg),
  126.  4.5: rotate(40deg),
  127.  5: rotate(-10deg),
  128.  $k-attack-prep: rotate(32deg),
  129.  $k-attack: rotate(0),
  130. );
  131.  
  132. $kf-paw-inner: (
  133.  $k-bounce-down: rotate(-16deg),
  134.  $k-bounce-up: rotate(-10deg),
  135.  4.5: rotate(-20deg),
  136.  5: rotate(0deg),
  137.  $k-attack-prep: rotate(-14deg),
  138.  $k-attack: rotate(0),
  139. );
  140.  
  141. $kf-ear: (
  142.  $k-bounce-up: rotateX(-20deg) rotate(-15deg),
  143.  $k-bounce-down: rotateX(20deg) rotate(-5deg),
  144.  
  145.  (4.7,4.9,5.1,5.3): rotate(-20deg),
  146.  (4.8,5.0,5.2,5.6): rotate(-10deg),
  147.  
  148.  $k-attack-prep: rotateX(20deg) rotate(-5deg),
  149.  ($kap+0.4, $kap+0.8, $kap+1.2, $kap+1.6, $kap+2.0): rotateX(-30deg) rotate(-30deg),
  150.  ($kap+0.6, $kap+1.0, $kap+1.4, $kap+1.8, $kap+2.2): rotateX(-20deg) rotate(-20deg),
  151. );
  152.  
  153. $kf-tail: (
  154.  all: scale(0.9),
  155.  $k-bounce-down: rotate(-5deg),
  156.  $k-bounce-up: rotate(5deg),
  157.  
  158.  4.4: rotate(10deg),
  159.  (4.6, 5, 5.4): rotate(-2deg),
  160.  (4.8, 5.2, 5.6): rotate(4deg),
  161.  $k-attack-prep: rotate(-7deg),
  162.  ($k-attack-prep + 1): rotate(15deg),
  163. );
  164.  
  165. $kf-tail-end: (
  166.  all: scale(0.9),
  167.  $k-bounce-down: rotate(-12deg),
  168.  $k-bounce-up: rotate(9deg),
  169.  
  170.  4.4: rotate(10deg),
  171.  (4.6, 5, 5.4): rotate(-4deg),
  172.  (4.8, 5.2, 5.6): rotate(12deg),
  173.  $k-attack-prep: rotate(7deg),
  174.  ($kap+0.6, $kap + 1, $kap+1.4, $kap+1.8): rotate(-10deg),  
  175.  ($kap+0.8, $kap + 1.2, $kap+1.6, $kap+2.0): rotate(2deg),  
  176. );
  177.  
  178. $kf-chest: (
  179.  (0, 4, $total-kf): translateY(0),
  180.  4.5: rotate(-2deg) translateY(2%) ,
  181.  5: rotate(2deg) translateY(-2%) ,
  182.  ($k-attack-prep - 1): translateY(0),
  183.  $k-attack-prep: translateY(2%),
  184.  ($k-attack-prep + 1): translateY(0),
  185. );
  186.  
  187. $kf-fur-center: (
  188.  $k-bounce-down: translateY(0),
  189.  $k-bounce-up: translateY(2%),
  190. );
  191.  
  192. $kf-fur-center-patch-left: (
  193.  $k-bounce-down: rotate(65deg) skewX(15deg),
  194.  $k-bounce-up: rotate(60deg) skewX(15deg),
  195. );
  196.  
  197. $kf-fur-center-patch-right: (
  198.  $k-bounce-down: rotate(35deg) skewX(15deg),
  199.  $k-bounce-up: rotate(30deg) skewX(15deg),
  200. );
  201.  
  202. $kf-fur-right: (
  203.  $k-bounce-down: translateY(0),
  204.  $k-bounce-up: translateY(2%),
  205. );
  206.  
  207. $kf-fur-right-patch: (
  208.  $k-bounce-down: translateY(0) rotate(50deg),
  209.  $k-bounce-up: translateY(2%) rotate(56deg),
  210. );
  211.  
  212. @mixin effect($name, $kf) {
  213.  $all: '';
  214.  @keyframes #{$name} {
  215.    @each $intervals, $transform in $kf {
  216.      @each $interval in $intervals {
  217.        @if ($interval == 'all') {
  218.          $all: $transform;
  219.        } @else {      
  220.          #{percentage($interval/$total-kf)} {
  221.            @if type-of($transform) == 'map' {
  222.              @each $key, $val in $transform {
  223.                #{$key}: $val;
  224.              }
  225.            } @else {
  226.              transform: unquote($all) $transform;
  227.            }
  228.          }
  229.        }
  230.      }
  231.    }
  232.  }
  233.  $all: '';
  234. }
  235.  
  236. @function a($name, $delay: 0s) {
  237.  @return $name $duration $delay $easing both infinite;
  238. }
  239.  
  240. @include effect(head, $kf-head);
  241. @include effect(head-shadow, $kf-head-shadow);
  242. @include effect(eyes, $kf-eyes);
  243. @include effect(eyelid, $kf-eyelid);
  244. @include effect(nose, $kf-nose);
  245. @include effect(mouth-move, $kf-mouth-move);
  246.  
  247. @include effect(mouth, $kf-mouth);
  248. @include effect(mouth-side, $kf-mouth-side);
  249. @include effect(ear, $kf-ear);
  250. @include effect(tail, $kf-tail);
  251. @include effect(tail-end, $kf-tail-end);
  252. @include effect(chest, $kf-chest);
  253. @include effect(fur-center, $kf-fur-center);
  254. @include effect(fur-center-patch-left, $kf-fur-center-patch-left);
  255. @include effect(fur-center-patch-right, $kf-fur-center-patch-right);
  256. @include effect(fur-right, $kf-fur-right);
  257. @include effect(fur-right-patch, $kf-fur-right-patch);
  258. @include effect(body, $kf-body);
  259. @include effect(leg, $kf-leg);
  260. @include effect(leg-inner, $kf-leg-inner);
  261. @include effect(paw-inner, $kf-paw-inner);
  262.  
  263. .eevee {
  264.  height: 325px;
  265.  width: 410px;
  266.  
  267.  @media (max-width: 600px) {
  268.    transform: scale(0.8);
  269.  }
  270.  
  271.  @media (max-width: 300px) {
  272.    transform: scale(0.5);
  273.  }
  274.  
  275.  * {
  276.    position: absolute;
  277.  }
  278. }
  279.  
  280. .body {
  281.  animation: a(body);
  282.  height: 100px;
  283.  position: absolute;
  284.  width: 125px;
  285.  top: 164px;
  286.  left: 140px;
  287.  background: $color-body;
  288.  border-top-right-radius: 30%;
  289.  border-bottom-right-radius: 50%;
  290.  border-bottom-left-radius: 70%;
  291.  box-shadow:
  292.    inset -15px 0 0 $color-body-dark;
  293. }
  294.  
  295. .chest {
  296.  animation: a(chest, 0.05s);
  297.  height: 110%;
  298.  width: 130px;
  299.  left: -30px;
  300.  z-index: 1;
  301. }
  302.  
  303. .fur {
  304.  height: 80px;
  305.  width: 80px;
  306.  top: 0;
  307.  border-radius: 50%;
  308.  background: linear-gradient(to top,
  309.    $color-fur,
  310.    white 40%,
  311.    white 50%,
  312.    $color-fur 75%
  313.  );
  314.  
  315.  &:first-child {
  316.    animation: a(fur-center, 0.1s);
  317.    height: 110px;
  318.    width: 110px;
  319.    left: calc(50% - 55px);
  320.    z-index: 1;
  321.    box-shadow:
  322.      inset 0 0 0 2px rgba(black, 0.2),
  323.      3px 0 15px rgba(black, 0.2);
  324.    
  325.    > .patch {
  326.      height: 50%;
  327.      width: 50%;
  328.      left: 50% - 25%;
  329.      transform-style: none;
  330.      bottom: 8%;
  331.  
  332.      &:before {
  333.        animation: a(fur-center-patch-left);
  334.        left: 25%;
  335.        top: 0;
  336.        transform: rotate(65deg) skewX(15deg);
  337.        box-shadow:
  338.          2px 0 $color-fur-edge;
  339.        background: linear-gradient(-45deg,
  340.          $color-fur-edge,
  341.          $color-fur 9%,
  342.          transparent 20%);
  343.        border-top-right-radius: 60%;
  344.        border-bottom-right-radius: 8%;
  345.      }
  346.      
  347.      &:after {
  348.        animation: a(fur-center-patch-right, 0.07s);
  349.        left: initial;
  350.        right: 25%;
  351.        top: 0;
  352.        transform: rotate(35deg) skewX(15deg);
  353.        box-shadow:
  354.          0 3px $color-fur-edge;
  355.        background: linear-gradient(-37deg,
  356.          $color-fur-edge,
  357.          $color-fur 9%,
  358.          transparent 20%);
  359.        border-top-right-radius: 0;
  360.        border-bottom-right-radius: 0;
  361.        border-bottom-left-radius: 60%;
  362.        border-bottom-right-radius: 8%;
  363.      }
  364.    }
  365.  }
  366.  
  367.  &:nth-child(2) {
  368.    left: -3px;
  369.  }
  370.  
  371.  &:nth-child(3) {
  372.    animation: a(fur-right, 0.15s);
  373.    right: -20px;
  374.  }
  375.  
  376.  > .patch {
  377.    &:before, &:after {
  378.      content: '';
  379.      display: block;
  380.      position: absolute;
  381.      width: 100%;
  382.      height: 100%;
  383.      border-bottom-left-radius: 100%;
  384.    }
  385.    
  386.    &:before {
  387.      background: linear-gradient(-30deg,
  388.        $color-fur-edge,
  389.        $color-fur 6%,
  390.        white 55%,
  391.        transparent
  392.      );
  393.    }
  394.    
  395.    &:after {
  396.      background: linear-gradient(-30deg,
  397.        $color-fur-edge,
  398.        $color-fur 6%,
  399.        white 55%,
  400.        transparent
  401.      );
  402.    }
  403.  }
  404.  
  405.  &:not(:first-child) > .patch {
  406.    height: 35%;
  407.    width: 35%;
  408.    bottom: 10%;
  409.    left: 30%;
  410.    
  411.    &:before, &:after {
  412.      animation: a(fur-right-patch);
  413.      top: -15%;
  414.      left: 110%;
  415.      transform-origin: top left;
  416.      box-shadow:
  417.        2px 0 $color-fur-edge;
  418.      border-top-right-radius: 75%;
  419.      border-bottom-right-radius: 10%;
  420.    }
  421.    
  422.    &:before {
  423.      left: 150%;
  424.      top: -25%;
  425.    }
  426.    
  427.    &:after {
  428.      animation-delay: 0.1s;
  429.      left: 100%;
  430.      top: 0%;
  431.    }
  432.  }
  433. }
  434.  
  435. .head {
  436.  height: 149px;
  437.  width: 144px;
  438.  top: -110px;
  439.  left: -35px;
  440.  z-index: 10;
  441.  animation: a(head);
  442.  transform-style: preserve-3d;
  443.  perspective: 1000px;
  444.  
  445.  &:before {
  446.    content: '';
  447.    position: absolute;
  448.    display: block;
  449.    height: 100%;
  450.    width: 100%;
  451.    top: 0;
  452.    left: 0;
  453.    
  454.  }
  455.  
  456.  &:after {
  457.    content: '';
  458.    position: absolute;
  459.    display: block;
  460.    height: 20%;
  461.    width: 20%;
  462.    background: green;
  463.    transform: skewX(30deg) rotate(40deg);
  464.    left: 50%;
  465.    top: -2%;
  466.    background: $color-body;
  467.    box-shadow:
  468.      -15px 8px #ca9d65,
  469.      -25px 22px #cca069,
  470.      -35px 50px #cda36f
  471.    ;
  472.    z-index: -1;
  473.  }
  474. }
  475.  
  476. .face {
  477.  position: absolute;
  478.  top: 0;
  479.  left: 0;
  480.  height: 100%;
  481.  width: 100%;
  482.  background: linear-gradient(to top left,
  483.    $color-body-dark,
  484.    $color-body 60%,
  485.    $color-body 70%,
  486.    lighten($color-body, 15%) 100%
  487.  );
  488.  
  489.  &, &:before {
  490.    border-top-left-radius: 40% 50%;
  491.    border-top-right-radius: 40% 50%;
  492.    border-bottom-left-radius: 50% 30%;
  493.    border-bottom-right-radius: 50% 30%;
  494.  }
  495.  
  496.  &:before {
  497.    animation: a(head-shadow);
  498.    content: '';
  499.    display: block;
  500.    position: absolute;
  501.    height: 100%;
  502.    width: 100%;
  503.    background: radial-gradient(farthest-side,
  504.      rgba(black, 0.6),
  505.      transparent
  506.    );
  507.    z-index: -1;
  508.    top: 20%;
  509.    left: 0%;
  510.  }
  511. }
  512.  
  513. .ears {
  514.  width: 100%;
  515.  height: 54px;
  516.  z-index: -2;
  517. }
  518.  
  519. .ear {
  520.  width: 160px;
  521.  height: 70px;
  522.  left: 50%;
  523.  bottom: 10%;
  524.  transform-origin: bottom left;
  525.  transform: translateX(40px);
  526.  
  527.  &:before, &:after {
  528.    animation: a(ear, 0.1s);
  529.    animation-delay: 50ms;
  530.    content: '';
  531.    position: absolute;
  532.    top: 0;
  533.    left: 0;
  534.    width: 100%;
  535.    height: 100%;
  536.    transform: skewX(-25deg) skewY(5deg);
  537.    background: radial-gradient(farthest-side, $color-ear, darken($color-ear, 4%));
  538.    transform-origin: bottom left;
  539.    border: 12px solid $color-eye;
  540.    border-top-left-radius: 100%;
  541.    border-bottom-right-radius: 100%;
  542.  }
  543.  
  544.  &:after {
  545.    border: 8px solid $color-body-dark;
  546.    background: transparent;
  547.  }
  548.  
  549.  + .ear {
  550.    transform: translateX(-40px) rotateY(180deg);
  551.  }
  552.  
  553.  > .lobe {
  554.    height: 20%;
  555.    width: 20%;
  556.    background: $color-body-dark;
  557.    bottom: 25%;
  558.    left: -5%;
  559.    transform: skewX(-50deg);
  560.    border-top-right-radius: 15%;
  561.    box-shadow: 9px 6px 0 $color-body-dark;
  562.  }
  563. }
  564.  
  565. .eyes {
  566.  width: 77%;
  567.  height: 33%;
  568.  left: 5%;
  569.  top: 35%;
  570.  animation: a(eyes);
  571. }
  572.  
  573. .eye {
  574.  height: 100%;
  575.  width: 28%;
  576.  border-top-left-radius: 50% 65%;
  577.  border-top-right-radius: 50% 65%;
  578.  border-bottom-left-radius: 50% 35%;
  579.  border-bottom-right-radius: 50% 35%;
  580.  background-color: $color-eye;
  581.  box-shadow:
  582.    inset 0 0 0 3px $color-eye;
  583.  background-image:
  584.    radial-gradient(ellipse 5px 10px at 50% 65%,
  585.      $color-eye 0%,
  586.      $color-eye 99%,
  587.      transparent 100%),
  588.    radial-gradient(ellipse 10px 20px at 50% 90%,
  589.      #955D27 0%,
  590.      #955D27 99%,
  591.      transparent 100%),
  592.    radial-gradient(ellipse 4px 6px at 55% 20%,
  593.      white 0%,
  594.      white 99%,
  595.      transparent 100%)
  596.    ;
  597.  
  598.  &:last-child {
  599.    right: 10%;
  600.    transform: rotateY(180deg);
  601.    
  602.    // &:before {
  603.    //   border-left: 3px solid $color-eye;
  604.    //   border-right: 1px solid transparent;
  605.    //   border-top: 1px solid transparent;
  606.    //   border-bottom: 1px solid transparent;
  607.    //   transform: rotate(38deg);
  608.    //   left: 2px;
  609.    // }
  610.  }
  611.  
  612.  &:before {
  613.    content: '';
  614.    display: block;
  615.    position: absolute;
  616.    height: 30%;
  617.    width: 30%;
  618.    background: transparent;
  619.    border-radius: 50%;
  620.    border-right: 3px solid $color-eye;
  621.    border-left: 1px solid transparent;
  622.    border-top: 1px solid transparent;
  623.    border-bottom: 1px solid transparent;
  624.    z-index: -1;
  625.    transform: rotate(-38deg);
  626.    top: -4px;
  627.    left: initial;
  628.    right: 2px;
  629.    opacity: 0.6;
  630.    z-index: 1;
  631.  }
  632.  
  633.  > .eyelid {
  634.    height: 102%;
  635.    width: 102%;
  636.    left: -1%;
  637.    top: -1%;
  638.    overflow: hidden;
  639.    
  640.    &:before {
  641.      animation: a(eyelid);
  642.      content: '';
  643.      position: absolute;
  644.      display: block;
  645.      top: 0;
  646.      left: 0;
  647.      height: 100%;
  648.      width: 100%;
  649.      background: $color-body;
  650.      border-bottom: 3px solid $color-eye;
  651.      transform-origin: center bottom;
  652.      transform: translateY(-100%);
  653.      border-radius: 50% 50% 15% 15%;
  654.    }
  655.  }
  656. }
  657.  
  658. .mouth {
  659.  animation: a(mouth), a(mouth-move);
  660.  animation-timing-function: step-end, $easing;
  661.  animation-fill-mode: none;
  662.  width: 12%;
  663.  height: 6%;
  664.  bottom: 13%;
  665.  left: 33%;
  666.  border-radius: 50%;
  667.  box-shadow: 0 -2px $color-eye;
  668.  
  669.  &:before, &:after {
  670.    animation: a(mouth-side);
  671.    animation-timing-function: step-end;
  672.    content: '';
  673.    display: block;
  674.    position: absolute;
  675.    width: 60%;
  676.    height: 100%;
  677.    border-radius: 50%;
  678.    bottom: 53%;
  679.    border-bottom: 2px solid $color-eye;
  680.  }
  681.  
  682.  &:before {
  683.    right: 87%;
  684.  }
  685.  
  686.  &:after {
  687.    left: 87%;
  688.  }
  689. }
  690.  
  691. .nose {
  692.  animation: a(nose);
  693.  width: 6%;
  694.  height: 4%;
  695.  background: $color-eye;
  696.  border-bottom-left-radius: 50% 65%;
  697.  border-bottom-right-radius: 50% 65%;
  698.  border-top-left-radius: 50% 35%;
  699.  border-top-right-radius: 50% 35%;
  700.  bottom: 26%;
  701.  left: 35%;
  702. }
  703.  
  704. .tail {
  705.  height: 120px;
  706.  width: 120px;
  707.  z-index: -1;
  708.  animation: a(tail);
  709.  
  710.  &:before, &:after {
  711.    content: '';
  712.    display: block;
  713.    position: absolute;
  714.    top: 0;
  715.    left: 0;
  716.    width: 100%;
  717.    height: 100%;
  718.  }
  719.  
  720.  &:after {
  721.    background: $color-body;
  722.    border-radius: 50%;
  723.    transform: rotate(-135deg);
  724.  }
  725.  
  726.  .body > & {
  727.    z-index: -2;
  728.    right: -40px;
  729.    top: -70px;
  730.    
  731.    &:after {    
  732.      background: linear-gradient(to bottom right,
  733.        $color-body-dark,
  734.        $color-body-dark 20%,
  735.        $color-body,
  736.        $color-body);
  737.    }
  738.  }
  739.  
  740.  .tail {
  741.    top: -35px;
  742.    transform-origin: center bottom;
  743.    transform: scale(0.85);
  744.  }
  745.  
  746.  > .tail .tail {
  747.    z-index: 1
  748.  }
  749.  
  750.  &.-end {
  751.    top: -60px;
  752.    
  753.    &:after {
  754.      background: $color-fur;
  755.      background: linear-gradient(to bottom right, $color-fur, white);
  756.      // box-shadow: 0 0 0 6px $color-fur;
  757.      border-radius: initial;
  758.      border-bottom-left-radius: 100% 50%;
  759.      border-top-right-radius: 50% 100%;
  760.      border-top-left-radius: 50%;
  761.    }
  762.    
  763.    &:before {
  764.      content: '';
  765.      display: block;
  766.      position: absolute;
  767.      background: $color-body;
  768.      height: 40%;
  769.      width: 40%;
  770.      z-index: 1;
  771.      border-radius: 50% 50% 0 0;
  772.      top: initial;
  773.      bottom: -15%;
  774.      left: 30%;
  775.      box-shadow:
  776.        -20px -5px $color-body,
  777.        20px -5px $color-body;
  778.    }
  779.  }
  780.  
  781.  > .tail > .tail * {
  782.    animation: a(tail-end);
  783.  }
  784. }
  785.  
  786. .legs {
  787.  animation: a(legs);
  788.  top: 70%;
  789.  width: 100%;
  790.  height: 100%;
  791. }
  792.  
  793. @mixin bend-leg($deg) {
  794.  > .inner-leg {
  795.    transform: skewX($deg);
  796.  
  797.    &:before {
  798.      transform: skewX(-$deg);
  799.    }
  800.  }
  801. }
  802.  
  803. .leg {
  804.  top: 0;
  805.  background: linear-gradient(to left, $color-body-dark, $color-body, $color-body-light);
  806.  transform-origin: center top;
  807.  animation: a(leg);
  808.  
  809.  &, > .inner-leg {
  810.    height: 40px;
  811.    width: 30px;
  812.    border-radius: 35%;
  813.  }
  814.  
  815.  &:before, &:after {
  816.    content: '';
  817.    display: block;
  818.    position: absolute;
  819.  }
  820.  
  821.  > .inner-leg {
  822.    top: 50%;
  823.    transform-origin: center 10%;
  824.    animation: a(leg-inner);
  825.  
  826.    &:before {
  827.      animation: a(paw-inner);
  828.    }
  829.  }
  830.  
  831.  &:nth-child(1) {
  832.    left: 20px;
  833.    top: -2px;
  834.  }
  835.  
  836.  &:nth-child(2) {
  837.    left: 70px;
  838.    
  839.    ~ * {
  840.      z-index: -1;
  841.    
  842.      &, & > .inner-leg, & > .inner-leg:before {
  843.        
  844.        animation-delay: 0.07s;
  845.      }
  846.    }
  847.  }
  848.  
  849.  &:nth-child(3) {
  850.    left: 35px;
  851.    top: -10px;
  852.  }
  853.  
  854.  &:nth-child(4) {
  855.    left: 90px;
  856.    top: -10px;
  857.  }
  858. }
  859.  
  860. .inner-leg {
  861.  background: linear-gradient(to left, $color-body-dark, $color-body, $color-body-light);
  862.  &:before {
  863.    content: '';
  864.    display: block;
  865.    position: absolute;
  866.    bottom: -10%;
  867.    width: 105%;
  868.    height: 50%;
  869.    border-top-left-radius: 40% 40%;
  870.    border-top-right-radius: 40% 40%;
  871.    border-bottom-left-radius: 20%;
  872.    border-bottom-right-radius: 20%;
  873.    background-image:
  874.      linear-gradient(
  875.        to bottom,
  876.        $color-body 0%,
  877.        $color-body 50%,
  878.        transparent 100%
  879.      ),
  880.      linear-gradient(
  881.        to right,
  882.        transparent 0%,
  883.        transparent 25%,
  884.        rgba(black, 0.5) 26%,
  885.        rgba(black, 0.5) 35%,
  886.        transparent 36%,
  887.        transparent 65%,
  888.        rgba(black, 0.5) 66%,
  889.        rgba(black, 0.5) 75%,
  890.        transparent 76%
  891.      ),
  892.      linear-gradient(to top,
  893.        $color-body-dark,
  894.        $color-body,
  895.        $color-body-light
  896.      );
  897.  }
  898. }
  899.  
  900. html body {
  901.  display: flex;
  902.  flex-direction: row;
  903.  justify-content: center;
  904.  min-height: 100%;
  905.  height: auto;
  906.  align-items: center;
  907.  $light: rgba(white, 0.6);
  908.  $lighter: rgba(white, 0.3);
  909.  background-image:
  910.  repeating-linear-gradient(120deg,
  911.    $light,
  912.    $light 1px,
  913.    transparent 1px,
  914.    transparent 30px,
  915.    $lighter 30px,
  916.    $lighter 31px,
  917.    transparent 31px,
  918.    transparent 60px
  919.  ),
  920.  repeating-linear-gradient(60deg,
  921.    $light,
  922.    $light 1px,
  923.    transparent 1px,
  924.    transparent 30px,
  925.    $lighter 30px,
  926.    $lighter 31px,
  927.    transparent 31px,
  928.    transparent 60px
  929.  ),
  930.    repeating-linear-gradient(to bottom,
  931.    $lighter,
  932.    $lighter 1px,
  933.    transparent 1px,
  934.    transparent 30px);
  935.  background-size: 70px 120px;
  936.  
  937.  @media (max-width: 600px) {
  938.    flex-direction: column;
  939.    
  940.    .dex {
  941.      max-width: 100%;
  942.    }
  943.  }
  944. }
  945.  
  946. .dex {
  947.  font-family: Lato, sans-serif;
  948.  max-width: 40%;
  949.  font-size: 14px;
  950.  color: white;
  951.  font-weight: 300;
  952.  padding: 1rem 2rem;
  953. }
  954.  
  955. .heading {
  956.  font-size: 24px;
  957.  text-transform: uppercase;
  958.  margin-bottom: 14px;
  959.  letter-spacing: 0.25ch;
  960.  
  961.  > span {
  962.    font-weight: 100;
  963.    margin-right: 0.5ch;
  964.  }
  965.  
  966.  > strong {
  967.    font-size: 28px;
  968.    font-weight: 300;
  969.  }
  970.  
  971. }
  972.  
  973. .pokeball {
  974.  display: inline-block;
  975.  width: 1rem;
  976.  height: 1rem;
  977.  background: radial-gradient(0.4rem, white, white 50%, transparent 50%);
  978.  margin-right: 1rem;
  979.  
  980.  &:before, &:after {
  981.    content: '';
  982.    display: block;
  983.    position: absolute;
  984.    bottom: -0.063rem;
  985.    left: 0;
  986.    height: 50%;
  987.    width: 100%;
  988.    border-radius: 0 0 1rem 1rem;
  989.    box-shadow:
  990.      inset 0 -0.09rem 0 0.09rem white,
  991.      inset 0.09rem -0.09rem 0 0.09rem white,
  992.      inset -0.09rem -0.09rem 0 0.09rem white
  993.      ;
  994.  }
  995.  
  996.  &:after {
  997.    transform-origin: top center;
  998.    transform: rotateX(180deg);
  999.    bottom: 0.063rem;
  1000.  }
  1001. }
  1002. .info {
  1003.  display: inline-block;
  1004.  margin-right: 1rem;
  1005.  margin-bottom: 14px;
  1006. }
  1007.  
  1008. .subheading {
  1009.  font-size: 18px;
  1010.  line-height: 28px;
  1011. }
  1012.  
  1013. p {
  1014.  line-height: 18px;
  1015.  margin: 0;
  1016.  margin-bottom: 1rem;
  1017. }
  1018.  
  1019. a {
  1020.  transition: opacity 0.3s $easing;
  1021.  &, &:active, &:visited {
  1022.    color: white;
  1023.  }
  1024.  
  1025.  &:hover {
  1026.    opacity: 0.8;
  1027.  }
  1028. }
  1029.  
  1030. html {
  1031.  background: radial-gradient(50vmin 50vmin, #FEB4FF, #A3A3EC);
  1032.  
  1033.  background-position: -20vw center;
  1034.  background-repeat: no-repeat;
  1035.  background-color: #a3a3ec;
  1036.  
  1037.  @media (max-width: 600px) {
  1038.    background-position: center -20vw;
  1039.  }
  1040.  
  1041.  @media (max-width: 300px) {
  1042.    background-position: center -30vw;
  1043.  }
  1044. }
  1045.  
  1046. html, body {
  1047.  width: 100%;
  1048.  height: 100%;
  1049.  margin: 0;
  1050.  padding: 0;
  1051.  font-size: 14px;
  1052. }
  1053.  
  1054. *, *:before, *:after {
  1055.  box-sizing: border-box;
  1056.  position: relative;
  1057. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement