/* BBQ4YOU inner pages (About, Find a dealer, B2B, Outdoor kitchen, Pergola, Contact) in the home page style */
.bqp{--red:#DA292A;--red-dark:#B51E1F;--ink:#120E09;--cream:#F4EFE8;--sand:#E4DCC7;--ember:#FF8A1F;--muted:#6b635b;--line:#e6e0d8;--ease-out:cubic-bezier(0.23,1,0.32,1);font-family:"Montserrat",system-ui,sans-serif;color:var(--ink);-webkit-font-smoothing:antialiased}
.bqp *,.bqp *::before,.bqp *::after{box-sizing:border-box}
.bqp-in{max-width:1320px;margin:0 auto;padding:88px 24px}
.bqp-sec{background:#fff}
.bqp-sec--cream{background:var(--cream)}
.bqp-sec--dark{background:#000;color:var(--cream)}
.bqp-sec + .bqp-sec:not(.bqp-sec--cream):not(.bqp-sec--dark) .bqp-in{padding-top:0}

/* type */
.bqp .bqp-eyebrow{margin:0 0 14px;font-size:14px;font-weight:700;letter-spacing:.02em;line-height:1.3;color:var(--red-dark);text-transform:none}
.bqp-hero .bqp-eyebrow,.bqp-sec--dark .bqp-eyebrow{color:var(--ember)}
.bqp .bqp-h1{margin:0;font-family:"Montserrat",system-ui,sans-serif;font-weight:800;font-size:clamp(40px,1.6rem + 3.4vw,76px);line-height:1;letter-spacing:-.03em;color:inherit;text-transform:none}
.bqp .bqp-h2{margin:0;font-family:"Montserrat",system-ui,sans-serif;font-weight:800;font-size:clamp(30px,1.2rem + 2vw,48px);line-height:1.06;letter-spacing:-.025em;color:inherit;text-transform:none;text-wrap:balance}
.bqp .bqp-h3{margin:0;font-family:"Montserrat",system-ui,sans-serif;font-weight:800;font-size:20px;line-height:1.25;letter-spacing:-.01em;color:inherit;text-transform:none}
.bqp .bqp-lead{margin:20px 0 0;max-width:56ch;font-size:clamp(17px,1rem + .3vw,20px);line-height:1.55;font-weight:500}
.bqp .bqp-p{margin:14px 0 0;max-width:64ch;font-size:16px;line-height:1.7;color:#3b3530}
.bqp-sec--dark .bqp-p,.bqp-hero .bqp-p{color:#cfc6ba}
.bqp-hero .bqp-lead{color:#e9e2d8}
.bqp-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:40px}
.bqp-head--center{flex-direction:column;align-items:center;text-align:center}
.bqp-head--center .bqp-p{margin-left:auto;margin-right:auto}

/* buttons */
.bqp-ctas{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin-top:32px}
.bqp .bqp-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 28px;margin:0;border:0;border-radius:4px;font:700 15px/1 "Montserrat",sans-serif;letter-spacing:0;text-transform:none;text-decoration:none;cursor:pointer;box-shadow:none;transition:background-color .15s ease,color .15s ease,border-color .15s ease,transform .12s var(--ease-out)}
.bqp .bqp-btn:active{transform:scale(.97)}
.bqp .bqp-btn--red{background:var(--red);color:#fff}
.bqp .bqp-btn--dark{background:var(--ink);color:#fff}
.bqp .bqp-btn--ghost{background:transparent;border:1.5px solid currentColor;color:inherit}
.bqp .bqp-link{font-weight:700;color:inherit;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:4px}
@media (hover:hover) and (pointer:fine){
 .bqp .bqp-btn--red:hover{background:var(--red-dark);color:#fff}
 .bqp .bqp-btn--dark:hover{background:#2c251e;color:#fff}
 .bqp .bqp-btn--ghost:hover{color:var(--ember)}
 .bqp-sec:not(.bqp-sec--dark) .bqp-btn--ghost:hover,.bqp-sec--cream .bqp-btn--ghost:hover{color:var(--red)}
 .bqp .bqp-link:hover{color:var(--red)}
 .bqp-hero .bqp-link:hover,.bqp-sec--dark .bqp-link:hover{color:var(--ember)}
}

/* hero */
.bqp-hero{position:relative;overflow:hidden;background:#000;color:#fff;isolation:isolate}
.bqp-hero::before{content:"";position:absolute;inset:auto -10% -40% -10%;height:80%;background:radial-gradient(50% 60% at 30% 100%,rgba(255,138,31,.22),transparent 70%),radial-gradient(40% 50% at 80% 100%,rgba(218,41,42,.18),transparent 70%);z-index:-1;pointer-events:none}
.bqp-hero .bqp-in{padding-top:96px;padding-bottom:96px}
.bqp-hero--photo .bqp-in{display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center;padding-top:72px;padding-bottom:72px}
.bqp-hero-photo{margin:0;border-radius:16px;overflow:hidden;aspect-ratio:4/3;background:#111}
.bqp-hero-photo img{display:block;width:100%;height:100%;object-fit:cover;margin:0}
.bqp-hero-photo--contain{background:#000}
.bqp-hero-photo--contain img{object-fit:contain}
.bqp-facts{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0 0;padding:0;list-style:none}
.bqp-facts li{margin:0;padding:9px 14px;border:1px solid rgba(244,239,232,.22);border-radius:999px;font-size:14px;font-weight:600;color:#e9e2d8}

/* two columns */
.bqp-grid2{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.bqp-grid2--top{align-items:start}
.bqp-photo{margin:0;border-radius:16px;overflow:hidden;aspect-ratio:4/3;background:var(--cream)}
.bqp-photo img{display:block;width:100%;height:100%;object-fit:cover;margin:0}
.bqp-photo--tall{aspect-ratio:4/5}

/* list with ticks */
.bqp-ticks{display:grid;gap:0;margin:24px 0 0;padding:0;list-style:none;max-width:60ch}
.bqp-ticks li{position:relative;margin:0;padding:14px 0 14px 34px;border-top:1px solid var(--line);font-size:16px;font-weight:600;line-height:1.5}
.bqp-ticks li:last-child{border-bottom:1px solid var(--line)}
.bqp-ticks li::before{content:"";position:absolute;left:2px;top:19px;width:18px;height:10px;border-left:2.5px solid var(--red);border-bottom:2.5px solid var(--red);transform:rotate(-45deg)}
.bqp-sec--dark .bqp-ticks li{border-color:rgba(244,239,232,.16)}

/* cards */
.bqp-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.bqp-card{margin:0;padding:32px 28px;border-radius:16px;background:#fff;border:1px solid var(--line)}
.bqp-sec:not(.bqp-sec--cream) .bqp-card{background:var(--cream);border-color:transparent}
.bqp-card .bqp-p{font-size:15px}
.bqp-card-ico{display:grid;place-items:center;width:48px;height:48px;margin-bottom:20px;border-radius:50%;background:var(--red);color:#fff}
.bqp-card-ico svg{width:22px;height:22px}

/* dealers */
.bqp-dealers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.bqp-dealer{display:flex;flex-direction:column;gap:6px;margin:0;padding:24px;border-radius:16px;background:#fff;border:1px solid var(--line)}
.bqp-dealer .bqp-county{align-self:flex-start;margin:0 0 6px;padding:5px 10px;border-radius:999px;background:var(--cream);font-size:12px;font-weight:700;color:var(--red-dark)}
.bqp-dealer .bqp-h3{font-size:18px}
.bqp-dealer address{margin:0 0 10px;font-style:normal;font-size:14px;line-height:1.55;color:var(--muted)}
.bqp-dealer-links{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:auto;padding-top:14px;border-top:1px solid var(--line)}
.bqp-dealer-links a{display:inline-flex;align-items:center;gap:7px;min-height:32px;font-size:14px;font-weight:700;color:var(--ink);text-decoration:none}
.bqp-dealer-links a svg{width:16px;height:16px;color:var(--red)}
@media (hover:hover) and (pointer:fine){.bqp-dealer-links a:hover{color:var(--red-dark)}}
.bqp-map{border-radius:16px;overflow:hidden;background:var(--sand);aspect-ratio:16/7}
.bqp-map iframe{display:block;width:100%;height:100%;border:0;margin:0}

/* gallery and swatches */
.bqp-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.bqp-gallery a{display:block;border-radius:12px;overflow:hidden;aspect-ratio:1;background:var(--cream)}
.bqp-gallery--wide a{aspect-ratio:4/3}
.bqp-gallery img{display:block;width:100%;height:100%;object-fit:cover;margin:0;transition:transform .5s var(--ease-out)}
.bqp-gallery--contain a{background:#fff;border:1px solid var(--line)}
.bqp-gallery--contain img{object-fit:contain;padding:8px}
@media (hover:hover) and (pointer:fine){.bqp-gallery a:hover img{transform:scale(1.04)}}
.bqp-swatches{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:20px}
.bqp-swatch{margin:0}
.bqp-swatch a{display:block;border-radius:12px;overflow:hidden;aspect-ratio:1}
.bqp-swatch img{display:block;width:100%;height:100%;object-fit:cover;margin:0}
.bqp-swatch figcaption{margin-top:10px;font-size:14px;font-weight:700}
.bqp-sub{margin-top:48px}
.bqp-sub:first-child{margin-top:0}

/* contact */
.bqp-info{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.bqp-info .bqp-card{display:flex;flex-direction:column}
.bqp-info .bqp-big{display:inline-block;margin-top:10px;font-size:20px;font-weight:800;color:var(--ink);text-decoration:none;overflow-wrap:anywhere}
@media (hover:hover) and (pointer:fine){.bqp-info a.bqp-big:hover{color:var(--red)}}
.bqp-hours{display:grid;grid-template-columns:auto 1fr;gap:0 24px;margin:14px 0 0;font-size:15px}
.bqp-hours dt,.bqp-hours dd{margin:0;padding:9px 0;border-top:1px solid var(--line);font-weight:600;text-transform:none;letter-spacing:0}
.bqp-hours dt{color:var(--ink)}
.bqp-hours dd{text-align:right;color:var(--muted)}
.bqp-hours .is-open{color:var(--ink);font-weight:700}

/* band CTA */
.bqp-band .bqp-in{display:flex;justify-content:space-between;align-items:center;gap:32px;padding-top:64px;padding-bottom:64px}
.bqp-band .bqp-ctas{margin-top:0;flex:none}

/* long text (About) */
.bqp-prose{max-width:720px}
.bqp-prose .bqp-p{max-width:none;font-size:17px}

/* embedded widgets: Elementor form, CF7, WooCommerce products, Google map */
.bqp-formcard{padding:36px;border-radius:16px;background:#fff;border:1px solid var(--line)}
.bqp-sec:not(.bqp-sec--cream) .bqp-formcard{background:var(--cream);border-color:transparent}
.elementor-widget.bqp-w{margin-bottom:0}
.bqp-wrap-sec{background:var(--cream)}
.bqp-wrap-sec > .e-con-inner,.bqp-wrap-sec.e-con-boxed > .e-con-inner{max-width:1320px}
.bqp-formcard label,.bqp-form label,.bqp-form .elementor-field-label{display:block;margin:0 0 6px;font:700 14px/1.3 "Montserrat",sans-serif;color:var(--ink);text-transform:none;letter-spacing:0}
.bqp-form input[type=text],.bqp-form input[type=email],.bqp-form input[type=tel],.bqp-form textarea,.bqp-form select,.bqp-form .elementor-field-textual{width:100%;min-height:50px;margin:0;padding:12px 16px;border:1.5px solid #d9d2c8;border-radius:8px;background:#fff;box-shadow:none;font:500 16px/1.4 "Montserrat",sans-serif;color:var(--ink)}
.bqp-form textarea{min-height:140px}
.bqp-form input:focus,.bqp-form textarea:focus,.bqp-form select:focus{outline:none;border-color:var(--ink);box-shadow:none}
.bqp-form .wpcf7-form p{margin:0 0 16px}
.bqp-form input[type=submit],.bqp-form button[type=submit],.bqp-form .elementor-button{min-height:52px;margin:0;padding:0 32px;border:0;border-radius:4px;background:var(--red);color:#fff;font:700 15px/1 "Montserrat",sans-serif;text-transform:none;letter-spacing:0;box-shadow:none;cursor:pointer}
@media (hover:hover) and (pointer:fine){.bqp-form input[type=submit]:hover,.bqp-form button[type=submit]:hover,.bqp-form .elementor-button:hover{background:var(--red-dark);color:#fff}}
.bqp-form .elementor-field-group{margin-bottom:16px}
.bqp-form .elementor-form-fields-wrapper{margin:0}

@media (max-width:1024px){
 .bqp-hero--photo .bqp-in,.bqp-grid2{grid-template-columns:1fr;gap:40px}
 .bqp-cards,.bqp-dealers,.bqp-info{grid-template-columns:1fr 1fr}
 .bqp-gallery,.bqp-swatches{grid-template-columns:repeat(3,minmax(0,1fr))}
 .bqp-map{aspect-ratio:4/3}
}
@media (max-width:640px){
 .bqp-in{padding:56px 16px}
 .bqp-hero .bqp-in,.bqp-hero--photo .bqp-in{padding-top:48px;padding-bottom:56px}
 .bqp-cards,.bqp-dealers,.bqp-info{grid-template-columns:1fr}
 .bqp-gallery,.bqp-swatches{grid-template-columns:1fr 1fr;gap:10px}
 .bqp-head{flex-direction:column;align-items:flex-start;margin-bottom:28px}
 .bqp-head--center{align-items:center}
 .bqp-band .bqp-in{flex-direction:column;align-items:flex-start;padding-top:48px;padding-bottom:48px}
 .bqp-formcard{padding:24px 18px}
 .bqp-card{padding:26px 22px}
 .bqp .bqp-btn{width:100%}
 .bqp-ctas{width:100%}
}
@media (prefers-reduced-motion:reduce){.bqp .bqp-btn,.bqp-gallery img{transition:none}}
.bqp-gmap iframe{display:block;width:100%;height:440px;border:0;border-radius:16px;margin:0}
.bqp-formcol .elementor-widget:not(:last-child){margin-bottom:0}
@media (max-width:640px){.bqp-gmap iframe{height:320px}}
/* photo cards and spec list (Pergola) */
.bqp-cards--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.bqp-card--photo{display:flex;flex-direction:column;padding:0;overflow:hidden}
.bqp-card--photo figure{margin:0;aspect-ratio:4/3;overflow:hidden;background:var(--sand)}
.bqp-card--photo figure img{display:block;width:100%;height:100%;object-fit:cover;margin:0}
.bqp-card-body{display:flex;flex-direction:column;flex:1;padding:24px 24px 28px}
.bqp-card-more{margin-top:auto;padding-top:16px;font-size:14px}
.bqp-sec--cream .bqp-card--photo{background:#fff}
.bqp-spec{display:grid;grid-template-columns:minmax(120px,auto) 1fr;margin:24px 0 8px;font-size:15px}
.bqp-spec dt,.bqp-spec dd{margin:0;padding:12px 0;border-top:1px solid #d9d0c3;text-transform:none;letter-spacing:0}
.bqp-spec dt{font-weight:700;color:var(--ink);padding-right:20px}
.bqp-spec dd{color:#3b3530;font-weight:500}
.bqp-sec--dark .bqp-photo{background:#111}
@media (max-width:1024px){.bqp-cards--4{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.bqp-cards--4{grid-template-columns:1fr}.bqp-spec{grid-template-columns:1fr}.bqp-spec dd{padding-top:0;border-top:0}}
/* hero photo shown whole, no crop */
.bqp-hero-photo--full{aspect-ratio:auto;background:transparent}
.bqp-hero-photo--full img{height:auto;object-fit:initial}
