#contacts-panel{color:#e8eee6;max-width:960px;margin:auto;font-size:15px;line-height:1.6}#contacts-panel *{box-sizing:border-box}#contacts-panel h2{font-size:clamp(27px,4vw,43px);line-height:1.12;letter-spacing:-1px;margin:20px 0}#contacts-panel h3{font-size:23px;margin:9px 0}#contacts-panel p{font-size:14px;line-height:1.7;color:#c5d6d1}#contacts-panel button{font:inherit;cursor:pointer;min-height:44px}#contacts-panel button:focus-visible{outline:2px solid #e1c591;outline-offset:4px}#contacts-panel button:disabled{cursor:default;opacity:.45}.contacts-topline{display:flex;justify-content:space-between;gap:12px;color:#bbd5c7;font-size:10px;letter-spacing:1.6px}.contacts-lead{max-width:630px}.contacts-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:25px 0}.contacts-person{padding:0!important;text-align:left;background:#102f36;border:1px solid #b9d5bd2b;border-radius:20px;overflow:hidden;transition:transform .2s,box-shadow .2s}.contacts-person:hover{transform:translateY(-4px);box-shadow:0 16px 30px #0005}.contacts-cover{height:230px;position:relative;overflow:hidden;background:linear-gradient(0deg,#102f36,transparent 75%),var(--contact-scene) center/cover}.contacts-portrait{width:220px;height:220px;position:absolute;left:50%;transform:translateX(-50%);bottom:0;background-image:url('assets/contacts-portraits.png');background-size:300% auto;background-repeat:no-repeat;filter:drop-shadow(0 7px 15px #0007)}.contacts-portrait.irina{background-position:0% top}.contacts-portrait.vera{background-position:50% top}.contacts-portrait.lev{background-position:100% top}.contacts-label{position:absolute;bottom:10px;left:12px;padding:6px 9px;border-radius:20px;background:#0b242edb;color:#dcebbf;font-size:9px;letter-spacing:1.2px}.contacts-card-copy{padding:17px}.contacts-card-copy p{min-height:48px;margin:0}.contacts-card-copy>span{font-size:12px;color:#ddc895}.contacts-dots{display:flex;gap:5px;margin:16px 0}.contacts-dots i{height:3px;flex:1;background:#b8d3c326}.contacts-dots i.done{background:#deca98}.contacts-collection{border-top:1px solid #b5d8c52b;padding-top:20px;margin-top:30px}.contacts-collection>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.contacts-souvenir{display:flex;flex-direction:column;align-items:flex-start;text-align:left;background:#071e2880;border:1px solid #bdd2bb33;border-radius:13px;padding:16px!important;gap:7px;color:#d9e5dd}.contacts-souvenir>span{font-size:26px;color:#dfc897}.contacts-souvenir small{font-size:11px}.contacts-souvenir[aria-pressed=true]{border-color:#dfc897;background:#e4c78c12}.contacts-disclaimer{font-size:11px!important;color:#a0b9b6!important;margin:25px 0 0}.contacts-back{background:transparent;border:0;color:#c9d9cf;padding:10px 0;text-align:left}.contacts-detail-head{display:flex;gap:20px;align-items:center;margin:18px 0}.contacts-detail-head h2{margin:5px 0!important}.contacts-mini-portrait{position:relative;width:110px;height:110px;overflow:hidden;border-radius:50%;background:radial-gradient(ellipse at top,#abc3a980,#193e41)}.contacts-mini-portrait .contacts-portrait{width:110px;height:110px;bottom:-5px}.contacts-place{font-size:11px;color:#b7d0c6;letter-spacing:.7px}.contacts-detail-head>div:last-child{flex:1}#contacts-panel blockquote{margin:15px 0 20px;padding:22px 25px;border-left:2px solid #d6bd86;background:linear-gradient(90deg,#d6bd8611,transparent);font-family:Georgia,serif;font-size:23px;line-height:1.5;color:#ece4d1}.contacts-memory{font-size:12px!important;color:#dcc590!important}.contacts-chapters{display:flex;gap:8px;margin:25px 0}.contacts-chapters>span{flex:1;border-top:2px solid #cee3cb33;padding-top:10px;color:#88a6a2}.contacts-chapters small{display:block;font-size:11px}.contacts-chapters .done{color:#cee0c1;border-color:#cee0c1}.contacts-chapters .current{color:#ead3a0;border-color:#ead3a0}.contacts-request{border:1px solid #a9caba38;border-radius:18px;padding:24px;background:#102c3580}.contacts-reward{font-size:13px;color:#e5d2a8}.contacts-reward span{color:#a9bfba}.contacts-paths{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}.contacts-paths button{border:1px solid #b9d4bf40;border-radius:12px;background:#0d252c;padding:18px;text-align:left;color:#e5ece1}.contacts-paths button>span{display:block;color:#d9c391;font-size:9px;letter-spacing:1px;margin-bottom:10px}.contacts-paths button b{font-size:18px}.contacts-paths button small{font-size:11px;color:#aac1ba}.contacts-active{margin-top:22px}.contacts-objective{font-size:17px!important;color:#e0e8dd!important}.contacts-progress{display:flex;align-items:center;gap:15px;margin:16px 0}.contacts-progress progress{width:100%;height:7px;accent-color:#dfc891}.contacts-progress span{white-space:nowrap;font-size:12px}.contacts-active>.primary{display:block;width:100%;margin:12px 0}.contacts-visit{display:grid;gap:10px}.contacts-visit h4{font-size:19px;margin:4px 0}.contacts-visit button{background:#123640;border:1px solid #a2c7b344;border-radius:10px;text-align:left;padding:14px;color:#edf0e4}.contacts-confirm,.contacts-error{border:1px solid #dfba84;background:#382f24;padding:20px;border-radius:12px;margin-top:20px}.contacts-confirm button{padding:12px;margin:5px}.contacts-finish{padding:20px;background:#afcea612;border-radius:14px}.contacts-keepsake{display:flex;gap:15px;padding:18px;border:1px solid #cdb87f55;border-radius:14px;background:#d9be8410;color:#e6d4a5}.contacts-keepsake>span{font-size:30px}.contacts-keepsake div>*{display:block}.contacts-keepsake small{font-size:9px;letter-spacing:1.3px}.contacts-keepsake div>span{font-size:11px;color:#b5cac1}@media(max-width:600px){.contacts-grid{grid-template-columns:1fr;gap:12px}.contacts-person{display:grid;grid-template-columns:125px 1fr}.contacts-cover{height:175px}.contacts-portrait{width:165px;height:165px}.contacts-label{font-size:7px;left:5px;max-width:118px}.contacts-card-copy{padding:13px}.contacts-card-copy h3{font-size:24px!important}.contacts-card-copy p{font-size:12px!important;min-height:auto}.contacts-collection>div{grid-template-columns:1fr}.contacts-souvenir{display:grid;grid-template-columns:32px 1fr}.contacts-souvenir small{grid-column:2}.contacts-paths{grid-template-columns:1fr}.contacts-request{padding:17px}.contacts-mini-portrait{width:80px;height:80px}.contacts-mini-portrait .contacts-portrait{width:80px;height:80px}.contacts-detail-head{gap:13px}.contacts-topline{font-size:8px;letter-spacing:.7px}#contacts-panel blockquote{font-size:20px;padding:15px}.contacts-chapters small{font-size:10px}}@media(prefers-reduced-motion:reduce){.contacts-person{transition:none}.contacts-person:hover{transform:none}}

