.upload-overlay{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;animation:overlay-fade-in .3s ease-out}.upload-overlay__backdrop{position:absolute;inset:0;background:hsla(0,0%,100%,.92);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.upload-overlay__content{position:relative;display:flex;flex-direction:column;align-items:center;padding:3rem 4rem;max-width:420px;width:90%;text-align:center;animation:content-slide-up .4s cubic-bezier(.16,1,.3,1)}@media(max-width:639px){.upload-overlay__content{padding:2rem 1.5rem}}.upload-overlay__icon-wrapper{width:80px;height:80px;display:flex;align-items:center;justify-content:center;background:rgba(16,185,129,.1);border:2px solid rgba(16,185,129,.2);border-radius:50%;margin-bottom:1.5rem;transition:all .4s cubic-bezier(.16,1,.3,1)}.upload-overlay__icon-wrapper--complete{background:#10b981;border-color:#10b981;transform:scale(1.1);animation:complete-bounce .6s cubic-bezier(.34,1.56,.64,1)}.upload-overlay__icon-wrapper--error{background:#ef4444;border-color:#ef4444;transform:scale(1.1);animation:error-shake .5s cubic-bezier(.36,.07,.19,.97)}.upload-overlay__processing-icon,.upload-overlay__upload-icon{color:#10b981;animation:icon-pulse 2s ease-in-out infinite}.upload-overlay__processing-icon{animation:icon-spin 3s linear infinite,icon-pulse 2s ease-in-out infinite}.upload-overlay__check-icon{color:#fff;animation:check-pop .4s cubic-bezier(.34,1.56,.64,1)}.upload-overlay__error-icon{color:#fff;animation:error-pop .4s cubic-bezier(.34,1.56,.64,1)}.upload-overlay__title{font-size:1.5rem;font-weight:600;color:#171717;margin-bottom:.5rem}@media(max-width:639px){.upload-overlay__title{font-size:1.25rem}}.upload-overlay__description{font-size:1rem;color:#525252;margin-bottom:2rem;line-height:1.6}@media(max-width:639px){.upload-overlay__description{font-size:.875rem}}.upload-overlay__progress-container{width:100%;display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.upload-overlay__progress-track{flex:1 1;height:8px;background:rgba(15,15,15,.1);border-radius:100px;overflow:hidden}.upload-overlay__progress-fill{height:100%;background:linear-gradient(90deg,#34d399,#10b981);border-radius:100px;transition:width .3s ease-out;position:relative}.upload-overlay__progress-fill:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3) 50%,transparent);animation:shimmer 1.5s ease-in-out infinite}.upload-overlay__progress-fill--complete{background:#10b981}.upload-overlay__progress-fill--complete:after{animation:none}.upload-overlay__progress-text{font-size:.875rem;font-weight:500;color:#525252;min-width:40px;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.upload-overlay__stages{display:flex;align-items:center;gap:.5rem}@media(max-width:639px){.upload-overlay__stages{gap:.25rem}}.upload-overlay__stage{display:flex;align-items:center;gap:.5rem;opacity:.4;transition:opacity .3s ease}.upload-overlay__stage--active{opacity:1}.upload-overlay__stage--done{opacity:.7}.upload-overlay__stage--done .upload-overlay__stage-dot{background:#10b981;border-color:#10b981}@media(max-width:639px){.upload-overlay__stage{gap:.25rem}}.upload-overlay__stage-dot{width:8px;height:8px;border-radius:50%;background:rgba(0,0,0,0);border:2px solid #d4d4d4;transition:all .3s ease}.upload-overlay__stage--active .upload-overlay__stage-dot{background:#10b981;border-color:#10b981;box-shadow:0 0 0 4px rgba(16,185,129,.2)}.upload-overlay__stage-label{font-size:.75rem;font-weight:500;color:#737373;text-transform:uppercase;letter-spacing:.02em}@media(max-width:639px){.upload-overlay__stage-label{font-size:10px}}.upload-overlay__stage-line{width:24px;height:2px;background:#e5e5e5;border-radius:1px}@media(max-width:639px){.upload-overlay__stage-line{width:16px}}.upload-overlay__close-button{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 2rem;background:#171717;border:none;border-radius:1rem;color:#fff;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;margin-top:.5rem}.upload-overlay__close-button:hover{background:#262626;transform:translateY(-1px)}.upload-overlay__close-button:active{transform:translateY(0)}.upload-overlay--pasfoto,.upload-overlay--pasfoto .upload-overlay__content,.upload-overlay--pasfoto .upload-overlay__content *{font-family:PT Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif!important}.upload-overlay--pasfoto .upload-overlay__icon-wrapper{background:rgba(17,114,186,.08);border-color:rgba(17,114,186,.18)}.upload-overlay--pasfoto .upload-overlay__icon-wrapper--complete{background:#5ca340;border-color:#5ca340}.upload-overlay--pasfoto .upload-overlay__processing-icon,.upload-overlay--pasfoto .upload-overlay__upload-icon{color:#1172ba}.upload-overlay--pasfoto .upload-overlay__close-button,.upload-overlay--pasfoto .upload-overlay__description,.upload-overlay--pasfoto .upload-overlay__progress-text,.upload-overlay--pasfoto .upload-overlay__stage-label,.upload-overlay--pasfoto .upload-overlay__title{font-family:PT Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif!important}.upload-overlay--pasfoto .upload-overlay__title{font-family:Antic Slab,Georgia,serif!important;font-weight:400;letter-spacing:0;color:#333}.upload-overlay--pasfoto .upload-overlay__description,.upload-overlay--pasfoto .upload-overlay__progress-text,.upload-overlay--pasfoto .upload-overlay__stage-label{color:#777}.upload-overlay--pasfoto .upload-overlay__progress-track{background:#dadada}.upload-overlay--pasfoto .upload-overlay__progress-fill{background:linear-gradient(90deg,#2f8ed1,#1172ba)}.upload-overlay--pasfoto .upload-overlay__progress-fill--complete{background:#5ca340}.upload-overlay--pasfoto .upload-overlay__stage-dot{border-color:#cccbc9}.upload-overlay--pasfoto .upload-overlay__stage--active .upload-overlay__stage-dot{background:#1172ba;border-color:#1172ba;box-shadow:0 0 0 4px rgba(17,114,186,.15)}.upload-overlay--pasfoto .upload-overlay__stage--done .upload-overlay__stage-dot{background:#1172ba;border-color:#1172ba}.upload-overlay--pasfoto .upload-overlay__stage-line{background:#dadada}@keyframes overlay-fade-in{0%{opacity:0}to{opacity:1}}@keyframes content-slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes icon-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}@keyframes icon-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes complete-bounce{0%{transform:scale(.8)}50%{transform:scale(1.15)}to{transform:scale(1.1)}}@keyframes check-pop{0%{opacity:0;transform:scale(.5)}50%{transform:scale(1.2)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}@keyframes error-shake{0%,to{transform:scale(1.1) translateX(0)}10%,30%,50%,70%,90%{transform:scale(1.1) translateX(-4px)}20%,40%,60%,80%{transform:scale(1.1) translateX(4px)}}@keyframes error-pop{0%{opacity:0;transform:scale(.5) rotate(-45deg)}50%{transform:scale(1.2) rotate(0deg)}to{opacity:1;transform:scale(1) rotate(0deg)}}.upload-prep-modal{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:1.5rem}.upload-prep-modal__backdrop{position:absolute;inset:0;background:rgba(15,15,15,.46);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.upload-prep-modal__dialog{position:relative;width:min(100%,44rem);max-height:min(90vh,56rem);overflow:auto;padding:2rem;border-radius:1.25rem;background:radial-gradient(circle at top right,rgba(59,130,246,.09),transparent 36%),linear-gradient(180deg,rgba(255,255,255,.98),rgba(247,249,252,.98));box-shadow:0 25px 50px -12px rgba(0,0,0,.15)}@media(max-width:639px){.upload-prep-modal__dialog{width:100%;padding:1.5rem}}.upload-prep-modal__close{position:absolute;top:1rem;right:1rem;width:2.25rem;height:2.25rem;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(212,212,212,.18);border-radius:999px;background:hsla(0,0%,100%,.92);color:#525252;cursor:pointer}.upload-prep-modal__header{margin-bottom:1.25rem}.upload-prep-modal__title{margin:0;font-size:clamp(1.6rem,3vw,2rem);line-height:1.1;color:#171717}.upload-prep-modal__grid{display:grid;grid-template-columns:1fr;grid-gap:1rem;gap:1rem;margin-bottom:1rem}@media(min-width:640px){.upload-prep-modal__grid{grid-template-columns:1fr 1fr}}.upload-prep-modal__grid--single{grid-template-columns:1fr}.upload-prep-modal__field{display:flex;flex-direction:column;gap:0}.upload-prep-modal__field input,.upload-prep-modal__field select{width:100%;height:3rem;padding:0 1rem;border:1px solid rgba(212,212,212,.16);border-radius:.5rem;background:hsla(0,0%,100%,.96);font:inherit;color:#171717}@media(max-width:768px){.upload-prep-modal__field input,.upload-prep-modal__field select{font-size:16px}}.upload-prep-modal__select-wrap{position:relative}.upload-prep-modal__select-wrap select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:2.5rem}.upload-prep-modal__select-wrap select:disabled{color:#171717;cursor:default;opacity:1}.upload-prep-modal__select-wrap svg{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);color:#737373;pointer-events:none}.upload-prep-modal__consent{display:grid;grid-template-columns:auto 1fr;align-items:start;grid-gap:.75rem;gap:.75rem;padding:1rem;margin-bottom:1rem;border:1px solid rgba(212,212,212,.12);border-radius:.75rem;background:hsla(0,0%,100%,.78);cursor:default}.upload-prep-modal__consent input{position:absolute;opacity:0;pointer-events:none}.upload-prep-modal__consent input:checked+.upload-prep-modal__consent-box,.upload-prep-modal__consent-box{display:none}.upload-prep-modal__consent-copy{display:flex;flex-direction:column;gap:.25rem}.upload-prep-modal__consent-title{display:inline-flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;color:#171717}.upload-prep-modal__consent-text{font-size:.875rem;line-height:1.6;color:#525252}.upload-prep-modal__dropzone{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:clamp(2rem,5vw,3rem);border:2px dashed rgba(212,212,212,.26);border-radius:1rem;background:linear-gradient(180deg,rgba(255,255,255,.9),rgba(245,248,252,.95));text-align:center;transition:border-color .15s ease,background .15s ease,transform .15s ease;cursor:default}.upload-prep-modal__dropzone--enabled{border-color:rgba(59,130,246,.42);cursor:pointer}.upload-prep-modal__dropzone--dragover{border-color:rgba(59,130,246,.8);background:linear-gradient(180deg,rgba(239,246,255,.98),rgba(247,251,255,.98));transform:translateY(-1px)}.upload-prep-modal__dropzone-icon{width:4rem;height:4rem;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:rgba(59,130,246,.1);color:#3b82f6}.upload-prep-modal__dropzone-title{margin:0;font-size:1.25rem;color:#171717}.upload-prep-modal__dropzone-text{margin:0;font-size:.875rem;line-height:1.6;color:#525252}.upload-prep-modal__upload-button{min-width:15rem;min-height:3.5rem;padding:.75rem 1.5rem;border:none;border-radius:.5rem;background:#10b981;color:#fff;font:inherit;font-weight:600;cursor:pointer;transition:background .15s ease,transform .15s ease}.upload-prep-modal__upload-button:hover:not(:disabled){background:#059669;transform:translateY(-1px)}.upload-prep-modal__upload-button:disabled{opacity:.45;cursor:not-allowed}.upload-prep-modal__error{display:flex;align-items:center;gap:.5rem;margin-top:1rem;padding:.75rem;border:1px solid rgba(239,68,68,.18);border-radius:.5rem;background:rgba(239,68,68,.08);color:color-mix(in srgb,#ef4444 78%,black);font-size:.875rem}.upload-prep-modal--pasfoto .upload-prep-modal__dialog,.upload-prep-modal--pasfoto .upload-prep-modal__dialog *{font-family:PT Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.upload-prep-modal--pasfoto .upload-prep-modal__title{font-family:Antic Slab,Georgia,serif;font-weight:400}.upload-prep-modal--pasfoto .upload-prep-modal__consent,.upload-prep-modal--pasfoto .upload-prep-modal__dropzone,.upload-prep-modal--pasfoto .upload-prep-modal__field input,.upload-prep-modal--pasfoto .upload-prep-modal__field select{border-radius:2px;box-shadow:none}.upload-prep-modal--pasfoto .upload-prep-modal__field input::placeholder{color:#8b8b8b}.upload-prep-modal--pasfoto .upload-prep-modal__field select:disabled{background:#f6f6f6}.upload-prep-modal--pasfoto .upload-prep-modal__upload-button{border:1px solid rgba(0,0,0,.25);border-radius:4px;background-image:linear-gradient(0deg,#aad75d,#d1e990);color:#54770f;text-transform:uppercase;letter-spacing:.02em;font-weight:700}.upload-prep-modal--pasfoto .upload-prep-modal__upload-button:hover:not(:disabled){background-image:linear-gradient(0deg,#98c64a,#c7e47a);color:#4f6e0f;transform:none}.upload-prep-modal--pasfoto .upload-prep-modal__consent{border-color:#dadada;background:#fff}.upload-prep-modal--pasfoto .upload-prep-modal__dropzone{border-color:#d7d7d7;background:#fafafa}.upload-prep-modal--pasfoto .upload-prep-modal__dropzone--enabled{border-color:rgba(17,114,186,.4)}.upload-prep-modal--pasfoto .upload-prep-modal__dropzone--dragover{border-color:#1172ba;background:linear-gradient(180deg,rgba(239,246,255,.98),rgba(255,255,255,.98));box-shadow:0 0 0 3px rgba(17,114,186,.08)}.upload-button{position:relative;display:inline-block}.upload-button--loading{pointer-events:none}.upload-button--loading .upload-button__cta{opacity:.6;cursor:not-allowed}.upload-button__cta{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1rem .75rem .75rem;background:#10b981;color:#fff;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1.125rem;font-weight:500;border-radius:.5rem;box-shadow:0 10px 15px -3px rgba(0,0,0,.05),0 4px 6px -4px rgba(0,0,0,.05),0 0 0 1px rgba(16,185,129,.2);transition:all .2s ease;cursor:pointer}.upload-button__cta:hover{background:#059669;box-shadow:0 20px 25px -5px rgba(0,0,0,.05),0 8px 10px -6px rgba(0,0,0,.05),0 0 0 1px rgba(16,185,129,.3)}.upload-button__cta--small{gap:.25rem;padding:.5rem .75rem .5rem .5rem;font-size:.875rem;box-shadow:none}.upload-button__cta--small:hover{box-shadow:none;transform:none}.upload-button__cta--small .upload-button__flag-trigger{padding:.25rem;margin-right:.5rem}.upload-button__cta--small .upload-button__flag{font-size:1rem}.upload-button__cta--small .upload-button__arrow{margin-left:4px;border-left-width:2.5px;border-right-width:2.5px;border-top-width:3px}.upload-button--small .upload-button__dropdown{left:auto;right:0;min-width:180px}.upload-button__flag-trigger{display:flex;align-items:center;justify-content:center;padding:.5rem;margin-right:.5rem;background:hsla(0,0%,100%,.15);border:none;border-radius:.5rem;cursor:pointer;transition:background .15s ease}.upload-button__flag-trigger:hover{background:hsla(0,0%,100%,.25)}.upload-button__flag{font-size:1.25rem;line-height:1}.upload-button__arrow{width:0;height:0;margin-left:6px;border-left:3px solid rgba(0,0,0,0);border-right:3px solid rgba(0,0,0,0);border-top:4px solid;opacity:.7;transition:transform .15s ease}.upload-button__arrow--open{transform:rotate(180deg)}.upload-button__text{background:none;border:none;color:inherit;font:inherit;cursor:pointer;padding:0;margin:0}@media(max-width:639px){.upload-button__text--small{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}}.upload-button--hero .upload-button__cta{min-height:clamp(3.5rem,6.5vw,4.25rem);padding:clamp(.8rem,1.7vw,1rem) clamp(1.5rem,3vw,2.15rem) clamp(.8rem,1.7vw,1rem) clamp(.8rem,1.8vw,1rem);width:-moz-fit-content;width:fit-content;justify-content:center;font-size:clamp(1.15rem,1.9vw,1.35rem);font-weight:600;letter-spacing:-.01em;box-shadow:0 20px 25px -5px rgba(0,0,0,.05),0 8px 10px -6px rgba(0,0,0,.05),0 0 0 1px rgba(16,185,129,.35)}.upload-button--hero .upload-button__cta:hover{box-shadow:0 20px 25px -5px rgba(0,0,0,.05),0 8px 10px -6px rgba(0,0,0,.05),0 0 0 1px rgba(16,185,129,.5)}.upload-button--hero .upload-button__flag-trigger{padding:clamp(.4rem,1vw,.6rem) clamp(.45rem,1.2vw,.7rem);margin-right:clamp(.55rem,1vw,.75rem)}.upload-button--hero .upload-button__flag{font-size:clamp(1.1rem,1.6vw,1.3rem)}.upload-button--hero .upload-button__text{line-height:1.1;white-space:nowrap}.upload-button__dropdown{position:absolute;top:calc(100% + .25rem);left:0;min-width:200px;max-height:300px;overflow-y:auto;background:#fff;border:1px solid #e5e5e5;border-radius:1rem;box-shadow:0 10px 15px -3px rgba(0,0,0,.05),0 4px 6px -4px rgba(0,0,0,.05);z-index:500}.upload-button__dropdown--portal{position:fixed;z-index:9999}.upload-button__dropdown-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem .75rem;background:rgba(0,0,0,0);border:none;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:.875rem;color:#171717;text-align:left;cursor:pointer;transition:background-color .15s ease;outline:none}.upload-button__dropdown-item--focused,.upload-button__dropdown-item:hover{background:#fafafa}.upload-button__dropdown-item--active{background:rgba(16,185,129,.1);color:#059669}.upload-button__dropdown-item--active.upload-button__dropdown-item--focused{background:rgba(16,185,129,.15)}.upload-button__dropdown-flag{font-size:1rem;line-height:1}.upload-button__dropdown-name{flex:1 1}.upload-button__dropdown-check{color:#10b981}.star-rating{gap:.75rem}.star-rating,.star-rating__stars{display:inline-flex;align-items:center}.star-rating__stars{gap:2px}.star-rating__star{position:relative;display:flex;align-items:center;justify-content:center;line-height:0;overflow:hidden;background:#e5e7eb;border-radius:0}.star-rating__star svg{fill:rgba(0,0,0,0);color:#9ca3af;stroke:currentColor}.star-rating__star--filled svg{fill:#fff;color:#fff;stroke:#fff}.star-rating__star--filled{background:#00b67a}.star-rating__fill{position:absolute;inset:0;width:100%;display:flex;align-items:center;justify-content:center;background:#00b67a;overflow:hidden;-webkit-clip-path:inset(0 calc(100% - var(--star-fill, 100%)) 0 0);clip-path:inset(0 calc(100% - var(--star-fill, 100%)) 0 0)}.star-rating__fill svg{fill:#fff;color:#fff;stroke:#fff}.star-rating__meta{display:inline-flex;align-items:baseline;gap:.5rem;white-space:nowrap}.star-rating__value{font-size:.875rem;font-weight:700;color:#171717;line-height:1}.star-rating__reviews{font-size:.875rem;font-weight:400;color:#737373;line-height:1}.trust-badge{display:flex;align-items:center;gap:.5rem}.trust-badge__stars{flex-shrink:0}