/* Klass Concierge v3, "The Night Ledger"
   Cinematic, scroll-driven brand world: bottle-green ground, copper light, chalk ink.
   Kinetic type via Fraunces variable axes (opsz / wght / SOFT / WONK). */

:root{
  --green:#0B1F19;
  --green2:#102A21;
  --night:#071215;
  --ink:#EDE8D8;
  --ink2:#C9D1C4;
  --sage:#98A99B;
  --faint:#66746A;
  --copper:#D19468;
  --copper-d:#B87A52;
  --copper-rgb:209,148,104;
  --line:rgba(237,232,216,.12);
  --line2:rgba(237,232,216,.22);
  --serif:'Fraunces',Georgia,'Times New Roman',serif;
  --text:'Spectral',Georgia,serif;
  --ui:'Instrument Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --script:'Mrs Saint Delafield','Brush Script MT',cursive;
  --wrap:1180px;
  --gut:clamp(20px,5vw,64px);
  --ease:cubic-bezier(.2,.7,.2,1);
  --ease-out:cubic-bezier(.16,1,.3,1);
  --page-bg:#0B1F19;
}
@property --ang{syntax:'<angle>';inherits:false;initial-value:0deg}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:92px}
html.menu-open{overflow:hidden}
html.lerp{scroll-behavior:auto}
body{
  margin:0;background:var(--page-bg);color:var(--ink);
  font-family:var(--ui);font-weight:400;line-height:1.65;
  color-scheme:dark;-webkit-font-smoothing:antialiased;overflow-x:hidden;
  transition:background 1.1s var(--ease);
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit}
::selection{background:rgba(var(--copper-rgb),.38);color:var(--ink)}
:focus-visible{outline:2px solid var(--copper);outline-offset:3px;border-radius:2px}
.wrap{max-width:var(--wrap);margin:0 auto;padding-inline:var(--gut)}
.eyebrow{font-size:11px;letter-spacing:.4em;text-transform:uppercase;color:var(--copper);font-weight:500;display:inline-flex;align-items:center;gap:10px}
.keys{width:1em;height:1em;color:var(--copper);flex:none}
.grain{position:fixed;inset:0;z-index:5;pointer-events:none;opacity:.045;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:180px}

/* thin copper scrollbar (desktop) */
@media (hover:hover) and (pointer:fine){
  html{scrollbar-width:thin;scrollbar-color:var(--copper-d) var(--night)}
  ::-webkit-scrollbar{width:8px}
  ::-webkit-scrollbar-track{background:var(--night)}
  ::-webkit-scrollbar-thumb{background:var(--copper-d);border-radius:8px}
  ::-webkit-scrollbar-thumb:hover{background:var(--copper)}
}

/* ── the animated keys mark (draws on load, swings like hanging keys) ── */
.kmark{width:1.2em;height:1.2em;color:var(--copper);flex:none;overflow:visible;transform-origin:50% 20%;animation:swing 6s ease-in-out infinite}
.kmark circle,.kmark line{stroke-dasharray:60;stroke-dashoffset:60}
html.ready .kmark circle,html.ready .kmark line{animation:draw 1.1s var(--ease-out) forwards}
html.ready .kmark .k2 circle,html.ready .kmark .k2 line{animation-delay:.15s}
html.no-js .kmark circle,html.no-js .kmark line{stroke-dashoffset:0}
@keyframes swing{0%,100%{transform:rotate(-7deg)}50%{transform:rotate(7deg)}}
@keyframes spin1{to{transform:rotate(360deg)}}
@keyframes draw{to{stroke-dashoffset:0}}
@keyframes fadein{to{opacity:1}}

/* ── reveal primitives ── */
.rv{opacity:0;transform:translateY(36px);filter:blur(8px);transition:opacity 1.2s var(--ease),transform 1.2s var(--ease),filter 1.2s var(--ease);will-change:opacity,transform,filter}
.rv.in{opacity:1;transform:none;filter:none}
/* word mask: padded above for tall italic ascenders and to the right for italic overhang, offset with negative margins so layout is unchanged */
.wm{display:inline-block;overflow:hidden;vertical-align:bottom;padding:.34em .18em .16em .04em;margin:-.34em -.18em -.16em -.04em}
.wm>span{display:inline-block;transform:translateY(145%);transition:transform 1.1s var(--ease-out) calc(var(--i,0)*80ms)}
html.ready .hero .wm>span,.in .wm>span,.ch.on .wm>span{transform:none}
html.no-js .rv,html.no-js .wm>span{opacity:1;transform:none;filter:none}

/* ══ INTRO ══ */
#intro{position:fixed;inset:0;z-index:1000;background:var(--night);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;pointer-events:none}
#intro .ik{width:84px;height:84px;color:var(--copper);overflow:visible}
#intro .ik circle,#intro .ik line{stroke-dasharray:60;stroke-dashoffset:60;animation:draw 1s var(--ease-out) forwards}
#intro .ik .k2 circle,#intro .ik .k2 line{animation-delay:.12s}
#intro .iw{font-family:var(--serif);font-size:clamp(24px,4.4vw,38px);letter-spacing:.02em;color:var(--ink);opacity:0;animation:fadein .7s .5s var(--ease) forwards;font-variation-settings:"opsz" 40,"wght" 300,"SOFT" 30}
#intro .iw b{font-variation-settings:"opsz" 40,"wght" 560,"SOFT" 30}
html.intro-out #intro{animation:curtain .85s var(--ease-out) forwards}
html.intro-skip #intro{display:none}
@keyframes curtain{to{clip-path:inset(0 0 100% 0)}}

