/* ==========================================================================
   wendysmagicshop.net - "Corner Store"
   Sits on top of the platform's bootstrap.css. Everything scoped with wms-
   or written as a deliberate override of a Bootstrap class.
   ========================================================================== */

:root{
  --wms-paper:#FFFFFF;
  --wms-tint:#FFF3EC;
  --wms-tint-2:#FFE9DF;
  --wms-ink:#23140E;
  --wms-dim:#7A5C4F;
  --wms-accent:#FF5326;
  --wms-accent-dark:#E23F14;
  --wms-tag:#FFD23F;
  --wms-line:#EFDCD2;
  --wms-deep:#12232E;
  --wms-ok:#1F7A4C;
  --wms-bad:#C0341B;
  --wms-display:"Bricolage Grotesque", "Instrument Sans", -apple-system, BlinkMacSystemFont, sans-serif;
  --wms-body:"Instrument Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --wms-mono:"DM Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
  --wms-shadow:0 18px 40px -28px rgba(35,20,14,.5);
}

/* ---------- base ---------- */
body{
  font-family:var(--wms-body);
  font-size:16px;
  line-height:1.55;
  color:var(--wms-ink);
  background:var(--wms-paper);
  -webkit-font-smoothing:antialiased;
}
a{color:var(--wms-accent)}
a:hover,a:focus{color:var(--wms-accent-dark)}
h1,h2,h3,h4{font-family:var(--wms-display); letter-spacing:-.025em; color:var(--wms-ink)}
h1{font-weight:800}
h2,h3,h4{font-weight:700}
.wms-num{font-variant-numeric:tabular-nums}
.wms-mono{font-family:var(--wms-mono); font-variant-numeric:tabular-nums}
:focus-visible{outline:2px solid var(--wms-accent); outline-offset:2px}
.container{max-width:1160px}

