:root { --rw-container-width: 1440px; --rw-container-gutter: max(24px, calc((100% - var(--rw-container-width)) / 2)); }
@font-face{font-family:"Playfair Display";src:url("playfair-display-700.ttf") format("truetype");font-weight:700;font-display:swap}
.rw-fire-hero.wp-block-cover{position:relative;min-height:clamp(740px,86svh,1100px);padding:0 var(--rw-container-gutter);overflow:visible;color:#fff;background:#3f1205;margin:0}
.rw-fire-hero .wp-block-cover__image-background{object-position:center 48%}
.rw-fire-hero>.wp-block-cover__inner-container{width:100%;align-self:stretch;display:flex;flex-direction:column;position:relative;z-index:4}
.rw-fire-header{display:flex;justify-content:space-between;align-items:center;padding:12px 0;gap:20px}
.rw-fire-logo{margin:0;width:150px}.rw-fire-logo img{display:block;width:100%;height:auto}
.rw-fire-content{text-align:center;margin:auto 0!important;padding:95px 0 155px}
.rw-fire-eyebrow{font:400 clamp(13px,1.45vw,23px)/1.4 "Instrument Sans",sans-serif;margin:0 0 32px}
.rw-fire-title.wp-block-heading{font:700 clamp(54px,7.5vw,150px)/.96 "Playfair Display",Georgia,serif!important;letter-spacing:-.025em!important;color:#fff;margin:0 auto 46px;max-width:1600px;overflow-wrap:normal}
.rw-fire-actions{justify-content:center;gap:24px}
.rw-fire-hero .wp-block-button__link{display:flex;align-items:center;justify-content:center;gap:20px;min-width:205px;min-height:56px;padding:14px 64px 14px 28px;border:1px solid #ec754e;border-radius:5px;font:600 16px/1.3 "Instrument Sans",sans-serif;letter-spacing:0;text-decoration:none}
.rw-fire-hero .rw-fire-white .wp-block-button__link{background:#fff;color:#78321d}
.rw-fire-hero .rw-fire-orange .wp-block-button__link{background:#E64326;color:#fff;border-color:#f4d2c3}
@media (hover: hover) and (pointer: fine) {
  .rw-fire-hero .wp-block-button__link:hover { filter: none; transform: none; }
  .rw-fire-hero .rw-fire-white .wp-block-button__link:hover { background: #fff0e9; }
  .rw-fire-hero .rw-fire-orange .wp-block-button__link:hover { background: #c9341b; }
}
.rw-fire-badge{position:absolute;left:50%;bottom:-80px;transform:translateX(-50%);width:170px;height:185px;background:radial-gradient(#fffdf1,#f7e5ac);color:#722410;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:4;clip-path:polygon(50% 0,64% 12%,83% 12%,88% 32%,100% 50%,88% 66%,85% 86%,65% 88%,50% 100%,34% 88%,15% 86%,12% 66%,0 50%,12% 32%,16% 13%,36% 12%)}
.rw-fire-badge p{margin:0;line-height:1.1}.rw-fire-stars{color:#d5aa40;font-size:20px;letter-spacing:2px}.rw-fire-score{font-size:48px;font-weight:700}.rw-fire-review-count{font-size:14px}.rw-fire-badge .rw-fire-demo{font-size:9px;margin-top:10px}
.rw-fire-after{padding:120px 24px 40px;text-align:center;background:white;color:#78321d}.rw-fire-note{font-size:13px}
@media(max-width:767px){.rw-fire-hero.wp-block-cover{min-height:760px;padding:0 22px}.rw-fire-header{padding:12px 0}.rw-fire-logo{width:108px}.rw-fire-header .wp-block-button__link{min-width:135px;min-height:44px;padding:10px 54px 10px 16px;font-size:13px}.rw-fire-content{padding:85px 0 140px}.rw-fire-title.wp-block-heading{font-size:clamp(43px,9.4vw,70px)!important;margin-bottom:32px}.rw-fire-eyebrow{font-size:12px;margin-bottom:25px}.rw-fire-actions{gap:12px}.rw-fire-actions .wp-block-button__link{min-width:150px;padding:13px 54px 13px 18px;font-size:14px}.rw-fire-badge{width:140px;height:154px;bottom:-66px}}

.rw-fire-white{--rw-button-arrow-color:#E64326}
.rw-fire-eyebrow{display:flex;align-items:center;justify-content:center;gap:10px}
.rw-fire-eyebrow::before{content:"";display:inline-block;width:25px;height:30px;background:currentColor;mask:url("flame.svg") center/contain no-repeat;-webkit-mask:url("flame.svg") center/contain no-repeat}

/* Reusable native-block composition: editorial introduction and photo strip. */
.rw-food-section{background:#fff;color:#762614;padding:145px 0 70px;margin:0!important;overflow:hidden}
.rw-food-intro{text-align:center;padding:0 var(--rw-container-gutter);max-width:none;margin:0 auto}
.rw-food-title.wp-block-heading{font:700 clamp(40px,5.65vw,108px)/1.12 "Playfair Display",Georgia,serif;letter-spacing:-.055em;color:#762614;margin:0 auto 32px;max-width:1750px}
.rw-food-title .rw-food-inline{display:inline-block;width:.98em!important;height:1.04em;object-fit:cover;border-radius:50%;vertical-align:-.14em;margin:0 .04em}
.rw-food-copy{font:400 clamp(16px,1.4vw,24px)/1.45 "Instrument Sans",sans-serif;max-width:1030px;margin:0 auto 40px;color:#833d2c}
.rw-food-actions{justify-content:center}
.rw-food-reserve .wp-block-button__link{min-width:205px;min-height:54px;padding:14px 65px 14px 28px;background:#E64326;color:#fff;border-radius:5px;border:0;font:600 16px/1.3 "Instrument Sans",sans-serif}
@media(hover:hover) and (pointer:fine){.rw-food-reserve .wp-block-button__link:hover{background:#c9341b}}
.rw-food-photos{display:flex;align-items:center;justify-content:center;gap:0;margin:65px -3% 0!important;padding:25px 0 55px}
.rw-food-photos .rw-food-photo{flex:0 0 27%;width:27%;max-width:none;margin:0 -0.7%;position:relative}
.rw-food-photo img{display:block;width:100%;height:clamp(290px,30vw,570px);object-fit:cover;border-radius:18px}
.rw-food-photo-1{transform:rotate(9deg);z-index:1}
.rw-food-photo-2{transform:rotate(-7deg) translateY(55px);z-index:2}
.rw-food-photo-2 img{height:clamp(245px,23vw,450px)}
.rw-food-photo-3{transform:rotate(8deg);z-index:3}
.rw-food-photo-4{transform:rotate(-7deg) translateY(25px);z-index:4}.rw-food-photo-4 img{object-position:80% center}
@media(max-width:767px){.rw-food-section{padding-top:110px;padding-bottom:35px}.rw-food-intro{padding:0 22px}.rw-food-title.wp-block-heading{font-size:clamp(34px,7.4vw,54px);line-height:1.2;letter-spacing:-.045em;margin-bottom:24px}.rw-food-copy{font-size:16px;margin-bottom:26px}.rw-food-photos{display:grid;grid-template-columns:1fr 1fr;gap:20px 0;margin:35px -2% 0!important;padding:15px 0 30px}.rw-food-photos .rw-food-photo{width:100%;margin:0}.rw-food-photo img,.rw-food-photo-2 img{height:240px;border-radius:12px}.rw-food-photo-2{transform:rotate(-7deg) translateY(20px)}.rw-food-photo-4{transform:rotate(-7deg) translateY(20px)}}

.rw-food-section { overflow: clip; }
.rw-food-reveal .rwsr { min-height: 0; }
.rw-food-reveal .rwsr-sticky { min-height: 0; }
.rw-food-reveal .rwsr-text { font-family: "Playfair Display", Georgia, serif; }
.editor-styles-wrapper .rw-food-reveal .rwsr-sticky { height: auto; min-height: 0; }

.rw-food-next .wp-block-richway-text-marquee { max-width: none; width: 100%; }
.rw-food-next .rwtm-text { font-family: "Playfair Display", Georgia, serif; font-weight: 700; font-size: clamp(38px, 5.5vw, 88px); color: #781B0A; }
.rw-food-next .rwtm-separator { color: #781B0A; }

/* Catering moments: native groups, columns, images and shared Richway buttons. */
.rw-food-next .rw-bbq-services { max-width: none; padding: 0 var(--rw-container-gutter); margin: 0 auto; color: #781b0a; }
.rw-bbq-intro { text-align: center; padding: 85px 0 90px; }
.rw-bbq-kicker { font: 600 12px/1.5 "Instrument Sans", sans-serif; letter-spacing: .12em; text-transform: uppercase; margin: 0 0 22px; }
.rw-bbq-intro-title.wp-block-heading { font: 700 clamp(44px, 5.7vw, 86px)/1.04 "Playfair Display", Georgia, serif; letter-spacing: -.045em; color: inherit; margin: 0 0 26px; }
.rw-bbq-lead { font: 400 18px/1.6 "Instrument Sans", sans-serif; margin: 0; }
.rw-bbq-row.wp-block-columns { align-items: center; gap: clamp(40px, 7vw, 110px); margin: 0 0 140px; }
.rw-bbq-row-reverse { flex-direction: row-reverse; }
.rw-bbq-row .rw-bbq-media { flex: 1.05; min-width: 0; }
.rw-bbq-row .rw-bbq-text { flex: 1; min-width: 0; }
.rw-bbq-photo { position: relative; margin: 0; transform: rotate(-3deg); }
.rw-bbq-row-reverse .rw-bbq-photo { transform: rotate(3deg); }
.rw-bbq-photo img { display: block; width: 100%; aspect-ratio: 1 / 1.12; object-fit: cover; border-radius: 140px 140px 16px 16px; }
.rw-bbq-photo .wp-element-caption { position: absolute; bottom: 24px; left: -16px; padding: 13px 20px; margin: 0; background: #e64326; color: white; font: 600 14px/1.4 "Instrument Sans", sans-serif; transform: rotate(-3deg); border-radius: 3px; }
.rw-bbq-title.wp-block-heading { font: 700 clamp(36px, 3.8vw, 58px)/1.08 "Playfair Display", Georgia, serif; color: inherit; letter-spacing: -.045em; margin: 0 0 28px; }
.rw-bbq-subtitle { font: 600 20px/1.4 "Instrument Sans", sans-serif; margin: 0 0 18px; }
.rw-bbq-copy { font: 400 17px/1.75 "Instrument Sans", sans-serif; max-width: 490px; margin: 0 0 26px; }
.rw-bbq-tags { border-top: 1px solid #781b0a30; padding-top: 19px; margin: 0 0 28px; font: 500 12px/1.7 "Instrument Sans", sans-serif; }
.rw-bbq-row:last-child { margin-bottom: 20px; }
@media(max-width:781px) {
 .rw-food-next .rw-bbq-services { padding: 0 26px; }
 .rw-bbq-intro { padding: 55px 0 65px; }
 .rw-bbq-row.wp-block-columns { flex-direction: column; gap: 42px; margin-bottom: 85px; }
 .rw-bbq-row .wp-block-column { width: 100%; }
 .rw-bbq-photo { margin: 0 10px; }
 .rw-bbq-photo img { aspect-ratio: 1 / 1; border-radius: 100px 100px 12px 12px; }
 .rw-bbq-photo .wp-element-caption { left: -10px; font-size: 12px; }
 .rw-bbq-copy { font-size: 16px; }
 .rw-bbq-title.wp-block-heading { font-size: clamp(34px, 7.5vw, 48px); }
}

.rw-food-orange-section > .rw-bram-columns { width:calc(100% - 48px); max-width:1440px!important; box-sizing:border-box; margin:auto!important; padding:0; gap:7%!important; align-items:center!important; color:#fff5e6; }
.rw-bram-title { font:700 clamp(44px,5vw,76px)/1.05 "Playfair Display",serif; letter-spacing:-.04em; color:inherit; margin:18px 0 28px; }
.rw-bram-copy { font:400 18px/1.7 "Instrument Sans",sans-serif; }
.rw-bram-label { font:600 12px/1.4 "Instrument Sans",sans-serif; letter-spacing:.12em; }
@media(max-width:781px){.rw-bram-columns{gap:40px!important}.rw-bram-copy{font-size:16px}}

.rw-bram-button .wp-block-button__link { background:#fff; color:#781b0a; border-radius:5px; padding:15px 72px 15px 24px; font:600 15px/1.4 "Instrument Sans",sans-serif; }
@media(hover:hover) and (pointer:fine){.rw-bram-button .wp-block-button__link:hover{background:#e64326;color:#fff}}

.rw-food-reviews { background:#f5ebd8; color:#781b0a; padding:90px 0; margin:0!important; overflow:hidden; }
.rw-food-reviews-heading { width:calc(100% - 48px); max-width:1440px; padding:0; margin:0 auto 45px; }
.rw-food-reviews-title.wp-block-heading { font:700 clamp(42px,6vw,88px)/1.05 "Playfair Display",Georgia,serif; letter-spacing:-.045em; color:inherit; margin:0 0 20px; }
.rw-food-reviews-heading>p:last-child { font:400 14px/1.5 "Instrument Sans",sans-serif; }
.rw-food-reviews .rwrev-stars { display:none; }
@media(max-width:781px){.rw-food-reviews{padding:60px 0}.rw-food-reviews-heading{padding:0 24px}}

.rw-ending-workflow,.rw-ending-faq,.rw-ending-inquiry,.rw-ending-footer{margin:0!important;padding:90px var(--rw-container-gutter);background:#f5ebd8;color:#781b0a;font-family:"Instrument Sans",sans-serif}.rw-ending-inner{max-width:1440px;margin:auto}.rw-ending-title.wp-block-heading{font:700 clamp(40px,5vw,72px)/1.06 "Playfair Display",serif;letter-spacing:-.04em;color:inherit;margin:0 0 42px}
.rw-ending-inner > .rw-bbq-kicker,
.rw-ending-inquiry-copy > .rw-bbq-kicker {
  margin-block: 0 24px;
}
.rw-ending-workflow { background: #781b0a; color: #f5ebd8; }
.rw-ending-workflow .rw-bbq-kicker { color: #f5ebd8; text-align: center; justify-content: center; }
.rw-ending-workflow .rw-ending-title { text-align: center; margin-bottom: 60px; }
.rw-ending-workflow .rw-process { gap: 28px; }
.rw-ending-workflow .rw-process__step {
  position: relative;
  padding: 36px 32px;
  min-height: 320px;
  box-sizing: border-box;
  background: #fff;
  color: #781b0a;
  border: 1px solid #781b0a12;
  border-radius: 20px;
  box-shadow: 0 8px 28px #781b0a06;
  overflow: visible;
}
/* A subtle stagger replaces the decorative connectors. */
.rw-ending-workflow .rw-process__step::before,
.rw-ending-workflow .rw-process__step::after { content: none; }
.rw-ending-workflow .rw-process__step:nth-child(2) { transform: translateY(-22px); }
.rw-ending-workflow .rw-process.rw-process--background .rw-process__step > span {
  color: #e64326;
  font-size: clamp(150px, 15vw, 200px);
  right: 18px;
  margin: 0;
  opacity: .1;
}
@media (max-width: 781px) {
  .rw-ending-workflow .rw-process { gap: 20px; }
  .rw-ending-workflow .rw-process__step { padding: 28px; min-height: 280px; display: block; }
  .rw-ending-workflow .rw-process__step:nth-child(2) { transform: none; }
  .rw-ending-workflow .rw-process.rw-process--background .rw-process__step > span { font-size: 160px; }
}
.rw-ending-faq{background:#fffaf1}.rw-ending-faq .rw-ending-inner{max-width:1440px}
.rw-ending-faq .rw-ending-title,
.rw-ending-faq .rw-bbq-kicker {
  text-align: center;
}
.rw-ending-faq .rw-bbq-kicker { justify-content: center; }
.rw-ending-faq .rwfaq {
  --rwfaq-toggle-bg: #e64326;
  --rwfaq-toggle-icon: #fff;
  --rwfaq-toggle-open-bg: #781b0a;
  --rwfaq-toggle-open-icon: #fff;
}
.rw-ending-faq .rwfaq-question:hover .rwfaq-toggle {
  background: #781b0a !important;
}
.rw-ending-inquiry .rwi-form button {
  background: #e64326;
  transition: background-color .2s ease;
}
.rw-ending-inquiry .rwi-form button:hover { background: #b92f18; }
.rw-ending-inquiry .rwi-form button:focus-visible {
  outline: 2px solid #781b0a;
  outline-offset: 4px;
}
.rw-ending-inquiry{background:#e64326;color:#fff5e6;scroll-margin-top:40px}.rw-ending-inquiry-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:70px;max-width:1440px;margin:auto;align-items:center}.rw-ending-lead{font-size:18px;line-height:1.65;max-width:440px}.rw-ending-footer{background:#f5ebd8;color:#781b0a;padding-top:60px;padding-bottom:60px}.rw-ending-footer .rw-ending-title{font-size:42px;margin-bottom:24px}.rw-ending-footer a{color:inherit;text-underline-offset:5px}@media(max-width:781px){.rw-ending-workflow,.rw-ending-faq,.rw-ending-inquiry{padding:60px 24px}.rw-ending-inquiry-grid{grid-template-columns:1fr;gap:32px}}

.rw-ending-workflow .rw-steps-cta {
  display: flex;
  justify-content: center;
  margin-top: 36px;
}
.rw-steps-cta .wp-block-button__link {
  background: #e64326;
  color: #fff;
  border-radius: 5px;
  padding: 16px 64px 16px 26px;
  font: 600 16px/1.4 "Instrument Sans", sans-serif;
  transition: background-color .2s ease;
}
.rw-steps-cta .wp-block-button__link:hover { background: #bf321b; }

.rw-ending-footer { padding-bottom: 0 !important; overflow: hidden; }
.rw-footer-grid { display: grid; grid-template-columns: 1.5fr 1fr 1fr; gap: 7vw; max-width:1440px; margin: auto; }
.rw-ending-footer .rw-footer-label { font: 600 11px/1.5 "Instrument Sans",sans-serif; letter-spacing: .12em; margin: 0 0 28px; }
.rw-footer-intro h2 { font: 700 clamp(42px,5vw,72px)/1.05 "Playfair Display",serif; color: inherit; margin: 0 0 24px; letter-spacing: -.04em; }
.rw-footer-intro > p:not(.rw-footer-label) { max-width: 330px; line-height: 1.6; }
.rw-footer-column > p:not(.rw-footer-label) { margin: 0 0 14px; font-size: 16px; }
.rw-footer-grid a { text-decoration: none; }
.rw-footer-grid a:hover { text-decoration: underline; text-underline-offset: 5px; }
.rw-footer-contact { margin-top: 28px; font-weight: 600; }
.rw-footer-meta { display: flex; justify-content: space-between; gap: 24px; border-top: 1px solid #781b0a30; margin-top: 64px; padding-top: 22px; font-size: 12px; }
.rw-ending-footer .rw-footer-wordmark { font: 700 9.45vw/1.15 "Playfair Display",serif; letter-spacing: -.065em; text-align: center; width: 100vw; max-width: none; margin: 48px calc(50% - 50vw) 0; transform: translateY(.23em); padding-bottom: 0; white-space: nowrap; color: #e64326; }
@media(max-width:781px){.rw-footer-grid{grid-template-columns:1fr 1fr;gap:36px 24px}.rw-footer-intro{grid-column:1/-1}.rw-footer-meta{flex-direction:column;gap:4px;margin-top:40px}.rw-footer-column > p:not(.rw-footer-label){font-size:14px}.rw-ending-footer .rw-footer-wordmark{margin-top:32px}}

.rw-footer-intro .rw-footer-socials { display:flex; gap:12px; margin-top:28px; }
.rw-footer-socials .wp-block-image { display:flex; align-items:center; justify-content:center; width:44px; height:44px; margin:0; border:1px solid #781b0a35; border-radius:50%; }
.rw-footer-socials img { display:block; width:21px; height:21px; }



.rw-ending-footer .rw-footer-intro > .rw-footer-brand-logo {
  width: min(280px, 100%);
  height: 145px;
  margin: 0 0 28px;
  font-size: 0;
  background: #762614;
  mask: url("smokey-district-logo.webp") left center / contain no-repeat;
}

.rw-closing-cta.wp-block-cover { min-height: 620px; padding: 90px 24px; margin: 0; color: #f5ebd8; }
.rw-closing-cta .wp-block-cover__inner-container { max-width: 1000px; text-align: center; }
.rw-closing-cta .rw-bbq-kicker { margin: 0 0 24px; }
.rw-closing-cta h2 { color: #f5ebd8; font: 700 clamp(44px,6.5vw,92px)/1.05 "Playfair Display",serif; letter-spacing: -.04em; margin: 0 0 28px; }
.rw-closing-cta p:not(.rw-bbq-kicker) { max-width: 560px; margin: 0 auto 32px; font: 400 18px/1.6 "Instrument Sans",sans-serif; }
.rw-closing-cta .wp-block-button__link { background: #e64326; color: #fff; padding: 17px 68px 17px 26px; border-radius: 5px; font: 600 16px/1.4 "Instrument Sans",sans-serif; }
.rw-closing-cta .wp-block-button__link:hover { background: #bd321a; }
@media(max-width:781px){.rw-closing-cta.wp-block-cover{min-height:520px;padding:72px 24px}}

.rw-closing-cta .rw-closing-accent { color: inherit; }

.rw-fire-header { position: relative; z-index: 20; gap: 28px; }
.rw-fire-header > * { margin-block: 0 !important; }
@media (min-width: 1100px) {
  .rw-fire-header { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); }
  .rw-fire-header .rw-fire-logo { justify-self: start; }
  .rw-fire-header .rw-fire-header-action { justify-self: end; }
}
.rw-fire-header .rw-fire-navigation { flex: 1; font: 500 15px/1.4 "Instrument Sans",sans-serif; }
.rw-fire-navigation .wp-block-navigation__container {
  flex: 0 0 auto;
  width: max-content;
  max-width: 100%;
  gap: 22px;
  padding: 8px 20px;
  border: 1px solid rgba(245,235,216,.22);
  border-radius: 10px;
  background: rgba(63,18,5,.18);
  backdrop-filter: blur(16px) saturate(120%);
  -webkit-backdrop-filter: blur(16px) saturate(120%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.07);
}
.rw-fire-navigation .wp-block-navigation__responsive-container-content { justify-content: center; }
.rw-fire-header .rw-fire-navigation { justify-content: center; }
.rw-fire-navigation .is-menu-open .wp-block-navigation__container { backdrop-filter: none; -webkit-backdrop-filter: none; box-shadow: none; }
.rw-fire-navigation .wp-block-navigation-item,
.rw-fire-navigation .wp-block-navigation-item__content,
.rw-fire-navigation .wp-block-navigation-submenu__toggle {
  background: transparent !important;
  box-shadow: none !important;
}
.rw-fire-navigation .wp-block-navigation-item__content { padding: 8px 0; text-decoration: none; }
.rw-fire-navigation .wp-block-navigation-item__content:hover { background: transparent; color: #e64326; text-decoration: none; }
.rw-fire-navigation .wp-block-navigation-submenu > .wp-block-navigation-item__content { padding-right: 4px; }
.rw-fire-navigation .wp-block-navigation-submenu__toggle { margin-right: 0; }
.rw-fire-header .rw-fire-header-action .wp-block-button__link { min-height: 50px; font-size: 14px; }
.rw-fire-navigation .wp-block-navigation__submenu-container { background:#f5ebd8!important; color:#781b0a!important; border:0!important; padding:12px; border-radius:14px; min-width:250px!important; box-shadow:0 18px 48px #21090238; }
.rw-fire-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content { border-radius:6px; padding:12px 16px; }

.rw-fire-navigation .wp-block-navigation__responsive-container.is-menu-open { background:#781b0a!important; color:#f5ebd8!important; padding:32px; }
@media(max-width:1000px){.rw-fire-header{gap:16px}.rw-fire-navigation .wp-block-navigation__container{gap:16px}.rw-fire-navigation .wp-block-navigation-item__content{padding:8px 0}.rw-fire-header .rw-fire-navigation{font-size:13px}}
@media(max-width:781px){.rw-fire-header .rw-fire-header-action{display:none}.rw-fire-header .rw-fire-navigation{flex:0;margin-left:auto}.rw-fire-navigation .wp-block-navigation__responsive-container:not(.is-menu-open){display:none}.rw-fire-navigation .wp-block-navigation__responsive-container-open{display:flex}}

.rw-fire-navigation .is-menu-open .wp-block-navigation__container { border:0; border-radius:0; background:transparent; padding:0; gap:14px; }
.rw-fire-navigation .is-menu-open .wp-block-navigation-item__content { font-size:24px; }
.rw-fire-navigation .is-menu-open .wp-block-navigation__submenu-container { box-shadow:none; }

.rw-fire-hero .rwmega { --rwmega-shell:#781b0a; --rwmega-panel:#762614; --rwmega-accent:#e64326; --rwmega-top:24px; font-family:"Instrument Sans",sans-serif; }
.admin-bar .rw-fire-hero .rwmega { --rwmega-top:56px; }
.rw-fire-hero .rwmega-primary { background:#f5ebd8; color:#781b0a; }
.rw-fire-hero .rwmega-primary .rwm-link:hover { color:#e64326; }
.rw-fire-hero .rwmega-promo { background-color:#e64326; }
.rw-fire-hero .rwmega-column small { font-family:"Instrument Sans",sans-serif; letter-spacing:.08em; }
.rw-fire-hero .rwmega-cta--custom { background:#e64326; color:#fff; }
.rw-fire-hero:has(.rwmega) .rw-fire-content { padding-top:180px; }

.rw-menu-slot { flex:1; min-width:0; font:500 15px/1.4 "Instrument Sans",sans-serif; }
.rw-menu-slot .rw-mobile-only { display:none; }
.rw-menu-slot .rwdm-menu { background:transparent; border:0; padding:0; --rwdm-color:#f5ebd8; --rwdm-hover:#e64326; --rwdm-active:#f5ebd8; }
.rw-menu-slot .rwdm-menu > .rwm-item > .rwm-link { display:block; padding:14px; }
.rw-menu-slot .rwm-submenu { flex-direction:column; list-style:none; background:#f5ebd8; --rwdm-color:#781b0a; box-shadow:0 16px 40px #21090230; }
.rw-menu-slot .rwm-submenu::before { content:""; position:absolute; height:12px; top:-12px; left:0; right:0; }
@media(max-width:1000px){.rw-menu-slot{font-size:13px}.rw-menu-slot .rwdm-menu > .rwm-item > .rwm-link{padding:10px}}
@media(max-width:781px){.rw-menu-slot .wp-block-richway-desktop-menu{display:none}.rw-menu-slot .rw-mobile-only{display:flex}.rw-menu-slot{flex:1}}

/* Consistent button corners throughout the Smokey District demo. */
.rw-fire-hero .wp-block-button__link,
.rw-food-section .wp-block-button__link,
.rw-food-next .wp-block-button__link,
.rw-food-orange-section .wp-block-button__link,
.rw-ending-workflow .wp-block-button__link,
.rw-closing-cta .wp-block-button__link,
.rw-ending-inquiry .rwi-form button {
  border-radius: 10px;
}

/* Native navigation cards: WordPress retains toggle and keyboard behaviour. */
.rw-menu-card-image { display: none; }
@media (min-width: 782px) {
  .rw-fire-navigation .wp-block-navigation__container { position: relative; }
  .rw-fire-navigation .rw-services-mega { position: static; }
  .rw-fire-navigation .rw-services-mega > .wp-block-navigation__submenu-container {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    width: min(780px, calc(100vw - 64px)) !important;
    box-sizing: border-box;
    min-width: 0 !important;
    left: 50%;
    top: 100%;
    transform: translateX(-50%);
    padding: 16px;
    border: 1px solid rgba(245,235,216,.24) !important;
    border-radius: 10px;
    background: rgba(63,18,5,.88) !important;
    color: #f5ebd8 !important;
    backdrop-filter: blur(22px);
    -webkit-backdrop-filter: blur(22px);
    box-shadow: 0 20px 48px #21090245;
  }
  .rw-fire-navigation .rw-services-mega .wp-block-navigation-item { min-width: 0; width: 100%; }
  .rw-fire-navigation .rw-services-mega > .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
    display: block !important;
    box-sizing: border-box;
    width: 100%;
    padding: 0 0 10px !important;
    border-radius: 8px;
    overflow: hidden;
    white-space: normal;
    text-decoration: none;
  }
  .rw-services-mega .rw-menu-card-image { display: block; width: 100%; height: 108px; object-fit: cover; border-radius: 8px; margin: 0 0 12px; }
  .rw-services-mega .wp-block-navigation__submenu-container .wp-block-navigation-item__label { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 0 8px; font: 600 14px/1.4 'Instrument Sans', sans-serif; }
  .rw-services-mega .wp-block-navigation__submenu-container .wp-block-navigation-item__label::after { content: ''; flex: 0 0 16px; height: 16px; background: currentColor; mask: url('/wp-content/plugins/richway-blocks/library/icons/richway-premium/rw-premium-premium-corner.svg') center / contain no-repeat; }
  .rw-fire-navigation .rw-services-mega > .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover { color: #e64326; text-decoration: none; }
  .rw-fire-navigation .rw-services-mega > .wp-block-navigation__submenu-container .wp-block-navigation-item__content:focus-visible { outline: 2px solid #f5ebd8; outline-offset: -2px; }
}

@media (min-width: 782px) {
  .rw-fire-navigation .wp-block-navigation__container:has(.rw-services-mega) {
    --rw-panel-width: min(780px, calc(100vw - 64px));
    isolation: isolate;
    align-items: center;
    background: transparent;
    border-color: transparent;
    box-shadow: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }
  .rw-fire-navigation .wp-block-navigation__container:has(.rw-services-mega)::before {
    content: '';
    position: absolute;
    pointer-events: none;
    z-index: -1;
    top: -1px;
    left: 50%;
    transform: translateX(-50%);
    width: var(--rw-panel-width);
    height: calc(var(--rw-row-height, 55px) + var(--rw-panel-height, 345px));
    background: rgba(63,18,5,.88);
    backdrop-filter: blur(22px);
    -webkit-backdrop-filter: blur(22px);
    clip-path: inset(0 calc((var(--rw-panel-width) - var(--rw-menu-width, 462px)) / 2) var(--rw-panel-height, 345px) round 10px);
    transition: clip-path 200ms cubic-bezier(.23,1,.32,1);
  }
  .rw-fire-navigation .wp-block-navigation__container:has(.rw-services-mega:focus-within)::before,
  .rw-fire-navigation .wp-block-navigation__container:has(.rw-services-mega > button[aria-expanded="true"])::before {
    clip-path: inset(0 0 0 round 10px);
  }
  .rw-fire-navigation .rw-services-mega > .wp-block-navigation__submenu-container {
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }
  .rw-fire-navigation .wp-block-navigation__container > .wp-block-navigation-item { align-items: center; align-self: center; }
  .rw-fire-navigation .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content { display: inline-flex; align-items: center; min-height: 38px; box-sizing: border-box; line-height: 21px; padding-block: 8px; }
  .rw-fire-navigation .wp-block-navigation__container > .rw-services-mega > button { align-self: center; margin-top: 0; }
}
@media (min-width: 782px) and (hover: hover) and (pointer: fine) {
  .rw-fire-navigation .wp-block-navigation__container:has(.rw-services-mega:hover)::before { clip-path: inset(0 0 0 round 10px); }
}
@media (prefers-reduced-motion: reduce) {
  .rw-fire-navigation .wp-block-navigation__container:has(.rw-services-mega)::before { transition: none; }
}

/* Bridge the padding between the trigger and its absolutely positioned panel. */
@media (min-width: 782px) {
  .rw-fire-navigation .rw-services-mega > .wp-block-navigation__submenu-container::before {
    content: '';
    position: absolute;
    inset: -20px 0 auto;
    height: 20px;
  }
}

.rw-closing-cta:has(.rw-cta-columns) .wp-block-cover__inner-container { max-width:1440px; width: 100%; text-align: left; }
.rw-closing-cta .rw-cta-columns { gap: clamp(32px,6vw,88px); margin: 0; }
.rw-closing-cta .rw-cta-copy h2 { font-size: clamp(40px,4.8vw,68px); }
.rw-closing-cta .rw-cta-copy p:not(.rw-bbq-kicker) { margin: 0; }
.rw-closing-cta .rwi-form { background: rgba(245,235,216,.96); border: 1px solid #ffffff40; border-radius: 14px; padding: clamp(22px,2.5vw,32px); }
.rw-closing-cta .rwi-form p.rwi-note { color: #762614; font-size: 12px; line-height: 1.5; margin: 0 0 22px; }
.rw-closing-cta .rwi-fields { gap: 16px 18px; }
.rw-closing-cta .rwi-fields :is(label, .rwi-picker-field) { gap: 7px; line-height: 1.4; }
.rw-closing-cta .rwi-fields input { height: 48px; padding: 11px 13px; }
.rw-closing-cta .rwi-fields textarea { min-height: 104px; padding: 11px 13px; resize: vertical; }
.rw-closing-cta .rwi-form button { background: #e64326; border-radius: 10px; margin-top: 20px; padding: 14px 20px; min-height: 50px; align-items: center; }
.rw-closing-cta .rwi-form button:hover { background: #bd321a; }
.rw-closing-cta .rwi-form .rwi-status { color: #762614; font-size: 14px; margin: 18px 0 0; }
@media(max-width:781px) { .rw-closing-cta .rw-cta-copy { text-align: center; } }

/* Shared inner-page compositions using native blocks. */
.rw-subhero.wp-block-cover { min-height: 560px; padding-bottom: 70px; }
.rw-subhero .rw-subhero-copy { max-width: 920px; margin: 70px auto 0; text-align: center; }
.rw-subhero .rw-subhero-title { margin: 20px 0 24px; font: 700 clamp(42px,5.4vw,78px)/1.08 'Playfair Display',serif; letter-spacing: -.035em; color: #f5ebd8; }
.rw-subhero-lead { max-width: 660px; margin: 0 auto; font: 400 19px/1.6 'Instrument Sans',sans-serif; color: #f5ebd8; }
.rw-service-detail, .rw-quote-section { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: clamp(32px,6vw,88px); padding: 90px var(--rw-container-gutter); background: #f5ebd8; color: #781b0a; margin: 0; }
.rw-service-detail > *, .rw-quote-section > * { margin: 0; min-width: 0; }
.rw-service-detail figure img { display: block; width: 100%; aspect-ratio: 4/5; max-height: 620px; object-fit: cover; border-radius: 16px; }
.rw-detail-copy h2, .rw-quote-intro h2 { font: 700 clamp(36px,3.5vw,54px)/1.12 'Playfair Display',serif; letter-spacing: -.03em; margin: 20px 0 26px; }
.rw-detail-copy h3 { font: 600 23px/1.3 'Instrument Sans',sans-serif; margin-top: 32px; }
.rw-detail-copy p, .rw-quote-intro p { font: 400 17px/1.7 'Instrument Sans',sans-serif; }
.rw-detail-copy .wp-block-button__link { background: #e64326; color: white; border-radius: 10px; margin-top: 20px; }
.rw-quote-section { align-items: start; }
.rw-quote-section .rwi-form { background: #fffaf1; }
.rw-quote-section .rwi-form button { background: #e64326; }
@media(max-width:781px) {
 .rw-subhero.wp-block-cover { min-height: 510px; padding-bottom: 54px; }
 .rw-subhero .rw-subhero-copy { margin-top: 40px; }
 .rw-service-detail, .rw-quote-section { grid-template-columns: 1fr; padding: 56px 22px; }
 .rw-service-detail figure img { aspect-ratio: 4/3; }
}

/* Global site chrome: overlay photo heroes, reserve space on plain pages. */
.rw-global-header { position: relative; z-index: 30; background: #3f1205; padding-inline: var(--rw-container-gutter); margin: 0; }
body:has(.rw-fire-hero, .rw-about-opening) .rw-global-header { position: absolute; inset: 0 0 auto; background: transparent; }
body.admin-bar:has(.rw-fire-hero, .rw-about-opening) .rw-global-header { top: 32px; }
body:has(.rw-global-header) .rw-fire-hero { padding-top: 145px; }
.rw-global-header .rw-fire-header { max-width: 1440px; margin-inline: auto; }
.rw-global-header .rw-fire-logo a { display: block; line-height: 0; }
.rw-global-header .rw-fire-logo img { display: block; width: 150px; height: auto; }
.rw-fire-header > p:has(.rw-smokey-trigger){display:flex;align-items:center;line-height:0}
@media(min-width:782px){.rw-fire-header > p:has(.rw-smokey-trigger){display:none}}
@media(max-width:781px) {
 body.admin-bar:has(.rw-fire-hero, .rw-about-opening) .rw-global-header { top: 46px; }
 body:has(.rw-global-header) .rw-fire-hero { padding-top: 115px; }
 .rw-global-header .rw-fire-logo img { width: 108px; }
}

/* Shared header buttons no longer inherit from the hero cover. */
.rw-global-header .rw-fire-header-action .wp-block-button__link {
 display: flex; align-items: center; justify-content: center;
 min-width: 205px; min-height: 50px; padding: 14px 64px 14px 28px;
 border: 1px solid #ec754e; border-radius: 10px;
 background: #fff; color: #78321d;
 font: 600 14px/1.3 'Instrument Sans',sans-serif;
 text-decoration: none; letter-spacing: 0;
}
.rw-global-header .rw-fire-header-action .wp-block-button__link:hover { --rw-button-arrow-color: #fff; background: #e64326; color: #fff; filter: none; transform: none; }
.rw-global-footer.wp-block-template-part { margin-block-start: 0 !important; }

.rw-about-values { margin: 0; padding: 100px var(--rw-container-gutter); background: #f5ebd8; color: #781b0a; font-family: 'Instrument Sans',sans-serif; }
.rw-about-values > .rw-bbq-kicker { text-align: center; margin: 0 0 24px; }
.rw-about-statement { max-width: 1000px; margin: 0 auto 64px; text-align: center; font: 700 clamp(36px,4.7vw,68px)/1.15 'Playfair Display',serif; letter-spacing: -.035em; }
.rw-about-statement em { color: #e64326; }
.rw-about-principles { max-width:1440px; margin: 0 auto 44px; gap: 40px; }
.rw-about-principles > .wp-block-column { border-top: 1px solid #781b0a30; padding-top: 24px; }
.rw-about-principles .rw-about-number { font-size: 13px; font-weight: 600; color: #e64326; letter-spacing: .12em; margin: 0 0 20px; }
.rw-about-principles h3 { font: 600 24px/1.25 'Instrument Sans',sans-serif; margin: 0 0 16px; }
.rw-about-principles p { font-size: 16px; line-height: 1.7; }
.rw-about-values .wp-block-button__link { background: #e64326; color: #fff; border-radius: 10px; padding: 15px 64px 15px 24px; }
.rw-about-values .wp-block-button__link:hover { background: #bd321a; }
@media(max-width:781px) { .rw-about-values { padding: 64px 22px; } .rw-about-statement { margin-bottom: 40px; } .rw-about-principles { gap: 26px; } }

.rw-about-story { display: grid; grid-template-columns: 1.05fr 1fr; align-items: center; gap: clamp(36px,7vw,110px); background: #f5ebd8; color: #781b0a; margin: 0; padding: 90px var(--rw-container-gutter); }
.rw-about-story > * { min-width: 0; margin: 0; }
.rw-about-story figure { position: relative; transform: rotate(-2deg); }

.rw-about-story figure img { position: relative; z-index: 1; display: block; width: 100%; aspect-ratio: 5/4; object-fit: cover; border-radius: 22px; }
.rw-about-story-copy .rw-bbq-kicker { font-size: 12px; letter-spacing: .1em; margin: 0 0 24px; }
.rw-about-story-copy h2 { font: 700 clamp(36px,4vw,58px)/1.12 'Playfair Display',serif; letter-spacing: -.035em; margin: 0 0 28px; }
.rw-about-story-copy p { font: 400 17px/1.75 'Instrument Sans',sans-serif; margin: 0 0 18px; }
.rw-about-story-reverse { background: #fffaf1; grid-template-columns: 1fr 1.05fr; }
.rw-about-story-reverse figure { grid-column: 2; grid-row: 1; transform: rotate(2deg); }
.rw-about-story-reverse .rw-about-story-copy { grid-column: 1; grid-row: 1; }
.rw-about-story-reverse figure img { aspect-ratio: 5/4; border-radius: 22px; }

@media(max-width:781px) {
 .rw-about-story,.rw-about-story-reverse { grid-template-columns: 1fr; gap: 42px; padding: 60px 24px; }
 .rw-about-story-reverse figure,.rw-about-story-reverse .rw-about-story-copy { grid-column: auto; grid-row: auto; }
 .rw-about-story-reverse figure img { aspect-ratio: 5/4; border-radius: 22px; }
}

/* Cut the photo itself; the following orange section shows through the gaps. */
.rw-subhero.rw-photo-ticket-mask {
 z-index: 1;
 margin-bottom: -26px !important;
 -webkit-mask: linear-gradient(#000 0 0) top / 100% calc(100% - 25px) no-repeat, url('ticket-edge-down.svg') bottom center / 76.27px 26px space no-repeat;
 mask: linear-gradient(#000 0 0) top / 100% calc(100% - 25px) no-repeat, url('ticket-edge-down.svg') bottom center / 76.27px 26px space no-repeat;
}

/* About-page CTA contrast against the orange story section. */
.page-id-154 .rw-bram-button .wp-block-button__link { background: #762614; color: #fff; --rw-button-arrow-color: #fff; border-radius: 10px; }
@media (hover: hover) and (pointer: fine) {
 .page-id-154 .rw-bram-button .wp-block-button__link:hover { background: #3f1205; color: #fff; }
}

/* Reusable service landing compositions. */
.rw-service-landing-hero .rw-fire-content { padding-bottom: 100px; text-align: left; }
.rw-service-landing-hero .rw-fire-eyebrow { justify-content: flex-start; }
.rw-service-landing-hero .rw-fire-title.wp-block-heading { margin-inline: 0; text-align: left; }
.rw-service-landing-hero .rw-landing-lead { margin-inline: 0; text-align: left; }
.rw-service-landing-hero .rw-fire-actions { display: grid; grid-template-columns: 1fr; width: min(100%, 340px); margin-inline: 0; }
.rw-service-landing-hero .rw-fire-actions .wp-block-button { width: 100%; }
.rw-service-landing-hero .rw-fire-actions .wp-block-button__link { width: 100%; height: 100%; min-width: 0; box-sizing: border-box; }
@media (max-width: 600px) { .rw-service-landing-hero .rw-fire-actions { grid-template-columns: 1fr; max-width: 340px; } }
.rw-service-landing-hero .rw-fire-title { font-size: clamp(48px,6.5vw,92px) !important; }
.rw-landing-lead { max-width: 640px; margin: 0 auto 32px; font: 400 19px/1.65 'Instrument Sans',sans-serif; color: #f5ebd8; }
.rw-landing-intro { margin: 0; padding: 90px 24px 40px; text-align: center; background: #f5ebd8; color: #781b0a; }
.rw-landing-intro .rw-bbq-kicker { margin: 0 0 24px; }
.rw-landing-intro h2 { font: 700 clamp(38px,4.7vw,64px)/1.12 'Playfair Display',serif; letter-spacing: -.035em; margin: 0 0 28px; }
.rw-landing-intro p:not(.rw-bbq-kicker) { max-width: 700px; margin: auto; font: 400 18px/1.7 'Instrument Sans',sans-serif; }
.rw-landing-benefits { background: #f5ebd8; color: #781b0a; padding: 12px var(--rw-container-gutter) 80px; margin: 0; }
.rw-landing-moment.wp-block-cover { min-height: 530px; padding: 80px 24px; margin: 0; color: #f5ebd8; text-align: center; }
.rw-landing-moment h2 { font: 700 clamp(42px,5.5vw,80px)/1.1 'Playfair Display',serif; letter-spacing: -.035em; margin: 26px auto; }
.rw-landing-moment p:not(.rw-bbq-kicker) { max-width: 570px; margin: auto; font: 400 18px/1.7 'Instrument Sans',sans-serif; }
.rw-landing-reviews { margin: 0; }
.rw-landing-reviews .rwrs { padding: 70px var(--rw-container-gutter); }
.rw-landing-reviews .rwrs-heading { padding: 0; }
.rw-landing-reviews .rwrs-heading h2 { font-size: clamp(38px,4.5vw,62px); }
.rw-landing-reviews .rwrs-cards { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; padding: 24px 0 0; }
.rw-landing-reviews .rwrs-card:nth-child(n) { margin: 0; }
@media(max-width:781px) {
 .rw-service-landing-hero .rw-fire-title { font-size: clamp(36px,8vw,58px) !important; }
 .rw-service-landing-hero .rw-fire-content { padding-bottom: 70px; }
 .rw-landing-intro { padding-top: 60px; }
 .rw-landing-reviews .rwrs-cards { grid-template-columns: 1fr; }
 .rw-landing-moment.wp-block-cover { min-height: 420px; }
}

/* Subtle blur on the full photo, leaving the text sharp. */
.rw-landing-moment.wp-block-cover { overflow: hidden; }
.rw-landing-moment > .wp-block-cover__image-background {
 filter: blur(3px);
 transform: scale(1.025);
}


.rw-landing-story { margin: 0; padding: 90px var(--rw-container-gutter); background: #f5ebd8; color: #781b0a; }
.rw-landing-story .rw-bram-columns { max-width:1440px; margin: auto; gap: clamp(32px,6vw,80px); }
.rw-landing-story-copy .rw-bbq-kicker { margin: 0 0 24px; }
.rw-landing-story-copy h2 { font: 700 clamp(36px,3.8vw,54px)/1.12 'Playfair Display',serif; letter-spacing: -.035em; margin: 0 0 28px; }
.rw-landing-story-copy p:not(.rw-bbq-kicker) { font: 400 17px/1.7 'Instrument Sans',sans-serif; }
.rw-service-detail .wp-block-button__link,
.rw-landing-story-copy .wp-block-button__link { margin-top: 14px; border-radius: 10px; background: #e64326; color: #fff; padding: 15px 64px 15px 24px; }
.rw-service-detail .wp-block-button__link:hover,
.rw-landing-story-copy .wp-block-button__link:hover { background: #bd321a; }
@media(max-width:781px) { .rw-landing-story { padding: 60px 24px; } }

.rw-service-photo-marquee { margin: 0; padding: 0 0 64px; background: #f5ebd8; overflow: hidden; }
@media(max-width:781px) { .rw-service-photo-marquee { padding-bottom: 40px; } }

.rw-landing-slider-reviews { margin: 0; padding: 80px 0; background: #f5ebd8; color: #781b0a; }
.rw-landing-slider-reviews > .rw-bbq-kicker { text-align: center; margin: 0 0 24px; }
.rw-landing-slider-reviews > h2 { text-align: center; font: 700 clamp(38px,4.5vw,62px)/1.12 'Playfair Display',serif; letter-spacing: -.035em; margin: 0 0 40px; }
.rw-landing-slider-reviews .rwrev { font-family: 'Instrument Sans',sans-serif; }

/* Keep the quiet glass-card treatment while using the native review slider. */
.rw-landing-slider-reviews .rwrev-card {
 background: #f8f0e1 !important;
 backdrop-filter: none;
 -webkit-backdrop-filter: none;
 border: 1px solid rgba(255,255,255,.6);
 box-shadow: inset 0 1px 0 #ffffff65;
 padding: 28px;
 border-radius: 18px;
 justify-content: flex-start;
 gap: 16px;
}
.rw-landing-slider-reviews .rwrev-card > div { display: contents; }
.rw-landing-slider-reviews .rwrev-rating { order: -1; margin: 0; }
.rw-landing-slider-reviews .rwrev-star { fill: #e5af3b; opacity: 1 !important; }
.rw-landing-slider-reviews .rwrev-score,
.rw-landing-slider-reviews .rwrev-role { display: none; }
.rw-landing-slider-reviews .rwrev-author { margin: 0; }
.rw-landing-slider-reviews .rwrev-name { font: 600 14px/1.5 'Instrument Sans',sans-serif; }
.rw-landing-slider-reviews .rwrev-text { font: 500 clamp(18px,1.6vw,22px)/1.45 'Instrument Sans',sans-serif; margin: 0; }

.rw-landing-slider-reviews > .wp-block-richway-reviews { width: 100%; max-width: none; }
.rw-landing-slider-reviews > h2, .rw-landing-slider-reviews > .rw-bbq-kicker { padding-inline: 24px; }

/* Workshops use an editorial split hero and a visual activity sequence. */
.rw-workshop-hero.wp-block-cover { background: radial-gradient(ellipse at 80% 110%, #e64326 0%, #ba351c 32%, #762614 64%, #3f1205 100%); min-height: 760px; }
.rw-workshop-hero > .wp-block-cover__background { display: none; }
.rw-workshop-hero.wp-block-cover > img.wp-block-cover__image-background { inset: 175px var(--rw-container-gutter) 80px auto; width: calc((100% - 2 * var(--rw-container-gutter)) * .48); height: calc(100% - 255px); border-radius: 24px; object-fit: cover; transform: rotate(2deg); }
.rw-workshop-hero .rw-fire-content { width: 47%; padding: 60px 0 90px; }
.rw-workshop-hero .rw-fire-title.wp-block-heading { font-size: clamp(52px,6vw,86px) !important; }
.rw-workshop-hero .rw-landing-lead { font-size: 18px; max-width: 470px; }
/* Native blocks remain editable; animation only enhances the timeline. */
.rw-workshop-experience { display: grid; grid-template-columns: .85fr 1.15fr; gap: clamp(40px,7vw,100px); align-items: start; padding: 100px var(--rw-container-gutter); background: #f5ebd8; color: #781b0a; }
.rw-workshop-timeline-intro { position: sticky; top: 110px; }
.rw-workshop-timeline-intro .rw-bbq-kicker { margin: 0 0 24px; }
.rw-workshop-timeline-intro h2 { font: 700 clamp(40px,4.5vw,64px)/1.08 'Playfair Display',serif; letter-spacing: -.035em; margin: 0 0 28px; }
.rw-workshop-timeline-intro > p:last-child { max-width: 360px; font: 400 18px/1.7 'Instrument Sans',sans-serif; }
.rw-workshop-timeline-track { position: relative; padding-left: 38px; margin: 0; }
.rw-workshop-timeline-track::before, .rw-workshop-timeline-progress { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 2px; background: #781b0a25; }
.rw-workshop-timeline-progress { background: #e64326; transform-origin: top; }
.rw-workshop-timeline-step { position: relative; display: grid; grid-template-columns: 68px minmax(0, 1fr); column-gap: 20px; margin: 0 0 72px; }
.rw-workshop-timeline-step:last-child { margin-bottom: 0; }
.rw-workshop-timeline-step::before { content: ''; position: absolute; left: -43px; top: 0; width: 12px; height: 12px; border-radius: 50%; background: #781b0a; box-shadow: 0 0 0 6px #f5ebd8; }
.rw-workshop-timeline-step.is-active::before { background: #e64326; }
.rw-workshop-timeline-step figure { grid-column: 1 / -1; grid-row: 1; margin: 0 0 28px; }
.rw-workshop-timeline-step img { width: 100%; aspect-ratio: 4/3; object-fit: cover; border-radius: 20px; display: block; }
 .rw-workshop-timeline-step .rw-bbq-kicker { display: contents; color: #781b0a; }
.rw-workshop-timeline-step .rw-bbq-kicker > span:last-child { grid-column: 2; grid-row: 2; align-self: end; color: #e64326; font: 600 11px/1.4 'Instrument Sans',sans-serif; letter-spacing: .12em; text-transform: uppercase; margin-bottom: 8px; }
.rw-workshop-step-number { display: inline-flex; align-items: center; justify-content: center; grid-column: 1; grid-row: 2 / 4; align-self: center; width: 68px; height: 76px; border: 1px solid #e6432640; border-radius: 14px; background: #e6432610; color: #e64326; font: 600 34px/1 'Instrument Sans',sans-serif; font-variant-numeric: tabular-nums; letter-spacing: -.025em; }
.rw-workshop-timeline-step .wp-block-buttons { grid-column: 1 / -1; margin-top: 28px; }
.rw-workshop-timeline-step .wp-block-button__link { background: #e64326; color: #fff; border-radius: 10px; padding: 16px 64px 16px 24px; font: 600 16px/1.4 'Instrument Sans',sans-serif; }
.rw-workshop-timeline-step .wp-block-button__link:hover { background: #bd321a; }
.rw-workshop-timeline-step h3 { grid-column: 2; grid-row: 3; font: 600 clamp(25px,2.3vw,32px)/1.2 'Instrument Sans',sans-serif; margin: 0; }
.rw-workshop-timeline-step p:not(.rw-bbq-kicker) { grid-column: 1 / -1; font: 400 17px/1.75 'Instrument Sans',sans-serif; margin: 24px 0 0; }
@media(max-width:781px) {
 .rw-workshop-hero.wp-block-cover { padding-bottom: 340px; min-height: 0; }
 .rw-workshop-hero .rw-fire-content { width: 100%; padding: 48px 0 36px; }
 .rw-workshop-hero.wp-block-cover > img.wp-block-cover__image-background { top: auto; bottom: 52px; left: 24px; right: 24px; width: calc(100% - 48px); height: 270px; transform: none; }
 .rw-workshop-experience { grid-template-columns: 1fr; padding-block: 60px; gap: 36px; }
 .rw-workshop-timeline-intro { position: static; }
 .rw-workshop-timeline-step { margin-bottom: 48px; }
}

/* Workshop registration: editorial introduction beside a quiet form card. */
.rw-workshop-signup {
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
  column-gap: clamp(36px, 7vw, 110px);
  padding: clamp(64px, 8vw, 112px) var(--rw-container-gutter);
  background: #762614;
  color: #f5ebd8;
  text-align: left;
  align-content: center;
}
.rw-workshop-signup > .rw-bbq-kicker { grid-column: 1; grid-row: 1; align-self: end; margin: 48px 0 24px; color: #f5ebd8; }
.rw-workshop-signup > h2 { grid-column: 1; grid-row: 2; font: 700 clamp(42px, 5vw, 72px)/1.06 'Playfair Display',serif; letter-spacing: -.035em; margin: 0 0 26px; max-width: 480px; }
.rw-workshop-signup-intro { grid-column: 1; grid-row: 3; max-width: 440px; margin: 0; font: 400 18px/1.7 'Instrument Sans',sans-serif; }
.rw-workshop-signup > .wp-block-richway-inquiry { grid-column: 2; grid-row: 1 / 6; width: 100%; margin: 0; text-align: left; }
.rw-workshop-signup .rwi-form { background: #f5ebd8; border: 1px solid #ffffff40; border-radius: 24px; padding: clamp(26px, 3vw, 44px); box-shadow: 0 16px 48px #3f120522; }
.rw-workshop-signup .rwi-fields { gap: 20px 18px; }
.rw-workshop-signup .rwi-fields :is(label, .rwi-picker-field) { gap: 8px; font-size: 13px; }
.rw-workshop-signup .rwi-fields input,
.rw-workshop-signup .rwi-fields textarea { background: #fffaf1; border: 1px solid #76261426; border-radius: 10px; padding: 13px 14px; }
.rw-workshop-signup .rwi-fields input { min-height: 50px; }
.rw-workshop-signup .rwi-fields textarea { min-height: 114px; resize: vertical; }
.rw-workshop-signup .rwi-form button { background: #e64326; border-radius: 10px; min-height: 54px; align-items: center; margin-top: 24px; }
.rw-workshop-signup .rwi-form button:hover { background: #bd321a; }
.rw-workshop-signup-note { grid-column: 1; grid-row: 4; margin: 30px 0 48px; padding-top: 22px; border-top: 1px solid #f5ebd838; max-width: 440px; font: 400 13px/1.6 'Instrument Sans',sans-serif; }
@media(max-width:781px) {
 .rw-workshop-signup { grid-template-columns: 1fr; gap: 0; }
 .rw-workshop-signup > .rw-bbq-kicker { margin-top: 0; }
 .rw-workshop-signup > .wp-block-richway-inquiry { grid-column: 1; grid-row: 5; }
 .rw-workshop-signup-note { margin-bottom: 30px; }
}

@media(max-width:781px) { .rw-about-opening { padding-top: 140px !important; } }

/* Process page opens directly into its editorial timeline. */
.rw-method-opening { padding-top: 56px; }
.rw-method-opening .rw-workshop-timeline-intro h1 { font: 700 clamp(42px,4.6vw,68px)/1.08 'Playfair Display',serif; letter-spacing: -.035em; margin: 0 0 28px; }
.rw-method-opening .rw-workshop-timeline-intro > p:not(.rw-bbq-kicker) { max-width: 400px; font: 400 18px/1.7 'Instrument Sans',sans-serif; }
.rw-method-opening .wp-block-buttons { margin-top: 30px; }
.rw-method-opening .wp-block-button__link { background: #e64326; color: #fff; border-radius: 10px; padding: 16px 64px 16px 24px; font: 600 16px/1.4 'Instrument Sans',sans-serif; }
.rw-method-opening .wp-block-button__link:hover { background: #bd321a; }
.page-id-155 .rw-global-header { background: #f5ebd8; }
.page-id-155 .rw-global-header .rw-fire-logo img { filter: brightness(0) saturate(100%) invert(17%) sepia(38%) saturate(2602%) hue-rotate(342deg) brightness(88%) contrast(95%); }
@media(max-width:781px) { .rw-method-opening { padding-top: 32px; } }

/* Contact: one aligned composition with restrained form and supporting details. */
.rw-contact-opening { display: grid; grid-template-columns: minmax(0, 1.8fr) minmax(260px, 1fr); gap: 48px clamp(40px,6vw,88px); padding: 48px var(--rw-container-gutter) 100px; background: #f5ebd8; color: #781b0a; align-items: start; }
.rw-contact-copy { grid-column: 1 / -1; padding-bottom: 38px; border-bottom: 1px solid #781b0a25; }
.rw-contact-copy .rw-bbq-kicker { font-size: 12px; letter-spacing: .1em; margin: 0 0 18px; }
.rw-contact-copy h1 { font: 700 clamp(36px,4.6vw,62px)/1.12 'Playfair Display',serif; letter-spacing: -.025em; margin: 0 0 20px; }
.rw-contact-copy > p:not(.rw-bbq-kicker) { font: 400 17px/1.7 'Instrument Sans',sans-serif; max-width: 620px; margin: 0; }
.rw-contact-panel { padding: 0; background: transparent; }
.rw-contact-panel > h2,.rw-contact-panel > p:not(.rw-contact-note) { display: none; }
.rw-contact-panel .rwi-form { padding: 0; background: transparent; }
.rw-contact-panel .rwi-fields { gap: 18px 20px; }
.rw-contact-panel .rwi-fields :is(label, .rwi-picker-field) { font-size: 13px; line-height: 1.4; gap: 7px; margin: 0; }
.rw-contact-panel .rwi-fields input,.rw-contact-panel .rwi-fields select,.rw-contact-panel .rwi-fields textarea { background: #fffaf1; border: 1px solid #781b0a30; border-radius: 8px; padding: 12px 14px; min-height: 48px; }
.rw-contact-panel .rwi-fields input,.rw-contact-panel .rwi-fields select { height: 48px; }
.rw-contact-panel .rwi-fields textarea { min-height: 112px; resize: vertical; }
.rw-contact-panel .rwi-form button[type="submit"] { position: relative; background: #e64326; border-radius: 8px; align-items: center; justify-content: center; text-align: center; min-height: 52px; margin-top: 22px; padding: 14px 52px; }
.rw-contact-panel .rwi-form button[type="submit"] .rwi-arrow { position: absolute; right: 20px; top: 50%; transform: translateY(-50%); }
.rw-contact-panel .rwi-form button:hover { background: #bd321a; }
.rw-contact-panel .rw-contact-note { font: 400 12px/1.6 'Instrument Sans',sans-serif; margin: 16px 0 0; max-width: 540px; }
.rw-contact-tabs { display: grid; grid-template-columns: 1fr 1fr; gap: 4px; padding: 5px; border: 1px solid #781b0a20; border-radius: 10px; background: #eee2cc; margin-bottom: 24px; }
.rw-contact-tabs button { border: 0; border-radius: 6px; padding: 14px 8px; background: transparent; color: #781b0a; font: 600 15px/1.3 'Instrument Sans',sans-serif; cursor: pointer; }
.rw-contact-tabs button[aria-selected="true"] { background: #e64326; color: #fff; }
.rw-contact-tabs button:focus-visible { outline: 2px solid #781b0a; outline-offset: 2px; }
.has-form-tabs .rw-contact-form-choice > h3 { display: none; }
.rw-contact-form-choice[hidden] { display: none !important; }
.rw-contact-form-choice { margin: 0; }
.rw-contact-direct { padding: 28px; margin: 0; background: #fff; border: 1px solid #781b0a12; border-radius: 18px; }
.rw-contact-direct h2 { font: 600 23px/1.25 'Instrument Sans',sans-serif; margin: 0 0 16px; }
.rw-contact-direct p { font: 400 15px/1.65 'Instrument Sans',sans-serif; margin: 0 0 14px; }
.rw-contact-direct .rw-contact-detail-label { font-size: 12px; margin: 28px 0 6px; }
.rw-contact-direct strong,.rw-contact-email a { color: #781b0a; font: 600 20px/1.4 'Instrument Sans',sans-serif; text-decoration: none; overflow-wrap: anywhere; }
.rw-contact-email a:hover { text-decoration: underline; text-underline-offset: 4px; }
.rw-contact-direct .rw-contact-placeholder { font-size: 11px; margin-top: -4px; }
.rw-contact-next { margin-top: 32px; padding-top: 24px; border-top: 1px solid #781b0a25; }
.rw-contact-next h3 { font: 600 16px/1.4 'Instrument Sans',sans-serif; margin: 0 0 10px; }
@media(max-width:781px) { .rw-contact-opening { grid-template-columns: 1fr; padding-top: 30px; gap: 32px; } .rw-contact-copy { padding-bottom: 28px; } .rw-contact-direct { padding: 24px; } }

.rw-contact-hero.wp-block-cover { min-height: 540px; }
.rw-contact-hero .rw-fire-content { width: 100%; max-width: 1000px; padding: 50px 0 70px; text-align: center; margin-inline: auto !important; }
.rw-contact-hero .rw-fire-eyebrow { justify-content: center; }
.rw-contact-hero .rw-landing-lead { max-width: 620px; margin-inline: auto; text-align: center; }
.rw-contact-hero .rw-fire-title.wp-block-heading { text-align: center; margin-inline: auto; font-size: clamp(36px,4.6vw,62px) !important; line-height: 1.12; margin-bottom: 24px; }
@media(max-width:781px) { .rw-contact-hero.wp-block-cover { padding-bottom: 0; min-height: 0; } .rw-contact-hero .rw-fire-content { padding: 40px 0 64px; } }

.rw-contact-direct .rw-contact-email, .rw-contact-direct p:has(> strong) { background: #f5ebd8; border: 1px solid #781b0a10; border-radius: 10px; padding: 16px; margin-bottom: 12px; }
.rw-contact-direct .rw-contact-email a { display: block; font-size: clamp(16px,1.5vw,20px); }

/* Legal pages: spacious introduction and readable articles within the shared container. */
.rw-legal-page{margin:0;padding:100px var(--rw-container-gutter) 120px;background:#f5ebd8;color:#781b0a;font-family:"Instrument Sans",sans-serif}
.rw-legal-page .rw-legal-eyebrow{font-size:12px;letter-spacing:.15em;font-weight:600;margin:0 0 68px}
.rw-legal-page h1{font:500 clamp(40px,5.2vw,76px)/1.1 "Playfair Display",serif;letter-spacing:-.035em;margin:0 0 36px}
.rw-legal-page .rw-legal-intro{max-width:760px;font-size:18px;line-height:1.8;margin:0 0 20px}
.rw-legal-page .rw-legal-note{font-size:13px;opacity:.7;margin:0 0 76px}
.rw-legal-details{max-width:960px;border-top:1px solid #781b0a55;border-bottom:1px solid #781b0a25;padding:22px 0;margin:0 0 64px}
.rw-legal-details p{display:grid;grid-template-columns:1fr 1.5fr;gap:24px;margin:0;padding:12px 0}
.rw-legal-details strong{font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:500}
.rw-legal-page a{color:inherit;text-underline-offset:4px}
.rw-legal-article{max-width:960px;margin:0 0 48px}
.rw-legal-article h2{font:600 clamp(22px,2.2vw,30px)/1.3 "Instrument Sans",sans-serif;margin:0 0 22px}
.rw-legal-article p{max-width:820px;font-size:16px;line-height:1.85;margin:0 0 18px}
@media(max-width:781px){.rw-legal-page{padding-top:56px;padding-bottom:64px}.rw-legal-page .rw-legal-eyebrow{margin-bottom:36px}.rw-legal-page .rw-legal-note{margin-bottom:42px}.rw-legal-details p{grid-template-columns:1fr;gap:8px}.rw-legal-article{margin-bottom:36px}}

/* Shared scroll header on desktop and mobile. */
body .rw-global-header.rw-scroll-header{position:fixed;inset:0 0 auto;z-index:100;background:transparent;transition:transform .25s ease,background-color .2s ease;backdrop-filter:none;-webkit-backdrop-filter:none}
body.admin-bar .rw-global-header.rw-scroll-header{top:32px}
body .rw-global-header.rw-scroll-header.rw-header-glass{background:rgba(63,18,5,.7);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid #ffffff18}
body .rw-global-header.rw-scroll-header.rw-header-hidden{transform:translateY(calc(-100% - 48px));pointer-events:none}
.page-id-155 .rw-global-header.rw-header-glass .rw-fire-logo img{filter:none}
@media(max-width:782px){body.admin-bar .rw-global-header.rw-scroll-header{top:46px}}
@media(prefers-reduced-motion:reduce){body .rw-global-header.rw-scroll-header{transition:none}}

/* Service overview: compact introduction and a consistent card grid. */
.rw-services-intro { text-align:center; margin:0; padding:170px var(--rw-container-gutter) 64px; background:radial-gradient(ellipse at 85% 100%,#e64326 0%,#9c2c16 45%,#3f1205 100%); color:#f5ebd8; }
.rw-services-intro .rw-fire-eyebrow { display:flex; align-items:center; justify-content:center; gap:12px; margin:0 0 24px; }
.rw-services-intro h1 { margin:0 0 24px; color:inherit; font:700 clamp(54px,6vw,88px)/1.02 "Playfair Display",serif; letter-spacing:-.04em; }
.rw-services-intro > p:last-child { max-width:520px; margin:0 auto; font:400 18px/1.65 "Instrument Sans",sans-serif; }
.rw-services-overview .rwcs { max-width:1440px; padding:0; width:calc(100% - 48px); }
.rw-services-overview .rwcs-compact .rwcs-heading { text-align:left; max-width:none; margin-bottom:36px; }
.rw-services-overview .rwcs-compact .rwcs-eyebrow { justify-content:flex-start; }
.rw-services-overview .rwcs-compact .rwcs-heading h2 { font-size:clamp(36px,3.5vw,54px); }
.rw-services-overview .rwcs-compact .rwcs-intro { margin:0; max-width:620px; }
.rw-services-overview .rwcs-compact .rwcs-card { min-height:380px; border-radius:14px; }
.rw-services-overview .rwcs-compact .rwcs-card:last-child { grid-column:1/-1; min-height:260px; }
.rw-services-overview .rwcs-compact .rwcs-card:last-child .rwcs-card-content { max-width:540px; }
@media(max-width:781px){.rw-services-intro{padding-top:130px;padding-bottom:48px}.rw-services-overview .rwcs-compact .rwcs-card{min-height:330px}.rw-services-overview .rwcs-compact .rwcs-card:last-child{min-height:300px}}
