.elementor-12077 .elementor-element.elementor-element-5eaa000{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-12077 .elementor-element.elementor-element-12e1642{--display:flex;--min-height:760px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:0px 52px;--row-gap:0px;--column-gap:52px;--padding-top:96px;--padding-bottom:96px;--padding-left:0px;--padding-right:0px;}.elementor-12077 .elementor-element.elementor-element-12e1642:not(.elementor-motion-effects-element-type-background), .elementor-12077 .elementor-element.elementor-element-12e1642 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://living-revolution.com/wp-content/uploads/2026/09/lr-sl-kop-dining-hero-2560.webp");background-position:initial;background-repeat:no-repeat;background-size:cover;}.elementor-12077 .elementor-element.elementor-element-6100b5b{--display:flex;}.elementor-12077 .elementor-element.elementor-element-68d3da2{--display:flex;}.elementor-12077 .elementor-element.elementor-element-a73af59{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-12077 .elementor-element.elementor-element-5af9191{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:flex-start;--gap:0px 64px;--row-gap:0px;--column-gap:64px;--padding-top:96px;--padding-bottom:96px;--padding-left:0px;--padding-right:0px;}.elementor-12077 .elementor-element.elementor-element-5d471e7{--display:flex;}.elementor-12077 .elementor-element.elementor-element-cb5cb8b{--display:flex;}@media(max-width:1024px){.elementor-12077 .elementor-element.elementor-element-12e1642{--min-height:0px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-12077 .elementor-element.elementor-element-12e1642:not(.elementor-motion-effects-element-type-background), .elementor-12077 .elementor-element.elementor-element-12e1642 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:0% 0%;}.elementor-12077 .elementor-element.elementor-element-5af9191{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}}@media(max-width:767px){.elementor-12077 .elementor-element.elementor-element-12e1642{--min-height:0px;}.elementor-12077 .elementor-element.elementor-element-12e1642:not(.elementor-motion-effects-element-type-background), .elementor-12077 .elementor-element.elementor-element-12e1642 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:0% 0%;}.elementor-12077 .elementor-element.elementor-element-68d3da2{--width:100%;}.elementor-12077 .elementor-element.elementor-element-5d471e7{--width:100%;}.elementor-12077 .elementor-element.elementor-element-cb5cb8b{--width:100%;}}@media(min-width:768px){.elementor-12077 .elementor-element.elementor-element-6100b5b{--width:58%;}.elementor-12077 .elementor-element.elementor-element-68d3da2{--width:42%;}.elementor-12077 .elementor-element.elementor-element-5af9191{--width:100%;}.elementor-12077 .elementor-element.elementor-element-5d471e7{--width:55%;}.elementor-12077 .elementor-element.elementor-element-cb5cb8b{--width:45%;}}@media(max-width:1024px) and (min-width:768px){.elementor-12077 .elementor-element.elementor-element-68d3da2{--width:100%;}.elementor-12077 .elementor-element.elementor-element-5d471e7{--width:100%;}.elementor-12077 .elementor-element.elementor-element-cb5cb8b{--width:100%;}}@media(min-width:1025px){.elementor-12077 .elementor-element.elementor-element-12e1642:not(.elementor-motion-effects-element-type-background), .elementor-12077 .elementor-element.elementor-element-12e1642 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-attachment:scroll;}}/* Start custom CSS *//* ==========================================================================
   LIVING REVOLUTION  ·  Senior Living Search Landing Page
   /senior-living-ffe/   ·   Paste into Page Settings > Advanced > Custom CSS
   --------------------------------------------------------------------------
   Everything is scoped to .lr-lp-page. That class must sit on the OUTERMOST
   Elementor container, with every other container nested inside it. If the
   closing container ends up as a top level sibling, none of these rules can
   reach it.

   Rules this file holds to:
     1. Prompt throughout, matching living-revolution.com.
     2. Pill buttons and 10px on contained images, matching the site.
     3. No black backgrounds. The darkest value is pine-dark #163029.
     4. Every photograph carries an A&D and client credit. No photographer
        names on the page; the footer permission line covers those.
     5. Mint appears once or twice per section, never five times.
     6. No em dashes anywhere.
   ========================================================================== */

/* ---------------------------------------------------------------
   1. TOKENS
   --------------------------------------------------------------- */
.lr-lp-page{
  --mint:#5EB5A5;
  --mint-deep:#3E8F80;        /* large type, rules and marks on light */
  --mint-text:#2F7568;        /* small type on light, clears WCAG AA */
  --pine:#214A3E;
  --pine-dark:#163029;        /* darkest value used. No black. */
  --offwhite:#F4F1EA;
  --sand:#C9BCA6;
  --ink:#2A2A28;
  --copper:#B0703F;
  --copper-text:#96592B;

  --font:"Prompt",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;

  --max:1240px;
  --gut:clamp(20px,5vw,64px);
  --hair:rgba(42,42,40,.16);
  --hair-dark:rgba(201,188,166,.24);
  --r-img:10px;
  --r-btn:999px;
  --r-field:6px;
}

/* ---------------------------------------------------------------
   2. ELEMENTOR KIT COMPATIBILITY
   The Elementor kit writes typography onto <body> through the
   .elementor-kit-N class it puts there, and onto bare h1/h2/h3
   through .elementor-kit-N h1. Those are class body.elementor-page-12077s, so plain
   body{} and h3{} rules lose no matter the load order. Measured on
   the amenity page the kit was applying 14px, weight 500, a FIXED
   1.375rem line-height, and #444444. All four are re-asserted here
   at matching specificity.
   --------------------------------------------------------------- */
.lr-lp-page{
  font-family:var(--font);
  font-size:16px;
  font-weight:300;
  line-height:1.68;
  color:var(--ink);
  -webkit-font-smoothing:antialiased;
}
.lr-lp-page h1,.lr-lp-page h2,.lr-lp-page h3,
.lr-lp-page h4,.lr-lp-page h5,.lr-lp-page h6{line-height:1.2;margin:0}
.lr-lp-page p{margin:0 0 1rem}
.lr-lp-page ul,.lr-lp-page ol{list-style:none;margin:0;padding:0}
.lr-lp-page img{display:block;max-width:100%}
.lr-lp-page figure{margin:0}   /* UA default is margin:1em 40px */
.lr-lp-page *,.lr-lp-page *::before,.lr-lp-page *::after{box-sizing:border-box}

/* Elementor container padding. Full Width governs width, not padding,
   which is why the default 10px shows as a margin at every edge. */
/* Elementor gives containers a default flex gap and widgets a bottom margin.
   Both show as a stripe between the top bar and the hero. */
.lr-lp-page.e-con{gap:0;row-gap:0;padding-left:0;padding-right:0}
.lr-lp-page > .elementor-widget,
.lr-lp-page > .elementor-element{margin-bottom:0}
.lr-lp-page .lr-top + *,
.lr-lp-page .lr-top{margin-top:0}

/* ---------------------------------------------------------------
   3. TYPE
   Prompt is wider than Avenir with a larger x-height, so display
   sizes and tracking are tuned for it rather than carried over.
   --------------------------------------------------------------- */
.lr-lp-page .lr-kicker{
  font-size:.72rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;
  color:var(--mint-text);margin:0 0 .9rem;
}
.lr-lp-page .onDark .lr-kicker,
.lr-lp-page .lr-band .lr-kicker,
.lr-lp-page .lr-lp-hero .lr-kicker{color:var(--mint)}

.lr-lp-page .lr-h1{
  font-size:clamp(1.95rem,3.5vw,2.95rem);
  font-weight:600;letter-spacing:-.019em;line-height:1.12;margin:0;
}
.lr-lp-page .lr-h2{
  font-size:clamp(1.7rem,3.1vw,2.5rem);
  font-weight:600;letter-spacing:-.017em;line-height:1.16;margin:0;color:var(--pine);
}
.lr-lp-page .onDark .lr-h2,.lr-lp-page .lr-band .lr-h2{color:var(--offwhite)}
.lr-lp-page .lr-h3{
  font-size:clamp(1.1rem,1.7vw,1.32rem);
  font-weight:600;letter-spacing:-.008em;line-height:1.3;color:var(--pine);margin:0;
}
.lr-lp-page .lr-deck{
  font-size:clamp(1.02rem,1.25vw,1.14rem);font-weight:300;line-height:1.62;
  max-width:44ch;margin:1.15rem 0 0;
}
.lr-lp-page .lr-body{font-size:1rem;line-height:1.7;max-width:60ch}
.lr-lp-page .lr-em{color:var(--mint-text);font-weight:500}
.lr-lp-page .onDark .lr-em,.lr-lp-page .lr-band .lr-em{color:var(--mint)}
.lr-lp-page b,.lr-lp-page strong{font-weight:600;color:var(--pine)}
.lr-lp-page .onDark b,.lr-lp-page .onDark strong,
.lr-lp-page .lr-band b,.lr-lp-page .lr-band strong,
.lr-lp-page .lr-lp-close b,.lr-lp-page .lr-lp-close strong,
.lr-lp-page #lr-close b,.lr-lp-page #lr-close strong{color:var(--offwhite)}

.lr-lp-page .lr-wrap{max-width:var(--max);margin:0 auto;padding-left:var(--gut);padding-right:var(--gut)}
.lr-lp-page .lr-sec{padding-top:clamp(58px,7vw,110px);padding-bottom:clamp(58px,7vw,110px)}
.lr-lp-page .lr-sec--tight{padding-top:clamp(44px,5vw,70px);padding-bottom:clamp(44px,5vw,70px)}
.lr-lp-page .lr-rule{border:0;border-top:1px solid var(--hair);margin:0}
.lr-lp-page .onDark .lr-rule{border-color:var(--hair-dark)}

/* ---------------------------------------------------------------
   4. BUTTONS
   Pill outline and pill fill, matching living-revolution.com.
   --------------------------------------------------------------- */
.lr-lp-page .lr-btn{
  display:inline-flex;align-items:center;justify-content:center;text-align:center;
  font-family:var(--font);font-size:.78rem;font-weight:600;letter-spacing:.13em;
  text-transform:uppercase;line-height:1.2;
  padding:1.08rem 2.1rem;border:1px solid transparent;border-radius:var(--r-btn);
  background:transparent;text-decoration:none;cursor:pointer;
  transition:background .18s ease,color .18s ease,border-color .18s ease;
}
.lr-lp-page .lr-btn--fill{background:var(--mint);color:var(--pine-dark)}
.lr-lp-page .lr-btn--fill:hover{background:var(--mint-deep);color:var(--offwhite)}
.lr-lp-page .lr-btn--line{border-color:rgba(33,74,62,.55);color:var(--pine)}
.lr-lp-page .lr-btn--line:hover{background:var(--pine);color:var(--offwhite);border-color:var(--pine)}
.lr-lp-page .lr-btn--lineLight{border-color:rgba(244,241,234,.55);color:var(--offwhite)}
.lr-lp-page .lr-btn--lineLight:hover{background:var(--offwhite);color:var(--pine-dark);border-color:var(--offwhite)}
.lr-lp-page .lr-btn--block{width:100%}

.lr-lp-page :focus-visible{outline:2px solid var(--mint-deep);outline-offset:3px}
.lr-lp-page .onDark :focus-visible,
.lr-lp-page .lr-band :focus-visible,
.lr-lp-page .lr-lp-hero :focus-visible{outline-color:var(--mint)}

/* ---------------------------------------------------------------
   5. FIGURES AND CREDITS
   Contained images carry a radius and a caption below. Full bleed
   images carry a corner credit. Credits name A&D and client only.
   --------------------------------------------------------------- */
.lr-lp-page .lr-fig{position:relative;overflow:hidden;border-radius:var(--r-img);background:var(--pine-dark)}
.lr-lp-page .lr-fig img{width:100%;height:auto;display:block}
.lr-lp-page .lr-cap{
  font-size:.66rem;font-weight:500;letter-spacing:.13em;text-transform:uppercase;
  color:var(--mint-text);margin:0;
  padding-top:.6rem;           /* padding not margin: themes reset figure margins */
  text-align:right;            /* credits sit right so they never read as a caption lead-in */
}
.lr-lp-page .lr-credit{
  position:absolute;right:0;bottom:0;margin:0;z-index:2;
  font-size:.62rem;font-weight:500;letter-spacing:.13em;text-transform:uppercase;
  color:rgba(244,241,234,.92);background:rgba(15,33,28,.62);
  padding:.5rem .85rem;
}

/* ---------------------------------------------------------------
   5b. TOP BAR
   The theme header is suppressed for this page in Theme Builder, so
   the page supplies its own. Sticky, minimal, one button, no site
   navigation. Same posture as the amenity page.
   --------------------------------------------------------------- */
.lr-lp-page .lr-top{position:sticky;top:0;z-index:60;background:var(--pine-dark)}
.lr-lp-page .lr-top__in{
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
  padding-top:.85rem;padding-bottom:.85rem;
}
.lr-lp-page .lr-top img{height:24px;width:auto}
.lr-lp-page .lr-top__right{display:flex;align-items:center;gap:clamp(.9rem,2vw,1.6rem)}
.lr-lp-page .lr-top__tel{
  font-size:.72rem;font-weight:600;letter-spacing:.12em;
  color:rgba(244,241,234,.86);text-decoration:none;white-space:nowrap;
}
.lr-lp-page .lr-top__tel:hover{color:var(--mint)}
.lr-lp-page .lr-btn--sm{padding:.72rem 1.35rem;font-size:.7rem;letter-spacing:.11em}
@media (max-width:640px){
  .lr-lp-page .lr-top__tel{display:none}
  .lr-lp-page .lr-top img{height:20px}
}

/* ---------------------------------------------------------------
   6. HERO
   Two Elementor child containers over a full bleed background.
   --------------------------------------------------------------- */
.lr-lp-page .lr-lp-hero{position:relative;isolation:isolate;overflow:hidden}
.lr-lp-page .lr-lp-hero::before{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:
    linear-gradient(96deg,rgba(22,48,41,.94) 0%,rgba(22,48,41,.86) 30%,rgba(22,48,41,.5) 62%,rgba(22,48,41,.24) 100%),
    linear-gradient(0deg,rgba(22,48,41,.6) 0%,rgba(22,48,41,.22) 42%,transparent 68%);
}
/* MEASURE, and why it is on the container rather than on an inner wrapper.
   Elementor only renders a .e-con-inner child on BOXED containers. On Full
   Width containers the children are direct, so any rule hung off
   "> .e-con-inner" matches nothing and the content runs to the viewport edge.
   Putting the measure in the container's own padding works either way: the
   background still bleeds because padding is inside the box. */
.lr-lp-page .lr-lp-hero,
.lr-lp-page .lr-lp-close,
.lr-lp-page #lr-close{
  padding-left:max(var(--gut), calc((100% - var(--max)) / 2 + var(--gut)));
  padding-right:max(var(--gut), calc((100% - var(--max)) / 2 + var(--gut)));
}
/* If a container is left Boxed, neutralise Elementor's inner so the container
   padding above stays the single source of the measure. */