/* ---------- bootstrap overrides ---------- */
.btn{
  font-family:var(--wms-body); font-weight:600; font-size:15px;
  border-radius:9px; padding:10px 18px; border:0; transition:.15s;
}
.btn-primary{background:var(--wms-accent); color:#fff}
.btn-primary:hover,.btn-primary:focus,.btn-primary:active{background:var(--wms-accent-dark); color:#fff}
.btn-default{background:var(--wms-paper); color:var(--wms-ink); box-shadow:inset 0 0 0 1.5px var(--wms-line)}
.btn-default:hover,.btn-default:focus{background:var(--wms-tint); color:var(--wms-ink); box-shadow:inset 0 0 0 1.5px var(--wms-ink)}
.btn-lg{padding:14px 24px; font-size:17px; border-radius:11px}
.btn-block{display:block; width:100%}

.well{
  background:var(--wms-paper); border:1.5px solid var(--wms-line);
  border-radius:14px; box-shadow:none; padding:26px;
}
.form-control{
  height:auto; font-size:15.5px; padding:11px 13px;
  border:1.5px solid var(--wms-line); border-radius:9px; box-shadow:none;
  color:var(--wms-ink); background:var(--wms-paper); max-width:min(560px,100%);
}
.form-control:focus{border-color:var(--wms-ink); box-shadow:none}
label.control-label{
  font-size:11.5px; letter-spacing:.1em; text-transform:uppercase;
  color:var(--wms-dim); font-weight:600; margin-bottom:7px;
}
select.form-control{width:560px; max-width:100%}
.alert{border:0; border-radius:11px; padding:14px 44px 14px 16px; position:relative; font-size:14.5px}
.alert .close{position:absolute; top:11px; right:13px; opacity:.5}
.alert-danger{background:#FDEAE5; color:var(--wms-bad)}
.alert-success{background:#E7F5ED; color:var(--wms-ok)}
.table>thead>tr>th{
  border-bottom:1.5px solid var(--wms-line); font-size:11.5px; letter-spacing:.1em;
  text-transform:uppercase; color:var(--wms-dim); font-weight:600; padding:12px 14px;
}
.table>tbody>tr>td{border-top:1px solid var(--wms-line); padding:14px; vertical-align:middle}
.label,.badge{font-weight:600; border-radius:6px; font-family:var(--wms-body)}

/* ---------- navbar ---------- */
.navbar-default{
  background:var(--wms-paper); border:0;
  border-bottom:1px solid var(--wms-line); margin-bottom:0; min-height:68px;
}
.navbar-default .navbar-brand{
  height:auto; padding:15px 15px 15px 0;
  display:flex; align-items:center; gap:9px;
  font-family:var(--wms-display); font-weight:800; font-size:19px;
  letter-spacing:-.03em; color:var(--wms-ink); white-space:nowrap;
}
.navbar-default .navbar-brand:hover{color:var(--wms-ink)}
.wms-mark{
  background:var(--wms-accent); color:#fff; width:27px; height:27px; flex:0 0 27px;
  border-radius:7px; display:inline-grid; place-items:center;
  font-family:var(--wms-display); font-weight:800; font-style:normal;
  font-size:15px; line-height:1; transform:rotate(-6deg);
}

/* ---------- logo ----------
   The brush wordmark is the shop's own mark, lifted from the favicon it has
   carried since 2019 and kept as ink-on-transparent so it sits on any surface.
   The text stays in the markup and is pushed out of view, so the brand is still
   read by search engines and screen readers. */
.wms-logo{display:inline-flex; flex-direction:column; align-items:center; gap:3px; line-height:1}
.wms-script{
  display:block; width:78px; height:38px;
  background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMMAAABgCAYAAACg98bqAAAPPklEQVR42u1df3AVRx3/EEIIREz5UaCU0pgAoVDKxEQE2kFEoiKDlalpKVJk0goqRawUwdphamUoHUREBimIWBEpJjIdZBAUpBSRBgqmKVLKb0hTwJSSggKFAM8/7t7k2Ozv3cu797KfmZtJ7t7u7e3ud/f7ewEHh2hiGID1AGoB7ATQy3WJQ3NEGYAYcd0A0Mp1jUNzwjIKIcSv2a57HJoLunEIIQagMsyXp7n+d4gQnhA8v9sRg0NzQU/B82xHDA5NgacAbAWwBkC7BLWhWvD8shsmhzAxHMAVgjevSFBb8gQywwE3XA5hIZ8z8folqE1DAVQBqANwiWhTmRsyh7Awk0MMSyLQvilEm0qdzOAQFrI4z0ZFoH0dif9fccTgEBZ6IEFqTEmMCPz9mi/bODiEgq0CgTXR/kDBtgwK+2VuZ2je+ITgeW4C2/Zg4O/NSJyGy6GZ4JhgZ5iSwLYdD7QjS6P8dwDsAbANnvrYwYGLcwJieBGJV/mO0Ci/J0Lf4pAkuCEghpUJalc2PFvDaI2yJznfw0W6mw/NGmkRnR8XAAzQVAiwtGCHnQDtwEKqBcpMBPAFzvOVbsgdWGgvYJFiAFanEMvXyu0MDibu0HVJ8i2lgrn8SwD1qUgMxQBeBXAewEg3pxGGK0YcZ5LkWyYJnqcci/QggNPE1lfj5rQ2hkiwSaVJ8i3nBd8xN5UGbj3nQwe4ea2FL0kQwwiEuzON8gkuz7CubRLfkhLYJPjIBW5ea+EhiQmUj6bLgDHEoL5eEt/yTCoM2grBR1a7ea2FCRITqKXld3bisDTbDOveIPE9bZJ90HIlPjLbzW1lTBP0aRju0os477tqWPfZQF1VSH5VMRMHBAM3xs1tZcwW9Ol+8OMg5sFL+1gBz+Ali9oQ+PpBlB2NJWeOTIXMDbyBW+zmtjLmC/p0DaVMSwBrGb8fZmEsbbBIqwN2FNZ7OiS684caNKK7YOB2urmtjCWCPqXp7rfDXH1ZbJkYWhN15EnEeB/ReVGJv91c8CvZCz1L53EL/D1ve611c9s6MdxDKTOG8/tVku8tYJSvs8A17KA8r2G8b53sC6aC7uvxjIVJvDCEhLQxN7cbrb4bA2N4zh/TIJZq9udVmLl7s9SgeywskrQgngGcb5wuqnyLxQlXriiYwcBI1NLRAPI5mhRyZ+eprI9oxAssMEwuvNrQin5IU4s1kFVolsVAj/6Mei5oDnQ7ATH0aOaEUCKhgg6uwCs1FRIsYphpuDPM0fjm4ML9MMROh0rs2V5FHpKHtSGwNDwflCFwBjQyffsIAEVobMWf7q/ErL4criG7jYN8+hdZgR0Cdw4VHzWeL9YiWoErFlfzWMgqNPJ6GM7HKH69LLHQneb0ZQvO++oZZQol2ztdgwBFO6FswrPlsurW1pwflis2tMA00EJDRz0LyRlg0x5m0WqyyXm7SrJRRzQXOdlMGq9a4jy6acoarAV/WvBHRYo6ZwjSdPA6PEtz8Ady6lyaREQwB8B/iW1eh83bSOmHAo2JGLyek2RNVMuKePf2aLoDUWjvf17WcStH8YWrQiKGdooWU0TwBMt6zjeMNlwYNkBs+IwZZNETpYyfDLGjXtiq8dYAHhD85pKIzZ5vsaE7QiIGgB3rugHJ7yUa8wdTBpVQd7luIXj3BcOAoNaaq7ItYhgjuYA/K2r7X6HusAVNxzoTYtjPqDPR6QcL4Fk1T/p891ioxQ6o6Otp6sl9ku3cznn3MoijDVll10u8e6dl6zNPtcybt4XEb3eBk84veK2A/bSFJscklTPqPGg4kRfAy7tTCe9QjAKF8is5dpkeCoQQ82UJERZSyk1QENqHg55Nr1Ai8D6mqU3iKWiOw26S4vj1lCS7OEJWSzAJZnkybe8ML8JekM9AAeHKTLAZjLIzOLvkEUH/5GjwvC1gllqy1kAxsl8yr5GMZdymUByDZ/wlURF4fgxEdgye89zbGo27JHj+scGHn4adkyDnAdgNfqbp30EcHcU67umov5D0Jfrybp/N+ZpgG2chB0Bb4t77AH6gGMlFuq/8CvpZu581PNb2Q9g7x4E2f7sGtGFbAHw28PybtAG16fu9M0SnOpbbQb1CHWsU2JZSzWQFkwjNUQUjjSKt7FTO+yZz2joN+g6U+QYBQbmGh52vM5wTUyFnP+EaJ9MkTnA5r9G4D0IUVD+w4Lr8KHHvIuf3vQX1tQX7PLJ4rtKboB+2sYNRNoPzvsGwkwfrGhpblkW4zpEHRKwkBIYwEywGcAJqZ0y/S0boxTuvL+wmkaoNiUWCpIDJW1W/S9x70mexMhmD3UqR3YjjPtzqMkHDuxp99BnOs38q9MWdaGzDEaFeg0XNAvB9Qb03LSyShQpaqTMA7mWtJD0UB0uE9w3kCREuaq6KOQBeIu79KHCq5VUG3yziZzMhzgy9lSPEqvZRN/DPJYBkMgAdmetjyVUXhPu07o6jgjoAXXw5kIc3/YXgBmsCdedohXRwlPPsf4YffUVzdSH50nd8IVq0E4rsFxmC549p9MVlTpnbGPd/q9CHP9dMN/ko2JZ1MFTWjxP3XgtpZ4jvXIMAPALgPQp7/S00WO6ZqylLADqk2aiDApWeCa5rrC5jAHwajdWEJPpQ7v0DYv05C3+Cl8JElT24osk3y2AWYxe9XYLFZMkrjzPYx+1ofEbCuhCJIY4yn9u5HZ7PXRcAnSFpMzvLkMDHajamDUeq32L4oV018vyclczRWqeh5ThgcFrmDI20jiZGq2zNEMjuiunr80B3ES9h2BuWRunklo5gRzXZZGUA4D8hfct1TjxwF+LeAsZWT7Igzxu05y2I3aGzFeUicFSeMngZemdC/0ui7m+gwXh3FMAdxPNT8LwHMhTZwiYnhnRFA5cMDoeU8/8mJ1Cdhp9IyA8A8Gvi/7/BiyfWxQzIeeGqLiYfUe7tlnjXaPANfYM5oZVBFuppwXtY7NbXA1wDNNS6TUIMrUJaxd9EOHaCm5xzwGgr72DKDlJNCRoiNSJjDc5Fu8zRIMkIrbwFg7bbfFGCbf1z4P/XAbyBxipbUpGymmDZnvR31T8qjtkP0eBykRWCut0aMbQFPy2ILnYrTFoVZCiY9MdIEGk+RbvymOEOdhjyTnNQVK3S1NYiPf7blFDRSobCZBy8MMr9PusTxx/QoIYeq+Cm8zS88ADeN19HRNA9JLeJgYqehDDMrrARcm4hKwRObysseOjKZvjbpZj2pjNnrEog5xrzRIBtknVJ2aeRguUQ6Fb35QaZNUJHnuWULhAEkswxrLe/Qt4dUax0pWZMAClX6aZXP6S4CImCpiYQYbzVxPMyCstlGhMNeC7RpfB8hMYLtGhlYHv4JhysyVUTko/5QoRz/NJiyVT2pYxgphqLYajrDFLf1GqmkNeZ1DmCMpUhzLcthg6GocoM6SH4AAFsb9dsCxklZITOQo6RbDEhdF6TsAlA4eC8egVigsCBLr5g/cKgzz4E3aB4Ep5L+SmGdq0ghDkX2QND0jnaJFM26VOM+3cZ1nsn434NRRYC4xjUdIocomr1HYcGdaHMhGb1PwSqyfYUYTXP3+F+DLlAqz6g+OL4qPZ3iBJfc3TRl5sOIbz0OJElhkzDAeUJ5io7BhSOQqLhhOQOlE5xMlONkuvsa1cQQt9lwEuWW+Xz/W9Q1JTH4QXU9ITnh8PC7xXCQcuhnh8LmqxlJJEGdSOWLHorGmVs7wyZEnX1CYb9KeB12HFJ/ghs6/VpeGrgdOK98wlbyLcpFuutAO5XIISmRLsm8E0yskAjBN1vfkjE0FnSWi6KxSjSZAXKGPy3zkKyi/PsDop9YRjoqfqz4bmc9PTHtFhQdyLRNso7w7WQiKG3pv+/CHdJyjg8w9dXoKdGnUXo89+Cugt2ED9VEIDzJQKqjiH6Z1VkRJkY6kMihhzoBajo1HuGkWQLHKERGikzX8Ctrt1jDXeGCgA/E/zmhL9LXIJD6MRwWUHTYWMFh0a6yiC6UO69A7rbNsvnRdUbdQoaR8ENhZ3jYWcA+B7YToa5UXFks4AsC7HbSIQ7xhZD9ZlJTk7VxLfzIZ/cK34Nknznc5Sy/QQGwFGa3zcAnnqzX4ouvp0sZPUIFR1COEGzUEAMy2DXL6lE8ffCI4z83WuX4FCU4UmY8zWR6BFlYkgD2zvTRNAVrWz3aNaby1FFguHu/Ar4nrXl8Lxb+/m7xUR44Yon0Nj9+/OEloY0IP0Gapm0mxuykqGRNyznv5wrWJHrDPhrVe/aFpwDKlQumrvGSDT4/Yx0c12IopA8ma3aGWg+8h0N6hWt/LdBz0eF5itzCmJnwftgFqSUyXB02+QL9L38vx2glZ4yPUrEcJLy7JMG9Q7QnNg6ZbZLlDsCzyB1USNCayD4qlJ3ILs8shUTsSWEGA5qpg2EopMeJHLtQOA+QeIvkA/CyYacc9tyeJby+W7+oimc9NKi4qgHAP/mUHKtJXcJEp/zZQsYOv5th7o8MxeeCrPY3zEy4WUP3AG5Qzcc7ArQ6VEiBpbrwr2Qj9oCJxfoPn9VyDXYGQYzMtLpsim8tI8OaFKP1YwosUlVnCg4WMiVXw5gM6UD8gzrdat4cqFjMgjQZw0EYVDcFEj8ncHOfNUCkTkkv8zQMmoNPQj5A7ahGPfcAnRT/E5DN4xWbn4lFVjn8S1CxOIZaAdn9IV5dNt7/gefQ+Nglvshp7H6MkMOqXfzK6nQBRGOi06TUFHmQ+3QbxKbiRPtSTwiUS/tKKmX3NxCqmiTMqPWUJbD3hSFOtZSyj+EWzO5kc+rJE7GsX1iqENiUM0Yy1VRbGwNpaGbDI5TjaGx1TGmeLL9eNhPa++QGCyWzHkVCSw1SDOZK3lQ+VZFgqNlrCt28yppMYcTHxIpDGIQw1CJsjMhl0OzmPGOIspvJ1B+d87NJ6SCinW8f3WKckPrKROwTKLcfkq5PE62PppbdxuF9JAODqFjhWJmaIAewVQjyDLBSnY8ifPcBcU7IAoBGPM4ZRZQfj9bwzgnusa74XFoarAOPOwKedVnew0Zg3ftdcPikAhMZExImk1gCfRVnycViKGDGxaHROEqY1JWBHYI1ur+AMyOsSWv4W44HBKJyZp8fZXltDIu24RDJHBagxiKNN7TDV4QUbCe9QwZxcEBUTriKqZwrpoKWsL8ZB8Hh9AwXZIQrrqucmgOmCdBDP1dNzk0F0xgEEEtUjdRrkMzwv8BNlI+Js+f660AAAAASUVORK5CYII=") left center / contain no-repeat;
  text-indent:-9999em; overflow:hidden; white-space:nowrap;
}
.wms-logo-sub{
  display:block; font-family:var(--wms-body); font-size:8.5px; font-weight:600;
  letter-spacing:.17em; text-transform:uppercase; color:var(--wms-dim);
  text-indent:.17em; white-space:nowrap;
}
/* the founding date rides along in the footer, where the lockup has room for
   the full line the shop has used on its mark since 2019 */
.wms-logo-est{display:none}
.wms-foot .wms-logo-est{display:inline}
.wms-foot .wms-script{width:96px; height:47px}
.wms-foot .wms-logo-sub{font-size:9px}
.navbar-default .navbar-nav>li>a{
  color:var(--wms-dim); font-size:14.5px; font-weight:500; padding:24px 14px;
}
.navbar-default .navbar-nav>li>a:hover,
.navbar-default .navbar-nav>.active>a,
.navbar-default .navbar-nav>.active>a:hover,
.navbar-default .navbar-nav>.active>a:focus{color:var(--wms-ink); background:transparent}
.navbar-default .navbar-nav>.active>a{box-shadow:inset 0 -2px 0 var(--wms-accent)}
.navbar-default .navbar-toggle{border-color:var(--wms-line); margin-top:17px}
.navbar-default .navbar-toggle .icon-bar{background:var(--wms-ink)}
.navbar-default .navbar-toggle:hover,.navbar-default .navbar-toggle:focus{background:var(--wms-tint)}
.wms-nav-signin{margin:15px 0 15px 4px}
.wms-nav-signin>a{
  box-shadow:inset 0 0 0 1.5px var(--wms-line); border-radius:9px;
  padding:9px 16px !important; color:var(--wms-ink) !important; font-weight:600;
}
.wms-nav-signin>a:hover{box-shadow:inset 0 0 0 1.5px var(--wms-ink); background:var(--wms-tint)}
.navbar-default .navbar-nav>li.wms-nav-signin>a{box-shadow:inset 0 0 0 1.5px var(--wms-line)}
.wms-nav-cta{margin:15px 0 15px 10px}
.wms-nav-cta>a{
  background:var(--wms-accent); color:#fff !important; border-radius:9px;
  padding:10px 17px !important; font-weight:600;
}
.wms-nav-cta>a:hover{background:var(--wms-accent-dark)}
.navbar-default .navbar-nav>li.wms-nav-cta>a{box-shadow:none}
.wms-balance{background:var(--wms-tint); color:var(--wms-ink); font-variant-numeric:tabular-nums; font-size:13.5px; font-weight:600; padding:6px 10px}

/* ---------- page shell ---------- */
.wms-main{padding:38px 0 60px}
.navbar+.wms-main{padding-top:34px}
.wms-page-head{margin:0 0 24px}
.wms-page-head h1{font-size:clamp(26px,3.2vw,34px); margin:0 0 6px}
.wms-page-head p{color:var(--wms-dim); margin:0; font-size:15.5px}

/* ---------- hero ---------- */
.wms-hero{padding:56px 0 52px}
.wms-hero-grid{display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); gap:56px; align-items:start}
.wms-hero h1{font-size:clamp(36px,5vw,58px); line-height:.99; margin:0 0 20px; text-wrap:balance}
.wms-hero h1 em{font-style:normal; color:var(--wms-accent)}
.wms-hero .wms-sub{font-size:17.5px; color:var(--wms-dim); margin:0 0 26px; max-width:40ch}
.wms-chips{display:flex; flex-wrap:wrap; gap:8px; list-style:none; margin:0; padding:0}
.wms-chips li{font-size:13px; font-weight:500; background:var(--wms-tint); border:1px solid var(--wms-line); border-radius:100px; padding:6px 13px}
.wms-chips li b{color:var(--wms-accent); font-weight:700}

/* ---------- order desk ---------- */
.wms-desk{border:2px solid var(--wms-ink); border-radius:14px; background:var(--wms-paper); box-shadow:7px 7px 0 var(--wms-tag); overflow:hidden}
.wms-desk-head{display:flex; align-items:center; justify-content:space-between; gap:12px; padding:13px 18px; border-bottom:2px solid var(--wms-ink); background:var(--wms-tint)}
.wms-desk-head strong{font-family:var(--wms-display); font-size:15px; font-weight:700}
.wms-desk-head span{font-size:11.5px; letter-spacing:.09em; text-transform:uppercase; color:var(--wms-dim); font-weight:600}
.wms-desk-body{padding:18px}
.wms-desk label{display:block; font-size:11.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--wms-dim); font-weight:600; margin:0 0 7px}
.wms-desk select{width:100%; max-width:100%; font-family:var(--wms-body); font-size:15px; padding:11px 12px; border:1.5px solid var(--wms-line); border-radius:9px; background:var(--wms-paper); color:var(--wms-ink); margin-bottom:16px; height:auto}
.wms-presets{display:flex; gap:6px; flex-wrap:wrap; margin-bottom:12px}
.wms-presets button{font-family:var(--wms-body); font-size:13px; font-weight:600; padding:6px 11px; border-radius:7px; border:1.5px solid var(--wms-line); background:var(--wms-paper); color:var(--wms-dim); cursor:pointer}
.wms-presets button[aria-pressed="true"]{border-color:var(--wms-ink); color:var(--wms-ink); background:var(--wms-tag)}
.wms-presets button[disabled]{opacity:.35; cursor:not-allowed}
.wms-desk input[type=range]{width:100%; accent-color:var(--wms-accent); margin:2px 0 14px}
.wms-total{display:flex; align-items:flex-end; justify-content:space-between; gap:14px; border-top:1.5px dashed var(--wms-line); padding-top:14px; margin-bottom:16px}
.wms-total .wms-qty{font-size:13.5px; color:var(--wms-dim)}
.wms-total .wms-qty b{color:var(--wms-ink); font-weight:600}
.wms-total .wms-money{font-family:var(--wms-display); font-weight:800; font-size:38px; letter-spacing:-.03em; line-height:1; font-variant-numeric:tabular-nums; white-space:nowrap}
.wms-fine{font-size:12.5px; color:var(--wms-dim); text-align:center; margin:11px 0 0}
.wms-desk.is-loading .wms-desk-body{opacity:.55}

/* ---------- belt ---------- */
.wms-belt{background:var(--wms-deep); color:#fff; padding:16px 0}
.wms-belt ul{display:flex; flex-wrap:wrap; justify-content:center; gap:10px 34px; list-style:none; margin:0; padding:0; font-size:13.5px}
.wms-belt li{display:flex; align-items:center; gap:8px; opacity:.92}
.wms-belt li:before{content:""; width:6px; height:6px; border-radius:50%; background:var(--wms-tag); flex:0 0 6px}

/* ---------- sections ---------- */
.wms-section{padding:62px 0}
.wms-section+.wms-section{padding-top:0}
.wms-shead{display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:26px; flex-wrap:wrap}
.wms-shead h2{font-size:clamp(24px,3vw,33px); margin:0; line-height:1.05}
.wms-shead p{margin:6px 0 0; color:var(--wms-dim); font-size:15px}
.wms-shead a{font-weight:600; font-size:14.5px; text-decoration:none; white-space:nowrap}

/* ---------- storefront ---------- */
.wms-plat{font-family:var(--wms-display); font-size:13px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--wms-dim); margin:30px 0 12px; display:flex; align-items:center; gap:12px}
.wms-plat:after{content:""; flex:1; height:1px; background:var(--wms-line)}
.wms-grid{display:grid; grid-template-columns:repeat(auto-fill,minmax(232px,1fr)); gap:12px}
.wms-card{
  border:1.5px solid var(--wms-line); border-radius:12px; padding:15px 16px;
  background:var(--wms-paper); position:relative; transition:.16s;
  display:block; color:inherit; text-decoration:none;
}
.wms-card:hover,.wms-card:focus{border-color:var(--wms-ink); transform:translateY(-2px); color:inherit; text-decoration:none}
.wms-card h3{font-size:15.5px; font-weight:600; margin:0 0 3px; letter-spacing:-.01em; font-family:var(--wms-body)}
.wms-card .wms-meta{font-size:12.5px; color:var(--wms-dim); margin:0 0 14px}
.wms-card .wms-price{display:flex; align-items:baseline; gap:5px; margin:0}
.wms-card .wms-price b{font-family:var(--wms-display); font-size:24px; font-weight:800; letter-spacing:-.03em; font-variant-numeric:tabular-nums}
.wms-card .wms-price span{font-size:12.5px; color:var(--wms-dim)}
.wms-card.is-hot{border-color:var(--wms-ink); background:var(--wms-tint)}
.wms-flag{position:absolute; top:-9px; right:12px; background:var(--wms-accent); color:#fff; font-size:10.5px; font-weight:700; letter-spacing:.07em; text-transform:uppercase; padding:3px 9px; border-radius:5px}

/* ---------- steps ---------- */
.wms-steps{display:grid; grid-template-columns:repeat(3,1fr); gap:14px; counter-reset:wms-step; list-style:none; margin:0; padding:0}
.wms-steps li{background:var(--wms-tint); border-radius:12px; padding:22px; counter-increment:wms-step}
.wms-steps li:before{content:counter(wms-step); font-family:var(--wms-display); font-weight:800; font-size:15px; width:30px; height:30px; border-radius:8px; background:var(--wms-ink); color:var(--wms-tag); display:grid; place-items:center; margin-bottom:13px}
.wms-steps h3{font-size:17px; margin:0 0 6px; font-weight:600; font-family:var(--wms-body)}
.wms-steps p{margin:0; font-size:14.5px; color:var(--wms-dim); line-height:1.5}

/* ---------- safety ---------- */
.wms-safety{background:var(--wms-tint); border-radius:16px; padding:38px; display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:40px; align-items:start}
.wms-safety h2{margin:0 0 12px}
.wms-safety>div>p{color:var(--wms-dim); font-size:16px; margin:0}
.wms-qa{display:grid; gap:18px}
.wms-qa h3{font-size:15.5px; margin:0 0 5px; font-weight:600; font-family:var(--wms-body)}
.wms-qa p{margin:0; font-size:14.5px; color:var(--wms-dim); line-height:1.55}

/* ---------- sign-in card on the storefront ---------- */
.wms-signin{background:var(--wms-deep); color:#fff; padding:52px 0}
.wms-signin-grid{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,460px); gap:48px; align-items:center}
.wms-signin h2{color:#fff; margin:0 0 10px; font-size:clamp(24px,3vw,31px)}
.wms-signin p{color:rgba(255,255,255,.72); margin:0; font-size:15.5px; max-width:44ch}
.wms-signin .well{background:var(--wms-paper); border:0; border-radius:14px; padding:24px; box-shadow:var(--wms-shadow)}
.wms-signin .form-control{max-width:100%}
.wms-signin .form-group__password{position:relative}
.wms-signin .forgot-password{position:static; display:inline-block; margin-top:7px; font-size:13px}
.wms-signin .pull-right-middle{display:block; margin-top:12px; font-size:14px; color:var(--wms-dim)}

/* ---------- footer ---------- */
.wms-foot{border-top:1px solid var(--wms-line); padding:40px 0 46px; font-size:14px; color:var(--wms-dim)}
.wms-foot-grid{display:grid; grid-template-columns:minmax(0,1.3fr) repeat(3,minmax(0,1fr)); gap:30px}
.wms-foot .navbar-brand{padding:0; float:none; display:inline-flex; align-items:center; gap:9px;
  line-height:1.2; height:auto; color:var(--wms-ink); margin-bottom:12px}
.wms-foot h4{font-size:11.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--wms-dim); margin:0 0 12px; font-family:var(--wms-body); font-weight:600}
.wms-foot ul{list-style:none; margin:0; padding:0; display:grid; gap:8px}
.wms-foot a{color:var(--wms-ink); text-decoration:none}
.wms-foot a:hover{color:var(--wms-accent)}
.wms-foot-bottom{border-top:1px solid var(--wms-line); margin-top:32px; padding-top:20px; display:flex; flex-wrap:wrap; gap:12px 24px; font-size:13px}
.wms-foot-bottom .sp{flex:1}

/* ---------- services page ---------- */
.wms-filter{display:flex; flex-wrap:wrap; gap:7px; margin:0 0 22px; padding:0; list-style:none}
.wms-filter>li>a,.nav-pills>li>a{
  border-radius:100px; padding:8px 16px; font-size:14px; font-weight:500;
  color:var(--wms-dim); background:var(--wms-paper); border:1.5px solid var(--wms-line);
}
.nav-pills>li>a:hover{background:var(--wms-tint); color:var(--wms-ink)}
.nav-pills>li.active>a,.nav-pills>li.active>a:hover,.nav-pills>li.active>a:focus{
  background:var(--wms-ink); color:#fff; border-color:var(--wms-ink);
}
.wms-rate{font-variant-numeric:tabular-nums; font-weight:600; white-space:nowrap}
.wms-svc-id{font-variant-numeric:tabular-nums; font-size:13.5px; color:var(--wms-dim)}
.wms-table-wrap{overflow-x:auto; border:1.5px solid var(--wms-line); border-radius:14px}
.wms-table-wrap>.table{margin:0}
.wms-table-wrap>.table>thead>tr>th{background:var(--wms-tint); border-bottom:1.5px solid var(--wms-line)}
.wms-cat-row td{background:var(--wms-tint-2); font-family:var(--wms-display); font-weight:700; font-size:13px; letter-spacing:.08em; text-transform:uppercase}

/* ---------- responsive ---------- */
@media(max-width:991px){
  .wms-hero-grid{grid-template-columns:1fr; gap:34px}
  .wms-signin-grid{grid-template-columns:1fr; gap:28px}
  .wms-safety{grid-template-columns:1fr; padding:26px}
  .wms-steps{grid-template-columns:1fr}
  .wms-foot-grid{grid-template-columns:1fr 1fr; gap:26px}
  .navbar-default .navbar-nav>li>a{padding:11px 15px}
  .wms-nav-cta{margin:8px 15px 12px}
  .wms-nav-signin{margin:8px 15px 4px}
  .wms-nav-signin>a{display:inline-block}
  .wms-nav-cta>a{display:inline-block}
  .navbar-default .navbar-nav>.active>a{box-shadow:none; background:var(--wms-tint)}
}
@media(max-width:600px){
  .wms-hero{padding:34px 0 30px}
  .wms-section{padding:44px 0}
  .wms-belt ul{gap:8px 18px; font-size:12.5px}
  .wms-foot-grid{grid-template-columns:1fr}
  .navbar-default .navbar-brand{font-size:16px}
  .wms-total .wms-money{font-size:32px}
  select.form-control{width:100%}
}
@media (prefers-reduced-motion: reduce){
  *{transition-duration:.001ms !important; animation-duration:.001ms !important}
}

/* ---------- cabinet: new order ---------- */
.wms-order-layout{display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:28px; align-items:start}
.wms-order-main{border:1.5px solid var(--wms-line); border-radius:14px; padding:26px; background:var(--wms-paper); max-width:640px}
.wms-order-main .form-group{margin-bottom:20px}
.wms-order-main .form-control{width:100%; max-width:100%}
.wms-order-main select.form-control{width:100%}
.wms-charge{font-variant-numeric:tabular-nums; font-size:19px; font-weight:600; background:var(--wms-tint); border-color:var(--wms-tint-2)}
label.control-label.wms-terms{font-weight:400; font-size:14.5px; letter-spacing:0; text-transform:none; color:var(--wms-ink); display:flex; gap:9px; align-items:flex-start}
.wms-terms input{margin:3px 0 0}
.wms-receipt{margin:10px 0 0; display:grid; gap:6px; font-size:14px}
.wms-receipt div{display:grid; grid-template-columns:104px minmax(0,1fr); gap:12px}
.wms-receipt dt{font-weight:600; color:inherit; opacity:.75}
.wms-receipt dd{margin:0; word-break:break-word}

.wms-rail{position:sticky; top:20px; display:grid; gap:16px}
.wms-rail-balance{border:2px solid var(--wms-ink); border-radius:14px; padding:18px; box-shadow:5px 5px 0 var(--wms-tag)}
.wms-rail-balance span{display:block; font-size:11.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--wms-dim); font-weight:600}
.wms-rail-balance strong{display:block; font-family:var(--wms-display); font-size:31px; font-weight:800; letter-spacing:-.03em; font-variant-numeric:tabular-nums; margin:2px 0 14px}
.wms-rail-links{list-style:none; margin:0; padding:0; display:grid; gap:2px}
.wms-rail-links a{display:block; padding:10px 13px; border-radius:9px; color:var(--wms-ink); text-decoration:none; font-size:14.5px; font-weight:500}
.wms-rail-links a:hover{background:var(--wms-tint)}
.wms-rail-note{font-size:13px; color:var(--wms-dim); line-height:1.5; margin:0; padding:0 13px}
@media(max-width:991px){
  .wms-order-layout{grid-template-columns:1fr}
  .wms-rail{position:static; order:-1}
  .wms-rail-balance{display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:12px}
  .wms-rail-balance strong{margin:0}
  .wms-rail-balance .btn{width:auto}
  .wms-rail-links{grid-auto-flow:column; grid-auto-columns:max-content; overflow-x:auto}
  .wms-rail-note{display:none}
}
@media(max-width:600px){
  .wms-order-main{padding:18px}
  .wms-rail-balance{grid-template-columns:1fr; text-align:left}
}

/* the platform draws a search icon at left:12px inside this input */
#new-order-search #template-input{padding-left:36px}
/* cabinet pages keep the footer to a single line - the shop links belong to the storefront */
.wms-cab .wms-foot{padding:26px 0 30px}
.wms-cab .wms-foot-grid{display:none}
.wms-cab .wms-foot-bottom{border-top:0; margin-top:0; padding-top:0}

/* ---------- cabinet: tables, orders, payments ---------- */
.wms-orders-bar{display:flex; align-items:flex-start; justify-content:space-between; gap:18px; flex-wrap:wrap; margin-bottom:20px}
.wms-orders-bar .wms-filter{margin:0}
.wms-orders-bar #history-search{min-width:240px}
.wms-subhead{font-size:20px; margin:38px 0 16px}
.wms-hint{margin:8px 0 0; font-size:13px; color:var(--wms-dim)}
.wms-col-link{min-width:180px; max-width:250px}
.wms-col-service{min-width:200px}
.wms-link{word-break:break-all; font-size:13.5px; color:var(--wms-dim)}
.wms-muted{color:var(--wms-dim); font-size:13px}
.wms-row-actions{display:flex; gap:6px; flex-wrap:wrap}
.wms-row-actions .btn{padding:5px 11px; font-size:12.5px; border-radius:7px}
.wms-status{display:inline-block; font-size:12.5px; font-weight:600; padding:4px 10px; border-radius:100px; background:var(--wms-tint); color:var(--wms-dim); white-space:nowrap}
.wms-status--completed{background:#E7F5ED; color:var(--wms-ok)}
.wms-status--in-progress,.wms-status--processing,.wms-status--pending{background:#FFF4D6; color:#8A6100}
.wms-status--partial{background:var(--wms-tint-2); color:#9A4A1F}
.wms-status--canceled{background:#FDEAE5; color:var(--wms-bad)}
.wms-empty{text-align:center; padding:52px 20px !important}
.wms-empty strong{display:block; font-family:var(--wms-display); font-size:19px; margin-bottom:5px}
.wms-empty span{display:block; color:var(--wms-dim); font-size:14.5px; margin-bottom:18px}
.wms-payment-note{margin-top:24px; padding-top:22px; border-top:1px solid var(--wms-line); font-size:14.5px; color:var(--wms-dim)}
.wms-payment-note p{margin:0 0 10px}
.pagination>li>a{color:var(--wms-ink); border-color:var(--wms-line)}
.pagination>li>a:hover{background:var(--wms-tint); border-color:var(--wms-line)}
.pagination>.active>a,.pagination>.active>a:hover,.pagination>.active>a:focus{background:var(--wms-ink); border-color:var(--wms-ink); color:#fff}
@media(max-width:600px){
  .wms-orders-bar #history-search{min-width:100%}
}

.wms-table-wrap .table>tbody>tr>td,.wms-table-wrap .table>thead>tr>th{padding:12px 11px; font-size:14.5px}
.wms-table-wrap .table>thead>tr>th{font-size:11px}

/* ---------- signup ---------- */
.wms-signup-grid{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,480px); gap:52px; align-items:start; padding-top:14px}
.wms-signup-pitch h1{font-size:clamp(28px,3.6vw,40px); margin:0 0 16px; line-height:1.04}
.wms-lede{font-size:17px; color:var(--wms-dim); margin:0 0 24px; max-width:44ch}
.wms-lede strong{color:var(--wms-accent)}
.wms-ticks{list-style:none; margin:0; padding:0; display:grid; gap:11px; font-size:15px}
.wms-ticks li{display:flex; gap:10px; align-items:flex-start}
.wms-ticks li:before{content:"\2713"; color:var(--wms-accent); font-weight:700; flex:0 0 auto}
.wms-form-foot{margin:16px 0 0; font-size:14px; color:var(--wms-dim); text-align:center}
.wms-mass{font-family:var(--wms-mono); font-size:14px; line-height:1.6; max-width:100%}

/* ---------- prose (terms, FAQ, CMS pages) ---------- */
.wms-prose{max-width:70ch; font-size:16px; line-height:1.68; color:var(--wms-ink)}
.wms-prose h2{font-size:23px; margin:34px 0 10px}
.wms-prose h3{font-size:18px; margin:26px 0 8px}
.wms-prose p,.wms-prose li{color:var(--wms-dim)}
.wms-prose ul,.wms-prose ol{padding-left:22px}
.wms-prose li{margin-bottom:7px}
.wms-prose table{width:100%; margin:18px 0}
.wms-prose td,.wms-prose th{border:1px solid var(--wms-line); padding:9px 11px}

/* ---------- ticket thread ---------- */
.wms-thread{max-width:760px}
.wms-messages{display:grid; gap:18px; margin-bottom:34px}
.wms-msg{max-width:82%}
.wms-msg--mine{justify-self:end; text-align:right}
.wms-msg--shop{justify-self:start}
.wms-msg-body{border-radius:14px; padding:14px 17px; font-size:15px; line-height:1.55; text-align:left}
.wms-msg--mine .wms-msg-body{background:var(--wms-ink); color:#fff; border-bottom-right-radius:4px}
.wms-msg--shop .wms-msg-body{background:var(--wms-tint); border:1px solid var(--wms-line); border-bottom-left-radius:4px}
.wms-msg--mine .wms-msg-body a{color:var(--wms-tag)}
.wms-msg-files{list-style:none; margin:12px 0 0; padding:0; display:grid; gap:5px; font-size:13.5px}
.wms-msg-meta{margin:6px 3px 0; font-size:12.5px; color:var(--wms-dim)}
.wms-msg-meta strong{font-weight:600; color:var(--wms-ink)}
.wms-msg-meta span{margin-left:7px}
.wms-reply{border-top:1px solid var(--wms-line); padding-top:24px}
.wms-back{margin:26px 0 0; font-size:14.5px}
@media(max-width:760px){
  .wms-signup-grid{grid-template-columns:1fr; gap:28px}
  .wms-msg{max-width:94%}
}

/* ---------- account ---------- */
.wms-account{max-width:720px}
.wms-account .nav-pills{display:flex; gap:7px; margin:0 0 22px; padding:0; list-style:none}
.wms-account .well{margin-bottom:16px}
.wms-account .well>form:last-child .btn,.wms-account .well>.btn{margin-top:4px}
.wms-account .form-control{width:100%; max-width:100%}
.wms-account #api_key{font-family:var(--wms-mono); font-size:14px; letter-spacing:.02em}
.wms-account .modal-content{border-radius:14px; border:0}
.wms-account img{max-width:100%}
.wms-card-h{font-size:16px; margin:0 0 16px; letter-spacing:-.01em}

@media(max-width:600px){
  .wms-script{width:70px; height:34px}
  .wms-logo-sub{font-size:8px; letter-spacing:.15em}
}
