.one-nl-wrap {
display:flex;flex-direction:column;gap:.75rem;max-width:480px;
}
.one-nl-title {
font-size:1.25rem;font-weight:700;color:#191919;margin:0;
}
.one-nl-sub {
font-size:.9rem;color:#555;margin:0;
}
.one-nl-row {
display:flex;gap:.5rem;flex-wrap:wrap;
}
.one-nl-email {
flex:1 1 220px;padding:.7rem 1rem;border:1.5px solid #ddd;border-radius:6px;
font-size:.9rem;outline:none;transition:border-color .2s;
}
.one-nl-email:focus { border-color:#e53935; }
.one-nl-btn {
padding:.7rem 1.4rem;background:#e53935;color:#fff;border:none;border-radius:6px;
font-size:.9rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .2s;
}
.one-nl-btn:hover { background:#c62828; }
.one-nl-msg {
font-size:.85rem;min-height:1.2em;transition:all .3s;
}
.one-nl-msg.ok    { color:#2e7d32; }
.one-nl-msg.error { color:#c62828; } .one-nl-popup {
position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;
}
.one-nl-backdrop {
position:absolute;inset:0;background:rgba(0,0,0,.5);backdrop-filter:blur(3px);cursor:pointer;
}
.one-nl-box {
position:relative;z-index:1;background:#fff;border-radius:16px;padding:2rem;max-width:440px;
width:calc(100% - 2rem);box-shadow:0 20px 60px rgba(0,0,0,.25);text-align:center;
max-height:calc(100vh - 2rem);overflow-y:auto;
}
.one-nl-close {
position:absolute;top:.75rem;right:.75rem;background:none;border:none;cursor:pointer;
color:#999;padding:.25rem;border-radius:4px;display:flex;align-items:center;justify-content:center;
}
.one-nl-close:hover { color:#333; }
.one-nl-popup-icon { font-size:2.5rem;line-height:1;margin-bottom:.75rem; }
.one-nl-popup-title { margin:0 0 .4rem;font-size:1.4rem;font-weight:700;color:#191919; }
.one-nl-popup-sub   { margin:0 0 1.25rem;color:#555;font-size:.9rem; }
.one-nl-popup-form .one-nl-row { justify-content:center; }
.one-nl-popup-hint  { margin:.75rem 0 0;font-size:.75rem;color:#aaa; } .one-push-popup {
position:fixed;bottom:1.25rem;right:1.25rem;z-index:99998;
background:#fff;border-radius:12px;box-shadow:0 8px 32px rgba(0,0,0,.18);
padding:.9rem 1rem;display:flex;align-items:center;gap:.75rem;
max-width:360px;border:1.5px solid #f0f0f0;
animation:one-push-slide .3s ease;
}
@keyframes one-push-slide {
from { opacity:0; transform:translateY(16px); }
to   { opacity:1; transform:translateY(0); }
}
.one-push-icon { font-size:1.5rem;flex-shrink:0; }
.one-push-content {
flex:1;display:flex;flex-direction:column;gap:.1rem;min-width:0;
}
.one-push-content strong { font-size:.875rem;color:#191919;font-weight:700; }
.one-push-content span   { font-size:.775rem;color:#666; }
.one-push-actions {
display:flex;flex-direction:column;gap:.35rem;flex-shrink:0;
}
.one-push-btn-yes {
padding:.4rem .8rem;background:#e53935;color:#fff;border:none;border-radius:6px;
font-size:.775rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .2s;
}
.one-push-btn-yes:hover { background:#c62828; }
.one-push-btn-no {
padding:.4rem .8rem;background:transparent;color:#999;border:1px solid #ddd;
border-radius:6px;font-size:.775rem;cursor:pointer;transition:all .2s;
}
.one-push-btn-no:hover { border-color:#bbb;color:#555; }
@media (max-width:480px) {
.one-push-popup { left:.75rem;right:.75rem;max-width:none; }
} .one-contact-wrap { max-width: 640px; margin: 0 auto; }
.one-contact-form p { margin: 0 0 1rem; }
.one-contact-form label { display: block; font-weight: 600; font-size: .9rem; margin-bottom: .3rem; color: #191919; }
.one-contact-form input[type=text],
.one-contact-form input[type=email],
.one-contact-form select,
.one-contact-form textarea {
width: 100%;
padding: .65rem .85rem;
border: 1.5px solid #d8d8d8;
border-radius: 8px;
font-size: .95rem;
color: #191919;
background: #fff;
box-sizing: border-box;
transition: border-color .18s;
font-family: inherit;
}
.one-contact-form input[type=text]:focus,
.one-contact-form input[type=email]:focus,
.one-contact-form select:focus,
.one-contact-form textarea:focus {
outline: none;
border-color: #00adff;
}
.one-contact-form input[type=file] {
width: 100%;
padding: .5rem .3rem;
font-size: .88rem;
color: #555;
box-sizing: border-box;
}
.one-contact-form textarea { min-height: 110px; resize: vertical; }
.one-contact-section-label { margin-top: 1.5rem !important; font-size: 1rem; }
.one-contact-btn {
display: inline-block;
padding: .75rem 2.2rem;
background: #191919;
color: #fff;
border: none;
border-radius: 8px;
font-size: 1rem;
font-weight: 700;
cursor: pointer;
transition: background .18s;
font-family: inherit;
}
.one-contact-btn:hover { background: #00adff; }
.one-contact-btn:disabled { opacity: .6; cursor: default; }
.one-contact-msg { margin-top: .8rem; padding: .7rem 1rem; border-radius: 6px; font-size: .95rem; font-weight: 600; }
.one-contact-msg.one-contact-ok  { background: #eafaf1; color: #1a7a4a; border: 1px solid #b6e8cf; }
.one-contact-msg.one-contact-err { background: #fef2f2; color: #b91c1c; border: 1px solid #fbc8c8; }