body.bbs-contact { background:#101110; color:#f4f3ef; font-family:'Helvetica Neue',Helvetica,Arial,sans-serif; letter-spacing:0; padding-top:84px; }
.bbs-contact .navbar { min-height:84px; }
.bbs-contact .navbar-topbar { display:none; }
.bbs-contact .navbar-main { min-height:84px; padding:0 4.5%; max-width:1600px; margin:auto; }
.contact-page { max-width:1440px; margin:auto; padding:0 4.5% 48px; }
.contact-page, .contact-page * { box-sizing:border-box; }
.contact-page a { text-decoration:none; }
.contact-page :is(a,button,input,textarea):focus-visible { outline:2px solid #ff9c35; outline-offset:4px; }
.contact-intro { display:grid; grid-template-columns:1.4fr 1fr; align-items:end; gap:60px; padding:75px 0 60px; }
.contact-page .contact-eyebrow { color:#a7aaa4; margin:0 0 24px; font-size:10px; line-height:1.6; letter-spacing:.16em; text-transform:uppercase; }
.contact-intro h1 { color:#f4f3ef; font-size:clamp(52px,6.3vw,88px); line-height:1.04; font-weight:500; letter-spacing:-.065em; margin:0; }
.contact-intro h1 span { color:#ff9c35; }
.contact-intro-text { color:#a7aaa4; font-size:16px; line-height:1.8; justify-self:end; margin:0 0 4px; }
.contact-intro-text a { color:#f4f3ef; text-decoration:underline; text-underline-offset:5px; }
.contact-channels { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.contact-channel { position:relative; display:flex; flex-direction:column; align-items:flex-start; gap:26px; background:#171917; border:1px solid #ffffff24; border-radius:7px; padding:26px; color:#f4f3ef; transition:border-color .2s,background .2s; }
.contact-channel:hover { border-color:#ff9c35; background:#201e18; }
.contact-channel > span { color:#a7aaa4; font-size:10px; letter-spacing:.08em; text-transform:uppercase; }
.contact-channel strong { color:#f4f3ef; font-size:clamp(18px,2vw,28px); font-weight:500; letter-spacing:-.035em; overflow-wrap:anywhere; }
.contact-channel:first-child strong { color:#ffb463; }
.contact-channel small { color:#a7aaa4; font-size:12px; margin-top:auto; }
.contact-channel svg { position:absolute; top:23px; right:23px; width:19px; height:19px; stroke:#ffb463; fill:none; stroke-width:1.5; }
.contact-write { display:grid; grid-template-columns:1fr 1.35fr; gap:80px; padding:70px 0; }
.contact-write h2 { color:#f4f3ef; font-size:40px; line-height:1.1; letter-spacing:-.045em; font-weight:500; margin:0 0 20px; }
.contact-write-intro > p:not(.contact-eyebrow), .contact-area p { color:#a7aaa4; font-size:14px; line-height:1.8; max-width:290px; }
.contact-area { margin-top:45px; padding-top:24px; border-top:1px solid #ffffff24; max-width:300px; }
.contact-area span, .contact-business span { display:block; font-size:10px; color:#a7aaa4; margin-bottom:12px; text-transform:uppercase; letter-spacing:.1em; }
.contact-area strong { color:#f4f3ef; font-size:18px; font-weight:500; }
.bbs-contact .kontakt-form { margin:0; padding:0; max-width:none; background:none; border:0; border-radius:0; box-shadow:none; display:block; }
.contact-form-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.contact-form-group { min-width:0; margin-bottom:22px; }
.contact-form-group label { display:block; color:#d8dad4; font-size:13px; margin-bottom:10px; }
.bbs-contact .kontakt-form :is(input,textarea) { display:block; width:100%; min-width:0; background:#191c19; border:1px solid #ffffff29; border-radius:5px; color:#f4f3ef; padding:14px; font:16px 'Helvetica Neue',Helvetica,Arial,sans-serif; box-shadow:none; }
.bbs-contact .kontakt-form textarea { resize:vertical; min-height:150px; }
.bbs-contact .kontakt-form input[type=file] { font-size:12px; padding:12px; }
.bbs-contact input::file-selector-button { background:#30362e; color:#f4f3ef; border:0; border-radius:3px; padding:9px 12px; margin-right:12px; cursor:pointer; }
.contact-form-help { display:block; color:#a7aaa4; font-size:11px; line-height:1.7; margin-top:8px; }
.bbs-contact :is(.contact-page, .success-modal) .cta-btn { display:inline-flex; align-items:center; justify-content:center; gap:12px; min-height:48px; padding:14px 24px; border:1px solid #ff9c35; border-radius:5px; background:#ff9c35; color:#101110; font:500 14px 'Helvetica Neue',Helvetica,Arial,sans-serif; box-shadow:none; cursor:pointer; }
.bbs-contact :is(.contact-page, .success-modal) .cta-btn:hover { background:#ffb463; transform:none; }
.bbs-contact :is(.contact-page, .success-modal) .cta-btn:disabled { opacity:.65; cursor:wait; }
.contact-business { display:grid; grid-template-columns:1fr 1fr 1.35fr; gap:30px; border-top:1px solid #ffffff24; padding-top:30px; }
.contact-business strong { color:#d8dad4; font-size:14px; line-height:1.7; font-weight:400; }
.bbs-contact .footer { background:#101110; border-top:1px solid #ffffff24; border-radius:0; box-shadow:none; margin:0; padding:24px 4.5%; }
.bbs-contact .footer .legal-links a, .bbs-contact .footer .copyright { color:#a7aaa4; font-size:10px; }
.bbs-contact .contact-toast { position:fixed; bottom:24px; left:50%; transform:translate(-50%,20px); max-width:calc(100% - 32px); background:#272b25; color:#fff; border:1px solid #ff9c35; border-radius:6px; padding:16px 20px; z-index:10001; opacity:0; visibility:hidden; transition:opacity .2s,transform .2s; }
.bbs-contact .contact-toast.is-visible { opacity:1; visibility:visible; transform:translate(-50%,0); }
.bbs-contact .success-modal { display:none; position:fixed; inset:0; z-index:10000; align-items:center; justify-content:center; padding:20px; }
.bbs-contact .success-modal .modal-overlay { position:absolute; inset:0; background:#000b; }
.bbs-contact .success-modal .modal-content { position:relative; background:#191c19; color:#f4f3ef; border:1px solid #ffffff29; border-radius:7px; padding:32px; width:100%; max-width:460px; text-align:center; }
.bbs-contact .success-modal h2 { color:#f4f3ef; }
.bbs-contact .success-modal p { color:#a7aaa4; line-height:1.7; }
@media(max-width:800px) { .contact-intro { gap:30px; } .contact-channels { grid-template-columns:1fr; } .contact-channel { gap:14px; } .contact-channel strong { font-size:28px; } .contact-write { gap:35px; } }
@media(max-width:600px) {
 body.bbs-contact { padding-top:72px; }
 .bbs-contact .navbar, .bbs-contact .navbar-main { min-height:72px; }
 .contact-page { padding:0 22px 36px; }
 .contact-intro { grid-template-columns:1fr; padding:42px 0 30px; gap:24px; }
 .contact-intro h1 { font-size:clamp(46px,12vw,68px); }
 .contact-intro-text { justify-self:start; font-size:14px; }
 .contact-channel { padding:24px; }
 .contact-channel strong { font-size:25px; }
 .contact-write { grid-template-columns:1fr; padding:42px 0; gap:28px; }
 .contact-write h2 { font-size:32px; }
 .contact-area { margin-top:24px; }
 .contact-form-row { grid-template-columns:1fr; gap:0; }
 .bbs-contact .contact-form-submit { width:100%; }
 .contact-business { grid-template-columns:1fr 1fr; gap:24px; }
}
@media(prefers-reduced-motion:reduce) { .contact-channel, .bbs-contact .contact-toast { transition:none; } }
