Static sites — a content security policy on each page
Static and shared-host exports carry a content security policy per page: inline scripts run only if listed; plugins and inline handlers are off. When a page's first picture is art-directed by simple screen rules, the fitting version loads first: a phone its phone picture, a wide screen its wide one. Contact forms on the site's inquiry receiver save each message first, then mail the company mailbox; a notice that finally fails is logged, not resent. Long article and release headlines are set one or two sizes smaller depending on their length, so they wrap less. A free-form section can hold a block drawn once per row of a list; published rows show on the page, draft rows stay off it.
Static and shared-host exports carry a content security policy per page: inline scripts run only if listed; plugins and inline handlers are off
When a page's first picture is art-directed by simple screen rules, the fitting version loads first: a phone its phone picture, a wide screen its wide one
Contact forms on the site's inquiry receiver save each message first, then mail the company mailbox; a notice that finally fails is logged, not resent
Long article and release headlines are set one or two sizes smaller depending on their length, so they wrap less
A free-form section can hold a block drawn once per row of a list; published rows show on the page, draft rows stay off it