.contacts-souvenir.owned:before{content:'';display:block;width:100%;height:80px;border:5px solid #e6ddc3;box-shadow:0 5px 15px #0004;background:var(--souvenir-art) center/cover;transform:rotate(-2deg);margin:3px 0 8px}.contacts-keepsake>span{display:block;width:70px;min-width:70px;height:60px;color:transparent;border:4px solid #e6ddc3;background:var(--souvenir-art) center/cover;transform:rotate(-4deg);box-shadow:0 4px 10px #0005}[data-contact-souvenir=coffeeframe]{--souvenir-art:url('assets/gelendzhik-white-bride.webp')}[data-contact-souvenir=galleryframe]{--souvenir-art:url('assets/city-platan-alley.webp')}[data-contact-souvenir=bayframe]{--souvenir-art:url('assets/city-tolsty-cape.webp')}@media(max-width:600px){.contacts-souvenir.owned:before{grid-column:1 / -1;height:100px}}

.contacts-visit-scene{width:100%;height:180px;object-fit:cover;border-radius:12px;margin:8px 0}.contacts-visit>span{font-size:12px;color:#c9d7cc}

.contacts-unlock{margin-top:12px;padding:12px 16px;border-radius:10px;background:#dfc89110;border:1px solid #dfc89133}.contacts-unlock p{margin:0;font-size:12px!important}.contacts-unlock button{color:#ead3a0;font-weight:600}

#modal:has(#contacts-panel){width:min(1000px,calc(100vw - 48px));max-width:1000px}@media(max-width:600px){#modal:has(#contacts-panel){width:calc(100vw - 24px);max-width:calc(100vw - 24px);padding:24px 16px}}
