.elementor-168 .elementor-element.elementor-element-4654cce{--display:flex;}.elementor-168 .elementor-element.elementor-element-1480549{--display:flex;}.elementor-168 .elementor-element.elementor-element-6d54d06{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-168 .elementor-element.elementor-element-e7adc40{--display:flex;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-168 .elementor-element.elementor-element-5b3d9ba{--display:flex;}.elementor-168 .elementor-element.elementor-element-96df013{--display:flex;}.elementor-168 .elementor-element.elementor-element-b8a35d8{--display:flex;}.elementor-168 .elementor-element.elementor-element-754e9ff{--display:flex;}.elementor-168 .elementor-element.elementor-element-62138bc{--display:flex;}.elementor-168 .elementor-element.elementor-element-0ee4bb4{--display:flex;}.elementor-168 .elementor-element.elementor-element-ba333fc{--display:flex;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-168 .elementor-element.elementor-element-e8f7fcd{--display:flex;}.elementor-168 .elementor-element.elementor-element-1f15261{--display:flex;}.elementor-168 .elementor-element.elementor-element-77f92e7{--display:flex;}.elementor-168 .elementor-element.elementor-element-a6f4158{--display:flex;}.elementor-168 .elementor-element.elementor-element-13df3fd{--display:flex;}.elementor-168 .elementor-element.elementor-element-7a5060b{--display:flex;}.elementor-168 .elementor-element.elementor-element-789d85c{--display:flex;}.elementor-168 .elementor-element.elementor-element-67e6a0b{--display:flex;}.elementor-168 .elementor-element.elementor-element-3ad8795{--display:flex;}.elementor-168 .elementor-element.elementor-element-3bbb8f2{--display:flex;}.elementor-168 .elementor-element.elementor-element-3ed6384{--display:flex;}.elementor-168 .elementor-element.elementor-element-1fa16d4{--display:flex;}.elementor-168 .elementor-element.elementor-element-8e9c3ae{--display:flex;}.elementor-168 .elementor-element.elementor-element-392cb65{--display:flex;}.elementor-168 .elementor-element.elementor-element-a92ee49{--display:flex;}.elementor-168 .elementor-element.elementor-element-2db93f4{--display:flex;}.elementor-168 .elementor-element.elementor-element-60b58bc{--display:flex;}.elementor-168 .elementor-element.elementor-element-0e429ca{--display:flex;}.elementor-168 .elementor-element.elementor-element-9bdcc80{--display:flex;}.elementor-168 .elementor-element.elementor-element-a169e1b{--display:flex;}.elementor-168 .elementor-element.elementor-element-be8f428{--display:flex;}.elementor-168 .elementor-element.elementor-element-f43d7ec{--display:flex;}.elementor-168 .elementor-element.elementor-element-1a710f3{--display:flex;}.elementor-168 .elementor-element.elementor-element-c03057c{--display:flex;}.elementor-168 .elementor-element.elementor-element-ead1bec{--display:flex;}.elementor-168 .elementor-element.elementor-element-f4898ff{--display:flex;}.elementor-168 .elementor-element.elementor-element-13dde53{--display:flex;}.elementor-168 .elementor-element.elementor-element-a78d7ee{--display:flex;}.elementor-168 .elementor-element.elementor-element-8d015e2{--display:flex;}.elementor-168 .elementor-element.elementor-element-eb0d950{--display:flex;}.elementor-168 .elementor-element.elementor-element-182d207{--display:flex;}.elementor-168 .elementor-element.elementor-element-54796be{--display:flex;}.elementor-168 .elementor-element.elementor-element-d2a7434{--display:flex;}.elementor-168 .elementor-element.elementor-element-098857e{--display:flex;}.elementor-168 .elementor-element.elementor-element-fb1a5af{--display:flex;}.elementor-168 .elementor-element.elementor-element-d7d88be{--display:flex;}.elementor-168 .elementor-element.elementor-element-b7e106b{--display:flex;}.elementor-168 .elementor-element.elementor-element-1c795d2{--display:flex;}.elementor-168 .elementor-element.elementor-element-cc269b1{--display:flex;}.elementor-168 .elementor-element.elementor-element-eece5d7{--display:flex;}.elementor-168 .elementor-element.elementor-element-875453f{--display:flex;}.elementor-168 .elementor-element.elementor-element-60743df{--display:flex;}.elementor-168 .elementor-element.elementor-element-8283359{--display:flex;}.elementor-168 .elementor-element.elementor-element-baf5634{--display:flex;}.elementor-168 .elementor-element.elementor-element-aa366e7{--display:flex;}/* Start custom CSS *//* Kim & Klóe — converted 1:1 from the original Astro site (src/styles + components).
   Every rule is scoped to #kk (the page's root container) so nothing else on the site is affected.
   Kim = ink, Klóe = cream, accent = boss red. */
/* Self-hosted fonts — the exact variable files the original site uses (Fontsource: Fraunces full axes + Manrope). */
@font-face{font-family:'Fraunces Variable';font-style:normal;font-display:swap;font-weight:100 900;src:url(/wp-content/uploads/2026/09/kk-fraunces-latin-ext-normal.woff2) format('woff2-variations'),url(/wp-content/uploads/2026/09/kk-fraunces-latin-ext-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Fraunces Variable';font-style:normal;font-display:swap;font-weight:100 900;src:url(/wp-content/uploads/2026/09/kk-fraunces-latin-normal.woff2) format('woff2-variations'),url(/wp-content/uploads/2026/09/kk-fraunces-latin-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Fraunces Variable';font-style:italic;font-display:swap;font-weight:100 900;src:url(/wp-content/uploads/2026/09/kk-fraunces-latin-ext-italic.woff2) format('woff2-variations'),url(/wp-content/uploads/2026/09/kk-fraunces-latin-ext-italic.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Fraunces Variable';font-style:italic;font-display:swap;font-weight:100 900;src:url(/wp-content/uploads/2026/09/kk-fraunces-latin-italic.woff2) format('woff2-variations'),url(/wp-content/uploads/2026/09/kk-fraunces-latin-italic.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Manrope Variable';font-style:normal;font-display:swap;font-weight:200 800;src:url(/wp-content/uploads/2026/09/kk-manrope-latin-ext.woff2) format('woff2-variations'),url(/wp-content/uploads/2026/09/kk-manrope-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Manrope Variable';font-style:normal;font-display:swap;font-weight:200 800;src:url(/wp-content/uploads/2026/09/kk-manrope-latin.woff2) format('woff2-variations'),url(/wp-content/uploads/2026/09/kk-manrope-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:#fbf8f2;overflow-x:hidden}
#kk{
  --ink:#0e0d10;--ink-2:#19171c;--ink-3:#2a272e;--cream:#f4eee3;--paper:#fbf8f2;--bone:#e8e0d2;
  --accent:#d9412b;--blush:#e7b7a3;--muted-on-ink:#a49e97;--muted-on-paper:#6d655d;
  --font-display:'Fraunces Variable','Iowan Old Style',Georgia,serif;
  --font-body:'Manrope Variable',system-ui,-apple-system,'Segoe UI',sans-serif;
  --step--1:clamp(0.83rem,0.8rem + 0.15vw,0.92rem);
  --step-0:clamp(1rem,0.96rem + 0.2vw,1.125rem);
  --step-1:clamp(1.2rem,1.1rem + 0.5vw,1.5rem);
  --step-2:clamp(1.5rem,1.25rem + 1.1vw,2.25rem);
  --step-3:clamp(2rem,1.5rem + 2.4vw,3.6rem);
  --step-4:clamp(2.6rem,1.6rem + 4.6vw,5.6rem);
  --gutter:clamp(1rem,0.5rem + 3vw,3rem);
  --max:78rem;--radius:4px;--ease:cubic-bezier(0.2,0.7,0.1,1);
  --kit-widget-spacing:0px;--widgets-spacing:0px;
  background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:var(--step-0);line-height:1.6;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden;
}

/* ---- Neutralise Elementor container/widget defaults so the original layout rules apply ---- */
#kk.e-con,#kk .e-con{display:block;position:static;flex:0 1 auto;flex-direction:row;flex-wrap:nowrap;align-items:normal;justify-content:normal;align-content:normal;
  width:auto;max-width:none;min-width:auto;min-height:0;height:auto;margin:0;padding:0;gap:0;border:0;border-radius:0;z-index:auto;overflow:visible;text-align:inherit;transition:none;box-shadow:none}
#kk.e-con{width:100%}
#kk .e-con::before,#kk.e-con::before,#kk .e-con::after{content:none}
#kk .elementor-widget{position:static;width:auto;max-width:none;flex:0 1 auto;margin:0;padding:0;transition:none}
#kk .elementor-widget:not(:last-child){margin-block-end:0}
#kk .elementor-widget-container{margin:0;padding:0;height:auto}
#kk .elementor-heading-title{font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;margin:0;padding:0}
#kk .elementor-heading-title a{color:inherit;font:inherit;text-decoration:none}
#kk .elementor-widget-text-editor{font:inherit;color:inherit;letter-spacing:inherit}
#kk .elementor-widget-text-editor ul{margin:0;padding:0;list-style:none}
#kk *,#kk *::before,#kk *::after{box-sizing:border-box}
#kk img,#kk svg,#kk video{display:block;max-width:100%;height:auto}
#kk a{color:inherit}
#kk p{margin:0}
#kk :focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}
#kk ::selection{background:var(--accent);color:var(--paper)}

/* ---- Global (global.css) ---- */
#kk .kk-h{font-family:var(--font-display);font-weight:500;line-height:1.02;letter-spacing:-0.02em}
#kk .kk-wrap{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)}
#kk .kk-eyebrow .elementor-heading-title{display:inline-flex;align-items:center;gap:0.75em;font-family:var(--font-body);font-size:var(--step--1);font-weight:700;letter-spacing:0.18em;text-transform:uppercase;line-height:1.6}
/* Where the original eyebrow was a grid item it was blockified. */
#kk .kk-duo__head .kk-eyebrow .elementor-heading-title,#kk .kk-follow__inner .kk-eyebrow .elementor-heading-title,#kk .kk-hero__foot .kk-eyebrow .elementor-heading-title{display:flex}
#kk .kk-eyebrow .elementor-heading-title::before{content:'';width:1.75em;height:1px;background:currentColor;opacity:0.6}
#kk .kk-vh,#kk .kk-visually-hidden{position:absolute !important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
#kk .kk-skip{position:absolute;left:1rem;top:-4rem;z-index:100;padding:0.6rem 1rem;background:var(--accent);color:var(--paper);text-decoration:none;font-weight:700}
#kk .kk-skip:focus{top:1rem}
#kk .kk-head{height:0;overflow:visible}

/* Scroll reveal (not applied inside the Elementor editor so everything stays editable). */
html.js body:not(.elementor-editor-active) #kk .kk-reveal{opacity:0;transform:translateY(24px);transition:opacity 0.9s var(--ease),transform 0.9s var(--ease);transition-delay:var(--delay,0ms)}
html.js body #kk .kk-reveal.is-in{opacity:1;transform:none}
#kk .kk-d90{--delay:90ms}#kk .kk-d100{--delay:100ms}#kk .kk-d120{--delay:120ms}#kk .kk-d180{--delay:180ms}#kk .kk-d200{--delay:200ms}
@media (prefers-reduced-motion:reduce){html.js body #kk .kk-reveal{opacity:1;transform:none;transition:none}}

/* ---- Wordmark ---- */
#kk .kk-wordmark{font-family:var(--font-display);font-size:1.2rem;font-weight:600;letter-spacing:-0.01em;font-variation-settings:'SOFT' 50,'WONK' 0;line-height:1.6}
#kk .kk-wordmark .elementor-heading-title a{display:inline-flex;align-items:baseline;gap:0.18em;text-decoration:none}
#kk .kk-wordmark .amp{color:var(--accent);font-style:italic;font-weight:400}

/* ---- Language toggle ---- */
#kk .kk-lang-list{display:flex;gap:0.15rem;list-style:none;margin:0;padding:0;font-size:0.78rem;font-weight:700;letter-spacing:0.12em}
#kk .kk-lang-list a{display:inline-block;padding:0.45rem 0.55rem;text-decoration:none;opacity:0.55;transition:opacity 0.2s;min-width:44px;text-align:center}
#kk .kk-lang-list a:hover{opacity:1}
#kk .kk-lang-list a[aria-current='true']{opacity:1;text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:6px}

/* ---- Header ---- */
#kk .kk-header{position:absolute;inset:0 0 auto 0;z-index:10;display:flex;justify-content:space-between;align-items:center;
  padding:max(1rem,env(safe-area-inset-top)) var(--gutter) 1rem;color:var(--cream)}
#kk .kk-header__right{display:flex;align-items:center;gap:0.75rem}
#kk .kk-cta{display:none}
#kk .kk-cta .elementor-button{display:inline-block;font-family:var(--font-body);font-size:0.8rem;font-weight:700;letter-spacing:0.06em;line-height:1.6;text-decoration:none;
  padding:0.65rem 1.1rem;border:1px solid currentColor;border-radius:999px;background:transparent;color:inherit;fill:currentColor;box-shadow:none;transition:background 0.2s,color 0.2s}
#kk .kk-cta .elementor-button:hover,#kk .kk-cta .elementor-button:focus{background:var(--ink);color:var(--cream);border-color:var(--ink)}
@media (min-width:60rem){
  #kk .kk-header__right{color:var(--ink)}
  #kk .kk-cta{display:block}
}

/* ---- Hero ---- */
#kk .kk-hero{--px:0;--py:0;position:relative;min-height:100svh;display:grid;grid-template-rows:1fr 1fr auto;overflow:hidden;background:var(--cream)}
#kk .kk-half{position:relative;display:flex;overflow:hidden}
#kk .kk-half--kim{background:var(--ink);color:var(--cream);align-items:flex-end}
#kk .kk-half--kloe{background:transparent;color:var(--ink);align-items:flex-start;z-index:1}
#kk .kk-half__inner{position:relative;width:100%;padding:5.5rem var(--gutter) 1.25rem}
#kk .kk-half--kloe .kk-half__inner{padding:1.25rem var(--gutter) 1.5rem;text-align:right;display:flex;flex-direction:column}
#kk .kk-half--kloe .kk-kicker{order:3;margin-top:0.9rem}
#kk .kk-kicker{font-size:0.75rem;font-weight:700;letter-spacing:0.22em;text-transform:uppercase;opacity:0.75}
#kk .kk-half--kim .kk-kicker{color:var(--accent);opacity:1}
#kk .kk-name{font-family:var(--font-display);font-size:clamp(5.5rem,30vw,14rem);line-height:0.82;letter-spacing:-0.045em;
  transform:translate3d(calc(var(--px) * 14px * var(--dir,1)),calc(var(--py) * 8px),0);transition:transform 0.6s var(--ease);animation:kk-rise 1.2s var(--ease) both}
#kk .kk-half--kim .kk-name{font-weight:800;font-variation-settings:'SOFT' 0,'WONK' 0,'opsz' 144;--dir:-1}
#kk .kk-half--kloe .kk-name{font-weight:300;font-style:italic;font-variation-settings:'SOFT' 100,'WONK' 1,'opsz' 144;animation-delay:0.12s}
#kk .kk-tag{font-family:var(--font-display);font-style:italic;font-size:var(--step-2);margin-top:0.35rem;font-weight:400;animation:kk-fade 1.2s 0.5s var(--ease) both}
#kk .kk-half--kim .kk-tag{font-style:normal;font-weight:600}
#kk .kk-amp{position:absolute;left:50%;z-index:2;font-family:var(--font-display);font-style:italic;font-weight:300;color:var(--accent);
  font-size:clamp(4rem,18vw,11rem);line-height:1;pointer-events:none;animation:kk-amp 1.4s 0.3s var(--ease) both}
/* Note: in the original build the scoped .hero__tail positioning never reached the SVG (Astro scoping),
   so the tail renders as a plain flex item beside Kim's text. Reproduced as-is. */
#kk .kk-hero__tail,#kk .kk-hero__tail > .elementor-widget-container{display:contents}
#kk .kk-hero__tail svg{color:var(--ink-3)}
#kk .kk-glow{position:absolute;z-index:0;width:70vmax;height:70vmax;right:-30vmax;bottom:-40vmax;border-radius:50%;
  background:radial-gradient(closest-side,color-mix(in srgb,var(--blush) 55%,transparent),transparent);pointer-events:none}
#kk .kk-hero__foot{grid-column:1 / -1;background:var(--cream);color:var(--muted-on-paper);position:relative;z-index:3;
  display:grid;gap:1rem;padding:1.25rem var(--gutter) 2rem;border-top:1px solid var(--bone)}
