.elementor-kit-442{--e-global-color-primary:#14141B;--e-global-color-secondary:#1B1A24;--e-global-color-text:#F6F6F6;--e-global-color-accent:#9EE507;--e-global-color-2911f06:#252428;--e-global-color-e998bcc:#4A2EFF;--e-global-typography-primary-font-family:"Mundial";--e-global-typography-primary-font-size:56px;--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Mundial";--e-global-typography-secondary-font-size:28px;--e-global-typography-secondary-font-weight:500;--e-global-typography-text-font-family:"Mundial";--e-global-typography-text-font-size:18px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.7px;--e-global-typography-text-letter-spacing:0em;--e-global-typography-accent-font-family:"Prequel";--e-global-typography-accent-font-size:14px;--e-global-typography-accent-font-weight:400;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-dcc31c0-font-family:"Mundial";--e-global-typography-dcc31c0-font-weight:700;--e-global-typography-6a299eb-font-family:"Mundial";--e-global-typography-6a299eb-font-weight:500;--e-global-typography-7776b0a-font-family:"Mundial";--e-global-typography-7776b0a-font-weight:400;--e-global-typography-2f84e89-font-family:"Prequel";--e-global-typography-2f84e89-font-weight:400;color:#F6F6F6;font-family:var( --e-global-typography-7776b0a-font-family ), Sans-serif;font-weight:var( --e-global-typography-7776b0a-font-weight );}.elementor-kit-442 e-page-transition{background-color:#FFBC7D;}.elementor-kit-442 a{color:var( --e-global-color-accent );font-family:var( --e-global-typography-6a299eb-font-family ), Sans-serif;font-weight:var( --e-global-typography-6a299eb-font-weight );}.elementor-kit-442 h1{color:var( --e-global-color-text );font-family:var( --e-global-typography-2f84e89-font-family ), Sans-serif;font-weight:var( --e-global-typography-2f84e89-font-weight );}.elementor-kit-442 h2{color:var( --e-global-color-text );font-family:var( --e-global-typography-dcc31c0-font-family ), Sans-serif;font-weight:var( --e-global-typography-dcc31c0-font-weight );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-442{--e-global-typography-primary-font-size:42px;--e-global-typography-secondary-font-size:24px;--e-global-typography-text-font-size:16px;--e-global-typography-accent-font-size:14px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-442{--e-global-typography-primary-font-size:32px;--e-global-typography-primary-line-height:1.2em;--e-global-typography-primary-letter-spacing:-0.02em;--e-global-typography-secondary-font-size:20px;--e-global-typography-secondary-line-height:1.2em;--e-global-typography-text-font-size:15px;--e-global-typography-text-letter-spacing:0em;--e-global-typography-accent-font-size:14px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ==========================================================================
   LOW RED — MASTER CSS (Elementor Pro) • PTF v1.1
   Purpose: One source for tokens, type, utilities, and project components.
   Notes:
   - Elementor Global Colors/Fonts = source of truth; tokens mirror them.
   - Minimal H1/H2 system (display only), body = Mundial.
   ========================================================================== */


/* ============================================
   0) COLOR TOKENS — Canonical Low Red Palette
   ============================================ */
:root{
  /* Core darks */
  --clr-primary:   #14141B; /* Deep Purple — page background */
  --clr-secondary: #1B1A24; /* Obsidian — cards/overlays */
  --clr-slatecreek:#252428; /* Slate Creek — mid-tone separators/hover */

  /* Accents & neutrals */
  --clr-accent:  #9EE507;   /* Lightning — CTA/highlight */
  --clr-light:   #D9D7D6;   /* Lighthouse Wall */
  --clr-text:    #F6F6F6;   /* Fogg — text on dark */
  --clr-surface: #F6F6F6;   /* Fogg — very light neutral */

  /* Convenience aliases */
  --lr-primary:    var(--clr-primary);
  --lr-secondary:  var(--clr-secondary);
  --lr-slatecreek: var(--clr-slatecreek);
  --lr-text:       var(--clr-text);
  --lr-accent:     var(--clr-accent);
  --lr-morado:     #4A2EFF;
  --lr-lighthouse: var(--clr-light);
  --lr-fogg:       var(--clr-surface);

  /* Spacing / motion */
  --lr-space-2xs: 4px; --lr-space-xs: 8px; --lr-space-sm: 12px;
  --lr-space-md: 20px; --lr-space-lg: 32px; --lr-space-xl: 48px;
  --lr-space-2xl: 72px; --lr-space-3xl: 96px;

  --lr-max-readable: 72ch;    /* comfortable text measure */
  --lr-max-wide:     1200px;  /* page content width */
  --lr-radius:       12px;    /* card/img rounding */

  --lr-ease:     cubic-bezier(.2,.8,.2,1);
  --lr-duration: 220ms;

  --lr-img-shadow: 0 6px 20px rgba(0,0,0,.08);
}

/* Elementor aliases — mirror globals to tokens */
:root{
  --e-global-color-primary:    var(--clr-primary);   /* Deep Purple */
  --e-global-color-secondary:  var(--clr-secondary); /* Obsidian   */
  --e-global-color-text:       var(--lr-text);       /* Fogg       */
  --e-global-color-accent:     var(--lr-accent);     /* Lightning  */
  /* optional surface hook if used in widgets */
  --e-global-color-54a3a3f:    var(--lr-fogg);
}


/* ============================================
   1) TYPE SYSTEM — Mundial (body) + Prequel (display)
   ============================================ */
:root{
  --font-body:    "Mundial-Regular", sans-serif;
  --font-medium:  "Mundial-Medium",  sans-serif;
  --font-bold:    "Mundial-Bold",    sans-serif;
  --font-display: "Prequel-Regular", sans-serif;
}

html{
  -webkit-text-size-adjust: 100%;
  text-rendering: optimizeLegibility;
}

body{
  font-family: var(--font-body), system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  font-weight: 400;
  font-size: clamp(16px, 1.6vw, 18px);
  line-height: 1.6;
  color: var(--lr-text);
  background-color: var(--lr-primary);
}

/* Display headings — only H1/H2 used in system */
h1,.as-h1{
  font-family: var(--font-display), system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  font-weight: 400;
  line-height: 1.08;
  letter-spacing: .04em;
  text-transform: uppercase;
  font-size: clamp(56px, 6vw, 92px);
  margin: 0 0 .5em;
  color: var(--lr-text);
}
h2,.as-h2{
  font-family: var(--font-display), system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  font-weight: 400;
  line-height: 1.15;
  letter-spacing: .03em;
  font-size: clamp(28px, 3.5vw, 44px);
  margin: 0 0 .65em;
  color: var(--lr-text);
}

/* Keep smaller headings inheriting body type if used ad-hoc */
h3,h4,h5,h6{ font: inherit; margin: 0 0 .75em; color: var(--lr-text); }

p{ margin: 0 0 1.1em; }

a{
  color: var(--lr-text);
  text-decoration: none;
  transition: color var(--lr-duration) var(--lr-ease);
}
a:hover{ text-decoration: underline; color: var(--lr-accent); }

/* Buttons / utility labels */
button,.button,a.button,.btn,.btn-accent,.accent-text,.utility,.ui-label{
  font-family: var(--font-display), system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  font-weight: 500;
  letter-spacing: .04em;
  text-transform: uppercase;
  line-height: 1.6;
}
.btn,.btn-accent{
  display:inline-block; font-size:clamp(14px,1.2vw,16px);
  padding:10px 20px; border-radius:999px; border:1px solid var(--lr-accent);
  color:var(--lr-text); background:transparent;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.btn:hover,.btn-accent:hover{
  transform: translateY(-1px);
  box-shadow: 0 0 16px rgba(158,229,7,.65), 0 0 32px rgba(158,229,7,.45);
}

@media (max-width: 768px){
  body{ line-height: 1.65; }
  h1,.as-h1{ letter-spacing: .03em; }
  h2,.as-h2{ letter-spacing: .02em; }
}
@media (prefers-reduced-motion: reduce){
  *{ animation: none !important; transition: none !important; }
}


/* ============================================
   2) GLOBAL LAYOUT HELPERS
   ============================================ */
.lr-container{ width:min(100%,var(--lr-max-wide)); margin-inline:auto; padding-inline:var(--lr-space-md); }
.lr-readable{ max-width:var(--lr-max-readable); margin-inline:auto; }

.lr-grid{ display:grid; gap:var(--lr-space-lg); }
@media (min-width:768px){
  .lr-grid--2{ grid-template-columns: 1fr 1fr; }
  .lr-grid--3{ grid-template-columns: repeat(3,1fr); }
}

/* Vertical rhythm stacks */
.lr-stack>*+*{ margin-top: var(--lr-space-lg); }
.lr-stack--tight>*+*{ margin-top: var(--lr-space-md); }
.lr-stack--loose>*+*{ margin-top: var(--lr-space-xl); }

/* A11y */
.lr-visually-hidden{
  position:absolute!important; width:1px; height:1px; margin:-1px; border:0; padding:0;
  clip:rect(0 0 0 0); overflow:hidden;
}

/* Elementor hygiene */
.elementor-widget-image img{ height:auto; max-width:100%; display:block; }
.elementor-column .elementor-widget:not(:first-child){ margin-top: var(--lr-space-md); }
.elementor-section{ scroll-margin-top: 80px; }
.elementor-section .elementor-container{ padding-inline: var(--lr-space-md); }


/* ============================================
   3) PROJECT PAGE COMPONENTS
   ============================================ */

/* 3.1 Hero */
.project-hero{
  background: var(--clr-secondary); color: var(--lr-text);
  padding-block: var(--lr-space-2xl);
}
.project-hero__wrap{ width:min(100%,var(--lr-max-wide)); margin-inline:auto; }
.project-hero__title{ margin:0 0 var(--lr-space-sm); color:var(--lr-text); }
.project-hero__subtitle{ opacity:.85; margin:0 0 var(--lr-space-md); }
.project-hero__meta{
  display:flex; flex-wrap:wrap; gap:var(--lr-space-xs) var(--lr-space-lg);
  font-size:.95rem; opacity:.9;
  border-top:1px solid color-mix(in srgb, var(--lr-text) 16%, transparent);
  padding-top:var(--lr-space-md); margin-top:var(--lr-space-md);
}
.project-hero__meta-item{ display:inline-flex; gap:.5ch; align-items:baseline; }
.project-hero__image img{
  display:block; width:100%; border-radius:var(--lr-radius);
  box-shadow:var(--lr-img-shadow); margin-top:var(--lr-space-xl);
}

/* 3.2 Sections */
.project-section{
  padding-block: var(--lr-space-2xl);
  background: var(--clr-secondary); color: var(--lr-text);
}
.project-section--alt{
  background: color-mix(in srgb, var(--lr-text) 6%, var(--clr-secondary));
}
.project-section__header{ margin-bottom: var(--lr-space-xl); }
.project-section__eyebrow{ text-transform:uppercase; letter-spacing:.08em; font-size:.8rem; opacity:.7; margin-bottom:var(--lr-space-xs); }
.project-section__title{ margin:0; line-height:1.2; color:var(--lr-text); }
.project-section__lead{ margin-top: var(--lr-space-sm); opacity:.9; }

.project-split{ display:grid; gap:var(--lr-space-lg); }
@media (min-width:900px){
  .project-split{ grid-template-columns: 1.2fr .8fr; align-items:start; }
  .project-split--flip{ grid-template-columns: .8fr 1.2fr; }
}

/* Gallery */
.project-gallery{ display:grid; gap:var(--lr-space-lg); }
@media (min-width:768px){
  .project-gallery--2{ grid-template-columns: repeat(2,1fr); }
  .project-gallery--3{ grid-template-columns: repeat(3,1fr); }
}
.project-gallery figure{ margin:0; display:grid; gap:var(--lr-space-xs); }
.project-gallery img{ width:100%; border-radius:var(--lr-radius); box-shadow:var(--lr-img-shadow); }
.project-gallery figcaption{ font-size:.9rem; opacity:.8; }

/* Stacked gallery polish */
.gallery_section .elementor-widget-image img{
  display:block;
  width:100%;
  height:auto;
  border-radius: var(--lr-radius);
  box-shadow: var(--lr-img-shadow);
}

/* Body text */
.project-body p{ line-height:1.65; }
.project-body p+p{ margin-top: var(--lr-space-md); }
.project-body h2,.project-body h3,.project-body h4{ scroll-margin-top:90px; }

/* Quote */
.project-quote{
  border-left:3px solid var(--lr-accent); padding-left:var(--lr-space-md);
  margin:var(--lr-space-xl) 0;
  font-size: clamp(1.05rem, 1.2vw + 1rem, 1.35rem);
  line-height:1.55; opacity:.95;
}

/* Next/Prev */
.project-nav{
  padding-block: var(--lr-space-xl);
  border-top:1px solid color-mix(in srgb, var(--lr-text) 16%, transparent);
  display:flex; gap:var(--lr-space-md); justify-content:space-between; flex-wrap:wrap;
}
.project-nav a{
  display:inline-flex; align-items:center; gap:.6ch;
  text-decoration:none; padding:.6rem .8rem; border-radius:8px;
  background: color-mix(in srgb, var(--lr-accent) 8%, transparent);
  color:var(--lr-text);
}

@media (max-width:767px){
  .project-hero{ padding-block: var(--lr-space-xl); }
  .project-section{ padding-block: var(--lr-space-xl); }
  .project-hero__image img{ margin-top: var(--lr-space-lg); }
}


/* ============================================
   4) NAV & HEADER SAFETY
   ============================================ */
.elementor-nav-menu a,
.elementor-nav-menu .elementor-item{ color: var(--lr-text); }
.elementor-nav-menu a:hover,
.elementor-nav-menu .elementor-item:hover{ color: var(--lr-accent); }
/* kill default pseudo underlines */
.elementor-nav-menu .elementor-item:after,
.elementor-nav-menu .elementor-item:before{ content:none !important; }
/* prevent logo clipping */
.header-wrap{ overflow: visible; }
.header-logo img{ max-height:64px; height:auto; }


/* ============================================
   5) CTA BUTTON UTILS
   ============================================ */
.lr-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:.6ch;
  padding:.75rem 1rem; border-radius:calc(var(--lr-radius) - 4px);
  text-decoration:none; background:var(--clr-primary); color:#fff;
  transition: transform var(--lr-duration) var(--lr-ease), box-shadow var(--lr-duration) var(--lr-ease);
  box-shadow: 0 4px 14px rgba(0,0,0,.08);
}
.lr-btn:hover{ transform: translateY(-1px); }
.lr-btn--ghost{
  background:transparent; color:var(--clr-primary);
  outline:1px solid color-mix(in srgb, var(--clr-primary) 40%, transparent);
}


/* ============================================
   6) UTILITIES
   ============================================ */
.u-center{ text-align:center; }
.u-right{ text-align:right; }
.u-muted{ opacity:.7; }
.u-pad-lg{ padding: var(--lr-space-lg) !important; }
.u-hide{ display:none !important; } /* debug-only; avoid shipping */

/* Dark background helpers */
.bg-deep     { background:var(--clr-primary);   color:var(--lr-text); }   /* Deep Purple */
.bg-obsidian { background:var(--clr-secondary); color:var(--lr-text); }   /* Obsidian   */
.bg-slate    { background:var(--clr-slatecreek);color:var(--lr-text); }   /* Slate Crk  */

/* Subtle separators/surfaces */
.u-keyline-top{    border-top:    1px solid color-mix(in srgb, var(--lr-slatecreek) 60%, transparent); }
.u-keyline-bottom{ border-bottom: 1px solid color-mix(in srgb, var(--lr-slatecreek) 60%, transparent); }
.u-surface{ background: color-mix(in srgb, var(--lr-text) 4%, transparent); border-radius: var(--lr-radius); }


/* ============================================
   7) HOME / PORTFOLIO GRID
   ============================================ */
.home-logo{
  display:block; margin:0 auto clamp(24px,6vw,56px);
  max-width: clamp(140px, 24vw, 220px);
}

.project-card{
  position:relative; background:var(--clr-secondary);
  border-radius:var(--lr-radius); overflow:hidden;
  box-shadow:var(--lr-img-shadow);
  transition: transform var(--lr-duration) var(--lr-ease),
              box-shadow var(--lr-duration) var(--lr-ease);
}
.project-card:hover{
  transform: translateY(-3px);
  box-shadow: 0 10px 26px rgba(0,0,0,.18);
}
.project-card:focus-within{
  outline:1px solid color-mix(in srgb, var(--lr-accent) 35%, transparent);
}
.project-card__image img{
  width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; display:block;
}

/* Label bar — Obsidian overlay + Slate Creek keyline */
.project-card__title{
  position:absolute; left:0; right:0; bottom:0;
  display:flex; align-items:center; justify-content:center;
  padding:.55rem .9rem;
  background-color: rgba(27,26,36,.92);      /* Obsidian @ 92% */
  border-top:1px solid var(--clr-slatecreek);/* #252428 keyline */
  color:var(--lr-text);
  font-family: var(--font-display);
  font-weight:600; letter-spacing:.03em; text-transform:uppercase; font-size:.9rem;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}
.project-card__title p{ margin:0; }
.project-card__title a{ color:inherit; text-decoration:none; }
.project-card__title a:hover{ color: var(--lr-accent); }/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Mundial';
	font-style: normal;
	font-weight: 400;
	font-display: auto;
	src: url('http://lowreddesign.co/wp-content/uploads/2025/09/Mundial-Regular.woff2') format('woff2');
}
@font-face {
	font-family: 'Mundial';
	font-style: normal;
	font-weight: 500;
	font-display: auto;
	src: url('http://lowreddesign.co/wp-content/uploads/2025/10/Mundial-Medium.woff2') format('woff2');
}
@font-face {
	font-family: 'Mundial';
	font-style: normal;
	font-weight: 700;
	font-display: auto;
	src: url('http://lowreddesign.co/wp-content/uploads/2025/09/Mundial-Bold.woff2') format('woff2');
}
/* End Custom Fonts CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Prequel';
	font-style: normal;
	font-weight: 400;
	font-display: auto;
	src: url('http://lowreddesign.co/wp-content/uploads/2025/09/Prequel-Regular.woff2') format('woff2');
}
/* End Custom Fonts CSS */