/* powered by yagodabumi */
.contacts-page{--contacts-card-bg:radial-gradient(circle at 90% 0,rgba(217,170,255,0.14),transparent 26%),linear-gradient(145deg,#211d31,#0d0a18 72%,#100c1d);--contacts-card-shadow:0 26px 78px rgba(3,2,10,0.34),inset 0 1px rgba(255,255,255,0.04);--contacts-title-gradient:linear-gradient(112deg,#fff,#f6eaff 52%,#d9aaff);--contacts-button-bg:#191627;--contacts-button-hover-bg:#26203a;--contacts-label-color:rgba(248,239,255,0.82);width:calc(100% + var(--site-main-side) + var(--site-main-side));margin-left:calc(0px - var(--site-main-side));padding:26px clamp(24px,4vw,76px) 28px;box-sizing:border-box;overflow:hidden}html[data-theme="light"] .contacts-page{--contacts-card-bg:radial-gradient(circle at 90% 0,rgba(134,73,190,0.14),transparent 28%),linear-gradient(145deg,#ffffff,#f4ecfa 72%,#e9dcf3);--contacts-card-shadow:0 26px 68px rgba(65,37,91,0.12),inset 0 1px rgba(255,255,255,0.82);--contacts-title-gradient:linear-gradient(112deg,#281635,#6f32b9 55%,#a963f0);--contacts-button-bg:#fbf8fd;--contacts-button-hover-bg:#f0e5f7;--contacts-label-color:rgba(36,23,47,0.76)}.contacts-container{position:relative;width:100%;margin:0;padding:clamp(28px,4vw,56px);box-sizing:border-box;overflow:hidden;border:1px solid var(--site-border);border-radius:28px;background:var(--contacts-card-bg);box-shadow:var(--contacts-card-shadow)}.contacts-container::before{content: '';position:absolute;top:0;right:12%;left:12%;height:1px;background:linear-gradient(90deg,transparent,rgba(217,170,255,0.68),transparent);box-shadow:0 0 18px rgba(123,74,227,0.42)}.contacts-header{margin-bottom:34px}.contacts-header h1{max-width:min(100%,1380px);margin:0;color:var(--site-text);font-size:clamp(30px,4.2vw,58px);font-weight:800;line-height:1.05;letter-spacing:-0.045em;background:var(--contacts-title-gradient);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 12px 30px rgba(123,74,227,0.2))}.contacts-content{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,0.8fr);gap:30px}.contact-section{min-width:0}.contact-section + .contact-section{padding-left:30px;border-left:1px solid var(--site-border)}.contact-section h2{display:flex;align-items:center;gap:10px;margin:0 0 18px;color:var(--site-text);font-size:14px;font-weight:700;line-height:1.35;letter-spacing:-0.025em;text-shadow:none}.contact-section h2::before{content: '';width:7px;height:7px;flex:0 0 auto;border-radius:50%;background:var(--site-accent);box-shadow:0 0 12px rgba(217,170,255,0.58)}.contact-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.contact-btn{min-width:0;min-height:54px;display:flex;align-items:center;gap:11px;padding:11px 15px;box-sizing:border-box;border:1px solid var(--site-border);border-radius:15px;background:var(--contacts-button-bg);color:var(--site-text);font-size:14px;font-weight:600;text-decoration:none;text-shadow:none;transition:color 0.16s ease,border-color 0.16s ease,background 0.16s ease,box-shadow 0.16s ease}.contact-btn:hover{border-color:var(--site-border-strong);background:var(--contacts-button-hover-bg);color:var(--site-text);box-shadow:0 10px 28px rgba(123,74,227,0.14)}.contact-icon{width:24px;height:24px;flex:0 0 auto;object-fit:contain;filter:drop-shadow(0 0 7px rgba(217,170,255,0.2))}.contact-btn span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-rating-section{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;margin-top:34px;padding-top:26px;border-top:1px solid var(--site-border)}.project-rating-stars{display:flex;align-items:center;gap:6px}.project-rating-star{width:34px;height:34px;display:grid;place-items:center;padding:0;border:0;border-radius:10px;background:transparent;cursor:pointer}.project-rating-star img{width:28px;height:28px;object-fit:contain;transition:filter 0.16s ease}.project-rating-star:hover img,.project-rating-star:focus-visible img{filter:drop-shadow(0 0 9px rgba(255,215,106,0.58))}.project-rating-my,.project-rating-total{color:var(--site-text);font-size:13px;font-weight:600;line-height:1.5;text-shadow:none}.project-rating-total{color:var(--site-accent);text-align:right}.geoip-container{width:100%;margin:26px 0 0;padding-top:26px;border-top:1px solid var(--site-border)}.geoip-info{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}.geoip-item{min-width:0;display:flex;flex-direction:column;gap:7px;padding:4px 18px;text-align:left}.geoip-item:not(:last-child){border-right:1px solid var(--site-border)}.geoip-label{color:var(--contacts-label-color);font-size:12px;font-weight:600;letter-spacing:0.06em;text-transform:uppercase;text-shadow:none}.geoip-value{min-width:0;overflow:hidden;color:var(--site-text);font-size:14px;font-weight:600;line-height:1.5;text-overflow:ellipsis;white-space:nowrap;text-shadow:none}.geoip-value[data-state="yes"]{color:#72e5ad}.geoip-value[data-state="no"]{color:#ff8b9d}@media (max-width:1100px){.contacts-content{grid-template-columns:1fr}.contact-section + .contact-section{padding:24px 0 0;border-top:1px solid var(--site-border);border-left:0}.geoip-info{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 0}.geoip-item:nth-child(3){border-right:0}}@media (max-width:768px){main:has(.contacts-page){width:100%;margin:0;padding:0}.contacts-page{width:100%;margin-left:0}}@media (max-width:700px){.contacts-page{padding:0 0 calc(16px + var(--app-safe-bottom))}.contacts-container{padding:24px max(16px,var(--app-safe-right)) 24px max(16px,var(--app-safe-left));border:0;border-top:1px solid var(--site-border);border-radius:0;background:transparent;box-shadow:none}.contacts-container::before{display:none}.contacts-header{margin-bottom:24px}.contacts-header h1{font-size:clamp(28px,11vw,42px)}.contacts-content{gap:22px}.contact-section h2{font-size:12px}.contact-buttons{grid-template-columns:1fr}.contact-btn{min-height:52px;font-size:14px}.project-rating-section{grid-template-columns:1fr;justify-items:center;gap:8px;margin-top:26px;padding-top:22px;text-align:center}.project-rating-total{text-align:center}.geoip-container{margin-top:22px;padding-top:22px}.geoip-info{grid-template-columns:1fr;gap:0}.geoip-item{flex-direction:row;justify-content:space-between;gap:16px;padding:11px 0;border-right:0 !important;border-bottom:1px solid var(--site-border)}.geoip-item:last-child{border-bottom:0}.geoip-label,.geoip-value{font-size:13px}.geoip-value{font-size:14px}.geoip-value{text-align:right}}