/* ══ NAV ══ */
.nav{position:fixed;top:0;left:0;right:0;z-index:200;border-bottom:1px solid transparent;transform:translateY(-110%);transition:transform .8s var(--ease-out) .15s,background .5s,border-color .5s}
html.ready .nav,html.no-js .nav{transform:none;transition:transform .55s var(--ease),background .5s,border-color .5s}
html.ready .nav.hide{transform:translateY(-110%)}
html.menu-open .nav{transform:none}
.nav.scrolled{background:rgba(7,18,21,.72);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom-color:var(--line)}
.nav-in{max-width:var(--wrap);margin:0 auto;padding:14px var(--gut);display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;align-items:center;gap:12px;font-family:var(--serif);font-size:clamp(26px,3vw,31px);color:var(--ink);font-variation-settings:"opsz" 40,"wght" 340,"SOFT" 20;line-height:1}
.brand .kmark{font-size:1.05em}
.brand span{color:var(--sage)}
.brand b{font-variation-settings:"opsz" 40,"wght" 570,"SOFT" 30;transition:font-variation-settings .6s var(--ease)}
.nav-links{display:flex;gap:2px}
.nav-links a{font-size:13px;letter-spacing:.06em;color:var(--ink2);padding:9px 14px;position:relative}
.nav-links a::after{content:"";position:absolute;left:14px;right:14px;bottom:4px;height:1px;background:var(--copper);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease)}
.nav-right{display:flex;align-items:center;gap:12px}
.burger{background:rgba(7,18,21,.35);border:1px solid var(--line2);border-radius:100px;color:var(--ink);cursor:pointer;width:48px;height:48px;display:none;align-items:center;justify-content:center;position:relative;padding:0;backdrop-filter:blur(8px)}
.burger span{position:absolute;width:18px;height:1.5px;background:currentColor;transition:transform .45s var(--ease)}
.burger span:nth-child(1){transform:translateY(-4px)}
.burger span:nth-child(2){transform:translateY(4px)}
html.menu-open .burger span:nth-child(1){transform:rotate(45deg)}
html.menu-open .burger span:nth-child(2){transform:rotate(-45deg)}

/* full-screen menu with imagery (bulletproof hide: visibility + opacity + pointer-events) */
.menu{position:fixed;inset:0;z-index:190;background:var(--night);display:flex;flex-direction:column;justify-content:center;padding:110px var(--gut) 40px;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .5s var(--ease),visibility 0s linear .5s;overflow:hidden}
html.menu-open .menu{visibility:visible;opacity:1;pointer-events:auto;transition:opacity .5s var(--ease)}
.menu .mbg{position:absolute;inset:0;z-index:0}
.menu .mbg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.08);filter:blur(8px) brightness(.42) saturate(.65);transition:opacity .7s var(--ease),transform 1.2s var(--ease)}
.menu .mbg img.on{opacity:1;transform:scale(1.02)}
.menu::before{content:"";position:absolute;inset:0;z-index:0;background:radial-gradient(50% 40% at 80% 20%,rgba(var(--copper-rgb),.16),transparent 70%);pointer-events:none}
.menu .ml,.menu .mfoot{position:relative;z-index:1}
.menu .ml{font-family:var(--serif);font-size:clamp(40px,10vw,68px);line-height:1.04;color:var(--ink);display:block;padding:6px 0;opacity:0;transform:translateY(26px);transition:opacity .6s var(--ease),transform .6s var(--ease),font-variation-settings .5s var(--ease);font-variation-settings:"opsz" 96,"wght" 300,"SOFT" 30}
.menu .ml em{font-style:italic;color:var(--copper)}
html.menu-open .menu .ml{opacity:1;transform:none;transition-delay:calc(.12s + var(--i,0)*70ms)}
.menu .mfoot{margin-top:auto;border-top:1px solid var(--line);padding-top:22px;display:flex;flex-wrap:wrap;gap:16px 34px;color:var(--sage);font-size:13px}
.menu .mfoot a{color:var(--ink);font-family:var(--serif);font-size:17px}
.menu .mfoot .mk{display:flex;align-items:center;gap:8px}

/* ══ BUTTONS ══ */
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:var(--ui);font-size:12px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;padding:16px 28px;border-radius:100px;border:1px solid transparent;cursor:pointer;overflow:hidden;isolation:isolate;white-space:nowrap;transition:color .35s,border-color .35s,transform .4s var(--ease)}
.btn::before{content:"";position:absolute;inset:-1px;z-index:-1;background:var(--ink);transform:translateY(101%);transition:transform .5s var(--ease-out)}
.btn-primary{background:var(--copper);color:var(--night);border-color:var(--copper)}
.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line2)}