.lr-lp-page .lr-lp-hero > .e-con-inner,
.lr-lp-page .lr-lp-close > .e-con-inner,
.lr-lp-page #lr-close > .e-con-inner{
  max-width:100%;width:100%;margin:0;padding-left:0;padding-right:0;
}
.lr-lp-page .lr-lp-hero > .e-con-inner{position:relative;z-index:1}
.lr-lp-page .lr-lp-hero__content,
.lr-lp-page .lr-lp-hero__form{position:relative;z-index:1}

.lr-lp-page .lr-hero__eyebrow{
  font-size:.7rem;font-weight:600;letter-spacing:.17em;text-transform:uppercase;
  color:var(--mint);margin:0 0 1rem;
}
.lr-lp-page .lr-lp-hero .lr-h1{color:var(--offwhite);max-width:15ch}
.lr-lp-page .lr-hero__deck{
  font-size:clamp(1.02rem,1.2vw,1.12rem);font-weight:300;line-height:1.62;
  color:rgba(244,241,234,.9);max-width:46ch;margin:1.3rem 0 0;
}
.lr-lp-page .lr-hero__pts{
  display:flex;flex-wrap:wrap;gap:0 1.5rem;margin:1.9rem 0 0;
  border-top:1px solid rgba(244,241,234,.26);padding-top:1rem;
}
.lr-lp-page .lr-hero__pts li{
  font-size:.68rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase;
  color:rgba(244,241,234,.88);
}
.lr-lp-page .lr-hero__pts li + li{padding-left:1.5rem;border-left:1px solid rgba(244,241,234,.26)}
.lr-lp-page .lr-hero__fit{
  font-size:.78rem;font-weight:300;color:rgba(244,241,234,.66);margin:1rem 0 0;max-width:44ch;
}
.lr-lp-page .lr-lp-hero__credit{
  /* aligned to the same measure as the container padding, not the viewport */
  position:absolute;bottom:14px;margin:0;z-index:2;
  right:max(var(--gut), calc((100% - var(--max)) / 2 + var(--gut)));
  font-size:.6rem;font-weight:500;letter-spacing:.13em;text-transform:uppercase;
  color:rgba(244,241,234,.6);
}

