The best Steven Spielberg films, as chosen by directors, critics, and super-fans: 'pure popcorn perfection.'

The best Steven Spielberg films, as chosen by directors, critics, and super-fans: 'pure popcorn perfection.'

@font-face {
font-family: ‘Guardian Headline Full’;
src: url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Light.woff2’) format(‘woff2’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Light.woff’) format(‘woff’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Light.ttf’) format(‘truetype’);
font-weight: 300;
font-style: normal;
}

@font-face {
font-family: ‘Guardian Headline Full’;
src: url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-LightItalic.woff2’) format(‘woff2’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-LightItalic.woff’) format(‘woff’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-LightItalic.ttf’) format(‘truetype’);
font-weight: 300;
font-style: italic;
}

@font-face {
font-family: ‘Guardian Headline Full’;
src: url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Regular.woff2’) format(‘woff2’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Regular.woff’) format(‘woff’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Regular.ttf’) format(‘truetype’);
font-weight: 400;
font-style: normal;
}

@font-face {
font-family: ‘Guardian Headline Full’;
src: url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-RegularItalic.woff2’) format(‘woff2’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-RegularItalic.woff’) format(‘woff’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-RegularItalic.ttf’) format(‘truetype’);
font-weight: 400;
font-style: italic;
}

@font-face {
font-family: ‘Guardian Headline Full’;
src: url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Medium.woff2’) format(‘woff2’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Medium.woff’) format(‘woff’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Medium.ttf’) format(‘truetype’);
font-weight: 500;
font-style: normal;
}

@font-face {
font-family: ‘Guardian Headline Full’;
src: url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-MediumItalic.woff2’) format(‘woff2’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-MediumItalic.woff’) format(‘woff’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-MediumItalic.ttf’) format(‘truetype’);
font-weight: 500;
font-style: italic;
}

@font-face {
font-family: ‘Guardian Headline Full’;
src: url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Semibold.woff2’) format(‘woff2’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Semibold.woff’) format(‘woff’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Semibold.ttf’) format(‘truetype’);
font-weight: 600;
font-style: normal;
}

@font-face {
font-family: ‘Guardian Headline Full’;
src: url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-SemiboldItalic.woff2’) format(‘woff2’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-SemiboldItalic.woff’) format(‘woff’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-SemiboldItalic.ttf’) format(‘truetype’);
font-weight: 600;
font-style: italic;
}Here’s the rewritten text in fluent, natural English:

“`css
@font-face {
font-family: ‘Guardian Headline Full’;
src: url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Bold.woff2’) format(‘woff2’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Bold.woff’) format(‘woff’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Bold.ttf’) format(‘truetype’);
font-weight: 700;
font-style: normal;
}

@font-face {
font-family: ‘Guardian Headline Full’;
src: url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-BoldItalic.woff2’) format(‘woff2’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-BoldItalic.woff’) format(‘woff’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-BoldItalic.ttf’) format(‘truetype’);
font-weight: 700;
font-style: italic;
}

@font-face {
font-family: ‘Guardian Headline Full’;
src: url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Black.woff2’) format(‘woff2’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Black.woff’) format(‘woff’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Black.ttf’) format(‘truetype’);
font-weight: 900;
font-style: normal;
}

@font-face {
font-family: ‘Guardian Headline Full’;
src: url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-BlackItalic.woff2’) format(‘woff2’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-BlackItalic.woff’) format(‘woff’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-BlackItalic.ttf’) format(‘truetype’);
font-weight: 900;
font-style: italic;
}

@font-face {
font-family: ‘Guardian Titlepiece’;
src: url(‘https://interactive.guim.co.uk/fonts/garnett/GTGuardianTitlepiece-Bold.woff2’) format(‘woff2’),
url(‘https://interactive.guim.co.uk/fonts/garnett/GTGuardianTitlepiece-Bold.woff’) format(‘woff’),
url(‘https://interactive.guim.co.uk/fonts/garnett/GTGuardianTitlepiece-Bold.ttf’) format(‘truetype’);
font-weight: 700;
font-style: normal;
}

@media (min-width: 71.25em) {
.content__main-column–interactive {
margin-left: 160px;
}
}

@media (min-width: 81.25em) {
.content__main-column–interactive {
margin-left: 240px;
}
}

.content__main-column–interactive .element-atom {
max-width: 620px;
}

@media (max-width: 46.24em) {
.content__main-column–interactive .element-atom {
max-width: 100%;
}
}

.content__main-column–interactive .element-showcase {
margin-left: 0;
}

@media (min-width: 46.25em) {
.content__main-column–interactive .element-showcase {
max-width: 620px;
}
}

@media (min-width: 71.25em) {
.content__main-column–interactive .element-showcase {
max-width: 860px;
}
}

.content__main-column–interactive .element-immersive {
max-width: 1100px;
}

@media (max-width: 46.24em) {
.content__main-column–interactive .element-immersive {
width: calc(100vw – var(–scrollbar-width, 0px));
position: relative;
left: 50%;
right: 50%;
margin-left: calc(-50vw + var(–half-scrollbar-width, 0px)) !important;
margin-right: calc(-50vw + var(–half-scrollbar-width, 0px)) !important;
}
}

@media (min-width: 46.25em) {
.content__main-column–interactive .element-immersive {
transform: translate(-20px);
width: calc(100% + 60px);
}
}

@media (max-width: 71.24em) {
.content__main-column–interactive .element-immersive {
margin-left: 0;
margin-right: 0;
}
}

@media (min-width: 71.25em) {
.content__main-column–interactive .element-immersive {
transform: translate(0);
width: auto;
}
}

@media (min-width: 81.25em) {
.content__main-column–interactive .element-immersive {
max-width: 1260px;
}
}

.content__main-column–interactive p,
.content__main-column–interactive ul {
max-width: 620px;
}

.content__main-column–interactive::before {
position: absolute;
top: 0;
height: calc(100% + 15px);
min-height: 100px;
content: ”;
}

@media (min-width: 71.25em) {
.content__main-column–interactive::before {
border-left: 1px solid #dcdcdc;
z-index: -1;
left: -10px;
}
}

@media (min-width: 81.25em) {
.content__main-column–interactive::before {
border-left: 1px solid #dcdcdc;
left: -10px;
}
}
“`Here is the rewritten text in fluent, natural English:

The left margin is set to -11px. Inside the main interactive column, elements with the class “element-atom” have no top or bottom margin, but they do have 12px of padding at the top and bottom. If a paragraph comes right before an element-atom, that element’s top padding is removed, and instead the paragraph gets 12px of margin above and below it. Inline elements are limited to a maximum width of 620px.

On screens wider than 61.25em, figures with the role “inline” are also capped at 620px wide. For media sections that contain a looping figure, the caption is given a higher z-index (6) so it stays on top. The loop button, which is 32px wide, is aligned to the bottom-right of the figure, with a 40px bottom margin and a 3px right margin. The caption button gets a z-index of 100.

