.custom-ring-form-page{max-width:var(--container-max);padding:32px var(--container-padding) 72px;font-family:var(--font-body);margin:0 auto}.crf-breadcrumb{margin-bottom:2rem}.crf-layout{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:flex-start;gap:4.5rem;display:grid}.crf-form-col{width:100%;min-width:0}.crf-intro{margin-bottom:2.25rem}.crf-eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--clr-accent);margin:0 0 .6rem;font-size:.72rem;font-weight:600}.crf-title{font-family:var(--font-heading);color:var(--clr-primary);margin:0 0 .75rem;font-size:clamp(1.7rem,3vw,2.3rem);font-weight:400;line-height:1.2}.crf-lede{max-width:52ch;color:var(--clr-text-muted);margin:0;font-size:.9rem;font-weight:300;line-height:1.65}.crf-req{color:var(--clr-accent)}.crf-opt{letter-spacing:.02em;text-transform:none;color:var(--clr-text-muted);opacity:.85;font-weight:400}.crf-form{flex-direction:column;gap:2.25rem;display:flex}.crf-section{flex-direction:column;gap:1.25rem;display:flex}.crf-section-title{font-family:var(--font-heading);color:var(--clr-primary);border-bottom:1px solid #e6e0d4;align-items:baseline;gap:.75rem;margin:0;padding-bottom:.75rem;font-size:1.15rem;font-weight:400;display:flex}.crf-section-title .crf-opt{font-family:var(--font-body);font-size:.78rem}.crf-step{font-family:var(--font-body);letter-spacing:.12em;color:var(--clr-accent);font-size:.72rem;font-weight:600}.crf-row{grid-template-columns:1fr 1fr;gap:1.25rem;display:grid}.crf-field{flex-direction:column;min-width:0;display:flex}.crf-label-row{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.crf-char-count{font-variant-numeric:tabular-nums;color:var(--clr-text-muted);flex-shrink:0;margin-bottom:8px;font-size:.72rem}.crf-char-count.is-near{color:#b45309}.crf-hint{color:var(--clr-text-muted);margin:-.25rem 0 0;font-size:.78rem;font-weight:300;line-height:1.55}.crf-hint a{color:var(--clr-primary);text-underline-offset:2px;text-decoration:underline}.crf-phone-wrapper{grid-template-columns:minmax(118px,34%) 1fr;gap:8px;display:grid}.crf-upload-area{text-align:center;cursor:pointer;min-height:150px;transition:border-color var(--transition-fast), background-color var(--transition-fast);background-color:#fbfbfb;border:1px dashed #cfc6b5;flex-direction:column;justify-content:center;align-items:center;gap:.4rem;padding:1.75rem 1.25rem;display:flex}.crf-upload-area:hover,.crf-upload-area.is-drag{border-color:var(--clr-accent);background-color:#f5f5f5}.crf-upload-area:focus-visible{outline:2px solid var(--clr-accent);outline-offset:2px}.crf-upload-area.has-file{background-color:var(--clr-secondary);cursor:default;border-style:solid;border-color:#e6e0d4;align-items:stretch;min-height:0;padding:1rem}.crf-upload-area svg{color:var(--clr-accent);margin-bottom:.25rem}.crf-upload-text{color:var(--clr-primary);margin:0;font-size:.88rem}.crf-upload-text span{color:var(--clr-accent);text-underline-offset:2px;text-decoration:underline}.crf-upload-subtext{color:var(--clr-text-muted);margin:0;font-size:.76rem;font-weight:300}.crf-upload-preview-wrapper{align-items:center;gap:1rem;min-width:0;display:flex}.crf-upload-preview{object-fit:cover;background:#fbfbfb;flex-shrink:0;width:88px;height:88px}.crf-upload-meta{text-align:left;flex-direction:column;gap:.5rem;min-width:0;display:flex}.crf-upload-filename{color:var(--clr-primary);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.84rem;overflow:hidden}.crf-upload-actions{gap:1rem;display:flex}.crf-upload-actions button{min-width:0;min-height:0;font-family:var(--font-body);letter-spacing:.04em;color:var(--clr-text-muted);text-underline-offset:2px;cursor:pointer;background:0 0;border:none;padding:0;font-size:.78rem;text-decoration:underline}.crf-upload-actions button:hover{color:var(--clr-primary)}.crf-upload-actions button:last-child:hover{color:#dc2626}.crf-divider{align-items:center;gap:1rem;display:flex}.crf-divider:before,.crf-divider:after{content:"";background-color:#e6e0d4;flex:1;height:1px}.crf-divider span{letter-spacing:.14em;text-transform:uppercase;color:var(--clr-text-muted);font-size:.72rem}.crf-disclaimer{color:var(--clr-text-muted);margin:-.5rem 0 0;font-size:.78rem;font-style:italic;font-weight:300;line-height:1.55}.crf-alert{color:#991b1b;background:#fef2f2;border-left:3px solid #dc2626;padding:.85rem 1rem;font-size:.86rem;line-height:1.5}.crf-buttons{grid-template-columns:1fr 2fr;gap:.75rem;display:grid}.crf-btn-back,.crf-btn-continue{min-height:52px;font-family:var(--font-body);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);justify-content:center;align-items:center;padding:0 28px;font-size:.82rem;font-weight:500;text-decoration:none;display:flex}.crf-btn-back{color:var(--clr-primary);background-color:#0000;border:1px solid #d9d3c7}.crf-btn-back:hover{border-color:var(--clr-primary)}.crf-btn-continue{border:1px solid var(--clr-primary);background-color:var(--clr-primary);color:var(--clr-secondary)}.crf-btn-continue:hover:not(:disabled){color:var(--clr-primary);background-color:#0000}.crf-btn-continue:disabled{opacity:.6;cursor:wait}.crf-btn-back:focus-visible,.crf-btn-continue:focus-visible{outline:2px solid var(--clr-accent);outline-offset:2px}.crf-image-col{position:sticky;top:120px}.crf-image{object-fit:cover;width:100%;height:auto;display:block}.crf-input.is-invalid,.crf-select.is-invalid,.crf-textarea.is-invalid,.crf-upload-area.is-invalid,.crf-phone-wrapper.is-invalid .crf-phone-input{border-color:#ef4444!important}.crf-error-msg{color:#dc2626;margin-top:6px;font-size:.76rem;font-weight:500;display:block}@media (max-width:968px){.crf-layout{grid-template-columns:1fr;gap:2rem}.crf-image-col{order:-1;max-height:280px;position:static;overflow:hidden}.crf-image{max-height:280px}}@media (max-width:640px){.custom-ring-form-page{padding-top:20px;padding-bottom:48px}.crf-row{grid-template-columns:1fr}.crf-form{gap:1.85rem}.crf-buttons{grid-template-columns:1fr}.crf-btn-continue{order:-1}.crf-phone-wrapper{grid-template-columns:112px 1fr}}.crf-popup-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:2000;background:#00000073;animation:.2s ease-out crf-fade;position:fixed;inset:0}.crf-popup{z-index:2001;background-color:var(--clr-secondary);text-align:center;width:calc(100% - 32px);max-width:440px;padding:3rem 2.25rem 2.5rem;animation:.25s ease-out crf-pop;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 24px 60px -20px #00000059}.crf-popup-close{z-index:2;width:40px;height:40px;color:var(--clr-text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute;top:10px;right:10px}.crf-popup-close:hover{color:var(--clr-primary)}.crf-popup-confetti{pointer-events:none;position:absolute;inset:0;overflow:hidden}.crf-confetti-piece{width:8px;height:8px;animation:2.5s ease-in-out infinite crf-confetti-fall;position:absolute;top:-10px}.crf-confetti-piece:first-child{background:var(--clr-accent);animation-delay:0s;left:5%}.crf-confetti-piece:nth-child(2){background:#e8c4a2;animation-delay:.2s;left:15%}.crf-confetti-piece:nth-child(3){background:var(--clr-accent);animation-delay:.4s;left:25%}.crf-confetti-piece:nth-child(4){background:#d4a574;animation-delay:.1s;left:35%}.crf-confetti-piece:nth-child(5){background:var(--clr-accent);animation-delay:.6s;left:45%}.crf-confetti-piece:nth-child(6){background:#e8c4a2;animation-delay:.3s;left:55%}.crf-confetti-piece:nth-child(7){background:var(--clr-accent);animation-delay:.5s;left:65%}.crf-confetti-piece:nth-child(8){background:#d4a574;animation-delay:.15s;left:75%}.crf-confetti-piece:nth-child(9){background:var(--clr-accent);animation-delay:.7s;left:85%}.crf-confetti-piece:nth-child(10){background:#e8c4a2;animation-delay:.25s;left:95%}.crf-confetti-piece:nth-child(11){background:#d4a574;animation-delay:.35s;left:10%}.crf-confetti-piece:nth-child(12){background:var(--clr-accent);animation-delay:.55s;left:20%}.crf-confetti-piece:nth-child(13){background:#e8c4a2;animation-delay:.45s;left:30%}.crf-confetti-piece:nth-child(14){background:var(--clr-accent);animation-delay:.65s;left:40%}.crf-confetti-piece:nth-child(15){background:#d4a574;animation-delay:.8s;left:50%}.crf-confetti-piece:nth-child(16){background:var(--clr-accent);animation-delay:.1s;left:60%}.crf-confetti-piece:nth-child(17){background:#e8c4a2;animation-delay:.9s;left:70%}.crf-confetti-piece:nth-child(18){background:var(--clr-accent);animation-delay:.5s;left:80%}.crf-confetti-piece:nth-child(19){background:#d4a574;animation-delay:.75s;left:90%}.crf-confetti-piece:nth-child(20){background:var(--clr-accent);animation-delay:.85s;left:3%}@keyframes crf-confetti-fall{0%{opacity:1;transform:translateY(0)rotate(0)}to{opacity:0;transform:translateY(400px)rotate(720deg)}}@keyframes crf-fade{0%{opacity:0}to{opacity:1}}@keyframes crf-pop{0%{opacity:0;transform:translate(-50%,-46%)}to{opacity:1;transform:translate(-50%,-50%)}}.crf-popup-content{z-index:1;flex-direction:column;align-items:center;gap:1rem;display:flex;position:relative}.crf-popup-title{font-family:var(--font-heading);color:var(--clr-primary);margin:0;font-size:1.5rem;font-weight:400}.crf-popup-desc{color:var(--clr-text-muted);overflow-wrap:anywhere;margin:0;font-size:.88rem;font-weight:300;line-height:1.6}.crf-popup-desc strong{color:var(--clr-primary);font-weight:500}.crf-popup-btn{border:1px solid var(--clr-primary);background-color:var(--clr-primary);color:var(--clr-secondary);font-family:var(--font-body);letter-spacing:.14em;text-transform:uppercase;transition:background-color var(--transition-fast), color var(--transition-fast);margin-top:.75rem;padding:14px 36px;font-size:.8rem;text-decoration:none}.crf-popup-btn:hover{color:var(--clr-primary);background-color:#0000}.crf-popup-btn:focus-visible{outline:2px solid var(--clr-accent);outline-offset:3px}@media (prefers-reduced-motion:reduce){.crf-confetti-piece{display:none}.crf-popup,.crf-popup-overlay{animation:none}}
