/* Article 156: selected frontal sketch. Dimensions reference OUTER casing edges. Approved v03 hero heights retained. */
html body #sole-project .po-hero{
 --photo-height:511.11px;--dimension-gutter:44px;
 display:grid!important;grid-template-columns:minmax(0,60%) minmax(0,40%);
 height:auto!important;min-height:0!important;align-items:stretch!important;
 background:#fbfaf7!important;overflow:hidden;container-type:inline-size;
}
html body #sole-project .po-hero::after{display:none!important}
html body #sole-project .po-dimensioned-media{position:relative;padding:0;background:#faf9f6;min-width:0}
html body #sole-project .po-hero .po-hero__media{position:relative!important;inset:auto!important;display:block;width:100%;height:calc(var(--photo-height) + 43.2px)!important;overflow:hidden}
html body #sole-project .po-hero .po-hero__content{position:relative;inset:auto;width:100%!important;max-width:none!important;margin:0!important;padding:39.6px 32px 46.8px!important;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-width:0;background:#fbfaf7!important}
html body #sole-project .po-hero .po-eyebrow{margin:0 0 23.4px;font-size:9px;line-height:1.5;gap:12px;letter-spacing:.12em}
html body #sole-project .po-hero .po-eyebrow::before{width:36px;flex-basis:36px}
html body #sole-project .po-hero h1{max-width:100%;font-size:48px;line-height:1.1;letter-spacing:-.035em;text-wrap:balance}
html body #sole-project .po-hero h1 br{display:none}
html body #sole-project .po-hero .po-lead{max-width:none;margin:21.6px 0 0;font-size:16px;line-height:1.65;color:#66726d;text-wrap:pretty}
html body #sole-project .po-hero .po-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin:27px 0 0;width:100%}
html body #sole-project .po-hero .po-btn{width:auto;min-height:52px;padding:14px 20px!important;border-width:1px!important;font-size:13px!important;line-height:1.4!important}
html body #sole-project .po-hero .po-text-link{min-height:44px;padding:12px 0!important;border:0!important;background:transparent!important;color:#21302e!important;font-size:13px!important;font-weight:500!important;text-decoration:underline!important;text-underline-offset:9px;text-decoration-thickness:1px!important}
html body #sole-project .po-hero .po-text-link:hover{color:#86552f!important}
html body #sole-project .po-hero a:focus-visible{outline:2px solid #86552f;outline-offset:5px}
html body #sole-project .po-hero + .po-facts{border-top:1px solid #ddd9d1;background:#fbfaf7}
html body #sole-project .po-hero + .po-facts .po-facts__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:0}
html body #sole-project .po-hero + .po-facts .po-fact{min-height:0;padding:10px 28px;border-top:3px solid transparent;border-bottom:0}
html body #sole-project .po-drawing{display:block;width:100%;height:100%;overflow:hidden}
html body #sole-project .po-drawing__dimensions{fill:none;stroke:#a66d3d;stroke-width:1;stroke-linecap:round;stroke-linejoin:round}
html body #sole-project .po-drawing__dimensions path{vector-effect:non-scaling-stroke}
html body #sole-project .po-drawing__witness{opacity:.7}
html body #sole-project .po-drawing__writing path{vector-effect:none;stroke-width:1.2}
@media(prefers-reduced-motion:no-preference){
 html body #sole-project .po-drawing__dimensions path{stroke-dasharray:100;animation:als-moss-sketch 900ms ease-in-out 100ms backwards}
 html body #sole-project .po-drawing__dimensions .po-drawing__measure{animation-delay:350ms;animation-duration:1200ms}
 html body #sole-project .po-drawing__dimensions .po-drawing__measure--height{animation-delay:600ms}
 html body #sole-project .po-drawing__dimensions .po-drawing__arrows{animation-delay:1850ms;animation-duration:650ms}
 html body #sole-project .po-drawing__writing path{visibility:hidden;stroke-dasharray:100 102;stroke-dashoffset:101;animation:als-project-dimension-write 580ms ease-out calc(var(--label-delay) + var(--symbol-delay)) both}
}
@keyframes als-project-dimension-write{0%{visibility:hidden;stroke-dashoffset:101}.01%{visibility:visible;stroke-dashoffset:101}100%{visibility:visible;stroke-dashoffset:0}}
@keyframes als-moss-sketch{from{stroke-dashoffset:100}to{stroke-dashoffset:0}}
@media(min-width:1680px){html body #sole-project .po-hero{--photo-height:486px}}
@media(min-width:1101px) and (max-width:1199px){html body #sole-project .po-hero{--photo-height:582.39px}}
@media(min-width:992px) and (max-width:1100px){html body #sole-project .po-hero{--photo-height:450px}}
@media(min-width:801px) and (max-width:991px){html body #sole-project .po-hero{--photo-height:560.16px}}
@media(min-width:801px) and (max-width:1100px){
 html body #sole-project .po-hero{grid-template-columns:minmax(0,54%) minmax(0,46%);--dimension-gutter:36px}
 html body #sole-project .po-hero .po-hero__content{padding:27px 24px 36px!important}
 html body #sole-project .po-hero h1{font-size:40px}
 html body #sole-project .po-hero .po-lead{font-size:15px}
 html body #sole-project .po-hero .po-eyebrow{font-size:8px;gap:9px;margin-bottom:18px}
 html body #sole-project .po-hero .po-eyebrow::before{width:24px;flex-basis:24px}
 html body #sole-project .po-hero .po-actions{margin-top:21.6px;gap:10px 18px}
}
@media(max-width:800px){
 html body #sole-project .po-hero{grid-template-columns:minmax(0,1fr);--photo-height:56.25cqw;--dimension-gutter:36px}
 html body #sole-project .po-hero .po-hero__content{padding:27px 24px 30.6px!important}
 html body #sole-project .po-hero h1{font-size:36px}
 html body #sole-project .po-hero .po-eyebrow{font-size:8px;margin-bottom:18px}
 html body #sole-project .po-hero .po-lead{margin-top:18px}
 html body #sole-project .po-hero .po-actions{margin-top:21.6px}
 html body #sole-project .po-hero + .po-facts .po-facts__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 html body #sole-project .po-hero + .po-facts .po-fact{padding:10px 14px;border-bottom:1px solid #ddd9d1}
 html body #sole-project .po-hero + .po-facts .po-fact:nth-child(2){border-right:1px solid #ddd9d1}
 html body #sole-project .po-hero + .po-facts .po-fact:nth-last-child(-n+2){border-bottom:0}
 html body #sole-project .po-hero + .po-facts .po-fact span{margin-bottom:10px}
}
/* The shared mobile main wrapper starts 40px beneath an 80px sticky header.
   This photo-first article needs that missing clearance before its hero. */
@media(max-width:767px){html body #sole-project .po-hero{margin-top:40px!important}}