/* form panel */
.lr-lp-page .lr-lp-hero__form{
  background:var(--offwhite);
  border-top:3px solid var(--mint);
  padding:clamp(24px,2.4vw,34px) clamp(22px,2.2vw,32px) clamp(26px,2.4vw,34px);
}
.lr-lp-page .lr-lp-hero__form .lr-kicker{color:var(--copper-text);margin-bottom:.5rem}
.lr-lp-page .lr-lp-hero__form h2,
.lr-lp-page .lr-lp-hero__form .elementor-heading-title{
  font-family:var(--font);font-size:1.42rem;font-weight:600;letter-spacing:-.012em;
  line-height:1.22;color:var(--pine);margin:0 0 .5rem;
}
.lr-lp-page .lr-lp-hero__form p{font-size:.92rem;line-height:1.55;color:rgba(42,42,40,.82);margin:0 0 1.1rem}
/* Elementor gives each widget its own bottom margin. Collapse the stack. */
.lr-lp-page .lr-lp-hero__form .elementor-widget:not(:last-child){margin-bottom:0}
.lr-lp-page .lr-lp-hero__form .elementor-widget-container > :last-child{margin-bottom:0}

/* ---------------------------------------------------------------
   7. CREDIBILITY STRIP
   --------------------------------------------------------------- */
