/* Contact page — isolated styles to avoid regressions elsewhere. */
.ru-contact-page{background:#080808;color:var(--ru-white)}

.ru-contact-hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#050505 0%,#090909 58%,#21020a 100%);border-bottom:1px solid rgb(255 255 255 / .10)}
.ru-contact-hero::before{content:"";position:absolute;inset:auto -8rem -14rem auto;width:34rem;height:34rem;border:4rem solid rgb(255 0 49 / .08);transform:rotate(28deg);pointer-events:none}
.ru-contact-hero__grid{display:grid;gap:1.4rem;align-items:stretch;padding-block:clamp(3rem,7vw,5.75rem)}
.ru-contact-hero__copy{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;max-width:44rem;padding-block:1rem}
.ru-contact-hero h1{max-width:10.5ch;margin-bottom:1.1rem;font-size:clamp(3.15rem,8vw,6.75rem);color:var(--ru-white)}
.ru-contact-hero__copy>p:not(.ru-eyebrow){max-width:39rem;margin-bottom:1.5rem;color:var(--ru-grey-100);font-size:clamp(1rem,1.8vw,1.2rem)}
.ru-contact-hero .ru-button .ru-icon{width:1.1rem;height:1.1rem;margin-right:.45rem}
.ru-contact-hero__media{position:relative;min-height:20rem;margin:0;overflow:hidden;border:1px solid rgb(255 255 255 / .14);border-radius:var(--ru-radius-lg);background:#111;box-shadow:0 2rem 5rem rgb(0 0 0 / .35)}
.ru-contact-hero__media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgb(0 0 0 / .03),rgb(0 0 0 / .45))}
.ru-contact-hero__media img{width:100%;height:100%;min-height:20rem;object-fit:cover;object-position:center 25%}

