/* Продолжение утверждённого клуба: дверь — главный момент, свет — поддержка. */
.sound-toggle{flex:none;width:44px;height:44px;min-height:44px;padding:10px;display:grid;place-items:center;color:#e4c78e;background:#211d15a6;border:1px solid #a18b6055;border-radius:50%;cursor:pointer;transition:background .15s,color .15s}
.sound-toggle:hover{background:#554329;color:#ffdea0}
.sound-toggle svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.sound-toggle .sound-off{display:none}.sound-toggle.is-muted .sound-waves{display:none}.sound-toggle.is-muted .sound-off{display:block}
body.is-lobby .top nav{gap:clamp(14px,1.7vw,30px)}
.club-lobby{isolation:isolate;background:#1b1913;padding-bottom:0}
.lobby-building{mask-image:linear-gradient(#000 86%,transparent 100%)}
.foyer-way{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);z-index:5;display:flex;align-items:center;gap:12px;min-height:44px;padding:8px 17px;color:#e6d3ac;background:#211b13b3;border:1px solid #c2a37166;border-radius:2px;cursor:pointer;font:300 13px/1.3 var(--club-display);transition:background .2s}
.foyer-way:hover{background:#3d3020}.foyer-way svg{width:15px;height:21px;transform:rotate(90deg)}
.office-foyer{position:relative;z-index:2;margin-top:0;background:transparent}
.foyer-scene{overflow:hidden;background:#1b1913}
.foyer-scene>img{z-index:-1;mask-image:linear-gradient(transparent 0,#000 115px);transform-origin:center 55%}
.foyer-copy{padding-top:calc(5.3vw + 35px)}
.foyer-scene{min-height:990px;height:65vw;max-height:1200px}
.foyer-copy h2:focus,h1[tabindex="-1"]:focus{outline:none}
.travel-overlay{transform-origin:center}
.travel-panel{background:#8b7046 url('assets/e/brass.jpg') center/cover;transition:transform .48s cubic-bezier(.16,1,.3,1);box-shadow:inset 0 0 100px #20170c66}
.travel-panel.left{background-position:left center;border-right:1px solid #251b0f}
.travel-panel.right{background-position:right center}
.travel-overlay.is-arriving{pointer-events:none}
.travel-display{top:20%;min-width:180px;border:1px solid #b99c62;background:#211d16eF;padding:22px 28px;color:#ffe0a4}
.travel-display>span{font:200 58px/1 var(--club-display)}
.travel-display small{font-family:var(--club-display);color:#e5d2ab}
.travel-cancel{font:300 13px/1.4 var(--club-display)}
.door-plaque{overflow:hidden}
.door-plaque:after{top:-50%;left:-65%;width:35%;height:200%;border-radius:0;background:linear-gradient(90deg,transparent,#fff0b755,transparent);transform:rotate(22deg);transition:translate .65s cubic-bezier(.16,1,.3,1)}
.door-outer[href]:hover .door-plaque:after,.door-outer[href]:focus-visible .door-plaque:after{translate:520% 0}
.door-outer[href]:hover .door-leaf{transform:rotateY(-3deg);filter:brightness(1.04)}
.door-outer.opening .door-leaf{transform:rotateY(-94deg);filter:brightness(.8);transition-duration:.5s}
.council-page{padding:0 0 70px;background:#211d16}
.council-stage{position:relative;isolation:isolate;min-height:760px;height:min(57vw,950px);overflow:hidden;background:#241d15}
.council-stage>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.council-stage:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#191811 0%,#191811f5 28%,#191811aa 44%,#19181100 68%)}
.council-stage>.crumbs{position:absolute;left:7%;top:32px;font-family:var(--club-display);color:#dac9a9}
.council-stage .council-copy{position:relative;padding:135px 0 80px 7%;width:46%}
.council-copy h1{font:200 clamp(42px,4vw,62px)/1.08 var(--club-display);letter-spacing:-.03em;max-width:13ch}
.council-copy h1 span{font-size:inherit;color:#d4b784;line-height:inherit;margin-bottom:0}
.council-copy>p{color:#e0d3be;font:300 17px/1.7 var(--club-display);max-width:32ch;margin:24px 0}
.council-copy .council-hint{font:300 13px/1.6 var(--club-display);color:#d5be98;margin-top:20px}
.council-stage .council-portal{position:absolute;right:0;top:0;height:100%;width:46%;border:0;border-left:9px solid #766044;outline:none;box-shadow:inset 12px 0 25px #0c090770;perspective:1600px;background:#bc9456}
.council-portal .meeting-room{background-position:60% center;filter:brightness(.8);transform:scale(1.035)}
.council-portal .portal-leaf{width:50%;transition-duration:.8s;background-size:100% 100%}
.council-portal .portal-leaf.left{border-right:1px solid #edce8d}
.council-portal:after{content:'';position:absolute;left:10%;right:10%;bottom:0;height:2px;z-index:2;background:#f0cd86;box-shadow:0 -5px 25px 3px #e8bc5755;pointer-events:none;transition:opacity .3s}
.council-portal.unsealed:after{opacity:0}
.council-plaque{top:32%;width:min(220px,65%);padding:25px 14px}
.council-plaque small{display:none}
.council-plaque b{font:300 24px/1.25 var(--club-display);margin:4px 0 18px}
.council-stage .secret-caption{position:absolute;bottom:24px;right:4%;width:38%;color:#e0cda7;font:300 13px/1.5 var(--club-display);margin:0}
.council-details{gap:8%;margin-top:0;padding-top:75px;border:0;grid-template-columns:1.15fr 1fr;scroll-margin-top:28px}
.council-details h2{font:200 clamp(34px,3.3vw,48px)/1.14 var(--club-display);letter-spacing:-.025em;max-width:16ch}
.council-details>div>p{font-size:17px;line-height:1.7;color:#d1c4ae;margin-top:26px}
.agenda li{font-size:16px;line-height:1.6;border-color:#9e825849;padding:20px 0;color:#e0d3bd}
.agenda li:before{color:#c9a871}
.council-offer{background:#2d271c;color:#eadcc5;padding:34px;border:1px solid #ad8b4d88;box-shadow:none}
.council-offer h3{font-size:32px;line-height:1.18}
.council-offer p{color:#d6c6aa;font:300 16px/1.7 var(--club-display)}
.council-offer .price{color:#f1d6a0;font:300 28px/1.3 var(--club-display)}
.council-offer .btn{background:#d6b77e;border-color:#d6b77e;color:#242017}
.council-offer .btn:hover{background:#edce96}
.council-offer .demo-note,.council-offer .demo-toggle{color:#c9b897}
@media(max-width:1100px) and (min-width:901px){.council-stage .council-copy{padding-top:115px;width:49%}.council-copy h1{font-size:48px}.council-stage{min-height:730px}.council-copy>p{font-size:16px}}
@media(max-width:900px){
  body.is-lobby .top .wrap,.top .wrap{padding-left:18px;padding-right:18px;gap:10px}
  body.is-lobby .top nav,.top nav{gap:9px}
  body.is-lobby .logo,.top .logo{font-size:21px;gap:7px}
  .top .logo svg{width:27px;height:27px}
  .sound-toggle{width:44px;height:44px;padding:11px}
  .top .nav-council span{font-size:10px}
  .top .nav-council .lock-icon{width:11px}
  .office-foyer{margin-top:0}
  .club-lobby{padding-bottom:36px;background:#1b1913}
  .lobby-building{mask-image:none}
  .foyer-way{display:none}
  .foyer-scene{height:auto;min-height:0;max-height:none;padding-top:350px}
  .foyer-scene>img{mask-image:linear-gradient(transparent,#000 60px);transform:none!important}
  .foyer-copy{padding:34px 24px 42px}
  .council-stage{height:auto;min-height:0;padding-top:390px}
  .council-stage>img{height:390px;object-position:65% center}
  .council-stage:before{height:410px;background:linear-gradient(0deg,#211d16 0%,#211d1600 30%)}
  .council-stage>.crumbs{position:static;padding:10px 24px 0;margin:0}
  .council-stage .council-copy{padding:28px 24px 40px;width:auto;background:#211d16}
  .council-copy h1{font-size:45px;max-width:12ch}
  .council-copy h1 span{font-size:inherit;margin-bottom:0}
  .council-copy>p{font-size:16px;max-width:40ch}
  .council-copy .btn{width:100%}
  .council-stage .council-portal{top:0;right:0;width:100%;height:390px;border:0}
  .council-plaque{padding:20px 14px;top:25%;width:180px}
  .council-portal .meeting-room{background-position:65% center}
  .council-plaque b{font-size:23px}
  .council-stage .secret-caption{display:none}
  .council-details{display:block;padding-top:30px}
  .council-details h2{font-size:35px}
  .council-details>div>p{font-size:16px}
  .council-offer{margin-top:36px;padding:26px 23px}
  .council-offer h3{font-size:29px}
  .travel-panel{transition-duration:.32s}
}
@media(prefers-reduced-motion:reduce){
  .travel-panel,.portal-leaf,.meeting-room,.council-plaque,.door-leaf{transition-duration:.01ms!important}
  .foyer-scene>img{transform:none!important}
  .door-outer[href]:hover .door-leaf{transform:none}
  .door-plaque:after{display:none}
}

/* Контакты команды — общий блок на всех страницах. */
footer .wrap{display:block}
.office-contacts{display:grid;grid-template-columns:1fr 1.8fr;gap:48px;padding:28px 0 42px}
.office-contacts h2{font:300 clamp(28px,2.7vw,38px)/1.2 var(--club-display);letter-spacing:-.025em;color:#eee6d7;max-width:13ch;margin:0 0 14px}
.office-contacts p{font:300 15px/1.6 var(--club-display);color:#c5b99d;margin:0}
.office-contact-people{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:start}
.office-contact-people a{display:flex;flex-direction:column;gap:8px;padding:12px 0;min-height:72px;border-top:1px solid #756447;font:300 18px/1.4 var(--club-display);text-decoration:none;color:#eadcc5}
.office-contact-people small{font:300 14px/1.5 var(--club-display);color:#cfbd94}
.office-contact-people a:hover span{text-decoration:underline;text-underline-offset:.25em}
.office-footer-bottom{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:24px 48px;padding-top:28px;border-top:1px solid #51543b}
.office-footer-sign{display:flex;flex-direction:column;gap:6px;margin:0}
.office-footer-sign span{font:300 21px/1.3 var(--club-display);letter-spacing:-.02em;color:#eee6d7}
.office-footer-sign small,.office-footer-group p{font:300 13px/1.5 var(--club-display);color:#a89c82}
.office-footer-group{display:flex;flex-direction:column;align-items:flex-start}
.office-footer-group p{margin:0 0 4px}
.office-footer-bottom a{display:inline-flex;align-items:center;min-height:44px;font:300 15px/1.4 var(--club-display);color:#e2d3b3;text-decoration:none;text-underline-offset:.25em}
.office-footer-bottom a:hover{color:#f4e4c2;text-decoration:underline}
.office-footer-legal{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:0 28px;padding-top:8px;border-top:1px solid #51543b80}
.office-footer-legal a{font-size:13px;color:#a89c82}
.office-contact-people a:focus-visible,.office-footer-bottom a:focus-visible{outline:2px solid #e4c78e;outline-offset:5px}
@media(max-width:900px){
 .office-contacts{grid-template-columns:1fr;gap:28px;padding:12px 0 30px}
 .office-contacts h2{max-width:none;font-size:30px}
 .office-contact-people{grid-template-columns:1fr;gap:8px}
 .office-contact-people a{flex-direction:row;justify-content:space-between;align-items:center;gap:12px;min-height:64px;font-size:17px}
 .office-footer-bottom{grid-template-columns:1fr 1fr;gap:28px 20px;padding-top:26px}
 .office-footer-sign{grid-column:1/-1}
 .office-footer-legal{flex-direction:column;padding-top:12px}
}