.lr-lp-page .lr-strip{background:var(--pine-dark);color:var(--offwhite)}
.lr-lp-page .lr-strip__in{
  display:grid;grid-template-columns:repeat(3,1fr);gap:0;
  padding-top:clamp(30px,3.2vw,46px);padding-bottom:clamp(30px,3.2vw,46px);
}
.lr-lp-page .lr-strip__i{padding:0 clamp(14px,2vw,30px)}
.lr-lp-page .lr-strip__i + .lr-strip__i{border-left:1px solid rgba(244,241,234,.2)}
.lr-lp-page .lr-strip__i:first-child{padding-left:0}
.lr-lp-page .lr-strip__i b{
  display:block;font-size:clamp(2.1rem,3.4vw,2.9rem);font-weight:200;
  letter-spacing:-.03em;line-height:1;color:var(--mint);
}
.lr-lp-page .lr-strip__i span{
  display:block;margin-top:.5rem;font-size:.68rem;font-weight:600;
  letter-spacing:.13em;text-transform:uppercase;color:rgba(244,241,234,.82);line-height:1.5;
}
.lr-lp-page .lr-strip__note{
  padding:0 0 clamp(30px,3.2vw,46px);margin:0;
  font-size:.72rem;font-weight:500;letter-spacing:.13em;text-transform:uppercase;
  color:rgba(244,241,234,.6);
}

/* ---------------------------------------------------------------
   8. PRE-MORTEM
   --------------------------------------------------------------- */
.lr-lp-page .lr-pre{background:var(--offwhite)}
.lr-lp-page .lr-pre__body{max-width:62ch;margin:1.4rem 0 0}
.lr-lp-page .lr-pre__body p{font-size:1.04rem;line-height:1.72}
.lr-lp-page .lr-pre__pull{
  margin:1.8rem 0 0;padding:1.3rem 0 0;border-top:1px solid var(--hair);
  max-width:56ch;font-size:1.06rem;font-weight:600;line-height:1.5;color:var(--pine);
}

/* ---------------------------------------------------------------
   9. VILLAIN
   --------------------------------------------------------------- */
.lr-lp-page .lr-villain{background:var(--pine);color:var(--offwhite)}
.lr-lp-page .lr-villain .lr-h2{color:var(--offwhite);max-width:20ch}
.lr-lp-page .lr-villain__grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,3vw,52px);margin:2.4rem 0 0;
}
.lr-lp-page .lr-villain__i{border-top:1px solid rgba(244,241,234,.26);padding-top:1.1rem}
.lr-lp-page .lr-villain__i h3{
  font-size:.7rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;
  color:var(--mint);margin:0 0 .6rem;
}
.lr-lp-page .lr-villain__i p{font-size:.98rem;line-height:1.62;color:rgba(244,241,234,.9);margin:0}

/* ---------------------------------------------------------------
   10. REFRAME AND CHECKPOINTS
   Each checkpoint is a full content width 21:9 photograph above a two
   column text grid, matching the Haworth build. Wide cinematic images
   rather than small ones beside text.
   --------------------------------------------------------------- */
.lr-lp-page .lr-reframe{background:var(--offwhite)}
.lr-lp-page .lr-reframe__lede{max-width:60ch;margin:1.4rem 0 0}
.lr-lp-page .lr-reframe__lede p{font-size:1.04rem;line-height:1.72}

.lr-lp-page .lr-cps{margin:clamp(40px,4.6vw,72px) 0 0}
.lr-lp-page .lr-cp{
  padding:clamp(40px,5vw,72px) 0;border-top:1px solid var(--hair);
}
.lr-lp-page .lr-cp:first-of-type{padding-top:0;border-top:0}

.lr-lp-page .lr-cp__figure{margin:0;padding-bottom:clamp(30px,3.6vw,50px)}
.lr-lp-page .lr-cp__figure .lr-fig{border-radius:var(--r-img)}
.lr-lp-page .lr-cp__figure img{width:100%;aspect-ratio:21/9;object-fit:cover;display:block}
.lr-lp-page .lr-cp__figure figcaption{
  padding-top:.8rem;margin:0;text-align:right;
  font-size:.66rem;font-weight:500;letter-spacing:.13em;text-transform:uppercase;color:var(--mint-text);
}