.ru-contact-channels{padding-block:clamp(3rem,6vw,5.25rem);background:var(--ru-paper);color:var(--ru-black)}
.ru-contact-heading{display:grid;gap:1rem;margin-bottom:1.75rem}
.ru-contact-heading h2{max-width:13ch;margin:0}
.ru-contact-heading>p{max-width:35rem;margin:0;color:var(--ru-grey-700)}
.ru-contact-channel-grid{display:grid;gap:1rem}
.ru-contact-channel{position:relative;display:flex;flex-direction:column;min-height:16rem;padding:1.35rem;border:1px solid var(--ru-grey-300);border-radius:var(--ru-radius-md);background:var(--ru-white);color:var(--ru-black);text-decoration:none;transition:transform var(--ru-transition),border-color var(--ru-transition),box-shadow var(--ru-transition)}
.ru-contact-channel:hover{transform:translateY(-3px);border-color:var(--ru-red);box-shadow:0 1rem 2.5rem rgb(0 0 0 / .10)}
.ru-contact-channel--featured{background:linear-gradient(145deg,#111 0%,#170209 100%);border-color:rgb(255 0 49 / .45);color:var(--ru-white)}
.ru-contact-channel__icon{display:grid;place-items:center;width:3rem;height:3rem;margin-bottom:1.25rem;border:1px solid currentColor;border-radius:999px;color:var(--ru-red)}
.ru-contact-channel__icon .ru-icon{width:1.35rem;height:1.35rem}
.ru-contact-channel__label{margin-bottom:.35rem;color:var(--ru-red);font-size:.7rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.ru-contact-channel strong{max-width:100%;font-family:var(--ru-font-display);font-size:clamp(1.35rem,2.2vw,2rem);line-height:1.05;overflow-wrap:anywhere}
.ru-contact-channel__action{display:flex;align-items:center;gap:.35rem;margin-top:auto;padding-top:1.4rem;font-size:.72rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}
.ru-contact-channel__action .ru-icon{width:1rem;height:1rem}

.ru-contact-workspace{padding-block:clamp(3.5rem,7vw,6.5rem);background:#0a0a0a;color:var(--ru-white)}
.ru-contact-workspace__grid{display:grid;gap:2rem;align-items:start}
.ru-contact-help h2{max-width:11ch;margin-bottom:1rem}
.ru-contact-help>p:not(.ru-eyebrow){max-width:34rem;color:var(--ru-grey-300)}
.ru-contact-help__links{display:grid;gap:.65rem;margin-top:1.5rem}
.ru-contact-help__links a{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0;border-bottom:1px solid rgb(255 255 255 / .14);color:var(--ru-white);text-decoration:none}
.ru-contact-help__links a:hover{color:var(--ru-red)}
.ru-contact-help__links strong,.ru-contact-help__links small{display:block}
.ru-contact-help__links strong{font-size:.95rem;text-transform:uppercase}
.ru-contact-help__links small{margin-top:.18rem;color:var(--ru-grey-300);font-size:.78rem}
.ru-contact-help__links .ru-icon{width:1.1rem;height:1.1rem}
.ru-contact-socials{margin-top:2rem;padding:1.2rem;border:1px solid rgb(255 255 255 / .14);border-radius:var(--ru-radius-md);background:rgb(255 255 255 / .035)}
.ru-contact-socials__title{margin-bottom:.75rem;color:var(--ru-grey-100);font-size:.76rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.ru-contact-socials>div{display:flex;flex-wrap:wrap;gap:.5rem}
.ru-contact-socials a{display:flex;align-items:center;gap:.4rem;padding:.55rem .7rem;border:1px solid rgb(255 255 255 / .16);border-radius:999px;color:var(--ru-grey-100);font-size:.68rem;font-weight:850;text-decoration:none;text-transform:uppercase}
.ru-contact-socials a:hover{border-color:var(--ru-red);color:var(--ru-white)}
.ru-contact-socials .ru-icon{width:1rem;height:1rem}

.ru-contact-form-card{scroll-margin-top:8rem;padding:clamp(1.3rem,3vw,2.25rem);border:1px solid var(--ru-grey-300);border-radius:var(--ru-radius-lg);background:var(--ru-paper);color:var(--ru-black);box-shadow:0 2rem 5rem rgb(0 0 0 / .28)}
.ru-contact-form-card h2{max-width:11ch;margin-bottom:.85rem}
.ru-contact-form-card__intro{max-width:40rem;margin-bottom:1.4rem;color:var(--ru-grey-700)}
.ru-contact-notice{margin-bottom:1rem;padding:.85rem 1rem;border:1px solid;border-radius:var(--ru-radius-sm);font-size:.9rem;font-weight:750}
.ru-contact-notice--success{border-color:#2e8b57;background:#eefaf3;color:#14532d}
.ru-contact-notice--error{border-color:#c00022;background:#fff1f4;color:#7e0016}
.ru-contact-form{display:grid;gap:1rem}
.ru-contact-form__row{display:grid;gap:1rem}
.ru-contact-form label>span:first-child{display:block;margin-bottom:.4rem;font-size:.76rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}
.ru-contact-form input,.ru-contact-form select,.ru-contact-form textarea{width:100%;min-height:3rem;padding:.72rem .8rem;border:1px solid #c9c5bf;border-radius:var(--ru-radius-sm);background:var(--ru-white);color:var(--ru-black);outline:none;transition:border-color var(--ru-transition),box-shadow var(--ru-transition)}
.ru-contact-form textarea{min-height:10rem;resize:vertical}
.ru-contact-form input:focus,.ru-contact-form select:focus,.ru-contact-form textarea:focus{border-color:var(--ru-red);box-shadow:0 0 0 3px rgb(255 0 49 / .13)}
.ru-contact-privacy-layer{padding:1rem;border:1px solid #c9c5bf;border-left:3px solid var(--ru-red);border-radius:var(--ru-radius-sm);background:#f4f1ec;color:var(--ru-grey-700);font-size:.82rem;line-height:1.55}
.ru-contact-privacy-layer p{margin:0}
.ru-contact-privacy-layer p+p{margin-top:.35rem}
.ru-contact-privacy-layer strong{color:var(--ru-black);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase}
.ru-contact-form__privacy{display:grid!important;grid-template-columns:auto 1fr;gap:.65rem;align-items:start;color:var(--ru-grey-700);font-size:.83rem}
.ru-contact-form__privacy input{width:1.1rem;height:1.1rem;min-height:0;margin-top:.18rem;accent-color:var(--ru-red)}
.ru-contact-form__privacy span{margin:0!important;font-size:inherit!important;font-weight:500!important;letter-spacing:0!important;text-transform:none!important}
.ru-contact-form__privacy a{color:var(--ru-red-dark);font-weight:800}
.ru-contact-form__submit{justify-self:start;gap:.45rem;min-width:12rem}
.ru-contact-form__submit .ru-icon{width:1rem;height:1rem}
.ru-contact-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}

.ru-contact-cta{padding-block:clamp(2rem,4vw,3.5rem);background:linear-gradient(135deg,#b50020,#ff0031);color:var(--ru-white)}
.ru-contact-cta__inner{display:flex;flex-direction:column;align-items:flex-start;gap:1rem}
.ru-contact-cta .ru-eyebrow{margin-bottom:.25rem;color:var(--ru-white);opacity:.78}
.ru-contact-cta h2{margin:0;color:var(--ru-white)}
.ru-contact-cta .ru-button{gap:.45rem}
.ru-contact-cta .ru-button .ru-icon{width:1.1rem;height:1.1rem}

@media (min-width:48rem){
  .ru-contact-heading{grid-template-columns:1.15fr .85fr;align-items:end}
  .ru-contact-channel-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .ru-contact-form__row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ru-contact-cta__inner{flex-direction:row;align-items:center;justify-content:space-between}
}

@media (min-width:64rem){
  .ru-contact-hero__grid{grid-template-columns:minmax(0,1.05fr) minmax(22rem,.95fr);gap:clamp(2rem,5vw,5rem)}
  .ru-contact-hero__media{min-height:31rem}
  .ru-contact-hero__media img{min-height:31rem}
  .ru-contact-workspace__grid{grid-template-columns:minmax(20rem,.8fr) minmax(0,1.2fr);gap:clamp(3rem,6vw,6rem)}
  .ru-contact-help{position:sticky;top:8rem}
}

@media (max-width:35rem){
  .ru-contact-hero__grid{padding-block:2.5rem}
  .ru-contact-hero h1{font-size:clamp(2.8rem,15vw,4.2rem)}
  .ru-contact-hero__media{min-height:16rem}
  .ru-contact-hero__media img{min-height:16rem;object-position:center 20%}
  .ru-contact-channel{min-height:13.5rem}
  .ru-contact-form-card{border-radius:var(--ru-radius-md)}
  .ru-contact-form__submit{width:100%}
}