On screens wider than 46.25em, if a media section contains a cinemagraph, its maximum height is removed. In the body section, self-hosted videos are displayed as block elements, 100% wide but capped at 620px, with 12px of margin above and below. If a self-hosted video is inside a looping figure, both the figure and the video are 100% wide, auto-height, and centered with a max width of 620px.

If a self-hosted video is inside an immersive looping figure, it has no max width and gets 12px of margin on top and bottom. On screens wider than 71.25em, such immersive videos expand to 1140px wide and shift 180px to the left. Their captions get a 20px left margin. On screens wider than 81.25em, they expand to 1300px wide and shift 260px to the left.

The root variables define colors: dateline is a medium gray, headerBorder is a light gray, captionText is a lighter gray, captionBackground is a semi-transparent dark color, feature is a red, and the new pillar color defaults to the primary pillar or the feature color. Subheadings, pullquotes, and block quotes use the secondary pillar color, while block quote text uses the article text color. Blockquotes themselves use the secondary pillar color as a fill.

In dark mode (unless the user has chosen light mode), subheadings, pullquotes, and pullquote icons switch to the dark mode pillar color. Blockquotes also use the dark mode pillar fill.

Elements with the class “element-atom” inside the main interactive column or anywhere else have no padding. In the article body, if an element-atom is the first child and is followed by a paragraph (or a sign-in gate followed by a paragraph), that paragraph gets 14px of top padding. The same applies to horizontal rules that are not the last one.Here is the rewritten text in fluent, natural English:

The first letter of the first paragraph after certain elements—such as an atom, a sign-in gate, or a horizontal rule—in various sections of an article or comment body is styled with a large, bold, uppercase drop cap. This drop cap uses the Guardian Headline font family, is 111 pixels tall, and has a line height of 92 pixels. It floats to the left, has a small right margin, and is vertically aligned to the top of the text. Its color is set by a custom property for the drop cap, which defaults to the pillar color.

Paragraphs that come right after a horizontal rule have no top padding.

Pull quotes in these sections are limited to a maximum width of 620 pixels.

For images with the “showcase” style, their captions are positioned statically and take up the full width, up to 620 pixels. On wider screens (over 71.25em), these captions are positioned absolutely and have a maximum width of 140 pixels. On even wider screens (over 81.25em), the maximum width increases to 220 pixels.

Images with the “immersive” style take up the full viewport width, minus the scrollbar width. On smaller screens (up to 71.24em), their maximum width is 978 pixels, and their captions have horizontal padding of 10 pixels (or 20 pixels on screens wider than 30em). On medium screens (between 46.25em and 61.24em), the maximum width is 738 pixels. On the smallest screens (up to 46.24em), these images have a negative left margin and no right margin, aligning to the left edge.For screens at least 30em wide:
– For `.element.element–immersive.element-immersive`, set the left margin to -20px.
– For its `figcaption`, add 20px of padding on the left and right.

For screens at least 71.25em wide:
– Inside `[data-gu-name=body]`, for `figure.element.element–showcase.element-showcase` and `.content__main-column–interactive figure.element.element–showcase.element-showcase`, set the left margin to -160px.

For screens at least 81.25em wide:
– Inside `[data-gu-name=body]`, for the same elements, set the left margin to -240px.

The `.furniture-wrapper` is positioned relatively.

For screens at least 61.25em wide:
– Use a CSS grid with 20px column gaps and no row gaps. The grid has 10 columns: the first 5 are for title, headline, meta, and standfirst; the last 5 are for portrait.
– The grid rows are: first row is 0.25fr for title and portrait, second row is 1fr for headline, third row is 0.75fr for standfirst, and the last row is auto for meta, ending with portrait.
– Inside `#headline`, `[data-gu-name=headline]`, or `.headline`, the first child `div` gets a 1px top border using `var(–headerBorder)`.
– `#meta` or `[data-gu-name=meta]` is positioned relatively, with 2px top padding and no right margin.
– For standfirst elements (`.standfirst`, `#standfirst`, `[data-gu-name=standfirst]`), the `.content__standfirst` has a 4px bottom margin.
– List items in standfirst have a font size of 20px.
– Links in standfirst have no bottom border, no background image, are underlined with a 6px offset, and use `var(–headerBorder, #dcdcdc)` for the underline color. On hover, the underline color changes to `var(–new-pillar-colour)`.
– The first paragraph in standfirst gets a 1px top border using `var(–headerBorder)` and no bottom padding.

For screens at least 71.25em wide (and also at least 61.25em):
– The first paragraph in standfirst should not have a top border.

For screens at least 61.25em wide:
– Figures have a left margin of 0 and a negative left margin of -10px.
– Figures with `[data-spacefinder-role=inline]` and class `.element` have a max width of 630px.

For screens at least 71.25em wide:
– The grid now has 14 columns: the first 2 are for title, headline, and meta start; then 5 columns for meta end and standfirst start; then 7 columns for title end, headline end, standfirst end, and portrait start and end.
– The grid rows are: first row is 80px for title and portrait start, second row is auto for headline, third row is auto for standfirst and meta start, ending with portrait.
– For `#meta` or `[data-gu-name=meta]`, add a pseudo-element `:before` with a 540px wide, 1px high line at the top, using `var(–headerBorder)`.
– Standfirst paragraphs have no top border.
– For standfirst elements, add a pseudo-element `:before` with a 1px wide line using `var(–headerBorder)`, full height, positioned at the top and 0.5px from the left.

For screens at least 81.25em wide:
– The grid template columns are defined (but the specific values are not provided in the text).The layout uses a grid with columns defined as: repeat(3, 1fr) for the meta section, repeat(5, 1fr) for the standfirst, and repeat(8, 1fr) for the portrait. The rows are set as: [title-start portrait-start] 0.25fr [title-end headline-start] 1fr [headline-end standfirst-start meta-start] 0.75fr [standfirst-end meta-end portrait-end].

For the meta section, the `.furniture-wrapper #meta:before` and `.furniture-wrapper [data-gu-name=meta]:before` elements have a width of 620px. The standfirst section’s `.furniture-wrapper .standfirst:before`, `.furniture-wrapper #standfirst:before`, and `.furniture-wrapper [data-gu-name=standfirst]:before` are positioned 0.5px to the left.

In the article header, the labels inside `.furniture-wrapper .article-header .content__labels>div` and `.furniture-wrapper [data-gu-name=title] .content__labels>div` have a top padding of 2px.

The headline styling for `#headline h1`, `[data-gu-name=headline] h1`, and `.headline h1` includes a font weight of 600, a max width of 620px, and a font size of 32px. On screens wider than 71.25em, the max width reduces to 540px and the font size increases to 50px.

