.app{height:100%;display:flex;flex-direction:column;position:relative;z-index:2;overflow:hidden}.app:after{content:"";position:fixed;left:-40px;top:30%;bottom:10%;width:200px;pointer-events:none;z-index:0;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 600' fill='none' stroke='%23111' stroke-width='0.6' opacity='0.18'><path d='M60 0 C20 120, 120 200, 60 320 S 20 500, 90 600'/><path d='M100 40 C140 150, 60 240, 110 360 S 150 520, 70 600'/></svg>");background-size:contain;background-repeat:no-repeat}.nav{padding:14px 48px 0;display:flex;align-items:center;justify-content:center;position:relative;z-index:5;flex-shrink:0}.stepper{display:flex;gap:10px;align-items:center;flex-shrink:0}.step-pill{padding:0;font-family:Roboto Condensed,sans-serif;font-size:13px;font-weight:400;color:#8b8b8b;text-transform:lowercase;transition:color .2s;display:flex;align-items:center;gap:6px}.step-pill-on{color:var(--ink);font-weight:500}.step-pill-done{color:#8b8b8b}.step-num{font-family:Roboto Condensed,sans-serif;font-size:13px}.step-sep:before{content:"—";color:#8b8b8b}.stage{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:12px 48px 88px;position:relative;z-index:3;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:none}.stage::-webkit-scrollbar{display:none}.stage-title{font-size:clamp(26px,2.8vw,40px);text-align:center;margin:0 0 14px;line-height:1.02;max-width:900px;color:var(--ink);font-weight:700;letter-spacing:-.015em}.stage-title em{font-style:italic;font-weight:400;font-family:Playfair Display,serif}.stage-hint{margin:-6px 0 12px;max-width:620px;text-align:center;font-size:13px;line-height:1.4;opacity:.6}.card-scene{position:relative;display:flex;align-items:center;justify-content:center;gap:clamp(20px,4vw,56px);width:100%;max-width:1100px;margin-bottom:12px}.card{width:400px;aspect-ratio:4 / 3;flex:0 0 400px;border-radius:16px;position:relative;overflow:hidden;box-shadow:-1px 1px 6px #0000003b,0 24px 50px -24px #00000047;transition:background .4s}.card-scene .card{flex:0 1 auto;width:auto;height:clamp(150px,26vh,230px)}.card-ill{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;pointer-events:none}.arrow{flex:0 0 auto;width:52px;height:52px;border-radius:50%;background:var(--ink);color:var(--on-ink);display:flex;align-items:center;justify-content:center;transition:all .2s;z-index:4;border:none}.arrow:hover{background:#000;transform:scale(1.05)}.picker{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:2px;width:100%;max-width:760px}.picker-lbl{font-family:Playfair Display,serif;font-style:italic;font-weight:600;font-size:18px;letter-spacing:-.01em;color:var(--ink)}.picker{--pick-cell: clamp(60px, 9vh, 84px);--pick-dot: clamp(44px, 7vh, 60px);--pick-visible: 5}.pick-carousel{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;max-width:760px}.pick-carousel>.ill-picker,.pick-carousel>.picker-row{flex:1 1 auto;min-width:0;max-width:calc(var(--pick-cell) * var(--pick-visible))}.row-arrow{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:32px;height:32px;color:var(--ink);background:transparent;border:none;cursor:pointer;transition:opacity .2s}.row-arrow:hover{opacity:.55}.picker-row,.ill-picker{display:flex;gap:0;flex-wrap:nowrap;justify-content:safe center;width:calc(var(--pick-cell) * var(--pick-visible));overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;padding:4px 0}.picker-row::-webkit-scrollbar,.ill-picker::-webkit-scrollbar{display:none}.swatch,.ill-opt{flex:0 0 calc(100% / var(--pick-visible));min-width:0;display:flex;flex-direction:column;align-items:center;gap:5px;scroll-snap-align:center;background:transparent;border:none;padding:0;cursor:pointer}.swatch>span{display:block;width:min(var(--pick-dot),calc(100% - 10px));aspect-ratio:1;height:auto;flex:0 0 auto;border-radius:50%;box-shadow:inset 0 0 0 1px #00000014;transition:box-shadow .2s}.swatch:hover>span{box-shadow:inset 0 0 0 1px #00000014,0 0 0 2px rgba(var(--ink-rgb),.25)}.swatch.on>span{box-shadow:inset 0 0 0 1px #00000014,0 0 0 2px var(--ink)}.ill-chip{width:min(var(--pick-dot),calc(100% - 10px));aspect-ratio:1;flex:0 0 auto;border-radius:50%;background:var(--paper);border:1px solid rgba(var(--ink-rgb),.1);transition:all .2s;position:relative}.ill-opt:hover .ill-chip{border-color:rgba(var(--ink-rgb),.35)}.ill-opt.on .ill-chip{border-color:var(--ink);box-shadow:0 0 0 3px rgba(var(--ink-rgb),.06)}.ill-chip img{position:absolute;top:4px;right:4px;bottom:4px;left:4px;width:calc(100% - 8px);height:calc(100% - 8px);object-fit:contain;border-radius:50%}.ill-name{font-size:10px;line-height:1.15;text-align:center;max-width:100%;overflow-wrap:anywhere;color:rgba(var(--ink-rgb),.5);font-weight:500}.ill-opt.on .ill-name{color:var(--ink);font-weight:700}.amount-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;width:100%;max-width:640px;margin-top:6px;counter-reset:tile}.amount-tile{padding:clamp(12px,2.4vh,22px) clamp(14px,3.6vw,24px);border-radius:10px;background:var(--paper);border:1px solid rgba(var(--ink-rgb),.08);text-align:left;cursor:pointer;transition:all .2s;position:relative}.amount-tile:before{content:"(" counter(tile) ")";counter-increment:tile;position:absolute;top:14px;right:16px;font-family:Playfair Display,serif;font-style:italic;font-size:12px;opacity:.45}.amount-tile:hover{border-color:rgba(var(--ink-rgb),.3);transform:translateY(-1px)}.amount-tile.on{border-color:var(--ink);background:var(--paper)}.amount-tile.on:after{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border:1px solid var(--ink);border-radius:10px;pointer-events:none}.amount-tile .big{font-family:Playfair Display,serif;font-style:italic;font-weight:600;font-size:clamp(21px,3.4vh,30px);letter-spacing:-.02em;line-height:1;margin-bottom:clamp(3px,.7vh,6px)}.amount-tile .lbl{font-size:clamp(11px,1.4vh,12px);font-weight:500;opacity:.65;letter-spacing:.04em}.amount-tile .sub{font-size:clamp(11px,1.4vh,12px);opacity:.6;margin-top:clamp(2px,.5vh,4px);line-height:1.35}.details-wrap{display:grid;grid-template-columns:minmax(280px,360px) minmax(320px,1fr);gap:40px;max-width:1040px;width:100%;align-items:center}.details-wrap .card{width:320px;flex:0 0 320px}.details-form{display:flex;flex-direction:column;gap:14px;min-width:0}.field{display:flex;flex-direction:column;gap:5px;min-width:0}.field input,.field textarea{width:100%}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field label{font-size:10px;letter-spacing:.14em;text-transform:lowercase;font-weight:500;opacity:.55;font-family:Playfair Display,serif;font-style:italic}.field input,.field textarea{background:var(--paper);border:1px solid rgba(var(--ink-rgb),.12);border-radius:8px;padding:12px 14px;font-size:14px;color:var(--ink);outline:none;transition:border-color .2s;font-family:inherit;resize:none}.field input:focus,.field textarea:focus{border-color:var(--ink)}.field-counter{align-self:flex-end;font-size:10px;opacity:.45}.field-hint{font-size:11px;line-height:1.35;opacity:.55;margin-top:-1px}.checkbox-row{display:flex;align-items:center;gap:8px;font-size:13px;opacity:.75;cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox-row input{width:15px;height:15px;accent-color:var(--ink);cursor:pointer}.checkbox-row.with-hint{align-items:flex-start}.checkbox-row.with-hint input{margin-top:2px}.checkbox-row .field-hint{display:block}.consent{margin-top:20px;display:flex;flex-direction:column;gap:10px}.consent-row{align-items:flex-start;line-height:1.35}.consent-row input{margin-top:2px;flex-shrink:0}.consent-row a{color:var(--ink);text-decoration:underline}.for-toggle{display:inline-flex;background:transparent;border:1px solid rgba(var(--ink-rgb),.2);border-radius:999px;padding:3px;width:fit-content}.for-toggle button{padding:8px 18px;border-radius:999px;font-size:12px;font-weight:500;opacity:.55;transition:all .2s}.for-toggle .on{background:var(--ink);color:var(--on-ink);opacity:1}.pay-wrap{display:grid;grid-template-columns:minmax(280px,360px) minmax(320px,1fr);gap:40px;max-width:1040px;width:100%;align-items:center}.pay-wrap .card{width:320px;flex:0 0 320px}.pay-visual{display:flex;flex-direction:column;align-items:center;gap:14px}.pay-visual .card{flex:0 0 auto}.preview-link{text-decoration:none;padding:11px 20px;font-size:12px;max-width:100%;justify-content:center;text-align:center}.summary{background:var(--paper);border:1px solid rgba(var(--ink-rgb),.08);border-radius:14px;padding:26px;display:flex;flex-direction:column;gap:4px}.summary-row{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px dashed rgba(var(--ink-rgb),.12);font-size:13px;align-items:baseline}.summary-row:last-of-type{border-bottom:none}.summary-row .k{font-size:11px;letter-spacing:.1em;opacity:.55;font-style:italic;font-family:Playfair Display,serif}.summary-row .v{font-weight:500}.summary-total{margin-top:12px;padding-top:14px;border-top:1px solid var(--ink);display:flex;justify-content:space-between;align-items:baseline}.summary-total .k{font-style:italic;font-family:Playfair Display,serif;font-size:13px;opacity:.7}.summary-total .v{font-family:Playfair Display,serif;font-style:italic;font-weight:600;font-size:30px;letter-spacing:-.02em}.footer{position:fixed;bottom:0;left:0;right:0;padding:12px 48px;display:flex;align-items:center;justify-content:space-between;z-index:10;pointer-events:none}.footer>*{pointer-events:auto}.btn-next{margin-left:auto}.btn-back{padding:14px 24px;font-size:13px;font-weight:500;color:rgba(var(--ink-rgb),.7);display:flex;align-items:center;gap:8px;border-radius:999px;border:1px solid rgba(var(--ink-rgb),.2);background:transparent;transition:all .2s;font-family:Playfair Display,serif;font-style:italic}.btn-back:hover{color:var(--ink);border-color:var(--ink)}.btn-next{padding:15px 34px;background:var(--ink);color:var(--on-ink);border-radius:999px;font-family:Playfair Display,serif;font-style:italic;font-weight:500;font-size:15px;letter-spacing:-.01em;display:flex;align-items:center;gap:10px;transition:all .2s}.btn-next:hover:not(:disabled){background:#000;transform:translateY(-1px)}.btn-next:disabled{opacity:.25;cursor:not-allowed}.success{text-align:center;max-width:640px}.success-code{font-size:11px;letter-spacing:.24em;text-transform:uppercase;opacity:.5;margin-top:20px;font-weight:500}@media (max-width: 1060px){.details-wrap,.pay-wrap{grid-template-columns:minmax(220px,280px) 1fr;gap:24px;max-width:780px}.details-wrap .card,.pay-wrap .card{width:260px;flex:0 0 260px}.field input,.field textarea{padding:10px 12px;font-size:13px}.field textarea{min-height:54px}.summary{padding:18px}.summary-row{padding:7px 0;font-size:12px}.summary-total .v{font-size:24px}}@media (max-width: 760px){.details-wrap,.pay-wrap{grid-template-columns:1fr;gap:18px;max-width:520px}.details-wrap .card,.pay-wrap .card{display:none}}@media (max-width: 900px){.nav{padding:12px 16px 0}.stepper{width:100%;justify-content:center;flex-wrap:nowrap;gap:clamp(3px,1.4vw,10px)}.step-pill{padding:0;font-size:clamp(9px,2.6vw,12px);gap:clamp(2px,1vw,5px);white-space:nowrap}.step-num{font-size:clamp(9px,2.6vw,12px)}.stage{justify-content:flex-start;padding:12px 16px 104px}.stage-title{font-size:22px;margin:0 0 14px}.picker-lbl{font-size:20px}.picker{--pick-cell: 58px;--pick-dot: 46px;--pick-visible: 4}.pick-carousel{gap:4px}.row-arrow{width:26px}.card-scene{gap:8px;margin-bottom:14px}.arrow{position:static;transform:none;width:26px;height:32px;border-radius:0;background:transparent;color:var(--ink)}.arrow:hover{background:transparent;transform:none;opacity:.55}.card,.card-scene .card{flex:0 1 auto;width:min(300px,100%,calc(26vh * 4 / 3));height:auto}.amount-grid{grid-template-columns:repeat(2,1fr);gap:10px}.details-wrap,.pay-wrap{grid-template-columns:1fr;gap:18px}.footer{position:static;flex-shrink:0;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#fafaf8d1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-top:1px solid rgba(var(--ink-rgb),.06)}.stage{padding-bottom:16px}.btn-next{padding:12px 26px;font-size:14px}.btn-back{padding:11px 18px}}@media (max-width: 900px) and (max-height: 720px){.stage-title{font-size:20px;margin:0 0 10px}.card,.card-scene .card{width:min(260px,100%,28vh)}.card-scene{gap:8px;margin-bottom:10px}.picker{gap:8px;--pick-cell: 54px;--pick-dot: 42px}.checkbox-row .field-hint{font-size:11px}.stage{padding-bottom:12px}}.svc-hint{font-size:clamp(12px,1.6vh,14px);opacity:.6;margin:0 0 14px;text-align:center;max-width:620px}.svc-empty{font-size:14px;opacity:.6;margin:20px 0;text-align:center}.svc-wrap{width:100%;max-width:620px;max-height:min(58vh,620px);overflow-y:auto;padding-right:4px}.svc-group+.svc-group{margin-top:18px}.svc-group-title{font-family:Playfair Display,serif;font-style:italic;font-size:15px;font-weight:500;opacity:.6;margin:0 0 8px}.svc-list{display:flex;flex-direction:column;gap:8px}.svc-card{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:10px;background:var(--paper);border:1px solid rgba(var(--ink-rgb),.08);transition:border-color .2s}.svc-card.on{border-color:var(--ink)}.svc-card-photo{display:block;padding:0;overflow:hidden}.svc-photo{position:relative;display:block;width:100%;padding:0;border:0;background:rgba(var(--ink-rgb),.05);cursor:pointer}.svc-photo img{width:100%;height:auto;max-height:38vh;object-fit:contain;display:block}.svc-badge{position:absolute;top:10px;right:10px;min-width:26px;padding:3px 8px;border-radius:999px;background:var(--ink);color:var(--on-ink);font-size:12px;line-height:1.5}.svc-photo-foot{display:flex;align-items:center;gap:12px;padding:12px 14px 14px}.svc-body{flex:1 1 auto;min-width:0}.svc-name{font-size:14px;font-weight:500}.svc-note{font-size:12px;opacity:.55;margin-top:2px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.svc-price{font-family:Playfair Display,serif;font-style:italic;font-size:15px;margin-top:4px}.svc-toggle{flex:0 0 auto;padding:7px 14px;border-radius:999px;font-size:12px;background:transparent;border:1px solid rgba(var(--ink-rgb),.25);color:var(--ink);cursor:pointer;transition:all .2s}.svc-toggle:hover{border-color:var(--ink)}.svc-toggle.on{background:var(--ink);color:var(--on-ink);border-color:var(--ink)}.svc-counter{flex:0 0 auto;display:flex;align-items:center;gap:10px}.svc-counter button{width:28px;height:28px;border-radius:50%;border:1px solid rgba(var(--ink-rgb),.25);background:transparent;color:var(--ink);font-size:15px;line-height:1;cursor:pointer}.svc-counter button:disabled{opacity:.3;cursor:default}.svc-counter b{min-width:12px;text-align:center;font-size:14px}.svc-total{display:flex;justify-content:space-between;align-items:baseline;width:100%;max-width:620px;margin-top:14px;padding-top:12px;border-top:1px solid rgba(var(--ink-rgb),.12);font-size:13px}.svc-total span{opacity:.6}.svc-total b{font-family:Playfair Display,serif;font-style:italic;font-weight:600;font-size:clamp(18px,3vh,24px)}:root{--bg: #e8e8e6;--ink: #111111;--on-ink: #fafaf8;--ink-rgb: 17, 17, 17;--paper: #fafaf8;--card-paper: #fafaf8;--muted: rgba(17, 17, 17, .55);--line: rgba(17, 17, 17, .1);--radius: 22px}*{box-sizing:border-box}html{zoom:1.25}html,body,#root{margin:0;padding:0;height:100%;overflow:hidden;background:url(/static/certificates/page-bg.jpg) center / cover no-repeat,var(--bg);color:var(--ink);font-family:Roboto Condensed,Arial Narrow,sans-serif;-webkit-font-smoothing:antialiased}button{font-family:inherit;color:inherit;background:none;border:none;cursor:pointer;padding:0}input,textarea{font-family:inherit;color:inherit}.display{font-family:Playfair Display,serif;font-weight:700;letter-spacing:-.01em}.mono{font-family:Roboto Condensed,sans-serif;letter-spacing:.04em}