#kk .kk-lede{color:var(--ink);max-width:34ch;font-size:var(--step-0)}
#kk .kk-scroll{order:3}
#kk .kk-scroll .elementor-button{display:flex;align-items:center;gap:0.5rem;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;
  font-family:var(--font-body);font-size:0.78rem;font-weight:700;letter-spacing:0.16em;line-height:1.6;text-transform:uppercase;text-decoration:none;color:var(--ink);fill:currentColor}
#kk .kk-scroll .elementor-button:hover,#kk .kk-scroll .elementor-button:focus{color:var(--ink);background:transparent}
#kk .kk-scroll .elementor-button::after{content:'';flex:none;width:18px;height:18px;background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 4v16m0 0-6-6m6 6 6-6' stroke='black' stroke-width='1.6' fill='none'/%3E%3C/svg%3E") center / contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 4v16m0 0-6-6m6 6 6-6' stroke='black' stroke-width='1.6' fill='none'/%3E%3C/svg%3E") center / contain no-repeat;
  animation:kk-bob 2.4s ease-in-out infinite}
#kk .kk-amp{top:50%}
@media (max-width:59.99rem){
  #kk .kk-hero{grid-template-rows:auto auto auto;min-height:auto}
  #kk .kk-half--kim{min-height:46svh}
  #kk .kk-half--kloe .kk-half__inner{padding-bottom:2.5rem}
  #kk .kk-hero .kk-amp{top:calc(46svh - 0.5em);left:var(--gutter);transform:none;font-size:clamp(5rem,30vw,9rem)}
}
@media (min-width:60rem){
  #kk .kk-hero{grid-template-columns:1fr 1fr;grid-template-rows:1fr auto}
  #kk .kk-half{align-items:center}
  #kk .kk-half__inner{padding:7rem clamp(2rem,5vw,5rem) 3rem}
  #kk .kk-half--kim .kk-half__inner{text-align:right}
  #kk .kk-half--kloe .kk-half__inner{text-align:left;padding:7rem clamp(2rem,5vw,5rem) 3rem}
  #kk .kk-half--kloe .kk-kicker{order:0;margin-top:0}
  #kk .kk-name{font-size:clamp(7rem,15vw,16rem)}
  #kk .kk-amp{top:50%;left:50%;transform:translate(-50%,-58%);font-size:clamp(6rem,11vw,12rem)}
  #kk .kk-hero__foot{grid-template-columns:1fr auto 1fr;align-items:center;background:transparent;border:0;padding:0 clamp(2rem,5vw,5rem) 2.25rem}
  #kk .kk-hero__foot::before{content:'';display:block;position:absolute;inset:0 50% 0 0;width:auto;height:auto;margin:0;border:0;border-radius:0;opacity:1;mix-blend-mode:normal;transition:none;background:var(--ink);z-index:-1}
  #kk .kk-foot__eyebrow{color:var(--muted-on-ink)}
  #kk .kk-scroll{order:0;justify-self:center;margin-top:-3.75rem}
  #kk .kk-scroll .elementor-button{width:7.5rem;height:7.5rem;border-radius:50%;flex-direction:column;justify-content:center;
    background:var(--accent);color:var(--paper);font-size:0.66rem;gap:0.3rem}
  #kk .kk-scroll .elementor-button:hover,#kk .kk-scroll .elementor-button:focus{background:var(--ink);color:var(--paper)}
  #kk .kk-lede{justify-self:end;text-align:right}
  #kk .kk-hero__foot .kk-eyebrow .elementor-heading-title::before{display:inline-block}
}
@keyframes kk-rise{from{opacity:0;transform:translateY(0.25em)}}
@keyframes kk-fade{from{opacity:0}}
@keyframes kk-amp{from{opacity:0;scale:0.6;rotate:-20deg}}
@keyframes kk-bob{50%{transform:translateY(4px)}}
@media (prefers-reduced-motion:reduce){
  #kk .kk-name,#kk .kk-tag,#kk .kk-amp,#kk .kk-scroll .elementor-button::after{animation:none}
  #kk .kk-name{transform:none}
}