For screens wider than 46.25em, the `.keyline-4` and `[data-gu-name=lines]` elements have no right margin. On screens wider than 61.25em, these elements are hidden. The SVG inside them uses a stroke color set by `–headerBorder`.

On screens wider than 46.25em, the meta section (`#meta` and `[data-gu-name=meta]`) also has no right margin. The social and comment elements within the meta section use `–headerBorder` for their border colors. The `content__meta-container_dcr` inside the meta section hides its `gu-island` children.

The standfirst section (`.standfirst`, `#standfirst`, `[data-gu-name=standfirst]`) has a left margin of -10px, left padding of 10px, and is positioned relatively. On screens wider than 46.25em, it gains a top padding of 2px. Paragraphs inside the standfirst have a font weight of 400, font size of 20px, and bottom padding of 14px.

The main media section (`#main-media` and `[data-gu-name=media]`) is positioned relatively, with no top margin, a bottom margin of 2px, and is placed in the portrait grid area. Its inner divs span full width with no inline margin. On screens wider than 61.25em, the bottom margin is removed. On screens narrower than 46.24em, the media section takes the full viewport width (minus scrollbar width) and has a left margin of -10px. If the screen is between 30em and 46.24em, the left margin becomes -20px.

The figcaption is positioned absolutely at the bottom, with padding of 4px top and 12px bottom (and 10px left/right), using `–captionBackground` and `–captionText` for colors. It spans full width, has no max width, and a minimum height of 46px. The span inside uses `–headerBorder` for color, and its SVG uses the same for fill. The first span is hidden, while the second is displayed with a max width of 90%. On screens wider than 30em, the figcaption padding changes to 4px top, 12px bottom, and 20px left/right. When hidden, its opacity is set to 0.

The caption button (`#caption-button`) is displayed as a block, positioned absolutely at the bottom right (10px from bottom, 8px from right), with a z-index of 30. It uses `–captionBackground`, has no border, is circular (border-radius: 50%), and has padding of 6px top, 5px left/right, and 5px bottom. Its SVG is scaled to 85%. On screens wider than 30em, the right offset becomes 10px.The `.content__main-column–interactive` element has a top offset of -12px and a height of 100% plus 24px. The `h2` inside it has a max width of 620px.

The root variables set the new pillar colour to either the dark mode pillar or the dark mode feature colour (which is #ff5943), a header border colour of #606060, and a dark mode feature colour of #ff5943.

Navigation and aside sections that follow certain elements are hidden.

The `.furniture-wrapper` has a dark background, with margins and padding that adjust at different screen widths. At 81.25em and above, it uses pseudo-elements to extend the background to the edges of the viewport, with a right border on the left pseudo-element.

Inside `.furniture-wrapper`, the article header, title links, and title spans use the new pillar colour. At 61.25em and above, the first child of headline-related divs gets a top border.

The `h1` inside headline elements is bold and coloured #dcdcdc. Figures inside headlines have no top margin and a small bottom margin.

At 71.25em and above, the meta section gets a top border. Details, summaries, and their spans in the meta section are coloured #dcdcdc. Social media links and buttons have a border colour matching the header border and use the new pillar colour for text and SVG fills. On hover, they invert colours.

Other meta divs are #dcdcdc, and meta links use the new pillar colour, with the same colour on hover and an underline in that colour.

Standfirst links and list item links have no bottom border, use the new pillar colour, are underlined with a 6px offset, and the underline colour is either the header border or #dcdcdc.Here is the rewritten text in fluent, natural English:

When you hover over a link inside the standfirst section—whether it’s in a paragraph, a list item, or the standfirst itself—the bottom border disappears and the underline color changes to match the pillar color (or the dark mode feature color if that’s not set).

The text in standfirst paragraphs is light gray (#dcdcdc).

On screens wider than 61.25em (about 980px), the first paragraph in the standfirst gets a top border in the header border color. But on screens wider than 71.25em (about 1140px), that top border is removed.

List items inside the standfirst also use the same light gray color (#dcdcdc).

On screens wider than 71.25em, a line appears above the standfirst, using the header border color.

For screens wider than 46.25em (about 740px), the furniture wrapper gets left and right background panels. These panels use the dark background color and are separated from the main content by a border in the header border color. The width of these panels changes depending on the screen size:

– At 46.25em and above, each panel is half the width of the space outside a 738px-wide content area.
– At 61.25em and above, the content area expands to 978px, and the panels adjust accordingly.
– At 71.25em and above, the content area is 1138px wide.
– At 81.25em and above, the content area is 1298px wide.

The decorative lines (like keyline-4 or lines) use the header border color for their stroke.

Social media and comment sections in the meta area also use the header border color for their borders.

In the article body, h2 headings have a font weight of 200. But if an h2 contains strong text, the whole heading switches to a bold weight of 700.

Any list inside an element with `data-print-layout=”hide”` has no background image.

Finally, a custom font called “Guardian Headline Full” is loaded in a light weight (300) from Guardian’s asset server. It’s available in woff2, woff, and truetype formats.Here is the rewritten text in fluent, natural English:

@font-face {
font-family: ‘Guardian Headline Full’;
src: url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-LightItalic.woff2’) format(‘woff2’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-LightItalic.woff’) format(‘woff’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-LightItalic.ttf’) format(‘truetype’);
font-weight: 300;
font-style: italic;
}

@font-face {
font-family: ‘Guardian Headline Full’;
src: url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Regular.woff2’) format(‘woff2’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Regular.woff’) format(‘woff’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Regular.ttf’) format(‘truetype’);
font-weight: 400;
font-style: normal;
}

@font-face {
font-family: ‘Guardian Headline Full’;
src: url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-RegularItalic.woff2’) format(‘woff2’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-RegularItalic.woff’) format(‘woff’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-RegularItalic.ttf’) format(‘truetype’);
font-weight: 400;
font-style: italic;
}

@font-face {
font-family: ‘Guardian Headline Full’;
src: url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Medium.woff2’) format(‘woff2’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Medium.woff’) format(‘woff’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Medium.ttf’) format(‘truetype’);
font-weight: 500;
font-style: normal;
}

@font-face {
font-family: ‘Guardian Headline Full’;
src: url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-MediumItalic.woff2’) format(‘woff2’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-MediumItalic.woff’) format(‘woff’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-MediumItalic.ttf’) format(‘truetype’);
font-weight: 500;
font-style: italic;
}

@font-face {
font-family: ‘Guardian Headline Full’;
src: url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Semibold.woff2’) format(‘woff2’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Semibold.woff’) format(‘woff’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Semibold.ttf’) format(‘truetype’);
font-weight: 600;
font-style: normal;
}

@font-face {
font-family: ‘Guardian Headline Full’;
src: url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-SemiboldItalic.woff2’) format(‘woff2’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-SemiboldItalic.woff’) format(‘woff’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-SemiboldItalic.ttf’) format(‘truetype’);
font-weight: 600;
font-style: italic;
}

