/* CSS Variables for alpine-summit-marketing */
:root {
  --color-primary: #bb8a5a;
  --color-secondary: #171946;
  --color-text: #000000;
  --color-tertiary: #24463b;
  --color-quat: #4a4e69;
  --color-quaternary: #4a4e69; /* legacy alias, prefer --color-quat */
  --color-bkg-light: #e5e7e6;
  --color-light-bkg: #e5e7e6; /* legacy alias */
  --color-bkg-dark: #000000;
  --color-dark-bkg: #000000; /* legacy alias */
  --font-primary: IBM Plex Sans;
  --font-secondary: Cormorant;
  --image-alpine-logo-watermark: url(https://imagedelivery.net/xg_zbc51AJzf6SpCjZrqrA/0af2aa65-57ec-420e-12f8-defb310eb200/public);
  --image-alpine-logo-white: url(https://imagedelivery.net/xg_zbc51AJzf6SpCjZrqrA/9d458902-6dce-451d-c27f-6dea01446f00/public);
  --image-mask-1: url(https://imagedelivery.net/xg_zbc51AJzf6SpCjZrqrA/1defed7c-2434-435e-f282-fd27d983e400/public);
  --image-alpine-internal-split-mountains: url(https://imagedelivery.net/xg_zbc51AJzf6SpCjZrqrA/781a2eaa-c0c8-421d-a773-f61447965e00/public);
  --image-internal-split-mountains-mobile: url(https://imagedelivery.net/xg_zbc51AJzf6SpCjZrqrA/dffec47c-4b1f-401b-7d10-8b3927a64900/public);
}
:root {
  --alpine-primary: var(--color-primary);
  --alpine-secondary: var(--color-secondary);
  --alpine-text: var(--color-text);
  --alpine-tertiary: var(--color-tertiary);
  --alpine-quaternary: var(--color-quaternary);
  --alpine-light-bkg: var(--color-light-bkg);
  --alpine-dark-bkg: var(--color-dark-bkg);
  --alpine-font-primary: var(--font-primary);
  --alpine-font-secondary: var(--font-secondary);
}

/* normalize.scss - Compiled for live site */



article, aside, details, figcaption, figure, footer, header, hr, main, menu, nav, section, summary {
  display: block;
}

hr, sub, sup {
  position: relative;
}

body, figure {
  margin: 0;
}

button, hr, input, select {
  overflow: visible;
}

[type=checkbox], [type=radio], legend {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0;
}

html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 100%;
}

audio, canvas, progress, video {
  display: inline-block;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden], template {
  display: none;
}

a {
  background-color: transparent;
}

a:active, a:hover {
  outline-width: 0;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
}

b, strong {
  font-weight: 700;
}

dfn {
  font-style: italic;
}

h1 {
  font-size: 2em;
  margin: 0 0 .67em;
}

mark {
  background-color: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub, sup {
  font-size: 60%;
  line-height: 0;
}

sub {
  bottom: -.25em;
}

sup {
  top: -.45em;
}

img {
  border-style: none;
  max-width: 100%;
  display: block;
  margin: 0 auto;
}

svg:not(:root) {
  overflow: hidden;
}

code, kbd, pre, samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

hr {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
  border: 0;
}

button, input, select, textarea {
  font: inherit;
  line-height: initial;
  margin: 0;
}

optgroup {
  font-weight: 700;
}

button, select {
  text-transform: none;
}

[type=button], [type=reset], [type=submit], button {
  cursor: pointer;
}

[disabled] {
  cursor: default;
}

[type=reset], [type=submit], button, html [type=button] {
  -webkit-appearance: button;
  border: 0;
}

button::-moz-focus-inner, input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

button:-moz-focusring, input:-moz-focusring {
  outline: ButtonText dotted 1px;
}

fieldset {
  border: 1px solid silver;
  margin: 0 2px;
  padding: .35em .625em .75em;
}

legend {
  color: inherit;
  display: table;
  max-width: 100%;
  white-space: normal;
}

textarea {
  overflow: auto;
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  -webkit-appearance: textfield;
}

[type=search]::-webkit-search-cancel-button, [type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

address {
  font-style: normal;
}


.clearfix:before, .clearfix:after {
  display: table;
  content: " ";
  clear: both;
}

a[name] {
  display: block;
  cursor: auto !important;
}

p.has_target {
  margin: 0;
}


*, *::before, *::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

*::before, *::after, a {
  -webkit-transition: all .4s;
  transition: all .4s;
}

i::before {
  -webkit-transition: none;
  transition: none;
}

button {
  background-color: transparent;
}





.pt-mark-nbsp,
.unknown_pt_mark_nbsp,
.unknown__pt__mark__nbsp {
  white-space: nowrap;
  display: inline-block;
}

/* components.scss - Compiled for live site */


  


   .alpine-hero { position: relative; min-height: 90vh; display: flex; overflow: hidden; align-items: center;color: white;margin-top: 0; overflow-x: hidden;
    
    article {position: absolute;z-index: 5; max-width: 730px;width: 100%;margin: 0;text-align: center; padding: 2rem;top: 70%; left: 50%; transform: translate(-50%, -50%); 
      
      h1 { font-size: 4rem; font-weight: 600; margin-bottom: 1rem; line-height: 1.2; color: white; text-align: center; font-family: var(--font-secondary);
         small { display: block; font-size: 1.1rem; font-weight: 400; color: white; font-family: var(--font-primary); margin-bottom: 0.5rem; text-transform: uppercase;letter-spacing: 2px; }
      }
      p {font-family: var(--font-primary);font-size: 1.3rem; text-align: center; font-weight: 300;}
      .btn {max-width: 250px; margin: 2rem auto;}
    }
    figure { position: absolute; top: 0; left: 0; right: 0; bottom: 0; z-index: 1;
      img { width: 100%; height: 100%;object-fit: cover;      }
    }
    .alpine-hero__mountains {position: absolute; bottom: 0; left: 0;  z-index: 3; width: 100%; max-width: 100%;
      img {width: 100%; max-width: 100%;}
    }
  }
  @media (max-width: 768px) {
    .alpine-hero {
      article {top: 50%;}
    }
  }
  
  
  .alpine-why-choose {background: var(--color-secondary); width: 100%; position: relative; z-index: 10; border-bottom: 5px solid var(--color-primary);
    .alpine-why-choose__bg {  background-image: var(--bg-mobile); background-size: cover; background-position: center; background-repeat: no-repeat;}
    .alpine-why-choose__content {max-width: 1440px; margin: 0 auto; padding: 1.5rem 1rem;
      article {max-width: 1030px; margin: 1rem auto;
        h2 {color: white; font-family: var(--font-primary); text-transform: uppercase; text-align: center; font-size: 1.3rem; letter-spacing: .1em;}
        p {color: var(--color-primary); font-family: var(--font-secondary); color: var(--color-primary); text-align: center; font-weight: 600; font-size: 2.2rem;}
      }
      .alpine-why-choose__items {display: flex; align-items: flex-start; margin: 3rem auto; justify-content: space-evenly;
        .alpine-why-choose__item {flex: 0 1 365px; padding: 1rem; text-align: center;
          h3 {color: white; text-align: center; font-size: 1rem; letter-spacing: .1em; text-transform: uppercase; font-weight: 500; font-family: var(--font-primary); letter-spacing: .1em; margin: 2rem auto;}
          p {color: white; text-align: center; text-transform: none; font-size: 1\rem; letter-spacing: .1em; font-weight: 300; font-family: var(--font-primary); margin: 1rem auto;}
        }
      }
    }
  }
  @media (max-width: 768px) {
    .alpine-why-choose {
      .alpine-why-choose__content {padding-top: 10px;
        article, article h2 {margin-top: 0;}
      }
      .alpine-why-choose__items {flex-wrap: wrap;}
    }
  }
    
    
    .alpineSplit {display: flex; align-items: center; justify-content: space-evenly; max-width: 1270px; padding: 1rem; margin: 3rem auto;
      article {flex: 0 1 650px; padding: 1rem; text-align: left; order: 2;
        h2 { font-family: var(--font-secondary); color: var(--color-secondary); font-size: 4rem; text-align: left;
          small {font-size: 1.3rem; font-family: var(--font-primary); display: block;}
        }
        p {color: var(--color-text); text-align: left; font-family: var(--font-primary); font-weight: 300;}
      }
      figure { flex: 0 1 600px; padding: 1rem;
        img {  mask-image: var(--image-mask-1);  mask-size: cover; mask-position: center; mask-repeat: no-repeat;}
      }
    }

    @media (max-width: 768px) {
      .alpineSplit {flex-wrap: wrap; padding: 0;
        article {text-align: center;
          h2, p {text-align: center;}
          h2 {margin-top: 0;}
        }
        figure {order: 2;}
      }
    }

    
    .alpine-flip-boxes-split {display: flex; align-items: center; justify-content: space-evenly; max-width: 1350px; margin: -7rem auto 15rem; position: relative; z-index: 5;
      article {flex: 0 1 470px; padding: 1rem;
        h2 {color: var(--color-text); font-size: 4rem; margin: 1rem auto;}
        .btn {max-width: 290px; text-align: center;}
      }
      .alpine-flip-boxes-split__cards {flex: 0 1 715px; padding: 1rem; display: flex; flex-wrap: wrap; justify-content: space-evenly;
        .alpine-flip-boxes-split__card-wrapper {flex: 0 1 300px; margin: 1rem; perspective: 1000px; min-height: 240px;
          .alpine-flip-boxes-split__card { display: block;  height: 100%; min-height: 200px;  text-align: center;   text-decoration: none; color: inherit;
            .alpine-flip-boxes-split__card-inner {     position: relative;  display: block; width: 100%; transition: .3s all; height: 100%; transition: transform 1s ease; min-height: 200px; transform-style: preserve-3d;   
                  .alpine-flip-boxes-split__card-front, .alpine-flip-boxes-split__card-back { position: absolute; background: white; padding: 1.5rem; transition: .2s all; display: flex; flex-direction: column; justify-content: space-evenly;; border: 3px solid var(--color-quaternary); border-radius: 10px; inset: 0; backface-visibility: hidden; 
                    .alpine-flip-boxes-split__card-icon {margin-bottom: 1rem; display: block;}
                    .alpine-flip-boxes-split__card-title {color: var(--color-secondary); text-transform: uppercase; letter-spacing: .2em; font-size: 1.3rem;}
                  }
                  .alpine-flip-boxes-split__card-back {background-color: var(--color-quaternary); color: white;}
                  .alpine-flip-boxes-split__card-back {transform: rotateY(180deg);}
            }
            &:hover {
              .alpine-flip-boxes-split__card-inner {transform: rotateY(180deg); }
            }
            &:active {
              .alpine-flip-boxes-split__card-front, .alpine-flip-boxes-split__card-back {border-color: var(--color-primary);}
            }
          }
        }
      }
    }
    @media (max-width: 767px) {
      .alpine-flip-boxes-split { flex-wrap: wrap; margin-top: 0;
        article { text-align: center;
          h2, p {text-align: center;}
          .btn {margin: 0 auto;}
        }
        .alpine-flip-boxes-split__cards {
          .alpine-flip-boxes-split__card-wrapper { flex: 0 1 380px; margin: 1rem auto;
            .alpine-flip-boxes-split__card {
              .alpine-flip-boxes-split__card-inner { border: 3px solid var(--color-quaternary); transform: none; transition: .3s all; transform-style: flat; display: flex; flex-direction: column; min-height: auto; padding: 1.5rem .75rem; border-radius: 10px; }
              &:hover .alpine-flip-boxes-split__card-inner { transform: none; box-shadow: 2px 2px 5px 5px rgba(0,0,0,.25);}
              .alpine-flip-boxes-split__card-inner .alpine-flip-boxes-split__card-front, .alpine-flip-boxes-split__card-inner .alpine-flip-boxes-split__card-back { position: static; backface-visibility: visible; transform: none; flex: 0 0 auto; padding: 0; border: none; }
              .alpine-flip-boxes-split__card-inner .alpine-flip-boxes-split__card-back { background-color: transparent; color: var(--color-text); margin-top: 0.5rem; }
            }
          }
        }
      }
    }





    
    .alpine-callouts {width: 100%; max-width: 100%; background: var(--color-secondary); padding: 1rem; position: relative;
      .alpine-callouts__mountains {width: 100%; max-width: 100%; position: relative;
        img {width: 100%; max-width: 100%;}
      }
      .flex-ed {max-width: 1380px; margin: 2rem auto; justify-content: space-evenly; align-items: center;}
      .callouts-content-container {
        article {flex: 0 1 630px; padding: 1rem; text-align: left; order: 2;
          h2 {color: white; margin: 1rem auto; font-size: 3rem;}
          p {color: white; text-align: left; font-weight: 300;}
        }
        figure { flex: 0 1 600px; padding: 1rem; background-color: transparent;
          img {  mask-image: var(--image-mask-1);  mask-size: cover; mask-position: center; mask-repeat: no-repeat;}
        }
      }
      .callouts-container { align-items: stretch; flex-wrap: wrap; justify-content: center;
        .callout-item {padding: 1rem 2rem; border-radius: 20px; border: 1px solid white; flex: 0 1 635px; margin: .4rem; display: flex; align-items: center; justify-content: space-evenly;
          div {margin-left: 1.5rem; text-align: left;
            h3 {color: white; font-family: var(--font-primary); letter-spacing: .1em; font-size: 1rem; font-weight: 500; text-transform: uppercase; margin: 1rem auto;}
            p {font-weight: 300; color: white;}
          }
        }
      }

      .alpine-callouts__mountains--top {position: absolute; top: 3px; left: 0; transform: translateY(-100%);}
      .alpine-callouts__mountains--bottom {position: absolute; bottom: 3px; left: 0; transform: translateY(100%);}
    }
    @media (max-width: 767px) {
      .alpine-callouts { padding: 0; width: 100%; padding-bottom: 4rem;
        .flex-ed {flex-wrap: wrap;}
        .callouts-content-container { margin: 0 auto;
          article { order: -1; text-align: center; padding-top: 0;
            h2, p {text-align: center;}
            h2 {margin-top: 0;}
          }
        }
        .callouts-container {padding: 1rem;
          .callout-item {flex-wrap: wrap; justify-content: center; padding: 1.5rem; margin: 1rem auto;
            div {margin: 0 auto;
              h3, p {text-align: center;}
            }
          }
        }
      }
      .alpine-callouts__mountains--bottom {display: none;}
    }



    

    .alpine-infographic {padding: 24rem 0 9rem; width: 100%; max-width: 100%;
      .alpine-infographic-container {max-width: 1450px; margin: 1rem auto; position: relative;
        .alpine-infographic-box { position: relative; max-width: 750px; width: 100%; z-index: 3; padding: 2rem 5rem; margin-left: auto; margin-right: 0;
          &:before {width: 100%; height: 100%; background: var(--color-tertiary); opacity: .8; z-index: -1; content: ''; position: absolute; top: 0; left: 0;}
          h2 {color: white; font-size: 4rem; margin: 1rem auto; text-align: left;}
          p {color: white; font-size: 1.3rem; font-weight: 300;}
          .alpine-infographic-list { padding: 0; margin: 1rem auto; text-align: left; list-style: none;
            .alpine-infographic-item {display: flex; align-items: center; justify-content: space-between; margin: 1rem auto;
              .alpine-infographic-number {color: white; font-size: 8rem; line-height: 1; margin-right: 1.5rem; font-family: var(--font-secondary);}
              .alpine-infographic-content {flex: 0 1 480px; text-align: left;
                h3 {color: white; text-transform: uppercase; letter-spacing: .1em; margin: 1rem auto; font-size: 1rem; font-weight: 600;}
                p {font-size: 1rem; letter-spacing: .1em;}
              }
            }
          }
        }
      }
    }

    @media (max-width: 767px) {
      .alpine-infographic { padding: 9rem 1.5rem 0 0; width: 100%;
        .alpine-infographic-container {max-width: 100%; margin-bottom: 0;
          .alpine-infographic-box { padding: 3rem 2rem; max-width: 100%;
            .alpine-infographic-list {
              .alpine-infographic-item {flex-wrap: wrap;
                .alpine-infographic-number {margin-right: 0; margin-bottom: 1rem; font-size: 6rem;}
              }
            }
          }
        }
      }
    }


    

    .alpine-faq-header {max-width: 100%; width: 100%; background-color: var(--color-primary); padding: 2rem 1.5rem; cursor: pointer; text-align: center;
      .alpine-faq-header-container {max-width: 500px; margin: 1rem auto; padding-right: 2rem; text-align: center; position: relative;
        h2 {color: white; margin: 1rem auto; font-size: 2rem; transition: .3s all; font-family: var(--font-secondary)}
        span {color: white; text-align: center; transition: .3s all; font-family: var(--font-primary); font-weight: 300;}
        img {position: absolute; top: 50%; transform: translateY(-50%) rotate(180deg); right: 0; transition: 1s all;}
        .alpine-faq__expand-hint-icon[data-open="true"] img {
          transform: translateY(-50%) rotate(0);
        }
      }
      &:hover .alpine-faq-header-container {
        h2, span {color: var(--color-secondary);}
      }
    }
    #alpine-faq-list {max-width: 720px; width: 100%; margin: 3rem auto 0; padding: 0; position: relative;
      h3 {font-weight: 500; font-size: 1.4rem; letter-spacing: .1em; margin: 1rem auto; text-align: left; font-family:  var(--font-primary)}
      p {font-weight: 300; font-size: 1.4rem; font-family: var(--font-primary)}
      .alpine-faq__item {padding: 2rem 3rem; text-align: left; border-bottom: 1px solid var(--color-text);
        &:last-of-type {border-bottom: none;}
        .alpine-faq__question {text-align: left; padding: 1rem 0; transition: .3s all;  border: none; background: none; cursor: pointer; font-weight: 600; letter-spacing: .1em;
          &:hover {color: var(--color-primary);}
          .alpine-faq__question-text {text-align: left;}
        }
      }
    &::after { content: ''; position: absolute; max-width: 1000px; width: 100%; height: 95%; top: 0; left: 50%; transform: translateX(-50%); opacity: 0.050; z-index: 1; background-image: var(--image-alpine-logo-watermark); background-size: contain; background-repeat: no-repeat; background-position: center 50px; pointer-events: none;
    }
    }

    
    .alpine-faq__list {overflow: hidden;max-height: 0;transition: max-height 1s ease;}
    .alpine-faq__list[data-open="true"] {max-height: 3000px;}
    .alpine-faq__expand-hint--tap {display: none;}
    .alpine-faq__expand-hint--click {display: inline;}
    .alpine-faq__question {cursor: pointer;-webkit-tap-highlight-color: transparent;}
    .alpine-faq__answer-wrapper {overflow: hidden;max-height: 0;transition: max-height 0.3s ease;}
    .alpine-faq__answer-wrapper[data-open="true"] {max-height: 2000px;}

    
    @media (max-width: 767px) {
      .alpine-faq__expand-hint--click {
        display: none;
      }
      .alpine-faq__expand-hint--tap {
        display: inline;
      }
    }
      

  
  
  
  
  
  #banner { position: relative; min-height: 60vh; display: flex; align-items: center; color: white; margin-top: 0; border-bottom: 5px solid var(--color-primary);
    article { position: absolute; z-index: 3; max-width: 1000px; width: 100%; margin: 0; text-align: left; padding: 6rem 1.5rem 2rem; bottom: 0; transform: translateX(-50%); left: 50%;
      &:after {content: ''; width: 100vw; height: 100%; position: absolute; z-index: -1; background:  linear-gradient(to top, var(--color-tertiary) 70%, transparent 100%); opacity: .75; top: 0; left: 50%; transform: translateX(-50%);}
      h1 {font-size: 4.5rem;font-weight: 600; margin-bottom: 1rem; line-height: 1.2;color: white;text-align: center;font-family: var(--font-secondary);
        small { display: block;font-size: 1rem;font-weight: 600;color: white;font-family: var(--font-primary);margin-bottom: 0.5rem;text-transform: uppercase;letter-spacing: .1em;}
      }
    }
    
    figure { position: absolute; top: 0; left: 0; right: 0; bottom: 0; z-index: 1;
      img { width: 100%; height: 100%; object-fit: cover; }
    }
    
  }

  @media (max-width: 1024px) {
    #banner {
      article { left: 0; bottom: 0; width: 100%; transform: none;
        h1 {font-size: 3.5rem;}
      }
    }
  }
  
  @media (max-width: 768px) {
    #banner {min-height: 55vh;
      article {
        h1 {
          text-align: center;
        }
      }
    }
  }
  @media (max-width: 600px) {
    #banner {
      article {
        h1 { font-size: 3rem;}
      }
    }
  }
  
  
  
  .alpineSplitSecondary { max-width: 1600px; margin: 50px auto; align-items: center; position: relative; z-index: 3;padding: 3rem 0; background: white;
       .split-container {margin-right: 3rem; margin-left: 2rem;}

    &:after {content: ''; height: 100%; position: absolute; top: 0; z-index: -2; right: 3rem; border-top-right-radius: 40px; left: -70vw; background-color: white; background-image: var(--image-alpine-internal-split-mountains); background-position-x: right; background-position-y: bottom; background-size: contain; background-repeat: no-repeat; box-shadow: 4px 6px 10px 2px rgba(0,0,0,.25);}
    &:before {content: ''; height: 100%; position: absolute; top: 0; width: 700px; z-index: -1;  left: -400px;background: linear-gradient(to right, white 50%, transparent 100%);}
    
    @media (max-width: 768px) {
      overflow-x: hidden;
      &:after { left: 0; right: 0; }
      &:before { left: 0; width: 100%; }
    }
    
    .flex-ed {max-width: 1400px; margin: 0 auto; justify-content: space-between;}
    h2 {max-width: 1400px; margin: 1.5rem auto; color: var(--color-primary); font-size: 4rem;}
    article { padding: 0 2rem; order: 2; flex: 0 1 56%;
      p { font-size: 1.2rem; margin-bottom: 1.5rem; line-height: 1.7; }
      ul { list-style: none; padding: 0; margin: 2rem 0;
        li { padding: 0.5rem 0; padding-left: 2rem; position: relative;
          p {margin: 0;}
          &:before { content: "\2713"; position: absolute; left: 0; font-size: 1.8rem; color: var(--color-tertiary); top: 5px; font-weight: bold;}
        }
      }
      
    }
    
    figure { padding: 0; order: 1; flex: 0 1 40%;
      img { width: 100%; height: auto; margin-top: 1.2rem; mask-image: var(--image-mask-1);  mask-size: cover; mask-position: center; mask-repeat: no-repeat;}
    }

    &.altSplit { background: white; 
      &:after{display: none;}
      
      article { order: 1;}
      figure { order: 2;}
    }
  }
  main > div:nth-child(3n+1) .alpineSplitSecondary figure img {
    mask-image: var(--image-mask-1);
  }
  main > div:nth-child(3n+2) .alpineSplitSecondary figure img {
    mask-image: var(--image-mask-1);
  }
  main > div:nth-child(3n+3) .alpineSplitSecondary figure img {
    mask-image: var(--image-mask-1);
  }


  @media (max-width: 768px) {
    .alpineSplitSecondary { box-shadow: 4px 6px 10px 2px rgba(0,0,0,.25); border-top-right-radius: 40px;
      .split-container {margin: 0 .5rem;}
      &:before {height: 15%; top: 0; width: 100%; left: 0; bottom: auto; right: auto; border-top-right-radius: 40px; background: linear-gradient(to bottom, white 50%, transparent 100%);}
      &:after {right: 0; background-image: var(--image-internal-split-mountains-mobile); opacity: .55; background-size: cover; box-shadow: none;}
      h2 {text-align: center; font-size: 3rem;}
      .flex-ed {flex-wrap: wrap;
        article { flex: 0 1 100%; padding: 0 1rem;
          p {text-align: center;}
          ul li, ul li p {text-align: left;}
        }
        figure {order: 2; flex: 0 1 100%;}
      }
      &.altSplit {box-shadow: none; border-radius: 0;}
    }
  }

  
  
  
  .alpineBlock {
    padding: 5rem 0;
    background: white;
    
    article {
      max-width: 800px;
      margin: 0 auto;
      text-align: center;
      padding: 0 2rem;
      
      h2 {
        font-size: 2.5rem;
        font-weight: 700;
        color: var(--color-primary);
        margin-bottom: 2rem;
      }
      
      p {
        font-size: 1.1rem;
        color: white;
        margin-bottom: 1.5rem;
        line-height: 1.7;
      }
      
      ul {
        list-style: none;
        padding: 0;
        margin: 2rem 0;
        
        li {
          padding: 0.5rem 0;
          padding-left: 2rem;
          position: relative;
          
          &:before {
            content: "\2713";
            position: absolute;
            left: 0;
            color: var(--color-tertiary);
            font-weight: bold;
          }
        }
      }
      
      button, a {
        display: inline-block;
        background: var(--color-tertiary);
        color: white;
        padding: 1rem 2rem;
        border: none;
        border-radius: 20px;
        font-size: 1.1rem;
        font-weight: 600;
        text-decoration: none;
        cursor: pointer;
        transition: .3s all;
        margin-top: 1rem;
        
        &:hover {
          background: var(--color-secondary);
          transform: translateY(-2px);
        }
      }
    }
  }
  
  
  
  .alpineIntroText { padding: 3rem 0; background: white; position: relative;
    
    article { max-width: 1300px; margin: 0 auto; padding: 0 2rem; position: relative; z-index: 3;
      
      p { font-size: 1.5rem; color: var(--color-text); font-family: var(--font-secondary); font-weight: 400; margin-bottom: 1.5rem; line-height: 1.3; text-align: center;
      }
      button, a { display: inline-block; background: var(--color-tertiary); color: white; padding: 1rem 2rem; border: none; border-radius: 20px; font-size: 1.1rem; font-weight: 600; text-decoration: none; cursor: pointer; transition: .3s all; margin-top: 1rem;
        &:hover {
          background: var(--color-secondary);
          transform: translateY(-2px);
        }
      }
  
    }
    &::after { content: ''; position: absolute; max-width: 1000px; width: 100%; height: 95%; top: 50%; left: 50%; transform: translate(-50%, -50%); opacity: 0.075; z-index: 1; background-image: var(--image-alpine-logo-watermark); background-size: contain; background-repeat: no-repeat; background-position: center; pointer-events: none;
    }
  }

  @media (max-width: 768px) {
    .alpineIntroText { padding: 3rem 0 1.5rem;
      article {text-align: center; padding: 0 1.5rem;
        p {text-align: center;}
      }
    }
  }
  
  

  .alpine-services-links { max-width: 1250px; margin: 2rem auto 4rem; padding: 1rem;
    article {
      p {text-align: left; font-family: var(--font-secondary); font-size: 1.5rem; font-weight: 500;}
    }
    .flex-ed {margin: 2rem 0; justify-content: space-evenly; align-items: center; flex-wrap: wrap;
      .service-link {flex: 0 1 270px; margin: .5rem; padding: 1rem; transition: .3s all; text-decoration: none; border: 1px solid var(--color-secondary); border-radius: 10px;
        p {text-transform: uppercase; transition: .3s all; color: var(--color-secondary); text-decoration: none; font-size: 1rem; letter-spacing: .1em; margin: 0; line-height: 1.1rem;}
        img {margin: 1rem 0 0;}
        &:hover {background: var(--color-secondary);
          p {color: white;}
          img {filter: grayscale(100%) invert(100%) ;}
        }
      }
    }
  }

  @media (max-width: 768px) {
    .alpine-services-links {margin: 2rem auto;
      article p {text-align: center;}
    }
  }

  
  
  .alpine-form { padding: 6rem 1rem; position: relative;
    &:after, &:before {content: ''; width: 100%; height: 100px; top: 0; left: 0; z-index: 5; position: absolute; background-image: linear-gradient(to bottom, white, transparent);}
    &:after {top: auto; bottom: 0; background-image: linear-gradient(to top, white, transparent);}
    .white-box-container {max-width: 95vw; margin: 5rem auto; width: 1000px; background: rgba(255,255,255,.6); padding: 2rem 3rem; border-radius: 10px;
      h2 {color: var(--color-text); text-align: center;}
      .contact-form-container {width: 90%; margin: 1.5rem auto;}
    }
  }

  @media (max-width: 768px) {
    .alpine-form { padding: 6rem .25rem;
      .white-box-container {padding:2rem 1rem; max-width: 95%; width: 100%;
        h2 {font-size: 2.25rem;}
        .contact-form-container {width: 100%;}
      }
    }
  }

    
     .alpine-email-form { padding: 5rem 1rem 7rem; position: relative;
      &:after, &:before {content: ''; width: 100%; height: 100px; top: 0; left: 0; z-index: 5; position: absolute; background-image: linear-gradient(to bottom, white, transparent);}
      &:after {top: auto; bottom: 0; background-image: linear-gradient(to top, white, transparent);}
      .email-container {max-width: 600px; margin: 20px auto; text-align: center;
        h2 {color: var(--color-secondary); font-size: 48px; font-family: var(--font-secondary);
          small {text-transform: uppercase; display: block; font-family: var(--font-primary); font-size: 16px;}
        }
      }
    }
    .home-page .alpine-email-form { padding: 3rem 1rem 7rem; position: relative;}


    

     .alpine-call-to-action {background: var(--color-tertiary); width: 100%; padding: 3rem 2rem; margin-top: 6rem; position: relative;
        &:after {content: ''; width: 100%; height: 50px; top: -50px; left: 0; z-index: 5; position: absolute; background-image: linear-gradient(to top, var(--color-tertiary), transparent);}
  
      article {margin: 2rem auto; max-width: 720px; width: 100%; padding: 1rem; text-align: center;
        h2 {color: white; text-align: center; margin-top: 0;}
        p {color: white; text-align: center; margin: 2.5rem auto 3rem; font-size: 1.3rem; font-weight: 300}
        .btn {margin: 1rem auto;}
      }
    }

    




  

  
  
  

/* main.scss - Compiled for live site */

.flex-ed {display: flex; justify-content: center; flex-wrap: nowrap;}
.animate-reveal { opacity: 0; transform: translateY(20px); transition: opacity 0.5s ease-out, transform 0.5s ease-out;}
.animate-reveal.is-visible { opacity: 1;}

.animate-reveal.fade-in {opacity: 0;transition: opacity 0.5s ease-out;}
.animate-reveal.fade-in.is-visible {opacity: 1;}

.animate-reveal.fade-from-top {opacity: 0;transform: translateY(-24px);transition: opacity 0.5s ease-out, transform 0.5s ease-out;}
.animate-reveal.fade-from-top.is-visible {opacity: 1;transform: translateY(0);}

.animate-reveal.fade-from-bottom {opacity: 0;transform: translateY(24px);transition: opacity 0.5s ease-out, transform 0.5s ease-out;}
.animate-reveal.fade-from-bottom.is-visible {opacity: 1;transform: translateY(0);}

div:has( > .hide-section) {display: none!important;}

html {font-size: 16px;}
body {
    font-family: var(--font-primary, sans-serif);
    line-height: 1.25;
    font-size: 16px;
    color: var(--color-text);
    background-color: #fff;
    max-width: 100vw;
    overflow-x: hidden;
  }
  p {margin: 1rem auto; font-family: var(--font-primary); font-weight: 300; font-size: 1.15rem;}
  h2 {color: var(--color-primary); font-size: 3rem; font-family: var(--font-secondary); font-weight: 600; line-height: 1; margin: 1rem auto;}
  h3 {font-family: var(--font-primary); font-weight: 500;}
  
  .container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 2rem;
  }
  
  .btn {border-radius: 10px; max-width: 450px; display: block; font-size: 1rem; text-decoration: none; padding: 1rem; width: 100%; color: #fff; letter-spacing: .2em; font-weight: 500; border: 3px solid var(--color-primary); transition: .3s all; text-transform: uppercase; background-image: linear-gradient(var(--color-primary), color-mix(in srgb, var(--color-primary) 80%, black));
    &:hover { background-image: linear-gradient(color-mix(in srgb, var(--color-primary) 70%, black), color-mix(in srgb, var(--color-primary) 50%, black));}
    &:active {border-color: white; }
}


  
  .alpine-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1000;
    background: rgba(0, 0, 0, 0.3);
    color: white;
    

    .alpine-header-inner {
      display: flex;
      align-items: center;
      justify-content: space-between;
      background-repeat: no-repeat;
      padding: 1rem 2rem;
      min-height: 70px;
      backdrop-filter: blur(10px);
    }
    
    .alpine-header-logo {
      display: flex;
      align-items: center;
      gap: 12px;
      position: relative;
      text-decoration: none;
      color: inherit;
      margin-right: auto;
      &:after {content: ''; background-image: var(--image-alpine-logo-white); background-size: contain; width: 100%; height: 100%; position: absolute; z-index: 3; transition: 3s all; top: 0; left: 0;}

      
      img {
        height: 45px;
        width: auto;
        opacity: 0;
        transition: all 0.3s ease;
      }
      
      &:hover img {
        transform: scale(1.05);
      }
    }
    
    
    .alpine-header-nav { margin-right: 2rem;
      ul {
        display: flex;
        gap: 2.5rem;
        list-style: none;
        padding: 0;
        margin: 0;
        
        li {
          position: relative; padding: .5rem 0;
          
          a {
            color: white;
            text-decoration: none;
            font-weight: 500;
            transition: all 0.3s ease;
            padding: 0.5rem 0;
            
            &:hover {
              color: var(--color-primary);

            }
          }
          &:hover {ul {display: block;}}
          ul {position: absolute; width: 300px; z-index: 100; top: 33px; left: 0; display: none;
            li { width: 100%; padding: 0;
              a {padding: .5rem 1rem; background: white; margin: 0; display: block; color: var(--color-text); transition: .5s all; width: 100%;
                &:hover {color: var(--color-primary); background: var(--color-tertiary);}
              }
            }

          }
        }
      }
    }
    
    .alpine-header-btn {
      color: white; text-align: center;
      border-radius: 10px; max-width: 190px; display: block; font-size: 1rem; text-decoration: none; padding: 1rem; width: 100%; letter-spacing: .2em; font-weight: 500; border: 3px solid var(--color-primary); transition: .3s all; text-transform: uppercase;
      background: var(--color-primary);
      text-decoration: none;
      box-shadow: none;
      transition: all 0.3s ease;
      
      &:hover {
        background: var(--color-secondary);
      }
    }




    &.scrolled {
      background: white;
      box-shadow: 0px 8px 15px rgba(0, 0, 0, 0.3);
      backdrop-filter: none;
      color: var(--color-text);
      .alpine-header-logo {
        img {opacity: 1;}
        &:after {opacity: 0;}
      }
      .alpine-header-nav ul li a {color: var(--color-text);}
    }
  }


  @media (max-width: 768px) {
    .alpine-header {
      .alpine-header-inner { padding: 1rem 1.25rem; flex-wrap: wrap;}

      
      .alpine-header-nav,.alpine-header-btn-desktop {display: none !important;}

      
      .alpine-header-menu-toggle { display: flex; flex-direction: column; justify-content: center; gap: 5px; width: 44px; height: 44px; padding: 0; border: none; background: transparent; cursor: pointer; color: inherit; margin-left: auto; transition: transform 0.2s ease;
        .alpine-header-menu-toggle-line { display: block; width: 24px; height: 2px; background: currentColor; border-radius: 1px; transition: transform 0.25s ease, opacity 0.2s ease;}
      }

      
      &.menu-open .alpine-header-menu-toggle {
        .alpine-header-menu-toggle-line:nth-child(1) { transform: translateY(7px) rotate(45deg);}
        .alpine-header-menu-toggle-line:nth-child(2) { opacity: 0;}
        .alpine-header-menu-toggle-line:nth-child(3) { transform: translateY(-7px) rotate(-45deg);}
      }

      
      .alpine-header-menu-overlay { position: fixed; inset: 0; top: 70px; background: rgba(0, 0, 0, 0.4); opacity: 0; visibility: hidden; transition: opacity 0.25s ease, visibility 0.25s ease; z-index: 999;}
      &.menu-open .alpine-header-menu-overlay { opacity: 1; visibility: visible;}

      
      .alpine-header-menu-close { display: none; flex-shrink: 0; align-self: flex-end; width: 44px; height: 44px; margin: 0 1rem 0.5rem; padding: 0; border: none; background: transparent; color: var(--color-text); cursor: pointer; align-items: center; justify-content: center; border-radius: 4px; transition: background 0.2s ease, color 0.2s ease;
        &:hover { background: var(--color-tertiary, #f0f0f0); color: var(--color-primary);  }
      }
      .alpine-header-menu-close-x { position: relative; width: 20px; height: 20px; display: block; }
      .alpine-header-menu-close-line { position: absolute; left: 50%; top: 50%; width: 20px; height: 2px; margin-left: -10px; margin-top: -1px; background: currentColor; border-radius: 1px;
        &:first-child { transform: rotate(45deg); }
        &:last-child {transform: rotate(-45deg);}
      }

      
      .alpine-header-menu-panel { position: fixed; top: 70px; right: 0; bottom: 0; width: min(320px, 85vw); height: calc(100vh - 70px); max-height: calc(100vh - 70px); background: white; color: var(--color-text); box-shadow: -4px 0 20px rgba(0, 0, 0, 0.15); z-index: 1001; display: flex; flex-direction: column; padding: 1.5rem 0; transform: translateX(100%); transition: transform 0.3s ease; overflow-y: auto;
        &:after {right: 0; top: 0; width: 100%; height: 100%; content: ''; background-image: var(--image-internal-split-mountains-mobile); opacity: .75; position: absolute; z-index: -1; background-size: cover; box-shadow: none;}
      }
      &.menu-open .alpine-header-menu-panel { transform: translateX(0); }

      
      .alpine-header-mobile-nav { flex: 1 1 auto; padding: 0 1rem; }
      .alpine-header-mobile-nav-list { list-style: none; margin: 0; padding: 0; }
      .alpine-header-mobile-nav-item { margin: 0; border-bottom: 1px solid var(--color-border, rgba(0, 0, 0, 0.08));
        &.has-children .alpine-header-mobile-nav-row { display: flex; align-items: center; justify-content: space-between; gap: 0.75rem;}
      }
      .alpine-header-mobile-nav-row { padding: 0.75rem 0;}
      .alpine-header-mobile-nav-label { flex: 1; min-width: 0;
        a { color: var(--color-text); text-decoration: none; font-weight: 500; display: block;
          &:hover {color: var(--color-primary);}
        }
        span { color: var(--color-text); font-weight: 500; }
      }

      
      .alpine-header-mobile-nav-toggle { flex-shrink: 0; width: 36px; height: 36px; padding: 0; border: 2px solid var(--color-text); background: transparent; cursor: pointer; display: flex; align-items: center; justify-content: center; border-radius: 4px; color: var(--color-text); transition: background 0.2s ease, border-color 0.2s ease;
        &:hover {background: var(--color-tertiary, #f0f0f0);border-color: var(--color-primary);
          .alpine-header-mobile-nav-toggle-box {color: white;}
        }
        .alpine-header-mobile-nav-toggle-box {width: 10px; height: 10px; border: 2px solid currentColor; border-top: none; border-left: none; transform: rotate(45deg); margin-bottom: 4px; transition: transform 0.25s ease;}
      }
      .alpine-header-mobile-nav-item.is-expanded .alpine-header-mobile-nav-toggle .alpine-header-mobile-nav-toggle-box {transform: rotate(-135deg);margin-bottom: -4px;}
      .alpine-header-mobile-subnav {
        list-style: none; margin: 0; padding: 0 0 0 1rem; border-left: 2px solid var(--color-border, rgba(0, 0, 0, 0.08)); margin-left: 0.5rem; overflow: hidden;
        &[hidden] {display: none;}
        .alpine-header-mobile-nav-item {border-bottom: none;}
        .alpine-header-mobile-nav-row {padding: 0.5rem 0;}
        .alpine-header-mobile-nav-label a,.alpine-header-mobile-nav-label span {font-size: 0.95em;}
      }

      
      .alpine-header-btn-mobile {margin: 1rem 1rem 0;text-align: center;display: block;}
    }
  }

  
  @media (min-width: 769px) {
    .alpine-header .alpine-header-menu-toggle,
    .alpine-header .alpine-header-menu-overlay,
    .alpine-header .alpine-header-menu-panel {
      display: none !important;
    }
  }
  
  

    
    footer {margin: 0; width: 100%;}
     .alpine-footer {
      background: white;
      padding: 5rem 0;
      position: relative;
      text-align: center;

      .flex-ed {max-width: 1300px; margin: 2rem auto; justify-content: space-evenly; align-items: center;
        article { text-align: left; padding: 1.5rem;
          h2 {text-align: left; color: var(--color-secondary); font-size: 4.5rem;}
          p {text-align: left;}
          .footer-logo {margin: 3rem auto;}
        }
        .center-container {
          ul {list-style: none; padding-left: 0;
            li a{color: white; text-decoration: none; font-size: 16px; font-weight: 700; margin: 20px auto; line-height: 2;
              &:hover {color: var(--color-primary);}
            }
          }
        }
        .right-container { padding: 1.5rem;
          ul {list-style: none; margin: 2rem auto; padding: 0; text-align: left; padding: 2rem; border-radius: 10px; background: rgba(255,255,255,.9);
            li { text-align: left; position: relative;
              a{color: var(--color-text); transition: .3s all; position: relative; font-size: 1.6rem; font-weight: 500; line-height: 1.3; padding: .5rem 0; text-align: left; text-decoration: none;
                &:hover {color: var(--color-primary);}
              }
            }
          }
          .btn {margin: 1rem auto;}
        }
      }

      &:after {
        content: ''; width: 100vw; height: 100px; top: 0; left: 0; z-index: 5; position: absolute; background-image: linear-gradient(to bottom, white, transparent);
      }
    }
    .dark-green-bottom .alpine-footer:after { background-image: linear-gradient(to bottom, var(--color-tertiary), transparent);}
    .copy {
      width: 100%;
      text-align: center;
      background: var(--color-tertiary);
      color: var( --color-primary);
      margin: 0 auto;
      padding: 1rem 2rem;
      
    }
  
  
  
  
  @media (max-width: 768px) {
    .alpine-header {
      
      .alpine-header-nav {
        ul {
          flex-direction: column;
          gap: 1rem;
          text-align: center;
        }
      }
      
      .alpine-header-btn {
        margin: 1rem auto;
      }
    }

    .alpine-footer .flex-ed {flex-wrap: wrap;
      .center-container {flex: 0 1 100%;}
    }  
  }
  
  @media (max-width: 480px) {
    .container {
      padding: 0 1rem;
    }
  } 

 