.lr-lp-page .lr-cp__grid{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:clamp(26px,4vw,64px);align-items:start;
}
.lr-lp-page .lr-cp__n{
  display:block;margin:0 0 .7rem;
  font-size:clamp(2.4rem,3.8vw,3.4rem);font-weight:200;line-height:.9;
  letter-spacing:-.03em;color:var(--mint-deep);
}
.lr-lp-page .lr-cp__q{
  font-size:clamp(1.3rem,2.1vw,1.85rem);font-weight:600;line-height:1.24;
  letter-spacing:-.014em;color:var(--pine);margin:0;
}
.lr-lp-page .lr-cp__body{font-size:1rem;line-height:1.68;color:rgba(42,42,40,.86);margin:0}
.lr-lp-page .lr-cp__list{margin:1.1rem 0 0}
.lr-lp-page .lr-cp__list li{
  position:relative;padding:0 0 .5rem 1.4rem;font-size:.96rem;line-height:1.6;color:rgba(42,42,40,.86);
}
.lr-lp-page .lr-cp__list li::before{
  content:"";position:absolute;left:0;top:.72em;width:9px;height:1px;background:var(--mint-deep);
}
.lr-lp-page .lr-cp__take{
  margin:1.3rem 0 0;padding:1rem 0 0;border-top:2px solid var(--mint);
  font-size:clamp(1rem,1.2vw,1.1rem);font-weight:600;line-height:1.48;color:var(--pine);
}
.lr-lp-page .lr-consequence{
  margin:clamp(38px,4.5vw,68px) 0 0;padding:clamp(26px,3vw,40px);
  background:#E9EFEC;border-left:3px solid var(--mint);
}
.lr-lp-page .lr-consequence p{font-size:1.06rem;line-height:1.7;max-width:64ch;margin:0;color:var(--ink)}
.lr-lp-page .lr-reframe__cta{margin:clamp(30px,3.4vw,48px) 0 0}

/* ---------------------------------------------------------------
   11. STATEMENT BANDS
   Band 1 carries a photograph. Band 2 is typographic on pine, which
   is deliberate and not a missing image.
   --------------------------------------------------------------- */
.lr-lp-page .lr-band{
  position:relative;isolation:isolate;overflow:hidden;
  display:flex;align-items:flex-end;
  min-height:clamp(340px,46vw,560px);
  background:var(--pine-dark);
}
.lr-lp-page .lr-band__bg{position:absolute;inset:0;z-index:-2}
.lr-lp-page .lr-band__bg img{width:100%;height:100%;object-fit:cover;object-position:center}
.lr-lp-page .lr-band::before{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:linear-gradient(180deg,rgba(22,48,41,.34) 0%,rgba(22,48,41,.58) 46%,rgba(22,48,41,.92) 100%);
}
.lr-lp-page .lr-band--panel{align-items:center}
.lr-lp-page .lr-band--panel .lr-consequence{
  background:none;border-left:0;padding:0;margin:0;max-width:60ch;
}
.lr-lp-page .lr-band--panel .lr-consequence p{
  font-size:clamp(1.04rem,1.35vw,1.22rem);line-height:1.62;color:rgba(244,241,234,.94);
}
.lr-lp-page .lr-band--panel .lr-reframe__cta{margin:clamp(24px,2.6vw,36px) 0 0}
.lr-lp-page .lr-band--flat{min-height:0}
.lr-lp-page .lr-band--flat::before{background:none}
.lr-lp-page .lr-band__in{
  position:relative;z-index:1;width:100%;
  padding-bottom:clamp(58px,5.4vw,76px);
  padding-top:clamp(44px,6vw,84px);padding-bottom:clamp(46px,5vw,68px);
}
.lr-lp-page .lr-band--flat .lr-band__in{padding-top:clamp(76px,8vw,120px);padding-bottom:clamp(76px,8vw,120px)}
.lr-lp-page .lr-band__quote{
  font-size:clamp(1.6rem,3vw,2.5rem);font-weight:200;line-height:1.16;letter-spacing:-.02em;
  color:var(--offwhite);max-width:26ch;margin:0;
}
.lr-lp-page .lr-band__quote em{font-style:normal;color:var(--mint);font-weight:300}
.lr-lp-page .lr-band__attr{
  /* Anchored bottom right, away from the quote. Sitting directly beneath a line
     of display type it reads as the attribution of that line, which is exactly
     the misreading Brandi flagged on the Loomis band. */
  position:absolute;right:0;bottom:0;margin:0;max-width:60%;
  font-size:.62rem;font-weight:600;letter-spacing:.13em;text-align:right;
  text-transform:uppercase;color:rgba(244,241,234,.72);
}

/* ---------------------------------------------------------------
   12. GUIDE
   --------------------------------------------------------------- */
.lr-lp-page .lr-guide{background:var(--offwhite)}
.lr-lp-page .lr-guide__grid{
  display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);
  gap:clamp(28px,4vw,64px);align-items:center;
}
.lr-lp-page .lr-guide__empathy{
  font-size:clamp(1.14rem,1.6vw,1.34rem);font-weight:300;line-height:1.5;
  color:var(--pine);max-width:34ch;margin:1.3rem 0 0;
}
.lr-lp-page .lr-guide__auth{margin:1.5rem 0 0;font-size:1rem;line-height:1.68;max-width:56ch}

/* ---------------------------------------------------------------
   13. PLAN
   --------------------------------------------------------------- */
.lr-lp-page .lr-plan{background:var(--pine-dark);color:var(--offwhite)}
.lr-lp-page .lr-plan .lr-h2{color:var(--offwhite)}
.lr-lp-page .lr-plan__grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
  gap:clamp(24px,3vw,52px);margin:2.6rem 0 0;
}
.lr-lp-page .lr-plan__list{margin:.9rem 0 0}
.lr-lp-page .lr-plan__list li{
  position:relative;padding:0 0 .5rem 1.4rem;
  font-size:.94rem;line-height:1.6;color:rgba(244,241,234,.86);
}
.lr-lp-page .lr-plan__list li::before{
  content:"";position:absolute;left:0;top:.72em;width:9px;height:1px;background:var(--mint);
}
.lr-lp-page .lr-plan__i{border-top:1px solid rgba(244,241,234,.26);padding-top:1.2rem}
.lr-lp-page .lr-plan__n{
  font-size:.72rem;font-weight:600;letter-spacing:.15em;color:var(--mint);margin:0 0 .7rem;
}
.lr-lp-page .lr-plan__i h3{font-size:1.08rem;font-weight:600;line-height:1.32;color:var(--offwhite);margin:0 0 .6rem}
.lr-lp-page .lr-plan__i p{font-size:.96rem;line-height:1.62;color:rgba(244,241,234,.86);margin:0}

/* ---------------------------------------------------------------
   14. PROOF
   --------------------------------------------------------------- */