/* ══ HERO (two photos crossfading, type made of light) ══ */
.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;padding:150px 0 clamp(64px,11vh,110px);overflow:hidden;isolation:isolate}
/* wide screens: cap the hero and centre the content so tall monitors never show a dark void above the headline */
@media (min-width:900px){
  .hero{min-height:min(100svh,900px);align-items:center;padding:150px 0 110px}
}
.hs-wrap{position:absolute;inset:-8% 0;z-index:0;transform:translate3d(0,calc(var(--sy,0)*.32px),0);will-change:transform}
.hs-photo,.hs-photo2{position:absolute;inset:0;background:url('images/hero.jpg') no-repeat center 42%/cover;opacity:.74;filter:contrast(1.06) brightness(.82) saturate(.78);transform-origin:60% 40%;animation:kb 36s ease-in-out infinite alternate}
.hs-photo2{background-image:url('images/hero-2.jpg');background-position:center 60%;opacity:0;animation:kb2 36s ease-in-out infinite alternate,xfade 30s ease-in-out infinite}
@keyframes kb{from{transform:scale(1)}to{transform:scale(1.14) translate(-1.5%,1%)}}
@keyframes kb2{from{transform:scale(1.1) translate(1%,-1%)}to{transform:scale(1)}}
@keyframes xfade{0%,42%{opacity:0}52%,88%{opacity:.74}100%{opacity:0}}
/* art direction: portrait shots fill phones; wide screens get true landscape London-at-night photographs */
@media (min-width:900px) and (min-aspect-ratio:1/1){
  .hs-photo{background-image:url('images/hero-wide.jpg');background-position:center 58%}
  .hs-photo2{background-image:url('images/hero-wide-2.jpg');background-position:center 55%}
  .hs-wash{background:linear-gradient(to bottom,rgba(7,18,21,.62) 0%,rgba(7,18,21,.28) 38%,rgba(11,31,25,.72) 74%,var(--green) 100%),linear-gradient(to right,rgba(7,18,21,.55) 0%,rgba(7,18,21,0) 55%)}
}
.hs-wash{position:absolute;inset:0;z-index:1;background:linear-gradient(to bottom,rgba(7,18,21,.55) 0%,rgba(7,18,21,.22) 34%,rgba(11,31,25,.74) 72%,var(--green) 100%)}
.hs-light{position:absolute;inset:0;z-index:1;pointer-events:none;mix-blend-mode:screen;opacity:.9;
  background:radial-gradient(42% 36% at 72% 22%,rgba(var(--copper-rgb),.3),transparent 70%),radial-gradient(46% 40% at 18% 78%,rgba(70,140,110,.24),transparent 70%);
  animation:lightdrift 14s ease-in-out infinite alternate}
