:root { --bt-shell: 1200px; --bt-gutter: clamp(20px, 4vw, 48px); --bt-space: clamp(38px, 4.6vw, 64px); }
.black-type-site { overflow-x: hidden; }
.black-type-site .bt-shell { width: min(calc(100% - 2 * var(--bt-gutter)), var(--bt-shell)); margin-inline: auto; }
.black-type-site .bt-section { padding-block: var(--bt-space); }
.black-type-site .bt-row { display: flex; flex-direction: row; align-items: stretch; gap: clamp(24px, 4vw, 56px); }
.black-type-site .bt-row > .e-con { min-width: 0; }
.black-type-site .elementor-widget-heading, .black-type-site .elementor-widget-text-editor { margin-bottom: 0; }
.black-type-site h1, .black-type-site h2, .black-type-site h3 { line-height: .94; letter-spacing: .01em; text-transform: uppercase; }
.black-type-site h1 { font-size: clamp(3.8rem, 8vw, 7rem); }
.black-type-site h2 { font-size: clamp(2.8rem, 5vw, 4.8rem); }
.black-type-site h3 { font-size: clamp(1.55rem, 2vw, 2.2rem); }
.black-type-site p { margin: 0; }
.black-type-site .bt-eyebrow { letter-spacing: .16em; font-size: .82rem; font-weight: 700; color: var(--e-global-color-primary); }
.black-type-site .bt-center { text-align: center; }
.black-type-site .bt-center-button { align-self: center; }
.black-type-site .elementor-button { padding: 15px 24px; border-radius: 0; text-transform: uppercase; letter-spacing: .055em; transition: transform .25s ease, background-color .25s ease, box-shadow .25s ease; }
.black-type-site .elementor-button:hover { transform: translateY(-3px); box-shadow: 0 8px 22px rgb(0 0 0 / .16); }
.black-type-site .bt-outline .elementor-button { background: transparent; border: 1px solid var(--e-global-color-secondary); color: var(--e-global-color-accent); }
.black-type-site .bt-text-button .elementor-button { background: transparent; color: var(--e-global-color-primary); border: 1px solid var(--e-global-color-primary); }
.black-type-site .bt-home-hero { background: var(--e-global-color-text); color: var(--e-global-color-accent); }
.black-type-site .bt-home-hero .bt-shell { width: 100%; max-width: none; padding: 0; }
.black-type-site .bt-home-hero .bt-row { gap: 0; padding: 0; }
.black-type-site .bt-home-hero-copy { width: 48%; justify-content: center; padding: clamp(48px, 5vw, 76px) clamp(26px, 4vw, 70px); gap: 20px; }
.black-type-site .bt-home-hero-copy h1 { font-size: clamp(3.1rem, 5.5vw, 5.8rem); }
.black-type-site .bt-home-hero-copy h1 { color: var(--e-global-color-accent); }
.black-type-site .bt-home-hero-copy h1 span, .black-type-site .bt-pizza-section h2 span { color: var(--e-global-color-primary); }
.black-type-site .bt-stars { color: var(--e-global-color-secondary); letter-spacing: .2em; }
.black-type-site .bt-home-hero-photo { width: 52%; }
.black-type-site .bt-home-hero-photo img { width: 100%; height: clamp(540px, 53vw, 720px); object-fit: cover; }
.black-type-site .bt-actions { gap: 14px; flex-wrap: wrap; }
.black-type-site .bt-actions .elementor-widget-button { width: auto; margin: 0; }
.black-type-site .bt-beer-section .bt-shell { gap: 16px; }
.black-type-site .bt-beer-row img { width: 100%; max-height: 350px; object-fit: contain; }
.black-type-site .bt-cards { display: flex; flex-direction: row !important; gap: 22px; flex-wrap: wrap; }
.black-type-site .bt-card { background: var(--e-global-color-accent); border: 1px solid color-mix(in srgb, var(--e-global-color-text) 12%, transparent); padding: clamp(22px, 2.4vw, 32px); gap: 12px; width: calc(33.333% - 15px) !important; flex: 0 0 calc(33.333% - 15px) !important; transition: transform .25s ease, box-shadow .25s ease; }
.black-type-site .bt-card:hover { transform: translateY(-4px); box-shadow: 0 14px 30px rgb(20 37 54 / .1); }
.black-type-site .bt-photo-card { padding: 0 0 24px; overflow: hidden; }
.black-type-site .bt-photo-card .bt-card-image img { width: 100%; height: 190px; object-fit: cover; }
.black-type-site .bt-photo-card > .elementor-widget:not(.bt-card-image) { margin-inline: 24px; }
.black-type-site .bt-cards.four .bt-card { width: calc(25% - 17px) !important; flex-basis: calc(25% - 17px) !important; }
.black-type-site .bt-cards.five .bt-card { width: calc(20% - 18px) !important; flex-basis: calc(20% - 18px) !important; border: 0; padding: 12px; text-align: center; box-shadow: none; }
.black-type-site .bt-cards.five .bt-card h3 { font-size: 1.3rem; }
.black-type-site .bt-feature-section { padding-block: 0; }
.black-type-site .bt-feature-section .bt-shell { width: 100%; max-width: none; }
.black-type-site .bt-feature-row { gap: 0; }
.black-type-site .bt-feature-row > * { width: 50%; }
.black-type-site .bt-feature-image img { width: 100%; height: clamp(420px, 43vw, 620px); object-fit: cover; }
.black-type-site .bt-feature-copy { justify-content: center; gap: 20px; padding: clamp(50px, 6vw, 105px); background: var(--e-global-color-accent); }
.black-type-site .bt-feature-copy .elementor-button-wrapper { align-self: flex-start; }
.black-type-site .bt-pizza-section .bt-feature-copy { order: 0; }
.black-type-site .bt-pizza-section .bt-feature-image { order: 1; }
.black-type-site .bt-visit-section { background: var(--e-global-color-text); color: var(--e-global-color-accent); padding: 0; }
.black-type-site .bt-visit-section .bt-shell { width: 100%; max-width: none; }
.black-type-site .bt-visit-row { gap: 0; }
.black-type-site .bt-visit-panel { width: 25%; padding: clamp(32px, 4vw, 64px); justify-content: center; gap: 14px; }
.black-type-site .bt-visit-panel h3 { color: var(--e-global-color-accent); }
.black-type-site .bt-visit-photo { width: 50%; }
.black-type-site .bt-visit-photo img { width: 100%; height: 300px; object-fit: cover; }
.black-type-site .bt-page-hero { background: var(--e-global-color-text); color: var(--e-global-color-accent); }
.black-type-site .bt-page-hero .bt-row { align-items: center; gap: 0; }
.black-type-site .bt-intro-copy { width: 55%; padding: clamp(55px, 7vw, 110px) clamp(30px, 6vw, 90px) clamp(55px, 7vw, 110px) 0; gap: 20px; }
.black-type-site .bt-intro-copy h1 { color: var(--e-global-color-accent); font-size: clamp(3.3rem, 6vw, 6rem); }
.black-type-site .bt-intro-image { width: 45%; }
.black-type-site .bt-intro-image img { width: 100%; height: 490px; object-fit: cover; }
.black-type-site .bt-cta { background: var(--e-global-color-text); color: var(--e-global-color-accent); padding: clamp(42px, 5vw, 74px); align-items: flex-start; gap: 18px; }
.black-type-site .bt-cta h2 { color: var(--e-global-color-accent); }
.black-type-site .bt-section .bt-shell { gap: clamp(20px, 2vw, 30px); }
.black-type-site .site-header { background: var(--e-global-color-accent); }
.black-type-site .site-header .site-branding img { max-width: 245px; max-height: 90px; object-fit: contain; }
.black-type-site .site-header a, .black-type-site .site-footer a { text-transform: uppercase; font-weight: 700; letter-spacing: .04em; }
.black-type-site .site-footer { background: var(--e-global-color-text); color: var(--e-global-color-accent); }
.black-type-site .site-footer .site-branding img { max-width: 220px; max-height: 84px; object-fit: contain; filter: brightness(0) invert(1); }
.black-type-site .site-footer a { color: var(--e-global-color-accent); }
@media (max-width: 1024px) {
 .black-type-site .bt-cards.four .bt-card, .black-type-site .bt-cards.five .bt-card { width: calc(50% - 11px) !important; flex-basis: calc(50% - 11px) !important; }
 .black-type-site .bt-home-hero-copy { width: 50%; padding-inline: 5vw; }
 .black-type-site .bt-home-hero-photo { width: 50%; }
 .black-type-site .bt-visit-panel { width: 30%; }
 .black-type-site .bt-visit-panel { padding-inline: 24px; }
 .black-type-site .bt-visit-photo { width: 40%; }
}
@media (max-width: 767px) {
 .black-type-site .bt-cards { flex-direction: column !important; }
 .black-type-site .bt-actions { flex-direction: row; }
 .black-type-site .bt-home-hero .bt-row, .black-type-site .bt-feature-row, .black-type-site .bt-page-hero .bt-row, .black-type-site .bt-visit-row { flex-direction: column; }
 .black-type-site .bt-home-hero-copy, .black-type-site .bt-home-hero-photo, .black-type-site .bt-feature-row > *, .black-type-site .bt-intro-copy, .black-type-site .bt-intro-image, .black-type-site .bt-visit-panel, .black-type-site .bt-visit-photo { width: 100%; }
 .black-type-site .bt-home-hero-photo img { height: 360px; }
 .black-type-site .bt-feature-image img { height: 330px; }
 .black-type-site .bt-pizza-section .bt-feature-copy { order: 1; }
 .black-type-site .bt-pizza-section .bt-feature-image { order: 0; }
 .black-type-site .bt-intro-copy { padding-right: 0; }
 .black-type-site .bt-intro-image img { height: 300px; }
 .black-type-site .bt-cards .bt-card, .black-type-site .bt-cards.four .bt-card, .black-type-site .bt-cards.five .bt-card { width: 100% !important; flex-basis: 100% !important; }
 .black-type-site .bt-visit-panel { padding-block: 30px; }
 .black-type-site .bt-visit-photo img { height: 260px; }
}
@media (prefers-reduced-motion: reduce) { .black-type-site .elementor-button, .black-type-site .bt-card { transition: none; } }

