/* Foto Mama i Beba — refreshed HTML editorial single-post layout */
body.single-post { background:#FBF8F4 !important; color:#43362F; }
.fmb-single {
  --fmb-cream:#FBF8F4;
  --fmb-sand:#F3ECE5;
  --fmb-brown:#43362F;
  --fmb-rose:#B58D7D;
  --fmb-border:#E5D9D0;
  --fmb-muted:#8B7C73;
  background:var(--fmb-cream);
  color:var(--fmb-brown);
  padding:34px 0 92px;
  font-family:'DM Sans',sans-serif;
}
.fmb-container { width:min(1200px,calc(100% - 48px)); margin:0 auto; }
.fmb-hero {
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  gap:24px;
  align-items:stretch;
  min-height:510px;
  padding:15px;
  overflow:hidden;
  border:1px solid var(--fmb-border);
  border-radius:8px;
  background:
    radial-gradient(ellipse at 3% 8%,rgba(255,255,255,.9),transparent 42%),
    linear-gradient(135deg,#F3ECE5 0%,#F8F3EE 52%,#EDE2D9 100%);
  box-shadow:0 18px 54px rgba(67,54,47,.075);
}
.fmb-hero-copy {
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  min-width:0;
  padding:34px clamp(24px,4vw,54px) 36px clamp(22px,3vw,40px);
}
.fmb-hero-copy:after {
  content:"";
  position:absolute;
  right:-35px;
  bottom:-110px;
  width:260px;
  height:260px;
  border:1px solid rgba(181,141,125,.22);
  border-radius:50%;
  pointer-events:none;
}
.fmb-breadcrumb {
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin:0 0 48px;
  color:#95867D;
  font-size:11px;
  letter-spacing:.035em;
}
.fmb-breadcrumb a { color:inherit; text-decoration:none; transition:color .2s ease; }
.fmb-breadcrumb a:hover { color:var(--fmb-rose); }
.fmb-brandline {
  display:flex;
  align-items:center;
  gap:9px;
  color:#9A796B;
  font-size:10px;
  font-weight:700;
  letter-spacing:.17em;
  text-transform:uppercase;
  margin:0 0 23px;
}
.fmb-brand-dot { width:7px;height:7px;border-radius:50%;background:var(--fmb-rose);box-shadow:0 0 0 4px rgba(181,141,125,.12); }
.fmb-brand-separator { color:#C2A99B; }
.fmb-category {
  display:inline-flex;
  align-items:center;
  padding:7px 12px;
  margin:0 0 19px;
  border:1px solid rgba(181,141,125,.38);
  border-radius:30px;
  color:#8D6B5D;
  background:rgba(255,255,255,.52);
  font-size:10px;
  font-weight:600;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.fmb-title {
  position:relative;
  z-index:1;
  max-width:540px;
  margin:0 !important;
  color:var(--fmb-brown) !important;
  font-family:'Playfair Display',Georgia,serif !important;
  font-size:clamp(37px,4.3vw,61px) !important;
  font-weight:500 !important;
  line-height:1.08 !important;
  letter-spacing:-.035em;
  text-wrap:balance;
}
.fmb-meta {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px;
  margin:27px 0 0;
  color:#887970;
  font-size:11px;
  letter-spacing:.035em;
}
.fmb-meta time { display:inline-flex;align-items:center;gap:7px; }
.fmb-meta-icon { color:var(--fmb-rose);font-size:16px;line-height:1; }
.fmb-meta-divider { width:3px;height:3px;border-radius:50%;background:#C4A99B; }
.fmb-hero-rule { width:48px;height:1px;margin:28px 0 13px;background:var(--fmb-rose); }
.fmb-hero-note {
  color:#9A8980;
  font-family:'Playfair Display',Georgia,serif;
  font-size:14px;
  font-style:italic;
  letter-spacing:.025em;
}
.fmb-hero-image {
  position:relative;
  min-width:0;
  min-height:480px;
  margin:0;
  overflow:hidden;
  border-radius:5px;
  background:#E7DAD0;
}
.fmb-featured-image {
  display:block;
  width:100%;
  height:100%;
  min-height:480px;
  max-height:650px;
  object-fit:cover;
  object-position:center;
}
.fmb-image-corner {
  position:absolute;
  width:42px;
  height:42px;
  border-color:rgba(255,255,255,.8);
  pointer-events:none;
}
.fmb-image-corner-top { top:15px;right:15px;border-top:1px solid;border-right:1px solid; }
.fmb-image-corner-bottom { bottom:15px;left:15px;border-bottom:1px solid;border-left:1px solid; }
.fmb-hero-no-image { grid-template-columns:1fr;min-height:350px; }
.fmb-hero-no-image .fmb-hero-copy { max-width:780px; }
.fmb-article {
  position:relative;
  z-index:2;
  width:min(850px,calc(100% - 24px));
  margin:-28px auto 0;
  padding:clamp(34px,5.2vw,68px) clamp(25px,6vw,76px) 44px;
  border:1px solid var(--fmb-border);
  border-radius:7px;
  background:#fff;
  box-shadow:0 18px 50px rgba(67,54,47,.055);
}
.fmb-article-content {
  color:#5B504A;
  font-size:16px;
  line-height:1.9;
  font-weight:400;
  overflow-wrap:anywhere;
}
.fmb-article-content > *:first-child { margin-top:0 !important; }
.fmb-article-content p {
  margin:0 0 1.5em;
  color:#5B504A;
  font-size:16px;
  line-height:1.9;
}
.fmb-article-content > p:first-of-type {
  color:#4C403A;
  font-size:18px;
  line-height:1.85;
}
.fmb-article-content h2,
.fmb-article-content h3,
.fmb-article-content h4 {
  margin:1.75em 0 .6em;
  color:var(--fmb-brown);
  font-family:'Playfair Display',Georgia,serif;
  font-weight:500;
  line-height:1.25;
  letter-spacing:-.015em;
}
.fmb-article-content h2 { font-size:clamp(29px,3.2vw,38px); }
.fmb-article-content h3 { font-size:clamp(25px,2.7vw,32px); }
.fmb-article-content h4 { font-size:23px; }
.fmb-article-content a {
  color:#9B7364;
  text-decoration-color:rgba(181,141,125,.55);
  text-underline-offset:3px;
}
.fmb-article-content a:hover { color:#43362F; }
.fmb-article-content ul,
.fmb-article-content ol { margin:0 0 1.5em 1.35em;padding:0; }
.fmb-article-content li { margin:0 0 .55em;padding-left:.2em; }
.fmb-article-content li::marker { color:var(--fmb-rose); }
.fmb-article-content blockquote {
  margin:2.2em 0;
  padding:14px 0 14px 25px;
  border-left:2px solid var(--fmb-rose);
  color:#74645B;
  font-family:'Playfair Display',Georgia,serif;
  font-size:23px;
  line-height:1.55;
}
.fmb-article-content blockquote p { color:inherit;font:inherit; }
.fmb-article-content figure { margin:2.2em 0; }
.fmb-article-content figure img,
.fmb-article-content > img {
  display:block;
  width:auto;
  max-width:100%;
  height:auto;
  margin:0 auto;
  border:8px solid #FBF8F4;
  border-radius:5px;
  box-shadow:0 9px 28px rgba(67,54,47,.085);
}
.fmb-article-content figcaption {
  margin-top:12px;
  color:#92837A;
  font-size:12px;
  line-height:1.55;
  text-align:center;
}
.fmb-article-content hr {
  width:54px;
  height:1px;
  margin:2.7em auto;
  border:0;
  background:var(--fmb-border);
}
.fmb-article-content table { border-collapse:collapse;font-size:14px; }
.fmb-article-content th,
.fmb-article-content td { padding:12px 14px;border:1px solid var(--fmb-border); }
.fmb-article-content th { background:var(--fmb-sand);color:var(--fmb-brown); }
.fmb-page-links { margin-top:25px; }
.fmb-tags {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:13px;
  margin-top:38px;
  padding-top:24px;
  border-top:1px solid var(--fmb-border);
}
.fmb-tags-title {
  color:#98877E;
  font-size:10px;
  font-weight:700;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.fmb-tags-list { display:flex;flex-wrap:wrap;gap:7px; }
.fmb-tags-list a {
  display:inline-flex;
  padding:6px 11px;
  border:1px solid var(--fmb-border);
  border-radius:30px;
  background:var(--fmb-cream);
  color:#8D6D60;
  font-size:11px;
  text-decoration:none;
  transition:all .2s ease;
}
.fmb-tags-list a:hover { border-color:var(--fmb-rose);background:var(--fmb-sand);color:var(--fmb-brown); }
.fmb-back-row { margin:27px auto 0;text-align:center; }
.fmb-back-link {
  display:inline-flex;
  align-items:center;
  gap:9px;
  padding:12px 18px;
  border:1px solid var(--fmb-rose);
  border-radius:3px;
  background:var(--fmb-rose);
  color:#fff !important;
  font-size:11px;
  font-weight:700;
  letter-spacing:.055em;
  text-decoration:none !important;
  transition:all .2s ease;
}
.fmb-back-link:hover { border-color:var(--fmb-brown);background:var(--fmb-brown); }
.fmb-related { margin:78px auto 0; }
.fmb-related-topline { margin-bottom:28px;text-align:center; }
.fmb-section-kicker {
  margin-bottom:10px;
  color:var(--fmb-rose);
  font-size:10px;
  font-weight:700;
  letter-spacing:.2em;
  text-transform:uppercase;
}
.fmb-related-topline h2 {
  margin:0;
  color:var(--fmb-brown);
  font-family:'Playfair Display',Georgia,serif;
  font-size:clamp(30px,3.2vw,42px);
  font-weight:500;
}
.fmb-related-topline p { margin:10px 0 0;color:#8C7D74;font-size:13px; }
.fmb-related-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px; }
.fmb-related-card {
  min-width:0;
  overflow:hidden;
  border:1px solid var(--fmb-border);
  border-radius:6px;
  background:#fff;
  box-shadow:0 9px 25px rgba(67,54,47,.045);
  transition:transform .25s ease,box-shadow .25s ease;
}
.fmb-related-card:hover { transform:translateY(-4px);box-shadow:0 15px 34px rgba(67,54,47,.09); }
.fmb-related-card-link { display:flex;height:100%;flex-direction:column;color:inherit!important;text-decoration:none!important; }
.fmb-related-photo { height:185px;overflow:hidden;background:var(--fmb-sand); }
.fmb-related-photo img { display:block;width:100%;height:100%;object-fit:cover;transition:transform .4s ease; }
.fmb-related-card:hover .fmb-related-photo img { transform:scale(1.04); }
.fmb-related-photo-placeholder { display:block;width:100%;height:100%;background:linear-gradient(135deg,#F3ECE5,#FBF8F4); }
.fmb-related-info { display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:17px 19px 20px; }
.fmb-related-info time { color:#998A80;font-size:10px;letter-spacing:.06em; }
.fmb-related-info h3 {
  margin:9px 0 18px;
  color:var(--fmb-brown);
  font-family:'Playfair Display',Georgia,serif;
  font-size:20px;
  font-weight:500;
  line-height:1.3;
}
.fmb-related-cta { display:inline-flex;gap:7px;margin-top:auto;color:#9B7364;font-size:11px;font-weight:700;letter-spacing:.04em; }
.fmb-comments { width:min(850px,calc(100% - 24px));margin:55px auto 0;color:var(--fmb-brown);font-family:'DM Sans',sans-serif; }
.fmb-comments input,
.fmb-comments textarea { border:1px solid var(--fmb-border);border-radius:4px;background:#fff; }
.fmb-comments input[type="submit"] { border-color:var(--fmb-rose);background:var(--fmb-rose);color:#fff; }
.fmb-comments input[type="submit"]:hover { border-color:var(--fmb-brown);background:var(--fmb-brown); }
@media(max-width:950px) {
  .fmb-hero { grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);min-height:430px;gap:14px; }
  .fmb-hero-copy { padding:28px 22px; }
  .fmb-breadcrumb { margin-bottom:32px; }
  .fmb-hero-image,.fmb-featured-image { min-height:410px; }
  .fmb-related-grid { gap:16px; }
  .fmb-related-photo { height:160px; }
}
@media(max-width:760px) {
  .fmb-single { padding:18px 0 62px; }
  .fmb-container { width:calc(100% - 28px); }
  .fmb-hero { grid-template-columns:1fr;gap:12px;padding:9px;border-radius:6px; }
  .fmb-hero-copy { padding:22px 18px 24px; }
  .fmb-breadcrumb { margin-bottom:28px; }
  .fmb-brandline { margin-bottom:17px;font-size:9px; }
  .fmb-category { margin-bottom:14px; }
  .fmb-title { font-size:clamp(34px,9vw,44px)!important;line-height:1.1!important; }
  .fmb-meta { margin-top:21px; }
  .fmb-hero-rule { margin-top:21px; }
  .fmb-hero-image { min-height:0;height:280px; }
  .fmb-featured-image { min-height:0;height:100%;max-height:none; }
  .fmb-article { width:calc(100% - 8px);margin:-12px auto 0;padding:27px 20px 30px;border-radius:5px; }
  .fmb-article-content { font-size:15px;line-height:1.85; }
  .fmb-article-content p { font-size:15px;line-height:1.85; }
  .fmb-article-content > p:first-of-type { font-size:16px; }
  .fmb-article-content h2 { font-size:29px; }
  .fmb-article-content h3 { font-size:25px; }
  .fmb-article-content figure { margin:1.7em 0; }
  .fmb-article-content figure img,.fmb-article-content > img { border-width:4px; }
  .fmb-article-content blockquote { padding-left:17px;font-size:20px; }
  .fmb-related { margin-top:56px; }
  .fmb-related-grid { grid-template-columns:1fr;gap:16px; }
  .fmb-related-photo { height:210px; }
  .fmb-comments { width:calc(100% - 8px); }
}
@media(prefers-reduced-motion:reduce) {
  .fmb-tags-list a,.fmb-back-link,.fmb-related-card,.fmb-related-photo img { transition:none; }
}
