/* FlexBuilder – frontend layout */
.flexbuilder{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:0;position:relative}
.flexbuilder>*+*{margin-top:0}
.flexbuilder *{box-sizing:border-box}
.fb-container{position:relative;width:100%}
.fb-container.fb-full{width:100%}
.fb-inner{width:100%;max-width:1140px;margin:0 auto;padding:0 15px}
.fb-container .fb-inner,.fb-full>.fb-inner{padding:0}
.fb-container .fb-container>.fb-inner{max-width:none}
.fb-full>.fb-inner{max-width:none}
.fb-flex-box{display:flex;gap:var(--fb-gap,20px);flex-direction:column}
.fb-flex-box>*{min-width:0}
.fb-flex-box[style*="flex-direction:row"]>.fb-container{flex:1 1 0}
.fb-container.fb-grow{flex-grow:1}
.fb-grid-box{display:grid;gap:var(--fb-gap,20px);grid-template-columns:repeat(var(--fb-cols,3),minmax(0,1fr))}
.fb-widget{position:relative;min-width:0}
.flexbuilder .fb-heading{margin:0 0 .3em;line-height:1.2}
.flexbuilder .fb-widget>*:last-child{margin-bottom:0}
.fb-text>*:first-child{margin-top:0}.fb-text>*:last-child{margin-bottom:0}
.fb-image{margin:0}.fb-image figcaption{font-size:.85rem;opacity:.7;margin-top:6px}
.fb-btn{display:inline-block;text-decoration:none;font-weight:600;line-height:1.2;transition:filter .15s}
.fb-btn:hover{filter:brightness(1.1)}
.fb-btn-sm{padding:8px 16px;font-size:.85rem}.fb-btn-md{padding:12px 24px}.fb-btn-lg{padding:16px 34px;font-size:1.1rem}
.fb-icon{display:inline-block;line-height:1}
.fb-iconbox{text-align:center}.fb-iconbox-i{font-size:42px;line-height:1;margin-bottom:12px}.fb-iconbox h3{margin:0 0 8px}.fb-iconbox p{margin:0;opacity:.8}
.fb-video{position:relative;padding-top:56.25%}.fb-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.fb-posts{display:grid;gap:24px}.fb-post img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:6px}.fb-post h3{margin:10px 0 6px;font-size:1.1rem}.fb-post p{margin:0;opacity:.8;font-size:.92rem}
.fb-placeholder,.fb-missing{padding:24px;text-align:center;background:#f3f3f5;color:#777;border:1px dashed #ccc;border-radius:6px;font-size:.9rem}
@media (min-width:1025px){.fb-hide-d{display:none!important}}
@media (max-width:1024px){
  .fb-grid-box{grid-template-columns:repeat(var(--fb-cols-t,2),minmax(0,1fr))}
  .fb-posts{grid-template-columns:repeat(2,1fr)!important}
}
@media (min-width:768px) and (max-width:1024px){.fb-hide-t{display:none!important}}
@media (max-width:767px){
  .fb-grid-box{grid-template-columns:repeat(var(--fb-cols-m,1),minmax(0,1fr))}
  .fb-stack-m>.fb-flex-box{flex-direction:column!important}
  .fb-posts{grid-template-columns:1fr!important}
  .fb-hide-m{display:none!important}
}
