/* Tafuno Fullscreen Menu */
html.tf-menu-open{overflow:hidden}
.tf-fullscreen-menu{display:flex}
.tf-fullscreen-menu__toggle{--tf-bar:34px;position:relative;z-index:10001;display:inline-grid;place-items:center;min-width:44px;min-height:44px;padding:0;border:0;background:none;cursor:pointer}
.tf-fullscreen-menu__bars{position:relative;display:block;width:var(--tf-bar);height:10px}
.tf-fullscreen-menu__bars span{position:absolute;right:0;height:1px;background:currentColor;transition:top .5s cubic-bezier(.7,0,.3,1),width .5s cubic-bezier(.7,0,.3,1),transform .5s cubic-bezier(.7,0,.3,1)}
.tf-fullscreen-menu__bars span:first-child{top:0;width:100%}
.tf-fullscreen-menu__bars span:last-child{top:calc(100% - 1px);width:60%}
.tf-fullscreen-menu__toggle:hover .tf-fullscreen-menu__bars span:last-child{width:100%}
.is-open .tf-fullscreen-menu__bars span{top:calc(50% - .5px);width:100%}
.is-open .tf-fullscreen-menu__bars span:first-child{transform:rotate(45deg)}
.is-open .tf-fullscreen-menu__bars span:last-child{transform:rotate(-45deg)}

.tf-fullscreen-menu__overlay{position:fixed;inset:0;z-index:10000;display:grid;align-content:center;gap:3rem;padding:6rem clamp(1.5rem,6vw,6rem) 3rem;overflow-y:auto;overscroll-behavior:contain;visibility:hidden;opacity:0;transition:opacity .5s,visibility 0s .5s}
.is-open .tf-fullscreen-menu__overlay{visibility:visible;opacity:1;transition:opacity .5s}
.tf-fullscreen-menu__list,.tf-fullscreen-menu__list .sub-menu,.tf-fullscreen-menu__social{margin:0;padding:0;list-style:none}
.tf-fullscreen-menu__list{display:flex;flex-direction:column;gap:.25rem}
.tf-fullscreen-menu__list>li{opacity:0;transform:translateY(2rem);transition:opacity .6s,transform .8s cubic-bezier(.2,.7,.2,1)}
.is-open .tf-fullscreen-menu__list>li{opacity:1;transform:none;transition-delay:calc(.15s + var(--tf-i,0) * 70ms)}
.tf-fullscreen-menu__nav a,.tf-fullscreen-menu__social a{color:inherit;text-decoration:none}
.tf-fullscreen-menu__list>li>a{display:inline-block;vertical-align:middle}
.tf-fullscreen-menu__sub-toggle{display:inline-grid;place-items:center;width:44px;height:44px;margin-left:.5rem;padding:0;vertical-align:middle;border:0;background:none;color:inherit;cursor:pointer}
.tf-fullscreen-menu__sub-toggle svg{transition:transform .4s}
.tf-fullscreen-menu__sub-toggle[aria-expanded="true"] svg{transform:rotate(45deg)}
.tf-fullscreen-menu__list .sub-menu{display:grid;margin:.25rem 0 1rem}
.tf-fullscreen-menu__list .sub-menu[hidden]{display:none}
.tf-fullscreen-menu__list .sub-menu:not([hidden]){animation:tf-fsm-sub .4s ease-out}
.tf-fullscreen-menu__list .sub-menu a{display:inline-flex;align-items:center;min-height:44px}
.tf-fullscreen-menu__info{display:grid;gap:2rem;align-content:center}
.tf-fullscreen-menu__text>:last-child{margin-bottom:0}
.tf-fullscreen-menu__social{display:flex;flex-wrap:wrap;gap:0 1.5rem}
.tf-fullscreen-menu__social a{display:inline-flex;align-items:center;min-height:44px}
.tf-fullscreen-menu :focus-visible{outline:1px solid currentColor;outline-offset:4px}

:where(.tf-fullscreen-menu__toggle){color:var(--e-global-color-primary,#000)}
:where(.tf-fullscreen-menu__overlay){background-color:var(--e-global-color-tf_beige,#f8f6f5)}
:where(.tf-fullscreen-menu__nav){color:var(--e-global-color-primary,#000)}
:where(.tf-fullscreen-menu__list>li>a){font-family:var(--e-global-typography-primary-font-family,'Italiana'),serif;font-size:36px;font-weight:400;line-height:1.2;text-transform:uppercase}
:where(.tf-fullscreen-menu__nav a){transition:color .3s}
:where(.tf-fullscreen-menu__nav a:hover){color:var(--e-global-color-secondary,#6b6b6b)}
:where(.tf-fullscreen-menu__list .sub-menu a){font-family:var(--e-global-typography-accent-font-family,'Jost'),sans-serif;font-size:.75rem;letter-spacing:.2em;text-transform:uppercase}
:where(.tf-fullscreen-menu__info){font-family:var(--e-global-typography-text-font-family,'Jost'),sans-serif;color:var(--e-global-color-text,#1a1a1a)}
:where(.tf-fullscreen-menu__social){font-family:var(--e-global-typography-accent-font-family,'Jost'),sans-serif;font-size:.75rem;letter-spacing:.2em;text-transform:uppercase}

@keyframes tf-fsm-sub{from{opacity:0;transform:translateY(-.5rem)}}

@media (min-width:1025px){
	.tf-fullscreen-menu__overlay{grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:center}
	:where(.tf-fullscreen-menu__list>li>a){font-size:56px}
}
@media (prefers-reduced-motion:reduce){
	.tf-fullscreen-menu__overlay,.tf-fullscreen-menu__list>li,.tf-fullscreen-menu__bars span,.tf-fullscreen-menu__sub-toggle svg{transition:none}
	.tf-fullscreen-menu__list .sub-menu:not([hidden]){animation:none}
}
