/* Lee County landing page. Standalone: shares the Peak Evergreen palette and type, not its files. */
:root {
  --forest: #123526;
  --deep: #0D281C;
  --forest-2: #1C4433;
  --cream: #EFE7D6;
  --sand: #F1EADB;
  --paper: #F8F4EA;
  --sage: #A9CBA4;
  --gold: #D9A44A;
  --on-dark: #D5DCCF;
  --label: #4B5F54;
  --muted: #3C5247;
  --line: rgba(18, 53, 38, 0.18);
  --line-dark: rgba(239, 231, 214, 0.16);
  --wash: #2B7AA1;
  --wash-soft: #CFE4EE;
  --storage: #B5701C;
  --storage-soft: #F3DFC2;
  --sans: 'Zilla Slab', Rockwell, Georgia, serif;
  --serif: 'Newsreader', Georgia, serif;
  --mono: 'IBM Plex Mono', ui-monospace, monospace;
  --gutter: clamp(16px, 5vw, 64px);
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--deep); }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
body {
  margin: 0; background: var(--paper); color: var(--forest);
  font: 17px/1.55 var(--sans); -webkit-font-smoothing: antialiased;
}
h1, h2, h3, p, ol, ul, figure { margin: 0; }
img { max-width: 100%; height: auto; }
em { font-family: var(--serif); font-style: italic; font-weight: 400; }
a { color: inherit; }
:focus-visible { outline: 2px solid var(--gold); outline-offset: 3px; }
#main-content:focus { outline: none; }

.lc-skip {
  position: absolute; left: 16px; top: -60px; z-index: 100; padding: 10px 16px;
  background: var(--cream); color: var(--forest); font-weight: 600; border-radius: 22px; text-decoration: none;
}
.lc-skip:focus { top: 16px; }
.lc-wrap { max-width: 1240px; margin: 0 auto; padding: 0 var(--gutter); }
.lc-label, .lc-kicker {
  font-family: var(--mono); font-size: 12px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--label);
}
.lc-kicker { color: var(--sage); }

/* Buttons */
.lc-btn {
  display: inline-flex; align-items: center; gap: 12px; min-height: 52px; padding: 0 26px;
  border: 0; border-radius: 26px; font: 600 17px var(--sans); text-decoration: none; cursor: pointer;
  transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}