@font-face {
font-family: ‘Guardian Headline Full’;
src: url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Bold.woff2’) format(‘woff2’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Bold.woff’) format(‘woff’),
url(‘https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/full-not-hinted/GHGuardianHeadline-Bold.ttf’) format(‘truetype’);
font-weight: 700;
font-style: normal;
}Here is the rewritten text in fluent, natural English:

The font files are loaded from the Guardian’s servers. For example, the bold italic version of the Guardian Headline font is available in WOFF2, WOFF, and TTF formats. The same applies to the black and black italic versions. The Guardian Titlepiece font is also loaded in bold style from a different source.

On iOS and Android devices, certain color variables are set, including a dark background, a feature color, and a dark mode feature color. These adapt based on the user’s system color scheme preference.

In article containers on both iOS and Android, the first letter of the first paragraph after certain elements (like an atom or sign-in gate) is styled with a specific color, which comes from a secondary pillar variable or defaults to black.The article header sections for containers like `.article__header`, `#feature-article-container`, `#standard-article-container`, and `#comment-article-container` on both Android and iOS have a height of zero.

On iOS and Android, the furniture wrapper inside these containers has padding of 4px on top and 10px on the sides. The labels inside the furniture wrapper use bold text, the font family “Guardian Headline” (or similar fallbacks), and are capitalized with the color set to the pillar color.

The headline (h1) inside the furniture wrapper is 32px, bold, has 12px of padding at the bottom, and is colored #121212.

Images inside the furniture wrapper (figure.element-image) are positioned relatively, with a top margin of 14px and a left margin of -10px. Their width spans the full viewport width minus the scrollbar width. The inner elements of the image (like `.figure__inner`, `img`, and `a`) have a transparent background and the same full viewport width, with height set to auto.

The standfirst section inside the furniture wrapper is also styled for both iOS and Android.For the `.standfirst` inside `.furniture-wrapper` in `#standard-article-container`, `#comment-article-container`, and on Android devices, add 4px padding on top and 24px on the bottom, with a right margin of -10px.

On iOS and Android, inside `#feature-article-container`, `#standard-article-container`, and `#comment-article-container`, the paragraph text within `.standfirst__inner` should use the font family: Guardian Headline, Guardian Egyptian Web, Guardian Headline Full, Georgia, serif.

For links (including those inside list items) in the same containers on iOS and Android, set the text color to `var(–new-pillar-colour)` with no background image. Add an underline with a 6px offset, using `var(–headerBorder, #dcdcdc)` as the underline color, and remove the bottom border. On hover, change the underline color to `var(–new-pillar-colour)`.

For the `.meta` section inside `.furniture-wrapper` on iOS and Android, set the margin to 0. For the byline, byline author, author links, and meta byline spans within `.meta`, apply the same styling as the paragraph text above.The following CSS rules apply to the `.wrapper .meta .byline` element and various related selectors for iOS and Android devices across feature, standard, and comment article containers. The text color is set to `var(–new-pillar-colour)`.

For iOS and Android, the `.meta__misc` class inside the furniture wrapper of feature, standard, and comment article containers has no padding. Additionally, any SVG inside `.meta__misc` uses `var(–new-pillar-colour)` for its stroke color.

On both iOS and Android, the `#caption-button` inside `.element–showcase` within the furniture wrapper of feature, standard, and comment article containers is displayed as a flex container with 5px padding, centered content, and a width and height of 28px, positioned 14px from the right.

The `.article__body` in feature, standard, and comment article containers on iOS and Android has 0 padding on the left and right, with 12px padding on the sides.

For images inside `.article__body` that are not of the `.element–thumbnail` or `.element–immersive` class, they have no margin and a width calculated as `100vw – 24px – var(–scrollbar-width, 0px)`, with automatic height.Here’s the rewritten version in fluent, natural English:

For iOS and Android devices, in feature, standard, and comment article containers, the captions for non-thumbnail, non-immersive images should have no padding. Also, for immersive images in these same containers, the width should be set to the full viewport width minus any scrollbar width.

In the prose sections of these article containers, quoted blockquotes should have a colored line before them, using the new pillar color. Links within the prose should use the primary pillar color, with no background image, an underline, a 6px offset, and the underline color set to the header border color. When hovering over these links, the underline color should change to the new pillar color.

In dark mode (when the user’s system prefers a dark color scheme), the furniture wrapper in these article containers should have a dark background color (#1a1a1a). The content labels inside the furniture wrapper should use the new pillar color, and the headline (h1) should also use the new pillar color..furniture-wrapper h1.headline {
background-color: unset;
color: var(–headerBorder) !important;
}

body.ios #feature-article-container .furniture-wrapper .standfirst p,
body.ios #standard-article-container .furniture-wrapper .standfirst p,
body.ios #comment-article-container .furniture-wrapper .standfirst p,
body.android #feature-article-container .furniture-wrapper .standfirst p,
body.android #standard-article-container .furniture-wrapper .standfirst p,
body.android #comment-article-container .furniture-wrapper .standfirst p {
color: var(–headerBorder);
}

body.ios #feature-article-container .furniture-wrapper .standfirst a,
body.ios #standard-article-container .furniture-wrapper .standfirst a,
body.ios #comment-article-container .furniture-wrapper .standfirst a,
body.android #feature-article-container .furniture-wrapper .standfirst a,
body.android #standard-article-container .furniture-wrapper .standfirst a,
body.android #comment-article-container .furniture-wrapper .standfirst a,
body.ios #feature-article-container .furniture-wrapper .meta .byline__author,
body.ios #feature-article-container .furniture-wrapper .meta span.byline__author a,
body.ios #standard-article-container .furniture-wrapper .meta .byline__author,
body.ios #standard-article-container .furniture-wrapper .meta span.byline__author a,
body.ios #comment-article-container .furniture-wrapper .meta .byline__author,
body.ios #comment-article-container .furniture-wrapper .meta span.byline__author a,
body.android #feature-article-container .furniture-wrapper .meta .byline__author,
body.android #feature-article-container .furniture-wrapper .meta span.byline__author a,
body.android #standard-article-container .furniture-wrapper .meta .byline__author,
body.android #standard-article-container .furniture-wrapper .meta span.byline__author a,
body.android #comment-article-container .furniture-wrapper .meta .byline__author,
body.android #comment-article-container .furniture-wrapper .meta span.byline__author a {
color: var(–new-pillar-colour);
}

body.ios #feature-article-container .furniture-wrapper .meta__misc svg,
body.ios #standard-article-container .furniture-wrapper .meta__misc svg,
body.ios #comment-article-container .furniture-wrapper .meta__misc svg,
body.android #feature-article-container .furniture-wrapper .meta__misc svg,
body.android #standard-article-container .furniture-wrapper .meta__misc svg,
body.android #comment-article-container .furniture-wrapper .meta__misc svg {
stroke: var(–new-pillar-colour);
}