.lr-lp-page .lr-proof{background:var(--offwhite)}
.lr-lp-page .lr-case{
  display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:clamp(28px,4vw,64px);align-items:center;margin:2.6rem 0 0;
}
.lr-lp-page .lr-case--flip .lr-case__media{order:2}
.lr-lp-page .lr-case__kicker{
  font-size:.66rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase;
  color:var(--mint-text);margin:0 0 .8rem;line-height:1.6;
}
.lr-lp-page .lr-case__pull{
  margin:1.2rem 0 0;padding:1rem 0 0;border-top:1px solid var(--hair);
  font-size:1.02rem;font-weight:600;line-height:1.5;color:var(--pine);
}
.lr-lp-page .lr-case__detail{margin:1rem 0 0;font-size:.94rem;line-height:1.62;color:rgba(42,42,40,.82)}

.lr-lp-page .lr-portfolio{margin:clamp(46px,5vw,80px) 0 0;border-top:1px solid var(--hair)}
.lr-lp-page .lr-project{
  display:grid;grid-template-columns:auto 1fr auto;gap:clamp(14px,2.4vw,36px);
  align-items:baseline;padding:1.05rem 0;border-bottom:1px solid var(--hair);
}
.lr-lp-page .lr-project__n{font-size:.66rem;font-weight:600;letter-spacing:.14em;color:var(--mint-text)}
.lr-lp-page .lr-project__name{font-size:clamp(1rem,1.4vw,1.22rem);font-weight:400;letter-spacing:-.014em;color:var(--pine)}
.lr-lp-page .lr-project__meta{
  font-size:.66rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;
  color:#5C645F;text-align:right;line-height:1.5;
}

/* ---------------------------------------------------------------
   15. SUCCESS
   --------------------------------------------------------------- */
.lr-lp-page .lr-success{background:var(--offwhite)}
.lr-lp-page .lr-success__types{
  display:flex;flex-wrap:wrap;gap:.55rem;margin:1.6rem 0 0;
}
.lr-lp-page .lr-success__types li{
  font-size:.7rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;
  color:var(--pine);border:1px solid rgba(33,74,62,.28);border-radius:var(--r-btn);
  padding:.5rem 1rem;
}
.lr-lp-page .lr-success__body{margin:2rem 0 0;max-width:60ch}
.lr-lp-page .lr-success__body p{font-size:1.06rem;line-height:1.72}
.lr-lp-page .lr-promise{
  margin:clamp(34px,4vw,58px) 0 0;padding:1.4rem 0 0;border-top:1px solid var(--hair);
  font-size:clamp(1.4rem,2.4vw,2rem);font-weight:200;letter-spacing:-.018em;
  color:var(--mint-deep);font-style:italic;
}

/* ---------------------------------------------------------------
   16. CLOSING
   Elementor container. The inner measure is set here rather than in
   the builder so the section cannot run edge to edge.
   --------------------------------------------------------------- */
.lr-lp-page .lr-lp-close,
.lr-lp-page #lr-close{background:var(--pine-dark);color:var(--offwhite)}
.lr-lp-page .lr-lp-close .lr-h2,
.lr-lp-page #lr-close .lr-h2{color:var(--offwhite);max-width:18ch}
.lr-lp-page .lr-lp-close .lr-deck,
.lr-lp-page #lr-close .lr-deck{color:rgba(244,241,234,.9)}
.lr-lp-page .lr-next{margin:2rem 0 0}
.lr-lp-page .lr-next h3{
  font-size:.7rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;
  color:var(--mint);margin:0 0 1rem;
}
.lr-lp-page .lr-next li{
  display:grid;grid-template-columns:auto 1fr;gap:0 1rem;
  padding:.85rem 0;border-top:1px solid rgba(244,241,234,.22);
}
.lr-lp-page .lr-next li span{font-size:.7rem;font-weight:600;letter-spacing:.12em;color:var(--mint)}
.lr-lp-page .lr-next li p{margin:0;font-size:.96rem;line-height:1.6;color:rgba(244,241,234,.88)}
.lr-lp-page .lr-close__panel{
  background:rgba(244,241,234,.06);
  border-top:3px solid var(--mint);
  padding:clamp(24px,2.4vw,34px) clamp(22px,2.2vw,32px);
}
.lr-lp-page .lr-close__panel .lr-kicker{color:var(--mint)}
.lr-lp-page .lr-close__panel h2,
.lr-lp-page .lr-close__panel .elementor-heading-title{
  font-family:var(--font);font-size:1.34rem;font-weight:600;letter-spacing:-.012em;
  line-height:1.24;color:var(--offwhite);margin:0 0 .5rem;
}
.lr-lp-page .lr-close__panel p{font-size:.92rem;line-height:1.55;color:rgba(244,241,234,.82);margin:0 0 1.1rem}
.lr-lp-page .lr-close__panel .elementor-widget:not(:last-child){margin-bottom:0}

/* ---------------------------------------------------------------
   17. FOOTER
   --------------------------------------------------------------- */
.lr-lp-page .lr-foot{background:var(--pine-dark);color:rgba(244,241,234,.7);border-top:1px solid rgba(244,241,234,.14)}
.lr-lp-page .lr-foot__in{
  display:flex;flex-wrap:wrap;gap:1.2rem 2.4rem;align-items:center;justify-content:space-between;
  padding-top:2rem;padding-bottom:1.2rem;
}
.lr-lp-page .lr-foot img{height:26px;width:auto}
.lr-lp-page .lr-foot__contact{display:flex;flex-wrap:wrap;gap:.4rem 1.6rem}
.lr-lp-page .lr-foot__contact a{
  font-size:.7rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;
  color:rgba(244,241,234,.78);text-decoration:none;
}
.lr-lp-page .lr-foot__contact a:hover{color:var(--mint)}
.lr-lp-page .lr-foot__note a{color:rgba(244,241,234,.72);text-decoration:underline}
.lr-lp-page .lr-foot__note a:hover{color:var(--mint)}
.lr-lp-page .lr-foot__note{
  padding-bottom:2rem;margin:0;font-size:.72rem;line-height:1.7;color:rgba(244,241,234,.52);max-width:88ch;
}