.lc-btn-cream { background: var(--cream); color: var(--forest); box-shadow: 0 4px 0 var(--deep); }
.lc-btn-cream:hover { background: #FFFFFF; transform: translateY(-2px); box-shadow: 0 6px 0 var(--deep); }
.lc-btn-cream:active { transform: translateY(2px); box-shadow: 0 2px 0 var(--deep); }
.lc-btn svg { transition: transform 0.15s ease; }
.lc-btn:hover svg { transform: translateX(3px); }
.lc-textlink { color: var(--cream); font-size: 16px; text-underline-offset: 5px; text-decoration-thickness: 1px; }
.lc-textlink:hover { color: #FFFFFF; }

/* Header */
.lc-top { background: var(--forest); color: var(--cream); overflow: hidden; }
.lc-nav {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 24px;
  padding: 12px 0; border-bottom: 1px solid var(--line-dark);
}
.lc-brand { display: inline-flex; align-items: center; gap: 12px; min-height: 44px; color: var(--cream); text-decoration: none; }
.lc-brand span { font-size: 18px; font-weight: 600; letter-spacing: -0.01em; }
.lc-links { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 28px; }
.lc-links a { display: flex; align-items: center; min-height: 44px; font-size: 15px; color: var(--cream); text-decoration: none; }
.lc-links a:hover { color: #FFFFFF; }
.lc-links .lc-navcta { padding: 0 20px; border: 1px solid rgba(239, 231, 214, 0.6); border-radius: 22px; font-weight: 500; }
.lc-links .lc-navcta:hover { background: var(--cream); color: var(--forest); }

.lc-hero-band { background: var(--forest); color: var(--cream); overflow: hidden; padding-bottom: clamp(48px, 7vw, 88px); }
.lc-hero-wrap { position: relative; }

/* Gag air freshener hanging from the nav line, like it's on a rear-view mirror. */
.lc-freshener {
  position: absolute; top: 0; right: calc(var(--gutter) + 40px); z-index: 4; width: 104px;
  transform-origin: 50% 0; animation: lc-sway 5.5s ease-in-out infinite alternate; cursor: grab;
}
.lc-freshener svg { display: block; width: 100%; height: auto; overflow: visible; filter: drop-shadow(6px 8px 0 rgba(13, 40, 28, 0.55)); }
.lc-freshener:hover { animation: lc-swing 1.4s ease-in-out infinite alternate; }
@keyframes lc-sway { from { transform: rotate(-5deg); } to { transform: rotate(5deg); } }
@keyframes lc-swing { from { transform: rotate(-16deg); } to { transform: rotate(16deg); } }
.lc-fr-string { stroke: var(--cream); stroke-width: 1.4; fill: none; }
.lc-fr-hole { fill: none; stroke: var(--cream); stroke-width: 1.4; }
.lc-fr-tree { fill: var(--gold); stroke: #B07A26; stroke-width: 1.5; stroke-linejoin: round; }
.lc-fr-punch { fill: var(--forest); }
.lc-fr-label { fill: var(--forest); }
.lc-fr-text { fill: var(--cream); font: 600 5.6px var(--mono); letter-spacing: 0.08em; text-anchor: middle; }
@media (prefers-reduced-motion: reduce) { .lc-freshener, .lc-freshener:hover { animation: none; transform: rotate(-4deg); } }
@media (max-width: 900px) { .lc-freshener { right: 4px; width: 64px; } }
@media (max-width: 560px) { .lc-freshener { width: 52px; } .lc-hero-copy { padding-right: 56px; } }
.lc-hero {
  padding: clamp(24px, 3vw, 36px) 0 clamp(24px, 3vw, 32px);
}
.lc-hero h1 {
  margin-top: 8px; font-size: clamp(28px, 3vw, 42px); line-height: 1.1; font-weight: 600; letter-spacing: -0.025em;
}
.lc-hero h1 em { color: var(--sage); }
.lc-hero h1 { text-wrap: balance; }
.lc-lede { max-width: 34em; color: var(--on-dark); font-size: 17px; }
.lc-lede strong { color: var(--cream); font-weight: 600; }
.lc-cta-row { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 24px; margin-top: 18px; }

/* Meme and map share the hero stage; the polaroid leans on the map. */
.lc-hero-stage {
  display: grid; grid-template-columns: minmax(0, 0.42fr) minmax(0, 1fr); align-items: start; gap: clamp(24px, 3vw, 40px);
}
.lc-meme-col { position: relative; z-index: 2; display: grid; justify-items: center; gap: 20px; margin-top: 36px; }
.lc-hero-stage .lc-meme { max-width: min(100%, clamp(220px, calc((100vh - 420px) * 0.6), 300px)); }
.lc-hero-stage .lc-meme { margin-right: -56px; transform: rotate(-3deg); }
.lc-meme-col .lc-lede { margin: -4px 0 0; padding-left: 12px; text-align: center; font-size: 16px; }
.lc-meme-col .lc-lede strong { display: block; margin-top: 2px; font-size: 24px; line-height: 1.2; letter-spacing: -0.01em; }
.lc-meme-col .lc-cta-row { flex-direction: column; margin: 0; }
.lc-meme { position: relative; justify-self: center; max-width: 440px; }
.lc-meme { padding: 14px; background: var(--paper); border-radius: 6px; box-shadow: 14px 18px 0 var(--deep); }
.lc-meme-frame img, .lc-meme-frame video { display: block; width: 100%; height: auto; border-radius: 2px; background: var(--sand); }

/* Ticker */
.lc-ticker { overflow: hidden; background: var(--gold); color: var(--forest); border-block: 2px solid var(--deep); }
.lc-ticker-track {
  display: flex; align-items: center; gap: 28px; width: max-content; padding: 14px 0;
  font: 500 14px var(--mono); letter-spacing: 0.06em; text-transform: uppercase; white-space: nowrap;
  animation: lc-ticker 40s linear infinite;
}
.lc-ticker b { font-weight: 600; }
.lc-ticker i { font-style: normal; opacity: 0.6; }
@keyframes lc-ticker { to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { .lc-ticker-track { animation: none; } }

/* Bands */
.lc-band { padding: clamp(64px, 9vw, 112px) 0; }
.lc-band-paper { background: var(--paper); }
.lc-band-sand { background: var(--sand); border-top: 1px solid var(--line); }
.lc-band-forest { background: var(--forest); color: var(--cream); }
.lc-section-head {
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: end; gap: 16px 48px; margin-bottom: 36px;
}
.lc-section-head h2 { margin-top: 10px; font-size: clamp(32px, 4.4vw, 52px); line-height: 1.05; font-weight: 600; letter-spacing: -0.02em; }
.lc-section-head > p { color: var(--muted); max-width: 32em; }

/* Map */
.lc-map {
  position: relative; background: #FFFFFF; border: 1px solid var(--line); border-radius: 14px; padding: 14px;
  color: var(--forest); box-shadow: 14px 18px 0 var(--deep); scroll-margin-top: 16px;
}
.lc-map-bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 12px; }
.lc-map-title { flex: 1 1 100%; display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 14px; padding: 2px 4px 4px; }
.lc-map-title h2 { font-size: clamp(22px, 2.2vw, 28px); line-height: 1.1; font-weight: 600; letter-spacing: -0.01em; }
.lc-filters { display: flex; flex-wrap: wrap; gap: 8px; }
.lc-chip {
  display: inline-flex; align-items: center; gap: 8px; min-height: 40px; padding: 0 14px 0 12px;
  background: var(--paper); color: var(--forest); border: 1px solid var(--line); border-radius: 20px;
  font: 500 15px var(--sans); cursor: pointer;
}
.lc-chip:hover { border-color: var(--forest); }
.lc-chip[aria-pressed="false"] { opacity: 0.5; text-decoration: line-through; text-decoration-thickness: 1px; }
.lc-chip-n { font: 500 12px var(--mono); color: var(--label); }
.lc-key { display: inline-block; width: 14px; height: 14px; flex: none; }
.lc-key-wash { border-radius: 50%; background: var(--wash); }
.lc-key-storage { border-radius: 3px; background: var(--storage); }
.lc-key-soon { border-radius: 50%; border: 2px dashed var(--forest); }
.lc-zoom { position: absolute; z-index: 3; top: 12px; right: 12px; display: grid; gap: 6px; }
.lc-zoom button {
  display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px;
  background: var(--paper); color: var(--forest); border: 1px solid var(--line); border-radius: 50%;
  font: 500 20px/1 var(--sans); cursor: pointer; box-shadow: 0 2px 0 rgba(18, 53, 38, 0.18);
}
.lc-zoom button:hover { background: var(--forest); color: var(--cream); }

.lc-map-stage {
  /* Sized to the viewport so the whole hero fits on a laptop screen. */
  position: relative; height: clamp(360px, calc(100vh - 420px), 500px); overflow: hidden;
  background: #D7E6E4; border-radius: 10px; touch-action: none; cursor: grab;
}
.lc-map-stage.is-dragging { cursor: grabbing; }
.lc-map-svg { display: block; width: 100%; height: 100%; user-select: none; -webkit-user-select: none; }
.lc-map-loading {
  position: absolute; inset: 0; display: grid; place-items: center; color: var(--muted); font: italic 18px var(--serif);
}
.lc-map-stamp {
  position: absolute; right: 14px; bottom: 14px; padding: 8px 12px; pointer-events: none;
  border: 2px solid rgba(18, 53, 38, 0.5); border-radius: 6px; color: rgba(18, 53, 38, 0.6);
  font: 600 11px/1.25 var(--mono); letter-spacing: 0.12em; text-transform: uppercase; text-align: center;
  transform: rotate(-6deg);
}
.lc-map-loading[hidden] { display: none; }
.lc-map-note { margin-top: 12px; color: var(--label); font-size: 14px; }

.lc-map-svg .basemap path { vector-effect: non-scaling-stroke; }
.lc-map-svg .land { fill: var(--paper); stroke: #B9C9BE; stroke-width: 0.8; }
.lc-map-svg .city { fill: #EDE5D2; stroke: #D8CCB0; stroke-width: 0.6; }
.lc-map-svg .road { fill: none; stroke: #DCCFB4; stroke-width: 1; stroke-linecap: round; stroke-linejoin: round; }
.lc-map-svg .road.hwy { stroke: #D2A866; stroke-width: 2; }
.lc-map-svg .place {
  fill: var(--muted); font: italic 500 14px var(--serif); text-anchor: middle; pointer-events: none;
  paint-order: stroke; stroke: var(--paper); stroke-width: 4px; stroke-linejoin: round;
}
.lc-map-svg .place-out { fill: #6E8A86; stroke: #D7E6E4; font-size: 13px; }
.lc-map-svg .pin { cursor: pointer; }
.lc-map-svg .pin:focus { outline: none; }
.lc-map-svg .pin:focus-visible .pin-body, .lc-map-svg .pin.is-active .pin-body { stroke: var(--forest); stroke-width: 3; }
.lc-map-svg .pin-wash .pin-body { fill: var(--wash); stroke: #FFFFFF; stroke-width: 2; }
.lc-map-svg .pin-storage .pin-body { fill: var(--storage); stroke: #FFFFFF; stroke-width: 2; }
.lc-map-svg .pin-soon.pin-wash .pin-body { fill: var(--wash-soft); stroke: var(--wash); stroke-dasharray: 3 2; }
.lc-map-svg .pin-soon.pin-storage .pin-body { fill: var(--storage-soft); stroke: var(--storage); stroke-dasharray: 3 2; }
.lc-map-svg .pin-glyph { fill: none; stroke: #FFFFFF; stroke-width: 1.4; stroke-linecap: round; stroke-linejoin: round; pointer-events: none; }
.lc-map-svg .pin-soon.pin-wash .pin-glyph { stroke: var(--wash); }
.lc-map-svg .pin-soon.pin-storage .pin-glyph { stroke: var(--storage); }
.lc-map-svg .pin-name {
  fill: var(--forest); font: 600 12px var(--sans); dominant-baseline: central; pointer-events: none;
  paint-order: stroke; stroke: var(--paper); stroke-width: 3px; stroke-linejoin: round;
}
.lc-map-svg .cluster-body { fill: var(--forest); stroke: #FFFFFF; stroke-width: 2; }
.lc-map-svg .cluster-ring { fill: none; stroke-width: 4; }
.lc-map-svg .cluster-n { fill: var(--cream); font: 600 13px var(--mono); text-anchor: middle; dominant-baseline: central; pointer-events: none; }

.lc-tip {
  position: absolute; z-index: 2; max-width: 240px; padding: 10px 12px; pointer-events: none;
  background: var(--forest); color: var(--cream); border-radius: 8px; box-shadow: 0 4px 0 var(--deep);
  transform: translate(-50%, calc(-100% - 16px));
}
.lc-tip.is-below { transform: translate(-50%, 18px); }
.lc-tip strong { display: block; font-size: 16px; line-height: 1.25; }
.lc-tip span { display: block; margin-top: 3px; color: var(--sage); font: 500 11px var(--mono); letter-spacing: 0.08em; text-transform: uppercase; }

/* Things to do */
.lc-todo { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; padding: 0; list-style: none; }
.lc-todo li {
  display: flex; flex-direction: column; gap: 12px; padding: 28px 26px;
  background: var(--paper); border: 1px solid var(--line); border-radius: 14px;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.lc-todo li:hover { transform: translateY(-4px) rotate(-0.4deg); box-shadow: 8px 10px 0 var(--forest); }
.lc-todo-n { font: 500 13px var(--mono); color: var(--storage); letter-spacing: 0.1em; }
.lc-todo h3 { font-size: 24px; line-height: 1.15; font-weight: 600; letter-spacing: -0.01em; }
.lc-todo p { color: var(--muted); flex: 1; }
.lc-todo a { align-self: flex-start; font-weight: 600; text-underline-offset: 4px; }
.lc-todo a::after { content: " →"; }

/* Contact */
.lc-contact-inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(32px, 6vw, 88px); align-items: start; }
.lc-contact h2 { margin-top: 14px; font-size: clamp(36px, 5vw, 60px); line-height: 1.04; font-weight: 600; letter-spacing: -0.02em; }
.lc-contact h2 em { color: var(--sage); }
.lc-contact-copy > p { margin-top: 20px; color: var(--on-dark); max-width: 30em; }
.lc-promises { display: grid; gap: 10px; margin-top: 28px; padding: 0; list-style: none; }
.lc-promises li { display: flex; align-items: center; gap: 12px; color: var(--cream); }
.lc-promises li::before {
  content: ""; width: 20px; height: 20px; flex: none; border-radius: 50%;
  background: var(--sage) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23123526' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 10.5l2.5 2.5L14 7.5'/%3E%3C/svg%3E") center/100% no-repeat;
}

.lc-contact-inner { align-items: center; }
.lc-contact-action { display: grid; justify-items: start; gap: 14px; }
.lc-fine { color: var(--on-dark); font-size: 14px; }
.lc-fine a { color: var(--cream); }
.lc-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.lc-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

/* Chat popup: a plain contact form dressed as a chat. */
.lc-chat { position: fixed; right: 20px; bottom: 20px; z-index: 50; }
.lc-chat-launch {
  display: inline-flex; align-items: center; gap: 10px; min-height: 52px; padding: 0 20px 0 14px;
  background: var(--forest); color: var(--cream); border: 2px solid var(--cream); border-radius: 26px;
  font: 600 16px var(--sans); cursor: pointer; box-shadow: 0 4px 0 var(--deep), 0 10px 24px rgba(0, 0, 0, 0.25);
  transition: transform 0.15s ease;
}
.lc-chat-launch:hover { transform: translateY(-2px); }
.lc-chat-launch[hidden] { display: none; }
.lc-chat-panel {
  display: flex; flex-direction: column; width: min(370px, calc(100vw - 32px)); max-height: min(620px, calc(100vh - 40px));
  background: var(--paper); color: var(--forest); border-radius: 18px; overflow: hidden;
  box-shadow: 0 6px 0 var(--deep), 0 20px 48px rgba(0, 0, 0, 0.35);
  animation: lc-chat-in 0.18s ease-out;
}
.lc-chat-panel[hidden] { display: none; }
@keyframes lc-chat-in { from { opacity: 0; transform: translateY(12px) scale(0.98); } }
@media (prefers-reduced-motion: reduce) { .lc-chat-panel { animation: none; } }
.lc-chat-head { display: flex; align-items: center; gap: 12px; padding: 14px 14px 14px 16px; background: var(--cream); border-bottom: 1px solid var(--line); }
.lc-chat-head > div { flex: 1; min-width: 0; }
.lc-chat-name { font-weight: 600; font-size: 16px; line-height: 1.2; }
.lc-chat-sub { font: 500 11px var(--mono); letter-spacing: 0.08em; text-transform: uppercase; color: var(--label); }
.lc-chat-close {
  display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; flex: none;
  background: transparent; color: var(--forest); border: 0; border-radius: 50%; cursor: pointer;
}
.lc-chat-close:hover { background: rgba(18, 53, 38, 0.08); }
.lc-chat-log { display: flex; flex-direction: column; gap: 8px; padding: 16px; overflow-y: auto; }
.lc-bubble {
  align-self: flex-start; max-width: 85%; padding: 10px 14px; background: #FFFFFF; border: 1px solid var(--line);
  border-radius: 16px 16px 16px 4px; font-size: 16px; line-height: 1.4;
}
.lc-bubble.is-you { align-self: flex-end; background: var(--forest); color: var(--cream); border-color: var(--forest); border-radius: 16px 16px 4px 16px; white-space: pre-wrap; }
.lc-chat-form { display: grid; gap: 8px; padding: 0 16px 14px; }
.lc-chat-form[hidden] { display: none; }
.lc-chat-form textarea, .lc-chat-form input:not([type="checkbox"]) {
  width: 100%; min-width: 0; padding: 10px 12px; background: #FFFFFF; color: var(--forest);
  border: 1px solid rgba(18, 53, 38, 0.3); border-radius: 12px; font: 400 16px var(--sans);
}
.lc-chat-form textarea { resize: none; min-height: 84px; }
.lc-chat-form :is(textarea, input):focus { outline: 2px solid var(--gold); outline-offset: 0; border-color: transparent; }
.lc-chat-form [aria-invalid="true"] { border-color: #C0573C; }
.lc-chat-form ::placeholder { color: #7D8C80; }
.lc-chat-row { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr); gap: 8px; }
.lc-check { display: flex; gap: 8px; align-items: center; color: var(--muted); font-size: 14px; cursor: pointer; }
.lc-check input { width: 16px; height: 16px; margin: 0; accent-color: var(--forest); }
.cf-turnstile:empty { display: none; }
.lc-form-status { padding: 8px 12px; border-radius: 10px; background: #FBE3DA; color: #6B2A1A; border: 1px solid #E7A08A; font-size: 14px; }
.lc-form-status[hidden] { display: none; }
.lc-chat-send { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.lc-chat-fine { color: var(--label); font-size: 13px; }
.lc-chat-fine a { color: var(--forest); }
.lc-chat-submit, .lc-chat-again {
  display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 18px;
  background: var(--forest); color: var(--cream); border: 0; border-radius: 22px; font: 600 15px var(--sans); cursor: pointer;
}
.lc-chat-submit:hover, .lc-chat-again:hover { background: var(--forest-2); }
.lc-chat-submit[disabled] { opacity: 0.7; cursor: progress; }
.lc-chat-done { padding: 0 16px 16px; }
.lc-chat-done[hidden] { display: none; }
.lc-chat-again { width: 100%; justify-content: center; }

/* Car wash foam (foam.js draws it in WebGL) hangs from the top of the contact section; drops fall behind the text. */
.lc-wash { position: absolute; inset: 0; z-index: 0; overflow: hidden; pointer-events: none; }
.lc-wash-canvas { display: block; width: 100%; height: 100%; }
.lc-contact { position: relative; overflow: hidden; padding-top: calc(clamp(64px, 9vw, 112px) + 70px); }
.lc-contact > .lc-wrap { position: relative; z-index: 1; }
/* Without WebGL, show the three foam bands without motion. */
.lc-wash.is-static { height: 58px; bottom: auto; background: linear-gradient(180deg, #F4D77A 0 22px, #8CC8E8 22px 40px, #F3A9C9 40px 58px); border-radius: 0 0 28px 28px; }
.lc-wash.is-static canvas { display: none; }

/* Footer */
.lc-foot { background: var(--deep); color: var(--on-dark); padding: 40px 0; font-size: 15px; }
.lc-foot-inner { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 32px; }
.lc-foot-meta { color: var(--label); color: #8FA493; }
.lc-foot-meta a { color: var(--on-dark); }

@media (max-width: 1100px) {
  .lc-todo { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  .lc-hero-stage, .lc-section-head, .lc-contact-inner { grid-template-columns: minmax(0, 1fr); }
  .lc-meme-col { justify-items: start; gap: 24px; margin: 0 0 12px; }
  .lc-meme-col .lc-cta-row { flex-direction: row; margin-right: 0; }
  .lc-meme-col .lc-lede { margin: 0; padding: 0; text-align: left; font-size: 17px; }
  .lc-hero-stage .lc-meme { max-width: 340px; margin: 0 0 0 8px; transform: rotate(-2deg); }
  .lc-todo { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 560px) {
  .lc-links a:not(.lc-navcta) { display: none; }
  .lc-hero { padding-top: 20px; }
  .lc-hero-stage .lc-meme { max-width: 86%; margin: 0 0 0 10px; }
  .lc-meme-col .lc-cta-row { width: 100%; flex-direction: column; }
  .lc-map { padding: 8px; box-shadow: 8px 10px 0 var(--deep); }
  .lc-map-stage { height: 400px; }
  .lc-chip { padding: 0 10px; font-size: 14px; }
  .lc-map-stamp { display: none; }
  .lc-btn { width: 100%; justify-content: center; }
  .lc-chat { right: 12px; bottom: 12px; }
  .lc-chat-panel { width: calc(100vw - 24px); max-height: calc(100vh - 24px); }
  .lc-chat-row { grid-template-columns: minmax(0, 1fr); }
  .lc-contact-action { justify-items: stretch; }
}
