:root{
  color-scheme:dark;
  --ink:#070605;
  --gold:#c9952b;
  --gold-light:#dfb65c;
  --paper:#f2ede4;
  --rail:72px;
  --header:62px;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--ink)}
body{color:var(--paper);font-family:Georgia,"Times New Roman",serif;min-width:320px}
button,a{font:inherit}
.site-shell{min-height:100vh;background:var(--ink)}
.house-rail{
  position:fixed;z-index:80;inset:0 auto 0 0;width:var(--rail);
  border-right:1px solid rgba(201,149,43,.55);
  background:#050504;display:flex;flex-direction:column;align-items:center
}
.rail-mark{height:96px;padding-top:14px;display:grid;place-items:start center}
.rail-mark img{width:42px;height:65px;object-fit:contain;display:block}
.rail-title{
  flex:1;display:flex;align-items:center;justify-content:center;
  writing-mode:vertical-rl;text-orientation:mixed;color:var(--gold);
  letter-spacing:.13em;font-size:17px
}
.rail-tools{display:flex;flex-direction:column;width:100%;padding-bottom:12px}
.rail-tools button{
  min-height:58px;border:0;background:transparent;color:var(--gold);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;cursor:pointer
}
.rail-tools button span{font:8px Arial,sans-serif;text-transform:uppercase;letter-spacing:.08em}
.house-header{
  position:fixed;z-index:70;top:0;left:var(--rail);right:0;height:var(--header);
  display:flex;align-items:center;gap:24px;padding:0 22px;
  background:rgba(5,5,4,.94);border-bottom:1px solid rgba(201,149,43,.25);
  backdrop-filter:blur(12px)
}
.consultation-button{
  flex:0 0 auto;border:1px solid rgba(201,149,43,.75);background:transparent;color:white;
  padding:10px 18px;text-transform:uppercase;font-size:12px;text-decoration:none;white-space:nowrap
}
.primary-nav{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%}
.primary-nav a{
  position:relative;border:0;background:transparent;color:white;text-decoration:none;text-transform:uppercase;
  font-size:11px;white-space:nowrap;padding:21px 0;letter-spacing:normal
}
.primary-nav a:hover,.primary-nav a:focus-visible{color:var(--gold);outline:none}
.primary-nav a.is-current::after{
  content:"";position:absolute;left:0;right:0;bottom:12px;height:1px;background:var(--gold)
}
.header-mark{flex:0 0 42px;height:58px;display:grid;place-items:center}
.header-mark img{width:37px;height:54px;object-fit:contain;display:block}
.entrance-hall{
  position:relative;margin-left:var(--rail);padding-top:var(--header);
  height:100vh;min-height:680px;overflow:hidden;background:#090806
}
.entrance-hero{position:absolute;inset:var(--header) 0 0 0;width:100%;height:calc(100% - var(--header));object-fit:cover;object-position:center;display:block}
.entrance-shade{
  position:absolute;inset:var(--header) 0 0 0;pointer-events:none;
  background:linear-gradient(90deg,rgba(3,3,2,.20),transparent 30%,transparent 72%,rgba(3,3,2,.12)),linear-gradient(0deg,rgba(3,3,2,.36),transparent 35%)
}
.house-identity{
  position:absolute;z-index:2;top:14.5%;left:50%;transform:translateX(-50%);text-align:center;
  width:min(720px,64vw);text-shadow:0 2px 14px rgba(0,0,0,.82)
}
.house-identity p{margin:0 0 3px;text-transform:uppercase;letter-spacing:.23em;font-size:18px}
.house-identity h1{margin:0;font-weight:400;text-transform:uppercase;letter-spacing:.08em;font-size:52px;line-height:1.05}
.identity-rule{height:1px;background:rgba(201,149,43,.75);width:68%;margin:14px auto 10px}
.house-identity span{text-transform:uppercase;letter-spacing:.22em;font-size:13px;color:#f1dfb7}
.entrance-introduction{
  position:absolute;z-index:2;left:50%;bottom:6.4%;transform:translateX(-50%);text-align:center;
  text-shadow:0 2px 14px rgba(0,0,0,.88);width:min(580px,72vw)
}
.entrance-introduction p{margin:0;color:#ead8b4;font-style:italic;font-size:20px}
.entrance-introduction h2{margin:2px 0 3px;font-size:56px;line-height:1;font-weight:400}
.entrance-introduction>span{display:block;text-transform:uppercase;letter-spacing:.16em;font-size:12px;color:#ead8b4}
.entrance-introduction a{
  display:inline-flex;flex-direction:column;align-items:center;margin-top:22px;color:#ead8b4;text-decoration:none;
  text-transform:uppercase;letter-spacing:.12em;font-size:12px
}
.entrance-introduction a::after{content:"";width:160px;height:1px;margin-top:8px;background:rgba(201,149,43,.78)}
.entrance-introduction b{font-size:24px;line-height:.7;font-weight:400;color:var(--gold);margin-top:5px}
.notice{
  position:fixed;z-index:120;left:50%;bottom:22px;transform:translateX(-50%);
  padding:12px 18px;border:1px solid rgba(201,149,43,.65);background:#171008;color:#f0deb6;
  font:11px Arial,sans-serif;letter-spacing:.05em
}
.notice[hidden]{display:none}
@media(max-width:1180px){
  .primary-nav{overflow-x:auto;justify-content:flex-start;gap:15px;padding-right:10px;scrollbar-width:none}
  .primary-nav::-webkit-scrollbar{display:none}
  .primary-nav a{font-size:9px}
  .house-identity h1{font-size:44px}
}
@media(max-width:820px){
  :root{--rail:0px;--header:58px}
  .house-rail{display:none}
  .house-header{left:0;padding:0 12px;gap:12px}
  .consultation-button{font-size:9px;padding:9px 10px}
  .primary-nav{justify-content:flex-start}
  .primary-nav a:not(.is-current){display:none}
  .primary-nav .header-mark{margin-left:auto}
  .entrance-hall{margin-left:0;min-height:620px}
  .house-identity{top:16%;width:90vw}
  .house-identity p{font-size:13px}
  .house-identity h1{font-size:34px}
  .house-identity span{font-size:9px}
  .entrance-introduction{bottom:7%}
  .entrance-introduction h2{font-size:44px}
}


/* Production 11.0 — Entrance Hall Welcome, House side-swipe folio */
.welcome-gateway{
  margin-top:20px;border:1px solid rgba(201,149,43,.72);background:rgba(7,6,5,.58);
  color:#f5ead4;padding:13px 24px;cursor:pointer;font-family:Georgia,serif;
  min-width:min(410px,80vw);backdrop-filter:blur(5px)
}
.welcome-gateway strong,.welcome-gateway span,.welcome-gateway em{display:block}
.welcome-gateway strong{text-transform:uppercase;letter-spacing:.14em;font-size:13px;font-weight:400}
.welcome-gateway span{margin-top:5px;color:#ead8b4;font-style:italic;font-size:12px}
.welcome-gateway em{margin-top:9px;color:var(--gold);text-transform:uppercase;letter-spacing:.13em;font:9px Arial,sans-serif;font-style:normal}
.site-shell{transition:transform .62s cubic-bezier(.22,.78,.18,1),filter .62s cubic-bezier(.22,.78,.18,1)}
body.welcome-slider-open .site-shell{transform:translateX(-8vw);filter:brightness(.48)}
.welcome-slider{
  position:fixed;z-index:3000;top:0;right:0;bottom:0;width:min(86vw,1180px);padding:8px 8px 8px 0;
  transform:translateX(103%);visibility:hidden;pointer-events:none;
  transition:transform .62s cubic-bezier(.22,.78,.18,1),visibility 0s linear .62s
}
body.welcome-slider-open .welcome-slider{transform:translateX(0);visibility:visible;transition-delay:0s;pointer-events:auto}
.welcome-slider-frame{
  position:relative;height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto;
  background:#090807;border:1px solid rgba(201,149,43,.58);box-shadow:-28px 0 70px rgba(0,0,0,.64)
}
.welcome-slider-return{
  justify-self:start;margin:22px 28px 18px;border:0;background:none;color:var(--gold);
  font:11px Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase;cursor:pointer;padding-right:70px
}
.welcome-slider-close{
  position:absolute;z-index:12;right:20px;top:13px;width:46px;height:46px;border:1px solid rgba(201,149,43,.45);
  background:rgba(9,8,7,.78);color:var(--gold);font:32px/1 Georgia,serif;cursor:pointer
}
.welcome-slider-close:hover,.welcome-slider-close:focus-visible{color:#fff1ca;border-color:#e4b95d;outline:none}
.welcome-slider-scroll{
  min-height:0;overflow:auto;background:#070605;border-top:1px solid rgba(201,149,43,.26);
  border-bottom:1px solid rgba(201,149,43,.26);scrollbar-width:thin
}
.welcome-page{width:min(760px,82%);margin:0 auto;padding:72px 0 74px}
.welcome-kicker{color:#d8c7a6;text-transform:uppercase;letter-spacing:.16em;font:10px Arial,sans-serif;margin:0 0 12px}
.welcome-page h2{font:400 clamp(46px,6vw,82px)/.98 Georgia,serif;color:#e0b85f;margin:0 0 36px}
.welcome-copy{font:17px/1.75 Georgia,serif;color:#ddd5c9;max-width:690px}
.welcome-copy p{margin:0 0 19px}.welcome-copy strong{font-weight:400;color:#f0d7a2}
.welcome-slider-navigation{display:grid;grid-template-columns:1fr 150px 1fr;align-items:stretch;min-height:92px}
.welcome-slider-navigation button,.welcome-slider-navigation>div{
  border:0;background:none;color:#f4eee5;padding:18px 26px;display:grid;align-content:center;gap:4px
}
.welcome-slider-navigation button{cursor:pointer;grid-template-columns:auto 1fr;column-gap:12px;text-align:left}
.welcome-slider-navigation button:last-child{grid-template-columns:1fr auto;text-align:right}
.welcome-slider-navigation button+div,.welcome-slider-navigation div+button{border-left:1px solid rgba(201,149,43,.26)}
.welcome-slider-navigation small{color:var(--gold);text-transform:uppercase;letter-spacing:.08em;font:9px Arial,sans-serif}
.welcome-slider-navigation strong{font:15px Georgia,serif;font-weight:400}
.welcome-slider-navigation>div{text-align:center}
.welcome-slider-navigation span{align-self:center;color:var(--gold);font-size:20px}
body.welcome-slider-open .house-header,body.welcome-slider-open .house-rail{visibility:hidden}
@media(max-width:820px){
  .welcome-gateway{min-width:0;width:86vw;padding:11px 14px}
  .welcome-slider{width:96vw;padding:8px 8px 8px 0}
  body.welcome-slider-open .site-shell{transform:translateX(-18vw)}
  .welcome-page{width:86%;padding:66px 0 54px}
  .welcome-page h2{font-size:clamp(40px,11vw,62px)}
  .welcome-copy{font-size:16px;line-height:1.68}
  .welcome-slider-navigation{grid-template-columns:1fr 86px 1fr;min-height:78px}
  .welcome-slider-navigation button,.welcome-slider-navigation>div{padding:12px 10px}
  .welcome-slider-navigation strong{font-size:12px}
}
@media(prefers-reduced-motion:reduce){.welcome-slider,.site-shell{transition:none!important}}


/* Production 11.0 — Entrance Hall Trichology foundation */
.trichology-principle{
  width:min(540px,78vw);
  margin:15px auto 0;
  padding:11px 18px 0;
  border-top:1px solid rgba(201,149,43,.56);
  text-shadow:0 2px 14px rgba(0,0,0,.9);
}
.trichology-principle small{
  display:block;
  color:#d2a34d;
  font:9px/1 Arial,sans-serif;
  letter-spacing:.22em;
  text-transform:uppercase;
}
.trichology-principle strong{
  display:block;
  margin-top:5px;
  color:#f3e6cf;
  font:400 15px/1.2 Georgia,"Times New Roman",serif;
  letter-spacing:.055em;
  text-transform:uppercase;
}
.trichology-principle p{
  margin:7px auto 0;
  max-width:500px;
  color:#e4d7c4;
  font:12px/1.45 Georgia,"Times New Roman",serif;
  font-style:normal;
}
.trichology-principle em{
  display:block;
  margin-top:5px;
  color:#d6b26b;
  font:italic 11px/1.35 Georgia,"Times New Roman",serif;
}
@media(max-height:820px) and (min-width:821px){
  .entrance-introduction{bottom:3.2%}
  .trichology-principle{margin-top:9px;padding-top:8px}
  .trichology-principle p{font-size:11px;line-height:1.35}
  .welcome-gateway{margin-top:11px}
}
@media(max-width:820px){
  .trichology-principle{width:88vw;padding-left:8px;padding-right:8px}
  .trichology-principle p{font-size:11px}
}