@keyframes lightdrift{from{transform:translate(0,0) scale(1)}to{transform:translate(-4%,3%) scale(1.08)}}
.hero-in{position:relative;z-index:3;width:100%;opacity:calc(1 - var(--hp,0)*1.35);transform:translateY(calc(var(--hp,0)*-34px))}
.hero .kmark{font-size:46px;margin-bottom:24px;display:block}
.hero .eyebrow{display:inline-flex;margin-bottom:18px}
.hero h1{font-family:var(--serif);font-weight:300;font-size:clamp(52px,11.5vw,128px);line-height:.92;letter-spacing:-.025em;margin:0 0 26px;max-width:10.5ch;font-variation-settings:"opsz" 144,"wght" 300,"SOFT" 40,"WONK" 1;text-wrap:balance;transition:font-variation-settings .25s linear}
/* the gradient is clipped to the em's box, so the box is padded above and right (with negative margins) to cover Fraunces's tall italic ascenders and overhang */
.hero h1 em{font-style:italic;color:var(--copper);display:inline-block;padding:.32em .16em .12em .03em;margin:-.32em -.16em -.12em -.03em;
  background:linear-gradient(100deg,#B87A52 0%,#D19468 22%,#F6DCC2 46%,#D19468 68%,#B87A52 100%);background-size:220% 100%;
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;
  animation:lightsweep 6s ease-in-out infinite}
@keyframes lightsweep{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}
.hero .lede{font-family:var(--text);font-weight:300;font-size:clamp(17px,2.1vw,21px);color:var(--ink2);max-width:50ch;margin:0 0 30px;line-height:1.65}
.live{display:flex;align-items:center;flex-wrap:wrap;gap:12px 16px;font-size:11.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--sage);margin-bottom:22px}
.live .dot{width:8px;height:8px;border-radius:50%;background:var(--copper);animation:pulse 2.4s ease-out infinite;flex:none}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(var(--copper-rgb),.6)}100%{box-shadow:0 0 0 16px rgba(var(--copper-rgb),0)}}
.live a{font-family:var(--serif);font-size:22px;letter-spacing:0;text-transform:none;color:var(--ink);font-variation-settings:"opsz" 40,"wght" 350}
.live .clock{font-variant-numeric:tabular-nums;color:var(--faint)}
.hero-cta{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.hero-cta .alt{font-size:13.5px;color:var(--sage)}
.hero-cta .alt a{color:var(--ink2);border-bottom:1px solid var(--line2)}
.hero .eyebrow,.hero .lede,.hero .live,.hero .hero-cta{opacity:0;transform:translateY(18px);transition:opacity 1s var(--ease),transform 1s var(--ease)}
html.ready .hero .eyebrow{opacity:1;transform:none;transition-delay:.25s}
html.ready .hero .lede{opacity:1;transform:none;transition-delay:.8s}
html.ready .hero .live{opacity:1;transform:none;transition-delay:.95s}
html.ready .hero .hero-cta{opacity:1;transform:none;transition-delay:1.1s}
html.no-js .hero .eyebrow,html.no-js .hero .lede,html.no-js .hero .live,html.no-js .hero .hero-cta{opacity:1;transform:none}
.scrollcue{position:absolute;right:var(--gut);bottom:24px;z-index:3;display:flex;flex-direction:column;align-items:center;gap:10px;font-size:10px;letter-spacing:.32em;text-transform:uppercase;color:var(--faint);opacity:calc(1 - var(--hp,0)*3)}
.scrollcue i{display:block;width:1px;height:34px;background:linear-gradient(to bottom,var(--copper),transparent);animation:cue 2.2s ease-in-out infinite}
@keyframes cue{0%,100%{opacity:.25}50%{opacity:1}}

/* ══ TICKER (JS-driven, reacts to scroll speed) ══ */
.ticker{position:relative;z-index:2;border-block:1px solid var(--line);background:var(--night);padding-block:16px;overflow:hidden}
.tk-row{display:flex;width:max-content;will-change:transform}
.tk-row+.tk-row{margin-top:12px}
.tk{font-family:var(--text);font-style:italic;font-weight:300;font-size:19px;color:var(--ink2);white-space:nowrap;padding-right:30px}
.tk::after{content:"◇";font-style:normal;color:var(--copper);opacity:.6;font-size:10px;margin-left:30px}
.tk-b .tk{font-family:var(--ui);font-style:normal;font-size:11px;letter-spacing:.32em;text-transform:uppercase;color:var(--sage)}
html.no-js .tk-a{animation:mqL 70s linear infinite}
html.no-js .tk-b{animation:mqR 95s linear infinite}
@keyframes mqL{to{transform:translateX(-50%)}}
@keyframes mqR{from{transform:translateX(-50%)}to{transform:translateX(0)}}

/* ══ CHAPTERS (pinned scrollytelling, one colour grade, copper frame, rolling counter) ══ */
.chapters{position:relative;height:calc(var(--n,6)*100svh + 100svh);z-index:2}
.stage{position:sticky;top:0;height:100svh;overflow:hidden;background:var(--night)}
.ch{position:absolute;inset:0;opacity:0;transition:opacity 1.1s var(--ease);pointer-events:none}
.ch.on{opacity:1;pointer-events:auto}
/* scroll parallax on the `translate` property, continuous Ken Burns drift on `transform`; the two compose */
.ch-img{position:absolute;inset:0;overflow:hidden;translate:0 calc(var(--cp,0)*-2.5%);transform-origin:55% 45%;animation:chkb 26s ease-in-out infinite alternate;will-change:transform}
@keyframes chkb{from{transform:scale(1.02)}to{transform:scale(1.13) translate(-1.6%,1.2%)}}
.ch img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.16);clip-path:inset(100% 0 0 0);filter:saturate(.86) contrast(1.05) brightness(.9);transition:transform 2.2s var(--ease-out),clip-path 1.5s var(--ease-out),filter 1.2s var(--ease)}
.ch.on img{transform:scale(1.02);clip-path:inset(0 0 0 0)}
.ch.off img{clip-path:inset(0 0 0 0);transform:scale(1.14);filter:saturate(.6) brightness(.42)}
/* the grade: green into the shadows, copper into the highlights */
.ch-img::before{content:"";position:absolute;inset:0;z-index:1;background:var(--green);mix-blend-mode:color;opacity:.22;pointer-events:none}
.ch-img::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(to top,rgba(var(--copper-rgb),.3),rgba(var(--copper-rgb),0) 58%);mix-blend-mode:screen;pointer-events:none}
.ch::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(7,18,21,.94) 0%,rgba(7,18,21,.38) 46%,rgba(7,18,21,.12) 100%)}
.ch-frame{position:absolute;inset:clamp(14px,3vw,34px);z-index:2;pointer-events:none;overflow:visible;width:auto;height:auto}
.ch-frame rect{fill:none;stroke:var(--copper);stroke-width:1;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:1;opacity:.7;transition:stroke-dashoffset 2.4s var(--ease-out) .25s}
.ch.on .ch-frame rect{stroke-dashoffset:0}
.counter{position:absolute;top:calc(100px + 2vh);right:var(--gut);z-index:3;display:flex;height:1em;overflow:hidden;font-family:var(--serif);font-size:clamp(96px,24vw,280px);line-height:1;color:transparent;-webkit-text-stroke:1px rgba(237,232,216,.32);font-variation-settings:"opsz" 144,"wght" 200;pointer-events:none}
.counter .col{display:flex;flex-direction:column;transition:transform 1.1s var(--ease-out)}
.counter .col i{display:block;height:1em;line-height:1;font-style:normal}
.ch-body{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:0 var(--gut) clamp(76px,13vh,130px)}
.ch-kick{font-family:var(--text);font-style:italic;font-size:16px;color:var(--copper);margin:0 0 10px}
.ch-title{font-family:var(--serif);font-weight:300;font-size:clamp(44px,9vw,100px);line-height:.94;letter-spacing:-.02em;margin:0 0 14px;color:var(--ink);font-variation-settings:"opsz" 144,"wght" 300,"SOFT" 30}
.ch-line{font-size:15.5px;color:var(--ink2);max-width:46ch;margin:0;line-height:1.65}
.ch-kick,.ch-line{opacity:0;transform:translateY(16px);transition:opacity .9s var(--ease) .45s,transform .9s var(--ease) .45s}
.ch.on .ch-kick,.ch.on .ch-line{opacity:1;transform:none}
.ch-label{position:absolute;top:calc(100px + 2vh);left:var(--gut);z-index:3;font-size:10.5px;letter-spacing:.34em;text-transform:uppercase;color:var(--sage)}
.ch-prog{position:absolute;left:var(--gut);right:var(--gut);bottom:28px;z-index:3;display:flex;gap:6px}
.ch-prog i{flex:1;height:2px;background:rgba(237,232,216,.18);position:relative;overflow:hidden;display:block}
.ch-prog i::after{content:"";position:absolute;inset:0;background:var(--copper);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}
.ch-prog i.done::after{transform:scaleX(1)}
.ch-prog i.now::after{transform:scaleX(var(--cp,0));transition:none}
html.no-js .chapters{height:auto}
html.no-js .stage{position:static;height:auto;overflow:visible}
html.no-js .ch{position:relative;opacity:1;height:80svh;pointer-events:auto}
html.no-js .ch img{transform:none;clip-path:none}
html.no-js .ch-kick,html.no-js .ch-line{opacity:1;transform:none}
html.no-js .counter{display:none}

