/* FSM Live Page Editor / Visual Builder v3.3.0 */

:root{
  --fsm-editor-panel:420px;
  --fsm-editor-top:50px;
  --fsm-gold:#e2ad18;
  --fsm-gold-light:#ffe08a;
  --fsm-bg:#0f0b08;
  --fsm-bg-2:#17110c;
  --fsm-text:#fff8ea;
  --fsm-muted:#bfae90;
}

.fsm-live-editor-launch{
  position:fixed;right:22px;bottom:22px;z-index:119900;
  display:inline-flex;align-items:center;gap:8px;padding:11px 16px;
  border:1px solid rgba(226,173,24,.55);border-radius:999px;
  background:#17110c;color:#fff8ea!important;box-shadow:0 12px 30px rgba(0,0,0,.28);
  font:800 13px/1.1 Arial,sans-serif;text-decoration:none!important;
}
.fsm-live-editor-launch:hover{background:#21170e;border-color:#ffe08a;transform:translateY(-1px)}
.fsm-live-editor-launch-icon{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:linear-gradient(135deg,#f7e69d,#d79f08);color:#171006;font-size:14px}

/* Public-facing behaviour of editor overrides */
body:not(.fsm-live-editing) .fsm-live-hidden-section,
body:not(.fsm-live-editing) .fsm-live-element-hidden{display:none!important}

/* Added builder blocks intentionally inherit the site typography and palette. */
.fsm-builder-section{width:100%;padding:clamp(38px,6vw,88px) 20px}
.fsm-builder-section-inner,.fsm-builder-container{width:min(1180px,100%);margin-inline:auto}
.fsm-builder-container{padding:28px}
.fsm-builder-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;width:100%}
.fsm-builder-column{min-width:0}
.fsm-builder-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 20px;border-radius:999px;text-decoration:none!important}
.fsm-builder-image{display:block;max-width:100%;height:auto}
.fsm-builder-divider-block{width:100%;margin:28px 0;border:0;border-top:1px solid currentColor;opacity:.22}
.fsm-builder-spacer{display:block;width:100%;height:48px}

/* Editing shell */
body.fsm-live-editing{padding-top:var(--fsm-editor-top)!important;padding-right:var(--fsm-editor-panel)!important;transition:padding .18s ease}
body.fsm-live-editing.fsm-live-panel-collapsed{padding-right:0!important}
body.fsm-live-editing .fsm-live-editable{cursor:pointer!important;transition:outline-color .12s ease,box-shadow .12s ease,opacity .12s ease!important}
body.fsm-live-editing .fsm-live-editable:hover{outline:2px dashed rgba(226,173,24,.88)!important;outline-offset:3px!important;box-shadow:0 0 0 4px rgba(226,173,24,.08)!important}
body.fsm-live-editing .fsm-live-selected{outline:2px solid var(--fsm-gold-light)!important;outline-offset:4px!important;box-shadow:0 0 0 5px rgba(226,173,24,.14)!important}
body.fsm-live-editing .fsm-live-hidden-section,body.fsm-live-editing .fsm-live-element-hidden{display:block!important;opacity:.28!important;filter:grayscale(.7)!important;position:relative!important}
body.fsm-live-editing .fsm-live-inline-editing{cursor:text!important;outline:2px solid #fff!important;box-shadow:0 0 0 6px rgba(226,173,24,.18)!important}

/* True block positioning used by the one-click Left/Centre/Right controls. */
body .fsm-live-block-align-left{margin-left:0!important;margin-right:auto!important}
body .fsm-live-block-align-center{margin-left:auto!important;margin-right:auto!important}
body .fsm-live-block-align-right{margin-left:auto!important;margin-right:0!important}
body img.fsm-live-block-align-left,body img.fsm-live-block-align-center,body img.fsm-live-block-align-right{display:block!important}
body a.fsm-live-block-align-left,body a.fsm-live-block-align-center,body a.fsm-live-block-align-right,
body button.fsm-live-block-align-left,body button.fsm-live-block-align-center,body button.fsm-live-block-align-right{width:max-content!important;max-width:100%!important}
body.fsm-live-editing .fsm-live-drag-source{opacity:.45!important;outline:2px dashed var(--fsm-gold)!important}
body.fsm-live-editing .fsm-live-drop-target{outline:3px solid var(--fsm-gold)!important;outline-offset:6px!important}
body.fsm-live-editing .fsm-live-drop-target:not(.fsm-live-drop-after){box-shadow:inset 0 5px 0 var(--fsm-gold-light)!important}
body.fsm-live-editing .fsm-live-drop-target.fsm-live-drop-after{box-shadow:inset 0 -5px 0 var(--fsm-gold-light)!important}
.fsm-live-drag-ghost{position:fixed;z-index:2147483640;pointer-events:none;padding:8px 11px;border:1px solid rgba(226,173,24,.8);border-radius:9px;background:#0d0907;color:#fff8ea;font:800 11px/1 Arial,sans-serif;box-shadow:0 8px 24px rgba(0,0,0,.4)}
body.fsm-live-gap-moving,body.fsm-live-gap-moving *{cursor:ns-resize!important}
body.fsm-live-dragging .fsm-live-editable{cursor:move!important}
body.fsm-live-dragging .fsm-live-drop-target{outline:3px solid var(--fsm-gold)!important;outline-offset:6px!important;box-shadow:inset 0 4px 0 rgba(255,224,138,.85)!important}
body.fsm-live-dragging .fsm-live-drop-target.fsm-live-drop-after{box-shadow:inset 0 -4px 0 rgba(255,224,138,.92)!important}
body.fsm-live-free-moving,body.fsm-live-free-moving *{cursor:grabbing!important}
body.fsm-live-free-moving .fsm-live-free-moving-element{transition:none!important}

/* WordPress Media Library must always sit above the FSM editor chrome. */
body.fsm-live-media-open .fsm-live-editor-panel,
body.fsm-live-media-open .fsm-live-topbar,
body.fsm-live-media-open .fsm-live-quickbar,
body.fsm-live-media-open .fsm-live-spacing-handles,
body.fsm-live-media-open .fsm-live-status{display:none!important;visibility:hidden!important;pointer-events:none!important}
body.fsm-live-media-open{padding-right:0!important;padding-top:0!important}
body.fsm-live-media-open .media-modal{z-index:2147483646!important;inset:20px!important}
body.fsm-live-media-open .media-modal-backdrop{z-index:2147483645!important}

/* Desktop/tablet/mobile preview widths inside edit mode only */
body.fsm-live-editing.fsm-preview-tablet [data-fsm-live-root]{max-width:820px!important;margin-left:auto!important;margin-right:auto!important;box-shadow:0 0 0 1px rgba(226,173,24,.18)}
body.fsm-live-editing.fsm-preview-mobile [data-fsm-live-root]{max-width:390px!important;margin-left:auto!important;margin-right:auto!important;box-shadow:0 0 0 1px rgba(226,173,24,.18)}

/* Top toolbar */
.fsm-live-topbar{position:fixed;top:0;left:0;right:0;height:var(--fsm-editor-top);z-index:120030;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 10px 7px 14px;background:#0c0907;border-bottom:1px solid rgba(226,173,24,.24);box-shadow:0 7px 24px rgba(0,0,0,.24);color:var(--fsm-text);font-family:Arial,sans-serif}
.admin-bar .fsm-live-topbar{top:32px}
body.admin-bar.fsm-live-editing{padding-top:calc(var(--fsm-editor-top) + 32px)!important}
.fsm-live-topbar-brand{display:flex;align-items:baseline;gap:9px;min-width:190px}
.fsm-live-topbar-brand strong{font-size:13px;color:var(--fsm-text)}
.fsm-live-topbar-brand span{font-size:10px;color:#9e8d70}
.fsm-live-topbar-group{display:flex;align-items:center;gap:5px}
.fsm-live-topbar button,.fsm-live-topbar a{display:grid;place-items:center;min-width:34px;height:34px;padding:0 10px;border:1px solid rgba(226,173,24,.18);border-radius:9px;background:#17110c;color:#fff8ea!important;text-decoration:none!important;font:800 12px/1 Arial,sans-serif;cursor:pointer}
.fsm-live-topbar button:hover,.fsm-live-topbar a:hover,.fsm-live-topbar button.active{border-color:var(--fsm-gold);background:#241a10}
.fsm-live-topbar button:disabled{opacity:.35;cursor:not-allowed}
.fsm-live-device-group button:nth-child(2){font-size:15px;transform:scaleX(1.25)}
.fsm-live-device-group button:nth-child(3){font-size:14px;transform:scaleX(.78)}

/* Side panel */
.fsm-live-editor-panel{position:fixed;top:var(--fsm-editor-top);right:0;bottom:0;z-index:120020;width:var(--fsm-editor-panel);overflow:auto;padding:16px 17px 90px;background:var(--fsm-bg);border-left:1px solid rgba(226,173,24,.28);color:var(--fsm-text);box-shadow:-20px 0 46px rgba(0,0,0,.32);font-family:Arial,sans-serif;transition:transform .18s ease}
.admin-bar .fsm-live-editor-panel{top:calc(var(--fsm-editor-top) + 32px)}
body.fsm-live-panel-collapsed .fsm-live-editor-panel{transform:translateX(100%)}
.fsm-live-editor-panel *{box-sizing:border-box}
.fsm-live-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:13px}
.fsm-live-editor-title{display:grid;gap:3px}
.fsm-live-editor-title small{color:var(--fsm-gold);font-size:9px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.fsm-live-editor-title strong{color:var(--fsm-text);font-size:20px;line-height:1.05}
.fsm-live-editor-close{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(226,173,24,.25);border-radius:50%;background:#18120d;color:#fff8ea!important;text-decoration:none!important;font-size:16px}

.fsm-live-tabs{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;margin-bottom:13px;position:sticky;top:-16px;z-index:4;padding:8px 0;background:var(--fsm-bg)}
.fsm-live-tabs button{min-height:36px;padding:5px 3px;border:1px solid rgba(226,173,24,.18);border-radius:9px;background:#17110c;color:#cdbd9c;font-size:10px;font-weight:850;cursor:pointer}
.fsm-live-tabs button.active{color:#171006;border-color:var(--fsm-gold);background:linear-gradient(135deg,#f7e69d,#d79f08)}

.fsm-live-card{display:grid;gap:12px;padding:14px;border:1px solid rgba(226,173,24,.16);border-radius:16px;background:#15100c;margin-bottom:12px}
.fsm-live-card h3,.fsm-live-card h4{margin:0;color:var(--fsm-text)}
.fsm-live-card h3{font-size:15px}.fsm-live-card h4{font-size:11px}
.fsm-live-card p{margin:0;color:var(--fsm-muted);font-size:12px;line-height:1.48}
.fsm-live-scope-badge{display:inline-flex;width:max-content;padding:4px 7px;border-radius:999px;background:rgba(226,173,24,.10);color:var(--fsm-gold-light);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.fsm-live-subheading{padding-top:4px!important;color:#d8c59e!important;text-transform:uppercase;letter-spacing:.06em}

.fsm-live-field{display:grid;gap:6px}
.fsm-live-field label,.fsm-live-four-grid span,.fsm-live-three-grid span{color:#d8c59e;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}
.fsm-live-field input,.fsm-live-field textarea,.fsm-live-select,.fsm-live-four-grid input,.fsm-live-three-grid input{width:100%;border:1px solid rgba(226,173,24,.20);border-radius:10px;background:#0e0b08;color:#fff8ea;padding:9px 10px;font:12px/1.4 Arial,sans-serif;outline:none}
.fsm-live-field textarea{min-height:145px;resize:vertical}
.fsm-live-field input:focus,.fsm-live-field textarea:focus,.fsm-live-select:focus,.fsm-live-four-grid input:focus,.fsm-live-three-grid input:focus{border-color:var(--fsm-gold-light);box-shadow:0 0 0 3px rgba(226,173,24,.10)}
.fsm-live-check{display:flex;align-items:center;gap:7px;color:#d8c59e;font-size:11px}
.fsm-live-check input{accent-color:var(--fsm-gold)}
.fsm-live-image-preview{display:block;width:100%;max-height:180px;object-fit:contain;border:1px solid rgba(226,173,24,.14);border-radius:12px;background:#090705}

.fsm-live-actions{display:flex;flex-wrap:wrap;gap:7px}
.fsm-live-btn{min-height:37px;border-radius:999px;padding:7px 12px;border:1px solid rgba(226,173,24,.22);background:#17110c;color:#fff8ea;font-size:11px;font-weight:900;cursor:pointer}
.fsm-live-btn:hover{border-color:var(--fsm-gold-light)}
.fsm-live-btn.primary{color:#171006;border:0;background:linear-gradient(135deg,#f7e69d,#e2ad18,#be8a08)}
.fsm-live-btn.danger{color:#ffd4d4;border-color:rgba(240,90,90,.28);background:rgba(120,20,20,.16)}
.fsm-live-btn.subtle{color:#cdbd9c;background:#100d0a}
.fsm-live-divider{height:1px;background:rgba(226,173,24,.12);margin:2px 0}
.fsm-live-mini-note{padding:8px 10px;border-radius:9px;background:rgba(226,173,24,.045)}

.fsm-live-layout-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.fsm-live-align-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.fsm-live-align-grid .fsm-live-btn.active{color:#171006;border-color:var(--fsm-gold);background:linear-gradient(135deg,#f7e69d,#d79f08)}
.fsm-live-layout-grid .fsm-live-btn{width:100%}
.fsm-live-four-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.fsm-live-four-grid label,.fsm-live-three-grid label{display:grid;gap:5px;min-width:0}
.fsm-live-four-grid input,.fsm-live-three-grid input{padding:8px 5px;text-align:center}
.fsm-live-three-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}

.fsm-live-help{display:grid;gap:7px;padding:12px;border-radius:14px;background:rgba(226,173,24,.05);border:1px solid rgba(226,173,24,.12);color:#cdbd9c;font-size:11px;line-height:1.5;margin-bottom:12px}
.fsm-live-help strong{color:#fff8ea}
.fsm-live-status{position:fixed;right:18px;bottom:18px;z-index:120040;display:none;width:calc(var(--fsm-editor-panel) - 36px);padding:10px 12px;border-radius:12px;background:#1d160f;border:1px solid rgba(226,173,24,.32);color:#fff8ea;font-size:12px;font-weight:800;box-shadow:0 12px 32px rgba(0,0,0,.28)}
.fsm-live-status.show{display:block}.fsm-live-status.error{border-color:rgba(240,90,90,.38);background:#2a1010}
body.fsm-live-panel-collapsed .fsm-live-status{right:18px;width:340px}

/* Add tab */
.fsm-live-add-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:12px}
.fsm-live-add-card{display:grid;place-items:center;gap:7px;min-height:82px;padding:10px;border:1px solid rgba(226,173,24,.16);border-radius:13px;background:#14100c;color:#fff8ea;cursor:pointer}
.fsm-live-add-card:hover{border-color:var(--fsm-gold);transform:translateY(-1px)}
.fsm-live-add-card span{display:grid;place-items:center;width:29px;height:29px;border-radius:9px;background:rgba(226,173,24,.12);color:var(--fsm-gold-light);font-size:16px;font-weight:900}
.fsm-live-add-card strong{font-size:10px}

/* Sections */
.fsm-live-section-list{display:grid;gap:7px}
.fsm-live-section-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding:9px;border:1px solid rgba(226,173,24,.14);border-radius:11px;background:#110d0a}
.fsm-live-section-item.dragging{opacity:.4}.fsm-live-section-item.drag-over{border-color:var(--fsm-gold);transform:translateY(2px)}.fsm-live-section-item.hidden-section{opacity:.55}
.fsm-live-drag-handle{min-width:0;cursor:grab}.fsm-live-drag-handle strong{display:block;overflow:hidden;color:#fff8ea;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.fsm-live-drag-handle small{display:block;margin-top:2px;color:#9e8d70;font-size:9px}
.fsm-live-section-tools{display:flex;gap:3px}.fsm-live-section-tools button{width:27px;height:27px;padding:0;border:1px solid rgba(226,173,24,.18);border-radius:7px;background:#1b140f;color:#fff8ea;cursor:pointer}
.fsm-live-reset-row{margin-top:12px}

/* Layers / navigator */
.fsm-live-navigator{display:grid;gap:4px}
.fsm-live-nav-item{display:grid;grid-template-columns:70px minmax(0,1fr);gap:7px;align-items:center;width:100%;padding:8px 9px 8px calc(9px + (var(--fsm-depth) * 7px));border:1px solid rgba(226,173,24,.10);border-radius:9px;background:#110d0a;color:#fff8ea;text-align:left;cursor:pointer}
.fsm-live-nav-item:hover,.fsm-live-nav-item.active{border-color:rgba(226,173,24,.65);background:#19120d}
.fsm-live-nav-item span{color:#a99879;font-size:8px;font-weight:900;text-transform:uppercase}.fsm-live-nav-item strong{overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}

/* Floating selected-element toolbar */
.fsm-live-quickbar{position:fixed;z-index:120010;display:none;align-items:center;gap:3px;padding:4px;border:1px solid rgba(226,173,24,.35);border-radius:10px;background:#0d0907;box-shadow:0 8px 20px rgba(0,0,0,.28);font-family:Arial,sans-serif}
.fsm-live-quickbar.show{display:flex}
.fsm-live-quickbar button{display:grid;place-items:center;width:28px;height:28px;padding:0;border:0;border-radius:7px;background:#19120d;color:#fff8ea;cursor:pointer;font-weight:900}
.fsm-live-quickbar button:hover{background:#2b1e10;color:var(--fsm-gold-light)}
.fsm-live-quickbar .fsm-live-drag-button{width:auto;min-width:50px;padding:0 8px;cursor:grab;color:#171006;background:linear-gradient(135deg,#f7e69d,#e2ad18)!important;touch-action:none;font-size:9px;letter-spacing:.05em}
.fsm-live-quickbar .fsm-live-drag-button:active{cursor:grabbing}
.fsm-live-quick-sep{width:1px;height:20px;background:rgba(226,173,24,.22);margin:0 1px}
.fsm-live-spacing-handles{position:fixed;inset:0;z-index:120009;display:none;pointer-events:none;font-family:Arial,sans-serif}
.fsm-live-spacing-handles.show{display:block}
.fsm-live-gap-handle{position:fixed;display:grid;place-items:center;width:26px;height:24px;padding:0;border:1px solid rgba(255,224,138,.75);border-radius:8px;background:#e2ad18;color:#171006;font:900 15px/1 Arial,sans-serif;cursor:ns-resize;pointer-events:auto;touch-action:none;box-shadow:0 5px 16px rgba(0,0,0,.3)}
.fsm-live-gap-handle:hover{background:#ffe08a}
.fsm-live-gap-handle::after{content:attr(data-fsm-gap-value);position:absolute;right:32px;display:none;padding:4px 6px;border-radius:6px;background:#0d0907;color:#fff8ea;font-size:9px;white-space:nowrap}
body.fsm-live-gap-moving .fsm-live-gap-handle::after{display:block}

@media(max-width:1050px){
  :root{--fsm-editor-panel:390px}
  .fsm-live-topbar-brand span{display:none}
}

@media(max-width:820px){
  body.fsm-live-editing{padding-right:0!important;padding-bottom:50vh!important}
  body.fsm-live-editing.fsm-live-panel-collapsed{padding-bottom:0!important}
  .fsm-live-editor-panel{top:auto!important;left:0;right:0;bottom:0;width:100%;height:50vh;border-left:0;border-top:1px solid rgba(226,173,24,.28);transform:none}
  body.fsm-live-panel-collapsed .fsm-live-editor-panel{transform:translateY(100%)}
  .fsm-live-tabs{top:-16px}
  .fsm-live-status{right:12px;bottom:12px;width:min(420px,calc(100vw - 24px))}
  .fsm-live-topbar-brand{display:none}
  .fsm-live-topbar{justify-content:center}
  .fsm-live-quickbar{max-width:190px}
  .fsm-builder-columns{grid-template-columns:1fr}
}

@media(max-width:520px){
  .fsm-live-device-group{display:none}
  .fsm-live-add-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fsm-live-four-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fsm-live-three-grid{grid-template-columns:1fr}
  .fsm-live-tabs{grid-template-columns:repeat(5,minmax(58px,1fr));overflow-x:auto}
}

@media(max-width:782px){
  .admin-bar .fsm-live-topbar{top:46px}
  body.admin-bar.fsm-live-editing{padding-top:calc(var(--fsm-editor-top) + 46px)!important}
}

/* Responsive FREE positioning. Uses the individual translate property so theme transforms/animations remain intact. */
body .fsm-live-free-position{
  translate:var(--fsm-live-free-x,0px) var(--fsm-live-free-y,0px)!important;
}
@media(max-width:1024px){
  body .fsm-live-free-position{
    translate:var(--fsm-live-free-tablet-x,var(--fsm-live-free-x,0px)) var(--fsm-live-free-tablet-y,var(--fsm-live-free-y,0px))!important;
  }
}
@media(max-width:767px){
  body .fsm-live-free-position{
    translate:var(--fsm-live-free-mobile-x,var(--fsm-live-free-tablet-x,var(--fsm-live-free-x,0px))) var(--fsm-live-free-mobile-y,var(--fsm-live-free-tablet-y,var(--fsm-live-free-y,0px)))!important;
  }
}
/* Editor preview must emulate the chosen device even when the browser itself is desktop sized. */
body.fsm-live-editing.fsm-preview-desktop .fsm-live-free-position{
  translate:var(--fsm-live-free-x,0px) var(--fsm-live-free-y,0px)!important;
}
body.fsm-live-editing.fsm-preview-tablet .fsm-live-free-position{
  translate:var(--fsm-live-free-tablet-x,var(--fsm-live-free-x,0px)) var(--fsm-live-free-tablet-y,var(--fsm-live-free-y,0px))!important;
}
body.fsm-live-editing.fsm-preview-mobile .fsm-live-free-position{
  translate:var(--fsm-live-free-mobile-x,var(--fsm-live-free-tablet-x,var(--fsm-live-free-x,0px))) var(--fsm-live-free-mobile-y,var(--fsm-live-free-tablet-y,var(--fsm-live-free-y,0px)))!important;
}
body.fsm-live-free-moving .fsm-live-free-moving-element{will-change:translate!important}
body.fsm-live-width-moving,body.fsm-live-width-moving *{cursor:ew-resize!important}

/* FREE/FLOW/SIZE controls. */
.fsm-live-quickbar{flex-wrap:wrap;max-width:min(620px,calc(100vw - 24px))}
.fsm-live-quickbar .fsm-live-free-drag-button,
.fsm-live-quickbar .fsm-live-size-button{
  width:auto;min-width:46px;padding:0 7px;touch-action:none;font-size:9px;letter-spacing:.04em
}
.fsm-live-quickbar .fsm-live-free-drag-button{
  cursor:grab;color:#171006;background:linear-gradient(135deg,#ffe69a,#e2ad18)!important
}
.fsm-live-quickbar .fsm-live-free-drag-button:active{cursor:grabbing}
.fsm-live-quickbar .fsm-live-size-button{cursor:ew-resize;color:#f8e8ba;background:#241a10}

/* Alignment/snap guides shown while FREE dragging. Hold Alt while dragging to bypass snapping. */
.fsm-live-snap-guides{position:fixed;inset:0;z-index:120008;pointer-events:none;display:block}
.fsm-live-snap-line{position:fixed;display:none;background:rgba(255,224,138,.92);box-shadow:0 0 0 1px rgba(0,0,0,.22),0 0 12px rgba(226,173,24,.42)}
.fsm-live-snap-x{top:var(--fsm-editor-top);bottom:0;width:1px}
.fsm-live-snap-y{left:0;right:0;height:1px}
.fsm-live-snap-guides.show-x .fsm-live-snap-x{display:block}
.fsm-live-snap-guides.show-y .fsm-live-snap-y{display:block}
body.fsm-live-media-open .fsm-live-snap-guides{display:none!important}

@media(max-width:820px){
  .fsm-live-quickbar{max-width:calc(100vw - 20px)}
}

/* ===== FSM Visual Builder 3.0 canvas controls ===== */
body.fsm-live-editing .fsm-live-multi-selected{outline:1px dashed rgba(255,224,138,.72)!important;outline-offset:3px!important}
body.fsm-live-editing .fsm-live-selected:not([contenteditable="true"]){cursor:grab!important}
body.fsm-live-editing .fsm-live-element-locked{cursor:not-allowed!important}
body.fsm-live-editing .fsm-live-element-locked::after{pointer-events:none}

.fsm-live-selection-frame{
  position:fixed;z-index:120007;display:none;pointer-events:none;
  box-sizing:border-box;font-family:Arial,sans-serif
}
.fsm-live-selection-frame.show{display:block}
.fsm-live-selection-frame-border{position:absolute;inset:0;border:1px solid rgba(255,224,138,.98);box-shadow:0 0 0 1px rgba(0,0,0,.34),0 0 18px rgba(226,173,24,.18);pointer-events:none}
.fsm-live-frame-label{position:absolute;left:0;bottom:calc(100% + 7px);max-width:180px;padding:4px 7px;border-radius:6px;background:#0d0907;color:#ffe08a;font:800 9px/1 Arial,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:0 4px 12px rgba(0,0,0,.28)}
.fsm-live-frame-move{position:absolute;left:50%;top:-15px;translate:-50% 0;min-width:54px;height:25px;padding:0 9px;border:1px solid rgba(255,224,138,.85);border-radius:999px;background:linear-gradient(135deg,#ffe69a,#e2ad18);color:#171006;font:900 9px/1 Arial,sans-serif;letter-spacing:.05em;cursor:grab;pointer-events:auto;touch-action:none;box-shadow:0 4px 14px rgba(0,0,0,.3)}
.fsm-live-frame-move:active{cursor:grabbing}
.fsm-live-selection-frame.locked .fsm-live-frame-move{background:#29231d;color:#d1c1a0;cursor:not-allowed}
.fsm-live-resize-handle{position:absolute;width:11px;height:11px;padding:0;border:1px solid #171006;border-radius:3px;background:#ffe08a;pointer-events:auto;touch-action:none;box-shadow:0 1px 5px rgba(0,0,0,.34)}
.fsm-live-resize-nw{left:-6px;top:-6px;cursor:nwse-resize}.fsm-live-resize-n{left:50%;top:-6px;translate:-50% 0;cursor:ns-resize}.fsm-live-resize-ne{right:-6px;top:-6px;cursor:nesw-resize}
.fsm-live-resize-e{right:-6px;top:50%;translate:0 -50%;cursor:ew-resize}.fsm-live-resize-se{right:-6px;bottom:-6px;cursor:nwse-resize}.fsm-live-resize-s{left:50%;bottom:-6px;translate:-50% 0;cursor:ns-resize}
.fsm-live-resize-sw{left:-6px;bottom:-6px;cursor:nesw-resize}.fsm-live-resize-w{left:-6px;top:50%;translate:0 -50%;cursor:ew-resize}
.fsm-live-selection-frame.multi .fsm-live-resize-handle,.fsm-live-selection-frame.locked .fsm-live-resize-handle{display:none}
.fsm-live-selection-frame.image-single .fsm-live-resize-n,.fsm-live-selection-frame.image-single .fsm-live-resize-s{display:none}
body.fsm-live-frame-resizing,body.fsm-live-frame-resizing *{user-select:none!important}

.fsm-live-column-divider{position:fixed;z-index:120009;display:none;width:20px;min-height:32px;padding:0;border:0;background:transparent;cursor:col-resize;pointer-events:auto;touch-action:none}
.fsm-live-column-divider.show{display:block}
.fsm-live-column-divider::before{content:"";position:absolute;left:9px;top:0;bottom:0;width:2px;border-radius:2px;background:#e2ad18;box-shadow:0 0 0 1px rgba(0,0,0,.28),0 0 12px rgba(226,173,24,.42)}
.fsm-live-column-divider span{position:absolute;left:50%;top:50%;translate:-50% -50%;display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#ffe08a;color:#171006;font:900 12px/1 Arial,sans-serif;box-shadow:0 5px 14px rgba(0,0,0,.34)}
.fsm-live-column-divider::after{content:attr(data-split-value);position:absolute;left:28px;top:50%;translate:0 -50%;display:none;padding:5px 7px;border-radius:7px;background:#0d0907;color:#fff8ea;font:800 9px/1 Arial,sans-serif;white-space:nowrap}
body.fsm-live-column-resizing .fsm-live-column-divider::after{display:block}
body.fsm-live-column-resizing,body.fsm-live-column-resizing *{cursor:col-resize!important;user-select:none!important}

.fsm-live-gap-handle{width:72px!important;height:28px!important;font-size:9px!important;letter-spacing:.04em}
.fsm-live-gap-handle::before{content:"";position:absolute;left:50%;top:50%;width:110px;height:1px;translate:-50% -50%;background:rgba(255,224,138,.72);z-index:-1}
.fsm-live-gap-handle::after{right:auto!important;left:calc(100% + 7px)!important}

.fsm-live-selection-summary{display:grid;gap:3px;padding:10px;border:1px solid rgba(226,173,24,.22);border-radius:11px;background:rgba(226,173,24,.07)}
.fsm-live-selection-summary strong{font-size:12px;color:#ffe08a}.fsm-live-selection-summary span{font-size:10px;color:#bfae90}
.fsm-live-align-six{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}

.fsm-live-layer-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px;align-items:center;padding-left:calc(var(--fsm-depth,0) * 7px);border-radius:10px}
.fsm-live-layer-row.active{background:rgba(226,173,24,.08)}
.fsm-live-layer-row.locked{opacity:.82}.fsm-live-layer-row.hidden-layer{opacity:.52}
.fsm-live-layer-row .fsm-live-nav-item{grid-template-columns:62px minmax(0,1fr);padding-left:9px}
.fsm-live-layer-tools{display:flex;gap:3px}
.fsm-live-layer-tools button{display:grid;place-items:center;width:29px;height:29px;padding:0;border:1px solid rgba(226,173,24,.16);border-radius:7px;background:#17110c;color:#fff8ea;cursor:pointer;font-size:11px}
.fsm-live-layer-tools button:hover{border-color:#e2ad18;background:#241a10}

body.fsm-live-media-open .fsm-live-selection-frame,body.fsm-live-media-open .fsm-live-column-divider{display:none!important}

@media(max-width:820px){
  .fsm-live-frame-label{max-width:130px}
  .fsm-live-align-six{grid-template-columns:repeat(2,minmax(0,1fr))}
}
body.fsm-live-editing .fsm-live-drop-target.fsm-live-drop-inside{outline:3px solid #ffe08a!important;outline-offset:-5px!important;box-shadow:inset 0 0 0 5px rgba(226,173,24,.16)!important;background-image:linear-gradient(rgba(226,173,24,.035),rgba(226,173,24,.035))!important}

/* ===== FSM Visual Builder 3.2: draft publishing, history and visual styling ===== */
.fsm-live-topbar-brand [data-fsm-draft-state]{position:relative;padding-left:12px}
.fsm-live-topbar-brand [data-fsm-draft-state]::before{content:"";position:absolute;left:0;top:50%;width:6px;height:6px;border-radius:50%;background:#6f675d;transform:translateY(-50%)}
.fsm-live-topbar-brand [data-fsm-draft-state].dirty{color:#ffe08a}
.fsm-live-topbar-brand [data-fsm-draft-state].dirty::before{background:#e2ad18;box-shadow:0 0 10px rgba(226,173,24,.65)}
.fsm-live-topbar-brand [data-fsm-draft-state].saving{color:#d8c59e}
.fsm-live-topbar-brand [data-fsm-draft-state].saving::before{background:#fff8ea;animation:fsmDraftPulse .8s ease-in-out infinite alternate}
@keyframes fsmDraftPulse{from{opacity:.35;transform:translateY(-50%) scale(.75)}to{opacity:1;transform:translateY(-50%) scale(1.18)}}
.fsm-live-topbar .fsm-live-publish-button{min-width:78px;color:#171006!important;border-color:#e2ad18;background:linear-gradient(135deg,#f7e69d,#e2ad18,#be8a08)}
.fsm-live-topbar .fsm-live-publish-button.has-changes{box-shadow:0 0 0 2px rgba(226,173,24,.17),0 0 18px rgba(226,173,24,.25)}
.fsm-live-topbar .fsm-live-preview-link{min-width:68px}

/* Seven compact tabs. */
.fsm-live-tabs{grid-template-columns:repeat(7,minmax(0,1fr))}
.fsm-live-tabs button{font-size:9px;padding-inline:2px}

/* Style controls. */
.fsm-live-editor-panel [data-style-number],
.fsm-live-editor-panel [data-style-string],
.fsm-live-editor-panel [data-style-select]{width:100%;border:1px solid rgba(226,173,24,.20);border-radius:10px;background:#0e0b08;color:#fff8ea;padding:9px 10px;font:12px/1.35 Arial,sans-serif;outline:none}
.fsm-live-editor-panel [data-style-number]:focus,
.fsm-live-editor-panel [data-style-string]:focus,
.fsm-live-editor-panel [data-style-select]:focus{border-color:var(--fsm-gold-light);box-shadow:0 0 0 3px rgba(226,173,24,.10)}
.fsm-live-color-row{display:grid;grid-template-columns:90px 42px minmax(0,1fr);gap:7px;align-items:center;margin:7px 0}
.fsm-live-color-row label{color:#d8c59e;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}
.fsm-live-color-row input[type="color"]{width:42px;height:36px;padding:3px;border:1px solid rgba(226,173,24,.22);border-radius:9px;background:#0e0b08;cursor:pointer}

/* Hover state uses independent CSS scale so FREE translate remains intact. */
.fsm-live-hover-styled{transition:color var(--fsm-live-transition,180ms) ease,background-color var(--fsm-live-transition,180ms) ease,opacity var(--fsm-live-transition,180ms) ease,scale var(--fsm-live-transition,180ms) ease!important}
.fsm-live-hover-color:hover{color:var(--fsm-live-hover-color)!important}
.fsm-live-hover-bg:hover{background-color:var(--fsm-live-hover-bg)!important}
.fsm-live-hover-opacity:hover{opacity:var(--fsm-live-hover-opacity)!important}
.fsm-live-hover-scale:hover{scale:var(--fsm-live-hover-scale)!important}

/* History and scope controls. */
.fsm-live-scope-switch{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin:8px 0 12px}
.fsm-live-scope-switch button{min-height:32px;border:1px solid rgba(226,173,24,.18);border-radius:8px;background:#17110c;color:#cdbd9c;font:800 10px/1 Arial,sans-serif;cursor:pointer}
.fsm-live-scope-switch button.active{color:#171006;border-color:#e2ad18;background:linear-gradient(135deg,#f7e69d,#d79f08)}
.fsm-live-revision-list{display:grid;gap:7px}
.fsm-live-revision-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding:10px;border:1px solid rgba(226,173,24,.14);border-radius:11px;background:#110d0a}
.fsm-live-revision-item strong{display:block;color:#fff8ea;font-size:11px;line-height:1.25}
.fsm-live-revision-item small{display:block;margin-top:3px;color:#9e8d70;font-size:8.5px;line-height:1.35}
.fsm-live-revision-item button{min-height:30px;padding:5px 8px;border:1px solid rgba(226,173,24,.22);border-radius:8px;background:#1b140f;color:#ffe8b0;font:800 9px/1 Arial,sans-serif;cursor:pointer}
.fsm-live-revision-item button:hover{border-color:#e2ad18}

@media(max-width:1050px){
  .fsm-live-publish-group .fsm-live-preview-link{display:none}
  .fsm-live-tabs{grid-template-columns:repeat(4,minmax(0,1fr));position:static}
}
@media(max-width:820px){
  .fsm-live-publish-group{order:3}
  .fsm-live-topbar .fsm-live-publish-button{min-width:64px;padding-inline:7px}
  .fsm-live-tabs{grid-template-columns:repeat(7,minmax(62px,1fr));overflow-x:auto}
}

/* ===== FSM Visual Builder 3.2: responsive design, style clipboard & direct container spacing ===== */
body:not(.fsm-live-editing) .fsm-live-responsive-hidden{display:none!important}
body.fsm-live-editing .fsm-live-responsive-hidden{opacity:.18!important;filter:grayscale(.45)!important;outline:1px dashed rgba(255,224,138,.72)!important;outline-offset:3px!important}

.fsm-live-responsive-visibility{display:flex;align-items:center;gap:9px;margin:10px 0;padding:10px 11px;border:1px solid rgba(226,173,24,.17);border-radius:10px;background:#110d0a;color:#f3dfb3;font:800 10px/1.2 Arial,sans-serif;cursor:pointer}
.fsm-live-responsive-visibility input{accent-color:#e2ad18}
.fsm-live-style-clipboard{position:sticky;top:0;z-index:2;margin:0 0 12px;padding:8px;border:1px solid rgba(226,173,24,.16);border-radius:11px;background:rgba(13,9,7,.96);backdrop-filter:blur(8px)}

.fsm-live-position-editor{display:grid;gap:6px;margin:9px 0 13px}
.fsm-live-position-editor>span{color:#d8c59e;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}
.fsm-live-position-pad{position:relative;height:116px;overflow:hidden;border:1px solid rgba(226,173,24,.28);border-radius:11px;background-color:#17110c;background-size:cover;background-position:center;cursor:crosshair;touch-action:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.015)}
.fsm-live-position-pad::before,.fsm-live-position-pad::after{content:"";position:absolute;background:rgba(255,255,255,.22);pointer-events:none}
.fsm-live-position-pad::before{left:50%;top:0;bottom:0;width:1px}.fsm-live-position-pad::after{top:50%;left:0;right:0;height:1px}
.fsm-live-position-pad i{position:absolute;z-index:2;width:18px;height:18px;border:3px solid #fff8ea;border-radius:50%;background:#e2ad18;translate:-50% -50%;box-shadow:0 3px 10px rgba(0,0,0,.45);pointer-events:none}
.fsm-live-position-pad small{position:absolute;right:7px;bottom:6px;z-index:2;padding:4px 6px;border-radius:6px;background:rgba(13,9,7,.78);color:#ffe8b0;font:800 8px/1 Arial,sans-serif;pointer-events:none}

.fsm-live-section-edge-handles{position:fixed;inset:0;z-index:120006;display:none;pointer-events:none;font-family:Arial,sans-serif}
.fsm-live-section-edge-handles.show{display:block}
.fsm-live-section-edge{position:fixed;height:10px;padding:0;border:0;background:transparent;cursor:ns-resize;pointer-events:auto;touch-action:none}
.fsm-live-section-edge::before{content:"";position:absolute;left:0;right:0;top:4px;height:2px;border-radius:2px;background:rgba(226,173,24,.72);box-shadow:0 0 9px rgba(226,173,24,.24)}
.fsm-live-section-edge span{position:absolute;left:50%;top:50%;translate:-50% -50%;min-width:82px;padding:5px 8px;border:1px solid rgba(255,224,138,.82);border-radius:999px;background:#0d0907;color:#ffe08a;font:900 8px/1 Arial,sans-serif;letter-spacing:.06em;white-space:nowrap;box-shadow:0 4px 13px rgba(0,0,0,.28)}
.fsm-live-section-edge::after{content:attr(data-fsm-edge-value);position:absolute;right:4px;top:14px;display:none;padding:4px 6px;border-radius:6px;background:#0d0907;color:#fff8ea;font:800 9px/1 Arial,sans-serif}
body.fsm-live-section-padding-moving .fsm-live-section-edge::after{display:block}
body.fsm-live-section-padding-moving,body.fsm-live-section-padding-moving *{cursor:ns-resize!important;user-select:none!important}
body.fsm-live-media-open .fsm-live-section-edge-handles{display:none!important}

@media(max-width:820px){
  .fsm-live-position-pad{height:96px}
  .fsm-live-section-edge span{min-width:70px;font-size:7px}
}
/* Keep section-spacing controls away from the central MOVE/resize handles. */
.fsm-live-section-edge span{left:12px;translate:0 -50%}

/* ===== FSM Visual Builder 3.3: element clipboard & component library ===== */
.fsm-live-tabs{grid-template-columns:repeat(8,minmax(0,1fr))}
.fsm-live-global-notice{display:grid;gap:8px;margin:10px 0;padding:10px 11px;border:1px solid rgba(226,173,24,.34);border-radius:12px;background:linear-gradient(135deg,rgba(226,173,24,.12),rgba(226,173,24,.035))}
.fsm-live-global-notice strong{color:#ffe08a;font-size:10px;text-transform:uppercase;letter-spacing:.06em}
.fsm-live-global-notice>span{color:#fff8ea;font-size:12px;font-weight:800}
body.fsm-live-editing .fsm-live-global-component{position:relative}
body.fsm-live-editing .fsm-live-global-component::before{content:"GLOBAL · " attr(data-fsm-global-component-name);position:absolute;left:8px;top:8px;z-index:20;max-width:calc(100% - 16px);padding:4px 7px;border:1px solid rgba(226,173,24,.55);border-radius:999px;background:rgba(15,11,8,.88);color:#ffe08a;font:900 8px/1 Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase;pointer-events:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.fsm-live-library-section{display:grid;gap:8px;margin:14px 0 18px}
.fsm-live-library-section>h4{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0;color:#d8c59e;font-size:10px;text-transform:uppercase;letter-spacing:.07em}
.fsm-live-library-section>h4 span{display:grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:rgba(226,173,24,.11);color:#ffe08a;font-size:9px}
.fsm-live-library-card{display:grid;gap:8px;padding:11px;border:1px solid rgba(226,173,24,.15);border-radius:13px;background:#15100c}
.fsm-live-library-card[hidden]{display:none!important}
.fsm-live-library-card-head{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:center}
.fsm-live-library-card-head strong{min-width:0;color:#fff8ea;font-size:12px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fsm-live-library-card>small{color:#9e8d70;font-size:9px;text-transform:uppercase;letter-spacing:.06em}
.fsm-live-library-badge{display:inline-flex;align-items:center;width:max-content;padding:4px 6px;border-radius:999px;background:rgba(255,255,255,.06);color:#cdbd9c;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.fsm-live-library-badge.global{background:rgba(226,173,24,.15);color:#ffe08a}
.fsm-live-library-card .fsm-live-actions{grid-template-columns:repeat(3,minmax(0,1fr))}
.fsm-live-library-card .fsm-live-btn{min-width:0;padding-inline:6px;font-size:9px}

/* Starter layouts intentionally use structure only and inherit the FSM theme palette/typography. */
.fsm-starter-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.fsm-starter-quote{max-width:820px}
.fsm-starter-quote blockquote{margin:0;font-size:clamp(22px,3vw,38px);line-height:1.3}
.fsm-starter-quote blockquote footer{margin-top:18px;font-size:14px;opacity:.72}
.fsm-starter-faq{display:grid;gap:12px}
.fsm-starter-contact .fsm-builder-columns{align-items:center}
.fsm-starter-contact .fsm-builder-column:last-child{text-align:right}

@media(max-width:1050px){
  .fsm-live-tabs{grid-template-columns:repeat(4,minmax(0,1fr));position:static}
}
@media(max-width:820px){
  .fsm-live-tabs{grid-template-columns:repeat(8,minmax(62px,1fr));overflow-x:auto}
  .fsm-starter-card-grid{grid-template-columns:1fr}
  .fsm-starter-contact .fsm-builder-column:last-child{text-align:left}
}
