/* The Last Minute — chat assistant, popup, banner, prices, lead fields */
.hp-field{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.form-status.ok{color:var(--wa-d);font-weight:600}

/* banner */
.tlm-banner{position:relative;z-index:51;display:flex;align-items:center;justify-content:center;gap:10px;background:var(--deep);color:#fbe9e4;font:600 14px/1.35 "Inter",sans-serif;text-align:center;padding:9px 40px}
.tlm-banner button{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:0;color:inherit;font-size:22px;line-height:1;cursor:pointer;padding:4px 8px;opacity:.8}

/* prices */
.prices-band{padding:clamp(20px,4vw,40px) clamp(16px,4vw,48px) clamp(56px,8vw,96px);max-width:820px;margin:0 auto}
.price-card{position:relative;background:#fff6f1;border-radius:6px;box-shadow:var(--shadow);padding:38px clamp(20px,4vw,44px) 30px;text-align:center;transform:rotate(-.6deg)}
.price-card .tape{top:-12px;left:50%;margin-left:-45px;transform:rotate(-3deg)}
.price-card h2{font-size:clamp(30px,4.4vw,46px);margin-bottom:14px}
.price-empty{margin:0 auto;max-width:520px;color:var(--ink-2)}
.price-empty b{color:var(--terra-d)}
.price-list{list-style:none;margin:6px auto 16px;padding:0;max-width:520px;text-align:left}
.price-list li{display:flex;align-items:baseline;gap:10px;padding:10px 0;border-bottom:1.5px dashed rgba(168,112,94,.35)}
.price-list li .pl-item{flex:1;font-weight:600}
.price-list li .pl-price{font-family:"Caveat",cursive;font-weight:600;font-size:1.35em;color:var(--terra-d);white-space:nowrap}
.price-list.small{margin:10px 0 0;max-width:none}
.price-list.small li{padding:7px 0;font-size:15px}

/* customizer lead fields */
.cz-lead-fields{margin:4px 0 14px}
.cz-lf-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cz-lf{display:flex;flex-direction:column;gap:5px;font-size:13.5px;font-weight:600;color:var(--ink-2)}
.cz-lf input{font:inherit;font-size:16px;font-weight:400;padding:11px 13px;border:1.5px solid rgba(61,43,40,.2);border-radius:12px;background:#fff;color:var(--ink);width:100%;min-width:0}
.cz-lf input:focus{outline:none;border-color:var(--terra);box-shadow:0 0 0 4px rgba(168,112,94,.18)}
.cz-lead-err{margin:8px 0 0;color:#a3262a;font-size:14px;font-weight:600;min-height:0}
.cz-lead-err:empty{display:none}
@media (max-width:520px){.cz-lf-row{grid-template-columns:1fr}}

/* floating dock */
.wa-float{display:none!important}
.tlm-dock{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:70;display:flex;flex-direction:column;align-items:flex-end;gap:10px}
.tlm-wa-mini{width:46px;height:46px;border-radius:50%;background:var(--wa);display:grid;place-items:center;box-shadow:0 10px 22px -8px rgba(0,0,0,.45);transition:transform .25s var(--ease)}
.tlm-wa-mini .wa-ico{width:24px;height:24px}
.tlm-chat-btn{position:relative;display:inline-flex;align-items:center;gap:9px;height:56px;padding:0 20px 0 16px;border:0;border-radius:999px;background:var(--terra-d);color:#fff;font:600 15.5px/1 "Inter",sans-serif;cursor:pointer;box-shadow:0 14px 28px -10px rgba(90,40,32,.6);transition:transform .25s var(--ease),background .2s}
.tlm-chat-btn svg{width:26px;height:26px}
.tlm-chat-btn:hover,.tlm-wa-mini:hover{transform:translateY(-2px)}
.tlm-chat-btn::after{content:"";position:absolute;width:11px;height:11px;border-radius:50%;background:#5bd28b;border:2px solid #fff;top:9px;left:32px}
.tlm-chat-open .tlm-dock{display:none}
@media (max-width:640px){.tlm-chat-btn{padding:0 16px 0 14px;font-size:15px;height:52px}}
.cz-page .tlm-dock{bottom:calc(16px + env(safe-area-inset-bottom))}

/* chat panel */
.tlm-chat{position:fixed;right:18px;bottom:18px;z-index:80;width:380px;max-width:calc(100vw - 24px);height:min(620px,calc(100vh - 36px));display:flex;flex-direction:column;background:var(--paper);border-radius:22px;box-shadow:0 30px 70px -20px rgba(60,30,25,.55),0 0 0 1px rgba(168,112,94,.18);overflow:hidden;font:400 15.5px/1.5 "Inter",sans-serif;color:var(--ink);animation:tlmUp .35s var(--ease)}
.tlm-chat[hidden]{display:none}
@keyframes tlmUp{from{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}
.tlm-chat-head{display:flex;align-items:center;gap:11px;padding:12px 12px 12px 14px;background:linear-gradient(135deg,#f3d6cf,#fbe9e4);border-bottom:1px solid rgba(168,112,94,.2)}
.tlm-chat-head img{width:38px;height:38px;border-radius:50%;object-fit:cover;background:#fff;box-shadow:0 0 0 2px #fff}
.tlm-chat-head div{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.25}
.tlm-chat-head b{font-family:"Fraunces",Georgia,serif;font-size:17px}
.tlm-chat-head small{font-size:12px;color:var(--muted)}
.tlm-x{background:rgba(255,255,255,.7);border:0;width:34px;height:34px;border-radius:50%;font-size:22px;line-height:1;color:var(--ink);cursor:pointer;flex:none}
.tlm-msgs{flex:1;overflow-y:auto;padding:14px 12px 6px;display:flex;flex-direction:column;gap:8px;overscroll-behavior:contain;background:var(--cream)}
.tlm-msg{max-width:86%;padding:9px 13px;border-radius:16px;word-wrap:break-word}
.tlm-msg p{margin:0 0 6px}
.tlm-msg.bot{align-self:flex-start;background:#fff;border-bottom-left-radius:5px;box-shadow:0 2px 6px -3px rgba(90,50,45,.25)}
.tlm-msg.me{align-self:flex-end;background:var(--terra-d);color:#fff;border-bottom-right-radius:5px}
.tlm-link{color:var(--terra-d);font-weight:600}
.tlm-gate{max-width:94%}
.tlm-gate form{display:flex;flex-direction:column;gap:9px;margin-top:8px}
.tlm-gate label{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:600;color:var(--ink-2)}
.tlm-gate input,.tlm-pop input,.tlm-pop select,.tlm-input input{font:inherit;font-size:16px;padding:10px 12px;border:1.5px solid rgba(61,43,40,.2);border-radius:12px;background:#fff;color:var(--ink);width:100%;min-width:0}
.tlm-gate input:focus,.tlm-pop input:focus,.tlm-pop select:focus,.tlm-input input:focus{outline:none;border-color:var(--terra);box-shadow:0 0 0 3px rgba(168,112,94,.18)}
.tlm-start,.tlm-pop button[type=submit]{border:0;border-radius:999px;background:var(--terra-d);color:#fff;font:600 15.5px/1 "Inter",sans-serif;padding:13px 16px;cursor:pointer}
.tlm-start:disabled,.tlm-pop button:disabled{opacity:.6}
.tlm-gate small,.tlm-pop small{font-size:12px;color:var(--muted)}
.tlm-err{margin:0;color:#a3262a;font-size:13.5px;font-weight:600}
.tlm-err:empty{display:none}
.tlm-chips{display:flex;gap:7px;overflow-x:auto;padding:8px 12px 4px;background:var(--cream);scrollbar-width:none}
.tlm-chips:empty{display:none}
.tlm-chips::-webkit-scrollbar{display:none}
.tlm-chip{flex:none;border:1.5px solid var(--terra);background:#fff;color:var(--terra-d);border-radius:999px;padding:7px 12px;font:600 13.5px/1 "Inter",sans-serif;cursor:pointer;white-space:nowrap}
.tlm-chip:hover{background:var(--blush-soft)}
.tlm-input{display:flex;gap:8px;padding:8px 10px;background:var(--paper);border-top:1px solid rgba(168,112,94,.18)}
.tlm-input[hidden]{display:none}
.tlm-input button{flex:none;width:44px;border:0;border-radius:50%;background:var(--terra-d);color:#fff;font-size:17px;cursor:pointer}
.tlm-cont-wa{display:flex;align-items:center;justify-content:center;gap:8px;margin:0 10px 10px;padding:12px;border-radius:999px;background:var(--wa);color:#fff;font:600 15px/1 "Inter",sans-serif;text-decoration:none}
.tlm-typing{display:inline-flex;gap:4px;padding:4px 0}
.tlm-typing i{width:7px;height:7px;border-radius:50%;background:var(--muted);opacity:.5;animation:tlmDot 1s infinite}
.tlm-typing i:nth-child(2){animation-delay:.15s}.tlm-typing i:nth-child(3){animation-delay:.3s}
@keyframes tlmDot{50%{opacity:1;transform:translateY(-3px)}}
@media (max-width:640px){
  .tlm-chat{right:0;left:0;bottom:0;width:100%;max-width:none;height:calc(100% - 40px);height:calc(100dvh - 40px);border-radius:22px 22px 0 0;padding-bottom:env(safe-area-inset-bottom)}
  .tlm-chat-open{overflow:hidden}
}

/* popup */
.tlm-pop{position:fixed;left:50%;bottom:20px;z-index:75;width:min(400px,calc(100vw - 24px));background:#fff6f1;border-radius:20px;padding:22px 20px 16px;box-shadow:0 30px 70px -18px rgba(60,30,25,.6),0 0 0 1px rgba(168,112,94,.2);transform:translate(-50%,30px);opacity:0;transition:transform .35s var(--ease),opacity .35s;font:400 15px/1.5 "Inter",sans-serif;color:var(--ink)}
.tlm-pop.in{transform:translate(-50%,0);opacity:1}
.tlm-pop .tlm-x{position:absolute;right:10px;top:10px;background:rgba(239,201,195,.5)}
.tlm-pop-k{margin:0;color:var(--terra);font-size:20px;line-height:1}
.tlm-pop h3{font-size:24px;margin:4px 36px 6px 0}
.tlm-pop-s{margin:0 0 12px;color:var(--ink-2);font-size:14.5px}
.tlm-pop form{display:flex;flex-direction:column;gap:8px;margin-bottom:6px}
.tlm-pop-wa{display:flex;align-items:center;justify-content:center;gap:8px;padding:13px;border-radius:999px;background:var(--wa);color:#fff;font-weight:600;text-decoration:none;margin-bottom:4px}
@media (max-width:640px){.tlm-pop{bottom:12px}}
@media (max-width:640px){.tlm-pop-open .tlm-dock{opacity:0;pointer-events:none}}

/* compact dock on phones: icon-only chat, tidy stack, content kept clear (2026-10-23) */
@media (max-width:640px){
  .tlm-dock{right:12px;bottom:calc(14px + env(safe-area-inset-bottom));gap:10px}
  .tlm-wa-mini{width:46px;height:46px}
  .tlm-chat-btn{width:52px;height:52px;padding:0;justify-content:center;gap:0}
  .tlm-chat-btn .tlm-chat-lbl{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .tlm-chat-btn svg{width:25px;height:25px}
  .tlm-chat-btn::after{top:6px;left:auto;right:6px;width:10px;height:10px}
  .footer{padding-bottom:calc(128px + env(safe-area-inset-bottom))}
  .show3d-chips{padding-right:0}
  .tlm-dock.tlm-dock-tuck{opacity:0;transform:translateY(12px);pointer-events:none}
  .tlm-dock{transition:opacity .25s,transform .25s}
}