/* ---- Media slot ("in development" frame) ---- */
#kk .kk-slot{position:relative;margin:0;width:100%;overflow:hidden;border-radius:var(--radius)}
#kk .kk-slot img,#kk .kk-slot video,#kk .kk-slot iframe{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border:0}
#kk .kk-ph{position:absolute;inset:0;display:grid;place-content:center;gap:0.6rem;text-align:center;padding:1.5rem;
  background-image:repeating-linear-gradient(135deg,var(--hatch) 0 1px,transparent 1px 11px)}
#kk .kk-slot--paper{background:var(--bone);color:var(--ink);--hatch:rgba(14,13,16,0.07)}
#kk .kk-slot--ink{background:var(--ink-2);color:var(--cream);--hatch:rgba(244,238,227,0.06)}
#kk .kk-ph__name{font-family:var(--font-display);font-style:italic;font-size:var(--step-2);line-height:1}
#kk .kk-ph__label{font-size:0.72rem;font-weight:700;letter-spacing:0.2em;text-transform:uppercase;opacity:0.6}
#kk .kk-corner{position:absolute;width:18px;height:18px;border:0 solid currentColor;opacity:0.45}
#kk .kk-corner.tl{top:14px;left:14px;border-top-width:1px;border-left-width:1px}
#kk .kk-corner.tr{top:14px;right:14px;border-top-width:1px;border-right-width:1px}
#kk .kk-corner.bl{bottom:14px;left:14px;border-bottom-width:1px;border-left-width:1px}
#kk .kk-corner.br{bottom:14px;right:14px;border-bottom-width:1px;border-right-width:1px}

