/* Theme "specs" (/2/, adjustable glasses — matches its landing page): navy header, red accents, Manrope,
   product picture column on the left, packages + form on the right, pill buttons, cool grey page */
body.fn-t-specs{--brand:#1d3557;--brand-dark:#14243d;--accent:#e63946;--accent-ink:#fff;--tint:#eef3fa;font-family:Inter,system-ui,sans-serif;background:#f5f7fb}
.fn-t-specs h1,.fn-t-specs h2,.fn-t-specs .fn-show-title{font-family:Manrope,Inter,sans-serif;font-weight:800;letter-spacing:-.02em;color:#14243d}
.fn-t-specs .fn-top{background:#14243d;color:#fff;font-weight:600}
.fn-t-specs .fn-header{background:#fff;border-bottom:0;box-shadow:0 1px 0 #e4e8ee}
.fn-t-specs .fn-steps{background:#fff;border-bottom:1px solid #e4e8ee}
.fn-t-specs .fn-steps li.on b{background:#e63946;border-color:#e63946}
.fn-t-specs .fn-intro{display:none}
.fn-t-specs .fn-main{padding-top:24px}
.fn-t-specs .fn-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"show packs" "show side" "show details" "show pay";gap:18px 36px}
.fn-t-specs .fn-showcase{display:block;grid-area:show;position:sticky;top:16px;align-self:start}
.fn-t-specs .fn-show-img{position:relative;aspect-ratio:1;border-radius:22px;background:#fff;overflow:hidden;box-shadow:0 18px 44px rgba(29,53,87,.12)}
.fn-t-specs .fn-show-img img{position:absolute;inset:0;box-sizing:border-box;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;padding:30px}
/* product photos under the main picture */
.fn-t-specs .fn-show-img img.fn-photo{padding:0;object-fit:contain;background:#fff}
.fn-t-specs .fn-g-thumbs{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-top:12px}
.fn-t-specs .fn-g-thumbs button{padding:0;border:2px solid transparent;border-radius:10px;overflow:hidden;cursor:pointer;background:#fff;aspect-ratio:1;box-shadow:0 2px 8px rgba(29,53,87,.08)}
.fn-t-specs .fn-g-thumbs button.on{border-color:#e63946}
.fn-t-specs .fn-g-thumbs img{display:block;width:100%;height:100%;object-fit:cover}
.fn-t-specs .fn-g-thumbs button:first-child img{object-fit:contain}
.fn-t-specs .fn-show-title{margin:22px 0 12px;font-size:clamp(1.5rem,2.6vw,2rem)}
.fn-t-specs .fn-show-points{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.fn-t-specs .fn-show-points li{display:flex;gap:9px;align-items:center;background:#fff;border-radius:12px;padding:12px 14px;font-size:.88rem;font-weight:500;color:#344054;border:1px solid #e4e8ee}
.fn-t-specs .fn-show-points li::before{content:"✓";flex:0 0 22px;height:22px;border-radius:50%;background:#e63946;color:#fff;display:grid;place-items:center;font-size:.72rem;font-weight:800}
.fn-t-specs .fn-card{border:0;border-radius:20px;box-shadow:0 6px 24px rgba(29,53,87,.07)}
.fn-t-specs .fn-num{border-radius:999px;background:#1d3557;color:#fff}
.fn-t-specs .fn-pack{border-radius:16px;border-color:#e4e8ee}
.fn-t-specs .fn-pack.on{border-color:#1d3557;background:#f5f8fd;box-shadow:none}
.fn-t-specs .fn-pack-img{background:#fff;border:1px solid #eef1f5}
.fn-t-specs .fn-pack-price b{color:#14243d;font-family:Manrope,sans-serif;font-weight:800}
.fn-t-specs .fn-badge{border-radius:999px;background:#e63946}
.fn-t-specs .fn-badge.alt{background:#1d3557}
.fn-t-specs .fn-side{position:static}
.fn-t-specs .fn-summary{border:2px solid #1d3557}
.fn-t-specs .fn-total dd{color:#e63946!important}
.fn-t-specs .fn-saved{background:#1d3557;border-radius:0 0 18px 18px}
.fn-t-specs .fn-guarantee,.fn-t-specs .fn-assure{display:none}
.fn-t-specs input[type=text],.fn-t-specs input[type=email],.fn-t-specs input[type=tel],.fn-t-specs input:not([type]),.fn-t-specs select,.fn-t-specs .cp-btn{border-radius:12px;border-color:#dfe4ec;background-color:#fff}
.fn-t-specs .fn-btn{border-radius:999px;background:#e63946;color:#fff;font-family:Manrope,sans-serif;box-shadow:0 12px 24px -10px rgba(230,57,70,.6)}
.fn-t-specs .fn-extra{border-radius:16px;background:#f5f8fd}
.fn-t-specs .fn-note-box{border-radius:14px}
.fn-t-specs .fn-footer{background:#14243d;color:#a9b6c8;border-top:0}
.fn-t-specs .fn-footer a{color:#ffd166}
/* form: underline-only fields, uppercase micro-labels, headings with a red underline bar */
.fn-t-specs :is(.fn-details,.fn-pay-card) h2{padding-bottom:12px;background:linear-gradient(#e63946,#e63946) left bottom/56px 3px no-repeat}
.fn-t-specs :is(.fn-details,.fn-pay-card) .fn-field>label{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:#5d6670;margin-bottom:2px}
.fn-t-specs :is(.fn-details,.fn-pay-card) :is(input[type=text],input[type=email],input[type=tel],input:not([type]),select,.cp-btn){border:0;border-bottom:2px solid #d5dbe5;border-radius:0;background-color:transparent;box-shadow:none}
.fn-t-specs :is(.fn-details,.fn-pay-card) :is(input,select):focus{border-bottom-color:#e63946;box-shadow:none}
.fn-t-specs .fn-pay-card{background:linear-gradient(180deg,#f5f8fd 0,#fff 140px)}
.fn-t-specs .fn-note-box{background:#f5f8fd;border:0;border-left:4px solid #1d3557;border-radius:0;color:#1d3557}
.fn-t-specs .fn-extra{border-style:dashed;border-color:#c5cfdd}
/* coupon popup */
.fn-t-specs .fn-pop-top{background:#1d3557}
.fn-t-specs .fn-pop-btn{background:#e63946;color:#fff;border-radius:999px}
/* add-on and thank-you pages */
.fn-t-specs .fn-ty-banner{background:linear-gradient(120deg,#1d3557,#2d4f80)}
.fn-t-specs .fn-ty-addr,.fn-t-specs .fn-ty-help{border-radius:20px}
@media (max-width:900px){
  .fn-t-specs .fn-grid{grid-template-columns:1fr;grid-template-areas:"show" "packs" "side" "details" "pay"}
  .fn-t-specs .fn-showcase{position:static}
  .fn-t-specs .fn-show-img,.fn-t-specs .fn-g-thumbs{max-width:420px;margin-left:auto;margin-right:auto}
  .fn-t-specs .fn-show-title{text-align:center}
}
@media (max-width:560px){.fn-t-specs .fn-show-img{max-width:280px}.fn-t-specs .fn-g-thumbs{gap:5px}.fn-t-specs .fn-show-points{gap:8px}.fn-t-specs .fn-show-points li{padding:9px 10px;font-size:.78rem}}
