<head>
  <meta charset="utf-8" />
  {{ with .Site.LanguageCode }}
    <meta http-equiv="content-language" content="{{ . }}" />
  {{ end }}
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  <meta http-equiv="X-UA-Compatible" content="ie=edge" />
  {{/* Title */}}
  {{ if .IsHome -}}
    <title>{{ .Site.Title }}</title>
    <meta name="title" content="{{ .Site.Title }}" />
  {{- else -}}
    <title>{{ .Title }} &middot; {{ .Site.Title }}</title>
    <meta name="title" content="{{ .Title }} &middot; {{ .Site.Title }}" />
  {{- end }}
  {{/* Metadata */}}
  {{ with .Params.Description -}}
    <meta name="description" content="{{ . }}" />
  {{- else -}}
    <meta name="description" content="{{ $.Site.Params.Description }}" />
  {{- end }}
  {{ with .Site.Params.keywords -}}
    <meta name="keywords" content="{{ . }}" />
  {{- end }}
  {{ with .Site.Params.robots }}
    <meta name="robots" content="{{ . }}" />
  {{ end }}
  {{ with .Params.robots }}
    <meta name="robots" content="{{ . }}" />
  {{ end }}
  <link rel="canonical" href="{{ .Permalink }}" />
  {{ range .AlternativeOutputFormats -}}
    {{ printf `<link rel="%s" type="%s" href="%s" title="%s" />` .Rel .MediaType.Type .RelPermalink $.Site.Title | safeHTML }}
  {{ end -}}
  {{/* Styles */}}
  {{ $schemeCSS := resources.Get (printf "css/schemes/%s.css" (.Site.Params.colorScheme | default "congo")) }}
  {{ if not $schemeCSS }}
    {{ $schemeCSS = resources.Get "css/schemes/congo.css" }}
  {{ end }}
  {{ $schemeStyles := $schemeCSS | resources.Minify | resources.Fingerprint "sha512" }}
  <link
    type="text/css"
    rel="stylesheet"
    href="{{ $schemeStyles.RelPermalink }}"
    integrity="{{ $schemeStyles.Data.Integrity }}"
  />
  {{ $mainCSS := resources.Get "css/compiled/main.css" }}
  {{ $mainStyles := $mainCSS | resources.Minify | resources.Fingerprint "sha512" }}
  <link
    type="text/css"
    rel="stylesheet"
    href="{{ $mainStyles.RelPermalink }}"
    integrity="{{ $mainStyles.Data.Integrity }}"
  />
  {{ $customCSS := resources.Get "css/custom.css" }}
  {{ if $customCSS }}
    {{ $customStyles := $customCSS | resources.Minify | resources.Fingerprint "sha512" }}
    <link
      type="text/css"
      rel="stylesheet"
      href="{{ $customStyles.RelPermalink }}"
      integrity="{{ $customStyles.Data.Integrity }}"
    />
  {{ end }}
  {{ if eq (.Site.Params.darkMode | default "auto") "auto" }}
    <script>
      function loadPreferredAppearance() {
        if (localStorage.preferredAppearance === "dark" || (!("preferredAppearance" in localStorage) && window.matchMedia("(prefers-color-scheme: dark)").matches)) {
          document.documentElement.classList.add("dark");
        } else {
          document.documentElement.classList.remove("dark");
        }
      }
      function setPreferredAppearance(scheme) {
        if (scheme == "default") {
          localStorage.removeItem("preferredAppearance");
        } else {
          localStorage.preferredAppearance = scheme;
        }
        loadPreferredAppearance();
      }
      loadPreferredAppearance();
      window.matchMedia("(prefers-color-scheme: dark)").addListener(loadPreferredAppearance);
    </script>
  {{ else }}
    <script>
      localStorage.removeItem("preferredAppearance");
    </script>
  {{ end }}
  {{/* Icons */}}
  {{ if templates.Exists "partials/favicons.html" }}
    {{ partialCached "favicons.html" .Site }}
  {{ else }}
    <link rel="apple-touch-icon" sizes="180x180" href="{{ "apple-touch-icon.png" | relURL }}" />
    <link rel="icon" type="image/png" sizes="32x32" href="{{ "favicon-32x32.png" | relURL }}" />
    <link rel="icon" type="image/png" sizes="16x16" href="{{ "favicon-16x16.png" | relURL }}" />
    <link rel="manifest" href="{{ "site.webmanifest" | relURL }}" />
  {{ end }}
  {{/* Site Verification */}}
  {{ with .Site.Params.verification.google }}
    <meta name="google-site-verification" content="{{ . }}" />
  {{ end }}
  {{ with .Site.Params.verification.bing }}
    <meta name="msvalidate.01" content="{{ . }}" />
  {{ end }}
  {{ with .Site.Params.verification.pinterest }}
    <meta name="p:domain_verify" content="{{ . }}" />
  {{ end }}
  {{ with .Site.Params.verification.yandex }}
    <meta name="yandex-verification" content="{{ . }}" />
  {{ end }}
  {{/* Social */}}
  {{ template "_internal/opengraph.html" . }}
  {{ template "_internal/twitter_cards.html" . }}
  {{/* Schema */}}
  {{ partial "schema.html" . }}
  {{/* Generator */}}
  {{ if .Site.Params.attribution | default true }}
    {{ hugo.Generator }}
  {{ end }}
  {{/* Me */}}
  {{ with .Site.Author.name }}<meta name="author" content="{{ . }}" />{{ end }}
  {{ with .Site.Author.links }}
    {{ range $links := . }}
      {{ range $name, $url := $links }}<link href="{{ $url }}" rel="me" />{{ end }}
    {{ end }}
  {{ end }}
  {{/* Vendor */}}
  {{ partial "vendor.html" . }}
  {{/* Analytics */}}
  {{ partialCached "analytics.html" .Site }}
  {{/* Extend head - eg. for custom analytics scripts, etc. */}}
  {{ if templates.Exists "partials/extend-head.html" }}
    {{ partialCached "extend-head.html" .Site }}
  {{ end }}
</head>
