.heart-gallery{color:#202020;margin:120px 0 0;scroll-margin-top:12px}.heart-gallery-stage{--heart-label-height:3.25rem;--heart-label-gap:6px;--heart-focus-top:calc(100px + var(--heart-label-height) + var(--heart-label-gap));--heart-focus-bottom:84px;isolation:isolate;background:#fafafa;height:min(880px,88svh);min-height:560px;position:relative;overflow:hidden;container-type:size}.heart-gallery-stage:before{content:"";pointer-events:none;transform-origin:top;background:url(/models/heart-floor-grid.svg);width:280%;height:180%;position:absolute;top:30%;left:-90%;transform:perspective(700px)rotateX(62deg)rotate(-30deg);-webkit-mask-image:linear-gradient(#0000,#000 28% 80%,#0000);mask-image:linear-gradient(#0000,#000 28% 80%,#0000)}.heart-gallery-stage[data-enhanced=true]:before{display:none}.heart-gallery-stack{perspective:1800px;position:absolute;inset:0}.heart-gallery-stack[hidden]{display:none}.heart-gallery-canvas{opacity:0;pointer-events:none;touch-action:pan-y;cursor:grab;width:100%;height:100%;display:block;position:absolute;inset:0}.heart-gallery-stage[data-enhanced=true] .heart-gallery-canvas{opacity:1;pointer-events:auto}.heart-gallery-canvas:focus-visible{outline-offset:-4px;outline:2px solid #777}.heart-gallery-card{color:#2b3334;width:clamp(240px,43vw,420px);font:inherit;text-align:left;cursor:pointer;transform:translate(-50%, -50%) translate(calc(var(--distance) * 90px), calc(var(--distance) * -44px)) rotateX(-18deg) rotateY(-30deg);background:0 0;border:0;padding:0;transition:transform .65s cubic-bezier(.16,1,.3,1),opacity .5s;position:absolute;top:50%;left:50%}.heart-gallery-card img{width:100%;height:auto;display:block}:is(.heart-gallery-card:hover,.heart-gallery-card:focus-visible){transform:translate(-50%, -50%) translate(calc(var(--distance) * 90px + 72px), calc(var(--distance) * -44px + 14px)) rotateX(-18deg) rotateY(-30deg)}.heart-gallery-floating-label{z-index:3;transform-origin:0 0;pointer-events:none;font-family:var(--font-portfolio);font-synthesis:none;color:#292929;transition:opacity .18s;display:none;position:absolute;top:0;left:0}.heart-gallery-floating-title{font-family:var(--font-portfolio);letter-spacing:-.01em;align-items:baseline;gap:.45em;font-size:.875rem;font-weight:400;line-height:1.2;display:flex}.heart-gallery-floating-meta{letter-spacing:.015em;color:#68727a;font-size:.75rem;font-weight:400;line-height:1.35}.heart-gallery-stage[data-enhanced=true] .heart-gallery-floating-label{opacity:0;display:flex}.heart-gallery-stage[data-enhanced=true] .heart-gallery-floating-label[data-visible=true]{opacity:1}.heart-gallery-card:focus-visible{outline-offset:3px;outline:2px solid #222}.heart-gallery-stack[data-selected=true] .heart-gallery-card{transform:translate(-50%, calc(-50% + (var(--heart-focus-top) - var(--heart-focus-bottom)) / 2));width:min(76cqw, calc((100cqh - var(--heart-focus-top) - var(--heart-focus-bottom)) * var(--artwork-ratio)))}.heart-gallery-caption,.heart-gallery-controls{z-index:4;align-items:center;gap:16px;display:flex;position:absolute;bottom:26px}.heart-gallery-caption{font-size:13px;font-weight:400;left:30px}.heart-gallery-caption[hidden]{display:none}.heart-gallery-caption>span:first-child{color:#686868;font-variant-numeric:tabular-nums}.heart-gallery-controls{gap:3px;right:24px}.heart-gallery-controls button{color:#272727;min-width:44px;min-height:44px;font:inherit;cursor:pointer;background:#fafafae8;border:1px solid #d4d4d4;border-radius:4px;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-size:14px;transition:background .2s;display:inline-flex}.heart-gallery-controls button:hover{background:#eaeaea}.heart-gallery-controls button:focus-visible{outline-offset:3px;outline:2px solid #222}.heart-gallery-footnote{color:#777;letter-spacing:.03em;justify-content:space-between;gap:20px;padding-top:14px;font-size:12px;display:flex}@media (max-width:640px){.heart-gallery{margin-top:72px}.heart-gallery-stage{--heart-focus-top:calc(88px + var(--heart-label-height) + var(--heart-label-gap));--heart-focus-bottom:118px;height:82svh;min-height:560px}.heart-gallery-card{width:270px}.heart-gallery-caption{gap:12px;font-size:12px;bottom:78px;left:20px;right:20px}.heart-gallery-controls{bottom:18px;left:18px;right:auto}.heart-gallery-footnote{flex-wrap:wrap;gap:8px}}@media (prefers-reduced-motion:reduce){.heart-gallery-card,.heart-gallery-floating-label{transition:none}}.heart-gallery-floating-label,.heart-gallery-card-label{min-height:var(--heart-label-height);text-align:left;font-family:var(--font-portfolio);font-synthesis:none;color:#484848;pointer-events:none;justify-content:center;align-items:center}.heart-gallery-card-label{bottom:calc(100% + var(--heart-label-gap));width:100%;display:flex;position:absolute;left:0}.heart-gallery-label-shell{white-space:nowrap;width:max-content;min-height:var(--heart-label-height);-webkit-backdrop-filter:blur(5px)saturate(112%);backdrop-filter:blur(5px)saturate(112%);background:linear-gradient(120deg,#fff3,#f8f8f808 44%,#ebebeb17) padding-box padding-box;border:1px solid #0000;border-radius:15px;flex:none;align-items:center;gap:.25rem;padding:.1875rem .625rem .1875rem .375rem;display:inline-flex;position:relative;box-shadow:inset 0 1px 1px #ffffffb8,inset 0 -1px 1px #a6a6a61f,0 3px 5px -4px #73737338,0 9px 20px -14px #56565633}.heart-gallery-label-shell:before{content:"";border-radius:inherit;-webkit-mask-composite:xor;pointer-events:none;background:linear-gradient(125deg,#ffffffeb 5%,#c7c7c757 26%,#ffffff1f 45%,#ffffffdb 66%,#b9b9b94d 85%,#ffffffa6);padding:1px;position:absolute;inset:-1px;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.heart-gallery-label-shell:after{content:"";pointer-events:none;border:1px solid #ffffff38;border-radius:12px;position:absolute;inset:2px}.heart-gallery-study-info{text-shadow:0 1px #ffffffe6,0 2px 4px #4b4b4b1a;flex-flow:row;align-items:baseline;gap:.5rem;min-width:0;padding-right:.125rem;display:flex;position:relative}.heart-gallery-study-info .heart-gallery-floating-title{letter-spacing:-.02em;flex:none;gap:.375rem;font-size:.75rem;font-weight:500;line-height:1.1}.heart-gallery-study-info .heart-gallery-floating-meta{font-family:var(--font-portfolio);letter-spacing:.035em;text-transform:uppercase;color:#616161;flex:none;font-size:.6875rem;font-style:normal;font-weight:500;line-height:1.35}.heart-gallery-study-view{color:#727272;letter-spacing:.025em;text-transform:uppercase;border-left:1px solid #5a5a5a33;flex:none;padding-left:.5rem;font-size:.6875rem;font-weight:500;line-height:1.2}.heart-gallery-angle-model{flex:0 0 2.75rem;width:2.75rem;height:2.75rem;display:block;position:relative}.heart-gallery-angle-model canvas,.heart-gallery-angle-fallback{width:100%;height:100%;display:block;position:absolute;inset:0}.heart-gallery-angle-model canvas{opacity:0}.heart-gallery-angle-model[data-ready=true] canvas{opacity:1}.heart-gallery-angle-model[data-ready=true] .heart-gallery-angle-fallback{visibility:hidden}.heart-gallery-angle-fallback{transform:perspective(120px) rotateX(var(--heart-view-x)) rotateY(var(--heart-view-y));background:url(/models/heart-angle-fallback.svg) 50%/contain no-repeat}.heart-gallery-study-number{white-space:nowrap;font-family:var(--font-portfolio);font-variant-numeric:tabular-nums;letter-spacing:-.015em;color:#616161;flex-shrink:0;font-size:.75rem;font-style:normal;font-weight:500;line-height:1.2}@media (max-width:640px){.heart-gallery-label-shell{padding-right:.5rem}}@media (max-width:420px){.heart-gallery-label-shell{gap:.125rem;padding-inline:.25rem .375rem}.heart-gallery-study-info{gap:.3125rem;padding-right:0}.heart-gallery-study-info .heart-gallery-floating-title{gap:.25rem;font-size:.75rem}.heart-gallery-study-number{font-size:.75rem}.heart-gallery-study-info .heart-gallery-floating-meta{letter-spacing:0}.heart-gallery-study-view{letter-spacing:0;padding-left:.3125rem}}.heart-screening{scroll-margin-top:5rem}.heart-screening-loop{border-block:1px solid var(--heart-case-rule);justify-content:space-between;align-items:center;gap:.75rem;max-width:46rem;margin:0 auto 3rem;padding-block:1.125rem;font-size:.9375rem;display:flex}.heart-screening-loop svg{color:var(--heart-case-muted);flex-shrink:0}.heart-screening-stage+.heart-screening-stage{margin-top:clamp(3rem,6vw,5rem)}.heart-screening-stage-heading{grid-template-columns:2rem minmax(0,1fr) minmax(0,1fr);align-items:start;gap:1rem;margin-bottom:1.5rem;display:grid}.heart-screening-stage-number{color:var(--heart-case-muted);padding-top:.25rem;font-size:.8125rem}.heart-screening-stage-heading h4{margin:0;font-size:clamp(1.25rem,2.1vw,1.75rem);font-weight:700;line-height:1.4}.heart-lora-case .heart-screening-stage-heading p{color:var(--case-body)}.portfolio-editorial .heart-screening-stage .heart-gallery--embedded{margin-top:0}.heart-screening-standards{grid-template-columns:repeat(5,minmax(0,1fr));gap:1.5rem;max-width:46rem;margin:2rem auto;display:grid}.heart-screening-standards img{aspect-ratio:1;object-fit:contain;border-radius:var(--heart-case-image-radius);background:#fff}.heart-lora-case .heart-screening-standards figcaption{justify-content:center;font-size:.8125rem}.heart-screening-live{background:#edf1f5;border:1px solid #dce3ec;border-radius:18px;width:100%;height:800px;display:block;box-shadow:0 12px 36px -24px #33455c38}.heart-training-overview>a,.heart-training-record-pair a{border:1px solid var(--heart-case-rule);border-radius:var(--heart-case-image-radius);display:block;overflow:hidden}.heart-screening figcaption a{color:inherit;text-underline-offset:.3em;flex-shrink:0;align-items:center;gap:.25rem;display:inline-flex}.heart-training-change{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2rem;margin:2.5rem 0 1.5rem;display:grid}.heart-training-change h5{margin:0;font-size:1.125rem;font-weight:600;line-height:1.5}.heart-lora-case .heart-training-change p{color:var(--case-body)}.heart-training-record-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;display:grid}.heart-lora-case .heart-training-record-pair figure>p{color:var(--heart-case-muted);margin-top:.5rem;font-size:.8125rem}.heart-screening-reference-links{flex-wrap:wrap;gap:1rem 2rem;padding-block:1.5rem;display:flex}.heart-screening-reference-links a{color:var(--heart-case-muted);text-underline-offset:.3em;font-size:.875rem}@media (max-width:640px){.heart-screening-loop{gap:.3rem;margin-bottom:2rem;font-size:.75rem}.heart-screening-loop svg{width:12px}.heart-screening-stage-heading{grid-template-columns:1.75rem minmax(0,1fr);gap:.5rem}.heart-screening-stage-heading p{grid-column:2}.heart-screening-standards{gap:.5rem;margin-block:1.5rem}.heart-training-change,.heart-training-record-pair{grid-template-columns:minmax(0,1fr);gap:1rem}.heart-training-record-pair{gap:2rem}.heart-screening figcaption{flex-wrap:wrap;gap:.5rem}.heart-screening-interface figcaption{flex-direction:column;align-items:flex-start}}.rolling-text{vertical-align:middle;display:inline-flex;position:relative}.rolling-text>.rolling-text-label{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.rolling-text>.rolling-text-visual{white-space:nowrap;line-height:var(--rolling-line-height,1.2);letter-spacing:0;display:inline-flex}.rolling-text-visual>.rolling-text-character{line-height:inherit;letter-spacing:0;flex:none;margin-inline-end:var(--rolling-letter-spacing,0em);display:block;position:relative;overflow:hidden}.rolling-text-visual>.rolling-text-character:last-child{margin-inline-end:0}.rolling-text-character>.rolling-text-top,.rolling-text-character>.rolling-text-copy{transition:transform .6s cubic-bezier(.87,0,.13,1);transition-delay:calc(var(--character-index) * 28ms);display:block;transform:translateY(0)}.rolling-text-character>.rolling-text-copy{-webkit-user-select:none;user-select:none;position:absolute;top:100%;left:0}:is(.rolling-text-trigger:focus-visible .rolling-text-top,.rolling-text-trigger:focus-visible .rolling-text-copy){transform:translateY(-100%)}@media (hover:hover) and (pointer:fine){.rolling-text-trigger:hover .rolling-text-top,.rolling-text-trigger:hover .rolling-text-copy{transform:translateY(-100%)}}@media (prefers-reduced-motion:reduce){.rolling-text-character>.rolling-text-top,.rolling-text-character>.rolling-text-copy{transition:none}.rolling-text-trigger:is(:hover,:focus-visible) .rolling-text-top,.rolling-text-trigger:is(:hover,:focus-visible) .rolling-text-copy{transform:none}}.heart-lora-case{color:var(--editorial-ink,#191c1e);--heart-case-muted:var(--editorial-muted,#656d72);--heart-case-rule:var(--editorial-rule,#ccd0d1);--heart-case-image-radius:12px;margin-top:clamp(4rem,7vw,7rem);scroll-margin-top:2rem}.heart-lora-case *{box-sizing:border-box}.heart-lora-case figure{margin:0}.heart-lora-case p{margin:0;font-size:.9375rem;line-height:1.65}.heart-lora-case :is(h2,h3,h4,h5){text-wrap:balance}.heart-lora-case img{width:100%;height:auto;display:block}.heart-case-image{border-radius:var(--heart-case-image-radius);clip-path:inset(0 round var(--heart-case-image-radius))}.heart-case-motion{background:#fff;position:relative;overflow:hidden}.heart-case-motion video{width:100%;height:auto;display:block}.heart-case-motion[data-motion=heart-turntable] video{transform-origin:50%;transform:scale(1.06)}.heart-case-motion-project{position:absolute;inset:0}.heart-case-motion-project:focus-visible{outline-offset:-4px;outline:2px solid}.heart-case-brand-motion,.heart-case-training-process{grid-template-columns:1.2fr 1fr;align-items:center;gap:clamp(1.5rem,3vw,3rem);margin-bottom:2rem;display:grid}.heart-case-brand-motion>*,.heart-case-training-process>*{min-width:0}:is(.heart-lora-case a:focus-visible,.heart-lora-case summary:focus-visible){outline-offset:5px;outline:2px solid}.heart-case-header{border-top:1px solid var(--heart-case-rule);padding-top:1rem}.heart-case-title-row{grid-template-columns:1fr 2fr;align-items:end;gap:2rem;margin-top:clamp(2rem,4vw,3.5rem);display:grid}.heart-case-brand{align-items:center;gap:1rem;padding-bottom:.5rem;display:flex}.heart-case-brand img{object-fit:contain;width:3.5rem;height:3.5rem}.heart-case-brand span{color:var(--heart-case-muted);font-size:.875rem;line-height:1.5}.heart-case-title-row h2{letter-spacing:-.045em;margin:0;font-size:clamp(3rem,6.5vw,6rem);font-weight:700;line-height:1.02}.heart-case-title-row h2>span{letter-spacing:-.045em;margin-top:.875rem;font-size:.52em;font-weight:500;line-height:1;display:block}.heart-case-intro{grid-template-columns:1fr 2fr;gap:2rem;margin-top:2.5rem;display:grid}.heart-case-intro dl{margin:0;padding-right:2rem;font-size:.8125rem;line-height:1.6}.heart-case-intro dl>div+div{margin-top:1.125rem}.heart-case-intro dt{color:var(--heart-case-muted);margin-bottom:.25rem}.heart-case-intro dd{max-width:20em;margin:0}.heart-case-intro h3{letter-spacing:-.025em;margin:0 0 .625rem;font-size:clamp(1.5rem,2.4vw,2rem);font-weight:700;line-height:1.2}.heart-case-intro p{max-width:43rem}.heart-case-intro p+p{color:var(--heart-case-muted);margin-top:.625rem}.heart-case-index{border-block:1px solid var(--heart-case-rule);grid-template-columns:repeat(3,minmax(0,1fr));margin-top:2rem;display:grid}.heart-case-index a{min-height:3.5rem;color:inherit;justify-content:space-between;align-items:center;gap:1rem;padding:.875rem 1.25rem;font-size:.8125rem;font-weight:500;text-decoration:none;display:flex}.heart-case-index a:first-child{padding-left:0}.heart-case-index a+a{border-left:1px solid var(--heart-case-rule)}.heart-case-index a:hover{color:#bd2525}.heart-case-index-label{display:block}.heart-case-index-label strong{font-size:.9375rem;font-weight:600;display:block}.heart-case-index-label small{color:var(--heart-case-muted);margin-top:.25rem;font-size:.75rem;font-weight:400;display:block}.heart-case-chapter{border-top:1px solid var(--heart-case-rule);margin-top:clamp(3.5rem,6vw,5.5rem);padding-top:1.25rem;scroll-margin-top:2rem}.heart-case-chapter-head,.heart-case-workflow-intro{grid-template-columns:minmax(7rem,1fr) minmax(0,4fr);align-items:start;gap:2rem;margin-bottom:1.75rem;display:grid}.heart-case-eyebrow{letter-spacing:.01em;color:var(--heart-case-muted);font-size:.75rem;font-weight:500;line-height:1.45;display:block}.heart-case-chapter-head>.heart-case-eyebrow{color:var(--editorial-ink,#191c1e);padding-top:.375rem}.heart-case-chapter-head h3{letter-spacing:-.035em;margin:0 0 .75rem;font-size:clamp(2rem,3.8vw,3.5rem);font-weight:700;line-height:1.14}.heart-case-chapter-head p{color:var(--heart-case-muted);max-width:43rem}.heart-case-challenge-head{margin-bottom:clamp(1.75rem,3vw,2.75rem)}.heart-case-challenge-head .heart-case-challenge-lead{max-width:36em;color:var(--editorial-ink,#191c1e);letter-spacing:-.02em;font-size:clamp(1.125rem,2vw,1.625rem);font-weight:400;line-height:1.6}.heart-case-challenges{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.25rem,3vw,3rem);margin:0;padding:0;list-style:none;display:grid}.heart-case-challenges li{border-top:1px solid var(--heart-case-rule);min-width:0;padding-top:1.25rem}.heart-case-challenges h4{margin:0 0 .5rem;font-size:clamp(1.125rem,1.6vw,1.375rem);font-weight:600;line-height:1.45}.heart-case-challenges p{color:var(--heart-case-muted);line-height:1.8}.heart-case-challenges .heart-case-challenge-takeaway{color:var(--editorial-ink,#191c1e);margin-bottom:.75rem;font-weight:500}.heart-case-model-choice{border-block:1px solid var(--heart-case-rule);grid-template-columns:minmax(7rem,1fr) minmax(0,4fr);gap:2rem;margin-top:clamp(2rem,4vw,3.5rem);padding-block:1.5rem;display:grid}.heart-case-model-choice h4,.heart-case-guidelines-head h4{margin:0 0 .875rem;font-size:clamp(1.375rem,2.2vw,1.875rem);font-weight:600;line-height:1.4}.heart-case-model-choice p{max-width:46rem;color:var(--heart-case-muted);line-height:1.8}.heart-case-model-choice p+p{margin-top:.75rem}.heart-case-heading-phrase{display:inline-block}.heart-case-reading-flow{flex-wrap:wrap;align-items:center;gap:.6rem;margin-block:1.125rem;font-size:.875rem;font-weight:500;display:flex}.heart-case-reading-flow>svg{color:var(--heart-case-muted);flex-shrink:0;transform:rotate(45deg)}.heart-case-reading-flow>.crayon-circle{padding-bottom:calc(.25rem + 2px)}.heart-case-model-choice .heart-case-choice-note{font-size:.8125rem}.heart-case-next-step{color:inherit;align-items:center;gap:.75rem;margin-top:1rem;font-size:.875rem;font-weight:500;text-decoration:none;display:inline-flex}.heart-case-next-step svg{transition:transform .18s}.heart-case-next-step:hover svg{transform:translateY(3px)}.heart-case-guideline-list{margin:0;padding:0;list-style:none}.heart-case-guideline-list li{color:var(--heart-case-muted);align-items:baseline;gap:1rem;padding-block:.35rem;font-size:.9375rem;line-height:1.65;display:flex}.heart-case-guideline-list strong{color:var(--editorial-ink,#191c1e);flex-shrink:0;font-weight:500}.heart-case-model-choice .heart-case-eyebrow>span,.heart-case-guidelines-head .heart-case-eyebrow>span{margin-top:.25rem;display:block}.heart-case-guidelines-head{margin-top:clamp(2.5rem,5vw,4.5rem)}.heart-case-guidelines-strip{min-width:0;scroll-margin-top:2rem}.heart-case-guidelines-toolbar{color:var(--heart-case-muted);justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;font-size:.875rem;display:flex}.heart-case-guidelines-scroll-hint{flex-shrink:0;align-items:center;gap:.5rem;display:inline-flex}.heart-case-guidelines-viewport{overscroll-behavior-x:contain;scroll-snap-type:x proximity;touch-action:auto;cursor:grab;scrollbar-width:thin;scrollbar-color:var(--heart-case-rule) transparent;overflow-x:auto}.heart-case-guidelines-viewport:focus-visible{outline-offset:5px;outline:2px solid}.heart-case-guidelines-viewport[data-dragging=true]{cursor:grabbing;scroll-snap-type:none;-webkit-user-select:none;user-select:none}.heart-case-guidelines-viewport::-webkit-scrollbar{height:5px}.heart-case-guidelines-viewport::-webkit-scrollbar-thumb{background:var(--heart-case-rule);border-radius:999px}.heart-case-brand-boards{gap:1rem;margin:0;padding:0 0 .875rem;list-style:none;display:flex}.heart-case-guideline-slide{scroll-snap-align:start;flex:0 0 76%;min-width:0}.heart-case-guideline-slide .heart-case-image{aspect-ratio:16/9;object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;background:#fff}.heart-lora-case figcaption{color:var(--heart-case-muted);justify-content:space-between;gap:.75rem;margin-top:.5rem;font-size:.75rem;line-height:1.45;display:flex}.heart-case-brand-boards figcaption>span:first-child,.heart-case-base-forms figcaption>span:first-child,.heart-case-workflow figcaption>span:first-child{color:var(--editorial-ink,#191c1e);font-weight:500}.heart-case-principles{grid-template-columns:minmax(0,1fr);gap:1.5rem;display:grid}.heart-case-principles>div{border-top:1px solid var(--heart-case-rule);padding-top:.75rem}.heart-case-principles span{letter-spacing:-.02em;margin-bottom:.375rem;font-size:1.25rem;font-weight:700;line-height:1.3;display:block}.heart-case-principles p{color:var(--heart-case-muted)}.heart-case-base-forms{padding-top:.25rem}.heart-case-base-forms>img{background:0 0}.heart-case-training-process{--training-column-gap:clamp(1rem, 2.4vw, 2.5rem);align-items:start;gap:var(--training-column-gap);grid-template-columns:repeat(3,minmax(0,1fr))}.heart-case-training-process>figure{border-top:1px solid var(--heart-case-rule);padding-top:.75rem}.heart-case-training-process figcaption{flex-wrap:wrap;gap:.25rem .75rem}.heart-case-training-steps{gap:1.5rem var(--training-column-gap);grid-column:span 2;grid-template-rows:repeat(2,auto);grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:column;margin:0;padding:0;list-style:none;display:grid}.heart-case-training-steps li{border-top:1px solid var(--heart-case-rule);align-items:start;gap:.875rem;padding-top:.75rem;display:flex}.heart-case-training-steps li>span{color:var(--heart-case-muted);font-variant-numeric:tabular-nums;padding-top:.2rem;font-size:.75rem}.heart-lora-case h4{letter-spacing:-.02em;font-weight:700;line-height:1.25}.heart-case-training-steps h4{margin:0 0 .375rem;font-size:1.1875rem}.heart-case-training-steps p{color:var(--heart-case-muted);font-size:.875rem;line-height:1.6}.heart-case-quality{border-top:1px solid var(--heart-case-rule);margin-top:3rem;padding-top:1.25rem;scroll-margin-top:2rem}.heart-case-quality-heading{grid-template-columns:1fr 1fr;align-items:start;gap:1.5rem;margin-bottom:1.25rem;display:grid}.heart-case-quality-heading h4{margin:0;font-size:clamp(1.5rem,2.5vw,2rem)}.heart-case-quality-heading p{color:var(--heart-case-muted)}.heart-case-quality-strip{min-width:0}.heart-case-quality-toolbar{justify-content:flex-end;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.heart-case-quality-toolbar>span{color:var(--heart-case-muted);font-variant-numeric:tabular-nums;font-size:.875rem}.heart-case-quality-scroll-hint{align-items:center;gap:.5rem;display:inline-flex}.heart-case-quality-viewport{overscroll-behavior-x:contain;scroll-snap-type:x proximity;touch-action:auto;cursor:grab;scrollbar-width:thin;scrollbar-color:var(--heart-case-rule) transparent;margin-inline:-.75rem;overflow-x:auto}.heart-case-quality-viewport:focus-visible{outline-offset:5px;outline:2px solid}.heart-case-quality-viewport{scroll-padding-inline:.75rem}.heart-case-quality-viewport[data-dragging=true]{cursor:grabbing;scroll-snap-type:none;-webkit-user-select:none;user-select:none}.heart-case-quality-viewport::-webkit-scrollbar{height:5px}.heart-case-quality-viewport::-webkit-scrollbar-thumb{background:var(--heart-case-rule);border-radius:999px}.heart-case-quality-grid{gap:1rem;margin:0;list-style:none;display:flex}.heart-case-quality-viewport .heart-case-quality-grid{padding:.75rem .75rem .875rem}@media (hover:hover) and (pointer:fine){.heart-case-quality-viewport{scroll-snap-type:none}}.heart-case-base-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:clamp(.25rem,.75vw,.75rem);display:grid}.heart-case-base-grid svg{border-radius:var(--heart-case-image-radius);width:100%;height:auto;display:block;overflow:hidden}.heart-base-cell{min-width:0;position:relative}.heart-base-surface{border-radius:var(--heart-case-image-radius);transform-origin:50%;pointer-events:none;background:#f6f6f6;width:100%;overflow:hidden}@media (prefers-reduced-motion:reduce),(hover:none),(pointer:coarse){.heart-base-surface{transform:none!important}}.heart-case-quality-slide{scroll-snap-align:start;flex:0 0 calc(24.0964% - .722892rem);min-width:0}.heart-case-quality-grid figure{min-width:0}.heart-case-quality-image-frame{aspect-ratio:1;border:1px solid color-mix(in srgb, var(--heart-case-rule) 45%, transparent);border-radius:var(--heart-case-image-radius);background:#fff;place-items:center;display:grid;position:relative;overflow:hidden}.heart-case-quality-line-extension{z-index:0;fill:none;stroke:#ff2100;stroke-width:15px;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.heart-case-quality-grid .heart-case-image{z-index:1;width:calc(100% * var(--quality-image-scale,1));aspect-ratio:1;object-fit:contain;clip-path:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;background:0 0;border-radius:0;height:auto;position:relative}.heart-case-quality-grid figcaption{padding-top:.875rem;display:block}.heart-case-quality-caption-meta{color:var(--heart-case-muted);font-variant-numeric:tabular-nums;justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:.5rem;font-size:.75rem;line-height:1.4;display:flex}.heart-case-quality-status{color:#b83c30;align-items:center;gap:.25rem;font-weight:600;display:inline-flex}.heart-case-quality-grid [data-accepted=true] .heart-case-quality-status{color:#426d55}.heart-case-quality-grid figcaption>strong{min-height:2.6em;color:var(--editorial-ink,#191c1e);font-size:1rem;font-weight:500;line-height:1.3;display:block}.heart-case-quality-grid figcaption p{color:var(--heart-case-muted);margin-top:.375rem;font-size:.875rem;line-height:1.55}.heart-case-training-detail{--training-cell-padding:1.5rem;border:1px solid var(--heart-case-rule);background:#fff;border-radius:16px;margin-top:2rem;scroll-margin-top:3rem}.heart-case-training-detail summary{padding:1.125rem var(--training-cell-padding);border-radius:inherit;cursor:pointer;color:var(--case-ink);justify-content:space-between;align-items:center;gap:1rem;font-size:1.0625rem;font-weight:700;line-height:1.5;list-style:none;transition:background-color .18s;display:flex}.heart-case-training-detail summary:hover{background:#f7f7f5}.heart-case-training-detail summary::-webkit-details-marker{display:none}.heart-case-training-detail summary>span{flex:none;font-size:1.25rem;font-weight:400;line-height:1;transition:transform .18s}.heart-case-training-detail[open] summary{border-bottom:1px solid var(--heart-case-rule);border-radius:16px 16px 0 0}.heart-case-training-detail[open] summary>span{transform:rotate(45deg)}.heart-case-training-detail-body{min-width:0;padding-bottom:.375rem}.heart-case-training-notes{margin:0;font-size:.875rem;line-height:1.65}.heart-case-training-notes>div{border-bottom:1px solid var(--heart-case-rule);grid-template-columns:34% minmax(0,1fr);display:grid}.heart-case-training-notes dt,.heart-case-training-notes dd{padding:1rem var(--training-cell-padding);margin:0}.heart-case-training-notes dt{color:var(--case-ink);font-weight:500}.heart-case-training-notes dd{color:var(--case-body)}.heart-case-table-wrap{min-width:0}.heart-case-table-wrap table{border-collapse:collapse;table-layout:fixed;text-align:left;width:100%;font-size:.875rem}.heart-case-parameter-name{width:34%}.heart-case-parameter-value{width:22%}.heart-case-table-wrap caption{padding:1rem var(--training-cell-padding);text-align:left;color:var(--case-ink);font-weight:700;line-height:1.5}.heart-case-table-wrap th,.heart-case-table-wrap td{padding:.8125rem var(--training-cell-padding);border-bottom:1px solid var(--heart-case-rule);vertical-align:top;overflow-wrap:anywhere;line-height:1.5}.heart-case-table-wrap th{font-weight:500}.heart-case-table-wrap thead{color:var(--case-muted);background:#f7f7f5;font-size:.75rem}.heart-case-table-wrap tbody th{color:var(--case-ink)}.heart-case-table-wrap tbody td{color:var(--case-body)}.heart-case-table-wrap tbody td:nth-child(2){font-variant-numeric:tabular-nums;font-weight:500}.heart-case-table-wrap tbody tr:last-child>*{border-bottom:0}.portfolio-editorial .heart-lora-case .heart-gallery--embedded{margin-top:3rem}.heart-case-gallery-heading{justify-content:space-between;align-items:end;gap:1.5rem;margin-bottom:1rem;display:flex}.heart-case-gallery-heading h4{margin:.375rem 0 0;font-size:clamp(1.5rem,2.5vw,2rem)}.heart-case-workflow-intro{border-top:1px solid var(--heart-case-rule);margin-top:2.5rem;padding-top:1rem}.heart-case-workflow-intro h4{margin:0 0 .5rem;font-size:clamp(1.5rem,2.5vw,2rem)}.heart-case-workflow-intro p{color:var(--heart-case-muted)}.heart-case-workflow img{background:#080909}.heart-case-workflow>a{border-radius:var(--heart-case-image-radius);display:block}.heart-case-workflow figcaption>span:last-child{white-space:nowrap;align-items:center;gap:.35rem;display:flex}.heart-case-material-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;width:80%;margin:1.5rem 0 3rem auto;display:grid}.heart-case-material-strip figcaption{color:var(--editorial-ink,#191c1e);font-size:1rem;font-weight:700;display:block}.heart-case-material-strip figcaption>span{color:var(--heart-case-muted);margin-top:.25rem;font-size:.75rem;font-weight:400;display:block}.heart-case-poster-study{border-radius:var(--heart-case-image-radius);background:#ede8e4;grid-template-columns:1fr 1fr;align-items:center;gap:2rem;margin-bottom:1.5rem;padding:clamp(1.5rem,4vw,3rem);display:grid}.heart-case-poster-study h4{margin:.625rem 0;font-size:clamp(2rem,3.4vw,3rem);line-height:1.12}.heart-case-poster-study p{color:#65615e}.heart-case-poster-study .heart-case-method-note{margin-top:.625rem;font-size:.75rem}.heart-case-poster-study figure{justify-self:center;width:min(100%,20rem)}.heart-case-poster-study svg{width:100%;height:auto;display:block;overflow:hidden}.heart-case-output-layout{grid-template-columns:1fr 1fr;gap:3rem;margin-top:2.5rem;display:grid}.heart-case-output-layout h4{margin:.5rem 0 .625rem;font-size:clamp(1.5rem,2.5vw,2rem)}.heart-case-output-layout p{color:var(--heart-case-muted)}.heart-case-output-layout .heart-case-method-note{margin-top:.75rem;font-size:.75rem}.heart-case-output-layout ol{margin:0;padding:0;list-style:none}.heart-case-output-layout li{border-top:1px solid var(--heart-case-rule);gap:.875rem;padding:.875rem 0;display:flex}.heart-case-output-layout li>span{color:var(--heart-case-muted);padding-top:.25rem;font-size:.75rem}.heart-case-output-layout h5{margin:0 0 .375rem;font-size:1.125rem;font-weight:700;line-height:1.25}.heart-case-output-layout li p{font-size:.875rem;line-height:1.6}.heart-case-next{border-block:1px solid var(--heart-case-rule);grid-template-columns:minmax(7rem,1fr) minmax(0,4fr);gap:2rem;margin-top:2.5rem;padding-block:1.125rem;display:grid}.heart-case-next p{color:var(--heart-case-muted)}.heart-case-footer{color:var(--heart-case-muted);justify-content:space-between;gap:2rem;margin-top:1.25rem;font-size:.75rem;line-height:1.5;display:flex}.heart-case-footer a{color:inherit;text-underline-offset:.25em}@media (max-width:900px){.heart-case-brand-motion{grid-template-columns:minmax(0,1fr)}.heart-case-brand-motion>figure{justify-self:center;width:min(100%,42rem)}.heart-case-principles{grid-template-columns:repeat(2,minmax(0,1fr))}.heart-case-training-steps li{gap:.5rem}.heart-case-training-steps h4{font-size:1rem}.heart-case-title-row,.heart-case-intro{grid-template-columns:1fr 2.4fr;gap:1.5rem}.heart-case-chapter-head,.heart-case-workflow-intro{gap:1.25rem}.heart-case-brand{display:block}.heart-case-brand span{margin-top:.75rem;display:block}.heart-case-guideline-slide{flex-basis:88%}.heart-case-quality-slide{flex-basis:46%}.heart-case-output-layout{gap:2rem}}@media (max-width:640px){.heart-case-training-detail{--training-cell-padding:.875rem;border-radius:12px}.heart-case-training-detail summary{font-size:.9375rem}.heart-case-training-detail[open] summary{border-radius:12px 12px 0 0}.heart-case-training-notes,.heart-case-table-wrap table{font-size:.8125rem}.heart-case-training-notes>div{grid-template-columns:1fr}.heart-case-training-notes dt{padding-bottom:.25rem}.heart-case-training-notes dd{padding-top:0}.heart-case-table-wrap th,.heart-case-table-wrap td{padding:.75rem .625rem}.heart-case-table-wrap tr>:first-child{padding-left:var(--training-cell-padding)}.heart-case-table-wrap tr>:last-child{padding-right:var(--training-cell-padding)}.heart-case-guideline-slide{flex-basis:92%}.heart-case-guidelines-toolbar{font-size:.75rem}.heart-case-challenges,.heart-case-model-choice{grid-template-columns:minmax(0,1fr);gap:1.5rem}.heart-case-challenges li{padding-top:1rem}.heart-case-challenges .heart-case-challenge-takeaway{margin-bottom:.5rem}.heart-case-reading-flow{gap:.3rem;font-size:.75rem}.heart-case-challenge-break{display:none}.heart-case-model-choice{gap:.875rem}.heart-case-quality-slide{flex-basis:84%}.heart-case-title-row,.heart-case-intro,.heart-case-chapter-head,.heart-case-workflow-intro,.heart-case-output-layout,.heart-case-next,.heart-case-poster-study{grid-template-columns:minmax(0,1fr)}.heart-case-chapter-head,.heart-case-workflow-intro{gap:.625rem}.heart-case-chapter-head>.heart-case-eyebrow{padding-top:0}.heart-case-brand{gap:.75rem;display:flex}.heart-case-brand img{width:2.5rem;height:2.5rem}.heart-case-brand span{margin:0}.heart-case-title-row h2{font-size:clamp(2.5rem,11vw,4rem)}.heart-case-intro{margin-top:2rem}.heart-case-intro dl{grid-template-columns:1fr 2fr;gap:1rem;padding:0;display:grid}.heart-case-intro dl>div+div{margin:0}.heart-case-index{grid-template-columns:1fr}.heart-case-index a{min-height:3.5rem;padding:1rem 0}.heart-case-index a+a{border-left:0;border-top:1px solid var(--heart-case-rule)}.heart-case-principles,.heart-case-training-steps,.heart-case-quality-heading{grid-template-columns:minmax(0,1fr);gap:1rem}.heart-case-training-process{grid-template-columns:minmax(0,1fr);gap:1.5rem}.heart-case-training-process>figure{justify-self:center;width:min(100%,26rem)}.heart-case-training-steps{grid-column:auto;grid-template-rows:none;grid-auto-flow:row}.heart-case-material-strip{gap:.75rem;width:100%;margin-bottom:2rem}.heart-case-material-strip figcaption>span{font-size:.75rem}.heart-case-gallery-heading,.heart-case-footer{display:block}.heart-case-footer a{margin-top:1rem;display:inline-block}}.heart-case-delivery-scroll{border-radius:var(--heart-case-image-radius);background:#050505;overflow-x:auto}.heart-case-delivery-scroll>a{display:block}@media (max-width:900px){.heart-case-delivery-scroll>a{min-width:64rem}}.heart-case-delivery-scroll:focus-visible{outline-offset:5px;outline:2px solid}.heart-case-reference{border-block:1px solid var(--heart-case-rule);margin-top:2rem}.heart-case-reference+.heart-case-reference{border-top:0;margin-top:0}.heart-case-reference summary{cursor:pointer;color:var(--heart-case-muted);justify-content:space-between;align-items:center;gap:1rem;padding-block:1rem;font-size:.875rem;list-style:none;display:flex}.heart-case-reference summary::-webkit-details-marker{display:none}.heart-case-reference summary>span{font-size:1.25rem;transition:transform .18s}.heart-case-reference[open] summary>span{transform:rotate(45deg)}.heart-case-reference-body{padding:1rem 0 2rem}.heart-case-reference-body .heart-case-base-forms{margin-bottom:2rem}.heart-case-workflow-records{gap:2rem;display:grid}.heart-lora-case .heart-case-related-note{max-width:42rem;color:var(--heart-case-muted);margin-bottom:1.5rem}#heart-quality{scroll-margin-top:5rem}
