/* LUM brand = Kreadon sans only (no serif). Bold, chunky, filled, playful. No decorative borders. */
  @font-face{font-family:"Kreadon";src:url(/catalog/view/theme/default/fonts/Kreadon-Light.woff2) format("woff2");font-weight:300;font-display:swap}
  @font-face{font-family:"Kreadon";src:url(/catalog/view/theme/default/fonts/Kreadon-Regular.woff2) format("woff2");font-weight:400;font-display:swap}
  @font-face{font-family:"Kreadon";src:url(/catalog/view/theme/default/fonts/Kreadon-Bold.woff2) format("woff2");font-weight:700;font-display:swap}
  @font-face{font-family:"Kreadon";src:url(/catalog/view/theme/default/fonts/Kreadon-ExtraBold.woff2) format("woff2");font-weight:800;font-display:swap}

  :root{
    --bg:#f1e8da; --surface:#ffffff; --ink:#211a15; --muted:#8a7d6d;
    --taupe:#a78b6f; --taupe-dk:#7b6249; --pop:#c8623c; --sand:#e8dcc9;
    --body:"Kreadon","Helvetica Neue",Arial,sans-serif;
    --r:18px; --rlg:26px;
    --sh:0 18px 40px -22px rgba(33,26,21,.55);
    color-scheme:light;
  }
  *{box-sizing:border-box}
  [hidden]{display:none!important}
  html,body{margin:0}
  body{background:var(--bg);color:var(--ink);font-family:var(--body);font-weight:400;line-height:1.5;-webkit-font-smoothing:antialiased}
  .wrap{max-width:640px;margin:0 auto;
    padding-left:max(18px,env(safe-area-inset-left,0px));
    padding-right:max(18px,env(safe-area-inset-right,0px));
    padding-block:22px 54px;display:flex;flex-direction:column;gap:26px}
  .topbar{display:flex;justify-content:center}
  .topbar img{height:54px;width:auto}

  h1{font-weight:800;font-size:2.5rem;line-height:1.02;letter-spacing:-.02em;margin:0;text-wrap:balance}
  h2{font-weight:800;font-size:2rem;line-height:1.05;letter-spacing:-.02em;margin:0;text-wrap:balance}
  .lede{color:var(--muted);font-size:1.12rem;margin:0;max-width:30ch}
  .kicker{font-weight:800;font-size:.8rem;letter-spacing:.14em;color:var(--pop);text-transform:uppercase;margin:0}

  .card{background:var(--surface);border-radius:var(--rlg);box-shadow:var(--sh);padding:26px 22px}

  .chips{display:flex;gap:8px;flex-wrap:wrap}
  .chip{background:var(--surface);border-radius:999px;padding:9px 15px;font-weight:700;font-size:.82rem;color:var(--taupe-dk);box-shadow:0 8px 18px -14px rgba(33,26,21,.7)}

  .btn{border:0;border-radius:999px;background:var(--ink);color:#fff;font-family:var(--body);font-weight:800;font-size:1.02rem;
    padding:16px 30px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:9px;text-decoration:none;
    transition:transform .12s ease,background .15s ease,box-shadow .15s ease;box-shadow:0 14px 26px -16px rgba(33,26,21,.8)}
  .btn:hover{background:var(--taupe-dk);transform:translateY(-2px)}
  .btn:active{transform:translateY(0)}
  .btn:focus-visible{outline:3px solid var(--taupe);outline-offset:3px}
  .btn[disabled]{opacity:.45;cursor:not-allowed;transform:none}
  .btn.sec{background:var(--sand);color:var(--ink);box-shadow:none}
  .btn.sec:hover{background:var(--taupe);color:#fff}
  .btn.pop{background:var(--pop)}
  .btn.block{width:100%}
  .btn svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.9}

  .prow{display:flex;justify-content:space-between;align-items:center;font-weight:800;margin-bottom:12px}
  .prow .n{font-size:1rem;color:var(--ink)}
  .prow .l{font-size:.78rem;letter-spacing:.12em;color:var(--muted);text-transform:uppercase}
  .track{height:11px;background:var(--sand);border-radius:999px;overflow:hidden;margin-bottom:24px}
  .track>span{display:block;height:100%;width:0;background:var(--pop);border-radius:999px;transition:width .45s cubic-bezier(.4,0,.2,1)}
  .q{font-weight:800;font-size:1.55rem;line-height:1.18;margin:0 0 20px;letter-spacing:-.01em;text-wrap:balance}

  .opts{display:flex;flex-direction:column;gap:12px}
  .opt{display:flex;gap:14px;align-items:center;width:100%;text-align:left;background:var(--surface);border:0;border-radius:var(--r);
    padding:17px 18px;cursor:pointer;font:inherit;font-weight:600;font-size:1.02rem;color:var(--ink);line-height:1.35;
    box-shadow:0 10px 22px -18px rgba(33,26,21,.8);transition:transform .12s ease,box-shadow .12s ease,background .15s,color .15s}
  .opt:hover{transform:translateY(-2px);box-shadow:0 16px 30px -16px rgba(33,26,21,.7)}
  .opt:focus-visible{outline:3px solid var(--taupe);outline-offset:2px}
  .opt .key{flex:0 0 auto;width:36px;height:36px;border-radius:50%;background:var(--sand);color:var(--taupe-dk);
    font-weight:800;display:grid;place-items:center;transition:background .15s,color .15s}
  .opt.sel{background:var(--ink);color:#fff;transform:translateY(-2px)}
  .opt.sel .key{background:var(--pop);color:#fff}

  .nav{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:26px}

  /* loading reveal */
  #loading{align-items:center;text-align:center;gap:14px;display:flex;flex-direction:column;padding-block:24px 40px}
  #loading svg{width:min(260px,66vw);height:auto;overflow:visible}
  .lcap{font-size:1.5rem;min-height:1.2em}
  .lpct{font-weight:800;font-size:.85rem;letter-spacing:.14em;color:var(--muted)}
  .flick{animation:flick .14s ease-in-out infinite alternate}
  @keyframes flick{to{transform:scale(.9,1.08) rotate(2.5deg)}}
  .fadein{animation:fadein .7s ease both}
  @keyframes fadein{from{opacity:0;transform:translateY(10px)}}

  /* result */
  .center{text-align:center}
  #result{display:flex;flex-direction:column;gap:20px;align-items:center}
  .shot{width:100%;max-width:300px;aspect-ratio:1;object-fit:cover;border-radius:var(--rlg);display:block;background:var(--surface);box-shadow:var(--sh)}
  .rtitle{font-weight:800;font-size:2rem;line-height:1.06;margin:0;letter-spacing:-.02em;text-wrap:balance}
  .char{color:var(--muted);font-size:1.08rem;margin:0;max-width:42ch}
  .offer{background:var(--pop);color:#fff;border-radius:var(--r);padding:16px 22px;display:flex;align-items:center;gap:14px;justify-content:center;width:100%}
  .offer .pct{font-weight:800;font-size:2.4rem;line-height:1}
  .offer .ot{font-weight:700;text-align:left;font-size:.98rem;max-width:16ch}
  .draw{margin:0;font-weight:700;font-size:.95rem;color:var(--taupe-dk);max-width:42ch}

  .panel{background:var(--surface);border-radius:var(--rlg);box-shadow:var(--sh);padding:24px 20px;width:100%;text-align:left}
  .fld{display:block;font-weight:800;font-size:.92rem;margin-bottom:14px}
  input[type=email]{width:100%;font:inherit;font-size:1.05rem;font-weight:600;padding:15px 16px;border:0;border-radius:var(--r);
    background:var(--bg);color:var(--ink);margin-bottom:12px}
  input[type=email]::placeholder{color:var(--muted);font-weight:400}
  input[type=email]:focus-visible{outline:3px solid var(--taupe);outline-offset:0}
  .consent{display:flex;gap:10px;align-items:center;margin-top:14px;font-size:.86rem;color:var(--muted);font-weight:500}
  .consent input{flex:0 0 auto;width:18px;height:18px;accent-color:var(--pop)}
  .msg{font-size:.88rem;margin-top:12px;min-height:1em;font-weight:700}
  .msg.err{color:var(--pop)}

  .coupon{background:var(--ink);color:#fff;border-radius:var(--r);padding:16px 18px;display:flex;gap:14px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:10px}
  .code{font-weight:800;font-size:1.6rem;letter-spacing:.08em}
  .meta{font-size:.9rem;color:var(--muted);font-weight:600;margin:10px 0 0}
  .ok{color:var(--pop);font-weight:800}
  /* save-image fallback (iPhone without file sharing) */
  .savebox{position:fixed;inset:0;z-index:50;background:rgba(33,26,21,.72);display:flex;align-items:center;justify-content:center;
    padding:max(18px,env(safe-area-inset-top,0px)) 18px max(18px,env(safe-area-inset-bottom,0px))}
  .savein{background:var(--surface);border-radius:var(--rlg);padding:20px;width:100%;max-width:380px;max-height:100%;overflow:auto;display:flex;flex-direction:column;gap:12px}
  .savein .fld{margin:0}
  .savein .meta{margin:0}
  .savein img{display:block;width:auto;max-width:100%;max-height:52vh;margin:0 auto;border-radius:14px;-webkit-touch-callout:default;-webkit-user-select:auto;user-select:auto}
  /* site header */
  .site-head{background:var(--surface);box-shadow:0 2px 16px -10px rgba(33,26,21,.5);position:sticky;top:0;z-index:20}
  .head-in{max-width:1540px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:14px;
    padding:12px max(18px,env(safe-area-inset-right,0px)) 12px max(18px,env(safe-area-inset-left,0px))}
  .head-in .logo img{height:46px;width:auto;display:block}
  .head-in .btn{padding:12px 24px;font-size:.9rem}

  /* site footer (mirrors lumdecor.gr) */
  .foot{background:var(--surface);margin-top:36px;padding:44px 0 26px}
  .foot-in{max-width:1540px;margin:0 auto;padding-left:max(24px,env(safe-area-inset-left,0px));padding-right:max(24px,env(safe-area-inset-right,0px));
    display:flex;flex-wrap:wrap;justify-content:space-between;gap:40px 48px}
  .foot-brand{flex:0 0 auto;min-width:180px}
  .foot-brand img{height:84px;width:auto}
  .foot-col{min-width:150px}
  .foot-col h4{font-weight:800;font-size:1.05rem;margin:0 0 14px}
  .foot-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:11px}
  .foot-col a{color:var(--muted);text-decoration:none;font-weight:500;font-size:.98rem}
  .foot-col a:hover{color:var(--ink)}
  .foot-col .ci{display:flex;gap:10px;align-items:flex-start;color:var(--muted);font-weight:500;font-size:.96rem}
  .foot-col .ci svg{width:18px;height:18px;flex:0 0 auto;margin-top:2px;stroke:var(--taupe-dk);fill:none;stroke-width:1.7}
  .foot-bot{max-width:1540px;margin:30px auto 0;padding:20px max(24px,env(safe-area-inset-left,0px)) 0;
    border-top:1px solid var(--sand);display:flex;flex-wrap:wrap;gap:10px 20px;justify-content:space-between;
    font-size:.88rem;color:var(--muted);font-weight:500}
  .foot-bot a{color:var(--muted);text-decoration:none}
  .foot-bot a:hover{color:var(--ink)}

  @media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
  @media (max-width:420px){h1{font-size:2.05rem}.q{font-size:1.35rem}}