/* ══ SECTION SHELL (sections are transparent; the body breathes between green and night) ══ */
.sec{padding-block:clamp(80px,11vw,140px);position:relative;z-index:2;background:transparent}
.sec.night-tex{background:linear-gradient(rgba(7,18,21,.9),rgba(7,18,21,.94)),url('images/texture-night.jpg') no-repeat center center/cover}
.sec-head{max-width:680px;margin-bottom:clamp(40px,5vw,64px)}
.sec-head.center{margin-inline:auto;text-align:center}
.sec-head .eyebrow{display:inline-flex;margin-bottom:16px}
.sec-head h2{font-family:var(--serif);font-weight:300;font-size:clamp(34px,5.2vw,60px);line-height:1;letter-spacing:-.015em;margin:0 0 16px;text-wrap:balance;font-variation-settings:"opsz" 144,"wght" 300,"SOFT" 30}
.sec-head h2 em{font-style:italic;color:var(--copper)}
.sec-head p{color:var(--sage);font-size:16px;margin:0;max-width:54ch}
.sec-head.center p{margin-inline:auto}

/* ══ LEDGER (services) with hover previews ══ */
.ledger-wrap{position:relative}
.ledger{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.ledger li{border-bottom:1px solid var(--line);position:relative;opacity:0;transform:translateY(22px);transition:opacity .9s var(--ease) calc(var(--i,0)*80ms),transform .9s var(--ease) calc(var(--i,0)*80ms)}
.ledger li.in{opacity:1;transform:none}
.ledger li::before{content:"";position:absolute;left:0;bottom:-1px;height:1px;width:100%;background:var(--copper);transform:scaleX(0);transform-origin:left;transition:transform 1.3s var(--ease-out) calc(.2s + var(--i,0)*90ms);opacity:.7}
.ledger li.in::before{transform:scaleX(1)}
.lg-head{display:grid;grid-template-columns:56px 1fr auto;gap:18px;align-items:baseline;padding:26px 0;cursor:pointer;background:none;border:0;color:inherit;text-align:left;width:100%}
.lg-n{font-family:var(--text);font-style:italic;color:var(--copper);font-size:15px}
.lg-t{font-family:var(--serif);font-size:clamp(28px,4.4vw,46px);line-height:1.05;font-variation-settings:"opsz" 96,"wght" 320,"SOFT" 20;transition:font-variation-settings .55s var(--ease),color .35s}
.ledger li.open .lg-t{font-variation-settings:"opsz" 96,"wght" 460,"SOFT" 100;color:var(--copper)}
.lg-tag{font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--faint);white-space:nowrap;transition:color .3s}
.ledger li.open .lg-tag{color:var(--copper)}
.lg-body{max-height:0;overflow:hidden;transition:max-height .6s var(--ease)}
.ledger li.open .lg-body{max-height:220px}
.lg-body p{margin:0;padding:0 0 28px 74px;color:var(--sage);font-size:15.5px;line-height:1.7;max-width:60ch;opacity:0;transform:translateY(-6px);transition:opacity .5s var(--ease),transform .5s var(--ease)}
.ledger li.open .lg-body p{opacity:1;transform:none;transition-delay:.15s}
.lg-preview{position:absolute;left:0;top:0;width:220px;aspect-ratio:4/5;border-radius:12px;overflow:hidden;pointer-events:none;z-index:6;display:none;opacity:0;transform:translate(-50%,-50%) scale(.92) rotate(-2deg);transition:opacity .35s var(--ease),transform .35s var(--ease);box-shadow:0 24px 60px rgba(0,0,0,.55);border:1px solid var(--line2)}
.lg-preview img{width:100%;height:100%;object-fit:cover;filter:saturate(.7) brightness(.9)}
.lg-preview.show{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(0)}
@media (hover:hover) and (pointer:fine){.lg-preview{display:block}}

/* ══ STEPS ══ */
.steps{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:40px;padding-top:36px}
.steps::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--line)}
.steps::after{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--copper);transform:scaleX(0);transform-origin:left;transition:transform 1.8s var(--ease-out)}
.steps.in::after{transform:scaleX(1)}
.step{opacity:0;transform:translateY(20px);transition:opacity .9s var(--ease) calc(.2s + var(--i,0)*140ms),transform .9s var(--ease) calc(.2s + var(--i,0)*140ms)}
.steps.in .step{opacity:1;transform:none}
.step .num{font-family:var(--serif);font-style:italic;font-size:46px;color:var(--copper);line-height:1;font-variation-settings:"opsz" 144,"wght" 200}
.step h3{font-family:var(--serif);font-weight:400;font-size:28px;margin:14px 0 10px}
.step p{color:var(--sage);font-size:15px;margin:0;line-height:1.7}

/* ══ MEMBERSHIP (watermark, 3D tilt, rotating copper border) ══ */
.tiers{display:grid;grid-template-columns:1fr 1.15fr;gap:22px;perspective:1200px}
.tier{border:1px solid var(--line2);border-radius:18px;padding:38px 34px;display:flex;flex-direction:column;gap:16px;background:rgba(11,31,25,.72);position:relative;overflow:hidden;transform-style:preserve-3d;transition:transform .6s var(--ease),opacity 1.2s var(--ease),filter 1.2s var(--ease)}
.tier.feat{border-color:rgba(var(--copper-rgb),.55);background:linear-gradient(160deg,rgba(var(--copper-rgb),.1),rgba(var(--copper-rgb),0) 60%),rgba(16,42,33,.84)}
.tier.feat::before{content:"";position:absolute;inset:-1px;border-radius:19px;padding:1px;pointer-events:none;z-index:2;
  background:conic-gradient(from var(--ang),transparent 0 60%,var(--copper) 82%,transparent 100%);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;
  animation:spin 7s linear infinite}
