/* Accessibility additions; the reference template supplies the visual design. */
:focus-visible { outline: 3px solid #328b41; outline-offset: 5px; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  *, *::before, *::after { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; }
}
html { scroll-padding-top: 120px; }
[data-framer-name="Remove This"], [data-framer-name="Remove - Promo Button"], #__framer-badge-container { display: none !important; }
.framer-kxzsp8-container { display: none !important; }
.framer-mkkbob h1 { font-size: clamp(42px, 9vw, 138px) !important; line-height: 1.08 !important; }
.framer-sdgv9e-container { width: 215px !important; }
.framer-1vwt240 h2 { text-wrap: balance; }
.framer-1vwt240 .framer-1yku3l1 h2 { font-size: 22px !important; }
.framer-mg1pnh h2 { text-wrap: balance; }
.framer-1j1gvq7 img { visibility: visible; }
.framer-1j1gvq7 h3, .framer-1j1gvq7 h4 { font-size: clamp(23px, 2.2vw, 34px) !important; }
@media (max-width: 809px) {
  .framer-sdgv9e-container { width: 185px !important; }
  .framer-mkkbob h1 { font-size: clamp(42px, 10.4vw, 76px) !important; }
}
a[href="https://www.pinterest.com/"], a[href="https://www.linkedin.com"] { display: none !important; }
.lfc-menu { border: 0; border-radius: 24px; background: #f5f6d1; color: #000; width: calc(100% - 32px); max-width: 460px; padding: 28px; margin: 85px auto auto; box-shadow: 0 20px 80px #0002; }
.lfc-menu::backdrop { background: #0006; }
.lfc-menu nav { display: grid; gap: 22px; padding: 20px 0; }
.lfc-menu a { font-family: Nunito, sans-serif; font-size: 25px; font-weight: 800; color: inherit; text-decoration: none; }
.lfc-menu button { border: 0; background: transparent; font-size: 28px; cursor: pointer; float: right; }
.lfc-menu .lfc-contact { background: #d2f43a; padding: 15px 20px; border-radius: 35px; font-size: 20px; text-align: center; }

/* Moodboard palette only: preserve every template block and motion component. */
:root, body {
  --lfc-paper: #fffefa;
  --lfc-green: #b8d666;
  --lfc-pink: #e8b8c8;
  --lfc-ink: #41483a;
  --token-3ec9de4d-64e8-44e4-b12e-0f27d31508c2: #fffefa !important;
  --token-a2a5f337-6632-4e1b-9eb9-8e57b10180f3: #eff5df !important;
  --token-953b778d-cfb0-4377-8cd6-d0a469fbcaa6: #b8d666 !important;
  --token-d77bbc1d-669d-4db8-8205-b913cde9890c: #b8d666 !important;
  --token-8fb5b071-8da7-462b-bcb0-770a3289c6df: #e8b8c8 !important;
  --token-044ae09d-2106-497e-88d4-f5fed2c6f28f: #eee5f4 !important;
  --token-a8584111-3910-4a77-b94d-e04e5c17b503: #eee5f4 !important;
  --token-35ca47c9-79ec-4e26-82c0-a577decae151: #eff5df !important;
  --token-c612e62c-5569-4996-a49e-5c04f285f64a: #b8d666 !important;
  --token-9370f109-8104-4c7c-80a6-eb3c216bcc67: #849465 !important;
  --token-53fcfb0f-4009-420e-b17a-11de66f67e03: #41483a !important;
  --token-f6cd56a1-9799-47ca-b9a6-fd5edf4ef50e: #41483a !important;
  --token-164ebb64-97d1-4305-928d-d5c727094187: #686e60 !important;
  --token-4c19f6e2-0aba-4e70-9332-c4bd571b5e92: #dfe5d4 !important;
}
/* Scope the action colour so decorative green surfaces stay green. */
a.framer-womO9, .lfc-menu .lfc-contact {
  --token-953b778d-cfb0-4377-8cd6-d0a469fbcaa6: #e8b8c8 !important;
  background-color: #e8b8c8 !important;
}
a.framer-womO9:hover, .lfc-menu .lfc-contact:hover { background-color: #dfadc0 !important; }
[data-framer-name="Hero Shape"] .framer-text,
[data-framer-name="Hero Frame"] .framer-text {
  --framer-text-color: #41483a !important;
}
.lfc-menu { background: #fffefa; color: #41483a; }
:focus-visible { outline-color: #41483a; }
/* Keep lettering readable on the lighter animated stickers throughout the page. */
[data-framer-name$="Frame"] .framer-text {
  --framer-text-color: #41483a !important;
}

/* Soft modelling-clay finish, inspired by the read-only Yellow+ kickoff images.
   Paint and shadows only: no changes to layout or Framer motion transforms. */
:root {
  --lfc-clay-grain: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.72' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3CfeComponentTransfer%3E%3CfeFuncA type='linear' slope='.075'/%3E%3C/feComponentTransfer%3E%3C/filter%3E%3Cpath fill='%23847560' filter='url(%23n)' d='M0 0h120v120H0z'/%3E%3C/svg%3E");
}
/* Existing masked shapes retain their silhouettes and all animated rotations. */
div[data-framer-name="Union"], .framer-1rke1bc {
  background-image: var(--lfc-clay-grain),
    radial-gradient(ellipse at 32% 15%, #fff7, transparent 58%),
    linear-gradient(165deg, #fff2 10%, transparent 50%, #69503230 100%) !important;
}
[data-framer-name="Hero Shape"], [data-framer-name$="Frame"] {
  filter: drop-shadow(0 4px 2px #74613c15) drop-shadow(0 8px 8px #74613c0d);
}
/* Literal SVG stickers get edge lighting without changing their colours/paths. */
[data-framer-name$="Frame"] > img[src^="data:image/svg+xml,"] {
  filter: url('/vendor/framerusercontent.com/images/lfc-clay-filters.svg#clay');
}
a.framer-womO9, .lfc-menu .lfc-contact {
  background-image: var(--lfc-clay-grain),
    radial-gradient(ellipse at 35% 0%, #ffffff38, transparent 68%),
    linear-gradient(180deg, transparent 55%, #80506c20) !important;
  box-shadow: inset 0 3px 5px #ffffff65, inset 0 -4px 6px #80506c29,
    0 4px 0 #c48fa6, 0 8px 13px #80506c19 !important;
}
a.framer-womO9:active, .lfc-menu .lfc-contact:active {
  box-shadow: inset 0 2px 5px #80506c25, inset 0 -2px 3px #ffffff40,
    0 2px 0 #c48fa6, 0 4px 7px #80506c15 !important;
}
/* The existing cards stay in place; a soft raised edge replaces the flat fill. */
a.framer-5i5ft {
  border-radius: 36px !important;
  background-image: var(--lfc-clay-grain),
    radial-gradient(ellipse at 25% 0%, #ffffff55, transparent 65%) !important;
  box-shadow: inset 2px 3px 7px #ffffffa6, inset -2px -4px 8px #8b9b4d1a !important;
}
@media (forced-colors: active) {
  a.framer-womO9, .lfc-menu .lfc-contact { border: 1px solid ButtonText; }
  [data-framer-name="Hero Shape"], [data-framer-name$="Frame"],
  [data-framer-name$="Frame"] > img[src^="data:image/svg+xml,"] { filter: none; }
}

/* Sunburst art direction applied to the original template, with its layout intact. */
@font-face { font-family: "LFC Baloo"; src: url('/vendor/lfc/baloo2-variable.ttf') format('truetype'); font-weight: 400 800; font-display: swap; }
:root { --lfc-mauve: #bca4d5; }
h1.framer-text, h2.framer-text, h3.framer-text, h4.framer-text { font-family: "LFC Baloo", sans-serif !important; --framer-font-family: "LFC Baloo", sans-serif !important; font-weight: 500 !important; --framer-font-weight: 500 !important; }
.framer-mkkbob h1 { font-size: clamp(48px, 7.8vw, 112px) !important; line-height: 1.02 !important; }
/* Let transparent clay illustrations breathe in the existing image frames. */
img[src*="/vendor/lfc/"] { object-fit: contain !important; }
.framer-1twhhlg { background: #eff5df !important; }
.framer-1twhhlg img { padding: 24px; }
.framer-6tpv0e { background: #eee5f4; border-radius: 40px; }
.framer-6tpv0e img { padding: 24px; }
/* The visual roles replace generic template portraits, not actual staff photos. */
.framer-1j1gvq7 { --framer-text-color: #41483a; }
.lfc-menu a { font-family: "LFC Baloo", sans-serif; font-weight: 500; }
@media (max-width: 809px) { .framer-mkkbob h1 { font-size: clamp(43px, 8.6vw, 74px) !important; } }
/* Balance the longer client headline inside the template's existing title. */
.framer-mkkbob h1 { text-wrap: balance; }

/* Keep the original hero and animated stickers, in a separate row below the title. */
.framer-mkkbob .framer-lnomnm{display:grid!important;grid-template-columns:repeat(3,max-content);justify-content:center;column-gap:30px;row-gap:32px;width:100%!important}
.framer-mkkbob .framer-1xs4g80{grid-column:1/-1;width:min(100%,1000px)!important;justify-self:center}
.framer-mkkbob [data-framer-name="Hero Shape"],.framer-mkkbob [data-framer-name="Hero Frame"]{position:relative!important;inset:auto!important;justify-self:center;pointer-events:none;margin:0!important}
.framer-1twhhlg{background:#fffefa!important}
.framer-1twhhlg img{padding:0;object-fit:cover!important}
.lfc-menu{max-height:calc(100dvh - 110px);overflow:auto}
@media(max-width:809px){.framer-mkkbob .framer-lnomnm{display:flex!important}.framer-mkkbob [data-framer-name="Hero Shape"],.framer-mkkbob [data-framer-name="Hero Frame"]{display:none!important}}
/* Match the wide illustration's proportions instead of the demo's full-screen photo. */
.framer-19aiaap{height:clamp(280px,42vw,600px)!important;min-height:0!important}
.framer-1twhhlg{height:100%!important}
/* Title ornaments are decorative; keep them out of reading areas. */
.framer-mkkbob [data-framer-name="Hero Shape"],.framer-mkkbob [data-framer-name="Hero Frame"]{transform:none!important;rotate:-5deg;align-self:center}
.framer-mkkbob .framer-co2g0o{rotate:7deg}
.framer-a1hse,.framer-koyois,.framer-1ay3psx,.framer-t3pyjy,.framer-13k4gwa,.framer-uw97kp,.framer-1xf5tt2{display:none!important}
.framer-1twhhlg img{object-fit:contain!important}
.framer-147ij0v{display:none!important}

/* 22 September: photography and clay share the original Framer composition. */
.framer-mkkbob{padding-top:145px!important;padding-bottom:40px!important}
.framer-mkkbob .framer-lnomnm{display:flex!important;flex-direction:column!important;gap:12px!important}
.framer-mkkbob .framer-1xs4g80{width:min(100%,950px)!important}
.framer-mkkbob h1{font-size:clamp(48px,6.8vw,94px)!important;font-weight:450!important;line-height:1.02!important}
.framer-mkkbob [data-framer-name="Hero Shape"],.framer-mkkbob [data-framer-name="Hero Frame"]{display:none!important}
/* The template's full-screen sticky photo is now a card: keep it in the flow so it no longer
   stays pinned under the caption and the added sections while scrolling. */
.framer-19aiaap{position:relative!important;top:auto!important}
.framer-19aiaap{width:calc(100% - 64px)!important;max-width:1320px!important;height:clamp(320px,41vw,575px)!important;border-radius:36px!important;margin:0 auto!important;overflow:hidden!important}
img[src*="/vendor/lfc/photo-"]{object-fit:cover!important;object-position:50% 45%!important}
.framer-1twhhlg img[src*="photo-"]{object-fit:cover!important;object-position:50% 45%!important}
.framer-1vwt240{padding-top:55px!important;padding-bottom:60px!important}
.framer-1j1gvq7,.framer-wwwvrc-container{display:none!important}
.framer-mg1pnh,.framer-jv2b8j,.framer-1nnyp7c{height:auto!important}
.framer-6tpv0e{border-radius:40px!important}
@media(max-width:809px){.framer-mkkbob{padding-top:112px!important;padding-bottom:30px!important}.framer-mkkbob h1{font-size:clamp(43px,8.4vw,66px)!important}.framer-19aiaap{width:calc(100% - 40px)!important;height:clamp(280px,57vw,470px)!important;border-radius:26px!important}.framer-1vwt240{padding-top:32px!important;padding-bottom:40px!important}}
@media(max-width:520px){.framer-mkkbob{padding-left:20px!important;padding-right:20px!important}.framer-mkkbob h1{font-size:47px!important}.framer-19aiaap{height:300px!important}.framer-1twhhlg img[src*="photo-"]{object-position:48% center!important}}
/* Stable photographic frames; retain the original card layout and clay motion. */
.framer-41z8dm>.framer-jpknka-container{visibility:hidden}
.framer-41z8dm>.lfc-home-photo{position:absolute;inset:0;width:100%;height:100%;border-radius:36px;object-fit:cover!important}
.framer-1nnyp7c .framer-oj5a6y,.framer-1nnyp7c .framer-6v2ebq,.framer-1nnyp7c .framer-1kiiwo2{visibility:hidden}
.framer-1nnyp7c canvas{visibility:hidden}
.framer-1qvhph0,.framer-1tjog8v,.framer-1tpjked{height:auto!important;min-height:490px;display:flex!important;flex-direction:column!important;gap:0!important;align-items:stretch!important;justify-content:flex-start!important;overflow:hidden!important;background:#eff5df!important}
.framer-1nnyp7c .lfc-home-photo{width:100%;height:260px;flex:0 0 260px;object-fit:cover!important;position:relative;z-index:1}
.framer-1nnyp7c .framer-2bg98n,.framer-1nnyp7c .framer-1nfsa69,.framer-1nnyp7c .framer-tzv65n{position:relative!important;inset:auto!important;order:2;width:100%!important;padding:26px!important;height:auto!important;z-index:2}
.framer-1nnyp7c .framer-a0o0de,.framer-1nnyp7c .framer-v0jtob,.framer-1nnyp7c .framer-ip34v5{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:6px!important}
@media(max-width:809px){.framer-1nnyp7c .lfc-home-photo{height:240px;flex-basis:240px}.framer-41z8dm>.lfc-home-photo{border-radius:28px}}
.framer-1nnyp7c .lfc-home-photo{border-radius:20px}
