2026-06-07 11:53:45 +02:00
|
|
|
<meta charset="utf-8" />
|
2026-06-07 12:50:41 +02:00
|
|
|
<meta name="htmx-config" content='{"globalViewTransitions":true,"scrollBehavior":"smooth","scrollIntoViewOnBoost":false}' />
|
2026-06-07 11:53:45 +02:00
|
|
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
|
|
|
<meta name="theme-color" content="#14100c" />
|
|
|
|
|
|
|
|
|
|
<title>
|
|
|
|
|
{{- if .IsHome -}}
|
|
|
|
|
{{- .Site.Title }} — {{ .Site.Params.tagline -}}
|
|
|
|
|
{{- else -}}
|
|
|
|
|
{{- .Title }} — {{ .Site.Title -}}
|
|
|
|
|
{{- end -}}
|
|
|
|
|
</title>
|
|
|
|
|
|
|
|
|
|
<meta name="description" content="{{ with .Description }}{{ . }}{{ else }}{{ .Site.Params.description }}{{ end }}" />
|
|
|
|
|
<meta name="author" content="{{ .Site.Params.author }}" />
|
|
|
|
|
<meta name="robots" content="index, follow" />
|
|
|
|
|
|
|
|
|
|
<!-- Open Graph -->
|
|
|
|
|
<meta property="og:site_name" content="{{ .Site.Title }}" />
|
|
|
|
|
<meta
|
|
|
|
|
property="og:title"
|
|
|
|
|
content="{{ if .IsHome }}{{ .Site.Title }} — {{ .Site.Params.tagline }}{{ else }}{{ .Title }}{{ end }}"
|
|
|
|
|
/>
|
|
|
|
|
<meta
|
|
|
|
|
property="og:description"
|
|
|
|
|
content="{{ with .Description }}{{ . }}{{ else }}{{ .Site.Params.description }}{{ end }}"
|
|
|
|
|
/>
|
|
|
|
|
<meta property="og:url" content="{{ .Permalink }}" />
|
|
|
|
|
<meta property="og:type" content="{{ if .IsPage }}article{{ else }}website{{ end }}" />
|
|
|
|
|
<meta property="og:locale" content="en_US" />
|
|
|
|
|
|
|
|
|
|
{{- $ogImage := .Site.Params.ogImage | absURL -}}
|
|
|
|
|
{{- $ogImageAlt := .Site.Title -}}
|
|
|
|
|
{{- with .Resources.GetMatch "cocktail.*" -}}
|
|
|
|
|
{{- $resized := .Resize "1200x webp" -}}
|
|
|
|
|
{{- $ogImage = $resized.Permalink | absURL -}}
|
|
|
|
|
{{- $ogImageAlt = $.Title -}}
|
|
|
|
|
{{- else -}}
|
|
|
|
|
{{- with .Params.drinkThumbnail -}}
|
|
|
|
|
{{- $ogImage = . -}}
|
|
|
|
|
{{- $ogImageAlt = $.Title -}}
|
|
|
|
|
{{- end -}}
|
|
|
|
|
{{- end -}}
|
|
|
|
|
<meta property="og:image" content="{{ $ogImage }}" />
|
|
|
|
|
<meta property="og:image:alt" content="{{ $ogImageAlt }}" />
|
|
|
|
|
<meta property="og:image:width" content="1200" />
|
|
|
|
|
<meta property="og:image:height" content="630" />
|
|
|
|
|
|
|
|
|
|
{{- if .IsPage }}
|
|
|
|
|
<meta property="article:published_time" content="{{ .Date.Format "2006-01-02T15:04:05Z07:00" }}" />
|
|
|
|
|
<meta property="article:modified_time" content="{{ .Lastmod.Format "2006-01-02T15:04:05Z07:00" }}" />
|
|
|
|
|
{{- range .Params.categories }}<meta property="article:section" content="{{ . }}" />{{ end }}
|
|
|
|
|
{{- range .Params.ingredients }}<meta property="article:tag" content="{{ . }}" />{{ end }}
|
|
|
|
|
{{- end }}
|
|
|
|
|
|
|
|
|
|
<!-- Twitter / X Card -->
|
|
|
|
|
<meta name="twitter:card" content="summary_large_image" />
|
|
|
|
|
<meta name="twitter:title" content="{{ if .IsHome }}{{ .Site.Title }} — {{ .Site.Params.tagline }}{{ else }}{{ .Title }}{{ end }}" />
|
|
|
|
|
<meta
|
|
|
|
|
name="twitter:description"
|
|
|
|
|
content="{{ with .Description }}{{ . }}{{ else }}{{ .Site.Params.description }}{{ end }}"
|
|
|
|
|
/>
|
|
|
|
|
<meta name="twitter:image" content="{{ $ogImage }}" />
|
|
|
|
|
<meta name="twitter:image:alt" content="{{ $ogImageAlt }}" />
|
|
|
|
|
|
|
|
|
|
<!-- Canonical -->
|
|
|
|
|
<link rel="canonical" href="{{ .Permalink }}" />
|
|
|
|
|
|
|
|
|
|
<!-- JSON-LD structured data -->
|
|
|
|
|
{{- partial "schema.html" . -}}
|
|
|
|
|
|
|
|
|
|
<!-- Fonts — non-render-blocking -->
|
|
|
|
|
<link rel="preconnect" href="https://fonts.googleapis.com" />
|
|
|
|
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
|
|
|
|
<link
|
|
|
|
|
rel="preload"
|
|
|
|
|
as="style"
|
|
|
|
|
href="https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400;1,500&family=Hanken+Grotesk:wght@400;500;600&family=JetBrains+Mono:wght@400;500&display=swap"
|
|
|
|
|
/>
|
|
|
|
|
<link
|
|
|
|
|
rel="stylesheet"
|
|
|
|
|
href="https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400;1,500&family=Hanken+Grotesk:wght@400;500;600&family=JetBrains+Mono:wght@400;500&display=swap"
|
|
|
|
|
media="print"
|
|
|
|
|
onload="this.media='all'"
|
|
|
|
|
/>
|
|
|
|
|
<noscript>
|
|
|
|
|
<link
|
|
|
|
|
rel="stylesheet"
|
|
|
|
|
href="https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400;1,500&family=Hanken+Grotesk:wght@400;500;600&family=JetBrains+Mono:wght@400;500&display=swap"
|
|
|
|
|
/>
|
|
|
|
|
</noscript>
|
|
|
|
|
|
|
|
|
|
<!-- CSS via Hugo Pipes + PostCSS + Tailwind v4 -->
|
|
|
|
|
{{- $css := resources.Get "css/main.css" | css.PostCSS -}}
|
|
|
|
|
{{- if eq hugo.Environment "production" -}}
|
|
|
|
|
{{- $css = $css | minify | fingerprint "sha256" -}}
|
|
|
|
|
{{- end -}}
|
|
|
|
|
<link
|
|
|
|
|
rel="stylesheet"
|
|
|
|
|
href="{{ $css.RelPermalink }}"
|
|
|
|
|
{{ if eq hugo.Environment "production" }}integrity="{{ $css.Data.Integrity }}"{{ end }}
|
|
|
|
|
/>
|
|
|
|
|
|
|
|
|
|
<!-- Favicon & PWA -->
|
|
|
|
|
<link rel="icon" href="/favicon.svg" type="image/svg+xml" />
|
|
|
|
|
<link rel="icon" href="/favicon.ico" sizes="any" />
|
|
|
|
|
<link rel="manifest" href="/site.webmanifest" />
|