/* Blog posts. Loaded on /blog/* only, after the shared kit and menu-page.css.
   Same cloth recipe as working-with-us.css: navy linen on dark panels, ivory linen and paper grain on light ones. */

/* Hero: a plated photo, so no fire glow or slow zoom; the photo feathers into navy cloth */
.bp-hero .mhero-copy h1{font-size:clamp(2rem,3.3vw,3.1rem)}
.bp-hero .mhero-glow,.am-on .menu-page .bp-hero .mhero-visual::after{display:none!important}
.am-on .menu-page .bp-hero .mhero-food{animation:none;transform:none}
.menu-page main .mhero.bp-hero{background-color:var(--navy);background-image:var(--tex-sand),var(--tex-threads-soft),var(--tex-weave-soft),radial-gradient(ellipse 45% 80% at 20% 50%,#22356f66,#0000 70%),linear-gradient(160deg,#0a1433,#0f1c47 55%,#0b1638)}
.menu-page main .bp-hero .mhero-food{object-position:62% 55%}
@media(min-width:851px){
  .menu-page main .bp-hero .mhero-visual{width:58%;-webkit-mask-image:linear-gradient(90deg,#0000,#000 12%);mask-image:linear-gradient(90deg,#0000,#000 12%)}
  .menu-page main .bp-hero .mhero-shade{background:none}
  .menu-page main .bp-hero .mhero-inner{min-height:560px;padding-block:52px 60px}
}
@media(min-width:601px) and (max-width:850px){
  .menu-page main .bp-hero .mhero-visual{-webkit-mask-image:linear-gradient(90deg,#0000,#000 18%);mask-image:linear-gradient(90deg,#0000,#000 18%)}
  .menu-page main .bp-hero .mhero-shade{background:linear-gradient(90deg,rgba(12,23,60,.7),rgba(12,23,60,.45) 30%,rgba(12,23,60,.1) 75%)}
}
@media(max-width:600px){
  .menu-page main .mhero.bp-hero{min-height:0}
  .menu-page main .bp-hero .mhero-visual{position:relative;width:100%;height:auto;aspect-ratio:5/3;top:auto;bottom:auto;-webkit-mask-image:linear-gradient(180deg,#000 58%,#0000);mask-image:linear-gradient(180deg,#000 58%,#0000)}
  .menu-page main .bp-hero .mhero-food{object-position:50% 50%}
  .menu-page main .bp-hero .mhero-shade{background:none}
  .menu-page main .bp-hero .mhero-inner{min-height:0;padding-block:6px 44px}
}

/* Article */
.bp-wrap{background-color:#fcf9f3;background-image:var(--tex-grain),var(--tex-weave-soft),linear-gradient(180deg,#fdfbf6,#f7f1e6)}
.bp-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:56px;align-items:start}
.bp-side{position:sticky;top:96px}
.bp-toc{margin:14px 0 0;padding:0;list-style:none;counter-reset:toc;display:grid;gap:2px;border-left:1px solid #e6dccb}
.bp-toc li{counter-increment:toc}
.bp-toc a{display:block;padding:7px 0 7px 16px;color:var(--muted);text-decoration:none;font-size:.95rem;line-height:1.35;border-left:2px solid transparent;margin-left:-1px;transition:color .2s,border-color .2s}
.bp-toc a::before{content:counter(toc,decimal-leading-zero) " ";font:600 .68rem/1 var(--sans);letter-spacing:.12em;color:var(--gold-dark);margin-right:6px}
.bp-toc a:hover,.bp-toc a:focus-visible{color:var(--navy);border-left-color:var(--gold)}
.bp-side-cta{margin-top:28px;padding:22px 24px;color:#fff;background-color:var(--navy);background-image:var(--tex-sand),var(--tex-threads-soft),var(--tex-weave-soft),radial-gradient(ellipse 60% 90% at 80% 0%,#22356f66,#0000 70%),linear-gradient(160deg,#0a1433,#0f1c47 55%,#0b1638);border-top:3px solid var(--gold-light);border-radius:6px}
.bp-side-cta p{margin-top:8px;color:#d9dfec}
.bp-side-cta p strong{color:#fff}
.bp-side-cta .button{margin-top:16px;width:100%;text-align:center}

.bp-body{max-width:760px;color:var(--ink);font-size:1.0625rem;line-height:1.72}
.bp-body > p{margin-top:18px}
.bp-lede{font-family:var(--serif);font-size:1.35rem;line-height:1.55;color:var(--navy)}
.bp-lede::first-letter{float:left;font:400 4.6rem/.82 var(--serif);color:var(--gold);margin:8px 12px 0 0}
.bp-body h2{margin-top:56px;font-size:clamp(1.8rem,2.8vw,2.4rem);line-height:1.15;color:var(--navy);letter-spacing:-.02em;padding-top:22px;border-top:1px solid #e6dccb}
.bp-body h2 em{font-style:italic;color:var(--gold-dark)}
.bp-body h3{margin-top:34px;font-size:1.4rem;color:var(--navy)}
.bp-body a:not(.button){color:var(--navy);text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:3px}
.bp-body strong{color:var(--navy)}

.bp-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px}
.bp-pair > div{padding:22px 24px;color:#d9dfec;background-color:var(--navy);background-image:var(--tex-sand),var(--tex-threads-soft),var(--tex-weave-soft),linear-gradient(160deg,#0a1433,#0f1c47 55%,#0b1638);border-top:3px solid var(--gold-light);border-radius:6px}
.bp-pair strong{display:block;margin-bottom:6px;font:400 1.5rem/1.2 var(--serif);color:#fff}
.bp-pair p{font-size:.98rem;line-height:1.55}

.bp-figure{margin:30px 0 0}
.bp-figure img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;border-radius:12px;-webkit-mask-image:radial-gradient(135% 135% at 50% 50%,#000 60%,#0000 100%);mask-image:radial-gradient(135% 135% at 50% 50%,#000 60%,#0000 100%)}
.bp-figure figcaption,.bp-gallery figcaption{margin-top:10px;font-size:.88rem;line-height:1.5;color:var(--muted);text-align:center}

.bp-quote{margin:34px 0 0;padding:6px 0 6px 28px;border-left:3px solid var(--gold)}
.bp-quote p{font:italic 400 1.45rem/1.45 var(--serif);color:var(--navy)}
.bp-quote footer{margin-top:10px;font:600 .72rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--gold-dark)}
.bp-quote-guest{padding:28px 32px;border-left:0;border-radius:6px;background-color:#f8f0e0;background-image:var(--tex-grain),var(--tex-weave-soft),var(--tex-mottle),linear-gradient(180deg,#faf3e6,#f3e8d4);border-top:3px solid var(--gold)}
.bp-quote-guest p::before{content:"\201C";display:block;font:400 3.4rem/.6 var(--serif);color:var(--gold);margin-bottom:10px}

.bp-foods{margin:24px 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.bp-foods > div{padding:22px 24px;background-color:#fffdf8;background-image:var(--tex-grain),var(--tex-weave-soft),linear-gradient(180deg,#fffefa,#fbf6ec);border:1px solid #e6dccb;border-left:3px solid var(--gold);border-radius:6px;box-shadow:0 14px 30px -22px #4a3a2259}
.bp-foods dt{font:400 1.35rem/1.25 var(--serif);color:var(--navy)}
.bp-foods dd{margin:8px 0 0;font-size:.98rem;line-height:1.6;color:var(--muted)}

.bp-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:24px}
.bp-gallery figure{margin:0}
.bp-gallery img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:10px;-webkit-mask-image:radial-gradient(130% 130% at 50% 50%,#000 62%,#0000 100%);mask-image:radial-gradient(130% 130% at 50% 50%,#000 62%,#0000 100%)}

.bp-tiers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:24px}
.bp-tier{display:flex;flex-direction:column;padding:24px 22px;text-decoration:none!important;color:var(--ink);background-color:#fffdf8;background-image:var(--tex-grain),var(--tex-weave-soft),linear-gradient(180deg,#fffefa,#fbf6ec);border:1px solid #e6dccb;border-top:3px solid var(--navy);border-radius:6px;box-shadow:0 14px 30px -22px #4a3a2259;transition:transform .35s var(--am-ease,ease),box-shadow .35s var(--am-ease,ease)}
.bp-tier:hover{transform:translateY(-4px);box-shadow:0 24px 46px -20px rgba(20,37,93,.3)}
.bp-tier-gold{border-top-color:var(--gold);color:#d9dfec;background-color:var(--navy);background-image:var(--tex-sand),var(--tex-threads-soft),var(--tex-weave-soft),linear-gradient(160deg,#0a1433,#0f1c47 55%,#0b1638)}
.bp-tier-name{font:400 1.4rem/1.2 var(--serif);color:var(--navy)}
.bp-tier-gold .bp-tier-name{color:#fff}
.bp-tier-price{margin-top:10px;font:400 2.2rem/1 var(--serif);letter-spacing:-.03em;color:var(--navy)}
.bp-tier-gold .bp-tier-price{color:var(--gold-light)}
.bp-tier-price small{font:400 .85rem/1 var(--sans);letter-spacing:0;color:var(--muted)}
.bp-tier-gold .bp-tier-price small{color:#b9c2d8}
.bp-tier-text{margin-top:12px;font-size:.93rem;line-height:1.55;color:var(--muted)}
.bp-tier-gold .bp-tier-text{color:#d9dfec}

.bp-list,.bp-steps{margin:20px 0 0;padding:0;list-style:none;display:grid;gap:12px}
.bp-list li{position:relative;padding-left:24px}
.bp-list li::before{content:"";position:absolute;left:0;top:.78em;width:12px;height:1px;background:var(--gold)}
.bp-steps{counter-reset:steps}
.bp-steps li{counter-increment:steps;position:relative;padding:18px 22px 18px 64px;background-color:#fffdf8;background-image:var(--tex-grain),var(--tex-weave-soft),linear-gradient(180deg,#fffefa,#fbf6ec);border:1px solid #e6dccb;border-radius:6px}
.bp-steps li::before{content:counter(steps,decimal-leading-zero);position:absolute;left:20px;top:16px;font:400 1.6rem/1 var(--serif);color:var(--gold);letter-spacing:-.04em}
.bp-note{margin-top:26px;padding:20px 24px;color:#fff;border-left:3px solid var(--gold-light);background-color:var(--navy);background-image:var(--tex-sand),var(--tex-threads-soft),var(--tex-weave-soft),linear-gradient(160deg,#0a1433,#0f1c47 55%,#0b1638);border-radius:0 6px 6px 0}
.bp-body .bp-note strong{color:var(--gold-light)}
.bp-body .bp-note a{color:#fff;text-decoration-color:var(--gold-light)}

.bp-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.bp-author{display:grid;grid-template-columns:150px 1fr;gap:24px;align-items:center;margin-top:56px;padding:26px 28px;background-color:#f8f0e0;background-image:var(--tex-grain),var(--tex-weave-soft),var(--tex-mottle),linear-gradient(180deg,#faf3e6,#f3e8d4);border:1px solid #e6dccb;border-radius:6px}
.bp-author img{width:100%;height:auto}
.bp-author p{margin-top:6px;font-size:.98rem;color:var(--muted)}
.bp-author a{display:inline-block;margin-top:8px;font-weight:600}

/* FAQ band after the article keeps the navy cloth from menu-page.css */
.blog-page .service-section{margin-top:0}

@media(max-width:1000px){
  .bp-layout{grid-template-columns:1fr;gap:28px}
  .bp-side{position:static}
  .bp-toc{display:none}
  .bp-side-cta{margin-top:0}
}
@media(max-width:700px){
  .bp-pair,.bp-foods,.bp-tiers{grid-template-columns:1fr}
  .bp-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .bp-author{grid-template-columns:1fr;text-align:center}
  .bp-author img{max-width:200px;margin:0 auto}
  .bp-body{font-size:1rem}
  .bp-lede{font-size:1.2rem}
  .bp-steps li{padding:16px 18px 16px 56px}
  .bp-steps li::before{left:16px}
}
