/* Approved woven menu: fabric, perimeter stitching and thread lettering. */
.fabric-button{--fabric:#292b2a;--thread:#b8b7ad;--edge:#080a09;position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:16px 21px!important;border:1px solid var(--edge)!important;border-radius:5px;background-color:var(--fabric);background-image:repeating-linear-gradient(0deg,#0002 0 1px,transparent 1px 3px),repeating-linear-gradient(90deg,#ffffff0b 0 1px,#0003 1px 2px,transparent 2px 4px),repeating-linear-gradient(132deg,#ffffff05 0 2px,#0002 2px 4px,transparent 4px 7px),linear-gradient(160deg,#ffffff12,transparent 45%,#0003);background-size:3px 3px,4px 4px,7px 7px,100% 100%;box-shadow:inset 0 1px 1px #ffffff24,inset 0 -2px 3px #0009,0 2px 3px #17201925;transition:translate .2s,box-shadow .2s;white-space:nowrap;text-decoration:none}
.fabric-button:before{content:'';position:absolute;inset:5px;border:1px dashed var(--thread);border-radius:2px;opacity:.68;pointer-events:none;filter:drop-shadow(0 1px 0 #0009);transition:border-color .2s,opacity .2s}
.fabric-button:after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;box-shadow:inset 2px 0 3px #fff1,inset -2px 0 3px #0005}
.fabric-button .thread-label{position:relative;font-family:Bahnschrift,'Segoe UI',Arial,sans-serif;font-weight:550;font-size:13px;letter-spacing:.25px;line-height:1.2;color:#e0dfd5;background-image:repeating-linear-gradient(112deg,#efede2 0 .7px,#b7b9ae .7px 1.3px,#e4e3d8 1.3px 2px);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(.3px .8px .25px #080a09) drop-shadow(-.2px -.4px .2px #fff5)}
.fabric-button:hover,.fabric-button:focus-visible{translate:0 -1px;box-shadow:inset 0 1px 1px #ffffff26,inset 0 -2px 3px #0009,0 4px 8px #17201930;--thread:#f58d51}
.fabric-button:hover:before,.fabric-button:focus-visible:before{opacity:1}
.fabric-button:hover .thread-label,.fabric-button:focus-visible .thread-label{color:#ff9b5b;background-image:repeating-linear-gradient(112deg,#ffb076 0 .7px,#d76e34 .7px 1.3px,#ff9a59 1.3px 2px)}
.fabric-orange{--fabric:#c75621;--thread:#ffd6a1;--edge:#974016;background-image:repeating-linear-gradient(0deg,#0002 0 1px,transparent 1px 3px),repeating-linear-gradient(90deg,#ffffff16 0 1px,#0003 1px 2px,transparent 2px 4px),repeating-linear-gradient(132deg,#ffffff0b 0 2px,#0001 2px 4px,transparent 4px 7px),linear-gradient(155deg,#ff934033,transparent 45%,#67200933)}
.fabric-orange .thread-label,.fabric-orange:hover .thread-label,.fabric-orange:focus-visible .thread-label{background-image:repeating-linear-gradient(112deg,#fff1d0 0 .7px,#d7b790 .7px 1.3px,#ffe6bf 1.3px 2px);filter:drop-shadow(.3px .8px .25px #6c2c17) drop-shadow(-.2px -.4px .2px #fff6)}
.site-header{gap:24px;min-height:122px}.site-header nav{gap:10px}.header-contact.fabric-button{font-size:12px;flex-shrink:0}.brand{flex-shrink:0}
@media(max-width:1100px){.site-header{flex-wrap:wrap;padding-block:20px;gap:16px}.site-header nav{order:3;flex:1 0 100%;justify-content:center;gap:12px}.header-contact.fabric-button{margin-left:auto}.fabric-button{padding-inline:24px!important}}
@media(max-width:800px){.site-header nav{display:flex}.fabric-button{min-height:50px;padding:15px 20px!important}.fabric-button .thread-label{font-size:12px}}
@media(max-width:620px){.site-header{padding-block:17px;gap:18px 8px}.header-contact.fabric-button{min-height:44px;padding:13px 14px!important}.header-contact.fabric-button .thread-label{font-size:10px}.site-header nav{gap:8px}.site-header nav .fabric-button{flex:1;padding:15px 9px!important;min-height:48px}.site-header nav .thread-label{font-size:11px;letter-spacing:0}}
@media(prefers-reduced-motion:reduce){.fabric-button,.fabric-button:before{transition:none}.fabric-button:hover,.fabric-button:focus-visible{translate:0}}
@media(forced-colors:active){.fabric-button .thread-label{-webkit-text-fill-color:ButtonText;filter:none;background:none}.fabric-button:before{border-color:ButtonText}}
/* The full site has five navigation links; keep every section accessible. */
.site-header.wrap{gap:18px}.site-header.wrap nav{gap:8px}.site-header.wrap nav .fabric-button{padding-inline:16px!important}.site-header.wrap .thread-label{font-size:12px}.site-header.wrap .header-contact{padding-inline:18px!important}
@media(max-width:1200px){.site-header.wrap{flex-wrap:wrap;padding-block:20px;gap:18px}.site-header.wrap nav{display:flex;order:3;flex:1 0 100%;justify-content:center;gap:10px}.site-header.wrap .header-contact{margin-left:auto}}
@media(max-width:700px){.site-header.wrap nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%}.site-header.wrap nav .fabric-button{min-width:0;padding:15px 9px!important;min-height:48px}.site-header.wrap nav .fabric-button:last-child{grid-column:1/-1}.site-header.wrap nav .thread-label{font-size:12px}.site-header.wrap .header-contact{padding:13px 14px!important}.site-header.wrap .header-contact .thread-label{font-size:10px}}
