.contact-page { background:var(--paper); color:var(--ink); }.contact-header { position:sticky; top:0; color:var(--ink); background:rgba(243,240,232,.93); border-color:var(--dark-line); backdrop-filter:blur(14px); }.contact-header .brand-seal { color:var(--paper); }.contact-header .brand-copy small { color:#77736d; }.contact-header .desktop-nav .active { color:var(--red); }.contact-header .header-cta { border-color:var(--dark-line); }.contact-header .menu-toggle { color:var(--ink); }
.contact-main { padding-top:110px; padding-bottom:125px; }.contact-hero { display:flex; align-items:end; justify-content:space-between; gap:60px; min-height:425px; padding-bottom:70px; border-bottom:1px solid var(--dark-line); }.contact-hero h1 { margin:0; font:800 clamp(100px, 13vw, 180px)/.7 var(--display); text-transform:uppercase; letter-spacing:-.065em; }.contact-hero h1 em, .form-heading h2 em { color:var(--red); font-style:normal; }.contact-hero-note { max-width:285px; margin:0 0 10px; color:#77736d; font-size:16px; line-height:1.5; }.contact-layout { display:grid; grid-template-columns:1.05fr .95fr; gap:110px; padding-top:90px; }.contact-form { display:flex; flex-direction:column; gap:25px; max-width:570px; }.form-heading { margin-bottom:12px; }.form-heading .eyebrow { color:#77736d; }.form-heading h2 { margin:0; font:800 clamp(70px, 8vw, 115px)/.72 var(--display); text-transform:uppercase; letter-spacing:-.055em; }.contact-form label { display:block; font:700 10px var(--body); text-transform:uppercase; letter-spacing:.12em; }.contact-form input, .contact-form textarea, .contact-form select { display:block; width:100%; margin-top:10px; padding:14px 0; border:0; border-bottom:1px solid var(--dark-line); outline:none; background:transparent; color:var(--ink); font:16px var(--body); }.contact-form textarea { resize:vertical; }.contact-form select { border-radius:0; appearance:none; background-image:linear-gradient(45deg, transparent 50%, var(--red) 50%),linear-gradient(135deg, var(--red) 50%, transparent 50%); background-position:calc(100% - 8px) 20px,100% 20px; background-size:8px 8px,8px 8px; background-repeat:no-repeat; }.contact-form input:focus, .contact-form textarea:focus, .contact-form select:focus { border-color:var(--red); }.contact-form input::placeholder, .contact-form textarea::placeholder { color:#aaa49b; }.contact-form button { align-self:flex-start; border:0; }.form-note { margin:0; color:#77736d; font-size:11px; line-height:1.5; }.contact-details { display:flex; flex-direction:column; gap:43px; padding-top:55px; }.messenger-link { display:grid; grid-template-columns:47px 1fr 25px; align-items:center; gap:16px; padding:18px 0; border-top:1px solid var(--dark-line); border-bottom:1px solid var(--dark-line); transition:color .25s, padding .25s; }.messenger-link:hover { padding-left:13px; color:var(--red); }.messenger-icon { display:grid; place-items:center; width:43px; height:43px; border-radius:50%; background:#1787f2; color:#fff; font-size:21px; }.messenger-link strong { display:block; font:700 23px/1 var(--display); text-transform:uppercase; }.messenger-link small { display:block; margin-top:6px; color:#77736d; font-size:11px; }.messenger-arrow { justify-self:end; font-size:25px; }.detail-block { padding-left:18px; border-left:2px solid var(--red); }.detail-label { display:block; margin-bottom:12px; color:#77736d; font:700 10px var(--body); text-transform:uppercase; letter-spacing:.13em; }.detail-block p, .detail-block a { display:block; margin:0; color:var(--ink); font-size:15px; line-height:1.55; }.detail-block a + a { margin-top:3px; }.detail-block a:not(.map-link):hover { color:var(--red); }.map-link { margin-top:14px !important; font:700 13px var(--display) !important; text-transform:uppercase; }.map-link:hover { color:var(--red) !important; }
@media (max-width:800px) { .contact-main { padding-top:75px; padding-bottom:85px; }.contact-hero { display:block; min-height:auto; padding-bottom:50px; }.contact-hero h1 { font-size:clamp(90px, 25vw, 135px); }.contact-hero-note { margin-top:40px; max-width:330px; }.contact-layout { display:block; padding-top:60px; }.contact-form { max-width:none; }.contact-details { padding-top:85px; gap:35px; }.messenger-link strong { font-size:21px; } }
.messenger-icon { display:block !important; width:43px; height:43px; border-radius:50%; object-fit:cover; }
.contact-person { display:block; margin-top:10px; color:#77736d; font:700 10px var(--body); text-transform:uppercase; letter-spacing:.12em; }
.social-links { display:flex; gap:24px; }.facebook-link, .instagram-link { align-self:flex-start; padding-bottom:6px; border-bottom:1px solid var(--dark-line); font:700 13px var(--display); text-transform:uppercase; letter-spacing:.04em; }.facebook-link span, .instagram-link span { margin-left:12px; color:var(--red); font-size:18px; }.facebook-link:hover, .instagram-link:hover { color:var(--red); }
