/* New homepage (preview). Language of the approved keyring section:
   soft grey light, rendered objects, very large tight type, blur-to-sharp words. */
:root{--ink:#141213;--mute:#6E676B;--soft:#9C9599;--line:rgba(20,18,19,.1);--wine:#702D41;--g1:#E6E5E3;--g2:#F6F5F3;--card:#EFEEEC;
  --latin:"Inter Tight","Noto Sans SC",system-ui,sans-serif;--serif:"Noto Serif SC","Songti SC","STSong",serif;--cn:"Noto Sans SC",system-ui,-apple-system,"PingFang SC",sans-serif;
  --ease:cubic-bezier(.19,1,.22,1);--pad:clamp(18px,2.4vw,36px)}
*,*::before,*::after{box-sizing:border-box}
html{background:var(--g2)}
body.bx{margin:0;background:var(--g2);color:var(--ink);font:15px/1.6 var(--cn);-webkit-font-smoothing:antialiased;overflow-x:hidden}
.bx :where(h1,h2,h3,p){margin:0}
.bx a{color:inherit;text-decoration:none}
.bx img{display:block;max-width:100%}
.bx button{font:inherit;color:inherit}
.bx-skip{position:absolute;left:-999px;top:8px;z-index:100;background:var(--ink);color:#fff;padding:10px 14px;border-radius:10px}
.bx-skip:focus{left:12px}
.bx :focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:10px}
.bc-mark{display:block;height:34px;width:auto}
.bx-fine{font-size:12px;line-height:1.7;color:var(--soft)}
.bx-fine a{border-bottom:1px solid currentColor}
.bx-center{text-align:center}

