
      :root {
        --navy: #062f52;
        --dark-navy: #03233e;
        --red: #c8101e;
        --cream: #fffaf1;
        --light-blue: #eef5f5;
        --sage: #e8f0ec;
        --text: #253642;
        --gray: #667780;
        --white: #ffffff;
      }
      * {
        box-sizing: border-box;
      }
      html {
        scroll-behavior: smooth;
      }
      body {
        margin: 0;
        font-family: Arial, Helvetica, sans-serif;
        color: var(--text);
        background: white;
        line-height: 1.6;
      }
      img {
        max-width: 100%;
        display: block;
      }
      a {
        color: inherit;
      }
      .site-header {
        background: rgba(255, 255, 255, 0.98);
        border-bottom: 1px solid #e6e6e6;
        position: sticky;
        top: 0;
        z-index: 1000;
      }
      .navbar {
        max-width: 1450px;
        margin: auto;
        padding: 9px 22px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 20px;
      }
      .nav-logo {
        display: flex;
        align-items: center;
        text-decoration: none;
        min-width: 250px;
      }
      .nav-logo img {
        width: 68px;
        height: 68px;
        object-fit: cover;
        border-radius: 5px;
      }
      .nav-brand-text {
        margin-left: 13px;
      }
      .nav-brand-text strong {
        display: block;
        color: var(--navy);
        font-size: 23px;
        line-height: 1.1;
      }
      .nav-brand-text small {
        display: block;
        margin-top: 6px;
        font-size: 9px;
        letter-spacing: 2px;
        font-weight: bold;
        color: var(--navy);
      }
      .red-heart {
        color: var(--red);
      }
      .nav-links {
        display: flex;
        align-items: center;
        gap: 15px;
      }
      .nav-links a {
        text-decoration: none;
        color: var(--navy);
        font-size: 12px;
        font-weight: bold;
        padding: 25px 0 22px;
        border-bottom: 3px solid transparent;
        white-space: nowrap;
      }
      .nav-links a:hover,
      .nav-links a.active {
        color: var(--red);
        border-bottom-color: var(--red);
      }
      .nav-contact {
        background: var(--navy);
        color: white !important;
        border-radius: 7px;
        padding: 12px 18px !important;
        border-bottom: none !important;
      }
      .nav-contact:hover {
        background: var(--red);
      }
      .hero {
        width: 100%;
        position: relative;
        background: var(--cream);
      }
      .hero img {
        width: 100%;
        height: auto;
        max-height: 560px;
        object-fit: cover;
        object-position: center;
      }
      .hero-overlay {
        position: absolute;
        inset: 0;
        display: flex;
        align-items: flex-end;
        justify-content: center;
        background: linear-gradient(
          to top,
          rgba(3, 35, 62, 0.76),
          rgba(3, 35, 62, 0.05) 55%
        );
        padding: 40px 25px;
      }
      .hero-title {
        text-align: center;
        color: white;
      }
      .hero-title h1 {
        font-family: Georgia, "Times New Roman", serif;
        font-size: clamp(42px, 6vw, 64px);
        margin: 0 0 7px;
        line-height: 1.05;
      }
      .hero-title p {
        margin: 0;
        font-size: 18px;
      }
      .container {
        max-width: 1200px;
        margin: auto;
      }
      .eyebrow {
        color: var(--red);
        text-transform: uppercase;
        letter-spacing: 4px;
        font-size: 12px;
        font-weight: bold;
        margin-bottom: 8px;
      }
      .section-title {
        font-family: Georgia, "Times New Roman", serif;
        color: var(--navy);
        font-size: clamp(34px, 5vw, 50px);
        line-height: 1.15;
        margin: 0 0 15px;
      }
      .section-description {
        max-width: 850px;
        margin: auto;
        color: var(--gray);
        font-size: 17px;
      }
      .page-intro {
        background: var(--cream);
        padding: 60px 25px 35px;
        text-align: center;
      }
      .notice-section {
        background: var(--cream);
        padding: 5px 25px 60px;
      }
      .notice-box {
        max-width: 1000px;
        margin: auto;
        background: white;
        border-left: 5px solid var(--red);
        border-radius: 12px;
        padding: 23px 27px;
        box-shadow: 0 5px 18px rgba(0, 0, 0, 0.05);
      }
      .notice-box strong {
        display: block;
        color: var(--navy);
        margin-bottom: 5px;
      }
      .notice-box p {
        margin: 0;
        color: var(--gray);
        font-size: 14px;
      }
      .category-section {
        background: white;
        padding: 45px 25px;
      }
      .category-grid {
        max-width: 1050px;
        margin: auto;
        display: grid;
        grid-template-columns: repeat(5, 1fr);
        gap: 14px;
      }
      .category-card {
        background: var(--light-blue);
        border: 1px solid #dfe8e8;
        border-radius: 13px;
        text-align: center;
        text-decoration: none;
        padding: 22px 12px;
        transition: 0.2s ease;
      }
      .category-card:hover {
        transform: translateY(-3px);
        box-shadow: 0 7px 17px rgba(0, 0, 0, 0.07);
      }
      .category-card span {
        display: block;
        font-size: 29px;
        margin-bottom: 6px;
      }
      .category-card strong {
        font-family: Georgia, serif;
        color: var(--navy);
        font-size: 14px;
      }
      .featured-section {
        background: var(--sage);
        padding: 75px 25px;
      }
      .featured-grid {
        max-width: 1100px;
        margin: auto;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 45px;
        align-items: center;
      }
      .featured-image {
        border-radius: 18px;
        overflow: hidden;
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
      }
      .featured-image img {
        width: 100%;
        height: 440px;
        object-fit: cover;
      }
      .featured-content h2 {
        font-family: Georgia, serif;
        color: var(--navy);
        font-size: 39px;
        line-height: 1.15;
        margin: 6px 0 15px;
      }
      .featured-content p {
        color: var(--gray);
      }
      .featured-info {
        margin: 20px 0;
      }
      .featured-info div {
        margin: 8px 0;
        font-size: 14px;
      }
      .directory-section {
        background: white;
        padding: 75px 25px;
      }
      .business-grid {
        max-width: 1180px;
        margin: 45px auto 0;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 28px;
      }
      .business-card {
        background: var(--cream);
        border: 1px solid #e8e3d9;
        border-radius: 17px;
        overflow: hidden;
        box-shadow: 0 7px 22px rgba(0, 0, 0, 0.055);
        display: flex;
        flex-direction: column;
      }
      .business-image {
        height: 290px;
        overflow: hidden;
        background: var(--light-blue);
      }
      .business-image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: transform 0.35s ease;
      }
      .business-card:hover .business-image img {
        transform: scale(1.025);
      }
      .business-placeholder {
        height: 100%;
        background: linear-gradient(135deg, #dce9e7, #eef5f5);
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
        padding: 30px;
        color: var(--navy);
      }
      .business-placeholder span {
        display: block;
        font-size: 48px;
        margin-bottom: 8px;
      }
      .business-placeholder strong {
        display: block;
        font-family: Georgia, serif;
        font-size: 22px;
      }
      .business-body {
        padding: 27px;
        display: flex;
        flex-direction: column;
        flex-grow: 1;
      }
      .business-category {
        color: var(--red);
        font-size: 10px;
        letter-spacing: 2px;
        text-transform: uppercase;
        font-weight: bold;
      }
      .business-body h3 {
        font-family: Georgia, serif;
        color: var(--navy);
        font-size: 27px;
        margin: 6px 0 12px;
      }
      .business-description {
        color: var(--gray);
        font-size: 14px;
        flex-grow: 1;
        margin-bottom: 17px;
      }
      .business-details {
        padding: 14px 0;
        border-top: 1px solid #e5e0d7;
        border-bottom: 1px solid #e5e0d7;
        margin-bottom: 18px;
      }
      .business-detail {
        display: grid;
        grid-template-columns: 24px 1fr;
        gap: 7px;
        margin: 7px 0;
        font-size: 13px;
      }
      .business-detail strong {
        color: var(--navy);
      }
      .business-links {
        display: flex;
        gap: 9px;
        flex-wrap: wrap;
      }
      .business-button {
        display: inline-block;
        background: var(--navy);
        color: white;
        text-decoration: none;
        border-radius: 7px;
        padding: 10px 16px;
        font-size: 12px;
        font-weight: bold;
        transition: 0.2s ease;
      }
      .business-button:hover {
        background: var(--red);
      }
      .business-button.secondary {
        background: white;
        color: var(--navy);
        border: 1px solid #cfd7d8;
      }
      .business-button.secondary:hover {
        color: white;
        background: var(--red);
        border-color: var(--red);
      }
      .creative-section {
        background: var(--light-blue);
        padding: 75px 25px;
      }
      .creative-card {
        max-width: 1050px;
        margin: 40px auto 0;
        display: grid;
        grid-template-columns: 0.9fr 1.1fr;
        background: white;
        border-radius: 18px;
        overflow: hidden;
        box-shadow: 0 8px 25px rgba(0, 0, 0, 0.07);
      }
      .creative-photo {
        min-height: 470px;
        overflow: hidden;
        background: var(--dark-navy);
      }
      .creative-photo img {
        width: 100%;
        height: 100%;
        min-height: 470px;
        object-fit: cover;
        object-position: center 18%;
      }
      .creative-content {
        padding: 42px;
      }
      .creative-content h3 {
        color: var(--navy);
        font-family: Georgia, serif;
        font-size: 32px;
        margin: 5px 0 13px;
      }
      .creative-content p {
        color: var(--gray);
      }
      .support-local {
        background: var(--cream);
        padding: 75px 25px;
      }
      .support-grid {
        max-width: 1050px;
        margin: 40px auto 0;
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 20px;
      }
      .support-card {
        background: white;
        border-radius: 14px;
        padding: 28px 23px;
        text-align: center;
      }
      .support-card span {
        font-size: 38px;
      }
      .support-card h3 {
        color: var(--navy);
        font-family: Georgia, serif;
        margin: 8px 0;
      }
      .support-card p {
        color: var(--gray);
        font-size: 14px;
      }
      .cta-section {
        background: linear-gradient(135deg, var(--navy), #0a4a77);
        color: white;
        text-align: center;
        padding: 75px 25px;
      }
      .cta-section .eyebrow {
        color: #ffb9be;
      }
      .cta-section h2 {
        font-family: Georgia, serif;
        font-size: 42px;
        margin: 5px 0 15px;
      }
      .cta-section p {
        max-width: 740px;
        margin: 0 auto 25px;
        color: #dce9f0;
      }
      .button-light {
        display: inline-block;
        background: white;
        color: var(--navy);
        text-decoration: none;
        border-radius: 7px;
        padding: 13px 25px;
        font-weight: bold;
      }
      footer {
        background: linear-gradient(135deg, #03233e, #063b62);
        color: white;
        padding: 55px 25px 20px;
      }
      .footer-grid {
        max-width: 1150px;
        margin: auto;
        display: grid;
        grid-template-columns: 1.5fr 0.8fr 1.2fr;
        gap: 60px;
      }
      .footer-logo-area {
        display: flex;
        align-items: center;
        gap: 15px;
      }
      .footer-logo-area img {
        width: 90px;
        height: 90px;
        object-fit: cover;
        border-radius: 5px;
      }
      .footer-logo-area h2 {
        margin: 0;
        font-size: 25px;
      }
      .footer-logo-area small {
        font-size: 9px;
        letter-spacing: 2px;
      }
      .footer-about {
        max-width: 380px;
        color: #d5e1e8;
        font-size: 14px;
        margin-top: 18px;
      }
      .footer-heading {
        font-weight: bold;
        font-size: 16px;
        margin-bottom: 13px;
      }
      .footer-links a {
        display: block;
        text-decoration: none;
        color: #e1ebf0;
        font-size: 14px;
        margin: 7px 0;
      }
      .footer-links a:hover {
        color: white;
        text-decoration: underline;
      }
      .footer-contact {
        color: #e1ebf0;
        font-size: 14px;
      }
      .footer-email {
        display: inline-block;
        margin-top: 8px;
        color: white;
        text-decoration: none;
        font-weight: bold;
      }
      .footer-bottom {
        max-width: 1150px;
        margin: 40px auto 0;
        padding-top: 20px;
        border-top: 1px solid rgba(255, 255, 255, 0.2);
        text-align: center;
        color: #c5d5df;
        font-size: 12px;
      }
      @media (max-width: 1180px) {
        .navbar {
          flex-direction: column;
          padding-bottom: 15px;
        }
        .nav-logo {
          min-width: auto;
        }
        .nav-links {
          flex-wrap: wrap;
          justify-content: center;
        }
        .nav-links a {
          padding: 5px 0;
        }
      }
      @media (max-width: 1050px) {
        .category-grid {
          grid-template-columns: repeat(3, 1fr);
        }
      }
      @media (max-width: 900px) {
        .featured-grid,
        .business-grid,
        .creative-card {
          grid-template-columns: 1fr;
        }
        .support-grid {
          grid-template-columns: 1fr;
        }
        .footer-grid {
          grid-template-columns: 1fr;
        }
        .creative-photo img {
          max-height: 650px;
        }
      }
      @media (max-width: 650px) {
        .nav-brand-text {
          display: none;
        }
        .category-grid {
          grid-template-columns: repeat(2, 1fr);
        }
        .hero img {
          min-height: 260px;
          object-fit: cover;
        }
        .business-image {
          height: 235px;
        }
        .featured-image img {
          height: 300px;
        }
        .creative-content {
          padding: 28px 22px;
        }
        .creative-photo {
          min-height: 420px;
        }
        .creative-photo img {
          min-height: 420px;
        }
      }
    
      /* Consistent Loving Longmont hero — matches home page */
      .hero { width: 100%; min-height: 0 !important; padding: 0 !important; display: block !important; background: var(--cream, #fffaf1) !important; position: relative; }
      .hero img { width: 100% !important; height: auto !important; max-height: 700px !important; min-height: 0 !important; object-fit: cover !important; object-position: center !important; display: block !important; }
    
/* Canonical Loving Longmont footer */
footer{background:linear-gradient(135deg,#03233e,#063b62);color:white;padding:55px 25px 20px}
.footer-grid{max-width:1150px;margin:auto;display:grid;grid-template-columns:1.5fr .8fr 1.2fr;gap:60px}
.footer-logo-area{display:flex;align-items:center;gap:15px}
.footer-logo-area h2{margin:0;font-size:25px}
.footer-logo-area small{font-size:9px;letter-spacing:2px}
.footer-about{max-width:380px;color:#d5e1e8;font-size:14px;margin-top:18px}
.footer-heading{font-weight:bold;font-size:16px;margin-bottom:13px}
.footer-links a{display:block;text-decoration:none;color:#e1ebf0;font-size:14px;margin:7px 0}
.footer-links a:hover{color:white;text-decoration:underline}
.footer-contact{color:#e1ebf0;font-size:14px}
.footer-email{display:inline-block;margin-top:8px;color:white;text-decoration:none;font-weight:bold}
.footer-bottom{max-width:1150px;margin:40px auto 0;padding-top:20px;border-top:1px solid rgba(255,255,255,.2);text-align:center;color:#c5d5df;font-size:12px}
.red-heart{color:var(--red,#c8101e)}
@media(max-width:900px){.footer-grid{grid-template-columns:1fr}}


/* Compact directory cards: four desktop columns with readable mobile layouts. */
.business-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:28px}
.business-card{min-width:0;border-radius:12px}
.business-image{height:160px}
.business-placeholder{padding:16px;font-size:12px}
.business-placeholder span{font-size:30px;margin-bottom:5px}
.business-placeholder strong{font-size:18px;line-height:1.25}
.business-body{padding:16px}
.business-category{font-size:9px;letter-spacing:1px;line-height:1.5}
.business-body h3{font-size:21px;line-height:1.2;margin:7px 0 10px;overflow-wrap:anywhere}
.business-description{font-size:13px;line-height:1.6;margin:0 0 12px}
.business-details{padding:10px 0;margin-bottom:12px}
.business-detail{grid-template-columns:18px minmax(0,1fr);gap:5px;font-size:12px;overflow-wrap:anywhere}
.business-button{padding:9px 12px;font-size:11px;min-height:40px}
@media(max-width:999px){.business-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:599px){.business-grid{grid-template-columns:minmax(0,1fr);gap:18px}.business-image{height:190px}}

.bp-main{max-width:1000px;margin:40px auto;padding:0 24px}.bp-profile .bp-identity{align-items:start}.bp-profile .bp-logo{max-width:280px}.bp-profile .bp-logo img{object-fit:contain}.bp-profile h1{overflow-wrap:anywhere}.business-body h3 a{text-decoration:none}.business-body h3 a:hover{text-decoration:underline}.business-detail:has(>a){display:block}.business-detail>div{min-width:0}@media(max-width:650px){.bp-main{margin:24px auto;padding:0 18px}}
.business-card[data-cc-business] .business-detail,.ll-connected-card .business-detail{display:block;overflow-wrap:anywhere}