/* ---- Duo + character panels ---- */
#kk .kk-duo{padding:clamp(4.5rem,10vw,9rem) 0;background:var(--paper)}
#kk .kk-duo__head{display:grid;gap:1rem;margin-bottom:clamp(2rem,5vw,4rem)}
#kk .kk-duo__head .kk-eyebrow{color:var(--muted-on-paper)}
#kk .kk-duo__title{font-size:var(--step-4);max-width:14ch}
#kk .kk-duo__grid{display:grid;gap:clamp(1rem,2vw,1.5rem)}
@media (min-width:48rem){
  #kk .kk-duo__grid{grid-template-columns:1fr 1fr}
  #kk .kk-duo__grid > :nth-child(2){margin-top:clamp(3rem,8vw,7rem)}
}
#kk .kk-panel{display:grid;gap:1.75rem;padding:clamp(1.25rem,3vw,2.5rem);border-radius:var(--radius);align-content:start}
#kk .kk-panel--ink{background:var(--ink);color:var(--cream)}
#kk .kk-panel--paper{background:var(--cream);color:var(--ink)}
#kk .kk-panel__kicker{font-size:0.75rem;font-weight:700;letter-spacing:0.2em;text-transform:uppercase;color:var(--accent)}
#kk .kk-panel--paper .kk-panel__kicker{color:#a4553f}
#kk .kk-panel__name{font-size:var(--step-4);margin-top:0.35rem}
#kk .kk-panel--ink .kk-panel__name{font-weight:800;font-variation-settings:'SOFT' 0,'opsz' 144}
#kk .kk-panel--paper .kk-panel__name{font-weight:300;font-style:italic;font-variation-settings:'SOFT' 100,'WONK' 1,'opsz' 144}
#kk .kk-traits ul{list-style:none;margin:1rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:0.25rem 1rem;font-family:var(--font-display);font-size:var(--step-1)}
#kk .kk-panel--paper .kk-traits ul{font-style:italic}
#kk .kk-panel__text{margin-top:1rem;max-width:42ch;opacity:0.88}
#kk .kk-panel__note{margin-top:1.25rem;font-size:0.85rem;color:var(--muted-on-ink)}
#kk .kk-panel__note p{display:flex;align-items:center;gap:0.7rem}
/* Kim's tail ring marker — exactly one white ring. */
#kk .kk-panel__note p::before{content:'';width:30px;height:10px;border-radius:5px;flex:none;
  background:linear-gradient(90deg,var(--ink-3) 0 42%,var(--cream) 42% 58%,var(--ink-3) 58%)}