/* ==========================================================================
   18. GRAVITY FORMS
   Written to work on Legacy, 2.5 and Orbital, because the class on
   .gform_wrapper differs by version. Selectors therefore hang off
   .gform_wrapper alone. Orbital styles controls through custom
   properties AND prints an inline block at
     #gform_wrapper_7[data-form-index="0"].gform-theme { ... }
   which is an ID plus an attribute plus a class. Nothing written with
   classes can outrank that, so the custom property resets below carry
   !important. That wins on the cascade regardless of specificity.

   Rules are written twice on purpose: once scoped to .lr-lp-page and
   once off the panel classes alone, so they still apply if a form
   container ends up outside the page wrapper.
   ========================================================================== */

.lr-lp-page .gform_wrapper,
.lr-lp-hero__form .gform_wrapper,
.lr-close__panel .gform_wrapper{
  --gf-ctrl-radius:6px !important;
  --gf-ctrl-bg-color:#FFFFFF !important;
  --gf-ctrl-bg-color-hover:#FFFFFF !important;
  --gf-ctrl-bg-color-focus:#FFFFFF !important;
  --gf-ctrl-border-color:#CFC8BA !important;
  --gf-ctrl-border-color-hover:#3E8F80 !important;
  --gf-ctrl-border-color-focus:#3E8F80 !important;
  --gf-ctrl-color:#2A2A28 !important;
  --gf-ctrl-label-color-primary:#214A3E !important;
  --gf-ctrl-label-color-secondary:#5C645F !important;
  --gf-ctrl-desc-color:#5C645F !important;
  --gf-ctrl-btn-radius:999px !important;
  --gf-ctrl-btn-bg-color-primary:#5EB5A5 !important;
  --gf-ctrl-btn-bg-color-hover-primary:#3E8F80 !important;
  --gf-ctrl-btn-color-primary:#163029 !important;
  --gf-ctrl-btn-border-color-primary:#5EB5A5 !important;
  --gf-color-primary:#5EB5A5 !important;
  --gf-local-color:#2A2A28 !important;
  margin:0;
}
.lr-lp-page .gform_wrapper form,
.lr-lp-hero__form .gform_wrapper form,
.lr-close__panel .gform_wrapper form{margin:0}

.lr-lp-page .gform_wrapper .gform_fields,
.lr-lp-hero__form .gform_wrapper .gform_fields,
.lr-close__panel .gform_wrapper .gform_fields{row-gap:1.05rem !important}

/* One required marker per field is noise when nearly every field is required */
.lr-lp-page .gform_wrapper .gfield_required,
.lr-lp-page .gform_wrapper .gform_required_legend,
.lr-lp-hero__form .gform_wrapper .gfield_required,
.lr-lp-hero__form .gform_wrapper .gform_required_legend,
.lr-close__panel .gform_wrapper .gfield_required,
.lr-close__panel .gform_wrapper .gform_required_legend{display:none !important}

/* The honeypot renders as a visible field labelled Comments */
.lr-lp-page .gform_wrapper .gform_validation_container,
.lr-lp-hero__form .gform_wrapper .gform_validation_container,
.lr-close__panel .gform_wrapper .gform_validation_container{display:none !important}

