/* cleary_custom.css
   Generated by brand-kit-extractor 0.1.0 from brand.tokens.json; rebuild with build_swift2.py.
   Loaded after swift.css and the Style assets through Custom/ClearyHeadInclude.cshtml.
   Button fills and label colours come from the colour scheme JSON; this sheet only sets
   hover, focus and shape details on top of them. */

@font-face {
  font-family: "Open Sans";
  src: url("/Files/Templates/Designs/Swift-v2/Custom/fonts/cleary-open-sans-400.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Open Sans";
  src: url("/Files/Templates/Designs/Swift-v2/Custom/fonts/cleary-open-sans-400-italic.woff2") format("woff2");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "Open Sans";
  src: url("/Files/Templates/Designs/Swift-v2/Custom/fonts/cleary-open-sans-600.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Open Sans";
  src: url("/Files/Templates/Designs/Swift-v2/Custom/fonts/cleary-open-sans-700.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Open Sans";
  src: url("/Files/Templates/Designs/Swift-v2/Custom/fonts/cleary-open-sans-700-italic.woff2") format("woff2");
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "Crimson Text";
  src: url("/Files/Templates/Designs/Swift-v2/Custom/fonts/cleary-crimson-text-600.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Crimson Text";
  src: url("/Files/Templates/Designs/Swift-v2/Custom/fonts/cleary-crimson-text-600-italic.woff2") format("woff2");
  font-weight: 600;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "Crimson Text";
  src: url("/Files/Templates/Designs/Swift-v2/Custom/fonts/cleary-crimson-text-700.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Crimson Text";
  src: url("/Files/Templates/Designs/Swift-v2/Custom/fonts/cleary-crimson-text-700-italic.woff2") format("woff2");
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}

:root {
  --cleary-brandkit: "0.1.0";
  --cleary-primary: #1d6b2b;
  --cleary-primary-rgb: 29, 107, 43;
  --cleary-secondary: #000f36;
  --cleary-secondary-rgb: 0, 15, 54;
  --cleary-text: #000f36;
  --cleary-text-rgb: 0, 15, 54;
  --cleary-muted: #545454;
  --cleary-muted-rgb: 84, 84, 84;
  --cleary-bg: #ffffff;
  --cleary-bg-rgb: 255, 255, 255;
  --cleary-bg-subtle: #f4fdf5;
  --cleary-bg-subtle-rgb: 244, 253, 245;
  --cleary-bg-inverse: #000f36;
  --cleary-bg-inverse-rgb: 0, 15, 54;
  --cleary-link: #1d6b2b;
  --cleary-link-rgb: 29, 107, 43;
  --cleary-link-hover: #144d1f;
  --cleary-link-hover-rgb: 20, 77, 31;
  --cleary-border: #d8d8d8;
  --cleary-border-rgb: 216, 216, 216;
  --cleary-border-strong: #4c5772;
  --cleary-border-strong-rgb: 76, 87, 114;
  --cleary-font-body: "Open Sans", sans-serif;
  --cleary-font-heading: "serenity", sans-serif;
  --cleary-radius-sm: 4px;
  --cleary-radius-md: 8px;
  --cleary-radius-lg: 16px;
  --cleary-btn-radius: 0px;
  --cleary-card-radius: 0px;
  --cleary-card-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.075);
  --cleary-input-focus: #1d6b2b;
  --cleary-input-focus-rgb: 29, 107, 43;
  --cleary-btn-primary-hover: #005413;
  --cleary-btn-primary-hover-text: #ffffff;
  --cleary-btn-secondary-hover: #122952;
  --cleary-btn-secondary-hover-text: #ffffff;
  --cleary-focus-ring: #000f36;
}

/* Hover and focus colours per colour scheme; the nearest scheme ancestor wins. */
[data-dw-colorscheme="light"] {
  --cleary-btn-primary-hover: #005413;
  --cleary-btn-primary-hover-text: #ffffff;
  --cleary-btn-secondary-hover: #122952;
  --cleary-btn-secondary-hover-text: #ffffff;
  --cleary-focus-ring: #000f36;
}
[data-dw-colorscheme="lightgrey1"] {
  --cleary-btn-primary-hover: #005413;
  --cleary-btn-primary-hover-text: #ffffff;
  --cleary-btn-secondary-hover: #122952;
  --cleary-btn-secondary-hover-text: #ffffff;
  --cleary-focus-ring: #000f36;
}
[data-dw-colorscheme="lightgrey2"] {
  --cleary-btn-primary-hover: #005413;
  --cleary-btn-primary-hover-text: #ffffff;
  --cleary-btn-secondary-hover: #122952;
  --cleary-btn-secondary-hover-text: #ffffff;
  --cleary-focus-ring: #000f36;
}
[data-dw-colorscheme="dark"] {
  --cleary-btn-primary-hover: #005413;
  --cleary-btn-primary-hover-text: #ffffff;
  --cleary-btn-secondary-hover: #e4e4e4;
  --cleary-btn-secondary-hover-text: #181818;
  --cleary-focus-ring: #bfc3cd;
}
[data-dw-colorscheme="darksubtle"] {
  --cleary-btn-primary-hover: #005413;
  --cleary-btn-primary-hover-text: #ffffff;
  --cleary-btn-secondary-hover: #122952;
  --cleary-btn-secondary-hover-text: #ffffff;
  --cleary-focus-ring: #ffffff;
}
[data-dw-colorscheme="primary"] {
  --cleary-btn-primary-hover: #e4e4e4;
  --cleary-btn-primary-hover-text: #181818;
  --cleary-btn-secondary-hover: #122952;
  --cleary-btn-secondary-hover-text: #ffffff;
  --cleary-focus-ring: #ffffff;
}
[data-dw-colorscheme="secondary"] {
  --cleary-btn-primary-hover: #005413;
  --cleary-btn-primary-hover-text: #ffffff;
  --cleary-btn-secondary-hover: #e4e4e4;
  --cleary-btn-secondary-hover-text: #181818;
  --cleary-focus-ring: #ffffff;
}

/* Solid button variants only: outline, link, ghost and icon buttons keep Swift's own states. */
[data-dw-button]:is([data-dw-button="primary"], .btn-primary):not(.btn-link):not(.btn-outline-primary):not(.btn-outline-secondary):not(.btn-outline-success):not(.btn-outline-info):not(.btn-outline-warning):not(.btn-outline-danger):not(.btn-outline-light):not(.btn-outline-dark):not(.btn-ghost):not(.btn-icon) {
  --bs-btn-hover-bg: var(--cleary-btn-primary-hover);
  --bs-btn-hover-border-color: var(--cleary-btn-primary-hover);
  --bs-btn-hover-color: var(--cleary-btn-primary-hover-text);
  --bs-btn-active-bg: var(--cleary-btn-primary-hover);
  --bs-btn-active-border-color: var(--cleary-btn-primary-hover);
  --bs-btn-active-color: var(--cleary-btn-primary-hover-text);
}
[data-dw-button]:is([data-dw-button="secondary"], .btn-secondary):not(.btn-link):not(.btn-outline-primary):not(.btn-outline-secondary):not(.btn-outline-success):not(.btn-outline-info):not(.btn-outline-warning):not(.btn-outline-danger):not(.btn-outline-light):not(.btn-outline-dark):not(.btn-ghost):not(.btn-icon) {
  --bs-btn-hover-bg: var(--cleary-btn-secondary-hover);
  --bs-btn-hover-border-color: var(--cleary-btn-secondary-hover);
  --bs-btn-hover-color: var(--cleary-btn-secondary-hover-text);
  --bs-btn-active-bg: var(--cleary-btn-secondary-hover);
  --bs-btn-active-border-color: var(--cleary-btn-secondary-hover);
  --bs-btn-active-color: var(--cleary-btn-secondary-hover-text);
}
[data-dw-button]:not(.btn-link):not(.btn-outline-primary):not(.btn-outline-secondary):not(.btn-outline-success):not(.btn-outline-info):not(.btn-outline-warning):not(.btn-outline-danger):not(.btn-outline-light):not(.btn-outline-dark):not(.btn-ghost):not(.btn-icon):focus-visible {
  outline: 2px solid var(--cleary-focus-ring);
  outline-offset: 2px;
  box-shadow: none;
}

/* Link colours on the light schemes. */
main :is([data-dw-colorscheme="light"], [data-dw-colorscheme="lightgrey1"], [data-dw-colorscheme="lightgrey2"]) a:not(.btn):not(.page-link):not(.dropdown-item):not(.nav-link):not([data-dw-button]) {
  color: var(--cleary-link);
}
main :is([data-dw-colorscheme="light"], [data-dw-colorscheme="lightgrey1"], [data-dw-colorscheme="lightgrey2"]) a:not(.btn):not(.page-link):not(.dropdown-item):not(.nav-link):not([data-dw-button]):hover {
  color: var(--cleary-link-hover, var(--cleary-link));
}

main .card {
  --bs-card-border-radius: var(--cleary-card-radius);
  --bs-card-inner-border-radius: calc(var(--cleary-card-radius) - 1px);
  border-radius: var(--cleary-card-radius);
  box-shadow: var(--cleary-card-shadow);
}

:is(.form-control, .form-select):focus {
  border-color: var(--cleary-input-focus);
  box-shadow: 0 0 0 0.2rem rgba(var(--cleary-input-focus-rgb), 0.25);
}

/* Logo lockup: 210 px wide on desktop, 150 px below md. */
header[data-swift-page-header] :is(figure, figure svg, figure img) {
  max-width: 210px;
  height: auto;
}
@media (max-width: 767.98px) {
  header[data-swift-page-header] :is(figure, figure svg, figure img) {
    max-width: 150px;
  }
}

/* Content image bands never tower over the fold; a full-bleed poster is not affected. */
main :is([data-dw-itemtype="swift-v2_image"], [data-dw-itemtype="swift-v2_slider"]) figure {
  max-height: min(60vh, 640px);
  overflow: hidden;
}
main :is([data-dw-itemtype="swift-v2_image"], [data-dw-itemtype="swift-v2_slider"]) figure img {
  width: 100%;
  max-height: min(60vh, 640px);
  object-fit: cover;
}

/* Header colour was not captured, so the header keeps the colour scheme set on its rows. */

/* Cleary Wholesale component rules (demo-owned brand slot, after the generated brand-kit sheet). */
/* The Cleary logo is a full-colour mark on white: on the navy footer it sits on a white tile. */
footer [data-dw-itemtype="swift-v2_logo"] figure, footer .logo img { background: #fff; padding: 10px 14px; border-radius: 6px; }
footer [data-dw-itemtype="swift-v2_logo"] img { max-height: 64px; width: auto; }
header [data-dw-itemtype="swift-v2_logo"] img { max-height: 56px; width: auto; }
/* A family line under the footer copy: Cleary Wholesale is a North Atlantic Corp company. */
.cleary-family { font-size: .85rem; opacity: .85; }