/* ---- Origin ---- */
#kk .kk-origin{background:var(--ink);color:var(--cream);padding:clamp(4.5rem,10vw,9rem) 0}
#kk .kk-origin .kk-eyebrow{color:var(--accent)}
#kk .kk-origin__title{font-size:var(--step-4);margin-top:1rem;max-width:16ch}
#kk .kk-beats{margin:clamp(3rem,6vw,5rem) 0 0;padding:0;border-top:1px solid var(--ink-3)}
#kk .kk-beat{display:grid;grid-template-columns:3rem 1fr;gap:0.35rem 1rem;padding:1.75rem 0;border-bottom:1px solid var(--ink-3)}
#kk .kk-beat__n{grid-row:span 2;font-size:0.8rem;font-weight:700;color:var(--muted-on-ink);padding-top:0.5rem;letter-spacing:0.1em}
#kk .kk-beat__title{font-size:var(--step-2);font-style:italic;font-weight:400}
#kk .kk-beat__text{color:var(--muted-on-ink);max-width:52ch}
@media (min-width:60rem){
  #kk .kk-beat{grid-template-columns:5rem minmax(0,1fr) minmax(0,1fr);align-items:baseline;padding:2.25rem 0}
  #kk .kk-beat__n{grid-row:auto;padding:0}
}
#kk .kk-coming{margin-top:clamp(2.5rem,5vw,4rem);display:grid;gap:1rem}
#kk .kk-coming__label{font-size:0.75rem;font-weight:700;letter-spacing:0.2em;text-transform:uppercase;color:var(--muted-on-ink)}
#kk .kk-coming__list ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:0.6rem}
#kk .kk-coming__list li{border:1px dashed color-mix(in srgb,var(--cream) 35%,transparent);padding:0.45rem 0.95rem;border-radius:999px;
  font-family:var(--font-display);font-style:italic;font-size:var(--step-0)}
