/*!       _( }
  -=  _  <<  \
     `.\__/`/\\
-=     '--'\\  `
     -=    //
           \) 2014 */
/*---------------------------------------------------
    LESS Elements 0.9
  ---------------------------------------------------
    A set of useful LESS mixins
    More info at: http://lesselements.com
  ---------------------------------------------------*/
.clearfix:before, .clearfix:after,
.col:before,
.col:after,
.row:before,
.row:after,
.w0:before,
.w0:after,
.w1:before,
.w1:after,
.w2:before,
.w2:after {
  content: " ";
  display: table; }

.clearfix:after,
.col:after,
.row:after,
.w0:after,
.w1:after,
.w2:after {
  clear: both; }

.hidden {
  display: none !important;
  visibility: hidden; }

/**********************
 **** Form styles? ****
 **********************/
.frm h3 {
  margin-bottom: 1.2rem;
  font-size: 1.5rem;
  font-weight: 600; }

.frm.frm-hide {
  display: none; }

.frm .frm-element {
  display: block;
  margin-bottom: 0.75rem; }
  .frm .frm-element:before, .frm .frm-element:after {
    content: " ";
    display: table; }
  .frm .frm-element:after {
    clear: both; }
  .frm .frm-element .frm-label,
  .frm .frm-element .frm-input,
  .frm .frm-element .frm-select,
  .frm .frm-element .frm-checkbox,
  .frm .frm-element .frm-notes,
  .frm .frm-element .frm-input-group,
  .frm .frm-element .frm-select-group {
    font-size: 1rem;
    display: block;
    margin-bottom: 0.5rem;
    width: 100%; }
    @media (min-width: 768px) {
      .frm .frm-element .frm-label,
      .frm .frm-element .frm-input,
      .frm .frm-element .frm-select,
      .frm .frm-element .frm-checkbox,
      .frm .frm-element .frm-notes,
      .frm .frm-element .frm-input-group,
      .frm .frm-element .frm-select-group {
        display: inline-block;
        float: left;
        margin-bottom: 0; } }
  .frm .frm-element .frm-label {
    line-height: 1.4rem;
    font-weight: 400; }
    @media (min-width: 768px) {
      .frm .frm-element .frm-label {
        line-height: 2rem;
        width: 38%;
        max-width: 15rem; } }
  .frm .frm-element input[type=number]::-webkit-inner-spin-button,
  .frm .frm-element input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none; }
  .frm .frm-element .frm-notes {
    max-width: 16.25rem;
    line-height: 1rem;
    padding: 0; }
    @media (min-width: 1024px) {
      .frm .frm-element .frm-notes {
        padding: 0 0.5rem; } }
    .frm .frm-element .frm-notes span {
      font-size: 13px; }
      @media (min-width: 1024px) {
        .frm .frm-element .frm-notes span {
          font-size: 14px; } }
  .frm .frm-element .frm-input,
  .frm .frm-element .frm-select {
    border: none;
    margin: 0;
    padding: 0.5em;
    background-color: #f4f4f4;
    color: #000;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px; }
  @media (min-width: 768px) {
    .frm .frm-element .frm-input {
      width: 62%;
      max-width: 30rem; } }
  .frm .frm-element .frm-input#cc_security_code {
    width: 4.5rem; }
  .frm .frm-element .frm-select {
    min-width: 5rem;
    padding-right: 35px; }
  .frm .frm-element .frm-select-wrap {
    position: relative;
    display: block;
    z-index: 200;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    background-color: #f4f4f4; }
    @media (min-width: 768px) {
      .frm .frm-element .frm-select-wrap {
        width: 62%;
        max-width: 30rem;
        float: left; } }
    .frm .frm-element .frm-select-wrap select {
      -webkit-appearance: none;
      -moz-appearance: none;
      z-index: 100;
      background-color: transparent; }
  @media (min-width: 768px) {
    .frm .frm-element .frm-input-group,
    .frm .frm-element .frm-select-group {
      width: 62%; } }
  .frm .frm-element .frm-input-group .frm-select-wrap,
  .frm .frm-element .frm-select-group .frm-select-wrap {
    display: inline-block;
    margin-bottom: 0.4rem;
    width: 100%; }
    @media (min-width: 768px) {
      .frm .frm-element .frm-input-group .frm-select-wrap,
      .frm .frm-element .frm-select-group .frm-select-wrap {
        margin-left: 0.5rem;
        margin-bottom: 0;
        float: left;
        width: auto; } }
    .frm .frm-element .frm-input-group .frm-select-wrap:first-child,
    .frm .frm-element .frm-select-group .frm-select-wrap:first-child {
      margin-left: 0; }
  .frm .frm-element .frm-input-group .frm-group-field,
  .frm .frm-element .frm-select-group .frm-group-field {
    margin-left: 0.5rem; }
    @media (min-width: 768px) {
      .frm .frm-element .frm-input-group .frm-group-field,
      .frm .frm-element .frm-select-group .frm-group-field {
        margin-left: 0.5rem; } }
    .frm .frm-element .frm-input-group .frm-group-field:first-child,
    .frm .frm-element .frm-select-group .frm-group-field:first-child {
      margin-left: 0; }
  .frm .frm-element .frm-input-group .frm-input {
    width: auto;
    min-width: 3.75rem; }
  .frm .frm-element .frm-input-group span.dash {
    float: left;
    display: inline-block;
    margin: 0.3rem 0 0 0.5rem; }
  .frm .frm-element.frm-element-check-first .frm-checkbox {
    float: left;
    margin: 0;
    width: 1.4rem;
    height: 1.4rem; }
  .frm .frm-element.frm-element-check-first .frm-label {
    float: left;
    width: 75%;
    margin-left: 0.75rem;
    line-height: 1.4rem;
    border: none;
    max-width: none; }
    @media (min-width: 768px) {
      .frm .frm-element.frm-element-check-first .frm-label {
        width: 90%; } }
    @media (min-width: 1024px) {
      .frm .frm-element.frm-element-check-first .frm-label {
        margin-left: 0.3rem; } }
  .frm .frm-element .frm-error {
    display: block;
    float: none;
    clear: both;
    color: #e2383f; }

.frm .cvv-tooltip {
  display: inline-block;
  position: relative;
  cursor: pointer; }
  .frm .cvv-tooltip .cvv-tooltip-text {
    display: none;
    position: absolute;
    z-index: 999;
    top: -0.5rem;
    right: -8.5rem;
    width: 8rem;
    padding: 6px 4px;
    font-size: 14px;
    line-height: 16px;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;
    -webkit-box-shadow: 0 1px 2px #999;
    -moz-box-shadow: 0 1px 2px #999;
    box-shadow: 0 1px 2px #999;
    color: #31708f;
    border: 1px solid #bce8f1;
    background-color: #d9edf7; }
    @media (min-width: 768px) {
      .frm .cvv-tooltip .cvv-tooltip-text {
        width: 12rem;
        right: -12.5rem; } }
    @media (min-width: 1024px) {
      .frm .cvv-tooltip .cvv-tooltip-text {
        top: -3rem;
        right: -12rem;
        font-size: 12px;
        line-height: 14px;
        padding: 4px 2px; } }

.standalone .donations h1 {
  text-align: center;
  margin: 0.5rem 0;
  font-size: 2.75rem;
  font-weight: 600; }

.standalone .donations h2 {
  font-size: 1.2rem;
  font-weight: 600;
  line-height: 120%; }

.standalone .donations .wrapper {
  padding: 1rem;
  background: #fff; }
  @media (min-width: 768px) {
    .standalone .donations .wrapper {
      padding: 2rem; } }
  .standalone .donations .wrapper .row {
    display: block;
    margin: 2rem 0; }
    .standalone .donations .wrapper .row.stage-heading {
      padding: 1rem 1.5rem;
      background-color: #F8F8F8;
      margin: 0.5rem 0; }
      .standalone .donations .wrapper .row.stage-heading .heading {
        margin-bottom: 0;
        font-size: 0.85rem; }
      .standalone .donations .wrapper .row.stage-heading#stage-heading-4 {
        margin-bottom: 0; }
      .standalone .donations .wrapper .row.stage-heading.active, .standalone .donations .wrapper .row.stage-heading.done:hover, .standalone .donations .wrapper .row.stage-heading.selectable:hover {
        cursor: pointer; }
      .standalone .donations .wrapper .row.stage-heading.active {
        background-color: #004990;
        color: #fff; }
      .standalone .donations .wrapper .row.stage-heading.done {
        cursor: pointer; }
    .standalone .donations .wrapper .row.stage-form {
      margin: 2rem 1rem;
      display: none; }
      @media (min-width: 768px) {
        .standalone .donations .wrapper .row.stage-form#stage-1 .info-sidebar {
          width: 24%;
          float: right; } }
      .standalone .donations .wrapper .row.stage-form#stage-1 .info-sidebar .logos {
        text-align: center; }
        .standalone .donations .wrapper .row.stage-form#stage-1 .info-sidebar .logos img {
          max-width: 12rem; }
      @media (min-width: 768px) {
        .standalone .donations .wrapper .row.stage-form#stage-1 .frm.w-info-sidebar {
          float: left;
          margin-right: 0.5rem;
          margin-bottom: 1.5rem;
          width: 73%; } }
      .standalone .donations .wrapper .row.stage-form#stage-1 #member-details {
        display: none; }
    .standalone .donations .wrapper .row .btn:active,
    .standalone .donations .wrapper .row .btn.active {
      -webkit-box-shadow: none;
      box-shadow: none; }
    .standalone .donations .wrapper .row .button-group {
      margin-bottom: 1.5rem; }
      @media (min-width: 768px) {
        .standalone .donations .wrapper .row .button-group {
          display: flex;
          flex-flow: wrap; } }
      .standalone .donations .wrapper .row .button-group button {
        width: 100%;
        margin-bottom: 0.5rem;
        font-size: 1rem;
        border: 0;
        padding: 1rem; }
        @media (min-width: 768px) {
          .standalone .donations .wrapper .row .button-group button {
            width: 49%;
            margin-right: 0.5rem; }
            .standalone .donations .wrapper .row .button-group button:nth-child(even) {
              margin-right: 0; } }
        @media (min-width: 1024px) {
          .standalone .donations .wrapper .row .button-group button {
            width: 24%; }
            .standalone .donations .wrapper .row .button-group button:nth-child(even) {
              margin-right: 0.5rem; }
            .standalone .donations .wrapper .row .button-group button:last-child {
              margin-right: 0; } }
        .standalone .donations .wrapper .row .button-group button span {
          display: block; }
      .standalone .donations .wrapper .row .button-group.button-group-cc-type button {
        width: auto;
        padding: 1rem 2.4rem;
        height: auto;
        min-height: 6rem; }
        @media (min-width: 768px) {
          .standalone .donations .wrapper .row .button-group.button-group-cc-type button {
            padding: 1rem 1.6rem; } }
    .standalone .donations .wrapper .row .circled {
      display: inline-block;
      -webkit-border-radius: 50%;
      -moz-border-radius: 50%;
      border-radius: 50%;
      width: 1.429rem;
      height: 1.429rem;
      line-height: 1.429rem;
      text-align: center;
      font-size: 0.875rem; }
      .standalone .donations .wrapper .row .circled.blue {
        background-color: #3097b9;
        color: #fff; }
    .standalone .donations .wrapper .row.stage-form {
      display: none; }
      .standalone .donations .wrapper .row.stage-form form .payment-row {
        display: block;
        margin: 2rem 0 1.5rem; }
        .standalone .donations .wrapper .row.stage-form form .payment-row:before, .standalone .donations .wrapper .row.stage-form form .payment-row:after {
          content: " ";
          display: table; }
        .standalone .donations .wrapper .row.stage-form form .payment-row:after {
          clear: both; }
        @media (min-width: 768px) {
          .standalone .donations .wrapper .row.stage-form form .payment-row .payment-element {
            width: 46.5%;
            float: left;
            margin-right: 0.75rem; } }
        @media (min-width: 1024px) {
          .standalone .donations .wrapper .row.stage-form form .payment-row .payment-element {
            display: inline-block;
            width: 14.5rem;
            margin-right: 1rem; } }
        .standalone .donations .wrapper .row.stage-form form .payment-row .payment-element button {
          padding: 1.6rem 0;
          width: 100%;
          min-width: 14rem;
          margin-bottom: 1rem; }
          .standalone .donations .wrapper .row.stage-form form .payment-row .payment-element button span {
            display: block;
            font-size: 4rem;
            line-height: 1;
            margin: 0;
            padding: 0; }
            .standalone .donations .wrapper .row.stage-form form .payment-row .payment-element button span:first-child {
              font-size: 1.45rem; }
              @media (min-width: 768px) {
                .standalone .donations .wrapper .row.stage-form form .payment-row .payment-element button span:first-child {
                  font-size: 1.65rem; } }
            .standalone .donations .wrapper .row.stage-form form .payment-row .payment-element button span:last-child {
              margin-top: 0.667rem;
              font-size: 0.75rem; }
              @media (min-width: 768px) {
                .standalone .donations .wrapper .row.stage-form form .payment-row .payment-element button span:last-child {
                  font-size: 0.85rem; } }
        .standalone .donations .wrapper .row.stage-form form .payment-row .payment-element a {
          text-decoration: underline; }
      .standalone .donations .wrapper .row.stage-form form .frm-select#cc_expiry_month {
        min-width: 6rem; }
      .standalone .donations .wrapper .row.stage-form form .frm-submit {
        margin-top: 1rem; }
      .standalone .donations .wrapper .row.stage-form#stage-2 h3 {
        margin-bottom: 0.25rem; }
      .standalone .donations .wrapper .row.stage-form#stage-2 .frm-element .frm-input#donation_amount_number {
        max-width: 10rem; }
      .standalone .donations .wrapper .row.stage-form#stage-2 .frm-submit {
        margin-top: 1rem; }
      .standalone .donations .wrapper .row.stage-form#stage-3 #cc-address {
        display: none; }
      .standalone .donations .wrapper .row.stage-form#stage-3 .payment-cc .frm-element-check-first {
        margin-bottom: 1.75rem; }
      .standalone .donations .wrapper .row.stage-form#stage-3 #cc_card_details .frm-element .frm-select-wrap {
        max-width: 6rem; }
      .standalone .donations .wrapper .row.stage-form#stage-3 .about-payment:before, .standalone .donations .wrapper .row.stage-form#stage-3 .about-payment:after,
      .standalone .donations .wrapper .row.stage-form#stage-3 .w-about-payment:before,
      .standalone .donations .wrapper .row.stage-form#stage-3 .w-about-payment:after {
        content: " ";
        display: table; }
      .standalone .donations .wrapper .row.stage-form#stage-3 .about-payment:after,
      .standalone .donations .wrapper .row.stage-form#stage-3 .w-about-payment:after {
        clear: both; }
      .standalone .donations .wrapper .row.stage-form#stage-3 .about-payment .logos {
        margin-bottom: 0.75rem; }
        .standalone .donations .wrapper .row.stage-form#stage-3 .about-payment .logos > div {
          margin-bottom: 0.75rem; }
      .standalone .donations .wrapper .row.stage-form#stage-3 .about-payment p {
        font-size: 0.85rem; }
        .standalone .donations .wrapper .row.stage-form#stage-3 .about-payment p a {
          color: #3097b9; }
          .standalone .donations .wrapper .row.stage-form#stage-3 .about-payment p a span {
            font-weight: 600; }
      .standalone .donations .wrapper .row.stage-form#stage-4 h3 {
        margin-bottom: .25rem; }
      .standalone .donations .wrapper .row.stage-form#stage-4 a {
        text-decoration: underline; }
      .standalone .donations .wrapper .row.stage-form#stage-4 .frm-submit {
        margin-top: 1.25rem; }
    .standalone .donations .wrapper .row.full .stage-form {
      display: block; }
    .standalone .donations .wrapper .row .stage-finished#stage-5 a {
      text-decoration: underline; }
    .standalone .donations .wrapper .row .stage-finished#stage-5 #frame-ddm {
      display: block;
      width: 100%;
      max-width: 100%;
      border: 1px solid #ececec;
      height: 200px;
      padding: 1.5rem;
      overflow: auto;
      margin-bottom: 1.75rem; }
      .standalone .donations .wrapper .row .stage-finished#stage-5 #frame-ddm h1 {
        margin-bottom: 1rem; }

