/* Florenity Tumblers — Studio look (dark). Change the variables to restyle. */
.flt{--flt-bg:#1E1A17;--flt-card:#2A2420;--flt-card2:#3A322C;--flt-line:rgba(244,236,230,.14);--flt-text:#F4ECE6;--flt-muted:#B9ADA3;--flt-accent:#E3A79B;--flt-serif:"Instrument Serif",Georgia,serif;--flt-sans:Manrope,system-ui,sans-serif;font-family:var(--flt-sans);color:var(--flt-text)}
.flt *{box-sizing:border-box}
.flt [hidden]{display:none!important}
.flt-soon{background:var(--flt-card);border:1px solid var(--flt-line);border-radius:22px;padding:24px 28px;margin:0 0 24px;color:var(--flt-muted);max-width:760px}
.flt-soon p{margin:0}
.flt-soon__t{font-family:var(--flt-serif);font-size:30px;line-height:1.1;color:var(--flt-text);margin:0 0 8px!important}
.flt-soon strong{color:var(--flt-text)}
.flt-soon a{color:var(--flt-accent)}
.flt .screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* sizes strip */
.flt-sizes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 36px}
.flt-size{display:flex;align-items:center;gap:14px;background:var(--flt-card);border:1px solid var(--flt-line);border-radius:20px;padding:16px 20px}
.flt-glass{width:30px;height:56px;color:var(--flt-accent);flex:none}
.flt-size div{display:flex;flex-direction:column;flex:1;min-width:0}
.flt-size__top{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}
.flt-size__l{font-family:var(--flt-serif);font-size:30px;line-height:1}
.flt-size__n{color:var(--flt-muted);font-size:13px;margin-top:4px}
.flt-size__p{font-weight:800;font-size:19px;color:var(--flt-accent);white-space:nowrap}
.flt-pay{grid-column:1/-1;display:inline-flex;align-items:center;gap:10px;justify-self:start;margin:4px 0 0;padding:10px 16px;border-radius:999px;background:rgba(227,167,155,.12);border:1px solid rgba(227,167,155,.4);color:var(--flt-text);font-size:14px;font-weight:700}
.flt-pay svg{width:18px;height:18px;color:var(--flt-accent);flex:none}
.flt-form .flt-paycheck{background:rgba(227,167,155,.08);border:1px solid rgba(227,167,155,.3);border-radius:12px;padding:12px 14px}
.flt-form .flt-paycheck strong{color:var(--flt-accent)}
.flt-sizes__foot{grid-column:1/-1;margin:2px 0 0;color:var(--flt-muted);font-size:14px}

/* toolbar */
.flt-bar{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;margin:0 0 24px}
.flt-chips{display:flex;gap:8px;flex-wrap:wrap;flex:1 1 560px}
.flt-chip span{opacity:.6;font-size:12px;margin-left:2px}
.flt-search{position:relative;flex:0 1 340px;width:100%}
.flt-search svg{position:absolute;left:14px;top:50%;width:18px;height:18px;transform:translateY(-50%);color:var(--flt-muted);pointer-events:none}
.flt-search input{width:100%;font:15px var(--flt-sans);color:var(--flt-text);background:var(--flt-card);border:1px solid var(--flt-line);border-radius:999px;padding:12px 16px 12px 42px;min-height:46px}
.flt-search input:focus{outline:2px solid var(--flt-accent);outline-offset:1px}