#kk .kk-coming__note{color:var(--muted-on-ink);font-size:0.9rem;max-width:56ch}

/* ---- Beginning ---- */
#kk .kk-begin{background:var(--cream);padding:clamp(4.5rem,10vw,9rem) 0}
#kk .kk-grid{display:grid;gap:clamp(2rem,5vw,4rem)}
#kk .kk-begin .kk-eyebrow{color:#a4553f}
#kk .kk-begin__title{font-size:var(--step-4);margin-top:1rem;max-width:12ch;font-style:italic;font-weight:400;font-variation-settings:'SOFT' 100,'WONK' 1}
#kk .kk-begin__body{margin-top:1.5rem;max-width:46ch;color:var(--muted-on-paper);font-size:var(--step-1);line-height:1.5}
#kk .kk-items{margin:0;padding:0;display:grid;gap:0;border-top:1px solid var(--bone)}
#kk .kk-item{display:grid;grid-template-columns:3rem 1fr;gap:0.2rem 1rem;padding:1.25rem 0;border-bottom:1px solid var(--bone)}
#kk .kk-n{grid-row:span 2;font-size:0.8rem;font-weight:700;color:var(--muted-on-paper);padding-top:0.35rem}
#kk .kk-item__title{font-size:var(--step-2)}
#kk .kk-item__text{color:var(--muted-on-paper)}
@media (min-width:60rem){
  #kk .kk-grid{grid-template-columns:5fr 7fr;align-items:center}
  #kk .kk-items{grid-column:1 / -1;grid-template-columns:repeat(3,1fr);gap:2rem;border:0}
  #kk .kk-item{border-bottom:0;border-top:1px solid var(--ink);grid-template-columns:1fr;padding-top:1.25rem}
  #kk .kk-n{grid-row:auto}
}

/* ---- Follow ---- */
#kk .kk-follow{background:var(--accent);color:var(--paper);padding:clamp(4.5rem,10vw,8rem) 0}
#kk .kk-follow__inner{display:grid;justify-items:start;gap:1rem}
#kk .kk-follow .kk-eyebrow{opacity:0.85}
#kk .kk-follow__title{font-size:var(--step-4);max-width:16ch}
#kk .kk-follow__body{max-width:44ch;font-size:var(--step-1);line-height:1.5;opacity:0.92}
#kk .kk-follow__form{justify-self:stretch}
#kk .kk-formwrap{display:grid;justify-items:start;gap:1rem}
#kk .kk-form{margin-top:1rem;display:flex;flex-wrap:wrap;gap:0.6rem;width:100%;max-width:34rem}
#kk .kk-form input{flex:1 1 14rem;width:auto;min-height:3.25rem;padding:0 1.1rem;font:inherit;color:var(--ink);background:var(--paper);border:2px solid var(--paper);border-radius:999px;box-shadow:none;transition:none;margin:0}
#kk .kk-form input:focus{border-color:var(--paper)}
#kk .kk-form input:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
#kk .kk-form button{flex:0 0 auto;min-height:3.25rem;padding:0 1.5rem;font:inherit;font-weight:700;cursor:pointer;color:var(--paper);background:var(--ink);
  border:2px solid var(--ink);border-radius:999px;transition:transform 0.2s var(--ease);margin:0;text-transform:none;letter-spacing:normal;line-height:1.6}