@keyframes spin{to{--ang:360deg}}
.tier .wm-keys{position:absolute;right:-34px;bottom:-34px;width:270px;height:270px;color:var(--copper);opacity:.07;pointer-events:none;z-index:0;transform:rotate(-8deg)}
.tier>*:not(.wm-keys):not(.rib){position:relative;z-index:1}
.tier .rib{position:absolute;top:-1px;right:24px;z-index:3;font-size:10px;letter-spacing:.26em;text-transform:uppercase;color:var(--night);background:var(--copper);padding:6px 14px;border-radius:0 0 6px 6px;font-weight:600}
.tier .tk{font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--copper)}
.tier h3{font-family:var(--serif);font-weight:400;font-size:32px;margin:0;line-height:1.05;font-variation-settings:"opsz" 96,"wght" 380,"SOFT" 30}
.tier .tp{color:var(--sage);font-size:15px;margin:0;line-height:1.7}
.tier ul{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:11px}
.tier li{display:flex;gap:12px;font-size:14.5px;color:var(--ink2);line-height:1.5}
.tier li::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--copper);margin-top:9px;flex:none}
.tier .btn{margin-top:auto;align-self:flex-start}
.tier .fineprint{font-size:12.5px;color:var(--faint);margin:0}

/* ══ DESK (scroll-lit founder note + self-drawing signature) ══ */
.desk{max-width:860px;margin-inline:auto;text-align:center}
.desk .keys{font-size:26px;margin:0 auto 24px;display:block}
.desk blockquote{font-family:var(--text);font-style:italic;font-weight:300;font-size:clamp(24px,3.6vw,38px);line-height:1.4;color:var(--ink);margin:0}
.desk blockquote .w{opacity:.2;transition:opacity .3s linear}
.desk blockquote .w.lit{opacity:1}
.desk blockquote .w.c.lit{color:var(--copper)}
.desk .sig{margin-top:28px;font-size:13px;letter-spacing:.06em;color:var(--sage)}
.desk .sig b{color:var(--ink);font-family:var(--serif);font-weight:500;font-size:17px;display:block;letter-spacing:0}
.sig-svg{display:block;width:220px;height:90px;margin:8px auto 0;overflow:visible}
.sig-svg text{font-family:var(--script);font-size:74px;fill:var(--copper);fill-opacity:0;stroke:var(--copper);stroke-width:.9;stroke-linejoin:round;stroke-dasharray:1600;stroke-dashoffset:1600;transition:stroke-dashoffset 2.6s var(--ease-out) .3s,fill-opacity .9s ease 2.4s}
.desk.in .sig-svg text{stroke-dashoffset:0;fill-opacity:1}
html.no-js .sig-svg text{stroke-dashoffset:0;fill-opacity:1}

/* ══ ENQUIRY (three-step conversation) ══ */
.enq{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(34px,6vw,80px);align-items:start}
.enq-side h2{font-family:var(--serif);font-weight:300;font-size:clamp(30px,4.4vw,50px);line-height:1.02;margin:16px 0 16px;text-wrap:balance;font-variation-settings:"opsz" 144,"wght" 300,"SOFT" 30}
.enq-side h2 em{font-style:italic;color:var(--copper)}
.enq-side p{color:var(--sage);font-size:15.5px;margin:0 0 28px;max-width:42ch}
.contacts{display:flex;flex-direction:column;border-top:1px solid var(--line)}
.contacts a{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:16px 2px;border-bottom:1px solid var(--line);transition:color .3s,padding-left .35s var(--ease)}
.contacts .cl{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--faint)}
.contacts .cv{font-family:var(--serif);font-size:19px}
form.enq-form{display:block;background:rgba(11,31,25,.55);border:1px solid var(--line);border-radius:18px;padding:clamp(26px,3.2vw,38px)}
.steps-bar{display:flex;gap:6px;margin-bottom:26px}
.steps-bar i{flex:1;height:2px;background:rgba(237,232,216,.16);position:relative;overflow:hidden;display:block}
.steps-bar i::after{content:"";position:absolute;inset:0;background:var(--copper);transform:scaleX(0);transform-origin:left;transition:transform .55s var(--ease)}
.steps-bar i.done::after{transform:scaleX(1)}
.fstep{display:none;flex-direction:column;gap:22px}
.fstep.on{display:flex;animation:stepin .55s var(--ease)}
@keyframes stepin{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.fstep h4{font-family:var(--serif);font-weight:300;font-size:clamp(24px,3vw,32px);line-height:1.05;margin:0 0 4px;font-variation-settings:"opsz" 96,"wght" 300,"SOFT" 30}
.fstep h4 em{font-style:italic;color:var(--copper)}
.fstep .fk{font-size:10.5px;letter-spacing:.3em;text-transform:uppercase;color:var(--faint);margin:0 0 -8px}
.field{display:flex;flex-direction:column;gap:8px;position:relative}
.field.row{display:grid;grid-template-columns:1fr 1fr;gap:22px 26px}
.field.row::after{display:none}
.field label{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--sage)}
.field input,.field textarea,.field select{background:transparent;border:0;border-bottom:1px solid var(--line2);border-radius:0;color:var(--ink);font-family:var(--ui);font-size:16px;padding:12px 0;width:100%;transition:border-color .3s;-webkit-appearance:none;appearance:none}
.field select{background-image:linear-gradient(45deg,transparent 50%,var(--copper) 50%),linear-gradient(135deg,var(--copper) 50%,transparent 50%);background-position:calc(100% - 14px) 50%,calc(100% - 9px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:30px}
.field select option{background:var(--night);color:var(--ink)}
.field textarea{resize:vertical;min-height:90px}
.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-bottom-color:transparent}
.field input::placeholder,.field textarea::placeholder{color:var(--faint)}
.field::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--copper);transform:scaleX(0);transform-origin:left;transition:transform .55s var(--ease-out)}
.field:focus-within::after{transform:scaleX(1)}
.fnav{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:6px}
.fnav .back{background:none;border:0;color:var(--sage);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;padding:10px 0;transition:color .3s}
.form-note{font-size:12.5px;color:var(--faint);text-align:center;margin:0}
.ferr{color:#E3A08A;font-size:14px;margin:0;text-align:center}
/* Netlify-injected reCAPTCHA: recolour Google's light widget to sit on the dark card */
.captcha{display:flex;justify-content:flex-start;min-height:0}
.captcha:empty,.captcha > div:empty{display:none}
.captcha iframe{filter:invert(.92) hue-rotate(180deg) saturate(.55) contrast(.95);border-radius:6px}
.captcha .g-recaptcha{transform-origin:left top}
@media (max-width:360px){.captcha .g-recaptcha{transform:scale(.88)}}
.enq-form.busy .btn{opacity:.6;pointer-events:none}
/* the card flips on a successful send and stays flipped for the visit */
.flip{position:relative;perspective:1600px}
.flip-inner{position:relative;min-height:470px;transform-style:preserve-3d;transition:transform 1.1s var(--ease)}
.flip.flipped .flip-inner{transform:rotateY(180deg)}
.flip.noanim .flip-inner{transition:none}
.face{backface-visibility:hidden;-webkit-backface-visibility:hidden}
.flip.flipped .face.front{pointer-events:none}
.face.back{position:absolute;inset:0;transform:rotateY(180deg);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:14px;padding:clamp(26px,3.2vw,38px);border:1px solid rgba(var(--copper-rgb),.55);border-radius:18px;overflow:auto;
  background:linear-gradient(160deg,rgba(var(--copper-rgb),.12),rgba(var(--copper-rgb),0) 60%),rgba(16,42,33,.94)}
.face.back .keys{font-size:42px}
.face.back .fk{font-size:10.5px;letter-spacing:.3em;text-transform:uppercase;color:var(--copper);margin:0}
.face.back h4{font-family:var(--serif);font-weight:300;font-size:clamp(28px,3.6vw,40px);line-height:1.05;margin:0;font-variation-settings:"opsz" 96,"wght" 300,"SOFT" 30}
.face.back h4 em{font-style:italic;color:var(--copper)}
.face.back .bp{color:var(--ink2);font-family:var(--text);font-weight:300;font-size:17px;line-height:1.6;max-width:38ch;margin:0}
.face.back .bacts{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:6px}
.face.back .bnote{font-size:12.5px;color:var(--faint);margin:4px 0 0}

/* ══ STICKY LINE BAR (mobile) ══ */
.linebar{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:180;display:none;gap:8px;padding:8px;border-radius:100px;background:rgba(7,18,21,.82);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--line2);transform:translateY(130%);opacity:0;transition:transform .55s var(--ease),opacity .55s var(--ease)}
.linebar.show{transform:none;opacity:1}
html.menu-open .linebar{opacity:0;pointer-events:none}
.linebar a{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:13px 10px;border-radius:100px;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:500;white-space:nowrap}
.linebar .lb-call{background:var(--copper);color:var(--night)}
.linebar .lb-wa{color:var(--ink);border:1px solid var(--line2)}
.linebar .keys{font-size:16px}