/* grid + cards */
.flt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px}
.flt-grid--solo{grid-template-columns:minmax(0,420px);margin-top:28px}
.flt-card{all:unset;box-sizing:border-box;display:flex;flex-direction:column;background:var(--flt-card);border-radius:22px;overflow:hidden;cursor:pointer;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease;opacity:0;animation:flt-in .5s cubic-bezier(.2,.8,.2,1) forwards}
.flt-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(0,0,0,.35)}
.flt-card:focus-visible{outline:2px solid var(--flt-accent);outline-offset:3px}
.flt-card[hidden]{display:none}
@keyframes flt-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.flt-card__img{position:relative;display:block;aspect-ratio:1/1;background:var(--flt-card2);overflow:hidden}
.flt-card__img img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none;user-select:none;-webkit-user-drag:none;transition:transform 1s cubic-bezier(.2,.8,.2,1)}
.flt-card:hover .flt-card__img img{transform:scale(1.05)}
.flt-card__body{display:flex;flex-direction:column;gap:6px;padding:14px 18px 18px}
.flt-card__code{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--flt-accent)}
.flt-card__title{font-family:var(--flt-serif);font-size:23px;line-height:1.1}
.flt-card__go{color:var(--flt-muted);font-size:14px;font-weight:600}
.flt-card__from{color:var(--flt-muted);font-size:14px}
.flt-card--custom{background:linear-gradient(160deg,#3a2a26,#2A2420 60%);border:1px dashed rgba(227,167,155,.55)}
.flt-card--custom .flt-card__img{background:transparent;display:flex;align-items:center;justify-content:center}
.flt-custom-art{width:46%;color:var(--flt-accent);display:block}
.flt-custom-art svg{display:block;width:100%;height:auto}
.flt-card--custom .flt-card__go{color:var(--flt-accent)}
/* watermark on previews */
.flt-wm::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.2;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='140'><text x='0' y='80' transform='rotate(-24 110 70)' font-family='Georgia,serif' font-size='20' fill='white' fill-opacity='.9'>Florenity Living</text></svg>");background-size:220px 140px}
.flt-empty{color:var(--flt-muted);text-align:center;padding:30px 0}
.flt-link{all:unset;color:var(--flt-accent);cursor:pointer;text-decoration:underline}
.flt-more{display:flex;justify-content:center;margin:28px 0 0}

/* buttons */
.flt-btn{display:inline-block;background:var(--flt-accent);color:var(--flt-bg)!important;font:800 14px var(--flt-sans);padding:15px 26px;border-radius:999px;border:0;cursor:pointer;text-decoration:none;transition:background .2s}
.flt-btn:hover{background:var(--flt-text)}
.flt-btn[disabled]{opacity:.6;cursor:wait}
.flt-btn--ghost{background:transparent;color:var(--flt-text)!important;border:1px solid var(--flt-line)}

/* modal */
.flt-modal{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(14,11,9,.72);backdrop-filter:blur(4px);animation:flt-fade .25s ease}
.flt-modal[hidden]{display:none}
.flt-portal{position:static!important;transform:none!important}
.flt-modal{overscroll-behavior:contain}
.flt-dialog{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
@keyframes flt-fade{from{opacity:0}to{opacity:1}}
.flt-dialog{position:relative;background:var(--flt-bg);color:var(--flt-text);border-radius:28px;width:min(1080px,100%);max-height:calc(100vh - 32px);overflow:auto;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);animation:flt-up .35s cubic-bezier(.2,.8,.2,1)}
@keyframes flt-up{from{transform:translateY(24px);opacity:.4}to{transform:none;opacity:1}}
.flt-dialog__img{position:relative;background:var(--flt-card2);min-height:340px}
.flt-dialog__img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none;user-select:none}
.flt-dialog__img--custom{position:sticky;top:0;align-self:start;height:min(100%,calc(100vh - 32px));min-height:520px;display:flex;flex-direction:column;justify-content:center;gap:28px;padding:40px;background:linear-gradient(160deg,#3a2a26,#2A2420 70%)}
.flt-dialog__img--custom .flt-custom-art{width:110px}
.flt-steps{list-style:none;margin:0;padding:0;counter-reset:s;display:flex;flex-direction:column;gap:16px}
.flt-steps li{counter-increment:s;position:relative;padding-left:48px;color:var(--flt-muted);font-size:14px;line-height:1.45}
.flt-steps li::before{content:counter(s);position:absolute;left:0;top:0;width:32px;height:32px;border-radius:50%;border:1px solid var(--flt-accent);color:var(--flt-accent);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:14px}
.flt-steps strong{display:block;color:var(--flt-text);font-family:var(--flt-serif);font-weight:400;font-size:22px;line-height:1.1;margin-bottom:2px}
.flt-dialog__body{padding:34px;display:flex;flex-direction:column;gap:10px}
.flt-eyebrow{margin:0;font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--flt-accent)}
.flt-dialog h3{margin:0 0 8px;font-family:var(--flt-serif);font-weight:400;font-size:40px;line-height:1;color:var(--flt-text)}
.flt-x{position:absolute;right:14px;top:14px;z-index:3;width:44px;height:44px;border-radius:50%;border:0;background:rgba(30,26,23,.85);color:#fff;font-size:22px;cursor:pointer}

/* form */
.flt-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.flt-form .flt-full{grid-column:1/-1}
.flt-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:700;color:var(--flt-muted)}
.flt-form small{font-weight:400;font-size:12px;color:var(--flt-muted)}
.flt-form input,.flt-form select,.flt-form textarea{font:400 15px var(--flt-sans);color:var(--flt-text);background:var(--flt-card);border:1px solid var(--flt-line);border-radius:12px;padding:12px 14px;min-height:46px;width:100%}
.flt-form textarea{min-height:84px;resize:vertical}
.flt-form input:focus,.flt-form select:focus,.flt-form textarea:focus{outline:2px solid var(--flt-accent);outline-offset:1px}
.flt-form input[type=file]{padding:10px;cursor:pointer}
.flt-pick{border:0;margin:0;padding:0;min-width:0}
.flt-pick legend{font-size:13px;font-weight:700;color:var(--flt-muted);margin:0 0 6px;padding:0}
.flt-pills{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:8px}
.flt-form .flt-pill{position:relative;cursor:pointer}
.flt-pill input{position:absolute;opacity:0;pointer-events:none}
.flt-pill span{display:flex;flex-direction:column;align-items:center;gap:2px;padding:12px 8px;border:1px solid var(--flt-line);border-radius:14px;background:var(--flt-card);transition:border-color .2s,background .2s}
.flt-pill strong{font-family:var(--flt-serif);font-weight:400;font-size:24px;color:var(--flt-text);line-height:1}
.flt-pill em{font-style:normal;font-weight:800;color:var(--flt-accent);font-size:14px}
.flt-pill input:checked+span{border-color:var(--flt-accent);background:#3a2a26;box-shadow:inset 0 0 0 1px var(--flt-accent)}
.flt-pill input:focus-visible+span{outline:2px solid var(--flt-accent);outline-offset:2px}
.flt-total{display:flex;flex-direction:column;justify-content:flex-end;padding:0 0 4px}
.flt-total span{font-size:13px;font-weight:700;color:var(--flt-muted)}
.flt-total strong{font-family:var(--flt-serif);font-weight:400;font-size:34px;line-height:1;color:var(--flt-accent)}
.flt-total small{font-size:12px;color:var(--flt-muted)}
.flt-warn{background:rgba(227,167,155,.1);border:1px solid rgba(227,167,155,.35);border-radius:14px;padding:14px 16px;font-size:14px;line-height:1.5;color:var(--flt-text)}
.flt-warn strong{color:var(--flt-accent);display:block;margin-bottom:2px}
.flt-files{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.flt-files li{display:flex;align-items:center;gap:8px;background:var(--flt-card);border:1px solid var(--flt-line);border-radius:12px;padding:6px 10px 6px 6px;font-size:13px;color:var(--flt-muted);max-width:100%}
.flt-files img{width:40px;height:40px;object-fit:cover;border-radius:8px;flex:none}
.flt-files .is-low{border-color:#d9a400;color:#ffd66b}
.flt-form .flt-check{flex-direction:row;align-items:flex-start;gap:10px;font-weight:400;font-size:14px;color:var(--flt-text)}
.flt-form .flt-check input{width:20px;min-height:20px;margin-top:2px;flex:none;accent-color:var(--flt-accent)}
.flt-form .flt-check a{color:var(--flt-accent)}
.flt-hp{position:absolute!important;left:-9999px!important}
.flt-err{color:#ffb4a8;margin:0;font-size:14px}
.flt-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:4px}
.flt-fine{color:var(--flt-muted);font-size:13px}
.flt[data-mode=set] .flt-only-custom,.flt[data-mode=custom] .flt-only-set{display:none!important}
.flt-done h3{font-family:var(--flt-serif);font-weight:400;font-size:40px;margin:0 0 10px}
.flt-done p{color:var(--flt-muted)}
.flt-done strong{color:var(--flt-text)}
.flt-wa{display:inline-block;background:#25D366;color:#fff!important;font-weight:800;padding:14px 22px;border-radius:999px;text-decoration:none}
.flt-inline .flt-dialog{position:static;max-height:none;animation:none}

@media (max-width:900px){.flt-sizes{grid-template-columns:1fr;gap:8px}.flt-size{padding:12px 16px}.flt-glass{height:44px}.flt-chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;flex-basis:100%;margin:0 -16px;padding:0 16px}.flt-chips::-webkit-scrollbar{display:none}.flt-chip{white-space:nowrap}.flt-search{flex-basis:100%}}
@media (max-width:767px){.flt-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.flt-card{border-radius:18px}.flt-card__body{padding:10px 12px 14px}.flt-card__title{font-size:18px}.flt-card__go{display:none}
.flt-modal{padding:0;align-items:flex-end}.flt-dialog{display:block;border-radius:24px 24px 0 0;max-height:94vh}.flt-dialog__img{min-height:0;height:34vh}.flt-dialog__img--custom{position:relative;height:auto;min-height:0;padding:28px 20px;gap:18px}.flt-dialog__img--custom .flt-custom-art{display:none}.flt-dialog__body{padding:22px 18px 28px}.flt-dialog h3{font-size:32px}.flt-form{grid-template-columns:1fr 1fr}.flt-form>label:not(.flt-full){grid-column:1/-1}.flt-total{grid-column:auto}.flt-x{position:sticky;float:right;margin:10px 10px -54px 0}}
@media (prefers-reduced-motion:reduce){.flt-card,.flt-dialog,.flt-modal{animation:none;opacity:1}.flt-card:hover{transform:none}.flt-card:hover .flt-card__img img{transform:none}}

/* hold our look against theme / Elementor button styles */
.flt button.flt-card{background:#2A2420!important;border-radius:22px!important;padding:0!important;margin:0!important;color:#F4ECE6!important;border:0!important;text-align:left!important;font:inherit!important;line-height:inherit!important;width:auto!important;height:auto!important;text-transform:none!important;letter-spacing:normal!important}
.flt button.flt-card--custom{background:linear-gradient(160deg,#3a2a26,#2A2420 60%)!important;border:1px dashed rgba(227,167,155,.55)!important}
.flt button.flt-chip{font:500 14px Manrope,sans-serif!important;text-transform:none!important;letter-spacing:normal!important;background:transparent!important;color:#B9ADA3!important;border:1px solid rgba(244,236,230,.16)!important;padding:9px 15px!important;border-radius:999px!important;cursor:pointer;transition:background .2s,color .2s}
.flt button.flt-chip.is-on,.flt button.flt-chip:hover{background:#E3A79B!important;color:#1E1A17!important;border-color:#E3A79B!important}
.flt button.flt-x{padding:0!important;width:44px!important;height:44px!important;background:rgba(30,26,23,.85)!important;border-radius:50%!important;color:#fff!important;border:0!important;font-size:22px!important;line-height:44px!important}
.flt button.flt-btn{border-radius:999px!important;padding:15px 26px!important;background:#E3A79B!important;color:#1E1A17!important;border:0!important;text-transform:none!important;letter-spacing:normal!important}
.flt button.flt-btn--ghost{background:transparent!important;color:#F4ECE6!important;border:1px solid rgba(244,236,230,.2)!important}
.flt button.flt-btn--ghost:hover{background:#E3A79B!important;color:#1E1A17!important}

.flt button.flt-link{all:unset!important;color:#E3A79B!important;cursor:pointer!important;text-decoration:underline!important;font:inherit!important}

/* full flat design pictures (v1.0.4) */
.flt-card__img--full{background:#F4ECE6}
.flt-card__img--full img{object-fit:contain}
.flt .flt-card:hover .flt-card__img--full img{transform:scale(1.03)}
.flt-dialog__img--full{background:#F4ECE6}
.flt-dialog__img--full img{object-fit:contain!important}
.flt-view{position:absolute;left:50%;bottom:16px;transform:translateX(-50%);z-index:3;display:flex;gap:4px;background:rgba(30,26,23,.85);padding:4px;border-radius:999px;backdrop-filter:blur(6px)}
.flt button.flt-view button,.flt .flt-view button{all:unset;cursor:pointer;font:700 13px Manrope,system-ui,sans-serif!important;color:#F4ECE6!important;padding:8px 14px!important;border-radius:999px!important;white-space:nowrap;background:transparent!important;border:0!important}
.flt .flt-view button.is-on{background:#E3A79B!important;color:#1E1A17!important}
.flt .flt-view button:focus-visible{outline:2px solid #E3A79B;outline-offset:2px}
@media (max-width:767px){.flt-dialog__img--full{height:auto!important;padding-bottom:58px}.flt-dialog__img--full img{position:static!important;display:block;width:100%;height:auto!important;max-height:62vh}.flt-view{bottom:10px}}
@media (min-width:768px){.flt-modal .flt-dialog__img{position:sticky;top:0;align-self:start;height:min(860px,calc(100vh - 32px))}}
