/* Personalized product fields */
.ntmf-pf{margin:0 0 18px;font-size:15px;line-height:1.5;color:#3b3f48}
.ntmf-pf input[type=text]{width:100%;box-sizing:border-box;padding:11px 14px;border:1.5px solid #e3d6c8;border-radius:12px;background:#fffdf9;font-size:16px;color:#24324a;margin:0 0 4px}
.ntmf-pf input[type=text]:focus{outline:none;border-color:#c9705a;box-shadow:0 0 0 3px rgba(201,112,90,.15)}
.ntmf-pf input.is-err{border-color:#c0392b}
.ntmf-pf-l{display:block;font-weight:600;color:#24324a;margin:14px 0 6px;font-size:14px}
.ntmf-pf-l span{color:#c9705a;font-weight:500}
.ntmf-pf-help{font-size:13px;color:#7a6f66;margin:4px 0 0}
.ntmf-pf-help b{color:#24324a}
.ntmf-ks{display:flex;flex-direction:column;gap:6px}
.ntmf-ks-preview{margin:0 auto 8px;width:100%;max-width:260px;order:-1}
.ntmf-ks-preview img{width:100%;height:auto;border-radius:10px;box-shadow:0 8px 24px rgba(80,50,30,.18);display:block;transition:opacity .2s}
.ntmf-pf.is-loading .ntmf-ks-preview img{opacity:.55}
.ntmf-ks-preview figcaption{font-size:12px;color:#9a8d80;margin-top:6px;text-align:center}
.ntmf-pf-styles{display:flex;gap:10px;flex-wrap:wrap}
.ntmf-pf-style{display:flex;flex-direction:column;align-items:center;gap:4px;cursor:pointer;font-size:12px;color:#5a5048}
.ntmf-pf-style input{position:absolute;opacity:0;pointer-events:none}
.ntmf-pf-style img{width:64px;height:90px;object-fit:cover;border-radius:8px;border:2px solid transparent;box-shadow:0 2px 6px rgba(0,0,0,.08)}
.ntmf-pf-style input:checked + img{border-color:#c9705a}
.ntmf-pf-style input:focus-visible + img{outline:2px solid #24324a;outline-offset:2px}
.ntmf-pf-seg{display:flex;gap:8px;flex-wrap:wrap}
.ntmf-pf-seg label{cursor:pointer}
.ntmf-pf-seg input{position:absolute;opacity:0;pointer-events:none}
.ntmf-pf-seg span{display:inline-block;padding:8px 16px;border-radius:999px;border:1.5px solid #e3d6c8;background:#fffdf9;font-size:14px}
.ntmf-pf-seg input:checked + span{background:#24324a;border-color:#24324a;color:#fff}
.ntmf-pf-chips{display:flex;flex-wrap:wrap;gap:7px;border-radius:12px;transition:box-shadow .2s}
.ntmf-pf-chips.is-err{box-shadow:0 0 0 3px rgba(192,57,43,.35)}
.ntmf-chip{cursor:pointer}
.ntmf-chip input{position:absolute;opacity:0;pointer-events:none}
.ntmf-chip span{display:inline-block;padding:6px 12px;border-radius:999px;border:1.5px solid #e3d6c8;background:#fffdf9;font-size:13.5px}
.ntmf-chip.is-on span{background:#fbe7df;border-color:#c9705a;color:#7a3524}
.ntmf-chip input:disabled + span{opacity:.45;cursor:not-allowed}
.ntmf-chip input:focus-visible + span{outline:2px solid #24324a;outline-offset:2px}
.ntmf-pf-more{margin:12px 0 0}
.ntmf-pf-more summary{cursor:pointer;font-weight:600;color:#24324a;font-size:14px;margin-bottom:8px}
@media (max-width:640px){.ntmf-ks-preview{max-width:220px}}
.ntmf-pf label.ntmf-chip,.ntmf-pf .ntmf-pf-seg label,.ntmf-pf label.ntmf-pf-style{border:0 !important;padding:0 !important;margin:0 !important;background:none !important;box-shadow:none !important;width:auto !important;display:inline-flex}
.ntmf-pf label.ntmf-pf-style{flex-direction:column}
/* Keepsake Studio */
.ntmf-ks-badges{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin:0 0 10px}
.ntmf-ks-badges span{font-size:12.5px;background:#fbf3ea;border:1px solid #f0dfcc;color:#5a4a3e;border-radius:999px;padding:5px 11px}
.ntmf-ks-preview{max-width:300px}
.ntmf-ks-view{display:flex;justify-content:center;gap:6px;margin:0 0 8px}
.ntmf-pf .ntmf-ks-view button{all:unset;cursor:pointer;font-size:13px !important;line-height:1.3 !important;padding:6px 14px !important;border-radius:999px !important;border:1.5px solid #e3d6c8 !important;background:#fffdf9 !important;color:#3b3f48 !important;box-shadow:none !important;text-transform:none !important}
.ntmf-pf .ntmf-ks-view button.is-on{background:#24324a !important;border-color:#24324a !important;color:#fff !important}
.ntmf-pf .ntmf-ks-view button:focus-visible{outline:2px solid #c9705a;outline-offset:2px}
.ntmf-step{display:flex;align-items:center;gap:9px;margin:22px 0 4px;font-weight:700;color:#24324a;font-size:16px;border-top:1px solid #f0e4d8;padding-top:16px}
.ntmf-ks-form > .ntmf-step:first-child{border-top:0;padding-top:0;margin-top:6px}
.ntmf-step b{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:#c9705a;color:#fff;font-size:13px}
.ntmf-two{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}
.ntmf-opts{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;margin:8px 0 4px}
.ntmf-pf label.ntmf-opt{border:0 !important;padding:0 !important;margin:0 !important;background:none !important;box-shadow:none !important;width:auto !important;display:block;cursor:pointer}
.ntmf-opt input{position:absolute;opacity:0;pointer-events:none}
.ntmf-opt > span{display:flex;flex-direction:column;gap:2px;height:100%;box-sizing:border-box;padding:10px 12px;border:1.5px solid #e3d6c8;border-radius:12px;background:#fffdf9;font-size:14px;color:#24324a;transition:border-color .15s,background .15s}
.ntmf-opt small{font-size:12px;color:#857a70;line-height:1.35}
.ntmf-opt input:checked + span,.ntmf-opt.is-on > span{border-color:#c9705a;background:#fbefe8;box-shadow:0 0 0 2px rgba(201,112,90,.18)}
.ntmf-opt input:focus-visible + span{outline:2px solid #24324a;outline-offset:2px}
.ntmf-when{display:none;margin:4px 0 0;padding:4px 14px 12px;background:#fcf7f1;border-radius:12px}
.ntmf-when.is-on,.ntmf-ks:has(input[name=ntmf_layout][value=dictionary]:checked) .ntmf-when[data-when=dictionary],.ntmf-ks:has(input[name=ntmf_layout][value=birth]:checked) .ntmf-when[data-when=birth],.ntmf-ks:has(input[name=ntmf_layout][value=qualities]:checked) .ntmf-when[data-when=qualities]{display:block}
.ntmf-pf-styles{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:10px 8px;margin-top:8px}
.ntmf-pf-style span{text-align:center;line-height:1.25;font-size:11.5px}
.ntmf-pf-style img{width:100%;height:auto;aspect-ratio:64/90}
.ntmf-pf-style.is-on img{border-color:#c9705a}
.ntmf-fontname{font-size:20px;line-height:1.2}
.ntmf-f-serif{font-family:Georgia,'Times New Roman',serif;font-weight:600}
.ntmf-f-script{font-family:'Brush Script MT','Segoe Script','Apple Chancery',cursive;font-size:24px}
.ntmf-f-modern{font-family:Montserrat,'Helvetica Neue',Arial,sans-serif;font-weight:600;letter-spacing:.14em;text-transform:uppercase;font-size:15px}
.ntmf-swatches{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0 0}
.ntmf-pf label.ntmf-sw{border:0 !important;padding:0 !important;margin:0 !important;background:none !important;box-shadow:none !important;width:auto !important;display:inline-flex;flex-direction:column;align-items:center;gap:3px;cursor:pointer}
.ntmf-sw input{position:absolute;opacity:0;pointer-events:none}
.ntmf-sw span{width:30px;height:30px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1.5px #e3d6c8}
.ntmf-sw span.is-auto{background:conic-gradient(#c9705a,#8a9a5b,#4f8aa8,#8a6fa8,#c9705a)}
.ntmf-sw em{font-style:normal;font-size:11px;color:#857a70}
.ntmf-sw input:checked + span,.ntmf-sw.is-on span{box-shadow:0 0 0 2.5px #24324a}
.ntmf-sw input:focus-visible + span{outline:2px solid #c9705a;outline-offset:3px}
.ntmf-gift{margin-top:18px;padding:10px 14px;border:1.5px dashed #e3c9b5;border-radius:12px;background:#fffaf5}
.ntmf-gift summary{margin:0}
.ntmf-gift[open] summary{margin-bottom:6px}
.ntmf-gift label.ntmf-pf-l input{margin-right:6px}
.ntmf-ks-includes{list-style:none;margin:16px 0 4px;padding:12px 14px;background:#f5f8f3;border-radius:12px;font-size:13.5px;color:#3d4a40}
.ntmf-ks-includes li{padding-left:22px;position:relative;margin:3px 0}
.ntmf-ks-includes li:before{content:'✓';position:absolute;left:2px;color:#5f8a5a;font-weight:700}
@media (max-width:640px){.ntmf-ks-preview{max-width:240px}.ntmf-two{grid-template-columns:1fr}.ntmf-opts{grid-template-columns:1fr 1fr}}
@font-face{font-family:'NTMF Script';src:url(fonts/great-vibes-latin-400.ttf) format('truetype');font-display:swap}
@font-face{font-family:'NTMF Modern';src:url(fonts/montserrat-latin-600.ttf) format('truetype');font-weight:600;font-display:swap}
@font-face{font-family:'NTMF Serif';src:url(fonts/fraunces-latin-600-normal.ttf) format('truetype');font-weight:600;font-display:swap}
.ntmf-f-serif{font-family:'NTMF Serif',Georgia,serif}
.ntmf-f-script{font-family:'NTMF Script',cursive;font-size:26px}
.ntmf-f-modern{font-family:'NTMF Modern',Montserrat,Arial,sans-serif}

/* Name Poster format step */
.ntmf-opts-format{grid-template-columns:repeat(3,minmax(0,1fr))}
.ntmf-opt-price{display:block;margin-top:6px;font-style:normal;font-weight:700;color:#24324a;font-size:15px}
.ntmf-opt-price del{color:#a89d93;font-weight:400;margin-right:4px}.ntmf-opt-price ins{text-decoration:none}
.ntmf-when-format{display:none}
.ntmf-when-format.is-on{display:block}
li.ntmf-when-format.is-on{display:list-item}
@media (max-width:640px){.ntmf-opts-format{grid-template-columns:1fr}}
/* Name Reveal Video */
.ntmf-vd-preview{max-width:300px}
.ntmf-vd-preview canvas{display:block;width:100%;height:auto;aspect-ratio:9/16;border-radius:14px;box-shadow:0 10px 28px rgba(80,50,30,.2);background:#fbf6ef}
.ntmf-vd-ctl{display:flex;justify-content:center;gap:8px;margin:10px 0 0}
.ntmf-pf .ntmf-vd-ctl button{all:unset;cursor:pointer;font-size:13px !important;line-height:1.3 !important;padding:6px 14px !important;border-radius:999px !important;border:1.5px solid #e3d6c8 !important;background:#fffdf9 !important;color:#3b3f48 !important}
.ntmf-pf .ntmf-vd-ctl button[aria-pressed=true]{background:#24324a !important;border-color:#24324a !important;color:#fff !important}
.ntmf-pf select.ntmf-select{width:100%;box-sizing:border-box;padding:11px 14px;border:1.5px solid #e3d6c8;border-radius:12px;background:#fffdf9;font-size:16px;color:#24324a;margin:0 0 6px}
.ntmf-pf input.ntmf-when-intro{display:none}.ntmf-pf input.ntmf-when-intro.is-on{display:block}
.ntmf-opts-music{grid-template-columns:repeat(2,minmax(0,1fr))}
.ntmf-pf label.ntmf-check{display:flex !important;gap:8px;align-items:center;font-weight:500;border:0 !important;padding:0 !important;background:none !important}
/* 2.9: cards and mug */
.ntmf-pf select{width:100%;box-sizing:border-box;padding:11px 14px;border:1.5px solid #e3d6c8;border-radius:12px;background:#fffdf9;font-size:16px;color:#24324a;margin:0 0 4px;height:auto;min-height:48px}
.ntmf-when-role{display:none}.ntmf-when-role.is-on{display:block}
.ntmf-ks:has(input[name=ntmf_layout][value=xcard]:checked) .ntmf-when[data-when=xcard]{display:block}
.ntmf-mug .ntmf-ks-preview{max-width:360px}
.ntmf-mug.is-loading .ntmf-ks-preview img{opacity:.55}
@media (max-width:640px){.ntmf-mug .ntmf-ks-preview{max-width:300px}}
.ntmf-guide .ntmf-ks-preview{max-width:340px}
.ntmf-guide.is-loading .ntmf-ks-preview img{opacity:.55}
@media (max-width:640px){.ntmf-guide .ntmf-ks-preview{max-width:300px}}

/* a name we do not have: the AI suggestion, to check */
.ntmf-pf-help.is-ai { background: #fff8e8; border: 1px solid #f0dca8; border-left: 4px solid #d9a63a; border-radius: 8px; padding: 10px 12px; color: #5a4520; line-height: 1.5; }
.ntmf-pf-help.is-ai strong { color: #8a5a00; }

/* grandparent mug studio */
.ntmf-mug .ntmf-ks-preview{max-width:420px}
.ntmf-mug-stage img{border-radius:18px;box-shadow:0 18px 40px -24px rgba(36,50,74,.45)}
.ntmf-mug .ntmf-ks-view{flex-wrap:wrap}
.ntmf-mug .ntmf-when-magic,.ntmf-mug .ntmf-when-inside{display:none}
.ntmf-mug .ntmf-when-magic.is-on,.ntmf-mug .ntmf-when-inside.is-on{display:block}
.ntmf-mug .ntmf-ks-view button.ntmf-when-magic.is-on{display:inline-block}
.ntmf-mug-models{grid-template-columns:repeat(2,minmax(0,1fr))}
.ntmf-mug-styles{grid-template-columns:repeat(3,minmax(0,1fr))}
.ntmf-mug-models .ntmf-opt > span{display:grid !important;grid-template-columns:88px 1fr;grid-template-rows:auto auto auto 1fr;column-gap:10px;text-align:left !important;align-items:start !important}
.ntmf-mug-models .ntmf-opt img{grid-row:1 / span 4;width:88px;margin:0}
.ntmf-mug-models .ntmf-opt-price{margin-top:2px !important}
.ntmf-mug-models .ntmf-opt > span,.ntmf-mug-styles .ntmf-opt > span{align-items:center;text-align:center;padding:8px 8px 10px}
.ntmf-mug-models img,.ntmf-mug-styles img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;border-radius:9px;margin:0 0 6px;background:#f6efe7}
.ntmf-mug-models strong,.ntmf-mug-styles strong{font-size:13.5px;line-height:1.25}
.ntmf-mug-models small,.ntmf-mug-styles small{font-size:11.5px}
.ntmf-mug-models .ntmf-opt-price{margin-top:4px;font-size:14px}
.ntmf-mug .ntmf-when-magic.ntmf-pf-help{background:#f4f1fa;border-left:4px solid #6d5a9c;border-radius:8px;padding:9px 12px;color:#3f355a}
@media (max-width:640px){.ntmf-mug .ntmf-ks-preview{max-width:100%}}
@media (max-width:420px){.ntmf-mug-models{grid-template-columns:1fr}}

.ntmf-pf .ntmf-ks-view button.ntmf-when-magic{display:none !important}.ntmf-pf .ntmf-ks-view button.ntmf-when-magic.is-on{display:inline-block !important}
.ntmf-ship-note{font-size:12.5px;color:#7a6f66;margin:8px 0 0;line-height:1.45}
