/* With JavaScript disabled neither this curtain nor the mobile enhancement covers the site. */
.page-transition{display:none;position:fixed;inset:0;z-index:10000;overflow:hidden;align-items:center;justify-content:center;flex-direction:column;gap:24px;color:#ecebdc;pointer-events:none;isolation:isolate}
.page-transition::before,.page-transition::after{content:"";position:absolute;inset:0;pointer-events:none;will-change:transform}
.page-transition::before{z-index:-2;background:#c8d9a6}
.page-transition::after{z-index:-1;background:radial-gradient(ellipse at 50% 65%,#3f654d44,transparent 62%),repeating-linear-gradient(90deg,transparent 0,transparent calc(25% - 1px),#ffffff07 25%),#102b23}
.page-transition .transition-logo{display:block;width:76px;height:76px;filter:brightness(0) invert(93%) sepia(10%) saturate(314%) hue-rotate(20deg);transform-origin:center}
.page-transition .transition-logo img{width:100%;height:100%;object-fit:contain}
.page-transition .transition-label{font-family:var(--sans,sans-serif);font-size:10px;font-weight:500;letter-spacing:.24em;line-height:1.6;text-transform:uppercase;text-align:center;color:#ecebdc}
.page-transition .transition-line{display:block;width:124px;height:1px;overflow:hidden;background:#ecebdc29}
.page-transition .transition-line i{display:block;width:100%;height:100%;background:#c8d9a6;transform:scaleX(0);transform-origin:left}
.js.page-entering .page-transition{display:flex;animation:angora-reveal-safe .78s linear both}
.js.page-entering .page-transition::before{animation:angora-sheet-reveal .76s cubic-bezier(.76,0,.24,1) both}
.js.page-entering .page-transition::after{animation:angora-sheet-reveal .65s cubic-bezier(.76,0,.24,1) both}
.js.page-entering .transition-logo,.js.page-entering .transition-label,.js.page-entering .transition-line{animation:angora-identity-exit .4s cubic-bezier(.4,0,.8,.2) .19s both}
.js.page-entering .transition-line i{animation:angora-load-line .4s cubic-bezier(.2,.7,.2,1) both}
.js.page-leaving .page-transition{display:flex;pointer-events:all;animation:angora-curtain-safety .15s linear 2s forwards}
.js.page-leaving .page-transition::before{animation:angora-sheet-cover .34s cubic-bezier(.76,0,.24,1) both}
.js.page-leaving .page-transition::after{animation:angora-sheet-cover .36s cubic-bezier(.76,0,.24,1) .04s both}
.js.page-leaving .transition-logo,.js.page-leaving .transition-label,.js.page-leaving .transition-line{animation:angora-identity-enter .3s cubic-bezier(.16,1,.3,1) .14s both}
.js.page-leaving .transition-line i{animation:angora-load-line .35s cubic-bezier(.2,.7,.2,1) .17s both}
@keyframes angora-sheet-cover{from{transform:translate3d(0,100%,0)}to{transform:translate3d(0,0,0)}}
@keyframes angora-sheet-reveal{0%,25%{transform:translate3d(0,0,0)}100%{transform:translate3d(0,-101%,0)}}
@keyframes angora-reveal-safe{0%,97%{visibility:visible}98%,100%{visibility:hidden}}
@keyframes angora-curtain-safety{0%{opacity:1;visibility:visible;pointer-events:all}90%,100%{opacity:0;visibility:hidden;pointer-events:none}}
@keyframes angora-identity-enter{from{opacity:0;transform:translate3d(0,15px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@keyframes angora-identity-exit{from{opacity:1;transform:translate3d(0,0,0)}to{opacity:0;transform:translate3d(0,-35px,0)}}
@keyframes angora-load-line{from{transform:scaleX(0)}to{transform:scaleX(1)}}

/* Menu layout and colour are defined in site.css; this layer handles choreography. */
@media(max-width:900px){
  #mobile-menu{visibility:hidden;pointer-events:none;opacity:0;transform:translate3d(0,-14px,0);transition:opacity .28s ease,transform .38s cubic-bezier(.2,.8,.2,1),visibility 0s .38s;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
  #mobile-menu.is-open{visibility:visible;pointer-events:auto;opacity:1;transform:translate3d(0,0,0);transition:opacity .24s ease,transform .54s cubic-bezier(.16,1,.3,1),visibility 0s}
  #mobile-menu.is-closing{visibility:visible;pointer-events:none;opacity:0;transform:translate3d(0,-18px,0);transition:opacity .28s ease,transform .38s cubic-bezier(.4,0,.8,.2),visibility 0s .38s}
  #mobile-menu .mobile-nav-primary a{opacity:0;transform:translate3d(0,22px,0);transition:opacity .24s,transform .32s}
  #mobile-menu.is-open .mobile-nav-primary a{opacity:1;transform:translate3d(0,0,0);transition:opacity .48s ease,transform .65s cubic-bezier(.16,1,.3,1);transition-delay:calc(70ms + var(--menu-order,0)*55ms)}
  #mobile-menu .mobile-nav-primary a:nth-child(1){--menu-order:0}
  #mobile-menu .mobile-nav-primary a:nth-child(2){--menu-order:1}
  #mobile-menu .mobile-nav-primary a:nth-child(3){--menu-order:2}
  #mobile-menu .mobile-nav-primary a:nth-child(4){--menu-order:3}
  #mobile-menu .mobile-product-link{opacity:0;transform:translate3d(0,16px,0);transition:opacity .2s,transform .3s}
  #mobile-menu.is-open .mobile-product-link{opacity:1;transform:translate3d(0,0,0);transition:opacity .48s ease,transform .6s cubic-bezier(.16,1,.3,1);transition-delay:.23s}
  #mobile-menu.is-open .mobile-product-link:nth-child(2){transition-delay:.28s}
  #mobile-menu.is-open .mobile-product-link:nth-child(3){transition-delay:.33s}
}
@media(prefers-reduced-motion:reduce){
  .page-transition,.js.page-entering .page-transition,.js.page-leaving .page-transition{display:none!important;animation:none!important}
  #mobile-menu,#mobile-menu.is-open,#mobile-menu.is-closing,#mobile-menu .mobile-nav-primary a,#mobile-menu .mobile-product-link{transition:none!important;animation:none!important;transform:none!important}
}
@media print{.page-transition,#mobile-menu{display:none!important}}