body.ios #feature-article-container .furniture-wrapper figure.element-image.element–showcase figcaption,
body.ios #standard-article-container .furniture-wrapper figure.element-image.element–showcase figcaption,
body.ios #comment-article-container .furniture-wrapper figure.element-image.element–showcase figcaption,
body.android #feature-article-container .furniture-wrapper figure.element-image.element–showcase figcaption,
body.android #standard-article-container .furniture-wrapper figure.element-image.element–showcase figcaption,
body.android #comment-article-container .furniture-wrapper figure.element-image.element–showcase figcaption {
color: var(–dateline);
}

body.ios #feature-article-container .article__body .prose blockquote.quoted,
body.ios #standard-article-container .article__body .prose blockquote.quoted,
body.ios #comment-article-container .article__body .prose blockquote.quoted,
body.android #feature-article-container .article__body .prose blockquote.quoted,
body.android #standard-article-container .article__body .prose blockquote.quoted,
body.android #comment-article-container .article__body .prose blockquote.quoted {
color: var(–new-pillar-colour);
}

body.ios #feature-article-container #article-body > div,
body.ios #feature-article-container .content–interactive > div,
body.ios #feature-article-container #feature-body,
body.ios #feature-article-container [data-gu-name=”body”],
body.ios #feature-article-container #comment-body,
body.ios #standard-article-container #article-body > div,
body.ios #standard-article-container .content–interactive > div,
body.ios #standard-article-container #feature-body,
body.ios #standard-articlHere’s the rewritten version in fluent, natural English:

For iOS and Android devices, the background color of article and comment sections should use the dark background variable. This applies to various containers and body sections within feature, standard, and comment article layouts.

Additionally, on iOS devices, the first letter of any paragraph that follows an element atom (or a sign-in gate after an element atom) should have a specific style applied. This rule covers all article body sections, interactive content areas, feature body sections, and comment body sections across feature, standard, and comment article containers.This appears to be a long list of CSS selectors, not a text meant to be rewritten into fluent English. It’s code used for styling web pages, specifically targeting the first letter of paragraphs after certain elements on different devices (iOS and Android).

If you’d like me to explain what this code does or help you simplify it, I’d be happy to do that instead.Here’s the rewritten version in fluent, natural English:

On Android devices, the first letter of certain paragraphs inside comment sections should use the new pillar color (white by default). This applies to paragraphs that come right after an element atom, whether or not there’s a sign-in gate in between.

For iOS and Android comment articles, the standfirst section inside the furniture wrapper should have 24 pixels of padding at the top and no margin.

In prose sections, heading 2 (h2) should be 24 pixels in size.

On iOS, the caption button inside feature, standard, and comment article containers should have 6 pixels of top padding and 5 pixels on the sides. On Android, it should have 4 pixels of padding on all sides.

When the user’s system is set to dark mode (and the page doesn’t have a light color scheme), the following styles should apply:
– Follow text: #dcdcdc
– Follow icon fill: uses the dark mode pillar color
– Standfirst text: #dcdcdc
– Standfirst link text and border: use the dark mode pillar color
– Byline: uses the dark mode pillar color

The dark background color is set to #1a1a1a.

On both iOS and Android, the article header inside feature, standard, and comment article containers should be completely transparent (opacity: 0).

Also on both platforms, the furniture wrapper inside these article containers should have no margin. The content labels inside the furniture wrapper should use the new pillar color (or the dark mode feature color as a fallback).Here’s the rewritten CSS in fluent, natural English:

On Android devices, the headline inside the furniture wrapper of standard and comment article containers should be colored #dcdcdc.

On both iOS and Android, links inside the article header or title sections of feature, standard, and comment article containers should use the color defined by the CSS variable `–new-pillar-colour`, or fall back to `–darkModeFeature`.

On both iOS and Android, the meta section inside the furniture wrapper of feature, standard, and comment article containers should have a repeating linear gradient background using the `–headerBorderColor` variable. The gradient should show a 1px solid line of that color, followed by 2px of transparency.

On both iOS and Android, the byline text inside the meta section of these containers should be colored #dcdcdc.

On both iOS and Android, links inside the meta section of these containers should use the color defined by `–new-pillar-colour`, or fall back to `–darkModeFeature`.For iOS and Android, in the feature, standard, and comment article containers, the SVG icons inside the meta section’s miscellaneous area use a stroke color defined by the variable `–new-pillar-colour` (or `–darkModeFeature` as a fallback).

Also on iOS and Android, the alert labels in the same meta sections are forced to be `#dcdcdc` in color.

Additionally, for these platforms, any `span[data-icon]` elements within the meta section use the same color variable (`–new-pillar-colour` or `–darkModeFeature`), and their `:before` pseudo-elements inherit that color as well.Here’s the rewritten version in fluent, natural English:

For elements with `[data-icon]` inside `#meta` or `[data-gu-name=”meta”]`, the icon color uses the pillar color variable, falling back to the dark mode feature color. This applies on Android devices within comment article containers.

When the screen is at least 71.25em wide, on both iOS and Android, the `#meta` and `.meta.keyline-4` sections inside furniture wrappers for feature, standard, and comment articles are displayed as block elements with a top border. The border color uses the pillar color variable, with a fallback to the header border color. In these cases, the `.meta__misc` element has no default margin, but gets a left margin of 20px.

For the article body on both iOS and Android, paragraphs and unordered lists in feature, standard, and comment articles are limited to a maximum width of 620px.

Inside the article body’s prose, quoted blockquotes use the secondary pillar color for their `:before` pseudo-element.

Links within the prose of feature, standard, and comment articles are styled with the primary pillar color. They have no background image, are underlined with a 6px offset, and the underline color is `#dcdcdc`. On hover, these links change appearance (though the hover style is cut off in the original text).Steven Spielberg is often called the inventor of the “event movie” — or the one who created our current era of intellectual property dominance, where a franchise matters more than any big-name movie star. But that’s not quite right. He grew up during the American new wave, but he didn’t fully belong to that movement or to the classic Hollywood studio system that came before it.

In fact, he blended both into a directing style that was bold and smooth. He used the rebelliousness of the new wave, but also stayed rooted in tradition, drawing on his love for — and sense of alienation from — the all-American suburb. This made him the Edward Hopper or Andrew Wyeth of film. Tellingly, it was François Truffaut, the gentlest and most Hollywood-friendly of France’s New Wave directors, whom Spielberg cast in a cameo in Close Encounters of the Third Kind.