#kk .kk-form button:hover,#kk .kk-form button:focus{color:var(--paper);background:var(--ink);border-color:var(--ink);transform:translateY(-2px)}
#kk .kk-form button:focus-visible{outline-color:var(--paper)}
#kk .kk-note,#kk .kk-thanks{font-size:0.85rem;opacity:0.85}
#kk .kk-thanks[hidden]{display:none}
@media (max-width:30rem){#kk .kk-form button{flex:1 1 100%}}

/* ---- Footer ---- */
#kk .kk-footer{background:var(--ink);color:var(--cream);padding:3.5rem 0 2rem;border-top:1px solid var(--ink-3)}
#kk .kk-footer__row{display:flex;flex-wrap:wrap;gap:2rem;justify-content:space-between;align-items:flex-start}
#kk .kk-footer__line{font-family:var(--font-display);font-style:italic;color:var(--muted-on-ink);margin-top:0.4rem}
#kk .kk-footer__right{display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap}
#kk .kk-legal{display:flex;flex-wrap:wrap;gap:0.5rem 1.5rem;justify-content:space-between;margin-top:2.5rem;font-size:0.78rem;color:var(--muted-on-ink)}

/* ================================================================
   Support Kim & Klóe — section, footer link and pop-up (additions).
   Built only from existing tokens and patterns (eyebrow, italic
   Fraunces headline, cream card, ink pill) so it reads as native.
   ================================================================ */
#kk .kk-support{background:var(--paper);color:var(--ink);padding:clamp(4.5rem,10vw,8rem) 0}
#kk .kk-support__grid{display:grid;gap:clamp(2rem,5vw,4rem)}
#kk .kk-support .kk-eyebrow{color:#a4553f}
#kk .kk-support__title{font-size:var(--step-4);margin-top:1rem;max-width:13ch;font-style:italic;font-weight:400;font-variation-settings:'SOFT' 100,'WONK' 1}
#kk .kk-support__body{margin-top:1.5rem;max-width:46ch;color:var(--muted-on-paper);font-size:var(--step-1);line-height:1.5}
#kk .kk-support__btn{margin-top:2rem}
#kk .kk-support__btn .elementor-button,#kk .kk-modal__cta .elementor-button{display:inline-flex;align-items:center;gap:0.65rem;min-height:3.25rem;padding:0 1.6rem;
  font-family:var(--font-body);font-size:var(--step-0);font-weight:700;letter-spacing:normal;line-height:1.6;text-transform:none;text-decoration:none;
  color:var(--paper);background:var(--ink);border:2px solid var(--ink);border-radius:999px;box-shadow:none;fill:currentColor;
  transition:transform 0.2s var(--ease),background 0.2s,border-color 0.2s}
/* A small blush dot — Klóe's colour — instead of any money / cart symbol. */
#kk .kk-support__btn .elementor-button::before{content:'';width:0.55rem;height:0.55rem;border-radius:50%;background:var(--blush);flex:none}
#kk .kk-support__btn .elementor-button:hover,#kk .kk-support__btn .elementor-button:focus,
#kk .kk-modal__cta .elementor-button:hover,#kk .kk-modal__cta .elementor-button:focus{color:var(--paper);background:var(--accent);border-color:var(--accent);transform:translateY(-2px)}
#kk .kk-support__note{margin-top:1rem;font-size:0.85rem;color:var(--muted-on-paper);max-width:46ch}
#kk .kk-support__card{background:var(--cream);border-radius:var(--radius);padding:clamp(1.25rem,3vw,2.5rem);align-self:start}
#kk .kk-support__kicker{font-size:0.75rem;font-weight:700;letter-spacing:0.2em;text-transform:uppercase;color:#a4553f}
#kk .kk-use{padding:1.25rem 0;border-bottom:1px solid var(--bone)}
#kk .kk-support__kicker + .kk-use{margin-top:1rem;border-top:1px solid var(--ink)}
#kk .kk-use:last-child{border-bottom:0;padding-bottom:0}
#kk .kk-use__title{font-size:var(--step-2);font-style:italic;font-weight:400}
#kk .kk-use__text{margin-top:0.35rem;color:var(--muted-on-paper)}
@media (min-width:60rem){
  #kk .kk-support__grid{grid-template-columns:7fr 5fr;align-items:end}
}

/* Footer link */
#kk .kk-footer__support{font-size:0.78rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase}
#kk .kk-footer__support a{display:inline-flex;align-items:center;gap:0.5rem;padding:0.45rem 0;text-decoration:none;opacity:0.8;transition:opacity 0.2s}
#kk .kk-footer__support a::before{content:'';width:0.45rem;height:0.45rem;border-radius:50%;background:var(--blush);flex:none}
#kk .kk-footer__support a:hover{opacity:1}

/* Pop-up (hidden until opened; shown inline inside the Elementor editor so it stays editable) */
#kk .kk-modal{position:fixed;inset:0;z-index:1000;display:none;place-items:center;padding:var(--gutter);
  background:rgba(14,13,16,0.72);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
#kk .kk-modal.is-open{display:grid;animation:kk-fade 0.35s var(--ease) both}
html.kk-modal-open{overflow:hidden}
#kk .kk-modal__panel{position:relative;width:100%;max-width:34rem;max-height:calc(100svh - 2 * var(--gutter));overflow:auto;
  display:grid;justify-items:start;gap:1rem;padding:clamp(1.75rem,4vw,3rem);background:var(--cream);color:var(--ink);border-radius:var(--radius);
  box-shadow:0 30px 80px rgba(14,13,16,0.35)}
