@font-face{font-family:Montserrat;src:url('assets/montserrat-400.woff') format('woff');font-weight:400;font-display:swap}
@font-face{font-family:Montserrat;src:url('assets/montserrat-500.woff') format('woff');font-weight:500;font-display:swap}
@font-face{font-family:Montserrat;src:url('assets/montserrat-600.woff') format('woff');font-weight:600;font-display:swap}
:root{color-scheme:dark;--cyan:#4ac5e0;--pink:#d92a7b;--white:#fff;--font:Montserrat,Arial,sans-serif;--heading:'Source Heading',serif;--heading-gradient:linear-gradient(97deg,#4ac5e0,#df2377)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#000;color:var(--white);font-family:var(--font);-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button{border:0}button:focus-visible,a:focus-visible{outline:2px solid var(--cyan);outline-offset:6px}img{display:block;max-width:100%;height:auto}.container{width:calc(100% - 80px);max-width:1160px;margin-inline:auto}.icon{width:16px;height:18px;flex:none;color:#40d0e1}.icon-definitions{position:absolute;width:0;height:0;overflow:hidden}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;top:12px;left:12px;z-index:10;padding:12px;background:#000;transform:translateY(-160%)}.skip-link:focus{transform:none}
.hero{height:832px;position:relative;overflow:hidden;background:#030407 url('assets/hero-background.webp') center top/max(1440px,100%) 832px no-repeat}.hero::after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:60px;background:linear-gradient(transparent,#000);pointer-events:none}.hero-container{height:100%;position:relative}.header{position:absolute;z-index:5;top:60px;left:0;right:0;height:76px;padding:8px 8px 8px 34px;display:flex;align-items:center;gap:40px;background:rgba(70,70,70,.46);border-radius:50px;backdrop-filter:blur(20px)}.brand{width:107px;flex-shrink:0}.navigation{display:flex;justify-content:space-between;align-items:center;flex:1;gap:20px;margin-inline:30px 46px;white-space:nowrap}.navigation a,.navigation button{font-size:16px;padding:12px 0;background:none;transition:color .2s}.navigation a:hover,.navigation button:hover{color:var(--cyan)}.header-phone{display:flex;align-items:center;justify-content:center;gap:6px;height:60px;width:228px;flex-shrink:0;border-radius:40px;background:#5b595b;font-size:18px;letter-spacing:-.6px;transition:background .2s}.header-phone:hover{background:#70656e}.header-phone .icon{width:14px}.menu-toggle{display:none}.hero-model{position:absolute;top:192px;right:-88px;width:640px;max-width:none;pointer-events:none}.hero-copy{position:relative;z-index:2;padding-top:226px;width:710px}.address{padding:0;display:flex;align-items:center;gap:6px;background:none;font-size:18px;line-height:22px;letter-spacing:-.45px}.address .icon{width:12px;height:16px}.hero-title{margin:0;font-size:inherit;line-height:1}.wordmark{width:700px}.club{width:376px;margin-top:-1px}.hero-description{font-size:24px;line-height:1.22;letter-spacing:0;margin:58px 0 64px;max-width:640px}.booking-button{display:inline-flex;align-items:center;justify-content:center;min-height:86px;width:392px;max-width:100%;padding:20px 32px;border-radius:60px;background:var(--pink);font-size:24px;font-family:var(--font);font-weight:600;text-transform:uppercase;box-shadow:0 0 40px #e31b7750;transition:background .2s,box-shadow .2s,transform .2s}.booking-button:hover{background:#ee318e;box-shadow:0 0 52px #e31b7770;transform:translateY(-2px)}.booking-button:active{transform:translateY(0)}
.about{min-height:529px;padding:70px 0 110px;background:radial-gradient(ellipse at 100% 100%,#002d33 0,transparent 43%),radial-gradient(ellipse at 0 110%,#3b1b40 0,transparent 42%),#000}.about-grid{display:grid;grid-template-columns:540px 1fr;gap:100px;align-items:center}.about h2{font-family:var(--font);font-size:50px;font-weight:600;line-height:1.2;margin:0 0 32px;text-transform:uppercase;letter-spacing:0;background:var(--heading-gradient);background-clip:text;-webkit-background-clip:text;color:transparent;width:fit-content}.about p{font-size:18px;line-height:1.23;letter-spacing:0;margin:0}.about-logo{width:450px;justify-self:end;margin-top:66px}
dialog{width:min(520px,calc(100% - 32px));max-height:calc(100dvh - 40px);overflow:auto;padding:54px 40px 40px;border:1px solid #ffffff25;border-radius:24px;color:white;background:radial-gradient(at 100% 0,#123139,transparent 60%),#111015;box-shadow:0 24px 100px #000a}dialog::backdrop{background:#000b;backdrop-filter:blur(8px)}.dialog-close{position:absolute;right:16px;top:12px;width:36px;height:36px;background:transparent;font-size:32px;line-height:1}.dialog-eyebrow{font-size:10px;letter-spacing:2px;color:var(--cyan)}dialog h2{font-size:28px;line-height:1.2;margin:22px 0 16px}dialog p{font-size:15px;line-height:1.6;color:#c5c3c9}.dialog-phone{display:inline-block;font-size:26px;margin:18px 0 4px;white-space:nowrap}.dialog-address{display:flex;gap:8px;align-items:center}.dialog-call{margin-top:20px;width:100%;min-height:60px;font-size:16px}body.dialog-open{overflow:hidden}
@media(max-width:1199px){.header{gap:20px;padding-left:25px}.navigation{margin-inline:0;gap:18px}.navigation a,.navigation button{font-size:14px}.header-phone{width:200px;font-size:16px}.hero-copy{width:64%}.wordmark{width:100%}.club{width:54%}.hero-description{font-size:21px}.hero-model{right:-110px}.about-grid{grid-template-columns:1.1fr 1fr;gap:60px}.about h2{font-size:40px}.about p{font-size:17px}}
@media(max-width:900px){.container{width:calc(100% - 48px)}.header{top:24px;height:70px;gap:20px;padding:7px 16px 7px 24px}.header-phone{margin-left:auto;height:54px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;width:36px;height:40px;padding:7px;background:none}.menu-toggle span{height:1px;width:23px;background:white;transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.navigation{display:none;position:absolute;top:82px;left:0;right:0;padding:20px 28px;background:#1c1b21;border:1px solid #ffffff15;border-radius:22px;box-shadow:0 20px 50px #0008}.navigation.is-open{display:flex;align-items:stretch;flex-direction:column;gap:4px}.navigation a,.navigation button{text-align:left;font-size:16px;padding:12px 0}.hero-copy{padding-top:180px;width:70%}.hero-model{top:195px;right:-140px;opacity:.85}.hero-description{max-width:450px;font-size:20px}.desktop-break{display:none}.hero{height:760px}.hero-copy .booking-button{width:330px;min-height:74px;font-size:21px}.about-grid{gap:40px}.about{padding:60px 0 90px;min-height:0}.about h2{font-size:34px}.about p{font-size:16px;line-height:1.5}}
@media(max-width:600px){.container{width:calc(100% - 40px)}.hero{height:850px;background-size:auto 850px;background-position:48% top}.header{top:20px;height:62px;padding:6px 12px 6px 20px;gap:12px}.brand{width:94px}.header-phone{width:42px;height:42px;background:#ffffff12;margin-left:auto}.header-phone span{display:none}.header-phone .icon{width:17px;height:19px}.menu-toggle{width:30px;padding:4px}.hero-copy{padding-top:125px;width:100%}.address{font-size:12px;line-height:18px;letter-spacing:-.1px;gap:5px}.address .icon{width:10px;height:13px}.hero-title{margin-top:16px}.wordmark{width:100%}.club{width:54%;margin-top:3px}.hero-description{font-size:16px;line-height:1.5;letter-spacing:-.2px;max-width:350px;margin:25px 0 0}.hero-model{width:490px;top:365px;right:calc(50% - 245px);opacity:1;mask-image:linear-gradient(#000 72%,transparent 97%)}.hero-copy .booking-button{position:absolute;top:740px;left:0;width:100%;min-height:64px;font-size:18px}.hero::after{height:50px}.about{padding:38px 0 66px}.about-grid{grid-template-columns:1fr;gap:46px}.about h2{font-size:32px;letter-spacing:-1px;margin-bottom:24px}.about p{font-size:15px;line-height:1.6}.about-logo{width:240px;justify-self:center;margin-top:0}.navigation{top:74px}dialog{padding:48px 24px 28px}dialog h2{font-size:25px}.dialog-phone{font-size:23px}.dialog-address{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
/* Glyph outlines recovered from the supplied PDFs. */
@font-face{font-family:'Source Heading';src:url('assets/source-heading.woff') format('woff');font-style:normal;font-weight:400;font-display:swap}
/* Reference: 1440px canvas, 1160px content, 366×369 cards, 31px gaps, 30px corners. */
section[id]{scroll-margin-top:40px}.home-section{padding:80px 0 100px;background-color:#000}.masters-section,.programs-section{background-image:radial-gradient(ellipse at 100% 45%,#361b41 0,transparent 46%),radial-gradient(ellipse at 0 0,#00242a 0,transparent 35%)}.section-heading{display:flex;justify-content:center;margin-bottom:80px}.section-title{text-transform:uppercase;font-family:var(--heading);font-weight:400;font-size:100px;line-height:1;letter-spacing:0;text-align:center;background:var(--heading-gradient);background-clip:text;-webkit-background-clip:text;color:transparent;margin:0}.cards-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px 31px}.master-card,.program-card{min-width:0}.photo-placeholder{aspect-ratio:366/369;border-radius:30px;background:#1e1e1e;display:flex;align-items:center;justify-content:center;overflow:hidden}.photo-label{font-size:24px;line-height:1;font-weight:400}.card-caption{margin-top:19px}.card-caption h3{font-weight:400;font-size:20px;line-height:24px;margin:0 0 9px}.card-meta{display:block;font-size:16px;line-height:19px;color:#4ac5e0}.card-meta span{display:inline-block;font-family:Arial,sans-serif;font-size:18px;vertical-align:-1px}.section-action{display:flex;justify-content:center;margin-top:64px}.section-button{font-family:var(--font);font-weight:400;font-size:20px;text-transform:none;box-shadow:none}.interior-section{background-image:radial-gradient(ellipse at 0 100%,#211329,transparent 55%)}.interior-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:31px}.interior-frame{min-width:0}.map-section{padding:80px 0 0;background:#000}.map-frame{height:480px;position:relative;overflow:hidden;border-radius:30px;background:#e6e6e6}.map-frame iframe{width:100%;height:100%;border:0;color-scheme:normal}.map-link{display:block;width:fit-content;color:#4ac5e0;font-size:14px;line-height:20px;margin-top:18px}.map-link:hover{text-decoration:underline}.footer{background:#000;padding:110px 0 100px}.footer-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.footer-contacts h2{font-family:var(--font);font-weight:600;font-size:50px;line-height:1.2;text-transform:uppercase;color:#4ac5e0;margin:0 0 38px}.footer-phone{display:block;width:fit-content;font-size:42.67px;line-height:1.2;white-space:nowrap;margin-bottom:38px}.callback-button{font-family:var(--font);font-size:20px;font-weight:400;text-transform:none;box-shadow:none;margin-bottom:32px}.footer-hours{font-size:20px;line-height:1.4;margin:0 0 34px}.footer-address{font-size:22px;line-height:1.4;margin:0}.footer-brand{width:450px;max-width:100%;justify-self:end}.catalog-page{background:radial-gradient(ellipse at 100% 30%,#301334,transparent 50%),radial-gradient(ellipse at 0 0,#00242a,transparent 35%),#000}.catalog-header{height:190px;position:relative}.catalog-content{padding-top:10px;padding-bottom:60px}.catalog-content>h1{margin:0 0 80px}.back-link{display:block;width:fit-content;color:#4ac5e0;font-size:14px;margin-bottom:30px}.catalog-tabs{display:flex;justify-content:center;gap:40px;margin-bottom:70px}.catalog-tabs a{font-size:20px;color:#fff}.catalog-tabs a:hover{color:#4ac5e0}.catalog-category{margin-top:70px}.catalog-category h2{font:400 50px/1.2 var(--heading);text-align:center;color:#4ac5e0;margin:0 0 50px}.skip-link:not(:focus){clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap;padding:0}
@media(max-width:1199px){.section-title{font-size:80px}.footer-phone{font-size:34px}.footer-address{font-size:18px}.footer-hours{font-size:17px}.footer-layout{gap:55px}}
@media(max-width:900px){.home-section{padding:60px 0 70px}.section-title{font-size:66px}.section-heading{margin-bottom:55px}.cards-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 24px}.interior-grid{gap:24px}.photo-label{font-size:20px}.footer-layout{gap:40px}.footer-contacts h2{font-size:40px}.footer-phone{font-size:28px}.footer-hours{font-size:15px}.footer-address{font-size:16px}.callback-button{min-height:70px}.footer{padding:80px 0}.catalog-header{height:130px}.catalog-content>h1{margin-bottom:55px}}
@media(max-width:600px){section[id]{scroll-margin-top:24px}.home-section{padding:45px 0 55px}.section-title{font-size:clamp(36px,10vw,55px)}.section-heading{margin-bottom:38px}.cards-grid{gap:28px 16px}.photo-placeholder{border-radius:18px}.photo-label{font-size:16px}.card-caption{margin-top:13px}.card-caption h3{font-size:15px;line-height:20px;margin-bottom:7px}.card-meta{font-size:12px;line-height:16px}.card-meta span{font-size:15px}.section-action{margin-top:40px}.section-button{width:100%;font-size:18px;min-height:68px}.interior-grid{grid-template-columns:1fr;gap:24px}.interior-frame .photo-placeholder{aspect-ratio:366/260}.map-section{padding-top:45px}.map-frame{height:350px;border-radius:22px}.map-link{font-size:12px;margin-top:16px}.footer{padding:60px 0}.footer-layout{grid-template-columns:1fr;gap:55px}.footer-contacts h2{font-size:36px;margin-bottom:28px}.footer-phone{font-size:30px;margin-bottom:28px}.callback-button{width:100%;font-size:18px;min-height:68px;margin-bottom:28px}.footer-hours{font-size:14px;margin-bottom:26px}.footer-address{font-size:16px}.footer-brand{width:270px;justify-self:center}.catalog-header{height:110px}.catalog-content{padding-bottom:40px}.catalog-content>h1{margin-bottom:40px}.back-link{font-size:12px;margin-bottom:28px}.catalog-tabs{gap:15px;margin-bottom:40px;flex-wrap:wrap}.catalog-tabs a{font-size:14px}.catalog-category{margin-top:45px}.catalog-category h2{font-size:34px;margin-bottom:35px}}
@media(min-width:601px){.footer-layout{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-layout>*{min-width:0}}

.header-phone,.address,.footer-phone{font-weight:500}
/* The PDF gradient spans a wider area than the glyphs themselves. */
.section-title{background-size:878px 103px;background-position:calc(50% + 55px) center;background-repeat:no-repeat}
.about h2{background-image:linear-gradient(100deg,#38d9ec,#9879ac)}
@media(max-width:900px){.section-title{background-size:580px 75px;background-position:calc(50% + 36px) center}}
@media(max-width:600px){.section-title{background-size:350px 50px;background-position:calc(50% + 22px) center}}
/* Internal pages measured from the supplied 1440px layouts. */
.inner-page{background-color:#000;background-image:linear-gradient(to bottom,transparent 85%,#000),url('assets/hero-background.webp');background-position:center top;background-size:max(1440px,100%) 832px;background-repeat:no-repeat}.inner-header{height:200px;position:relative}.page-address{position:absolute;top:159px;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:5px;font-size:13.92px;line-height:18px}.page-address .icon{width:10px;height:14px}.page-title{margin-bottom:78px}.page-title .section-title{line-height:100px}.page-catalog{padding-bottom:100px}.inner-page .footer{padding-top:55px}.footer-map{min-width:0;position:relative;align-self:stretch;min-height:492px;max-height:540px;border-radius:30px;overflow:hidden;background:#e6e6e6}.footer-map iframe{display:block;width:100%;height:100%;min-height:492px;border:0;color-scheme:normal}.footer-map>a{position:absolute;bottom:14px;left:14px;padding:8px 12px;border-radius:8px;background:#fff;color:#1e1e1e;font-size:11px;max-width:calc(100% - 28px)}.inner-page .footer-layout{grid-template-columns:minmax(0,515px) minmax(0,565px);gap:80px;align-items:start}.master-link{display:block;border-radius:30px}.master-link:focus-visible{outline-offset:8px}.program-link{display:block;text-align:left;width:100%;padding:0;background:none;border-radius:30px}.program-link .card-caption{display:block}.card-name{display:block;font-size:20px;line-height:24px;margin-bottom:9px}.clock-icon{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.3;vertical-align:-3px;margin-right:5px}.navigation [aria-current=page]{color:#fff}.categories-grid{display:grid;grid-template-columns:repeat(3,minmax(0,355px));justify-content:space-between;gap:48px;margin-top:102px;padding-bottom:90px}.category-card{min-width:0}.category-art{height:335px;display:block;position:relative}.category-panel{position:absolute;inset:0;border:2px solid #19555d;border-radius:30px;background:radial-gradient(ellipse at 50% 70%,#320918,#050203)}.category-art img{position:absolute;bottom:2px;left:50%;transform:translateX(-50%);width:375px;max-width:none;pointer-events:none;clip-path:inset(0 0 0 0 round 0 0 30px 30px)}.category-women img{width:379px}.category-couples img{width:358px}.category-art h2{position:absolute;z-index:1;bottom:38px;left:0;right:0;margin:0;min-height:58px;display:flex;align-items:center;justify-content:center;border:1px solid #ffffff30;background:#0e0c0ad9;font-size:26px;font-weight:400;text-transform:uppercase;white-space:nowrap}.category-button{display:flex;align-items:center;justify-content:center;width:258px;max-width:100%;height:57px;border:2px solid #df2377;border-radius:32px;margin:24px auto 0;text-transform:uppercase;font-size:15.34px;font-weight:600;background:#0e0e0e}.category-button:hover{background:#28101e}.programs-page .page-title{margin-bottom:0}.programs-page .footer{margin-top:0}.profile-layout{display:grid;grid-template-columns:minmax(0,495px) minmax(0,599px);gap:65px;padding-top:32px}.profile-gallery{padding-top:34px;min-width:0}.profile-photo{aspect-ratio:495/499}.profile-photo .photo-label{font-size:32.46px}.profile-thumbnails{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;margin-top:20px}.thumbnail{width:100%;padding:0;border-radius:5px;aspect-ratio:1}.thumbnail .photo-label{font-size:5.46px}.thumbnail[aria-pressed=true]{outline:1px solid #4ac5e0;outline-offset:3px}.profile-copy{min-width:0}.profile-copy .section-title{text-align:left;color:#4ac5e0;background:none;line-height:100px}.profile-stats{display:flex;gap:38px;margin:25px 0 36px;padding:0 0 24px;border-bottom:2px solid #ae438f;font-size:22px;font-weight:500;line-height:1.4;flex-wrap:wrap}.profile-stats div{display:flex;gap:6px}.profile-stats dt,.profile-stats dd{margin:0}.profile-description{font-size:18px;line-height:22px;margin:0;min-height:198px}.profile-booking{margin-top:65px}.related-masters{padding-top:145px;padding-bottom:110px}.related-masters>h2{font-size:50px;font-weight:600;line-height:1.2;text-align:center;text-transform:uppercase;color:#4ac5e0;margin:0 0 75px}.vacancy-page .page-title{margin-bottom:86px}.vacancy-section{position:relative;padding:81px 0;isolation:isolate;margin-bottom:150px}.vacancy-surface{position:absolute;inset:0;border-radius:30px;background:#f1f1f1;z-index:-1}.vacancy-decoration{position:absolute;z-index:-2;top:-86px;width:100%;height:calc(100% + 170px);object-fit:fill;pointer-events:none}.vacancy-grid{display:grid;grid-template-columns:minmax(0,570px) minmax(0,510px);gap:80px;align-items:start}.vacancy-copy{color:#080808}.vacancy-copy h2{text-transform:uppercase;font-size:50px;font-weight:600;line-height:1.2;margin:0 0 30px;color:#333}.vacancy-copy p{font-size:22px;font-weight:500;line-height:26px;margin:0 0 26px}.vacancy-form{background:#101012;border:1px solid #4134dc;border-radius:20px;padding:28px 51px 30px;color:#fff;min-width:0}.vacancy-form h2{font-size:30px;line-height:1.25;font-weight:600;text-align:center;margin:0 0 13px;letter-spacing:-1px}.form-intro{font-size:16px;text-align:center;line-height:23px;margin:0 0 55px}.vacancy-form>input{display:block;width:100%;height:87px;padding:0 40px;border-radius:22px;border:1px solid #717171;background:transparent;color:white;font:400 20px var(--font);margin:0 0 15px;outline-offset:4px}.vacancy-form>input::placeholder{color:#868686;opacity:1}.vacancy-form>input:focus-visible{outline:2px solid #4ac5e0}.application-button{display:block;width:100%;height:87px;background:var(--pink);border-radius:20px;font-size:20px;font-weight:500;margin-top:15px}.application-button:hover{background:#ec348b}.consent-label{display:flex;align-items:flex-start;justify-content:center;gap:12px;margin-top:16px;font-size:12px;line-height:1.6;color:#a5a5a5;cursor:pointer}.consent-label input{width:18px;height:18px;flex:none;margin:0;accent-color:#4ac5e0}.form-status{font-size:12px;line-height:1.6;color:#aaa;margin:16px 0 0}.form-status a{color:#4ac5e0;white-space:nowrap}.form-status.is-active{color:#fff}.profile-not-found{padding:60px 0;text-align:center}.profile-not-found h1{font-size:32px}.profile-not-found a{color:#4ac5e0;text-decoration:underline}
@media(max-width:1199px){.inner-page .footer-layout{gap:55px}.categories-grid{gap:30px;grid-template-columns:repeat(3,minmax(0,1fr))}.category-art{height:29vw;max-height:335px}.category-art img{width:106%}.category-couples img{width:100%}.category-art h2{font-size:21px}.profile-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:42px}.profile-stats{gap:20px;font-size:18px}.profile-description{font-size:16px;line-height:21px}.profile-booking{margin-top:40px}.related-masters>h2{font-size:40px}.vacancy-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:45px}.vacancy-form{padding:28px}.vacancy-form h2{font-size:25px}.vacancy-copy h2{font-size:40px}.vacancy-copy p{font-size:18px;line-height:24px}.vacancy-form>input{padding:0 25px}.form-intro{font-size:14px;margin-bottom:36px}}
@media(max-width:900px){.inner-header{height:163px}.page-address{top:118px;font-size:12px}.page-title .section-title{line-height:80px}.page-title{margin-bottom:55px}.categories-grid{margin-top:75px;gap:22px}.category-art h2{font-size:16px;min-height:45px;bottom:24px}.category-button{height:50px;font-size:12px}.category-art{height:29vw}.inner-page .footer-layout{grid-template-columns:1fr;gap:45px}.footer-map{height:420px;min-height:0;max-height:none}.footer-map iframe{min-height:0;height:100%}.profile-layout{padding-top:18px;gap:30px;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}.profile-copy .section-title{font-size:66px;line-height:80px}.profile-gallery{padding-top:24px}.profile-thumbnails{gap:10px;margin-top:15px}.profile-stats{gap:12px;font-size:15px;margin:10px 0 24px;padding-bottom:18px}.profile-description{font-size:14px;line-height:20px;min-height:0}.profile-booking{font-size:18px;min-height:68px;width:100%;margin-top:28px}.related-masters{padding-top:80px;padding-bottom:70px}.related-masters>h2{font-size:32px;margin-bottom:45px}.vacancy-grid{grid-template-columns:1fr;gap:45px;max-width:600px}.vacancy-copy p{font-size:18px;line-height:25px}.vacancy-copy h2{font-size:38px}.vacancy-form{padding:35px 45px}.vacancy-section{padding:50px 0;margin-bottom:75px}.vacancy-page .page-title{margin-bottom:55px}.vacancy-decoration{display:none}.form-intro{margin-bottom:30px}.page-catalog{padding-bottom:65px}}
@media(max-width:600px){.inner-header{height:145px}.page-address{top:103px;font-size:10px;line-height:16px;gap:4px}.page-address .icon{width:8px;height:11px}.page-title .section-title{line-height:1.2}.page-title{margin-bottom:42px}.page-catalog{padding-bottom:50px}.card-name{font-size:15px;line-height:20px;margin-bottom:7px}.clock-icon{width:13px;height:13px;vertical-align:-2px;margin-right:4px}.categories-grid{grid-template-columns:1fr;gap:76px;max-width:355px;margin-top:72px;padding-bottom:65px;width:calc(100% - 56px)}.category-art{height:auto;aspect-ratio:355/335;max-height:none}.category-art h2{font-size:24px;min-height:54px;bottom:35px}.category-button{height:57px;font-size:15px;margin-top:24px}.category-panel{border-radius:25px}.profile-layout{display:flex;flex-direction:column;padding-top:10px;gap:35px}.profile-gallery{padding-top:0}.profile-photo .photo-label{font-size:24px}.thumbnail .photo-label{font-size:8px}.profile-copy .section-title{font-size:54px;line-height:1.1}.profile-stats{font-size:16px;gap:18px;line-height:1.5;margin:22px 0;padding-bottom:20px}.profile-description{font-size:15px;line-height:22px}.profile-booking{margin-top:32px}.related-masters{padding-top:65px;padding-bottom:55px}.related-masters>h2{font-size:28px;line-height:1.25;margin-bottom:35px}.inner-page .footer{padding-top:35px}.footer-map{height:350px;border-radius:22px}.vacancy-section{padding:36px 0;margin-bottom:60px}.vacancy-surface{border-radius:24px}.vacancy-page .page-title{margin-bottom:40px}.vacancy-grid{gap:30px}.vacancy-copy h2{font-size:30px;margin-bottom:22px}.vacancy-copy p{font-size:16px;line-height:23px;margin-bottom:20px}.vacancy-form{padding:28px 20px}.vacancy-form h2{font-size:24px;letter-spacing:-.5px}.form-intro{font-size:12px;line-height:20px;margin-bottom:28px}.vacancy-form>input{height:66px;padding:0 20px;font-size:16px;border-radius:18px}.application-button{height:68px;font-size:16px;border-radius:18px}.consent-label{font-size:10px;gap:9px}.consent-label input{width:16px;height:16px}.form-status{font-size:11px}.vacancy-form .form-status a{white-space:normal}}
/* The vacancy uses a second sans face; preserve its PDF glyphs rather than substitute it. */
@font-face{font-family:VacancyMedium;src:url('assets/vacancy-medium.woff') format('woff');font-display:swap}
@font-face{font-family:VacancyRegular;src:url('assets/vacancy-regular.woff') format('woff');font-display:swap}
@font-face{font-family:VacancySemibold;src:url('assets/vacancy-semibold.woff') format('woff');font-display:swap}
.vacancy-copy p,.application-button,.vacancy-form>input{font-family:VacancyMedium,Montserrat,sans-serif;font-weight:400}.vacancy-form h2{font-family:VacancySemibold,Montserrat,sans-serif;font-weight:400;letter-spacing:0}.form-intro,.consent-label{font-family:VacancyRegular,Montserrat,sans-serif}.form-intro{font-size:18px}.vacancy-decoration{z-index:0}.vacancy-grid{position:relative;z-index:1}
@media(min-width:901px){.profile-stats{margin-bottom:16px}}
@media(max-width:1199px){.form-intro{font-size:16px}}
@media(max-width:600px){.form-intro{font-size:14px}}

@media(min-width:901px){.vacancy-form .form-intro{margin-bottom:20px}}
/* WordPress content uses the approved layout and media geometry. */
.photo-placeholder img{width:100%;height:100%;object-fit:cover}.thumbnail{background:none;overflow:hidden}.thumbnail .photo-placeholder{border-radius:5px;height:100%}.editable-copy p{margin-top:0}.profile-description p{margin:0 0 1em}.mon-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.vacancy-form>input[type=hidden]{display:none}.application-button:disabled{opacity:.65;cursor:wait}.pagination{position:static;display:block;margin:48px 0 0}.pagination .nav-links{display:flex;justify-content:center;gap:20px}.pagination .page-numbers{padding:10px;color:var(--cyan)}.pagination .current{color:#fff}.content-page{min-height:45vh}.content-page h1{font-size:40px}.content-page .editable-copy{font-size:18px;line-height:1.6}.vacancy-form .consent-label a{text-decoration:underline}

/* Shared contacts footer from the PDF: text left, map right, no extra logo. */
.footer,.inner-page .footer{padding:55px 0 100px}
.footer-layout,.inner-page .footer-layout{grid-template-columns:minmax(0,515px) minmax(0,565px);gap:80px;align-items:start}
.footer .callback-button{width:406px;max-width:100%;min-height:87px}
.footer-map-column{min-width:0}
.footer-map{height:492px;min-height:0;max-height:none}
.footer-map iframe{height:100%;min-height:0}
.footer-map-column>.map-link{margin-top:14px}
@media(max-width:1199px){.footer-layout,.inner-page .footer-layout{gap:55px}}
@media(max-width:900px){.footer,.inner-page .footer{padding:55px 0 70px}.footer-layout,.inner-page .footer-layout{grid-template-columns:1fr;gap:40px}.footer-map{height:420px}}
@media(max-width:600px){.footer,.inner-page .footer{padding:35px 0 50px}.footer .callback-button{width:100%;min-height:68px}.footer-map{height:350px}.footer-map-column>.map-link{font-size:12px}}
/* The background glows fade to the same black at every section boundary. */
.about,.home-section{position:relative;isolation:isolate;background-color:#000;background-image:none}
.about::before,.masters-section::before,.programs-section::before,.interior-section::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 150px,#000 calc(100% - 150px),transparent 100%);mask-image:linear-gradient(to bottom,transparent 0,#000 150px,#000 calc(100% - 150px),transparent 100%)}
.about::before{background:radial-gradient(ellipse at 100% 80%,#002d33 0,transparent 52%),radial-gradient(ellipse at 0 85%,#3b1b40 0,transparent 52%)}
.masters-section::before,.programs-section::before{background:radial-gradient(ellipse at 100% 45%,#361b41 0,transparent 46%),radial-gradient(ellipse at 0 20%,#00242a 0,transparent 40%)}
.interior-section::before{background:radial-gradient(ellipse at 0 75%,#211329,transparent 65%)}
.hero::after{height:120px;background:linear-gradient(transparent,#000);z-index:1}
.about-photo{width:100%;aspect-ratio:1280/895;object-fit:cover;border-radius:30px;justify-self:end;margin:0}
.breadcrumbs{margin-top:6px;margin-bottom:30px;font-size:14px;line-height:1.6;color:#b7b5bd}
.breadcrumbs ol{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px 0}
.breadcrumbs li{display:inline;overflow-wrap:anywhere}
.breadcrumbs li+li::before{content:"/";color:#69646f;margin:0 12px}
.breadcrumbs a:hover{color:var(--cyan)}.breadcrumbs [aria-current=page]{color:var(--cyan)}
.program-detail{display:grid;grid-template-columns:minmax(0,495px) minmax(0,599px);gap:65px;padding:32px 0 85px;align-items:start}
.program-detail-photo{aspect-ratio:495/499}.program-detail-photo .photo-label{font-size:32px}
.program-detail-title{font:600 clamp(34px,3.5vw,50px)/1.16 var(--font);text-transform:uppercase;overflow-wrap:anywhere;margin:0 0 30px;background:var(--heading-gradient);background-clip:text;-webkit-background-clip:text;color:transparent}
.program-details{display:flex;flex-wrap:wrap;gap:20px 45px;margin:0 0 28px;padding:0 0 28px;border-bottom:2px solid #ae438f}
.program-details dt{font-size:14px;line-height:1.5;color:#b7b5bd;margin-bottom:8px}.program-details dd{font-size:24px;line-height:1.3;color:var(--cyan);margin:0}
.program-description{font-size:18px;line-height:1.5}.program-description p{margin-bottom:1em}.program-description ul,.program-description ol{padding-left:1.3em}
.program-booking{margin-top:36px}
.related-programs{padding:35px 0 100px}.related-programs>h2{font:600 50px/1.2 var(--font);text-transform:uppercase;text-align:center;color:var(--cyan);margin:0 0 70px}
@media(max-width:1199px){.program-detail{gap:42px;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}.program-description{font-size:16px}}
@media(max-width:900px){.about-photo{border-radius:24px}.program-detail{gap:30px;padding-bottom:60px}.program-detail-title{font-size:34px}.program-details{gap:20px}.program-details dd{font-size:20px}.program-booking{min-height:68px;font-size:18px;margin-top:24px}.related-programs>h2{font-size:36px;margin-bottom:45px}}
@media(max-width:600px){.hero::after{height:90px}.about::before,.home-section::before{-webkit-mask-image:linear-gradient(transparent,#000 90px,#000 calc(100% - 90px),transparent);mask-image:linear-gradient(transparent,#000 90px,#000 calc(100% - 90px),transparent)}.about-grid{gap:30px}.about-photo{border-radius:18px}.breadcrumbs{font-size:12px;margin-top:0;margin-bottom:24px}.breadcrumbs li+li::before{margin:0 8px}.program-detail{grid-template-columns:1fr;gap:30px;padding-top:10px;padding-bottom:35px}.program-detail-photo{aspect-ratio:366/300}.program-detail-photo .photo-label{font-size:24px}.program-detail-title{font-size:32px;margin-bottom:24px}.program-details{margin-bottom:24px;padding-bottom:24px}.program-description{font-size:15px}.program-booking{width:100%}.related-programs{padding:30px 0 55px}.related-programs>h2{font-size:28px;margin-bottom:35px}}

/* Original map image extracted from the supplied Masters PDF. */
.footer-map{height:auto;aspect-ratio:1444/1258}
.footer-map>.footer-map-link{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;padding:0;background:none;border-radius:inherit}
.footer-map-link img{width:100%;height:100%;object-fit:contain}
.footer-map-link:focus-visible{outline-offset:-4px}

/* A single, swipeable row of interior photos: three cards on desktop. */
.interior-slider{--interior-gap:31px;--interior-visible:3;min-width:0;position:relative}
.interior-slider .interior-grid{display:flex;gap:var(--interior-gap);overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--pink) #242027;padding-bottom:18px}
.interior-slider .interior-frame{flex:0 0 calc((100% - (var(--interior-visible) - 1)*var(--interior-gap))/var(--interior-visible));scroll-snap-align:start}
.interior-slider img{user-select:none;-webkit-user-drag:none}
.interior-grid:focus-visible{outline:2px solid var(--cyan);outline-offset:6px}
.interior-controls{position:absolute;inset:0 0 18px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}
.interior-controls[hidden]{display:none}

.interior-controls button{display:grid;place-items:center;width:52px;height:52px;margin:0 16px;padding:12px;border:1px solid #ffffff40;border-radius:50%;background:#08060dcc;backdrop-filter:blur(8px);color:#fff;pointer-events:auto;box-shadow:0 2px 12px #0004;transition:background .2s,opacity .2s}
.interior-controls button:hover:not(:disabled){background:var(--pink)}
.interior-controls button:disabled{opacity:0;visibility:hidden;pointer-events:none}
.interior-controls svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:900px){.interior-slider{--interior-gap:24px;--interior-visible:2}}
@media(max-width:600px){.interior-slider{--interior-visible:1}.interior-controls button{width:46px;height:46px;margin-inline:10px;padding:10px}}

/* Direct photo dragging preserves normal vertical page scrolling and pinch zoom. */
.interior-slider .interior-grid,.profile-track{touch-action:pan-y pinch-zoom;cursor:grab;user-select:none;-webkit-user-select:none}
.interior-slider .interior-grid.is-dragging,.profile-track.is-dragging{scroll-snap-type:none;scroll-behavior:auto;cursor:grabbing}
.profile-slider{position:relative;min-width:0}
.profile-track{display:flex;width:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;border-radius:30px}
.profile-track::-webkit-scrollbar{display:none}
.profile-slide{flex:0 0 100%;min-width:0;scroll-snap-align:start}
.profile-track{align-items:flex-start}
.profile-slide .profile-photo{width:100%}
.profile-slide .profile-photo:has(img){aspect-ratio:auto;background:transparent}
.master-card .photo-placeholder img{object-position:center top}
.profile-slide .profile-photo img{display:block;height:auto}
.profile-thumbnails .photo-placeholder img{object-position:center top}
.profile-track img{-webkit-user-drag:none;user-select:none}
.profile-slider .interior-controls{inset:0}
.profile-track:focus-visible{outline:2px solid var(--cyan);outline-offset:6px}
.thumbnail:disabled{cursor:default}
@media(max-width:600px){.profile-gallery{width:100%}.profile-track{border-radius:24px}}

.about .editable-copy p+p{margin-top:1em}

/* Graphite program cards keep the artwork and caption together. */
.program-card .program-link{display:flex;flex-direction:column;height:100%;padding:10px;background:#1e1e1e;border:1px solid #ffffff21;border-radius:30px;transition:border-color .2s,background-color .2s}
.program-card .program-link>.photo-placeholder{flex-shrink:0;border-radius:20px}
.program-card .program-link .card-caption{display:flex;flex:1;flex-direction:column;margin:0;padding:20px 12px 14px}
.program-card .card-name{overflow-wrap:anywhere}
.program-card .card-meta{margin-top:auto}
@media(hover:hover){.program-card .program-link:hover{background:#252325;border-color:#ffffff40}}
@media(max-width:600px){.program-card .program-link{padding:7px;border-radius:22px}.program-card .program-link>.photo-placeholder{border-radius:14px}.program-card .program-link .card-caption{padding:14px 5px 9px}}

/* Vacancy applications go directly to the recruitment Telegram contact. */
.vacancy-contact{min-width:0;align-self:center}.vacancy-telegram{display:flex;align-items:center;justify-content:center;text-align:center;padding:18px 24px;margin:0;font-family:Montserrat,sans-serif;line-height:1.4}

/* Additional master parameters provided by the salon. */
.profile-appearance{display:flex;flex-wrap:wrap;gap:12px 28px;margin:0 0 24px;font-size:16px;line-height:1.5}.profile-appearance div{display:flex;gap:6px}.profile-appearance dt{color:#c5c3c9}.profile-appearance dd{margin:0}
@media(max-width:600px){.profile-appearance{font-size:15px;gap:8px 20px}}

/* Two-model composition and gradient lettering from the supplied hero layout. */
.hero-models{position:absolute;top:227px;right:-187px;width:820px;height:612px;pointer-events:none;mask-image:linear-gradient(#000 85%,transparent 100%)}
.hero-models .hero-model{top:0;right:auto;width:74.59%;opacity:1;mask-image:none}
.hero-model-front{left:0;z-index:1}.hero-model-back{left:25.41%}
.hero-copy{padding-top:204px}
.hero-eyebrow{margin:0 0 8px;font-size:18px;font-weight:500;line-height:1.4}
.hero-wordmark,.hero-club{display:block;background:linear-gradient(97deg,#4ac5e0,#df2377);mask-repeat:no-repeat;mask-size:100% 100%}
.hero-wordmark{width:700px;max-width:100%;mask-image:url('assets/wordmark.png')}
.hero-club{width:376px;max-width:54%;mask-image:url('assets/club.png');background-size:186% 100%;margin-top:-1px}
.hero-wordmark .wordmark,.hero-club .club{width:100%;opacity:0;margin:0}
@media(min-width:601px) and (max-width:1199px){.hero-models{right:-150px;width:720px;height:538px;top:294px}.hero-copy{width:62%}.hero-description{max-width:510px}}
@media(min-width:601px) and (max-width:900px){.hero-copy{padding-top:158px;width:70%}.hero-models{top:300px;right:-135px;width:620px;height:463px}.hero-description{max-width:340px;font-size:18px}.hero-actions .booking-button{width:280px}}
@media(max-width:600px){
 .hero{height:auto;min-height:0;background-size:auto 900px}
 .hero-container{display:flex;flex-direction:column;height:auto;padding-bottom:50px}
 .hero-copy{display:contents}
 .hero-intro{order:1;padding-top:125px}
 .hero-eyebrow{text-align:center;font-size:16px;margin-bottom:8px}
 .hero-intro .address{justify-content:center;width:100%;font-size:clamp(11px,3.65vw,16px);line-height:1.5;letter-spacing:-.25px;white-space:nowrap}
 .hero-title{margin-top:24px}
 .hero-wordmark{width:100%}.hero-club{width:54%;margin-top:3px}
 .hero-models{order:2;position:relative;align-self:center;top:auto;right:auto;width:143%;height:auto;aspect-ratio:820/612;margin-top:24px;flex:none}
 .hero-actions{order:3;position:relative;z-index:2;margin-top:8px}
 .hero-description{margin:0;max-width:100%;font-size:16px;line-height:1.5;text-align:center}
 .hero-copy .booking-button{position:static;min-height:64px;width:100%;font-size:18px;margin-top:26px}
}

/* Floating contact disclosure uses the site's colors, typography and rounded surfaces. */
.contact-widget{position:fixed;z-index:40;left:24px;bottom:max(24px,env(safe-area-inset-bottom));font-family:var(--font)}
.contact-widget-toggle{display:grid;place-items:center;width:64px;height:64px;padding:19px;border:1px solid #ffffff35;border-radius:50%;list-style:none;cursor:pointer;background:var(--pink);box-shadow:0 6px 28px #0008,0 0 24px #d92a7b40;color:#fff;transition:background .2s,transform .2s}
.contact-widget-toggle::-webkit-details-marker{display:none}
.contact-widget-toggle::marker{content:''}
.contact-widget-toggle:hover{background:#ee318e;transform:translateY(-2px)}
.contact-widget-toggle:focus-visible{outline:2px solid var(--cyan);outline-offset:5px}
.contact-widget svg{display:block;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.contact-widget-toggle .contact-widget-cross{display:none}
.contact-widget[open] .contact-widget-toggle{background:#1e1e1e}
.contact-widget[open] .contact-widget-bubble{display:none}
.contact-widget[open] .contact-widget-cross{display:block}
.contact-widget-panel{position:absolute;left:0;bottom:80px;width:320px;max-width:calc(100vw - 48px);max-height:calc(100dvh - 130px);overflow:auto;padding:22px;border:1px solid #ffffff26;border-radius:24px;background:radial-gradient(ellipse at 0 0,#15323a,transparent 65%),#151318;box-shadow:0 16px 64px #0009}
.contact-widget-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}
.contact-widget-heading p{margin:0;font-size:19px;line-height:1.4;font-weight:500}
.contact-widget-close{display:grid;place-items:center;flex:none;width:32px;height:32px;margin:-6px -6px -6px 0;padding:4px;border-radius:50%;background:transparent;color:#c5c3c9}
.contact-widget-close:hover{background:#ffffff15;color:white}
.contact-widget-hint{margin:8px 0 20px;font-size:12px;line-height:1.5;color:#c5c3c9}
.contact-widget-link{display:flex;align-items:center;gap:12px;min-height:64px;padding:12px 10px;border:1px solid #ffffff20;border-radius:16px;background:#ffffff06;font-size:13px;line-height:1.4;transition:background .2s,border-color .2s}
.contact-widget-link+.contact-widget-link{margin-top:10px}
.contact-widget-link:hover{background:#ffffff0e;border-color:var(--cyan)}
.contact-widget-icon{display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:10px;color:var(--cyan);background:#4ac5e015}
.contact-widget-max{font-size:10px;font-weight:600;letter-spacing:-.4px;color:#e885b2;background:#d92a7b18}
.contact-widget-link small{display:block;margin-top:3px;color:#c5c3c9;font-size:11px;white-space:nowrap}
body.dialog-open .contact-widget{visibility:hidden}
@media(max-width:600px){.contact-widget{left:16px;bottom:max(16px,env(safe-area-inset-bottom))}.contact-widget-toggle{width:56px;height:56px;padding:15px}.contact-widget-panel{bottom:70px;max-width:calc(100vw - 32px);padding:20px;max-height:calc(100dvh - 108px)}}

/* Complete two-column preview on mobile; the catalog retains every master. */
@media(max-width:900px){.masters-section .master-card:nth-child(n+5){display:none}}

/* A compact, explicitly labelled link to the club's Telegram channel. */
.video-widget{position:fixed;z-index:39;right:24px;bottom:max(24px,env(safe-area-inset-bottom));width:148px;border:1px solid #ffffff35;border-radius:22px;background:#151318;box-shadow:0 10px 36px #0008;overflow:hidden}
.video-widget[hidden]{display:none}
.video-widget-link{display:block;border-radius:21px}
.video-widget-link:focus-visible{outline-offset:-3px}
.video-widget-preview{display:block;width:100%;aspect-ratio:11/16;object-fit:cover;background:#1e1e1e;pointer-events:none}
.video-widget-caption{display:block;padding:12px 6px;text-align:center;font-size:12px;line-height:1.45;background:linear-gradient(110deg,#123139,#251321);color:#fff}
.video-widget-caption strong{font-weight:600;color:var(--cyan)}
.video-widget-link:hover .video-widget-caption{background:#25313b}
.video-widget-close{position:absolute;top:7px;right:7px;display:grid;place-items:center;width:30px;height:30px;padding:5px;border:1px solid #ffffff40;border-radius:50%;background:#08060dcf;color:#fff}
.video-widget-close svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}
.video-widget-playback{position:absolute;bottom:66px;left:8px;padding:5px 8px;min-height:28px;border:1px solid #ffffff35;border-radius:14px;background:#08060dcf;font-size:10px;line-height:1.3}
.video-widget-close:hover,.video-widget-playback:hover{background:#3d2334}
body.dialog-open .video-widget,body:has(.contact-widget[open]) .video-widget{visibility:hidden;pointer-events:none}
@media(max-width:600px){.video-widget{right:16px;bottom:max(16px,env(safe-area-inset-bottom));width:116px;border-radius:18px}.video-widget-caption{padding:10px 4px;font-size:11px}.video-widget-link{border-radius:17px}.video-widget-playback{bottom:59px;font-size:9px;left:6px;padding:5px 7px}.video-widget-close{width:28px;height:28px;top:6px;right:6px}}
@media(max-height:480px){.video-widget{width:104px}.video-widget-preview{aspect-ratio:1}.video-widget-caption{font-size:10px;padding:8px 4px}.video-widget-playback{bottom:53px;font-size:9px}}

/* All booking dialogs share the floating widget's contact choices. */
dialog.contact-modal{width:min(360px,calc(100% - 32px));padding:24px;border:1px solid #ffffff26;border-radius:24px;background:radial-gradient(ellipse at 0 0,#15323a,transparent 65%),#151318}
.contact-modal .contact-widget-heading{align-items:flex-start}
.contact-modal h2{margin:0;font-size:19px;line-height:1.4;font-weight:500;overflow-wrap:anywhere}
.contact-modal .dialog-close{position:static;width:32px;height:32px;margin:-5px -5px 0 0;padding:4px;line-height:1}
.contact-modal #dialog-description{margin:8px 0 20px;font-size:12px;line-height:1.5;color:#c5c3c9}
.contact-modal svg{display:block;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}

/* Subtle independent movement keeps the original artwork intact. */
.hero-models .hero-model{transform-origin:50% 100%;transition:translate .7s ease-out;will-change:transform}
.hero-models .hero-model-front{animation:hero-front-drift 8s ease-in-out infinite;translate:var(--hero-pointer-x,0px) var(--hero-pointer-y,0px)}
.hero-models .hero-model-back{animation:hero-back-drift 10s ease-in-out -3s infinite;translate:calc(var(--hero-pointer-x,0px) * -.45) calc(var(--hero-pointer-y,0px) * .55)}
@keyframes hero-front-drift{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(-2px,-4px,0) scale(1.012)}}
@keyframes hero-back-drift{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(2px,-3px,0) scale(1.016)}}
.hero.hero-motion-paused .hero-model{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.hero-models .hero-model{animation:none;translate:none;transition:none;will-change:auto}}

/* Official Yandex Taxi widget with its supported custom icon layout. */
.taxi-widget{position:fixed;z-index:39;left:24px;bottom:calc(max(24px,env(safe-area-inset-bottom)) + 76px);width:64px;height:64px;font-family:var(--font)}
.taxi-widget-link{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:100%;height:100%;border:1px solid #ffe493;border-radius:50%;background:#ffcc33;color:#18130b;box-shadow:0 6px 28px #0008;transition:background .2s,transform .2s}
.taxi-widget-link svg{display:block;width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.taxi-widget-link span{font-size:9px;font-weight:700;line-height:1;letter-spacing:.5px}
.taxi-widget-link:hover{background:#ffda65;transform:translateY(-2px)}
.taxi-widget-link:focus-visible{outline:2px solid var(--cyan);outline-offset:5px}
body.dialog-open .taxi-widget,body:has(.contact-widget[open]) .taxi-widget{visibility:hidden;pointer-events:none}
@media(max-width:600px){.taxi-widget{left:16px;bottom:calc(max(16px,env(safe-area-inset-bottom)) + 68px);width:56px;height:56px}.taxi-widget-link svg{width:24px;height:24px}.taxi-widget-link span{font-size:8px}}
@media(prefers-reduced-motion:reduce){.taxi-widget-link{transition:none}}

/* Jivo launcher is the third button in the left contact column. */
.jivo-launcher{position:fixed;z-index:40;left:24px;bottom:calc(max(24px,env(safe-area-inset-bottom)) + 152px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:64px;height:64px;padding:0;border:1px solid #ffffff45;border-radius:50%;background:var(--cyan);color:#071b20;box-shadow:0 6px 28px #0008;transition:background .2s,transform .2s}
.jivo-launcher[hidden]{display:none}
.jivo-launcher svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.jivo-launcher span{font:700 9px/1 var(--font);letter-spacing:.5px}
.jivo-launcher:hover{background:#79d9ec;transform:translateY(-2px)}
.jivo-launcher:focus-visible{outline:2px solid white;outline-offset:5px}
body:not(.jivo-chat-open)>jdiv,#jivo_chat_widget{display:none!important}
body.dialog-open .jivo-launcher,body:has(.contact-widget[open]) .jivo-launcher,
body.jivo-chat-open .jivo-launcher,body.jivo-chat-open .contact-widget,body.jivo-chat-open .taxi-widget,body.jivo-chat-open .video-widget{visibility:hidden;pointer-events:none}
@media(max-width:600px){.jivo-launcher{left:16px;bottom:calc(max(16px,env(safe-area-inset-bottom)) + 136px);width:56px;height:56px}.jivo-launcher svg{width:24px;height:24px}.jivo-launcher span{font-size:8px}}
@media(prefers-reduced-motion:reduce){.jivo-launcher{transition:none}}

.footer-age{display:flex;align-items:center;justify-content:center;width:58px;height:40px;margin:24px 0 0;border:1px solid #ffffff50;border-radius:10px;color:#d0cdd4;font:600 20px/1 var(--font)}

.footer-notice{display:flex;align-items:center;gap:14px;margin-top:24px}.footer-notice .footer-age{flex:none;margin:0}.footer-disclaimer{margin:0;color:#d0cdd4;font:400 14px/1.5 var(--font)}