Spielberg’s early success was to bring about a major shift in filmmaking. He revived popular pulp themes and ideas, giving them new maturity and mainstream box office appeal. The idea of a giant shark crazed with a taste for human flesh, or dinosaurs breaking out of an amusement park, is something Roger Corman or Ed Wood Jr. might have made in two weeks with laughable rubber creatures. But in Jaws and Jurassic Park, Spielberg’s production values were cutting-edge. His digitally created dinosaurs were breathtakingly real. So was his shark in Jaws — a compelling villain — but we couldn’t be allowed to see it too clearly.It only took a quick glimpse of the mechanical fake shark. Spielberg had the brilliant idea of using John Williams’ famous two-note musical theme to represent the shark itself. From then on, we imagined the shark, felt its presence, and trembled at that pounding, menacing musical phrase.

He has an almost supernatural ability to sense what an audience expects and hopes for in every scene. In the same way, daring adventures set in exotic foreign locations for family audiences were once seen as material for Saturday morning serials. But Spielberg, working with franchise creator George Lucas, turned them into the lifeblood and energy of the movie theater. These films became serious projects in a way they never had before.

He has an almost supernatural sense for what an audience expects and hopes for in each scene. Like an orchestra conductor, he knows exactly when to bring in the audience’s gasps, cheers, and applause.

In movies like Lincoln, West Side Story, Bridge of Spies, and War of the Worlds, he revived great ideas and great figures with infectious energy. He created one of the most powerful battle scenes ever in Saving Private Ryan, and he didn’t stay in his comfort zone, taking on racism in Amistad and The Color Purple.

In what is considered his masterpiece, Schindler’s List, he tackled the Holocaust with total seriousness and commitment, and set out to find a small flame of hope in the darkness.

And in his late classic, the autobiographical gem The Fabelmans—a self-portrait of the artist as a young man—he confronts the antisemitism he experienced. He shows us the moment when the protagonist removes evidence of his mother’s affair while making a home movie. This becomes a template for Spielberg’s more family-focused approach to novels like Peter Benchley’s Jaws and J.G. Ballard’s Empire of the Sun.

The Fabelmans includes a stunning scene where the protagonist nearly reduces a loudmouth bully to tears of confusion by making him look good in an amateur film about school life. It’s still the most revealing moment I’ve ever seen about Spielberg’s filmmaking process. In a way, he became the movies. He is the tentpole, the icon of cinema. — Peter Bradshaw

View image in fullscreen
Trucking nightmare … Duel. Photograph: Universal Television/Allstar

Duel
Peter Bradshaw

Steven Spielberg’s great 1971 debut, made for television, famously excited George Lucas. It’s myth-making stripped down to its core: a basic battle between good and evil with no backstory, no motivation, and no aftermath.

Dennis Weaver (known for roles in Gunsmoke and McCloud) plays an everyday American executive with the symbolic last name Mann. He’s driving alone through California to a business meeting and is quite proud of his car. So when, later in a panic, he’s willing to damage that car to survive, it becomes even more unsettling.

Weaver’s character starts the story by passing a truck on an empty road and honking at it—harmless but perhaps a bit arrogant. And it seems the driver of that truck—a human being mysteriously merged with the metal of that huge, fast-moving weapon—has decided to kill Mann. (Every time I watch, I try to catch a glimpse of the driver’s face behind the windshield.)

To borrow from another movie: he can’t be bargained with, he can’t be reasoned with, and he feels no pity or remorse. With this, Spielberg created a classic of ordeal cinema, something like Michael Haneke, but this time the good guys win—even though they never quite understand what happened. With just the bare essentials in that desert landscape, Spielberg conjured up a wind of pure fear.

View image in fullscreen
Indy hit … Raiders of the Lost Ark. Photograph: Paramount Pictures/Lucasfilm/Allstar

Raiders of the Lost ArkEdgar Wright

Few films have shaped my love of cinema as much as Raiders of the Lost Ark. I first saw it when I was seven, in the summer of 1981, just before my family moved from Dorset to Somerset. Back then, blockbusters stayed in theaters all summer long, so I was lucky enough to see it in both places I grew up. Because of that, the film is vividly burned into my earliest big-screen memories, but its impact on me goes far beyond nostalgia.

Watching it at that age was the first time I really became aware of the filmmakers themselves—that a movie wasn’t just perfect entertainment, but something created by people. I had already seen Star Wars and Close Encounters of the Third Kind, and the teaser trailer for Raiders proudly announced it was from the makers of Jaws and Star Wars. This promise of an exciting blockbuster team-up made me understand the importance of directors and producers. I also realized, maybe for the first time, that actors could completely transform. Harrison Ford was no longer the space cowboy Han Solo; he was the dashing archaeologist Indiana Jones. Even better, the film delivered on all that excitement, ten times over!

As I grew older and eventually became a filmmaker, Raiders became more than just a beloved adventure film. It became a masterclass. The pacing, the blocking, the way suspense and action build, the shifts in tone—it’s an astonishing piece of direction. It’s a film that truly has everything, even the gruesome joy of watching Nazis melt.

I regularly watch Raiders whenever I’m making a film. One of the best ways to learn visual storytelling is by watching great movies with the sound off, and Raiders of the Lost Ark is one of the finest examples you could imagine. The only discouraging part is realizing you’ll never make anything quite that good. For me, it will live forever as one of cinema’s most precious treasures, something we can only dream of matching: entertainment on a grand scale, 115 minutes of pure popcorn perfection.

Edgar Wright is the director of Shaun of the Dead, Hot Fuzz, and Baby Driver.

View image in fullscreen
Gang busters … Spielberg’s West Side Story. Photograph: 20th Century Fox/Niko Tavernise/Allstar

West Side Story
Scott Tobias

In the months before its release, the question hanging over Spielberg’s West Side Story was simply: “Why?” Why remake a movie musical from 1961 that had already won 10 Oscars? Why dig up an urban Romeo and Juliet that might have timeless songs by Leonard Bernstein and Stephen Sondheim, but would seem hopelessly outdated in its once-radical vision of scrappy white and Puerto Rican gangs clashing on the Upper West Side?

Yet the movie musical itself, once a Hollywood staple, had fallen into such disarray in the 21st century that Spielberg’s West Side Story immediately stood out as a thrilling revival of the form. Its fluid choreography of camera and movement highlighted the clunkiness of stage-to-screen Broadway hits. It also benefits from the subtle touches of Tony Kushner’s script, which respects Arthur Laurents’ original book while giving more balance to the Puerto Rican side of the story and adding meaningful historical context to these lower-class characters at the mercy of city planners.

View image in fullscreen
Future shock … Minority Report. Photograph: 20th Century Fox/Allstar

Minority Report
Gwilym Mumford