/* ══ FOOTER ══ */
.foot{background:var(--night);border-top:1px solid var(--line);padding-block:clamp(54px,7vw,80px) 0;overflow:hidden;position:relative;z-index:2}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px}
.foot-brand .brand{margin-bottom:16px}
.foot-brand p{color:var(--sage);font-size:14px;max-width:34ch;margin:0 0 18px}
.foot-brand .addr{font-size:13px;color:var(--faint);line-height:1.7}
.foot-col h5{font-size:10.5px;letter-spacing:.3em;text-transform:uppercase;color:var(--copper);margin:0 0 16px}
.foot-col a,.foot-col span{display:block;color:var(--ink2);font-size:14px;padding:6px 0;transition:color .3s,padding-left .3s var(--ease)}
.foot-col .fam-sub{font-size:12px;color:var(--faint);padding-top:0}
.fb{display:block;width:100%;height:auto;margin:clamp(44px,7vw,84px) 0 0;overflow:visible;opacity:0;transform:translateY(24px) scale(.985);transition:opacity 1.5s var(--ease),transform 1.5s var(--ease)}
.fb.in{opacity:1;transform:none}
.fb text{font-family:var(--serif);font-variation-settings:"opsz" 144,"wght" 300,"SOFT" 30;fill:none;stroke:url(#shine);stroke-width:1.3;vector-effect:non-scaling-stroke}
.fb-one text{font-size:162px}
.fb-two{display:none}
.foot-bar{border-top:1px solid var(--line);margin-top:clamp(22px,4vw,40px);padding-block:22px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;align-items:center}
.foot-bar p{margin:0;font-size:12px;color:var(--faint)}
.foot-bar .fb-links{display:flex;gap:20px;align-items:center}
.foot-bar .fb-links a{font-size:12px;color:var(--faint)}
.totop{display:inline-flex;align-items:center;gap:8px;color:var(--sage);font-size:11px;letter-spacing:.2em;text-transform:uppercase}
.totop .keys{font-size:16px;transition:transform .6s var(--ease)}

/* ══ 404 ══ */
.p404{min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:120px var(--gut) 60px;position:relative;z-index:2}
.p404 .kmark{font-size:64px;margin-bottom:26px}
.p404 .code{font-family:var(--serif);font-size:clamp(96px,22vw,220px);line-height:.85;color:transparent;-webkit-text-stroke:1px rgba(237,232,216,.3);font-variation-settings:"opsz" 144,"wght" 200;margin:0 0 18px}
.p404 h1{font-family:var(--serif);font-weight:300;font-size:clamp(30px,5vw,54px);line-height:1;margin:0 0 16px;font-variation-settings:"opsz" 144,"wght" 300,"SOFT" 30}
.p404 h1 em{font-style:italic;color:var(--copper)}
.p404 p{color:var(--sage);max-width:44ch;margin:0 0 30px;font-family:var(--text);font-weight:300;font-size:18px}
.p404 .acts{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}

/* ══ HOVER (real pointers only, so taps never leave a stuck hover state) ══ */
@media (hover:hover){
  .nav-links a:hover::after{transform:scaleX(1)}
  .nav-links a:hover{color:var(--copper)}
  .brand:hover .kmark{animation:spin1 1s var(--ease-out)}
  .brand:hover b{font-variation-settings:"opsz" 40,"wght" 700,"SOFT" 100}
  .menu .ml:hover{font-variation-settings:"opsz" 96,"wght" 420,"SOFT" 100}
  .btn:hover::before{transform:none}
  .btn-ghost:hover{color:var(--night);border-color:var(--ink)}
  .live a:hover{color:var(--copper)}
  .hero-cta .alt a:hover{color:var(--copper);border-color:var(--copper)}
  .ledger li:hover .lg-t{font-variation-settings:"opsz" 96,"wght" 460,"SOFT" 100;color:var(--copper)}
  .contacts a:hover{color:var(--copper);padding-left:10px}
  .foot-col a:hover{color:var(--copper);padding-left:6px}
  .foot-bar .fb-links a:hover{color:var(--copper)}
  .fnav .back:hover{color:var(--copper)}
  .totop:hover{color:var(--copper)}
  .totop:hover .keys{transform:rotate(-90deg)}
}

/* ══ THE KEY CURSOR (desktop pointers): the pointer is a copper key; it turns over links ══ */
@media (hover:hover) and (pointer:fine){
  html,body,a,button,label,input,textarea,select,.lg-head{
    cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Cg fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cg stroke='rgba(7,18,21,0.9)' stroke-width='4.8'%3E%3Ccircle cx='9' cy='9' r='4.6'/%3E%3Cpath d='M12.4 12.4L25.5 25.5M20.5 20.5l3-3M24 24l3-3'/%3E%3C/g%3E%3Cg stroke='%23D19468' stroke-width='2'%3E%3Ccircle cx='9' cy='9' r='4.6'/%3E%3Cpath d='M12.4 12.4L25.5 25.5M20.5 20.5l3-3M24 24l3-3'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E") 9 9,auto}
  a:hover,button:hover,.lg-head:hover,label:hover{
    cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Cg fill='none' stroke-linecap='round' stroke-linejoin='round' transform='rotate(38 16 16)'%3E%3Cg stroke='rgba(7,18,21,0.9)' stroke-width='4.8'%3E%3Ccircle cx='9' cy='9' r='4.6'/%3E%3Cpath d='M12.4 12.4L25.5 25.5M20.5 20.5l3-3M24 24l3-3'/%3E%3C/g%3E%3Cg stroke='%23E5A97A' stroke-width='2'%3E%3Ccircle cx='9' cy='9' r='4.6'/%3E%3Cpath d='M12.4 12.4L25.5 25.5M20.5 20.5l3-3M24 24l3-3'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E") 9 9,pointer}
  .cur-r{position:fixed;top:0;left:0;z-index:2000;pointer-events:none;border-radius:50%;width:38px;height:38px;border:1px solid rgba(var(--copper-rgb),.5);transform:translate(-50%,-50%);will-change:transform;transition:width .35s var(--ease),height .35s var(--ease),border-color .3s,background .3s}
  body.cur-hover .cur-r{width:64px;height:64px;border-color:var(--copper)}
  body.cur-view .cur-r{width:88px;height:88px;background:rgba(var(--copper-rgb),.14);border-color:rgba(var(--copper-rgb),.8)}
  .cur-r::after{content:attr(data-label);position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font:500 9px/1 var(--ui);letter-spacing:.22em;text-transform:uppercase;color:var(--ink);opacity:0;transition:opacity .3s}
  body.cur-view .cur-r::after{opacity:1}
}

/* ══ RESPONSIVE ══ */
@media (max-width:900px){
  .nav-links{display:none}
  .nav .btn-primary{display:none}
  .burger{display:flex}
  .tiers{grid-template-columns:1fr}
  .enq{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr 1fr}
  .steps{grid-template-columns:1fr;gap:30px}
  .linebar{display:flex}
}
@media (max-width:680px){
  .lg-head{grid-template-columns:36px 1fr;gap:14px}
  .lg-tag{display:none}
  .lg-body p{padding-left:50px}
  .foot-grid{grid-template-columns:1fr}
  .field.row{grid-template-columns:1fr}
  .hero{padding-top:120px;padding-bottom:clamp(90px,14vh,130px)}
  .hero-cta .btn{width:100%}
  .scrollcue{display:none}
  .counter{font-size:clamp(96px,30vw,200px)}
  .fb-one{display:none}
  .fb-two{display:block}
  .ch-body{padding-bottom:clamp(96px,16vh,150px)}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .hs-photo,.hs-photo2,.hs-light,.tk-row,.live .dot,.scrollcue i,.tier.feat::before,.kmark,.hero h1 em{animation:none}
  .hs-photo2{opacity:0}
  .rv,.ledger li,.step,.wm>span,.ch-kick,.ch-line,.fb,.hero .eyebrow,.hero .lede,.hero .live,.hero .hero-cta{opacity:1;transform:none;filter:none;transition:none}
  .nav{transform:none;transition:none}
  .ch{transition:opacity .3s}
  .ch img{transition:none;transform:none;clip-path:none}
  .ch-img{transform:none;translate:none;animation:none}
  .ch-frame rect,.sig-svg text{transition:none;stroke-dashoffset:0;fill-opacity:1}
  .hero-in{opacity:1;transform:none}
  body{transition:none}
}
