/* PLUS v29 — value creation / signature brush lettering.
   Scoped to new v29 markup; v28 forms/cart/product styles untouched. */
.plus-v29-value{background:#fbfcf8;border-top:1px solid #e7ebdf;border-bottom:1px solid #e7ebdf;padding-block:clamp(58px,7vw,100px)}
.plus-v29-value-heading{text-align:center;max-width:780px;margin:0 auto 32px}
.plus-v29-value-heading .eyebrow{display:inline-block;margin-bottom:16px;color:#69816a}
.plus-v29-value-heading h2{font-family:var(--luxe-serif,serif);font-size:clamp(28px,3.1vw,43px);line-height:1.55;letter-spacing:.06em;color:#294733;margin:0 0 14px}
.plus-v29-value-heading p{font-size:14px;line-height:2.1;max-width:710px;margin:auto;color:#516655}
.plus-v29-value-flow{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:11px}
.plus-v29-value-flow li{position:relative;background:#fff;border:1px solid #e3e8dd;border-radius:8px;padding:24px 15px 23px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:9px;box-shadow:0 8px 20px rgba(36,63,41,.025)}
.plus-v29-value-flow li:not(:last-child):after{content:'→';position:absolute;right:-13px;top:33%;z-index:2;font-size:19px;color:#9aa997}
.plus-v29-value-flow b{font:700 12px/1.2 Arial,sans-serif;letter-spacing:.12em;color:#a38d6c}
.plus-v29-value-flow strong{font-family:var(--luxe-serif,serif);font-size:clamp(17px,1.6vw,22px);color:#29503a}
.plus-v29-value-flow span{font-size:11px;line-height:1.9;color:#607063}
.plus-v29-value-end{display:flex;justify-content:space-between;align-items:center;gap:15px;max-width:1040px;margin:26px auto 0;font-size:11px;letter-spacing:.1em;color:#899788}
.plus-v29-value-end a{color:#41634b;font-weight:700;text-decoration:underline;text-underline-offset:5px;font-size:12px;letter-spacing:normal}
.plus-v29-partner-promise{background:#f2f6f0}
.plus-v29-promise-grid,.plus-v29-pov-inner{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(24px,5vw,78px);align-items:center}
.plus-v29-promise-grid h2,.plus-v29-pov-inner h2{font-family:var(--luxe-serif,serif);font-size:clamp(26px,3vw,39px);line-height:1.65;color:#29503a;margin:12px 0 17px}
.plus-v29-promise-note{font-size:12px;color:#7c8d7d;line-height:1.9}
.plus-v29-promise-text p,.plus-v29-pov-inner p{font-size:14px;line-height:2.15;color:#4d6455;margin:0 0 16px}
.plus-v29-business-pov{background:#f2f6f0}
/* Brush writing: text stays centered and never translates. Each glyph is unveiled
   by an ink-like tapered wipe; a glint suggests the brush tip tracing it. */
.plus-v29-hero .plus-v29-brush-title{position:relative}
.plus-v29-brush-line{display:block;white-space:nowrap;font-style:normal}
.plus-v29-brush-title .plus-v29-ink-glyph{display:inline-block;position:relative;white-space:pre;vertical-align:baseline;opacity:1}
@keyframes plus-v29-ink-stroke{0%{clip-path:polygon(0 0,0 0,0 100%,0 100%);opacity:.03;filter:blur(1.8px)}18%{opacity:.83}60%{opacity:1}100%{clip-path:polygon(0 0,100% 0,100% 100%,0 100%);filter:blur(0);opacity:1}}
@keyframes plus-v29-ink-tip{0%{left:-6%;opacity:0;transform:translateY(.12em) rotate(36deg) scale(.65)}20%{opacity:.72}75%{opacity:.5}100%{left:106%;opacity:0;transform:translateY(-.14em) rotate(15deg) scale(.9)}}
.plus-v29-brush-title.plus-v29-ink-playing .plus-v29-ink-glyph{
  animation:plus-v29-ink-stroke 520ms cubic-bezier(.19,.66,.59,1) both;
  animation-delay:var(--ink-delay);
}
.plus-v29-brush-title.plus-v29-ink-playing .plus-v29-ink-glyph::after{
 content:'';pointer-events:none;position:absolute;left:-6%;top:45%;width:.13em;height:.36em;border-radius:90% 12% 55% 20%;
 background:linear-gradient(120deg,rgba(24,52,38,.94),rgba(85,108,69,.35));
 filter:blur(.45px);opacity:0;transform-origin:center;
 animation:plus-v29-ink-tip 520ms linear both;animation-delay:var(--ink-delay)
}
.plus-v29-brush-title.plus-v29-ink-finished .plus-v29-ink-glyph{animation:none;clip-path:none;opacity:1;filter:none}
.plus-v29-brush-title.plus-v29-ink-finished .plus-v29-ink-glyph::after{display:none}
@media(max-width:950px){.plus-v29-value-flow{grid-template-columns:repeat(3,minmax(0,1fr))}.plus-v29-value-flow li:nth-child(3):after{content:''}.plus-v29-value-flow li:nth-child(4):after{content:'→'}}
@media(max-width:650px){
 .plus-v29-value-heading h2{font-size:27px}
 .plus-v29-value-heading p{font-size:12px}
 .plus-v29-value-flow{grid-template-columns:1fr;gap:8px;max-width:410px;margin:auto}
 .plus-v29-value-flow li{padding:14px 17px;display:grid;grid-template-columns:36px 1fr;gap:3px 12px;text-align:left;align-items:center}
 .plus-v29-value-flow b{grid-row:1/3;font-size:12px;text-align:center}
 .plus-v29-value-flow strong{font-size:19px}
 .plus-v29-value-flow span{font-size:11px}
 .plus-v29-value-flow li:after,.plus-v29-value-flow li:not(:last-child):after{content:''}
 .plus-v29-value-end{flex-direction:column;align-items:center;text-align:center}
 .plus-v29-promise-grid,.plus-v29-pov-inner{grid-template-columns:1fr}
 .plus-v29-promise-grid h2,.plus-v29-pov-inner h2{font-size:27px}
 .plus-v29-promise-text p,.plus-v29-pov-inner p{font-size:12px}
 .plus-v27-hero .plus-v26-hero-lead{font-size:11.6px;line-height:2.05}
}
@media(prefers-reduced-motion:reduce){
 .plus-v29-brush-title.plus-v29-ink-playing .plus-v29-ink-glyph{animation:none;clip-path:none;opacity:1;filter:none}
 .plus-v29-brush-title.plus-v29-ink-playing .plus-v29-ink-glyph::after{animation:none;display:none}
}

/* Tiny brush nib visibly travels along the line; text itself remains stationary. */
.plus-v29-brush-cursor{position:absolute;z-index:2;left:0;top:0;display:block;width:24px;height:45px;pointer-events:none;opacity:0;visibility:hidden;transform:translate(-50%,-78%) rotate(-28deg);filter:drop-shadow(0 2px 2px rgba(36,47,32,.15));transition:none!important}
.plus-v29-brush-cursor svg{display:block;width:100%;height:100%;overflow:visible}
@media(max-width:650px){.plus-v29-brush-cursor{width:17px;height:31px;filter:none}}
@media(prefers-reduced-motion:reduce){.plus-v29-brush-cursor{display:none}}
