/* The header, the drawer, the footer and the phone bar. */

.announce{position:relative;z-index:60;padding:.5em var(--gutter);background:var(--red);color:var(--bone);text-align:center;font:500 1.02rem/1.3 var(--f-text)}
.announce a{color:inherit;margin-left:.5em}

/* a strip of black paper torn across the top of every page, the shop's gold crest hanging off it */
.site-header{position:fixed;top:0;left:0;right:0;z-index:50;color:var(--bone);will-change:transform}
.admin-bar .site-header{top:32px}
body.elementor-editor-active .site-header{position:absolute}
.mi-chrome-header{display:block}
body .elementor .mi-el-header{--hth:clamp(26px,3.2vw,44px);position:relative;isolation:isolate;padding:0 var(--gutter)}
body .elementor .mi-el-header::after{content:"";position:absolute;left:0;right:0;top:calc(100% - 1px);height:var(--hth);z-index:-1;pointer-events:none;transform:scaleY(-1);background:url(../img/tear/header-rip.webp) 0 0/auto 100% repeat-x}
body .elementor .mi-el-header > .elementor-container{align-items:center;min-height:var(--hdr-h);max-width:var(--wrap)}
body .elementor .mi-el-header .elementor-widget{margin:0}
body .elementor .mi-el-header .elementor-widget-wrap{display:flex;flex-wrap:nowrap;align-items:center;gap:20px}
body .elementor .hdr-l > .elementor-widget-wrap{justify-content:flex-end}
body .elementor .hdr-r > .elementor-widget-wrap{justify-content:flex-start}
body .elementor .hdr-c > .elementor-widget-wrap{justify-content:center;overflow:visible}
body .elementor .hdr-r .hdr-book{margin-left:auto}
body .elementor .hdr-l .burger-w{margin-right:auto;display:none}

body .elementor .mi-el-header .hdr-crest{position:relative;z-index:2;isolation:isolate;width:clamp(128px,11vw,176px);margin-bottom:-46px;transition:width .35s var(--ease),margin .35s var(--ease);filter:drop-shadow(0 8px 10px rgba(20,10,5,.5))}
body .elementor .hdr-crest img{display:block;width:100%}
body .elementor .hdr-book .elementor-button{min-height:48px;padding:.3em 1.5em;font-size:1.04rem}