/* Label text sits in a nested span, so the label alone is not enough */
.lr-lp-page .gform_wrapper .gfield_label,
.lr-lp-page .gform_wrapper legend.gfield_label,
.lr-lp-page .gform_wrapper .gform-field-label__text,
.lr-lp-hero__form .gform_wrapper .gfield_label,
.lr-lp-hero__form .gform_wrapper .gform-field-label__text,
.lr-close__panel .gform_wrapper .gfield_label,
.lr-close__panel .gform_wrapper .gform-field-label__text{
  font-family:var(--font,"Prompt",sans-serif) !important;
  font-size:.65rem !important;
  font-weight:600 !important;
  letter-spacing:.16em !important;
  text-transform:uppercase !important;
  line-height:1.35 !important;
  margin:0 0 .34rem !important;
}
.lr-lp-page .gform_wrapper .gfield_label,
.lr-lp-page .gform_wrapper .gform-field-label__text{color:#214A3E !important}

.lr-lp-page .gform_wrapper input[type="text"],
.lr-lp-page .gform_wrapper input[type="email"],
.lr-lp-page .gform_wrapper input[type="tel"],
.lr-lp-page .gform_wrapper select,
.lr-lp-page .gform_wrapper textarea,
.lr-lp-hero__form .gform_wrapper input[type="text"],
.lr-lp-hero__form .gform_wrapper input[type="email"],
.lr-lp-hero__form .gform_wrapper select,
.lr-close__panel .gform_wrapper input[type="text"],
.lr-close__panel .gform_wrapper input[type="email"],
.lr-close__panel .gform_wrapper select,
.lr-close__panel .gform_wrapper textarea{
  min-height:46px !important;
  padding:.68rem .78rem !important;
  border:1px solid #CFC8BA !important;
  border-radius:6px !important;
  background-color:#FFFFFF !important;   /* never the shorthand, see note below */
  color:#2A2A28 !important;
  font-family:var(--font,"Prompt",sans-serif) !important;
  font-size:.95rem !important;
  font-weight:300 !important;
  line-height:1.35;
  box-shadow:none !important;
}
/* Orbital draws the dropdown arrow from --gf-icon-ctrl-select as a
   background image. The background shorthand erases it, so selects set
   background-color only, and need an explicit line-height or the value
   sits low and clips its descenders. */
.lr-lp-page .gform_wrapper select,
.lr-lp-hero__form .gform_wrapper select,
.lr-close__panel .gform_wrapper select{
  line-height:1.25;padding-top:0 !important;padding-bottom:0 !important;
}
.lr-lp-page .gform_wrapper input:focus,
.lr-lp-page .gform_wrapper select:focus,
.lr-lp-page .gform_wrapper textarea:focus,
.lr-lp-hero__form .gform_wrapper input:focus,
.lr-close__panel .gform_wrapper input:focus{
  outline:2px solid #3E8F80 !important;outline-offset:1px;border-color:#3E8F80 !important;
}

/* The submit control is <button class="gform_button button">, not an input */
.lr-lp-page .gform_wrapper .gform_footer,
.lr-lp-page .gform_wrapper .gform-footer,
.lr-lp-hero__form .gform_wrapper .gform_footer,
.lr-close__panel .gform_wrapper .gform_footer{margin:1rem 0 0 !important;padding:0 !important}

.lr-lp-page .gform_wrapper .gform_button,
.lr-lp-page .gform_wrapper button.gform-button,
.lr-lp-page .gform_wrapper input[type="submit"],
.lr-lp-hero__form .gform_wrapper .gform_button,
.lr-lp-hero__form .gform_wrapper input[type="submit"],
.lr-close__panel .gform_wrapper .gform_button,
.lr-close__panel .gform_wrapper input[type="submit"]{
  display:inline-flex !important;align-items:center;justify-content:center;
  width:100% !important;min-height:54px !important;margin:0 !important;
  border:1px solid #5EB5A5 !important;border-radius:999px !important;
  background:#5EB5A5 !important;color:#163029 !important;
  font-family:var(--font,"Prompt",sans-serif) !important;
  font-size:.78rem !important;font-weight:600 !important;
  letter-spacing:.13em !important;text-transform:uppercase !important;
  cursor:pointer;
}
.lr-lp-page .gform_wrapper .gform_button:hover,
.lr-lp-page .gform_wrapper input[type="submit"]:hover,
.lr-lp-hero__form .gform_wrapper .gform_button:hover,
.lr-close__panel .gform_wrapper .gform_button:hover{
  background:#3E8F80 !important;border-color:#3E8F80 !important;color:#F4F1EA !important;
}

/* validation and confirmation, kept in the page's voice */
.lr-lp-page .gform_wrapper .gfield_description,
.lr-lp-page .gform_wrapper .validation_message,
.lr-lp-hero__form .gform_wrapper .validation_message,
.lr-close__panel .gform_wrapper .validation_message{
  font-family:var(--font,"Prompt",sans-serif) !important;
  font-size:.76rem !important;line-height:1.5 !important;
  color:#96592B !important;background:none !important;border:0 !important;
  padding:.2rem 0 0 !important;margin:0 !important;
}
.lr-lp-page .gform_wrapper .gform_validation_errors,
.lr-lp-hero__form .gform_wrapper .gform_validation_errors,
.lr-close__panel .gform_wrapper .gform_validation_errors{
  background:none !important;border:0 !important;box-shadow:none !important;
  padding:0 0 .6rem !important;margin:0 !important;
}
.lr-lp-page .gform_wrapper .gform_validation_errors h2{
  font-size:.8rem !important;font-weight:600 !important;color:#96592B !important;margin:0 !important;
}
.lr-lp-page .gform_confirmation_message,
.lr-lp-hero__form .gform_confirmation_message,
.lr-close__panel .gform_confirmation_message{
  font-family:var(--font,"Prompt",sans-serif) !important;
  font-size:.98rem !important;line-height:1.62 !important;color:#214A3E !important;
  background:none !important;border:0 !important;padding:0 !important;
}
/* the closing panel sits on pine, so its confirmation needs light type */
.lr-close__panel .gform_confirmation_message{color:#F4F1EA !important}
.lr-close__panel .gform_wrapper .gfield_label,
.lr-close__panel .gform_wrapper .gform-field-label__text{color:rgba(244,241,234,.9) !important}

/* ---------------------------------------------------------------
   19. RESPONSIVE
   --------------------------------------------------------------- */
@media (max-width:1080px){
  .lr-lp-page .lr-cp__grid{grid-template-columns:1fr;gap:1.4rem}
  .lr-lp-page .lr-guide__grid,
  .lr-lp-page .lr-case{grid-template-columns:1fr;gap:clamp(22px,4vw,34px)}
  .lr-lp-page .lr-case--flip .lr-case__media{order:0}
  .lr-lp-page .lr-villain__grid,
  .lr-lp-page .lr-plan__grid{grid-template-columns:1fr;gap:0}
  .lr-lp-page .lr-villain__i,
  .lr-lp-page .lr-plan__i{padding-top:1.1rem;margin-top:1.4rem}
  .lr-lp-page .lr-villain__i:first-child,
  .lr-lp-page .lr-plan__i:first-child{margin-top:0}
}
@media (max-width:760px){
  .lr-lp-page .lr-strip__in{grid-template-columns:1fr;gap:1.6rem}
  .lr-lp-page .lr-strip__i{padding:0}
  .lr-lp-page .lr-strip__i + .lr-strip__i{border-left:0;border-top:1px solid rgba(244,241,234,.2);padding-top:1.6rem}
  .lr-lp-page .lr-project{grid-template-columns:auto 1fr;gap:.3rem .9rem}
  .lr-lp-page .lr-project__meta{grid-column:2;text-align:left}
  .lr-lp-page .lr-hero__pts{gap:.5rem 1rem}
  .lr-lp-page .lr-hero__pts li + li{padding-left:1rem}
  .lr-lp-page .lr-band__in{padding-top:clamp(56px,12vw,80px);padding-bottom:clamp(56px,12vw,80px)}
  .lr-lp-page .lr-band__quote{max-width:20ch}
  .lr-lp-page .lr-lp-hero__credit{position:static;padding:10px var(--gut) 0;text-align:left}
  .lr-lp-page .lr-foot__in{flex-direction:column;align-items:flex-start;gap:1rem}
}
@media (prefers-reduced-motion:reduce){
  .lr-lp-page *{transition:none !important;animation:none !important}
}/* End custom CSS */