/* Buttons */
.bx-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border-radius:12px;background:var(--ink);color:#fff!important;font:500 15px/1 var(--cn);letter-spacing:.02em;border:1px solid var(--ink);transition:background .4s,transform .4s var(--ease),border-color .4s}
.bx-btn:hover{background:var(--wine);border-color:var(--wine)}
.bx-btn:active{transform:scale(.97)}
.bx-btn-sm{min-height:38px;padding:0 16px;font-size:14px;border-radius:10px}
.bx-btn-lg{min-height:60px;padding:0 34px;font-size:17px;border-radius:14px}
.bx-btn-light{background:#fff;color:var(--ink)!important;border-color:#fff}
.bx-btn-light:hover{background:#fff;border-color:var(--ink)}
.bx-btn-ghost{background:transparent;color:var(--ink)!important;border-color:rgba(20,18,19,.2)}
.bx-btn-ghost:hover{background:var(--ink);color:#fff!important;border-color:var(--ink)}

/* Nav: two floating bars */
.bx-nav{position:fixed;inset:0 0 auto;z-index:30;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px var(--pad);pointer-events:none}
.bx-bar{pointer-events:auto;display:flex;align-items:center;gap:clamp(14px,2vw,30px);padding:8px 10px 8px 18px;border-radius:14px;background:rgba(242,241,239,.72);backdrop-filter:blur(16px) saturate(1.3);-webkit-backdrop-filter:blur(16px) saturate(1.3);box-shadow:inset 0 0 0 1px rgba(255,255,255,.6),0 6px 24px -14px rgba(20,18,19,.25)}
.bx-bar nav{display:flex;gap:clamp(14px,2vw,26px);padding-right:10px;font-size:15px}
.bx-bar nav a,.bx-login{color:#3B3638;transition:color .3s}
.bx-bar nav a:hover,.bx-login:hover{color:var(--ink)}
.bx-bar-r{gap:16px}

/* Hero: full-screen film */
.bv-hero{position:relative;height:100svh;min-height:560px;overflow:hidden;background:#0E0C0D;color:#F4EFEA;isolation:isolate}
.bv-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-3;transform:scale(1.04);animation:bv-in 2.4s var(--ease) both}
.bv-video-empty{background:radial-gradient(80% 70% at 60% 40%,#3A2E31 0%,#141112 70%)}
@keyframes bv-in{from{opacity:0;transform:scale(1.1)}to{opacity:1;transform:scale(1.04)}}
.bv-grade{position:absolute;inset:0;z-index:-2;pointer-events:none;background:linear-gradient(180deg,rgba(10,8,9,.55) 0%,rgba(10,8,9,0) 22%,rgba(10,8,9,0) 52%,rgba(10,8,9,.78) 100%),radial-gradient(120% 90% at 50% 45%,transparent 55%,rgba(10,8,9,.55) 100%)}
.bv-grade::after{content:"";position:absolute;inset:0;opacity:.09;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.bv-bars i{position:absolute;left:0;right:0;height:5.5vh;background:#0E0C0D;z-index:-1;animation:bv-bars 1.8s var(--ease) .2s both}
.bv-bars i:first-child{top:0;transform-origin:top}.bv-bars i:last-child{bottom:0;transform-origin:bottom}
@keyframes bv-bars{from{transform:scaleY(9)}to{transform:scaleY(1)}}
.bv-copy{position:absolute;left:0;right:0;bottom:calc(5.5vh + clamp(28px,5vh,56px));display:flex;flex-direction:column;align-items:center;text-align:center;padding:0 var(--pad)}
.bv-kicker{font:500 11px/1 var(--latin);letter-spacing:.24em;text-transform:uppercase;color:rgba(244,239,234,.72);opacity:0;animation:bx-in 1.4s var(--ease) .9s forwards}
.bx-zh .bv-kicker{letter-spacing:.18em}
.bv-sub{margin-top:16px;max-width:26em;font:500 clamp(20px,2.2vw,30px)/1.5 var(--serif);letter-spacing:.01em;text-shadow:0 2px 18px rgba(0,0,0,.45)}
.bx-en .bv-sub{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(24px,2.6vw,36px);font-weight:500;letter-spacing:0;line-height:1.3}
.bv-sub span{display:inline-block;opacity:0;filter:blur(10px);transform:translateY(8px);animation:bv-cap 1.4s var(--ease) forwards}
.bv-sub span:first-child{animation-delay:1.3s}.bv-sub span:last-child{animation-delay:4.1s}
.bx-en .bv-sub span:last-child{animation-delay:3.5s}
@keyframes bv-cap{to{opacity:1;filter:blur(0);transform:none}}
.bv-actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-top:26px;opacity:0;animation:bx-in 1.4s var(--ease) 1.8s forwards}
.bv-btn{display:inline-flex;align-items:center;white-space:nowrap;min-height:46px;padding:0 22px;border-radius:999px;background:#F4EFEA;color:#141213!important;font:500 14px/1 var(--cn);letter-spacing:.04em;transition:background .4s,color .4s}
.bv-btn:hover{background:#fff}
.bv-btn-line{background:rgba(244,239,234,.08);color:#F4EFEA!important;box-shadow:inset 0 0 0 1px rgba(244,239,234,.45);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.bv-btn-line:hover{background:rgba(244,239,234,.18)}
.bv-sound{display:inline-flex;align-items:center;gap:10px;min-height:46px;padding:0 16px;border:0;border-radius:999px;background:transparent;color:rgba(244,239,234,.86);font:500 13px/1 var(--cn);cursor:pointer}
.bv-sound:hover{color:#fff}
.bv-eq{display:inline-flex;align-items:flex-end;gap:2px;height:14px}
.bv-eq i{width:2px;height:4px;background:currentColor;border-radius:1px}
.bv-sound[aria-pressed="true"] .bv-eq i{animation:bv-eq 1s ease-in-out infinite}
.bv-sound[aria-pressed="true"] .bv-eq i:nth-child(2){animation-delay:.2s}.bv-sound[aria-pressed="true"] .bv-eq i:nth-child(3){animation-delay:.4s}
@keyframes bv-eq{0%,100%{height:4px}50%{height:14px}}
.bv-note{position:absolute;right:var(--pad);bottom:calc(5.5vh + 10px);font:400 10px/1.4 var(--cn);color:rgba(244,239,234,.5);letter-spacing:.04em}
.bv-scroll{position:absolute;left:50%;bottom:calc(5.5vh - 44px);width:44px;height:44px;transform:translateX(-50%);display:grid;place-items:center}
.bv-scroll::before{content:"";position:absolute;left:50%;top:8px;width:1px;height:28px;background:rgba(244,239,234,.2)}
.bv-scroll span{position:absolute;left:50%;top:8px;width:1px;height:28px;overflow:hidden}
.bv-scroll span::after{content:"";position:absolute;inset:0;background:#F4EFEA;animation:bv-drip 2.2s var(--ease) infinite}
@keyframes bv-drip{from{transform:translateY(-100%)}to{transform:translateY(100%)}}
@keyframes bx-in{from{opacity:0;transform:translateY(12px);filter:blur(8px)}to{opacity:1;transform:none;filter:blur(0)}}
/* Nav floats over the film: keep it legible */
.bx-lang{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 10px;border-radius:10px;font:500 13px/1 var(--latin);letter-spacing:.06em;color:#3B3638;box-shadow:inset 0 0 0 1px rgba(20,18,19,.16)}
.bx-lang:hover{box-shadow:inset 0 0 0 1px var(--ink);color:var(--ink)}

/* Statement (approved; unchanged look) */
.bx-statement{position:relative;padding:clamp(110px,12vw,170px) var(--pad) clamp(120px,14vw,200px);background:linear-gradient(var(--g2) 0%,#ECEBE9 30%,var(--g2) 100%);text-align:center;overflow:hidden}
.bx-object{width:min(300px,44vw);margin:-30px auto 40px;transform-origin:50% 0;transform:translate3d(var(--ox,0),var(--oy,0),0) rotate(var(--or,0deg));transition:transform .2s linear}
.bx-object img{width:100%;height:auto;filter:drop-shadow(0 40px 40px rgba(40,30,34,.18))}
.bx-big{font:500 clamp(44px,7.6vw,124px)/1.08 var(--serif);letter-spacing:-.04em}
.bx-big-left{text-align:left}
.bx-big span{display:inline-block}
.bx-para{max-width:22em;margin:clamp(36px,4vw,56px) auto 0;font:400 clamp(20px,2.2vw,32px)/1.5 var(--cn);letter-spacing:-.01em}
.bx-para span{display:inline}
.bx-btn-round{margin-top:48px;border-radius:999px}
[data-blur] span{filter:blur(var(--b,0px));opacity:var(--o,1);transition:filter .5s var(--ease),opacity .5s var(--ease)}

/* Work: browse by industry */
.bx-work{padding:clamp(110px,12vw,180px) var(--pad) clamp(80px,10vw,140px)}
.bx-work-head{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;flex-wrap:wrap;margin-bottom:clamp(36px,4vw,56px)}
.bx-h2{font:500 clamp(36px,4.8vw,80px)/1.12 var(--serif);letter-spacing:-.035em}
.bx-k{margin-bottom:18px;font:500 12px/1 var(--latin);letter-spacing:.14em;text-transform:uppercase;color:#7A7377}
.bx-h2 span{display:inline-block}
.bx-tabs{display:flex;flex-wrap:wrap;gap:8px;width:100%}
.bx-tabs button{position:relative;border:1px solid rgba(20,18,19,.14);background:rgba(255,255,255,.55);cursor:pointer;min-height:44px;padding:0 18px;border-radius:999px;font-size:15px;color:#3B3638;white-space:nowrap;transition:background .4s var(--ease),color .3s,border-color .3s}
.bx-tabs button sup{margin-left:4px;font:500 10px/1 var(--latin);color:var(--soft)}
.bx-tabs button:hover{border-color:var(--ink);color:var(--ink)}
.bx-tabs button[aria-selected="true"]{background:var(--ink);border-color:var(--ink);color:#fff}
.bx-tabs button[aria-selected="true"] sup{color:rgba(255,255,255,.6)}
.bx-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2vw,28px)}
.bx-grid.is-one{grid-template-columns:1fr 1fr}
.bx-grid.is-one .bx-card:not([hidden]){order:1}
.bx-grid.is-one .bx-card.is-lead{grid-column:span 2;order:0}
.bx-grid.is-one .bx-card.is-lead .bx-shot{aspect-ratio:16/7.2}
.bx-card{display:flex;flex-direction:column;opacity:1;transform:none;filter:none;transition:opacity .6s var(--ease),transform .8s var(--ease),filter .6s var(--ease)}
.bx-card[hidden]{display:none}
.bx-card.is-out{opacity:0;transform:translateY(16px) scale(.98);filter:blur(10px)}
.bx-shot{position:relative;display:block;overflow:hidden;border-radius:18px;background:var(--card);aspect-ratio:16/10.5;box-shadow:inset 0 0 0 1px rgba(20,18,19,.06),0 24px 50px -36px rgba(20,18,19,.45);transition:box-shadow .6s var(--ease),transform .8s var(--ease)}
.bx-shot img{width:100%;height:auto;transform:translateY(0);transition:transform 1.2s var(--ease)}
.bx-card:hover .bx-shot{transform:translateY(-4px);box-shadow:inset 0 0 0 1px rgba(20,18,19,.06),0 36px 60px -34px rgba(20,18,19,.5)}
.bx-card:hover .bx-shot img{transform:translateY(calc(-100% + var(--sh,300px)));transition:transform 7s cubic-bezier(.45,.05,.35,1)}
.bx-cap{display:flex;align-items:baseline;gap:10px;padding:14px 4px 0}
.bx-cap b{font-weight:500;font-size:17px;letter-spacing:.01em}
.bx-cap small{font:500 12px/1 var(--latin);letter-spacing:.06em;color:var(--soft)}
.bx-cap i{margin-left:auto;font-style:normal;font-family:var(--latin);transition:transform .5s var(--ease)}
.bx-card:hover .bx-cap i{transform:translate(3px,-3px)}
.bx-work>.bx-fine{margin-top:28px}

/* Pricing: split, heading stays while the plans scroll */
.bx-pricing{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,5vw,96px);padding:clamp(110px,12vw,180px) var(--pad) clamp(80px,10vw,140px);background:linear-gradient(var(--g2),#EDECEA)}
.bx-pricing-side{position:sticky;top:120px;align-self:start}
.bx-side-note{margin-top:24px;max-width:24em;color:var(--mute)}
.bx-pricing-main{display:grid;gap:clamp(12px,1.4vw,18px)}
.bx-plan-pair{display:grid;grid-template-columns:1fr 1fr;gap:clamp(12px,1.4vw,18px)}
.bx-plan{display:flex;flex-direction:column;gap:16px;min-height:320px;padding:clamp(24px,2.4vw,36px);border-radius:24px;background:#fff;box-shadow:inset 0 0 0 1px rgba(20,18,19,.05)}
.bx-plan>p:not(.bx-plan-k):not(.bx-price){color:var(--mute);font-size:15px}
.bx-plan .bx-btn{margin-top:auto;align-self:flex-start}
.bx-plan-k{font:500 13px/1 var(--cn);letter-spacing:.06em;color:var(--mute)}
.bx-price{font:400 clamp(48px,5vw,80px)/1 var(--latin);letter-spacing:-.06em;margin:6px 0 4px}
.bx-price i{font-style:normal;font-size:.32em;letter-spacing:0;color:var(--mute);margin-left:4px}
.bx-price-text{font-family:var(--serif);font-weight:500;font-size:clamp(40px,4.4vw,68px);letter-spacing:-.04em;margin-top:14px}
.bx-plan-main{min-height:400px;background:var(--ink);color:#F2EFEC;background-image:radial-gradient(80% 90% at 100% 0%,rgba(112,45,65,.55),transparent 60%)}
.bx-plan-main .bx-plan-k,.bx-plan-main>p:not(.bx-plan-k):not(.bx-price){color:rgba(242,239,236,.66)}
.bx-plan-main>p:not(.bx-plan-k){max-width:30em}
.bx-sub-plan{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:22px clamp(24px,2.4vw,36px);border-radius:20px;background:rgba(255,255,255,.6);box-shadow:inset 0 0 0 1px rgba(20,18,19,.05)}
.bx-sub-plan b{display:block;font-weight:500;font-size:17px}
.bx-sub-plan span{display:block;margin-top:4px;font-size:14px;color:var(--mute)}
.bx-price-sm{font-size:clamp(36px,3.4vw,52px);margin:0;white-space:nowrap}
.bx-pricing-main>.bx-fine{margin-top:12px}

/* Closing letter */
.bv-end{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(32px,6vw,110px);align-items:center;padding:clamp(110px,13vw,190px) clamp(24px,8vw,140px) clamp(90px,10vw,150px);background:radial-gradient(70% 80% at 25% 40%,#E3E1DE 0%,#EFEEEC 60%,#F2F1EF 100%)}
.bv-end-art{position:relative;justify-self:center;width:min(300px,62%);margin:0}
.bv-end-art img{width:100%;height:auto;filter:drop-shadow(0 40px 40px rgba(40,30,34,.18));animation:bv-float 7s ease-in-out infinite}
@keyframes bv-float{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-12px) rotate(2deg)}}
.bv-end-art figcaption{margin-top:28px;padding-top:10px;border-top:1px solid rgba(20,18,19,.25);font:500 11px/1 var(--latin);letter-spacing:.12em;color:#5E585B;width:max-content}
.bv-letter{max-width:520px}
.bv-end-title{font:500 clamp(30px,3.2vw,46px)/1.25 var(--serif);letter-spacing:-.02em}
.bx-en .bv-end-title{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(36px,3.8vw,54px);letter-spacing:-.01em;line-height:1.1}
.bv-end-title span{display:inline-block}
.bv-end-p{margin-top:22px;color:var(--mute);font-size:15px;line-height:1.85;max-width:30em}
.bv-end-actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin-top:30px}
.bv-end-actions .bx-btn-round{margin-top:0}
.bv-link{font-size:14px;border-bottom:1px solid currentColor;padding-bottom:3px}
.bv-rows{margin:44px 0 0;border-top:1px solid rgba(20,18,19,.14)}
.bv-rows div{display:grid;grid-template-columns:7.5em 1fr;gap:16px;align-items:baseline;padding:13px 0;border-bottom:1px solid rgba(20,18,19,.1);font-size:13px}
.bv-rows dt{color:#7A7377;letter-spacing:.04em}
.bv-rows dd{margin:0;color:var(--ink)}
.bv-rows a{border-bottom:1px solid rgba(20,18,19,.3)}
.bv-rows b{font:500 13px/1 var(--latin);font-variant-numeric:tabular-nums}
.bx-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#4FA36B;margin-right:8px;vertical-align:middle;animation:bx-pulse 2s infinite}
@keyframes bx-pulse{70%{box-shadow:0 0 0 7px rgba(79,163,107,0)}0%{box-shadow:0 0 0 0 rgba(79,163,107,.5)}}
.bx-soon{margin-top:26px;font-size:14px;color:var(--mute)}

.bx-foot .bc-mark{height:44px}
.bx-foot nav a{display:inline-flex;align-items:center;min-height:44px;border-bottom:1px solid transparent}.bx-foot nav a:hover{border-color:currentColor}
.bx-foot{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding:24px var(--pad) 30px;background:#DAD9D6;font-size:12px;color:var(--mute)}

@media (max-width:900px){
  .bv-end{grid-template-columns:1fr;text-align:left}
  .bv-end-art{width:min(200px,50%)}
  .bv-sub{font-size:clamp(18px,4.6vw,24px)}
  .bx-bar nav{display:none}
  .bx-bar{padding:8px 12px}
  .bx-grid,.bx-grid.is-one{grid-template-columns:1fr 1fr}
  .bx-grid.is-one .bx-card.is-lead .bx-shot{aspect-ratio:16/10.5}
  .bx-pricing{grid-template-columns:1fr}
  .bx-pricing-side{position:static}
  .bx-plan,.bx-plan-main{min-height:0}
  .bx-plan .bx-btn{margin-top:12px}
}
@media (max-width:560px){
  .bv-video{object-position:66% 50%}
  .bv-actions .bv-btn{flex:1 1 40%;justify-content:center;padding:0 14px}
  .bv-note{left:var(--pad);right:auto;bottom:calc(5.5vh + 4px)}
  .bv-copy{bottom:calc(5.5vh + 34px)}

  .bc-mark{height:28px}
  .bx-login{display:none}
  .bx-grid,.bx-grid.is-one{grid-template-columns:1fr}
  .bx-grid.is-one .bx-card.is-lead{grid-column:auto}
  .bx-tabs{width:calc(100% + 2 * var(--pad));margin:0 calc(-1 * var(--pad));padding:2px var(--pad);flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}
  .bx-tabs::-webkit-scrollbar{display:none}
  .bx-tabs button{flex:none;padding:0 14px;scroll-snap-align:start}
  .bx-plan-pair{grid-template-columns:1fr}
  .bx-sub-plan{flex-direction:column;align-items:flex-start}
  .bx-final-row{flex-direction:column;align-items:flex-start}
}
@media (prefers-reduced-motion:reduce){
  .bv-video,.bv-bars i,.bv-sub span,.bv-kicker,.bv-actions,.bv-end-art img,.bv-scroll span{animation:none;opacity:1;filter:none;transform:none}
  [data-blur] span,.bx-object,.bx-card,.bx-shot img{transition:none}
  .bx-dot{animation:none}
}