#kk .kk-modal.is-open .kk-modal__panel{animation:kk-pop 0.5s var(--ease) both}
#kk .kk-modal .kk-eyebrow{color:#a4553f;padding-right:2.5rem}
#kk .kk-modal__title{font-size:var(--step-3);max-width:14ch;font-style:italic;font-weight:400;font-variation-settings:'SOFT' 100,'WONK' 1}
#kk .kk-modal__body{color:var(--muted-on-paper);max-width:40ch}
#kk .kk-modal__cta{margin-top:0.5rem}
#kk .kk-modal__soon{display:none;font-size:0.85rem;color:var(--ink);max-width:40ch;padding:0.8rem 1rem;border:1px dashed rgba(14,13,16,0.3);border-radius:var(--radius)}
#kk .kk-modal__soon:focus{outline:none}
#kk .kk-modal__panel.is-soon .kk-modal__soon{display:block;animation:kk-fade 0.4s var(--ease) both}
#kk .kk-modal__follow{font-size:0.78rem;font-weight:700;letter-spacing:0.16em;text-transform:uppercase;margin-top:0.25rem}
#kk .kk-modal__follow a{display:inline-block;padding:0.35rem 0;text-decoration:none;border-bottom:1px solid currentColor}
#kk .kk-modal__close{position:absolute;top:0.75rem;right:0.75rem}
#kk .kk-modal__close button{display:grid;place-items:center;width:44px;height:44px;padding:0;margin:0;border-radius:50%;border:1px solid transparent;
  background:transparent;color:var(--ink);cursor:pointer;transition:background 0.2s,border-color 0.2s}
#kk .kk-modal__close button:hover,#kk .kk-modal__close button:focus{background:var(--bone);border-color:var(--bone);color:var(--ink)}
#kk .kk-modal__close svg{display:block}
@keyframes kk-pop{from{opacity:0;transform:translateY(16px) scale(0.98)}}
@media (prefers-reduced-motion:reduce){#kk .kk-modal.is-open,#kk .kk-modal.is-open .kk-modal__panel,#kk .kk-modal__panel.is-soon .kk-modal__soon{animation:none}}
body.elementor-editor-active #kk .kk-modal{display:grid;position:relative;inset:auto;z-index:auto;padding:3.5rem var(--gutter)}
body.elementor-editor-active #kk .kk-modal::before{content:'Support pop-up — hidden on the live page until someone clicks “Support”';position:absolute;top:1rem;left:var(--gutter);
  font-size:0.72rem;font-weight:700;letter-spacing:0.16em;text-transform:uppercase;color:var(--cream);opacity:0.75}
body.elementor-editor-active #kk .kk-modal__soon{display:block}

/* ================================================================
   Their Extended Family — understated storytelling section (addition).
   Uses the Origin section's ink palette, beat rules and italic Fraunces.
   ================================================================ */
#kk .kk-family{background:var(--ink);color:var(--cream);padding:clamp(4.5rem,10vw,8rem) 0;border-bottom:1px solid var(--ink-3)}
#kk .kk-family__grid{display:grid;gap:clamp(2rem,5vw,4rem)}
#kk .kk-family .kk-eyebrow{color:var(--accent)}
#kk .kk-family__title{font-size:var(--step-3);margin-top:1rem;max-width:20ch;font-style:italic;font-weight:400;font-variation-settings:'SOFT' 100,'WONK' 1}
#kk .kk-family__body{margin-top:1.5rem;max-width:52ch;color:var(--muted-on-ink);font-size:var(--step-1);line-height:1.5}
#kk .kk-family__card{align-self:end;border-top:1px solid var(--ink-3)}
#kk .kk-kin{padding:1.25rem 0;border-bottom:1px solid var(--ink-3);display:grid;gap:0.35rem}
#kk .kk-kin__label{font-size:0.75rem;font-weight:700;letter-spacing:0.2em;text-transform:uppercase;color:var(--muted-on-ink)}
#kk .kk-kin__name{font-family:var(--font-display);font-size:var(--step-2);font-style:italic;font-weight:400;line-height:1.2}
#kk .kk-kin__note{color:var(--muted-on-ink);font-size:0.9rem}
#kk .kk-family__moment{display:grid;gap:0.75rem;padding-left:1.25rem;border-left:2px solid var(--blush)}
#kk .kk-family__moment-label{font-size:0.75rem;font-weight:700;letter-spacing:0.2em;text-transform:uppercase;color:var(--blush)}
#kk .kk-family__moment-text{font-family:var(--font-display);font-style:italic;font-size:var(--step-1);line-height:1.45;max-width:60ch}
@media (min-width:60rem){
  #kk .kk-family__grid{grid-template-columns:7fr 5fr}
  #kk .kk-family__moment{grid-column:1 / -1;grid-template-columns:14rem minmax(0,1fr);align-items:baseline;gap:2rem;padding-left:2rem}
}

/* Ready for real photos: drop an Image or Video widget into a character panel or the "first look"
   frame (and delete the placeholder HTML widget) — it picks up the same frame automatically. */
#kk .kk-panel .elementor-widget-image img{display:block;width:100%;height:auto;aspect-ratio:4 / 5;object-fit:cover;border-radius:var(--radius)}
#kk .kk-reel .elementor-widget-image img{display:block;width:100%;height:auto;aspect-ratio:16 / 9;object-fit:cover;border-radius:var(--radius)}
#kk .kk-reel .elementor-widget-video .elementor-wrapper{border-radius:var(--radius);overflow:hidden}/* End custom CSS */