/* Theme "beam" (/7/, nail light-care device — matches its landing page): midnight header with a blue→infrared-orange glow,
   Space Grotesk headings, packages as four side-by-side tiles across the top, then form left / summary right */
body.fn-t-beam{--brand:#3b6cff;--brand-dark:#0b1026;--accent:#3b6cff;--accent-ink:#fff;--tint:#eef2ff;font-family:"DM Sans",Inter,system-ui,sans-serif;color:#141a33;background:#f3f5fb}
.fn-t-beam h1,.fn-t-beam h2{font-family:"Space Grotesk",Inter,sans-serif;font-weight:700;color:#0b1026;letter-spacing:-.02em}
.fn-t-beam .fn-top{background:linear-gradient(90deg,#3b6cff,#7a4dff 50%,#ff7a2f);color:#fff;font-weight:600}
.fn-t-beam .fn-header{background:#0b1026;border-bottom:0}
.fn-t-beam .fn-logo .logo-text,.fn-t-beam .fn-logo .logo-text b,.fn-t-beam .fn-logo .w1{color:#fff}
.fn-t-beam .fn-logo .w2{color:#ff9a5a}
.fn-t-beam .fn-logo small{color:#8f9bc4}
.fn-t-beam .fn-secure{color:#7fa2ff}
.fn-t-beam .fn-secure small{color:#8f9bc4}
.fn-t-beam .fn-steps{background:#0b1026;border:0}
.fn-t-beam .fn-steps li{color:#6b77a3}
.fn-t-beam .fn-steps li.on{color:#fff}
.fn-t-beam .fn-steps li:not(:last-child)::after{background:#283058}
.fn-t-beam .fn-steps b{background:#141a3a;border-color:#283058;color:#8f9bc4}
.fn-t-beam .fn-steps li.on b{background:#3b6cff;border-color:#3b6cff;color:#fff}
/* intro on the dark band */
.fn-t-beam .fn-intro{background:radial-gradient(circle at 20% 120%,rgba(59,108,255,.45),transparent 45%),radial-gradient(circle at 80% 120%,rgba(255,122,47,.35),transparent 45%),#0b1026;padding:18px 0 70px;margin-bottom:-52px}
.fn-t-beam .fn-intro h1{color:#fff}
.fn-t-beam .fn-intro p{color:#aab4d8}
.fn-t-beam .fn-grid{grid-template-columns:minmax(0,1fr) 380px;grid-template-areas:"show show" "packs packs" "details side" "pay side";gap:18px 26px}
/* product card across the top: main picture, name, and more photos */
.fn-t-beam .fn-showcase{display:grid;grid-area:show;grid-template-columns:170px minmax(0,1fr);grid-template-rows:auto auto;column-gap:22px;align-items:center;background:#fff;border:1px solid #e3e7f3;border-radius:18px;padding:14px 20px 14px 14px;box-shadow:0 10px 30px rgba(11,16,38,.06)}
.fn-t-beam .fn-show-img{grid-row:span 2;position:relative;width:170px;height:170px;border-radius:14px;overflow:hidden;background:#f3f5fb}
.fn-t-beam .fn-show-img img{position:absolute;inset:0;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover}
.fn-t-beam .fn-show-title{grid-column:2;grid-row:1;margin:0 0 10px;font-size:1.4rem;align-self:end}
.fn-t-beam .fn-show-points{display:none}
.fn-t-beam .fn-g-thumbs{grid-column:2;grid-row:2;display:flex;flex-wrap:wrap;gap:8px;align-self:start}
.fn-t-beam .fn-g-thumbs button{width:64px;height:64px;padding:0;border:2px solid transparent;border-radius:12px;overflow:hidden;cursor:pointer;background:#f3f5fb}
.fn-t-beam .fn-g-thumbs button.on{border-color:transparent;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(135deg,#3b6cff,#ff7a2f) border-box}
.fn-t-beam .fn-g-thumbs img{display:block;width:100%;height:100%;object-fit:cover}
.fn-t-beam .fn-card{background:#fff;border:1px solid #e3e7f3;border-radius:18px;box-shadow:0 10px 30px rgba(11,16,38,.06)}
.fn-t-beam .fn-num{border-radius:8px;background:linear-gradient(135deg,#3b6cff,#ff7a2f);color:#fff}
/* packages: four tiles side by side */
.fn-t-beam .fn-packs{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.fn-t-beam .fn-pack{flex-direction:column;align-items:center;text-align:center;gap:8px;padding:22px 14px 16px;border-radius:16px;border-color:#e3e7f3}
.fn-t-beam .fn-pack.on{border-color:transparent;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(135deg,#3b6cff,#ff7a2f) border-box;box-shadow:0 10px 24px rgba(59,108,255,.15)}
.fn-t-beam .fn-radio{position:absolute;top:12px;left:12px;width:22px;height:22px;flex:0 0 22px}
.fn-t-beam .fn-pack-img{width:84px;height:84px;flex:0 0 auto;background:#f3f5fb;border-radius:14px}
.fn-t-beam .fn-pack-body{align-items:center}
.fn-t-beam .fn-pack-price{text-align:center;align-items:center}
.fn-t-beam .fn-pack-price b{font-family:"Space Grotesk",sans-serif;font-weight:700;color:#0b1026;font-size:1.45rem}
.fn-t-beam .fn-pack-price em{color:#e0621c}
.fn-t-beam .fn-per{color:#3b6cff}
.fn-t-beam .fn-badge{left:50%;transform:translateX(-50%);white-space:nowrap;border-radius:999px;background:linear-gradient(90deg,#3b6cff,#7a4dff)}
.fn-t-beam .fn-badge.alt{background:linear-gradient(90deg,#ff7a2f,#ff9a5a)}
.fn-t-beam .fn-summary{background:#0b1026;color:#aab4d8;border:0}
.fn-t-beam .fn-summary h2,.fn-t-beam .fn-summary dd,.fn-t-beam .fn-summary .fn-sum-name b,.fn-t-beam .fn-summary .fn-total dt{color:#fff}
.fn-t-beam .fn-summary dl div,.fn-t-beam .fn-summary small{color:#8f9bc4}
.fn-t-beam .fn-summary .fn-total{border-top-color:#283058}
.fn-t-beam .fn-summary .fn-total dd{color:#ff9a5a!important}
.fn-t-beam .fn-sum-img{background:#fff}
.fn-t-beam .fn-saved{background:linear-gradient(90deg,#3b6cff,#ff7a2f);border-radius:0 0 18px 18px}.fn-t-beam .fn-saved span{color:#fff}.fn-t-beam .fn-saved b{background:#0b1026;color:#fff}
.fn-t-beam .fn-guarantee{background:#fff;border-color:#e3e7f3}
.fn-t-beam .fn-seal{background:linear-gradient(135deg,#3b6cff,#ff7a2f)}
.fn-t-beam input[type=text],.fn-t-beam input[type=email],.fn-t-beam input[type=tel],.fn-t-beam input:not([type]),.fn-t-beam select,.fn-t-beam .cp-btn{border-radius:12px;border-color:#dfe4f2;background-color:#fbfcff}
.fn-t-beam input:focus,.fn-t-beam select:focus{border-color:#3b6cff;outline:3px solid rgba(59,108,255,.15);outline-offset:0}
.fn-t-beam .fn-btn{border-radius:14px;background:linear-gradient(90deg,#3b6cff,#7a4dff 55%,#ff7a2f);color:#fff;font-family:"Space Grotesk",sans-serif;box-shadow:0 14px 28px -12px rgba(59,108,255,.7)}
.fn-t-beam .fn-extra{border-radius:14px;background:#f7f8fd}
.fn-t-beam .fn-note-box{border-radius:14px;background:#f7f8fd}
.fn-t-beam .fn-footer{background:#0b1026;color:#8f9bc4;border-top:0}
.fn-t-beam .fn-footer a{color:#ff9a5a}
/* form: dark mode — midnight cards, dark fields with light text, gradient focus glow */
.fn-t-beam :is(.fn-details,.fn-pay-card){background:#0b1026;border-color:#283058;color:#c9d1ef}
.fn-t-beam :is(.fn-details,.fn-pay-card) h2{color:#fff}
.fn-t-beam :is(.fn-details,.fn-pay-card) .fn-field>label{color:#8f9bc4}
.fn-t-beam :is(.fn-details,.fn-pay-card) :is(input[type=text],input[type=email],input[type=tel],input:not([type]),select,.cp-btn){background-color:#141a3a;border-color:#283058;color:#fff}
.fn-t-beam :is(.fn-details,.fn-pay-card) input::placeholder{color:#5d6894}
.fn-t-beam :is(.fn-details,.fn-pay-card) :is(input,select):focus{border-color:#3b6cff;box-shadow:0 0 0 3px rgba(59,108,255,.3),0 0 24px rgba(255,122,47,.15)}
.fn-t-beam :is(.fn-details,.fn-pay-card) .iti__selected-dial-code{color:#c9d1ef}
.fn-t-beam :is(.fn-details,.fn-pay-card) .fn-extra{background:#141a3a;border-color:#283058}
.fn-t-beam :is(.fn-details,.fn-pay-card) .fn-extra strong{color:#fff}
.fn-t-beam :is(.fn-details,.fn-pay-card) .fn-extra span span{color:#8f9bc4}
.fn-t-beam :is(.fn-details,.fn-pay-card) .fn-check{color:#c9d1ef!important}
.fn-t-beam :is(.fn-details,.fn-pay-card) a{color:#ff9a5a}
.fn-t-beam .fn-pay-card .fn-note-box{background:#141a3a;border:1px solid #283058;color:#c9d1ef}
.fn-t-beam .fn-pay-card .fn-small{color:#8f9bc4}
.fn-t-beam .fn-pay-card .fn-small b{color:#fff}
.fn-t-beam .fn-pay-card .cvv-ico{color:#6b77a3}
/* coupon popup */
.fn-t-beam .fn-pop-box{border-radius:20px}
.fn-t-beam .fn-pop-top{background:linear-gradient(90deg,#3b6cff,#7a4dff 55%,#ff7a2f)}
.fn-t-beam .fn-pop-btn{background:#0b1026;color:#fff;border-radius:12px}
/* add-on and thank-you pages */
.fn-t-beam .fn-ty-banner{background:linear-gradient(120deg,#0b1026,#283a8a)}
.fn-t-beam .fn-ty-addr,.fn-t-beam .fn-ty-help,.fn-t-beam .fn-up-card{border-radius:18px}
@media (max-width:900px){
  .fn-t-beam .fn-grid{grid-template-columns:1fr;grid-template-areas:"show" "packs" "side" "details" "pay"}
  .fn-t-beam .fn-packs{grid-template-columns:1fr 1fr}
}
@media (max-width:560px){
  .fn-t-beam .fn-intro{padding:14px 0 60px}
  .fn-t-beam .fn-showcase{grid-template-columns:96px minmax(0,1fr);column-gap:12px;padding:10px}
  .fn-t-beam .fn-show-img{width:96px;height:96px}
  .fn-t-beam .fn-show-title{font-size:1.05rem;margin-bottom:6px}
  .fn-t-beam .fn-g-thumbs{gap:5px}
  .fn-t-beam .fn-g-thumbs button{width:38px;height:38px;border-radius:8px}
  .fn-t-beam .fn-packs{gap:10px}
  .fn-t-beam .fn-pack{padding:22px 10px 14px}
  .fn-t-beam .fn-pack-img{width:64px;height:64px}
  .fn-t-beam .fn-pack-price b{font-size:1.2rem}
}
