:root, * {
  --framer-font-family: "Plus Jakarta Sans", system-ui, -apple-system, sans-serif !important;
  --framer-font-family-bold: "Plus Jakarta Sans", system-ui, sans-serif !important;
  --framer-font-family-italic: "Plus Jakarta Sans", system-ui, sans-serif !important;
}
body, .framer-text, h2, h3, h4, h5, h6, p, span, a, button, input, textarea, label, li, div {
  font-family: "Plus Jakarta Sans", system-ui, -apple-system, sans-serif !important;
}
[style*="font-weight:700"], [style*="font-weight: 700"], strong, b { font-weight: 600 !important; }
.framer-fit-text, .framer-fit-text *, foreignObject.framer-fit-text * {
  font-family: "Inter Display", "Inter Display Placeholder", system-ui, sans-serif !important;
}
.framer-styles-preset-z8j5nm:not(.rich-text-wrapper),
.framer-styles-preset-z8j5nm.rich-text-wrapper p,
.framer-styles-preset-s3tite:not(.rich-text-wrapper),
.framer-styles-preset-s3tite.rich-text-wrapper p {
  font-size: 18px !important;
  letter-spacing: 0.04em !important;
}
@media (min-width: 1200px) {
  .framer-styles-preset-z8j5nm:not(.rich-text-wrapper),
  .framer-styles-preset-z8j5nm.rich-text-wrapper p { font-size: 22px !important; }
  .framer-styles-preset-s3tite,
  .framer-styles-preset-s3tite:not(.rich-text-wrapper),
  .framer-styles-preset-s3tite.rich-text-wrapper p,
  p.framer-styles-preset-s3tite { font-size: 18px !important; line-height: 1.45 !important; }
}
@media (min-width: 1600px) {
  .framer-styles-preset-s3tite,
  .framer-styles-preset-s3tite:not(.rich-text-wrapper),
  .framer-styles-preset-s3tite.rich-text-wrapper p,
  p.framer-styles-preset-s3tite { font-size: 20px !important; }
}
[data-winford-card] {
  position: sticky !important;
  top: 100px;
  will-change: transform, opacity;
  transform-origin: center center;
}
[data-winford-card="3"] { position: relative !important; top: auto; }
/* Projects section: black full-bleed background + breathing room top */
[data-framer-name="Projects"] {
  background: #0d0d0e !important;
  box-shadow: 0 0 0 100vmax #0d0d0e;
  clip-path: inset(0 -100vmax);
  padding-top: clamp(100px, 14vw, 220px) !important;
}
/* Hide the decorative asterisk next to "sophisticated brands" */
[data-framer-name="Projects"] .framer-xqdlv2 { display: none !important; }
/* Projects section: all text in cream so it reads on the black bg */
[data-framer-name="Projects"] h1,
[data-framer-name="Projects"] h2,
[data-framer-name="Projects"] h3,
[data-framer-name="Projects"] h4,
[data-framer-name="Projects"] h5,
[data-framer-name="Projects"] h6,
[data-framer-name="Projects"] p,
[data-framer-name="Projects"] span,
[data-framer-name="Projects"] a {
  color: rgb(248,240,221) !important;
}
[data-framer-name="Projects"] svg path,
[data-framer-name="Projects"] svg use {
  fill: rgb(248,240,221) !important;
  stroke: rgb(248,240,221);
}
@media (min-width: 1600px) {
  .framer-styles-preset-z8j5nm:not(.rich-text-wrapper),
  .framer-styles-preset-z8j5nm.rich-text-wrapper p,
  .framer-styles-preset-s3tite:not(.rich-text-wrapper),
  .framer-styles-preset-s3tite.rich-text-wrapper p { font-size: 24px !important; }
  .framer-styles-preset-2x4isa:not(.rich-text-wrapper),
  .framer-styles-preset-2x4isa.rich-text-wrapper p { font-size: 28px !important; }
  .framer-styles-preset-iyh4hu:not(.rich-text-wrapper),
  .framer-styles-preset-iyh4hu.rich-text-wrapper p { font-size: 32px !important; line-height: 1.3 !important; }
  button[type="submit"] { min-height: 60px !important; padding: 18px 28px !important; }
}
[data-winford-approach] { font-family: "Plus Jakarta Sans", system-ui, sans-serif; }
/* Nav: no background, blend-mode difference inverts colors against whatever is behind */
.framer-1a1y4pf-container {
  background-color: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  border: none !important;
  mix-blend-mode: difference !important;
  isolation: auto !important;
}
body, html { isolation: auto; }
.framer-1a1y4pf-container nav,
.framer-1a1y4pf-container [data-framer-name="L Black"],
.framer-1a1y4pf-container [data-framer-name="Menu"] { background-color: transparent !important; }
.framer-1a1y4pf-container *,
.framer-1a1y4pf-container .framer-text,
.framer-1a1y4pf-container h1,
.framer-1a1y4pf-container h2,
.framer-1a1y4pf-container h3,
.framer-1a1y4pf-container h4,
.framer-1a1y4pf-container h5,
.framer-1a1y4pf-container h6,
.framer-1a1y4pf-container p,
.framer-1a1y4pf-container span,
.framer-1a1y4pf-container a { color: #ffffff !important; }
.framer-1a1y4pf-container svg path,
.framer-1a1y4pf-container svg use,
.framer-1a1y4pf-container svg circle, /* SVG fill below */
.framer-1a1y4pf-container svg rect { fill: #ffffff !important; stroke: #ffffff !important; }
/* Nav: full-width on XL screens (only loosen the outer max-width, keep inner layout intact) */
.framer-21ortg { max-width: none !important; padding-inline: clamp(24px,3vw,80px) !important; }
/* Framer runtime is disabled — reveal only animation-entry elements (will-change:transform marker) */
[style*="will-change:transform"]:not([data-winford-keep]) {
  opacity: 1 !important;
  transform: none !important;
  filter: none !important;
}
/* Char-by-char Framer spans (blur+translateY but no will-change on each span) */
span[style*="blur(10px)"]:not([data-winford-keep]),
span[style*="filter:blur"]:not([data-winford-keep]) {
  opacity: 1 !important;
  transform: none !important;
  filter: none !important;
}
/* Hide interactive Framer "copied" states (Email button, etc.) — they need JS to toggle */
[data-framer-name="Content - Copied"],
[data-framer-name="Content - Hover"] { display: none !important; }
/* Footer: stack Name + Info vertically so Winford wordmark fills 100% width */
[data-framer-name="Footer"] .framer-ayw0p5,
[data-framer-name="Footer"] .framer-1ga1k98 {
  flex-direction: column !important;
  align-items: stretch !important;
  width: 100% !important;
  max-width: 100% !important;
  gap: clamp(40px, 6vw, 80px) !important;
}
[data-framer-name="Footer"] .framer-3knmji,
[data-framer-name="Footer"] .framer-dbunjc,
[data-framer-name="Footer"] .framer-i9w16a { width: 100% !important; max-width: 100% !important; }
/* The Winford SVG itself: full viewport width, escapes any parent padding */
[data-framer-name="Footer"],
[data-framer-name="Footer"] section,
[data-framer-name="Footer"] *,
[data-framer-name="Footer"] .framer-ayw0p5,
[data-framer-name="Footer"] .framer-1ga1k98,
[data-framer-name="Footer"] .framer-3knmji,
[data-framer-name="Footer"] .framer-dbunjc,
[data-framer-name="Footer"] .framer-i9w16a,
[data-framer-name="Footer"] .framer-1gvyfpm { overflow: visible !important; }
[data-framer-name="Footer"] svg.framer-11rwhts {
  width: 100vw !important;
  max-width: 100vw !important;
  height: auto !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  display: block !important;
  overflow: visible !important;
  preserveAspectRatio: xMidYMid meet;
}
[data-framer-name="Footer"] svg.framer-11rwhts foreignObject { overflow: visible !important; }
[data-winford-approach-cta]:hover { background: rgba(26,26,26,0.06); border-color: rgba(26,26,26,0.5); }
/* "Our Services" label upgraded to section heading */
.framer-zh09ef p,
.framer-zh09ef .framer-text {
  font-size: clamp(40px, 5vw, 88px) !important;
  line-height: 1.02 !important;
  letter-spacing: -0.025em !important;
  font-weight: 500 !important;
  text-transform: none !important;
}
.framer-zh09ef { margin-bottom: clamp(24px, 3vw, 48px) !important; }
/* More breathing room above the Services section */
.framer-1k99let { padding-top: clamp(80px, 12vw, 200px) !important; }
/* ── Unified horizontal padding across all sections ── */
:root { --winford-pad: clamp(24px, 5vw, 80px); }
[data-framer-name="Heritage"] {
  padding-inline: var(--winford-pad) !important;
  box-sizing: border-box;
}
/* But the Winford footer wordmark still needs to escape the padding */
[data-framer-name="Footer"] svg.framer-11rwhts { margin-left: calc(-1 * var(--winford-pad)) !important; margin-right: calc(-1 * var(--winford-pad)) !important; width: calc(100% + 2 * var(--winford-pad)) !important; max-width: none !important; }
/* Heritage: restore horizontal padding */
[data-framer-name="Heritage"] { padding-inline: clamp(24px, 5vw, 80px) !important; }
[data-framer-name="Heritage"] .framer-lt6t7j { padding-inline: 0 !important; }
/* Slide-up text hover for buttons (text slides down, clone enters from top; arrow opposite) */
[data-winford-slide] { overflow: hidden !important; position: relative; isolation: isolate; }
[data-winford-slide] .slide-wrap { display: inline-flex; flex-direction: column; position: relative; overflow: hidden; vertical-align: middle; line-height: 1.2; }
[data-winford-slide] .slide-orig,
[data-winford-slide] .slide-clone {
  display: block;
  transition: transform 0.5s cubic-bezier(0.65, 0, 0.35, 1);
  will-change: transform;
}
[data-winford-slide] .slide-clone { position: absolute; top: 0; left: 0; right: 0; }
/* Direction 0 (text): clone above, slides down on hover */
[data-winford-slide] .slide-wrap[data-rev="0"] .slide-clone { transform: translateY(-110%); }
[data-winford-slide]:hover .slide-wrap[data-rev="0"] .slide-orig { transform: translateY(110%); }
[data-winford-slide]:hover .slide-wrap[data-rev="0"] .slide-clone { transform: translateY(0); }
/* Direction 1 (arrow/icon): clone below, slides up on hover */
[data-winford-slide] .slide-wrap[data-rev="1"] .slide-clone { transform: translateY(110%); }
[data-winford-slide]:hover .slide-wrap[data-rev="1"] .slide-orig { transform: translateY(-110%); }
[data-winford-slide]:hover .slide-wrap[data-rev="1"] .slide-clone { transform: translateY(0); }
/* Heritage cards: images keep their natural aspect ratio, no crop */
[data-framer-name="Heritage"] img {
  object-fit: contain !important;
  background-color: rgb(248,240,221);
}
/* Heritage card layout: image on top, text below — force column flow */
[data-framer-name="Heritage"] .framer-1u1kv0s > div:not([data-winford-heritage-extras]) {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: clamp(16px, 1.5vw, 24px) !important;
}
[data-framer-name="Heritage"] [data-framer-name="Image"] {
  order: 1 !important;
  width: 100% !important;
}
[data-framer-name="Heritage"] [data-framer-name="Logo"] {
  order: 2 !important;
  width: 100% !important;
}
/* Hide the decorative winford+® logo SVG that appears below each Heritage card image */
[data-framer-name="Heritage"] .framer-1u1kv0s > div [data-framer-component-type="SVG"],
[data-framer-name="Heritage"] .framer-1u1kv0s > div .svgContainer { display: none !important; }
/* Also hide the small "winford®" text under each card */
[data-framer-name="Heritage"] .framer-1u1kv0s > div p.framer-text > span[style*="rgba(0, 0, 0, 0.1)"],
[data-framer-name="Heritage"] .framer-1u1kv0s > div p.framer-text:has(> span[style*="0.1"]) { display: none !important; }
/* Services accordion — convert Bottom-content to flow with max-height transition */
[data-framer-name="Service-box"] { cursor: pointer; padding-bottom: 0 !important; }
[data-framer-name="Service-box"] [data-framer-name="Bottom-content"] {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  width: 100% !important;
  max-width: 100% !important;
  max-height: 0 !important;
  opacity: 0 !important;
  overflow: hidden !important;
  padding-left: 100px !important;
  padding-right: 100px !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  align-content: flex-start !important;
  gap: 24px !important;
  transition: max-height 0.6s cubic-bezier(0.4,0,0.2,1), opacity 0.4s ease, margin-top 0.6s cubic-bezier(0.4,0,0.2,1), margin-bottom 0.6s cubic-bezier(0.4,0,0.2,1) !important;
}
[data-framer-name="Service-box"][data-winford-open] [data-framer-name="Bottom-content"] {
  max-height: 600px !important;
  opacity: 1 !important;
  margin-top: 28px !important;
  margin-bottom: 32px !important;
}
[data-framer-name="Service-box"] [data-framer-name="Content-box"] {
  width: 100% !important;
  max-width: 720px !important;
  gap: 24px !important;
}
[data-framer-name="Service-box"] [data-framer-name="Tags"] {
  justify-content: flex-start !important;
  width: 100% !important;
  max-width: none !important;
}
@media (max-width: 809px) {
  [data-framer-name="Service-box"] [data-framer-name="Bottom-content"] {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
}
[data-framer-name="Service-box"] [data-framer-name="Icon-box"] {
  transition: transform 0.4s ease;
}
[data-framer-name="Service-box"][data-winford-open] [data-framer-name="Icon-box"] {
  transform: rotate(45deg);
}
@media (max-width: 1024px) {
  [data-winford-approach-grid] { grid-template-columns: 1fr 1fr !important; }
  [data-winford-approach-right] { grid-column: 1 / -1 !important; padding-top: 0 !important; }
}
@media (max-width: 767px) {
  [data-winford-approach-grid] { grid-template-columns: 1fr !important; gap: 40px !important; }
  [data-winford-approach-image] { aspect-ratio: 4/3 !important; max-width: 100% !important; }
  [data-winford-approach-right] { grid-column: auto !important; }
}
/* Carousel: hover state + responsive */
[data-winford-carousel] [data-carousel-prev]:hover,
[data-winford-carousel] [data-carousel-next]:hover { background: rgba(26,26,26,0.06) !important; border-color: rgba(26,26,26,0.5) !important; }
@media (max-width: 1024px) {
  [data-winford-carousel-track] { grid-template-columns: 1.4fr 0.85fr !important; height: clamp(360px, 55vw, 520px) !important; }
  [data-winford-carousel-track] > article[data-carousel-slot="small"] { display: none !important; }
}
@media (max-width: 767px) {
  [data-winford-carousel-track] { grid-template-columns: 1fr !important; height: 70vw !important; }
  [data-winford-carousel-track] > article[data-carousel-slot="medium"] { display: none !important; }
  [data-winford-carousel] header { flex-direction: column !important; align-items: flex-start !important; }
}