.standalone footer {
  padding-top: 0; }
  .standalone footer .colophon {
    padding: 1rem 0; }

.button.btn-sm,
.content .button.btn-sm,
#main.site-main .content .button.btn-sm {
  margin: 0.25rem 0;
  padding: 0.5rem 1rem;
  font-size: 0.77rem;
  text-transform: none;
  letter-spacing: 0;
  font-weight: 500; }

.frm-select--arrow-down {
  margin-left: 4px;
  margin-bottom: 2px;
  position: absolute;
  right: 0.5rem;
  top: 0.9rem;
  border-style: solid;
  border-width: 0.5rem 0.5rem 0 0.5rem;
  border-color: #0a0a0a transparent transparent transparent; }

.standalone .section .content a:not(.button) {
  color: #0a0a0a;
  display: inline-block;
  text-decoration: none;
  line-height: 1; }
  .standalone .section .content a:not(.button):after {
    content: '';
    display: block;
    border-bottom: 0.2rem solid #F6BA19;
    padding-bottom: 0.2rem; }

.about-payment {
  margin-top: 2rem; }
  .about-payment .logos .clearfix {
    display: flex;
    align-items: center;
    flex-direction: column; }
    @media (min-width: 768px) {
      .about-payment .logos .clearfix {
        flex-direction: row; } }
    .about-payment .logos .clearfix .mastercard-logo {
      max-width: 5rem; }
  .about-payment .logos .direct-debit-logo {
    max-width: 8rem; }

.button-group-cc-type button img.mastercard-logo {
  width: 100px;
  height: 100px; }
