/* Perfectionism: a draft, its requirements, and a visible end point. */
.perfect-hero{background:var(--white);padding:35px 0 58px}
.perfect-hero .breadcrumbs{margin-bottom:38px;flex-wrap:wrap}
.perfect-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:7%;align-items:center}
.perfect-hero-copy{min-width:0}
.perfect-hero h1{font:400 clamp(39px,4.25vw,61px)/1.2 var(--display);letter-spacing:-.045em;margin:0 0 27px}
.perfect-hero h1 em{display:block;color:var(--plum);font-style:normal}
.perfect-lead{font-size:21px;line-height:1.65;color:var(--ink);margin-bottom:20px}
.perfect-hero-copy>p:not(.eyebrow):not(.perfect-lead){font-size:15px;line-height:1.8;color:var(--muted);max-width:555px}
.perfect-hero-art{position:relative;min-width:0}
.perfect-hero-art figure{position:relative;margin:0}
.perfect-hero-art img{width:100%;height:450px;object-fit:cover;object-position:44% center;border-radius:18px}
.perfect-hero-art figure:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#26312fd4);border-radius:0 0 18px 18px;pointer-events:none}
.perfect-hero-art figcaption{position:absolute;z-index:1;bottom:28px;left:28px;right:25px;color:var(--white);font-size:13px;line-height:1.7}
.perfect-hero-art figcaption em{font:400 28px/1.5 var(--display);font-style:normal}
.perfect-margin-note{position:relative;z-index:2;margin:-12px -1px 0 19%;padding:22px 24px;border-left:3px solid #89967c;background:#edf0e8;border-radius:0 0 12px 12px}
.perfect-margin-note>span{font-size:10px;color:var(--muted)}
.perfect-margin-note p{font:400 23px/1.5 var(--display);margin:9px 0 12px}
.perfect-margin-note strong{font-weight:400;color:var(--plum)}
.perfect-margin-note a{font-size:11px;border-bottom:1px solid #a7afa0;padding-bottom:4px}
.perfect-distinction{display:grid;grid-template-columns:1fr 1fr;border-block:1px solid var(--line);margin:29px 0 30px}
.perfect-distinction>div{padding:23px 0}
.perfect-distinction>div+div{border-left:1px solid var(--line);padding-left:24px}
.perfect-distinction span,.perfect-example-columns>div>span,.perfect-example-finish>span,.perfect-research span{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}
.perfect-distinction p{font:400 23px/1.5 var(--display);margin:16px 0 0}.perfect-distinction strong{font-weight:400;color:var(--plum)}
.perfect-patterns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:28px 0}
.perfect-patterns article{padding:22px 0 0;border-top:2px solid #a1ac94;display:flex;flex-direction:column;min-width:0}
.perfect-patterns article>span{font-size:10px;color:var(--muted)}
.perfect-patterns h3{font-size:18px;margin:12px 0 15px}
.perfect-patterns p{font-size:14px;line-height:1.8}
.perfect-patterns a{margin-top:auto;min-height:44px;display:flex;align-items:center;font-size:11px;text-decoration:underline;text-underline-offset:4px}
.perfect-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:25px 0 22px}
.perfect-tabs button{border:1px solid #c1c8b8;border-radius:30px;background:var(--white);padding:11px 17px;font-size:12px;min-height:44px;transition:background .2s,color .2s,border-color .2s}
.perfect-tabs button[aria-pressed=true]{background:var(--ink);color:var(--white);border-color:var(--ink)}
.perfect-tabs button:hover{border-color:var(--plum)}
.perfect-example-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.perfect-example{border:1px solid var(--line);border-radius:16px;background:var(--white);overflow:hidden;margin-bottom:18px;animation:perfect-enter .28s var(--ease)}
.perfect-example>h3{font:400 27px/1.45 var(--display);margin:0;padding:23px 26px;border-bottom:1px solid var(--line)}
.perfect-example-columns{display:grid;grid-template-columns:.95fr 1.05fr}
.perfect-example-columns>div{padding:24px 26px;min-width:0}
.perfect-example-rigid{background:#f1ecef}
.perfect-example blockquote{font:400 23px/1.6 var(--display);margin:16px 0 18px;color:var(--plum)}
.perfect-example-rigid p{font-size:13px;line-height:1.8;color:var(--muted);margin:0}
.perfect-example-flexible{background:#edf0e8}
.perfect-example-flexible ul{list-style:none;padding:0;margin:17px 0 0;font-size:14px;line-height:1.85}
.perfect-example-flexible li{padding:0 0 14px 20px;position:relative}
.perfect-example-flexible li:before{content:'✓';position:absolute;left:0;color:#59644f}
.perfect-example-flexible li:last-child{padding-bottom:0}
.perfect-example-finish{padding:19px 26px;border-top:1px solid var(--line);display:grid;grid-template-columns:140px 1fr;gap:18px;align-items:start}
.perfect-example-finish p{margin:0;font-size:14px;line-height:1.8}
.perfect-workshop .worry-form label>small{font-size:11px;line-height:1.7;display:block;color:var(--muted);margin-top:7px}
.perfect-workshop .worry-result dd{white-space:pre-wrap}
.perfect-research{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:27px 0}
.perfect-research>div{border-left:2px solid #a1ac94;padding-left:19px}
.perfect-research p{font-size:14px;line-height:1.8;margin:10px 0 0}
@keyframes perfect-enter{from{opacity:.5;transform:translateY(5px)}to{opacity:1;transform:none}}
@media(max-width:1100px){.perfect-hero-grid{gap:4%}.perfect-hero h1{font-size:clamp(37px,4.5vw,49px)}.perfect-hero-art img{height:440px}.perfect-patterns{grid-template-columns:1fr;gap:22px}.perfect-patterns article{padding:18px 22px;border:1px solid var(--line);border-radius:12px;background:var(--white)}.perfect-patterns p{margin-bottom:9px}}
@media(max-width:820px){.perfect-hero{padding:25px 0 36px}.perfect-hero .breadcrumbs{margin-bottom:27px}.perfect-hero-grid{grid-template-columns:1fr;gap:30px}.perfect-hero h1{font-size:clamp(36px,6.8vw,54px);max-width:670px}.perfect-hero-art{padding-bottom:0}.perfect-hero-art img{height:auto;aspect-ratio:3/2}.perfect-margin-note{margin-left:30%;}.perfect-example-columns>div{padding:22px}.perfect-distinction p{font-size:22px}}
@media(max-width:560px){.perfect-hero h1{font-size:clamp(29px,8.6vw,43px);line-height:1.25;letter-spacing:-.045em}.perfect-hero .eyebrow{font-size:10px}.perfect-lead{font-size:18px}.perfect-hero-copy>p:not(.eyebrow):not(.perfect-lead){font-size:14px}.perfect-hero .breadcrumbs{font-size:10px}.perfect-hero-art img{aspect-ratio:4/3;object-position:38% center}.perfect-hero-art figcaption{bottom:22px;left:21px;right:20px;font-size:12px}.perfect-hero-art figcaption em{font-size:23px}.perfect-margin-note{margin-left:15%;padding:19px 21px}.perfect-margin-note p{font-size:22px}.perfect-distinction{grid-template-columns:1fr}.perfect-distinction>div+div{border-left:0;border-top:1px solid var(--line);padding-left:0}.perfect-distinction p{font-size:24px}.perfect-tabs{gap:7px}.perfect-tabs button{font-size:11px;padding:10px 13px}.perfect-example-columns{grid-template-columns:1fr}.perfect-example>h3{font-size:24px;padding:22px 20px}.perfect-example-columns>div{padding:23px 20px}.perfect-example blockquote{font-size:23px}.perfect-example-finish{grid-template-columns:1fr;gap:9px;padding:20px}.perfect-research{grid-template-columns:1fr;gap:23px}.perfect-workshop .worry-form label>small{font-size:11px}}
@media(prefers-reduced-motion:reduce){.perfect-example{animation:none}.perfect-tabs button{transition:none}}