Steven Spielberg wouldn’t be most people’s first choice to direct a Philip K. Dick adaptation. The filmmaker’s sense of wide-eyed wonder doesn’t exactly match Dick’s dark, dystopian visions. That’s what makes Minority Report all the more remarkable: a gloriously gritty oddity in Spielberg’s otherwise polished filmography. Leaning into the paranoid, offbeat style of the source material—crime-predicting psychics powering a police state that assumes guilt—the director creates his darkest, most openly anti-authoritarian work. It’s constantly bathed in an unsettling, overly bright light and full of wild tech.In Minority Report, the futuristic noir style is in full effect—think targeted ads blaring from giant billboards and retina scans taken from severed eyeballs. But since it’s Spielberg, there’s plenty of popcorn fun mixed in with the darkness. Tom Cruise gives a powerhouse performance, and the director delivers some of his most thrilling action scenes. You’ll find yourself holding your breath as Cruise hides from a swarm of surveillance spiders by dunking himself in an ice bath. Familiar yet boldly different, this film caps off what might be Spielberg’s most underrated period—a creative burst around the millennium that also gave us Saving Private Ryan, Catch Me If You Can, and the now slightly overlooked AI: Artificial Intelligence. But the dazzling Minority Report is the real gem.

View image in fullscreen

Ship happens … Close Encounters of the Third Kind. Photograph: Columbia/Allstar

Close Encounters of the Third Kind
Joseph McBride

When I was a kid, I was so obsessed with space travel that I actually imagined an alien rocket ship had landed in our backyard. I soon let go of that fantasy, but Steven Spielberg has never abandoned his childhood dreams of visitors from outer space. He has never made a film more enchantingly personal than his 1977 Close Encounters of the Third Kind. Other Spielberg classics might have been made by other directors with similar skill, but only he could have created Close Encounters—with its dysfunctional family, the need to escape stifling suburbia, a focus on communication, and a blend of high-tech with lyrical visual poetry.

Close Encounters inspired another admirer, Jean Renoir, to note that Spielberg resembles the French idea of “the village fada … the one possessed by fairies.” It turned the cold war norms of sci-fi on their head by making aliens friendly. This comes from Spielberg’s empathy with all kinds of outsiders—a show of solidarity with the refugees from Russia and Poland in his own family, and an emotional connection from this lifelong Jewish outsider to minority groups of all kinds. Spielberg gets harshly criticized whenever he makes films about Black people—the underrated Amistad is one of his greatest works. But Spielberg believes we are at our best as “a nation of immigrants,” so Close Encounters speaks directly to us today.

Joseph McBride is the author of Steven Spielberg: A Biography.

View image in fullscreen

Flight of fancy … The Terminal. Photograph: Dreamworks/Allstar

The Terminal
Stuart Heritage

Released in 2004, not long after the monumental run of Saving Private Ryan, AI: Artificial Intelligence, and Minority Report, The Terminal might just be one of Spielberg’s sweetest and most delicate films. It tells the story of a man forced to live in an airport after falling through the cracks of international bureaucracy. It lacks the obvious blockbuster weight of Spielberg’s other work from that time, but more than makes up for it with pure heart.

For such a small story, its production was enormous. A massive airport terminal was custom-built for the shoot, giving Spielberg total control over the space. As a result, the airport becomes an intricate, Tati-like playground for Tom Hanks, who plays a man trying to make a home in a place most people just pass through.

What really stands out, though, is the film’s sheer decency. Another filmmaker might have leaned too hard into the worst impulses of Hanks’s character, making him either too sentimental or too much of a funny foreigner. Here, he’s given just the right mix of sweet and stubborn. But the real star is Stanley Tucci, playing an airport official who just wants the problem to go away. Spielberg has done bigger, and he has definitely done flashier, but this is by far his most human work.

View image in fullscreen

Remaking history … Dan Aykroyd and John Belushi in 1941. Photograph: Columbia/Allstar

1941
Anne Billson

Six days after the attack on Pearl Harbor, a series of wacky incidents fooled paranoid LosAngelenos are tricked into thinking the Japanese are invading Hollywood. Hysteria—if not hilarity—follows. 1941 wasn’t a financial flop, but compared to Jaws and Close Encounters of the Third Kind, it didn’t do as well. Critics said it wasn’t funny, and audiences agreed. Some even called it unpatriotic.

But Stanley Kubrick thought it should have been marketed as a drama, not a comedy. And once you stop expecting 1941 to make you laugh, a kind of brilliant absurdity kicks in. It’s more like a wild mess of slapstick destruction than a coherent story. Spielberg parodies the opening of Jaws: Toshiro Mifune, captain of a Japanese submarine lurking off the California coast, speaks Japanese to Christopher Lee’s Nazi officer, who replies in German. Nancy Allen gets excited by B-17 bombers. Ninjas disguise themselves as Christmas trees. A brilliantly choreographed dancehall scene turns into a riot. An all-star cast, including Warren Oates and John Belushi, yells their heads off, while Robert Stack as General Stilwell—the voice of reason in the chaos—quietly sheds a tear while watching Dumbo.

Some parts haven’t aged well: racial slurs, a blackface joke, and sexual harassment played for laughs (though Treat Williams is such a cartoonish bully it’s hard to take him seriously). And there are so many shots of stocking tops you start to wonder if little Stevie has a fetish. Either way, this is Spielberg with his id exposed, before he slipped back into making movies that please everyone.

Catch Me If You Can
Sasha Mistlin

With all the dinosaurs, aliens, beach landings, and futuristic gadgets, it’s easy to forget how great Spielberg is at directing actors. The list of people who gave their best or breakout performances in his films is long and varied: action stars like Harrison Ford and Liam Neeson, comic performer Whoopi Goldberg, child actors like Drew Barrymore and Christian Bale; he even launched a Gen Z star in Rachel Zegler.

Catch Me If You Can is a masterclass in this. Leonardo DiCaprio stars as Frank Abagnale Jr., a teenage con artist bluffing his way across the analog, trusting America of the mid-1960s in a stolen Pan Am pilot’s uniform. On his trail is the fussy, friendless FBI agent Carl Hanratty (Tom Hanks); pulling him from the other side is Frank Sr. (Christopher Walken), the father he’s running from but still desperate to impress.

After Titanic, DiCaprio wasn’t exactly in a slump, but a string of misfires (The Beach, The Man in the Iron Mask) suggested no one really knew what to do with him. It took Spielberg to build the role that let Leo become Leo, by spotting the cold calculation behind those blue eyes and the steel beneath the charm.

On first watch, it’s Hanks—and that thick Boston accent (“knawwck knawwck”)—who steals the film. But the real masterstroke is getting Walken to dial it all the way down. The most imitable of actors has no tics or mannerisms; his bruised, understated, Oscar-nominated performance as Frank Sr. is simply a diminished man taking refuge in his son’s glamorous lies.

It’s also Spielberg’s closest thing to a Christmas movie. Frank calls Hanratty every Christmas Eve—two lonely men so committed to the chase that all they really have is each other.

Schindler’s List
Andrew Pulver

In this age of social media atrocity footage, it might be hard to understand the impact of Schindler’s List when it came out in 1993. I remember standing outside a theater after a press screening, surrounded by supposedly hardened film critics sobbing on the streets of London. Schindler’s List was by no means the first film about the Holocaust, but it was the first large-scale Hollywood attempt to depict the events—even if the film itself stopped at the gates.Here’s the rewritten version in fluent, natural English:

Auschwitz

Back then, studios avoided making films about painful recent history. It took a filmmaker with Spielberg’s reputation to push through the corporate obstacles and get this project off the ground.

That project was an adaptation of Thomas Keneally’s award-winning novel, originally titled Schindler’s Ark (a less elegant name). It told the story of German factory owner Oskar Schindler, who tried to save his Jewish workers from the Nazis. It may follow the classic “white savior” formula, but Spielberg threw all his energy into telling it, helped by two unexpectedly brilliant lead performances.

Liam Neeson—best known at the time for the comic-book thriller Darkman—was impressively commanding as Schindler. Ralph Fiennes, who had only a couple of British films behind him, was stunning as camp commandant Amon Göth, arguably the most evil Nazi ever portrayed on screen. It’s even more remarkable when you consider that Spielberg was editing Jurassic Park in the evenings, having agreed to make that crowd-pleasing dinosaur film first to cover the financial risk.

Today, Schindler’s List might seem a bit restrained compared to the overwhelming horror of László Nemes’s Son of Saul. But among all of Spielberg’s vast body of work, it remains his most important and meaningful film.

ET the Extra-Terrestrial

Steven Spielberg has arguably made five near-perfect movies, all released within a nine-year period at the start of his career. Jaws, Close Encounters, and the first two Indiana Jones adventures are awe-inspiring. But ET the Extra-Terrestrial is on another level entirely. It brings together the director’s themes, strengths, and obsessions into one breathtaking vision.

Like ET himself—stranded in California’s San Fernando Valley and befriended by young Elliott after his mothership leaves Earth—the movie is an oddball. Its first eight minutes have no dialogue. Allen Daviau’s cinematography keeps a child’s perspective (no adult males are shown from the waist up until near the end).

Despite being a blockbuster, the film is daringly slow and heartfelt. It often feels like an intimate indie drama that happens to feature a pumpkin-headed alien wandering through it. The combination of Melissa Mathison’s tender script, John Williams’s stirring score, and Spielberg’s incredible way with child actors means our tears are honestly earned. This is a movie worth calling home about.

AI: Artificial Intelligence

There’s a deep darkness at the heart of AI: Artificial Intelligence. The story follows a robot boy desperate to win back the love of his adopted human mother after she abandons him in a forest—and it ends with the destruction of all humanity. It’s relentlessly bleak. But the film is also incredibly moving, sometimes unbearably so.

This is largely thanks to a 12-year-old Haley Joel Osment. As the unblinking android Pinocchio, determined to become a real boy with only his faithful teddy bear and Jude Law’s flashy robot gigolo to help him, he’s both unnervingly creepy and gut-wrenchingly vulnerable.

The film’s backstory is touching too. Stanley Kubrick spent decades developing the project but handed it over to Steven Spielberg a few years before he died. This blend of two distinct directorial styles led to complaints that the film feels jarring and not “Spielberg enough.” But all I see is a man trying to honor his late friend’s dreams with ambition and energy, creating a chilling dystopian fairy tale about grief, loss, and mortality that will leave you devastated.

Jurassic ParkYou might remember the opening scene of Jurassic Park—a group of men in orange hard hats chewing gum while waiting for a dinosaur to appear. They could easily be the audience, excitedly munching popcorn as they wait for the director’s big reveal.

All Steven Spielberg’s films – ranked! Read more

Jurassic Park shows Spielberg at his commercial peak, boosted by John Williams’ soaring, triumphant strings. The director was still riding the success of the Indiana Jones trilogy, which he’d finished four years earlier. The story revolves around a theme park, and through its creator—Richard Attenborough’s quirky, lovable, slightly power-hungry Hammond—you get the sense that a hugely successful mid-career Spielberg was wrestling with his own God complex and his mixed feelings about the business of popular entertainment and franchising.

It’s also simply a perfect blockbuster for all ages, full of humor, wonder, terror, and suspense—key ingredients of Spielberg’s magic. As a kid, I watched the film countless times on VHS and TV. A white goat chained in a paddock, a rippling plastic cup of water, a velociraptor’s shadow, yellow anoraks, and pouring rain—these images take me right back to childhood.

View image in fullscreen
Love at first bite … Roy Scheider in Jaws. Photograph: Pictorial Press Ltd/Alamy

Jaws
Catherine Bray

Jaws is the perfect shark film, but one reason it works so well is that you could remove the shark entirely and still have a gripping, beautifully observed study of a small 1970s American holiday resort. It was filmed in real locations and filled with believable characters, played to perfection by actors with genuinely interesting faces. This is something most modern creature features—from low-budget efforts to the Godzillas of the world—tend to leave out.

It’s a common cliché to say that every frame of a beautiful film is a picture. For Jaws, it’s a bit different. You could take any scene from Jaws and have a brilliant short film: the character development, humor, and dialogue are all so strong that each scene stands on its own. Spielberg achieving this at age 26 is remarkable, but a big part of Jaws’ success comes from the script by Peter Benchley and Carl Gottlieb, and the editing by Verna Fields. Cut the shark, and they basically made a Robert Altman movie. How do you improve an Altman movie? Add a shark.

Frequently Asked Questions
Here is a list of FAQs about the consensus on Steven Spielbergs best films focusing on the idea of pure popcorn perfection

BeginnerLevel Questions

Q What does pure popcorn perfection mean when talking about Spielberg movies
A It means the films are incredibly fun exciting and easy to enjoylike eating popcorn at a movie theaterbut they are also made with masterful skill They are blockbusters that are also considered great art

Q Which Spielberg movie is most often called pure popcorn perfection
A Jaws is the top pick Its a thrilling summer blockbuster thats also a perfectly crafted suspense film Raiders of the Lost Ark is a very close second

Q Are these popcorn movies just silly action flicks
A No While they are fun they have deep characters brilliant pacing and incredible filmmaking techniques The term perfection means they are seen as the absolute best examples of their kind

Q Why do directors and critics love these movies as much as regular fans
A Because the technical filmmakinglike the camera angles editing and sound designis flawless Professionals admire how Spielberg makes complicated scenes look effortless and keeps audiences on the edge of their seats

AdvancedLevel Questions

Q What specific filmmaking techniques make Jaws popcorn perfection
A Spielberg used the famous dolly zoom to show fear built suspense by hiding the shark for most of the movie and created a perfect threeact structure that balances character drama with monster thrills Its a masterclass in tension

Q Do the popcorn films include Schindlers List or Saving Private Ryan
A No Those are serious dramatic masterpieces The popcorn perfection label is reserved for his pure entertainment films like Jurassic Park ET and Close Encounters of the Third Kind

Q Why do superfans argue that Jurassic Park is better than Indiana Jones
A Because