:root{color-scheme:dark;--bg:#0b0b0e;--ink:#f7f7fa;--green:#b3ef00;--cyan:#00e8df;--magenta:#ec30cc}
*{box-sizing:border-box}
html{background:var(--bg)}
body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
.page{max-width:1600px;margin:auto;padding:40px 5.5% 0}
.header{display:flex;align-items:center;justify-content:space-between;gap:24px;position:relative;z-index:2}
.logo-panel{width:142px;padding:0;background:transparent}
.logo{display:block;width:100%;height:auto}
.location{font-size:.8125rem;letter-spacing:.17em;font-weight:700;color:#c3c3cc}
.location span{color:var(--green);margin:0 12px}
.hero{position:relative;min-height:530px;display:flex;align-items:center;isolation:isolate;margin-top:24px}
.message{position:relative;z-index:2;width:67%;padding:40px 0 65px;pointer-events:none}
.accent{width:54px;height:4px;background:var(--green);margin-bottom:28px}
h1{font-family:Arial,Helvetica,sans-serif;font-size:clamp(2.75rem,5.85vw,5.8rem);line-height:1.025;font-weight:900;letter-spacing:-.045em;margin:0 0 30px}
h1 span{color:var(--green)}
.message p{font-size:1.0625rem;line-height:1.8;color:#c9c9d1;max-width:455px;margin:0}
.hall{position:absolute;z-index:0;margin:0;inset:-65px -6.2% 0 27%;overflow:hidden}
.hall img{width:100%;height:100%;object-fit:cover;object-position:58% center;display:block}
.hall:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--bg) 0%,rgba(11,11,14,.86) 18%,rgba(11,11,14,.18) 60%),linear-gradient(0deg,var(--bg),transparent 32%,rgba(11,11,14,.12) 75%,var(--bg));pointer-events:none}
figcaption{position:absolute;z-index:1;right:8%;bottom:42px;font-size:clamp(2.2rem,4.5vw,4.5rem);font-weight:900;letter-spacing:-.045em;line-height:1.1;color:var(--cyan)}
@supports (-webkit-text-stroke:1px white){figcaption{color:transparent;-webkit-text-stroke:1.5px var(--cyan)}}
.contacts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;position:relative;z-index:2}
.contact{--tint:var(--cyan);border-top:2px solid var(--tint);text-decoration:none;color:var(--ink);padding:23px 18px 26px;background:#111115;transition:background .16s ease,transform .16s ease}
.instagram{--tint:var(--magenta)}
.whatsapp{--tint:var(--green)}
.contact-label{display:flex;align-items:center;justify-content:space-between;font-size:.875rem;letter-spacing:.12em;font-weight:800;margin-bottom:12px}
.contact-label>span{font-size:1.5rem;line-height:1;color:var(--tint)}
.contact-value{font-size:1.0625rem;color:#cacbd1;overflow-wrap:anywhere}
.contact:hover{background:#1c1c23;transform:translateY(-3px)}
.contact:focus-visible{outline:3px solid var(--tint);outline-offset:5px;background:#1c1c23}
footer{font-size:.75rem;letter-spacing:.16em;font-weight:700;color:#8e8e9a;padding:27px 0 30px}
footer span{margin:0 10px;color:#b3ef00}
@media(min-width:1600px){.hall{right:-88px}}
@media(max-width:900px){.page{padding:26px 6% 0}.hero{min-height:490px}.message{width:80%}.message p{max-width:375px}.contacts{gap:14px}.contact{padding:20px 12px}.contact-value{font-size:.9375rem}.hall{left:20%;right:-6.8%}.logo-panel{width:120px}}
@media(max-width:600px){.page{padding:22px 22px 0}.header{gap:16px}.logo-panel{width:106px;padding:0;flex-shrink:0}.location{font-size:.75rem;letter-spacing:.09em;max-width:140px;line-height:1.8;text-align:right}.location span{margin:0 5px}.hero{display:block;min-height:0;margin-top:34px}.message{width:100%;padding:0}.accent{margin-bottom:22px;width:42px}h1{font-size:clamp(2.35rem,9.3vw,3.5rem);line-height:1.07;letter-spacing:-.045em;margin-bottom:23px}.message p{font-size:1rem;line-height:1.75;max-width:none}.desktop-break{display:none}.hall{position:relative;inset:auto;width:calc(100% + 44px);height:260px;margin:16px -22px 0}.hall img{object-position:center 48%}.hall:after{background:linear-gradient(0deg,var(--bg),transparent 45%,transparent 75%,var(--bg)),linear-gradient(90deg,rgba(11,11,14,.2),transparent)}figcaption{right:24px;bottom:27px;font-size:2.8rem}.contacts{grid-template-columns:1fr;gap:14px;margin-top:10px}.contact{padding:19px 20px 21px}.contact-label{font-size:.875rem;margin-bottom:10px}.contact-value{font-size:1rem}footer{padding-top:25px;font-size:.75rem}}
@media(prefers-reduced-motion:reduce){.contact{transition:none}.contact:hover{transform:none}}

.message .rental{margin-top:24px;padding-left:16px;border-left:2px solid var(--cyan)}
.rental strong{color:var(--ink)}
