.contact-page{--contact-bg:#efede8;--contact-ink:#121211;--contact-red:#c93c36;background:var(--contact-bg);color:var(--contact-ink)}
.contact-intro{min-height:540px;padding-top:clamp(5rem,9vw,9rem);padding-bottom:clamp(4rem,7vw,7rem);display:grid;grid-template-columns:minmax(130px,.35fr) 1.35fr .65fr;gap:clamp(1.5rem,4vw,4rem);align-items:start}
.contact-kicker,.contact-index{margin:.55rem 0 0;font-size:.68rem;font-weight:700;line-height:1.3;letter-spacing:.16em;text-transform:uppercase}
.contact-kicker::before{content:"";display:inline-block;width:1.4rem;height:2px;margin-right:.65rem;vertical-align:middle;background:var(--contact-red)}
.contact-intro h1,.contact-details h2{margin:0;font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:.98;letter-spacing:-.055em}
.contact-intro h1{font-size:clamp(3.7rem,7.25vw,7.25rem)}
.contact-lead{max-width:20rem;margin:.6rem 0 0;color:#5f5d57;font-size:.98rem;line-height:1.8}
.contact-panel{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(390px,.88fr);background:#111;color:#fff}
.contact-photo{position:relative;min-height:940px;overflow:hidden}
.contact-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;filter:saturate(.84) contrast(1.03);transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.contact-photo:hover img{transform:scale(1.022)}
.contact-photo::after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.72))}
.contact-photo-caption{position:absolute;z-index:1;left:clamp(1.75rem,4vw,4rem);bottom:clamp(1.75rem,4vw,3.5rem);display:grid;gap:.55rem}
.contact-photo-caption small,.contact-address small,.contact-details dt,.contact-links>span{color:#aaa79f;font-size:.64rem;font-style:normal;letter-spacing:.15em;text-transform:uppercase}
.contact-photo-caption strong{font-family:Georgia,"Times New Roman",serif;font-size:1.6rem;font-weight:400}
.contact-details{padding:clamp(4rem,7vw,7rem) clamp(2rem,6vw,6rem)}
.contact-index{color:#aaa79f}
.contact-details h2{margin-top:2rem;color:#F3F0E9;font-size:clamp(3rem,5vw,5.25rem)}
.contact-address{display:grid;gap:1rem;margin-top:4.8rem;padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.24)}
.contact-address address{font-size:1.15rem;font-style:normal;line-height:1.55}
.contact-appointment{margin:.15rem 0 0;color:#d2cec5;font-size:.82rem;line-height:1.5}
.contact-map-link{display:inline-flex;gap:1.2rem;margin-top:1.8rem;padding-bottom:.55rem;border-bottom:1px solid var(--contact-red);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}
.contact-company,.contact-direct{margin-top:6.5rem}
.contact-details dl{margin:1.75rem 0 0;border-top:1px solid rgba(255,255,255,.24)}
.contact-details dl div{min-height:4.5rem;display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;border-bottom:1px solid rgba(255,255,255,.14)}
.contact-details dd{margin:0;font-size:.9rem;line-height:1.45}
.contact-links{margin-top:1.75rem;padding-top:1.5rem;display:grid;grid-template-columns:.7fr 1.3fr;gap:1.2rem;border-top:1px solid rgba(255,255,255,.24)}
.contact-links div{display:grid;gap:.65rem}
.contact-links a{width:max-content;font-family:Georgia,"Times New Roman",serif;font-size:1.3rem;line-height:1.2;border-bottom:1px solid transparent;transition:border-color .2s ease}
.contact-links a:hover,.contact-links a:focus-visible{border-bottom-color:var(--contact-red)}
@media(max-width:900px){.contact-intro{min-height:auto;grid-template-columns:1fr;padding-top:5rem}.contact-lead{margin-top:0}.contact-panel{grid-template-columns:1fr}.contact-photo{min-height:720px}.contact-details{padding-top:4.5rem}}
@media(max-width:560px){.contact-intro h1{font-size:3.25rem}.contact-photo{min-height:560px}.contact-details{padding:3.75rem 1.5rem 5rem}.contact-company,.contact-direct{margin-top:4.5rem}.contact-links{grid-template-columns:1fr}.contact-links>span:not(:first-child){margin-top:1rem}.contact-details dl div{grid-template-columns:.75fr 1.25fr}}

/* Embedded showroom map */
.contact-map{margin-top:2.4rem;overflow:hidden;border:1px solid rgba(255,255,255,.18);background:#222}
.contact-map iframe{display:block;width:100%;height:clamp(260px,28vw,360px);filter:grayscale(.28) saturate(.9) contrast(.96)}
@media(max-width:560px){.contact-map{margin-top:2rem}.contact-map iframe{height:280px}}

/* Compact contact hero */
.contact-intro{min-height:420px!important}
@media(max-width:900px){.contact-intro{min-height:auto!important;padding-top:3.5rem!important;padding-bottom:2.25rem!important}}
.contact-page{--contact-bg:#efede8;--contact-ink:#121211;--contact-red:#c93c36;background:var(--contact-bg);color:var(--contact-ink)}
.contact-intro{min-height:540px;padding-top:clamp(5rem,9vw,9rem);padding-bottom:clamp(4rem,7vw,7rem);display:grid;grid-template-columns:minmax(130px,.35fr) 1.35fr .65fr;gap:clamp(1.5rem,4vw,4rem);align-items:start}
.contact-kicker,.contact-index{margin:.55rem 0 0;font-size:.68rem;font-weight:700;line-height:1.3;letter-spacing:.16em;text-transform:uppercase}
.contact-kicker::before{content:"";display:inline-block;width:1.4rem;height:2px;margin-right:.65rem;vertical-align:middle;background:var(--contact-red)}
.contact-intro h1,.contact-details h2{margin:0;font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:.98;letter-spacing:-.055em}
.contact-intro h1{font-size:clamp(3.7rem,7.25vw,7.25rem)}
.contact-lead{max-width:20rem;margin:.6rem 0 0;color:#5f5d57;font-size:.98rem;line-height:1.8}
.contact-panel{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(390px,.88fr);background:#111;color:#fff}
.contact-photo{position:relative;min-height:940px;overflow:hidden}
.contact-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;filter:saturate(.84) contrast(1.03);transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.contact-photo:hover img{transform:scale(1.022)}
.contact-photo::after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.72))}
.contact-photo-caption{position:absolute;z-index:1;left:clamp(1.75rem,4vw,4rem);bottom:clamp(1.75rem,4vw,3.5rem);display:grid;gap:.55rem}
.contact-photo-caption small,.contact-address small,.contact-details dt,.contact-links>span{color:#aaa79f;font-size:.64rem;font-style:normal;letter-spacing:.15em;text-transform:uppercase}
.contact-photo-caption strong{font-family:Georgia,"Times New Roman",serif;font-size:1.6rem;font-weight:400}
.contact-details{padding:clamp(4rem,7vw,7rem) clamp(2rem,6vw,6rem)}
.contact-index{color:#aaa79f}
.contact-details h2{margin-top:2rem;color:#F3F0E9;font-size:clamp(3rem,5vw,5.25rem)}
.contact-address{display:grid;gap:1rem;margin-top:4.8rem;padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.24)}
.contact-address address{font-size:1.15rem;font-style:normal;line-height:1.55}
.contact-appointment{margin:.15rem 0 0;color:#d2cec5;font-size:.82rem;line-height:1.5}
.contact-map-link{display:inline-flex;gap:1.2rem;margin-top:1.8rem;padding-bottom:.55rem;border-bottom:1px solid var(--contact-red);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}
.contact-company,.contact-direct{margin-top:6.5rem}
.contact-details dl{margin:1.75rem 0 0;border-top:1px solid rgba(255,255,255,.24)}
.contact-details dl div{min-height:4.5rem;display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;border-bottom:1px solid rgba(255,255,255,.14)}
.contact-details dd{margin:0;font-size:.9rem;line-height:1.45}
.contact-links{margin-top:1.75rem;padding-top:1.5rem;display:grid;grid-template-columns:.7fr 1.3fr;gap:1.2rem;border-top:1px solid rgba(255,255,255,.24)}
.contact-links div{display:grid;gap:.65rem}
.contact-links a{width:max-content;font-family:Georgia,"Times New Roman",serif;font-size:1.3rem;line-height:1.2;border-bottom:1px solid transparent;transition:border-color .2s ease}
.contact-links a:hover,.contact-links a:focus-visible{border-bottom-color:var(--contact-red)}
@media(max-width:900px){.contact-intro{min-height:auto;grid-template-columns:1fr;padding-top:5rem}.contact-lead{margin-top:0}.contact-panel{grid-template-columns:1fr}.contact-photo{min-height:720px}.contact-details{padding-top:4.5rem}}
@media(max-width:560px){.contact-intro h1{font-size:3.25rem}.contact-photo{min-height:560px}.contact-details{padding:3.75rem 1.5rem 5rem}.contact-company,.contact-direct{margin-top:4.5rem}.contact-links{grid-template-columns:1fr}.contact-links>span:not(:first-child){margin-top:1rem}.contact-details dl div{grid-template-columns:.75fr 1.25fr}}
.contact-page{--contact-bg:#efede8;--contact-ink:#121211;--contact-red:#c93c36;background:var(--contact-bg);color:var(--contact-ink)}
.contact-intro{min-height:540px;padding-top:clamp(5rem,9vw,9rem);padding-bottom:clamp(4rem,7vw,7rem);display:grid;grid-template-columns:minmax(130px,.35fr) 1.35fr .65fr;gap:clamp(1.5rem,4vw,4rem);align-items:start}
.contact-kicker,.contact-index{margin:.55rem 0 0;font-size:.68rem;font-weight:700;line-height:1.3;letter-spacing:.16em;text-transform:uppercase}
.contact-kicker::before{content:"";display:inline-block;width:1.4rem;height:2px;margin-right:.65rem;vertical-align:middle;background:var(--contact-red)}
.contact-intro h1,.contact-details h2{margin:0;font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:.98;letter-spacing:-.055em}
.contact-intro h1{font-size:clamp(3.7rem,7.25vw,7.25rem)}
.contact-lead{max-width:20rem;margin:.6rem 0 0;color:#5f5d57;font-size:.98rem;line-height:1.8}
.contact-panel{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(390px,.88fr);background:#111;color:#fff}
.contact-photo{position:relative;min-height:940px;overflow:hidden}
.contact-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;filter:saturate(.84) contrast(1.03);transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.contact-photo:hover img{transform:scale(1.022)}
.contact-photo::after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.72))}
.contact-photo-caption{position:absolute;z-index:1;left:clamp(1.75rem,4vw,4rem);bottom:clamp(1.75rem,4vw,3.5rem);display:grid;gap:.55rem}
.contact-photo-caption small,.contact-address small,.contact-details dt,.contact-links>span{color:#aaa79f;font-size:.64rem;font-style:normal;letter-spacing:.15em;text-transform:uppercase}
.contact-photo-caption strong{font-family:Georgia,"Times New Roman",serif;font-size:1.6rem;font-weight:400}
.contact-details{padding:clamp(4rem,7vw,7rem) clamp(2rem,6vw,6rem)}
.contact-index{color:#aaa79f}
.contact-details h2{margin-top:2rem;color:#F3F0E9;font-size:clamp(3rem,5vw,5.25rem)}
.contact-address{display:grid;gap:1rem;margin-top:4.8rem;padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.24)}
.contact-address address{font-size:1.15rem;font-style:normal;line-height:1.55}
.contact-appointment{margin:.15rem 0 0;color:#d2cec5;font-size:.82rem;line-height:1.5}
.contact-map-link{display:inline-flex;gap:1.2rem;margin-top:1.8rem;padding-bottom:.55rem;border-bottom:1px solid var(--contact-red);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}
.contact-company,.contact-direct{margin-top:6.5rem}
.contact-details dl{margin:1.75rem 0 0;border-top:1px solid rgba(255,255,255,.24)}
.contact-details dl div{min-height:4.5rem;display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;border-bottom:1px solid rgba(255,255,255,.14)}
.contact-details dd{margin:0;font-size:.9rem;line-height:1.45}
.contact-links{margin-top:1.75rem;padding-top:1.5rem;display:grid;grid-template-columns:.7fr 1.3fr;gap:1.2rem;border-top:1px solid rgba(255,255,255,.24)}
.contact-links div{display:grid;gap:.65rem}
.contact-links a{width:max-content;font-family:Georgia,"Times New Roman",serif;font-size:1.3rem;line-height:1.2;border-bottom:1px solid transparent;transition:border-color .2s ease}
.contact-links a:hover,.contact-links a:focus-visible{border-bottom-color:var(--contact-red)}
@media(max-width:900px){.contact-intro{min-height:auto;grid-template-columns:1fr;padding-top:5rem}.contact-lead{margin-top:0}.contact-panel{grid-template-columns:1fr}.contact-photo{min-height:720px}.contact-details{padding-top:4.5rem}}
@media(max-width:560px){.contact-intro h1{font-size:3.25rem}.contact-photo{min-height:560px}.contact-details{padding:3.75rem 1.5rem 5rem}.contact-company,.contact-direct{margin-top:4.5rem}.contact-links{grid-template-columns:1fr}.contact-links>span:not(:first-child){margin-top:1rem}.contact-details dl div{grid-template-columns:.75fr 1.25fr}}

/* Embedded showroom map */
.contact-map{margin-top:2.4rem;overflow:hidden;border:1px solid rgba(255,255,255,.18);background:#222}
.contact-map iframe{display:block;width:100%;height:clamp(260px,28vw,360px);filter:grayscale(.28) saturate(.9) contrast(.96)}
@media(max-width:560px){.contact-map{margin-top:2rem}.contact-map iframe{height:280px}}
.contact-page{--contact-bg:#efede8;--contact-ink:#121211;--contact-red:#c93c36;background:var(--contact-bg);color:var(--contact-ink)}
.contact-intro{min-height:540px;padding-top:clamp(5rem,9vw,9rem);padding-bottom:clamp(4rem,7vw,7rem);display:grid;grid-template-columns:minmax(130px,.35fr) 1.35fr .65fr;gap:clamp(1.5rem,4vw,4rem);align-items:start}
.contact-kicker,.contact-index{margin:.55rem 0 0;font-size:.68rem;font-weight:700;line-height:1.3;letter-spacing:.16em;text-transform:uppercase}
.contact-kicker::before{content:"";display:inline-block;width:1.4rem;height:2px;margin-right:.65rem;vertical-align:middle;background:var(--contact-red)}
.contact-intro h1,.contact-details h2{margin:0;font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:.98;letter-spacing:-.055em}
.contact-intro h1{font-size:clamp(3.7rem,7.25vw,7.25rem)}
.contact-lead{max-width:20rem;margin:.6rem 0 0;color:#5f5d57;font-size:.98rem;line-height:1.8}
.contact-panel{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(390px,.88fr);background:#111;color:#fff}
.contact-photo{position:relative;min-height:940px;overflow:hidden}
.contact-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;filter:saturate(.84) contrast(1.03);transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.contact-photo:hover img{transform:scale(1.022)}
.contact-photo::after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.72))}
.contact-photo-caption{position:absolute;z-index:1;left:clamp(1.75rem,4vw,4rem);bottom:clamp(1.75rem,4vw,3.5rem);display:grid;gap:.55rem}
.contact-photo-caption small,.contact-address small,.contact-details dt,.contact-links>span{color:#aaa79f;font-size:.64rem;font-style:normal;letter-spacing:.15em;text-transform:uppercase}
.contact-photo-caption strong{font-family:Georgia,"Times New Roman",serif;font-size:1.6rem;font-weight:400}
.contact-details{padding:clamp(4rem,7vw,7rem) clamp(2rem,6vw,6rem)}
.contact-index{color:#aaa79f}
.contact-details h2{margin-top:2rem;color:#F3F0E9;font-size:clamp(3rem,5vw,5.25rem)}
.contact-address{display:grid;gap:1rem;margin-top:4.8rem;padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.24)}
.contact-address address{font-size:1.15rem;font-style:normal;line-height:1.55}
.contact-appointment{margin:.15rem 0 0;color:#d2cec5;font-size:.82rem;line-height:1.5}
.contact-map-link{display:inline-flex;gap:1.2rem;margin-top:1.8rem;padding-bottom:.55rem;border-bottom:1px solid var(--contact-red);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}
.contact-company,.contact-direct{margin-top:6.5rem}
.contact-details dl{margin:1.75rem 0 0;border-top:1px solid rgba(255,255,255,.24)}
.contact-details dl div{min-height:4.5rem;display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;border-bottom:1px solid rgba(255,255,255,.14)}
.contact-details dd{margin:0;font-size:.9rem;line-height:1.45}
.contact-links{margin-top:1.75rem;padding-top:1.5rem;display:grid;grid-template-columns:.7fr 1.3fr;gap:1.2rem;border-top:1px solid rgba(255,255,255,.24)}
.contact-links div{display:grid;gap:.65rem}
.contact-links a{width:max-content;font-family:Georgia,"Times New Roman",serif;font-size:1.3rem;line-height:1.2;border-bottom:1px solid transparent;transition:border-color .2s ease}
.contact-links a:hover,.contact-links a:focus-visible{border-bottom-color:var(--contact-red)}
@media(max-width:900px){.contact-intro{min-height:auto;grid-template-columns:1fr;padding-top:5rem}.contact-lead{margin-top:0}.contact-panel{grid-template-columns:1fr}.contact-photo{min-height:720px}.contact-details{padding-top:4.5rem}}
@media(max-width:560px){.contact-intro h1{font-size:3.25rem}.contact-photo{min-height:560px}.contact-details{padding:3.75rem 1.5rem 5rem}.contact-company,.contact-direct{margin-top:4.5rem}.contact-links{grid-template-columns:1fr}.contact-links>span:not(:first-child){margin-top:1rem}.contact-details dl div{grid-template-columns:.75fr 1.25fr}}
.contact-page{--contact-bg:#efede8;--contact-ink:#121211;--contact-red:#c93c36;background:var(--contact-bg);color:var(--contact-ink)}
.contact-intro{min-height:540px;padding-top:clamp(5rem,9vw,9rem);padding-bottom:clamp(4rem,7vw,7rem);display:grid;grid-template-columns:minmax(130px,.35fr) 1.35fr .65fr;gap:clamp(1.5rem,4vw,4rem);align-items:start}
.contact-kicker,.contact-index{margin:.55rem 0 0;font-size:.68rem;font-weight:700;line-height:1.3;letter-spacing:.16em;text-transform:uppercase}
.contact-kicker::before{content:"";display:inline-block;width:1.4rem;height:2px;margin-right:.65rem;vertical-align:middle;background:var(--contact-red)}
.contact-intro h1,.contact-details h2{margin:0;font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:.98;letter-spacing:-.055em}
.contact-intro h1{font-size:clamp(3.7rem,7.25vw,7.25rem)}
.contact-lead{max-width:20rem;margin:.6rem 0 0;color:#5f5d57;font-size:.98rem;line-height:1.8}
.contact-panel{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(390px,.88fr);background:#111;color:#fff}
.contact-photo{position:relative;min-height:940px;overflow:hidden}
.contact-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;filter:saturate(.84) contrast(1.03);transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.contact-photo:hover img{transform:scale(1.022)}
.contact-photo::after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.72))}
.contact-photo-caption{position:absolute;z-index:1;left:clamp(1.75rem,4vw,4rem);bottom:clamp(1.75rem,4vw,3.5rem);display:grid;gap:.55rem}
.contact-photo-caption small,.contact-address small,.contact-details dt,.contact-links>span{color:#aaa79f;font-size:.64rem;font-style:normal;letter-spacing:.15em;text-transform:uppercase}
.contact-photo-caption strong{font-family:Georgia,"Times New Roman",serif;font-size:1.6rem;font-weight:400}
.contact-details{padding:clamp(4rem,7vw,7rem) clamp(2rem,6vw,6rem)}
.contact-index{color:#aaa79f}
.contact-details h2{margin-top:2rem;color:#F3F0E9;font-size:clamp(3rem,5vw,5.25rem)}
.contact-address{display:grid;gap:1rem;margin-top:4.8rem;padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.24)}
.contact-address address{font-size:1.15rem;font-style:normal;line-height:1.55}
.contact-appointment{margin:.15rem 0 0;color:#d2cec5;font-size:.82rem;line-height:1.5}
.contact-map-link{display:inline-flex;gap:1.2rem;margin-top:1.8rem;padding-bottom:.55rem;border-bottom:1px solid var(--contact-red);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}
.contact-company,.contact-direct{margin-top:6.5rem}
.contact-details dl{margin:1.75rem 0 0;border-top:1px solid rgba(255,255,255,.24)}
.contact-details dl div{min-height:4.5rem;display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;border-bottom:1px solid rgba(255,255,255,.14)}
.contact-details dd{margin:0;font-size:.9rem;line-height:1.45}
.contact-links{margin-top:1.75rem;padding-top:1.5rem;display:grid;grid-template-columns:.7fr 1.3fr;gap:1.2rem;border-top:1px solid rgba(255,255,255,.24)}
.contact-links div{display:grid;gap:.65rem}
.contact-links a{width:max-content;font-family:Georgia,"Times New Roman",serif;font-size:1.3rem;line-height:1.2;border-bottom:1px solid transparent;transition:border-color .2s ease}
.contact-links a:hover,.contact-links a:focus-visible{border-bottom-color:var(--contact-red)}
@media(max-width:900px){.contact-intro{min-height:auto;grid-template-columns:1fr;padding-top:5rem}.contact-lead{margin-top:0}.contact-panel{grid-template-columns:1fr}.contact-photo{min-height:720px}.contact-details{padding-top:4.5rem}}
@media(max-width:560px){.contact-intro h1{font-size:3.25rem}.contact-photo{min-height:560px}.contact-details{padding:3.75rem 1.5rem 5rem}.contact-company,.contact-direct{margin-top:4.5rem}.contact-links{grid-template-columns:1fr}.contact-links>span:not(:first-child){margin-top:1rem}.contact-details dl div{grid-template-columns:.75fr 1.25fr}}

/* Embedded showroom map */
.contact-map{margin-top:2.4rem;overflow:hidden;border:1px solid rgba(255,255,255,.18);background:#222}
.contact-map iframe{display:block;width:100%;height:clamp(260px,28vw,360px);filter:grayscale(.28) saturate(.9) contrast(.96)}
@media(max-width:560px){.contact-map{margin-top:2rem}.contact-map iframe{height:280px}}
.contact-page{--contact-bg:#efede8;--contact-ink:#121211;--contact-red:#c93c36;background:var(--contact-bg);color:var(--contact-ink)}
.contact-intro{min-height:540px;padding-top:clamp(5rem,9vw,9rem);padding-bottom:clamp(4rem,7vw,7rem);display:grid;grid-template-columns:minmax(130px,.35fr) 1.35fr .65fr;gap:clamp(1.5rem,4vw,4rem);align-items:start}
.contact-kicker,.contact-index{margin:.55rem 0 0;font-size:.68rem;font-weight:700;line-height:1.3;letter-spacing:.16em;text-transform:uppercase}
.contact-kicker::before{content:"";display:inline-block;width:1.4rem;height:2px;margin-right:.65rem;vertical-align:middle;background:var(--contact-red)}
.contact-intro h1,.contact-details h2{margin:0;font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:.98;letter-spacing:-.055em}
.contact-intro h1{font-size:clamp(3.7rem,7.25vw,7.25rem)}
.contact-lead{max-width:20rem;margin:.6rem 0 0;color:#5f5d57;font-size:.98rem;line-height:1.8}
.contact-panel{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(390px,.88fr);background:#111;color:#fff}
.contact-photo{position:relative;min-height:940px;overflow:hidden}
.contact-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;filter:saturate(.84) contrast(1.03);transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.contact-photo:hover img{transform:scale(1.022)}
.contact-photo::after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.72))}
.contact-photo-caption{position:absolute;z-index:1;left:clamp(1.75rem,4vw,4rem);bottom:clamp(1.75rem,4vw,3.5rem);display:grid;gap:.55rem}
.contact-photo-caption small,.contact-address small,.contact-details dt,.contact-links>span{color:#aaa79f;font-size:.64rem;font-style:normal;letter-spacing:.15em;text-transform:uppercase}
.contact-photo-caption strong{font-family:Georgia,"Times New Roman",serif;font-size:1.6rem;font-weight:400}
.contact-details{padding:clamp(4rem,7vw,7rem) clamp(2rem,6vw,6rem)}
.contact-index{color:#aaa79f}
.contact-details h2{margin-top:2rem;color:#F3F0E9;font-size:clamp(3rem,5vw,5.25rem)}
.contact-address{display:grid;gap:1rem;margin-top:4.8rem;padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.24)}
.contact-address address{font-size:1.15rem;font-style:normal;line-height:1.55}
.contact-appointment{margin:.15rem 0 0;color:#d2cec5;font-size:.82rem;line-height:1.5}
.contact-map-link{display:inline-flex;gap:1.2rem;margin-top:1.8rem;padding-bottom:.55rem;border-bottom:1px solid var(--contact-red);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}
.contact-company,.contact-direct{margin-top:6.5rem}
.contact-details dl{margin:1.75rem 0 0;border-top:1px solid rgba(255,255,255,.24)}
.contact-details dl div{min-height:4.5rem;display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;border-bottom:1px solid rgba(255,255,255,.14)}
.contact-details dd{margin:0;font-size:.9rem;line-height:1.45}
.contact-links{margin-top:1.75rem;padding-top:1.5rem;display:grid;grid-template-columns:.7fr 1.3fr;gap:1.2rem;border-top:1px solid rgba(255,255,255,.24)}
.contact-links div{display:grid;gap:.65rem}
.contact-links a{width:max-content;font-family:Georgia,"Times New Roman",serif;font-size:1.3rem;line-height:1.2;border-bottom:1px solid transparent;transition:border-color .2s ease}
.contact-links a:hover,.contact-links a:focus-visible{border-bottom-color:var(--contact-red)}
@media(max-width:900px){.contact-intro{min-height:auto;grid-template-columns:1fr;padding-top:5rem}.contact-lead{margin-top:0}.contact-panel{grid-template-columns:1fr}.contact-photo{min-height:720px}.contact-details{padding-top:4.5rem}}
@media(max-width:560px){.contact-intro h1{font-size:3.25rem}.contact-photo{min-height:560px}.contact-details{padding:3.75rem 1.5rem 5rem}.contact-company,.contact-direct{margin-top:4.5rem}.contact-links{grid-template-columns:1fr}.contact-links>span:not(:first-child){margin-top:1rem}.contact-details dl div{grid-template-columns:.75fr 1.25fr}}
.contact-page{--contact-bg:#efede8;--contact-ink:#121211;--contact-red:#c93c36;background:var(--contact-bg);color:var(--contact-ink)}
.contact-intro{min-height:540px;padding-top:clamp(5rem,9vw,9rem);padding-bottom:clamp(4rem,7vw,7rem);display:grid;grid-template-columns:minmax(130px,.35fr) 1.35fr .65fr;gap:clamp(1.5rem,4vw,4rem);align-items:start}
.contact-kicker,.contact-index{margin:.55rem 0 0;font-size:.68rem;font-weight:700;line-height:1.3;letter-spacing:.16em;text-transform:uppercase}
.contact-kicker::before{content:"";display:inline-block;width:1.4rem;height:2px;margin-right:.65rem;vertical-align:middle;background:var(--contact-red)}
.contact-intro h1,.contact-details h2{margin:0;font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:.98;letter-spacing:-.055em}
.contact-intro h1{font-size:clamp(3.7rem,7.25vw,7.25rem)}
.contact-lead{max-width:20rem;margin:.6rem 0 0;color:#5f5d57;font-size:.98rem;line-height:1.8}
.contact-panel{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(390px,.88fr);background:#111;color:#fff}
.contact-photo{position:relative;min-height:940px;overflow:hidden}
.contact-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;filter:saturate(.84) contrast(1.03);transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.contact-photo:hover img{transform:scale(1.022)}
.contact-photo::after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.72))}
.contact-photo-caption{position:absolute;z-index:1;left:clamp(1.75rem,4vw,4rem);bottom:clamp(1.75rem,4vw,3.5rem);display:grid;gap:.55rem}
.contact-photo-caption small,.contact-address small,.contact-details dt,.contact-links>span{color:#aaa79f;font-size:.64rem;font-style:normal;letter-spacing:.15em;text-transform:uppercase}
.contact-photo-caption strong{font-family:Georgia,"Times New Roman",serif;font-size:1.6rem;font-weight:400}
.contact-details{padding:clamp(4rem,7vw,7rem) clamp(2rem,6vw,6rem)}
.contact-index{color:#aaa79f}
.contact-details h2{margin-top:2rem;color:#F3F0E9;font-size:clamp(3rem,5vw,5.25rem)}
.contact-address{display:grid;gap:1rem;margin-top:4.8rem;padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.24)}
.contact-address address{font-size:1.15rem;font-style:normal;line-height:1.55}
.contact-appointment{margin:.15rem 0 0;color:#d2cec5;font-size:.82rem;line-height:1.5}
.contact-map-link{display:inline-flex;gap:1.2rem;margin-top:1.8rem;padding-bottom:.55rem;border-bottom:1px solid var(--contact-red);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}
.contact-company,.contact-direct{margin-top:6.5rem}
.contact-details dl{margin:1.75rem 0 0;border-top:1px solid rgba(255,255,255,.24)}
.contact-details dl div{min-height:4.5rem;display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;border-bottom:1px solid rgba(255,255,255,.14)}
.contact-details dd{margin:0;font-size:.9rem;line-height:1.45}
.contact-links{margin-top:1.75rem;padding-top:1.5rem;display:grid;grid-template-columns:.7fr 1.3fr;gap:1.2rem;border-top:1px solid rgba(255,255,255,.24)}
.contact-links div{display:grid;gap:.65rem}
.contact-links a{width:max-content;font-family:Georgia,"Times New Roman",serif;font-size:1.3rem;line-height:1.2;border-bottom:1px solid transparent;transition:border-color .2s ease}
.contact-links a:hover,.contact-links a:focus-visible{border-bottom-color:var(--contact-red)}
@media(max-width:900px){.contact-intro{min-height:auto;grid-template-columns:1fr;padding-top:5rem}.contact-lead{margin-top:0}.contact-panel{grid-template-columns:1fr}.contact-photo{min-height:720px}.contact-details{padding-top:4.5rem}}
@media(max-width:560px){.contact-intro h1{font-size:3.25rem}.contact-photo{min-height:560px}.contact-details{padding:3.75rem 1.5rem 5rem}.contact-company,.contact-direct{margin-top:4.5rem}.contact-links{grid-template-columns:1fr}.contact-links>span:not(:first-child){margin-top:1rem}.contact-details dl div{grid-template-columns:.75fr 1.25fr}}

/* Embedded showroom map */
.contact-map{margin-top:2.4rem;overflow:hidden;border:1px solid rgba(255,255,255,.18);background:#222}
.contact-map iframe{display:block;width:100%;height:clamp(260px,28vw,360px);filter:grayscale(1) contrast(.92)}
@media(max-width:560px){.contact-map{margin-top:2rem}.contact-map iframe{height:280px}}
.contact-page{--contact-bg:#efede8;--contact-ink:#121211;--contact-red:#c93c36;background:var(--contact-bg);color:var(--contact-ink)}
.contact-intro{min-height:540px;padding-top:clamp(5rem,9vw,9rem);padding-bottom:clamp(4rem,7vw,7rem);display:grid;grid-template-columns:minmax(130px,.35fr) 1.35fr .65fr;gap:clamp(1.5rem,4vw,4rem);align-items:start}
.contact-kicker,.contact-index{margin:.55rem 0 0;font-size:.68rem;font-weight:700;line-height:1.3;letter-spacing:.16em;text-transform:uppercase}
.contact-kicker::before{content:"";display:inline-block;width:1.4rem;height:2px;margin-right:.65rem;vertical-align:middle;background:var(--contact-red)}
.contact-intro h1,.contact-details h2{margin:0;font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:.98;letter-spacing:-.055em}
.contact-intro h1{font-size:clamp(3.7rem,7.25vw,7.25rem)}
.contact-lead{max-width:20rem;margin:.6rem 0 0;color:#5f5d57;font-size:.98rem;line-height:1.8}
.contact-panel{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(390px,.88fr);background:#111;color:#fff}
.contact-photo{position:relative;min-height:940px;overflow:hidden}
.contact-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;filter:saturate(.84) contrast(1.03);transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.contact-photo:hover img{transform:scale(1.022)}
.contact-photo::after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.72))}
.contact-photo-caption{position:absolute;z-index:1;left:clamp(1.75rem,4vw,4rem);bottom:clamp(1.75rem,4vw,3.5rem);display:grid;gap:.55rem}
.contact-photo-caption small,.contact-address small,.contact-details dt,.contact-links>span{color:#aaa79f;font-size:.64rem;font-style:normal;letter-spacing:.15em;text-transform:uppercase}
.contact-photo-caption strong{font-family:Georgia,"Times New Roman",serif;font-size:1.6rem;font-weight:400}
.contact-details{padding:clamp(4rem,7vw,7rem) clamp(2rem,6vw,6rem)}
.contact-index{color:#aaa79f}
.contact-details h2{margin-top:2rem;color:#F3F0E9;font-size:clamp(3rem,5vw,5.25rem)}
.contact-address{display:grid;gap:1rem;margin-top:4.8rem;padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.24)}
.contact-address address{font-size:1.15rem;font-style:normal;line-height:1.55}
.contact-appointment{margin:.15rem 0 0;color:#d2cec5;font-size:.82rem;line-height:1.5}
.contact-map-link{display:inline-flex;gap:1.2rem;margin-top:1.8rem;padding-bottom:.55rem;border-bottom:1px solid var(--contact-red);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}
.contact-company,.contact-direct{margin-top:6.5rem}
.contact-details dl{margin:1.75rem 0 0;border-top:1px solid rgba(255,255,255,.24)}
.contact-details dl div{min-height:4.5rem;display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;border-bottom:1px solid rgba(255,255,255,.14)}
.contact-details dd{margin:0;font-size:.9rem;line-height:1.45}
.contact-links{margin-top:1.75rem;padding-top:1.5rem;display:grid;grid-template-columns:.7fr 1.3fr;gap:1.2rem;border-top:1px solid rgba(255,255,255,.24)}
.contact-links div{display:grid;gap:.65rem}
.contact-links a{width:max-content;font-family:Georgia,"Times New Roman",serif;font-size:1.3rem;line-height:1.2;border-bottom:1px solid transparent;transition:border-color .2s ease}
.contact-links a:hover,.contact-links a:focus-visible{border-bottom-color:var(--contact-red)}
@media(max-width:900px){.contact-intro{min-height:auto;grid-template-columns:1fr;padding-top:5rem}.contact-lead{margin-top:0}.contact-panel{grid-template-columns:1fr}.contact-photo{min-height:720px}.contact-details{padding-top:4.5rem}}
@media(max-width:560px){.contact-intro h1{font-size:3.25rem}.contact-photo{min-height:560px}.contact-details{padding:3.75rem 1.5rem 5rem}.contact-company,.contact-direct{margin-top:4.5rem}.contact-links{grid-template-columns:1fr}.contact-links>span:not(:first-child){margin-top:1rem}.contact-details dl div{grid-template-columns:.75fr 1.25fr}}

/* Jemná zvuková vlna pouze pod pravým textem hero stránky Kontakt. */
.contact-intro {
	position: relative;
}

.contact-lead {
	position: relative;
	z-index: 1;
}

.contact-lead::after {
	position: absolute;
	top: calc(100% + 1.15rem);
	right: auto;
	left: 0;
	width: 380px;
	height: 120px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 900 320' preserveAspectRatio='none'%3E%3Cg fill='none' stroke='%23b79260' stroke-width='1'%3E%3Cpath d='M0 178 C105 178 112 122 220 122 S345 225 460 225 S585 88 700 104 S815 178 900 152'/%3E%3Cpath d='M0 166 C105 166 114 111 222 111 S347 213 462 213 S587 78 702 95 S817 166 900 141'/%3E%3Cpath d='M0 190 C105 190 110 133 218 133 S343 237 458 237 S583 98 698 113 S813 190 900 163'/%3E%3Cpath d='M0 154 C105 154 116 100 224 100 S349 201 464 201 S589 69 704 86 S819 154 900 130'/%3E%3Cpath d='M0 202 C105 202 108 144 216 144 S341 249 456 249 S581 108 696 122 S811 202 900 174'/%3E%3C/g%3E%3C/svg%3E");
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	opacity: .21;
	content: "";
	pointer-events: none;
}

@media (max-width: 900px) {
	.contact-lead::after {
		top: calc(100% + .35rem);
		right: auto;
		left: 0;
		width: min(70vw, 20rem);
		height: 28px;
		opacity: .21;
	}
}