/* Redesign: the variables above inherit Elementor Kit colors and typography. */
.black-type-site .bt-home-hero { position:relative; }
.black-type-site .bt-home-hero-copy { width:49%; z-index:2; padding-left:max(5vw,calc((100vw - 1200px)/2)); padding-right:5.5vw; clip-path:polygon(0 0,100% 0,92% 100%,0 100%); margin-right:-4%; background:var(--e-global-color-text); }
.black-type-site .bt-home-hero-photo { width:55%; }
.black-type-site .bt-home-hero-photo img { height:clamp(590px,53vw,760px); }
.black-type-site .bt-home-hero-copy h1 { font-size:clamp(3.8rem,5.2vw,5.9rem); line-height:.89; letter-spacing:.005em; }
.black-type-site .bt-home-hero-copy .bt-stars { font-size:1.7rem; letter-spacing:0; text-align:center; width:78%; position:relative; }
.black-type-site .bt-home-hero-copy .bt-stars:before,.black-type-site .bt-home-hero-copy .bt-stars:after { content:""; position:absolute; width:39%; height:1px; background:var(--e-global-color-secondary); top:50%; }
.black-type-site .bt-home-hero-copy .bt-stars:before { left:0; }.black-type-site .bt-home-hero-copy .bt-stars:after { right:0; }
.black-type-site .bt-home-hero-copy p { font-size:clamp(1rem,1.3vw,1.18rem); line-height:1.65; }
.black-type-site .bt-beer-section { background:#fff; padding-block:clamp(38px,4vw,52px) clamp(42px,4.5vw,58px); }
.black-type-site .bt-beer-section .bt-shell { gap:12px; }
.black-type-site .bt-beer-section h2 { font-size:clamp(2.6rem,4vw,4rem); }
.black-type-site .bt-beer-glasses { gap:12px; margin-top:14px; justify-content:space-between; }
.black-type-site .bt-beer-glass { width:19%; align-items:center; text-align:center; gap:7px; }
.black-type-site .bt-beer-glass .elementor-widget-image { width:100%; }
.black-type-site .bt-beer-glass img { width:100%; height:210px; object-fit:contain; mix-blend-mode:multiply; }
.black-type-site .bt-beer-glass h3 { font-size:1.3rem; letter-spacing:.02em; }
.black-type-site .bt-beer-glass p { font-size:.73rem; }
.black-type-site .bt-beer-glass .bt-abv { color:var(--e-global-color-primary); font-size:1rem; font-weight:700; }
.black-type-site .bt-beer-section .bt-center-button .elementor-button,.black-type-site .bt-home-events .bt-text-button .elementor-button { background:transparent; border:1px solid var(--e-global-color-primary); color:var(--e-global-color-text); }
.black-type-site .bt-split-section { padding:0; }
.black-type-site .bt-split-section .bt-shell { width:100%; max-width:none; }
.black-type-site .bt-split-row { gap:0; }
.black-type-site .bt-split-row > * { width:50%; }
.black-type-site .bt-split-image img { display:block; width:100%; height:clamp(460px,42vw,610px); object-fit:cover; }
.black-type-site .bt-split-copy { justify-content:center; align-items:flex-start; gap:18px; padding:clamp(55px,6.5vw,105px); background:#fff; }
.black-type-site .bt-split-copy h2 { font-size:clamp(3rem,4vw,4.5rem); }
.black-type-site .bt-split-copy h2 span { color:var(--e-global-color-primary); }
.black-type-site .bt-split-copy p { max-width:420px; }
.black-type-site .bt-reverse .bt-split-copy { order:0; }.black-type-site .bt-reverse .bt-split-image { order:1; }
.black-type-site .bt-tiles-section { background:#f7f5f0; }
.black-type-site .bt-tiles-section .bt-shell { gap:18px; }
.black-type-site .bt-tiles { gap:24px; margin-top:15px; flex-wrap:wrap; }
.black-type-site .bt-tile { width:calc(33.333% - 16px); flex:0 0 calc(33.333% - 16px); gap:14px; background:#fff; padding:0 0 28px; border:1px solid #e7e0d7; transition:transform .25s ease,box-shadow .25s ease; }
.black-type-site .bt-tile:hover { transform:translateY(-4px); box-shadow:0 15px 30px rgb(20 37 54 / .12); }
.black-type-site .bt-tile .bt-tile-image img { display:block; width:100%; height:245px; object-fit:cover; }
.black-type-site .bt-tile > .elementor-widget:not(.bt-tile-image) { margin-inline:25px; }
.black-type-site .bt-tile h3 { font-size:clamp(1.5rem,2vw,2rem); }
.black-type-site .bt-tile p { font-size:.95rem; }
.black-type-site .bt-four .bt-tile { width:calc(25% - 18px); flex-basis:calc(25% - 18px); }
.black-type-site .bt-four .bt-tile .bt-tile-image img { height:205px; }
.black-type-site .bt-home-visit { background:var(--e-global-color-text); color:#fff; }
.black-type-site .bt-home-visit .bt-shell { width:100%; max-width:none; }
.black-type-site .bt-home-visit .bt-row { gap:0; }
.black-type-site .bt-home-visit .bt-visit-panel { width:26%; }
.black-type-site .bt-home-visit .bt-visit-photo { width:48%; }
.black-type-site .bt-home-visit .bt-visit-photo img { display:block; width:100%; height:325px; object-fit:cover; }
.black-type-site .bt-home-visit h3 { color:#fff; }
.black-type-site .bt-editorial-hero { color:#fff; background:var(--e-global-color-text); }
.black-type-site .bt-editorial-hero .bt-shell { width:100%; max-width:none; }
.black-type-site .bt-editorial-hero .bt-row { gap:0; }
.black-type-site .bt-editorial-hero-copy { width:48%; padding:clamp(70px,8vw,125px) clamp(45px,6vw,105px); justify-content:center; gap:20px; }
.black-type-site .bt-editorial-hero-copy h1 { color:#fff; font-size:clamp(3.7rem,5.5vw,6.2rem); }
.black-type-site .bt-editorial-hero-image { width:52%; }
.black-type-site .bt-editorial-hero-image img { display:block; width:100%; height:clamp(500px,45vw,630px); object-fit:cover; }
.black-type-site .bt-hero-red .bt-editorial-hero-copy { background:#82291f; }
.black-type-site .bt-hero-gold .bt-editorial-hero-copy { background:#282d2b; }
.black-type-site .bt-editorial-hero-copy .bt-eyebrow { color:var(--e-global-color-secondary); }
.black-type-site .bt-editorial-hero-copy p { font-size:1.1rem; max-width:480px; }
.black-type-site .bt-review-row { justify-content:center; }
.black-type-site .bt-review { background:#fff; padding:35px; flex:0 1 420px; gap:16px; }
.black-type-site .bt-review h3 { font-size:1.1rem; }
.black-type-site .bt-review .bt-stars { color:var(--e-global-color-secondary); }
.black-type-site .bt-menu-copy { max-width:850px; margin-inline:auto; text-align:center; font-size:1.15rem; line-height:1.85; }
.black-type-site .bt-menu-section { background:#fff; }
.black-type-site .bt-facts { gap:25px; margin-top:18px; }
.black-type-site .bt-fact { flex:1; background:#fff; border-top:4px solid var(--e-global-color-primary); padding:35px; gap:16px; }
.black-type-site .bt-visit-details { background:#f7f5f0; }
.black-type-site .bt-visit-details .bt-center-button { margin-top:16px; }
.black-type-site .bt-tiles-section .bt-text-button .elementor-button { padding:11px 16px; }
.black-type-site .site-header { box-shadow:0 2px 12px rgb(0 0 0 / .08); }
.black-type-site .site-header .site-branding img { max-width:235px; }
.black-type-site .site-header .site-navigation a { font-family:inherit; font-size:.92rem; letter-spacing:.035em; }
.black-type-site .site-header .site-navigation ul ul { background:#fff; box-shadow:0 16px 30px rgb(0 0 0 / .18); min-width:190px; }
.black-type-site .site-header .site-navigation ul ul a { padding:13px 18px; }
.black-type-site .site-header .site-navigation ul ul a:hover { color:var(--e-global-color-primary); background:#f7f5f0; }
.black-type-site .site-header .site-navigation > ul > li > a { color:var(--e-global-color-text); }
.black-type-site .site-header .site-navigation > ul > li > a:hover,.black-type-site .site-header .site-navigation > ul > li.current-menu-item > a { color:var(--e-global-color-primary); }
.black-type-site .site-header .site-navigation ul ul { border-top:3px solid var(--e-global-color-primary); }
.black-type-site .site-footer .site-navigation a { font-size:.9rem; letter-spacing:.02em; }
.black-type-site .site-footer .footer-inner { gap:15px; }
.black-type-site .site-footer .site-navigation ul { gap:8px 18px; }
@media(max-width:1024px){.black-type-site .bt-four .bt-tile { width:calc(50% - 12px); flex-basis:calc(50% - 12px); }.black-type-site .bt-editorial-hero-copy { padding-inline:5vw; }.black-type-site .bt-home-hero-copy h1 { font-size:clamp(3.3rem,6vw,5.5rem); }}
@media(max-width:767px){.black-type-site .bt-home-hero-copy { width:100%; margin-right:0; clip-path:none; padding:55px 25px; }.black-type-site .bt-home-hero-photo { width:100%; }.black-type-site .bt-home-hero-photo img { height:340px; }.black-type-site .bt-home-hero-copy h1 { font-size:clamp(2.9rem,10vw,4.6rem); }.black-type-site .bt-beer-glasses { flex-wrap:wrap; flex-direction:row; justify-content:center; }.black-type-site .bt-beer-glass { width:calc(50% - 8px); }.black-type-site .bt-beer-glass img { height:170px; }.black-type-site .bt-split-row,.black-type-site .bt-editorial-hero .bt-row,.black-type-site .bt-home-visit .bt-row { flex-direction:column; }.black-type-site .bt-split-row > *,.black-type-site .bt-editorial-hero-copy,.black-type-site .bt-editorial-hero-image,.black-type-site .bt-home-visit .bt-visit-panel,.black-type-site .bt-home-visit .bt-visit-photo { width:100%; }.black-type-site .bt-split-image img { height:330px; }.black-type-site .bt-split-copy { padding:50px 25px; }.black-type-site .bt-reverse .bt-split-copy { order:1; }.black-type-site .bt-reverse .bt-split-image { order:0; }.black-type-site .bt-editorial-hero-copy { padding:58px 25px; }.black-type-site .bt-editorial-hero-image img { height:300px; }.black-type-site .bt-tiles { flex-direction:column; }.black-type-site .bt-tile,.black-type-site .bt-four .bt-tile { width:100%; flex-basis:100%; }.black-type-site .bt-facts { flex-direction:column; }.black-type-site .bt-home-visit .bt-visit-photo img { height:260px; }}
@media(max-width:1024px){.black-type-site .site-navigation-dropdown .sub-menu { display:block !important; position:static !important; visibility:visible !important; opacity:1 !important; background:#f7f5f0; box-shadow:none; padding-left:18px; }.black-type-site .site-navigation-dropdown .sub-menu a { font-size:.82rem; padding:9px 16px; }.black-type-site .site-navigation-dropdown .menu-item-has-children > a { border-bottom:1px solid #e2ded7; }}
@media(max-width:1024px){.black-type-site .site-navigation-dropdown .sub-menu li,.black-type-site .site-navigation-dropdown .sub-menu a { transform:none !important; height:auto !important; max-height:none !important; }.black-type-site .site-navigation-dropdown .sub-menu { height:auto !important; }}

/* Motion and brand media: Elementor Kit controls type, color, and buttons. */
.black-type-site .bt-editorial-hero-copy { padding-block:clamp(42px,5vw,72px); }
.black-type-site .bt-editorial-hero-copy h1 { font-size:clamp(3rem,4.6vw,4.9rem); line-height:1.04; }
.black-type-site .bt-editorial-hero-image img { height:clamp(350px,34vw,440px); }
.black-type-site .bt-film-section { background:#f1ebe1; padding-block:clamp(34px,3.8vw,54px); }
.black-type-site .bt-film-section .bt-shell { gap:0; }
.black-type-site .bt-film-row { align-items:center; gap:clamp(24px,4vw,58px); }
.black-type-site .bt-film-copy { width:37%; align-items:flex-start; gap:16px; }
.black-type-site .bt-film-copy h2 { font-size:clamp(2.6rem,4vw,4rem); }
.black-type-site .bt-film-copy p { max-width:390px; }
.black-type-site .bt-story-video { width:63%; }
.black-type-site .bt-story-video .elementor-wrapper { border:8px solid #fff; box-shadow:0 20px 45px rgb(20 37 54 / .16); }
.black-type-site .bt-story-video video { object-fit:cover; }
.black-type-site .bt-film-small { padding-block:32px; }
.black-type-site .bt-film-small .bt-film-copy h2 { font-size:clamp(2.25rem,3.1vw,3.3rem); }
.black-type-site .bt-film-small .bt-story-video .elementor-wrapper { max-height:310px; overflow:hidden; }
.black-type-site .bt-gallery-section { background:#fff; }
.black-type-site .bt-gallery-section .bt-shell { gap:18px; }
.black-type-site .bt-photo-carousel { margin-top:16px; }
.black-type-site .bt-photo-carousel .swiper-slide-inner { overflow:hidden; background:var(--e-global-color-text); }
.black-type-site .bt-photo-carousel img { width:100%; height:clamp(330px,48vw,570px); object-fit:cover; transition:transform .55s ease,filter .55s ease; }
.black-type-site .bt-photo-carousel .swiper-slide-active img:hover { transform:scale(1.025); filter:saturate(1.08); }
.black-type-site .bt-photo-carousel .elementor-swiper-button { background:var(--e-global-color-primary); color:#fff; width:48px; height:48px; border-radius:50%; display:flex; align-items:center; justify-content:center; opacity:.94; transition:transform .2s ease,background-color .2s ease; }
.black-type-site .bt-photo-carousel .elementor-swiper-button:hover { transform:scale(1.1); background:var(--e-global-color-text); }
.black-type-site .bt-photo-carousel .swiper-pagination-bullet-active { background:var(--e-global-color-primary); }
.black-type-site .bt-merch-section { background:var(--e-global-color-text); color:#fff; }
.black-type-site .bt-merch-row { align-items:center; }
.black-type-site .bt-merch-row > * { width:50%; }
.black-type-site .bt-merch-row img { width:100%; height:420px; object-fit:cover; }
.black-type-site .bt-merch-copy { justify-content:center; align-items:flex-start; gap:20px; padding:30px; }
.black-type-site .bt-merch-copy h2 { color:#fff; }
.black-type-site .bt-merch-copy p { max-width:460px; }
.black-type-site .bt-order-section { text-align:center; background:var(--e-global-color-text); color:#fff; }
.black-type-site .bt-order-section h2 { color:#fff; }
.black-type-site .bt-order-section .bt-shell { align-items:center; }
@keyframes bt-rise-in { from { opacity:.72; transform:translateY(12px); } to { opacity:1; transform:translateY(0); } }
@keyframes bt-soft-reveal { from { opacity:.75; transform:scale(1.02); } to { opacity:1; transform:scale(1); } }
.black-type-site .bt-home-hero-copy > .elementor-widget,.black-type-site .bt-editorial-hero-copy > .elementor-widget { animation:bt-rise-in .45s both; }
.black-type-site .bt-home-hero-copy > .elementor-widget:nth-child(2),.black-type-site .bt-editorial-hero-copy > .elementor-widget:nth-child(2) { animation-delay:.12s; }
.black-type-site .bt-home-hero-copy > .elementor-widget:nth-child(3),.black-type-site .bt-editorial-hero-copy > .elementor-widget:nth-child(3) { animation-delay:.24s; }
.black-type-site .bt-home-hero-photo img,.black-type-site .bt-editorial-hero-image img { animation:bt-soft-reveal .65s both; }
.black-type-site .bt-tile-image img { transition:transform .45s ease,filter .45s ease; }
.black-type-site .bt-tile:hover .bt-tile-image img { transform:scale(1.045); filter:saturate(1.07); }
@media(max-width:767px){.black-type-site .bt-editorial-hero-copy { padding-block:42px; }.black-type-site .bt-editorial-hero-image img { height:250px; }.black-type-site .bt-film-row,.black-type-site .bt-merch-row { flex-direction:column; }.black-type-site .bt-film-copy,.black-type-site .bt-story-video,.black-type-site .bt-merch-row > * { width:100%; }.black-type-site .bt-film-copy { padding-bottom:8px; }.black-type-site .bt-photo-carousel img { height:300px; }.black-type-site .bt-merch-row img { height:270px; }.black-type-site .bt-merch-copy { padding:8px 0 0; }}
@media(prefers-reduced-motion:reduce){.black-type-site .bt-home-hero-copy > .elementor-widget,.black-type-site .bt-editorial-hero-copy > .elementor-widget,.black-type-site .bt-home-hero-photo img,.black-type-site .bt-editorial-hero-image img { animation:none; }.black-type-site .bt-photo-carousel img,.black-type-site .bt-tile-image img { transition:none; }}

/* Reference-inspired shared rhythm and scroll-aware header. */
.black-type-site .site-header { position:sticky; top:0; z-index:1000; padding-block:0; background:#fff; transition:transform .28s ease,box-shadow .28s ease; }
.black-type-site .site-header.bt-header-hidden { transform:translateY(calc(-100% - 2px)); box-shadow:none; }
.black-type-site .site-header .header-inner { width:min(calc(100% - 2 * var(--bt-gutter)),1100px); max-width:1100px; margin-inline:auto; min-height:90px; padding-inline:0; }
.black-type-site .site-header .site-branding img { width:174px; max-width:100%; max-height:64px; }
.black-type-site .site-header .site-navigation a,.black-type-site .site-header .site-navigation-dropdown a { font-family:Oswald,sans-serif; font-weight:600; letter-spacing:.025em; }
.black-type-site .site-header .site-navigation > ul > li > a { font-size:.91rem; }
.black-type-site .site-header .site-navigation ul ul a { font-size:.9rem; }
.black-type-site .site-header .site-navigation > ul { gap:clamp(12px,1.35vw,24px); }
.black-type-site .site-header .site-navigation > ul > li > a { padding-inline:0; }
.admin-bar.black-type-site .site-header { top:32px; }

.black-type-site .bt-film-section,.black-type-site .bt-gallery-section,.black-type-site .bt-beer-section,.black-type-site .bt-tiles-section,.black-type-site .bt-reviews-section { position:relative; isolation:isolate; }
.black-type-site .bt-film-section:before,.black-type-site .bt-tiles-section:before { content:""; position:absolute; z-index:-1; width:220px; height:220px; right:3%; top:18%; border:1px solid rgb(159 117 48 / .15); border-radius:50%; box-shadow:0 0 0 24px rgb(159 117 48 / .035),0 0 0 58px rgb(159 117 48 / .025); pointer-events:none; }
.black-type-site .bt-film-section .bt-shell,.black-type-site .bt-gallery-section .bt-shell,.black-type-site .bt-beer-section .bt-shell,.black-type-site .bt-tiles-section .bt-shell { width:min(calc(100% - 2 * var(--bt-gutter)),var(--bt-shell)); }
.black-type-site .bt-experience-photo { width:63%; }
.black-type-site .bt-experience-photo img { display:block; width:100%; height:clamp(320px,33vw,440px); object-fit:cover; border:8px solid #fff; box-shadow:0 20px 45px rgb(20 37 54 / .16); }
.black-type-site .bt-split-section,.black-type-site .bt-home-visit { width:min(calc(100% - 2 * var(--bt-gutter)),var(--bt-shell)); margin-inline:auto; }
.black-type-site .bt-split-section .bt-shell,.black-type-site .bt-home-visit .bt-shell { width:100%; }
.black-type-site .bt-split-copy { padding:clamp(34px,4.5vw,66px); }
.black-type-site .bt-home-visit { margin-block:clamp(22px,2.5vw,32px); }
.black-type-site .bt-beer-section { background:linear-gradient(180deg,#fff 0%,#faf6ee 100%); }
.black-type-site .bt-beer-carousel { width:100%; margin-top:20px; }
.black-type-site .bt-beer-carousel .swiper-slide { padding:14px; }
.black-type-site .bt-beer-carousel .swiper-slide-inner { display:block; background:#fff; border:1px solid #e8dfd3; padding:16px 16px 24px; box-shadow:0 12px 28px rgb(20 37 54 / .08); }
.black-type-site .bt-beer-carousel img { width:100%; height:250px; object-fit:cover; transition:transform .5s ease; }
.black-type-site .bt-beer-carousel .swiper-slide-active img:hover { transform:scale(1.025); }
.black-type-site .bt-beer-carousel .elementor-image-carousel-caption { color:var(--e-global-color-text); font-family:Oswald,sans-serif; font-size:1.04rem; line-height:1.4; text-transform:uppercase; padding:15px 4px 0; }
.black-type-site .bt-beer-carousel .elementor-swiper-button { width:42px; height:42px; border-radius:50%; background:var(--e-global-color-primary); color:#fff; display:flex; justify-content:center; align-items:center; }
.black-type-site .bt-beer-carousel .swiper-pagination-bullet-active { background:var(--e-global-color-primary); }
.black-type-site .bt-tile-image { overflow:hidden; }
.black-type-site .bt-eyebrow:before { content:""; display:inline-block; width:24px; height:1px; vertical-align:middle; background:var(--e-global-color-secondary); margin-right:10px; }
@media(max-width:1024px){.black-type-site .site-header .header-inner { min-height:82px; }}
@media(max-width:767px){.black-type-site .site-header .header-inner { min-height:72px; }.black-type-site .site-header .site-branding img { width:174px; }.black-type-site .bt-experience-photo { width:100%; }.black-type-site .bt-experience-photo img { height:260px; }.black-type-site .bt-split-section,.black-type-site .bt-home-visit { width:min(calc(100% - 2 * var(--bt-gutter)),var(--bt-shell)); }.black-type-site .bt-split-copy { padding:34px 25px; }.black-type-site .bt-beer-carousel img { height:230px; }.admin-bar.black-type-site .site-header { top:46px; }}
@media(prefers-reduced-motion:reduce){.black-type-site .site-header,.black-type-site .bt-beer-carousel img { transition:none; }}

/* NAP bar, footer details, and Elementor shortcode forms. */
.black-type-site .bt-topbar { background:var(--e-global-color-text); color:#fff; font-family:DM Sans,sans-serif; font-size:.78rem; }
.black-type-site .bt-topbar-inner { width:min(calc(100% - 2 * var(--bt-gutter)),1100px); min-height:38px; margin-inline:auto; display:flex; align-items:center; justify-content:space-between; gap:20px; }
.black-type-site .bt-topbar-links { display:flex; flex-wrap:wrap; gap:22px; align-items:center; }
.black-type-site .bt-topbar a,.black-type-site .bt-footer-info a { color:inherit; text-decoration:none; }
.black-type-site .bt-topbar a:hover,.black-type-site .bt-footer-info a:hover,.black-type-site .bt-bottom-credit a:hover { text-decoration:underline; }
.black-type-site .bt-social-icons { display:flex; gap:12px; align-items:center; }
.black-type-site .bt-social-icons a,.black-type-site .bt-social-placeholder { width:25px; height:25px; display:inline-flex; align-items:center; justify-content:center; }
.black-type-site .bt-social-icons img { width:19px; height:19px; display:block; filter:brightness(0) invert(1); }
.black-type-site .bt-social-placeholder { opacity:.45; cursor:default; }
.black-type-site .site-footer .footer-inner .copyright { display:none !important; }
.black-type-site .bt-footer-info { background:var(--e-global-color-text); color:#fff; border-top:1px solid rgb(255 255 255 / .22); font-family:DM Sans,sans-serif; }
.black-type-site .bt-footer-info-inner { width:min(calc(100% - 2 * var(--bt-gutter)),var(--bt-shell)); margin-inline:auto; padding-block:30px 38px; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; }
.black-type-site .bt-footer-info-inner > div { display:flex; flex-direction:column; align-items:flex-start; gap:8px; font-size:.88rem; line-height:1.5; }
.black-type-site .bt-footer-info-inner strong { font-family:Oswald,sans-serif; font-size:1.05rem; letter-spacing:.06em; }
.black-type-site .bt-bottom-credit { background:#0d1b28; color:#fff; border-top:1px solid rgb(255 255 255 / .14); font-size:.8rem; }
.black-type-site .bt-bottom-credit > div { width:min(calc(100% - 2 * var(--bt-gutter)),var(--bt-shell)); margin:auto; padding-block:18px; display:flex; flex-wrap:wrap; justify-content:space-between; gap:10px 24px; }
.black-type-site .bt-bottom-credit a { color:#fff; }
.black-type-site .bt-inquiry-section { background:#f8f3eb; }
.black-type-site .bt-inquiry-row { align-items:flex-start; }
.black-type-site .bt-inquiry-copy { width:38%; gap:20px; padding-top:20px; }
.black-type-site .bt-inquiry-copy h2 { font-size:clamp(2.7rem,4vw,4rem); }
.black-type-site .bt-inquiry-copy p { max-width:400px; }
.black-type-site .bt-inquiry-copy a { color:var(--e-global-color-primary); }
.black-type-site .bt-inquiry-shortcode { width:62%; }
.black-type-site .bt-inquiry-form-wrap { background:#fff; border:1px solid #e8dfd3; box-shadow:0 20px 40px rgb(20 37 54 / .08); padding:clamp(24px,3vw,44px); }
.black-type-site .bt-inquiry-form { display:flex; flex-direction:column; gap:22px; }
.black-type-site .bt-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.black-type-site .bt-inquiry-form label { display:flex; flex-direction:column; gap:7px; font-weight:700; font-size:.9rem; color:var(--e-global-color-text); }
.black-type-site .bt-inquiry-form input,.black-type-site .bt-inquiry-form select,.black-type-site .bt-inquiry-form textarea { width:100%; min-height:46px; border:1px solid #b7b1aa; border-radius:0; padding:10px 12px; background:#fff; color:#172737; font:inherit; font-weight:400; }
.black-type-site .bt-inquiry-form textarea { min-height:135px; resize:vertical; }
.black-type-site .bt-inquiry-form input:focus,.black-type-site .bt-inquiry-form select:focus,.black-type-site .bt-inquiry-form textarea:focus { outline:2px solid var(--e-global-color-secondary); outline-offset:2px; }
.black-type-site .bt-inquiry-form button { align-self:flex-start; border:0; background:var(--e-global-color-primary); color:#fff; min-height:48px; padding:10px 25px; font-family:Oswald,sans-serif; font-weight:600; font-size:1rem; text-transform:uppercase; cursor:pointer; transition:transform .2s ease,background-color .2s ease; }
.black-type-site .bt-inquiry-form button:hover { transform:translateY(-2px); background:var(--e-global-color-text); }
.black-type-site .bt-form-note { font-size:.8rem; color:#5d646b; }
.black-type-site .bt-form-intro { font-size:.96rem; }
.black-type-site .bt-form-trap { position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
.black-type-site .bt-form-status { margin-bottom:18px; border-left:4px solid var(--e-global-color-secondary); background:#f7f2e8; padding:14px; }
.black-type-site .bt-form-error { border-color:var(--e-global-color-primary); }
@media(max-width:767px){.black-type-site .bt-topbar-inner { min-height:47px; }.black-type-site .bt-topbar-links { gap:4px 12px; justify-content:flex-end; text-align:right; font-size:.7rem; }.black-type-site .bt-topbar-links a:last-child { max-width:145px; }.black-type-site .bt-footer-info-inner { grid-template-columns:repeat(2,minmax(0,1fr)); }.black-type-site .bt-inquiry-row { flex-direction:column; }.black-type-site .bt-inquiry-copy,.black-type-site .bt-inquiry-shortcode { width:100%; }.black-type-site .bt-inquiry-copy { padding-top:0; }.black-type-site .bt-form-grid { grid-template-columns:1fr; }}
@media(max-width:480px){.black-type-site .bt-footer-info-inner { grid-template-columns:1fr 1fr; gap:25px 14px; }.black-type-site .bt-footer-info-inner > div { font-size:.8rem; }.black-type-site .bt-topbar-inner { flex-direction:column; justify-content:center; gap:2px; padding-block:6px; }.black-type-site .bt-topbar-links { justify-content:center; text-align:center; }.black-type-site .bt-topbar-links a:last-child { max-width:none; }}
@media(prefers-reduced-motion:reduce){.black-type-site .bt-inquiry-form button { transition:none; }}


/* Order Online call-to-action: change BT_ORDER_ONLINE_URL in site-chrome.php to update the destination. */
.black-type-site .site-header .site-navigation > ul > li.bt-order-online-item > a {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#9f3026;
  color:#fff;
  padding:12px 16px;
  line-height:1;
  transition:background-color .2s ease,transform .2s ease;
}
.black-type-site .site-header .site-navigation > ul > li.bt-order-online-item > a:hover,
.black-type-site .site-header .site-navigation > ul > li.bt-order-online-item > a:focus {
  background:#84271f;
  color:#fff;
  transform:translateY(-1px);
}
@media(max-width:1024px){
  .black-type-site .site-navigation-dropdown li.bt-order-online-item > a {
    display:block;
    width:calc(100% - 32px);
    margin:12px 16px 16px;
    padding:14px 18px;
    background:#9f3026;
    color:#fff;
    text-align:center;
  }
  .black-type-site .site-navigation-dropdown li.bt-order-online-item > a:hover,
  .black-type-site .site-navigation-dropdown li.bt-order-online-item > a:focus { background:#84271f; color:#fff; }
}


/* Special events and promotions */
.black-type-site .bt-event-promotions { background:#f4f0e8; }
.black-type-site .bt-event-promotions > .bt-shell { gap:18px; align-items:center; }
.black-type-site .bt-promo-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; width:100%; margin-top:10px; }
.black-type-site .bt-promo-card { background:#fff; border-top:5px solid #9f3026; padding:30px; gap:12px; box-shadow:0 12px 28px rgb(20 37 54 / .09); }
.black-type-site .bt-promo-card h3 { color:#142536; margin:0; }
.black-type-site .bt-promo-card p { color:#3d454c; line-height:1.65; }
.black-type-site .bt-promo-card strong { color:#9f3026; }
.black-type-site .bt-promo-cta { margin-top:6px; }
.black-type-site .bt-promo-cta .elementor-button { background:#9f3026; color:#fff; }
.black-type-site .bt-promo-cta .elementor-button:hover { background:#84271f; color:#fff; }
@media(max-width:767px){
  .black-type-site .bt-promo-grid { grid-template-columns:1fr; gap:16px; }
  .black-type-site .bt-promo-card { padding:24px 20px; }
}


/* === BT BEER CARD EQUAL HEIGHTS — added 2026-10-05 ===
   Rollback: remove this entire marked block; the prior stylesheet is otherwise unchanged. */
.black-type-site .bt-beer-carousel .swiper-wrapper { align-items:stretch; }
.black-type-site .bt-beer-carousel .swiper-slide { display:flex; height:auto; }
.black-type-site .bt-beer-carousel .swiper-slide-inner,
.black-type-site .bt-beer-carousel figure { display:flex; flex-direction:column; width:100%; height:100%; }
.black-type-site .bt-beer-carousel figure { margin:0; }
.black-type-site .bt-beer-carousel .elementor-image-carousel-caption {
  display:flex;
  flex:1;
  align-items:center;
  justify-content:center;
  min-height:5.6em;
  text-align:center;
}
/* === END BT BEER CARD EQUAL HEIGHTS === */


/* === BT BEER CAROUSEL IMAGE HEIGHT — added 2026-10-05 ===
   Rollback: remove this entire marked block. */
.black-type-site .bt-beer-carousel img { height:290px; }
@media(max-width:767px){ .black-type-site .bt-beer-carousel img { height:255px; } }
/* === END BT BEER CAROUSEL IMAGE HEIGHT === */


/* === BT FOOTER MENU GUTTERS — added 2026-10-05 ===
   Rollback: remove this entire marked block. */
.black-type-site .site-footer .site-navigation {
  width:min(calc(100% - 2 * var(--bt-gutter)),1100px);
  max-width:1100px;
  margin-inline:auto;
}
.black-type-site .site-footer .site-navigation ul { justify-content:center; }
@media(max-width:767px){
  .black-type-site .site-footer .site-navigation { width:calc(100% - 48px); padding-inline:24px; box-sizing:border-box; }
}
/* === END BT FOOTER MENU GUTTERS === */


/* === BT FOOTER LOGO CENTERING — added 2026-10-05 ===
   Rollback: remove this entire marked block. */
.black-type-site .site-footer .site-branding {
  width:min(calc(100% - 2 * var(--bt-gutter)),1100px);
  max-width:1100px;
  margin-inline:auto;
  display:flex;
  justify-content:center;
  text-align:center;
}
.black-type-site .site-footer .site-branding .site-logo,
.black-type-site .site-footer .site-branding .custom-logo-link { display:flex; justify-content:center; }
/* === END BT FOOTER LOGO CENTERING === */


/* === BT FOOTER COMPACT CENTERED ROW — added 2026-10-05 ===
   Rollback: remove this entire marked block. */
.black-type-site .site-footer .footer-inner {
  width:min(calc(100% - 2 * var(--bt-gutter)),1100px);
  max-width:1100px;
  margin-inline:auto;
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:12px 32px;
}
.black-type-site .site-footer .footer-inner .site-branding,
.black-type-site .site-footer .footer-inner .site-navigation {
  width:auto;
  max-width:none;
  margin:0;
  padding:0;
  flex:0 1 auto;
}
.black-type-site .site-footer .footer-inner .site-branding { flex:0 0 auto; }
.black-type-site .site-footer .footer-inner .site-navigation { flex:1 1 0; min-width:0; max-width:calc(100% - 252px); }
@media(max-width:767px){
  .black-type-site .site-footer .footer-inner { flex-direction:column; gap:8px; }
  .black-type-site .site-footer .footer-inner .site-navigation { width:100%; max-width:none; flex:0 1 auto; padding-inline:24px; box-sizing:border-box; }
}
/* === END BT FOOTER COMPACT CENTERED ROW === */


/* === BT UNIFORM FOOTER WIDTHS — added 2026-10-05 ===
   Rollback: remove this entire marked block. */
.black-type-site .site-footer .footer-inner,
.black-type-site .bt-footer-info-inner,
.black-type-site .bt-bottom-credit > div {
  width:min(calc(100% - 2 * var(--bt-gutter)),1100px);
  max-width:1100px;
  margin-inline:auto;
  box-sizing:border-box;
}
/* === END BT UNIFORM FOOTER WIDTHS === */


/* === BT HOME VISIT ADDRESS ONE LINE — added 2026-10-05 ===
   Rollback: remove this block and use the address-only restore saved in layout-pass.php. */
@media(min-width:768px){
  .black-type-site .bt-home-visit .bt-visit-panel:first-child { width:45%; padding-inline:24px; }
  .black-type-site .bt-home-visit .bt-visit-panel:nth-child(2) { width:22%; }
  .black-type-site .bt-home-visit .bt-visit-photo { width:33%; }
  .black-type-site .bt-home-visit .bt-visit-panel:first-child .elementor-widget-heading { width:100%; }
  .black-type-site .bt-home-visit .bt-visit-panel:first-child h3 { font-size:.95rem; white-space:nowrap; }
}
/* === END BT HOME VISIT ADDRESS ONE LINE === */


/* === BT HOME HOURS BALANCE — added 2026-10-05 ===
   Rollback: remove this entire marked block. */
@media(min-width:768px){
  .black-type-site .bt-home-visit .bt-visit-panel:nth-child(2) { width:27%; padding-inline:24px; }
  .black-type-site .bt-home-visit .bt-visit-photo { width:28%; }
  .black-type-site .bt-home-visit .bt-visit-panel:nth-child(2) .elementor-widget-text-editor { width:100%; }
  .black-type-site .bt-home-visit .bt-visit-panel:nth-child(2) .elementor-widget-text-editor p { white-space:nowrap; line-height:1.8; font-size:.95rem; }
}
/* === END BT HOME HOURS BALANCE === */


/* === BT FOOTER UNIFIED COMPACT SPACING — added 2026-10-05 ===
   Rollback: remove this entire marked block. */
.black-type-site .site-footer { padding-block:10px; }
.black-type-site .site-footer .footer-inner,
.black-type-site .bt-footer-info-inner,
.black-type-site .bt-bottom-credit > div {
  width:min(calc(100% - 2 * var(--bt-gutter)),1100px);
  max-width:1100px;
  margin-inline:auto;
  box-sizing:border-box;
}
.black-type-site .site-footer .footer-inner { gap:8px 32px; }
.black-type-site .bt-footer-info-inner { padding-block:24px; }
.black-type-site .bt-bottom-credit > div { padding-block:14px; }
@media(max-width:767px){
  .black-type-site .site-footer { padding-block:12px; }
  .black-type-site .bt-footer-info-inner { padding-block:22px; }
  .black-type-site .bt-bottom-credit > div { padding-block:14px; }
}
/* === END BT FOOTER UNIFIED COMPACT SPACING === */


/* === BT BOTTOM CREDIT COLUMN ALIGNMENT — added 2026-10-05 ===
   Rollback: remove this block and remove the bt-copyright span in site-chrome.php. */
.black-type-site .bt-bottom-credit > div {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  column-gap:24px;
  align-items:center;
}
.black-type-site .bt-bottom-credit .bt-copyright { grid-column:1 / span 2; justify-self:start; }
.black-type-site .bt-bottom-credit a { grid-column:4; justify-self:start; text-align:left; white-space:nowrap; }
@media(max-width:767px){
  .black-type-site .bt-bottom-credit > div { display:flex; flex-direction:column; align-items:center; gap:8px; }
  .black-type-site .bt-bottom-credit .bt-copyright,
  .black-type-site .bt-bottom-credit a { text-align:center; white-space:normal; }
}
/* === END BT BOTTOM CREDIT COLUMN ALIGNMENT === */

/* BT BOTTOM CREDIT TYPE FIT — rollback: remove this line. */
.black-type-site .bt-bottom-credit > div { font-size:.72rem; }


/* === BT HIDE FOOTER LEGAL LINKS — added 2026-10-05 ===
   Rollback: remove this entire marked block. Pages remain published and accessible. */
.black-type-site .site-footer #menu-item-1178,
.black-type-site .site-footer #menu-item-1179 { display:none; }
/* === END BT HIDE FOOTER LEGAL LINKS === */