.mainnav-list{display:flex;align-items:center;gap:clamp(14px,2vw,34px);list-style:none;margin:0;padding:0}
.mainnav-item{position:relative;list-style:none}
.mainnav-link{display:block;padding:.4em 0;color:var(--bone);font:700 clamp(1rem,.2vw + .92rem,1.1rem)/1.2 var(--f-label);letter-spacing:.1em;text-transform:uppercase;text-decoration:none;white-space:nowrap}
.mainnav-link::after{content:"";display:block;height:2px;margin-top:4px;background:var(--gold-hi);transform:scaleX(0);transform-origin:0 50%;transition:transform .3s var(--ease)}
.mainnav-link:hover::after,.mainnav-link:focus-visible::after,.is-current > .mainnav-link::after{transform:none}
.mainnav-link:hover{color:var(--gold-hi)}
.mainnav-sub{position:absolute;left:-16px;top:100%;min-width:230px;list-style:none;margin:0;padding:10px 0;background:#1E1815 url(../img/bg/paper-ink.webp) 0 0/var(--tile);border-top:2px solid var(--gold);box-shadow:0 18px 34px rgba(0,0,0,.5);opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s var(--ease)}
.mainnav-item:hover > .mainnav-sub,.mainnav-item:focus-within > .mainnav-sub{opacity:1;visibility:visible;transform:none}
.mainnav-sub a{display:block;padding:.46em 18px;color:var(--bone);font:500 1.12rem/1.2 var(--f-text);text-decoration:none}
.mainnav-sub a:hover,.mainnav-sub .is-current a{color:var(--gold-hi);background:rgba(242,198,92,.08)}

/* stuck: the same strip, slimmer, the crest tucked in */
body .elementor .site-header.is-stuck .mi-el-header > .elementor-container,.site-header.is-stuck .mi-el-header > .elementor-container{min-height:64px}
body .elementor .site-header.is-stuck .hdr-crest,.site-header.is-stuck .hdr-crest{width:96px;margin-bottom:-20px}

/* burger */
.burger{position:relative;display:block;width:46px;height:46px;color:var(--bone)}
.burger span,.burger span::before,.burger span::after{position:absolute;left:9px;width:28px;height:2px;background:currentColor;content:""}
.burger span{top:22px}
.burger span::before{left:0;top:-9px;width:20px}
.burger span::after{left:0;top:9px;width:24px}

@media (max-width:1099px){
  body .elementor .mi-el-header .nav-w{display:none}
  body .elementor .hdr-l .burger-w{display:block}
  body .elementor .mi-el-header .hdr-crest{width:118px;margin-bottom:-30px}
  body .elementor .hdr-r .hdr-book{margin-left:auto}
}
@media (max-width:767px){
  body .elementor .mi-el-header > .elementor-container{flex-wrap:nowrap}
  body .elementor .mi-el-header .hdr-l,body .elementor .mi-el-header .hdr-r{width:32%}
  body .elementor .mi-el-header .hdr-c{width:36%}
  body .elementor .mi-el-header .hdr-crest{width:104px;margin-bottom:-26px}
  body .elementor .hdr-book .elementor-button{min-height:42px;padding:.3em 1em}
  .admin-bar .site-header{top:46px}
}

/* drawer */
.drawer{position:fixed;inset:0;z-index:120;visibility:hidden}
.drawer.is-open{visibility:visible}
.drawer-shade{position:absolute;inset:0;width:100%;border:0;background:rgba(20,10,5,.6);opacity:0;transition:opacity .3s}
.drawer.is-open .drawer-shade{opacity:1}
.drawer-panel{position:absolute;left:0;top:0;bottom:0;width:min(88vw,400px);display:flex;flex-direction:column;gap:22px;padding:18px 24px 26px;overflow-y:auto;background:#1E1815 url(../img/bg/paper-ink.webp) 0 0/var(--tile);color:var(--bone);transform:translateX(-102%);transition:transform .36s var(--ease);scrollbar-width:none}
.drawer-panel::-webkit-scrollbar{display:none}
.drawer.is-open .drawer-panel{transform:none}
.drawer-top{display:flex;align-items:center;justify-content:space-between}
.drawer-brand img{display:block;width:120px}
.drawer-close{display:grid;place-items:center;width:46px;height:46px;color:var(--bone)}
.drawer-nav ul{list-style:none;margin:0;padding:0}
.drawer-nav > ul > li > a{display:block;padding:.34em 0;color:var(--bone);font:400 1.9rem/1 var(--f-display);text-decoration:none}
.drawer-nav ul ul{padding:0 0 .5em 2px}
.drawer-nav ul ul a{display:block;padding:.28em 0;color:#D8C3A0;font:500 1.14rem/1.2 var(--f-text);text-decoration:none}
.drawer-nav .is-current > a{color:var(--gold-hi)}
.drawer-cta{display:grid;gap:10px}
.drawer-foot{display:grid;gap:10px;margin-top:auto;font:400 1rem/1.3 var(--f-text);color:#D8C3A0}
.drawer-foot p{margin:0}

/* footer: the last sheet, black paper torn over the page, roses along its edge and monarchs among them */
.site-footer{position:relative;z-index:3;overflow-x:clip}
.mi-chrome-footer{display:block}
body .elementor .foot-main{--foot-top:clamp(130px,22vw,340px);position:relative;padding:var(--foot-top) var(--gutter) clamp(30px,4vw,56px)}
body .elementor .foot-main > .elementor-container{max-width:var(--wrap);gap:0}
body .elementor .foot-main > .elementor-container::before{content:"";position:absolute;left:50%;top:calc(var(--foot-top) * -1 - var(--th) * .72);width:min(94vw,1500px);aspect-ratio:var(--foot-ar,3.6);transform:translateX(-50%);filter:drop-shadow(0 10px 14px rgba(0,0,0,.45));background:var(--foot-art,none) center top/contain no-repeat;pointer-events:none}
body .elementor .foot-main .elementor-widget{margin:0}
.foot-main .status{flex-wrap:wrap;row-gap:.3em}
.foot-main .status-detail{flex:0 0 100%;padding-left:calc(10px + .5em)}
body .elementor .foot-main .elementor-column + .elementor-column > .elementor-widget-wrap{padding-left:clamp(20px,3vw,44px)}
body .elementor .foot-crest{width:min(100%,210px);margin-bottom:18px}
body .elementor .foot-crest img{display:block;width:100%}
.foot-blurb{font:400 1.08rem/1.5 var(--f-text);color:var(--fg2);max-width:32ch;margin-bottom:18px}
body .elementor .foot-h .elementor-heading-title{margin:6px 0 16px;color:var(--acc);font:400 clamp(2rem,2.4vw,2.5rem)/1 var(--f-script)}
.social{display:flex;flex-wrap:wrap;gap:8px}
.soc{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;color:var(--fg,var(--ink));border:1px solid var(--line-c);transition:.2s}
.soc:hover{background:var(--gold-hi);border-color:var(--gold-hi);color:var(--ink)}
.foot-links{list-style:none;margin:0;padding:0;display:grid;gap:.34em;font:400 1.08rem/1.3 var(--f-text)}
.foot-links a{color:var(--fg2);text-decoration:none}
.foot-links a:hover{color:var(--gold-hi)}
.hours-rows{margin:.6em 0 0;display:grid;gap:.16em;font:400 1.06rem/1.4 var(--f-text);color:var(--fg2,var(--ink-2))}
.hours-row{display:flex;justify-content:space-between;gap:1em;max-width:300px}
.hours-row dt,.hours-row dd{margin:0}
.hours-row.is-off{opacity:.6}
.hours-note{margin-top:.6em;font:italic 400 1rem/1.4 var(--f-text)}
.contact{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.contact-item{display:flex;gap:12px;align-items:flex-start}
.contact-ico{flex:none;color:var(--acc,var(--red));margin-top:.14em}
.contact-body{display:grid}
.contact-k{font:700 .88rem/1.3 var(--f-label);letter-spacing:.12em;text-transform:uppercase;color:var(--fg3,var(--ink-3))}
.contact-v{font-size:1.08rem;line-height:1.35;overflow-wrap:anywhere;color:var(--fg2,var(--ink-2))}
.contact-v a{color:inherit;text-decoration:none}
.contact-v a:hover{color:var(--acc,var(--red))}

body .elementor .foot-word{overflow:hidden;padding:clamp(10px,2vw,30px) var(--gutter) 0}
body .elementor .foot-word .elementor-widget{margin:0}
body .elementor .foot-wordmark .elementor-heading-title{display:block;text-align:center;white-space:nowrap;padding:.06em 0 .1em;font:400 clamp(4.6rem,15.5vw,19rem)/1 var(--f-script);color:var(--gold-hi);background:linear-gradient(176deg,#FFE9A8 8%,#F2C65C 34%,#B9852A 58%,#F4D27E 76%,#9A6A1A 96%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
body .elementor .foot-legal{padding:18px var(--gutter) 24px}
body .elementor .foot-legal .elementor-widget{margin:0}
.legal{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5em 1.4em;margin:0;font:400 1rem/1.4 var(--f-text);color:var(--fg3)}
.legal a{color:inherit}

/* the signature: the wireless pen writes it out when it scrolls into view (main.js) */
.ssq-credit{position:relative;display:block;flex:none;width:158px;margin:0;text-decoration:none}
.credit-sig{display:block;width:100%;height:auto;overflow:visible}
.credit-letters{fill:var(--bone)}
.credit-heart{fill:#E0232E}
.ssq-credit:hover .credit-letters{fill:var(--gold-hi)}
.credit-pen{position:absolute;left:0;top:0;width:30px;height:auto;max-width:none;opacity:0;pointer-events:none;transition:opacity .2s;filter:drop-shadow(0 3px 4px rgba(0,0,0,.7))}
.ssq-credit.is-writing .credit-pen,.ssq-credit.is-signed .credit-pen{opacity:1}

@media (max-width:1199px){
  body .elementor .foot-main > .elementor-container{flex-wrap:wrap}
  body .elementor .foot-main .elementor-column{width:50%;margin-bottom:36px}
  body .elementor .foot-main .elementor-column:nth-child(odd) > .elementor-widget-wrap{padding-left:0}
}
@media (max-width:640px){
  body .elementor .foot-main .elementor-column{width:100%}
  body .elementor .foot-main .elementor-column + .elementor-column > .elementor-widget-wrap{padding-left:0}
  body{padding-bottom:0}
  .site-footer{padding-bottom:62px}
}

/* phone bar */
.callbar{position:fixed;left:0;right:0;bottom:0;z-index:40;display:none;grid-template-columns:1fr 1fr 1.5fr;background:#1E1815 url(../img/bg/paper-ink.webp) 0 0/var(--tile);transform:translateY(102%);transition:transform .3s var(--ease);padding-bottom:env(safe-area-inset-bottom)}
.callbar.is-on{transform:none}
.callbar-btn{display:flex;align-items:center;justify-content:center;gap:.4em;min-height:56px;color:var(--bone);font:700 1rem/1 var(--f-label);letter-spacing:.08em;text-transform:uppercase;text-decoration:none}
.callbar-main{background:var(--red);color:var(--bone)}
@media (max-width:767px){.callbar{display:grid}}
