 :root {
     --red: #c0392b;
     --red-dark: #962d22;
     --red-light: #fdf0ee;
     --dark: #1e1e1e;
     --text: #444;
     --muted: #777;
     --border: #e2e2e2;
     --bg: #f6f6f6;
     --white: #ffffff;
 }

 * {
     margin: 0;
     padding: 0;
     box-sizing: border-box;
 }

 body {
     font-family: 'Open Sans', sans-serif;
     color: var(--text);
     background: var(--white);
 }

 h1,
 h2,
 h3,
 h4,
 h5 {
     font-family: 'Montserrat', sans-serif;
     font-weight: 700;
     color: var(--dark);
 }

 /* TOP BAR */
 .top-bar {
     background: var(--red);
     padding: 0.5rem 0;
 }

 .top-bar-inner {
     display: flex;
     flex-wrap: wrap;
     align-items: center;
     justify-content: space-between;
     gap: 0.4rem;
 }

 .tbi {
     display: flex;
     align-items: center;
     gap: 0.4rem;
     font-size: 0.82rem;
     color: rgba(255, 255, 255, 0.92);
 }

 .tbi i {
     font-size: 0.8rem;
     color: rgba(255, 255, 255, 0.7);
 }

 .tbi a {
     color: rgba(255, 255, 255, 0.92);
     text-decoration: none;
 }

 .tbi-sep {
     width: 1px;
     height: 14px;
     background: rgba(255, 255, 255, 0.25);
 }

 .tbi-pill {
     background: rgba(255, 255, 255, 0.18);
     border: 1px solid rgba(255, 255, 255, 0.25);
     padding: 0.18rem 0.75rem;
     border-radius: 20px;
     font-size: 0.78rem;
     font-weight: 700;
     font-family: 'Montserrat', sans-serif;
     color: #fff;
     letter-spacing: 0.04em;
 }

 /* NAVBAR */
 .main-nav {
     background: #fff;
     border-bottom: 3px solid var(--red);
     position: sticky;
     top: 0;
     z-index: 999;
     box-shadow: 0 2px 10px rgba(0, 0, 0, 0.07);
     padding: 0;
 }

 .nav-logo {
     font-family: 'Montserrat', sans-serif;
     font-weight: 800;
     font-size: 1.6rem;
     color: var(--dark) !important;
     text-decoration: none;
     letter-spacing: -0.01em;
 }

 .nav-logo span {
     color: var(--red);
 }

 .nav-lnk {
     font-family: 'Montserrat', sans-serif;
     font-weight: 600;
     font-size: 0.8rem;
     letter-spacing: 0.06em;
     text-transform: uppercase;
     color: var(--text) !important;
     text-decoration: none;
     padding: 1.1rem 0.9rem !important;
     border-bottom: 3px solid transparent;
     display: block;
 }

 .nav-lnk:hover {
     color: var(--red) !important;
     border-bottom-color: var(--red);
 }

 .nav-btn {
     background: var(--red);
     color: #fff !important;
     font-family: 'Montserrat', sans-serif;
     font-weight: 700;
     font-size: 0.8rem;
     letter-spacing: 0.06em;
     text-transform: uppercase;
     padding: 0.55rem 1.3rem !important;
     text-decoration: none;
     margin-left: 0.5rem;
 }

 .nav-btn:hover {
     background: var(--red-dark) !important;
     color: #fff !important;
 }

 /* HERO */
 #hero {
     background: linear-gradient(120deg, #fff8f7 0%, #fff 60%, #fef5f4 100%);
     border-bottom: 1px solid var(--border);
     padding: 4rem 0;
 }

 .hero-badge {
     display: inline-flex;
     align-items: center;
     gap: 0.4rem;
     background: var(--red-light);
     border: 1px solid #f0c4bf;
     padding: 0.3rem 0.85rem;
     font-size: 0.72rem;
     font-family: 'Montserrat', sans-serif;
     font-weight: 700;
     letter-spacing: 0.1em;
     text-transform: uppercase;
     color: var(--red);
     margin-bottom: 1.1rem;
 }

 .hero-h1 {
     font-size: clamp(2rem, 5vw, 3.4rem);
     font-weight: 800;
     line-height: 1.13;
     margin-bottom: 1rem;
 }

 .hero-h1 span {
     color: var(--red);
 }

 .hero-p {
     font-size: 0.97rem;
     color: var(--muted);
     max-width: 490px;
     margin-bottom: 2rem;
     line-height: 1.75;
 }

 .btn-red {
     background: var(--red);
     color: #fff;
     font-family: 'Montserrat', sans-serif;
     font-weight: 700;
     font-size: 0.85rem;
     letter-spacing: 0.06em;
     text-transform: uppercase;
     padding: 0.78rem 1.9rem;
     text-decoration: none;
     display: inline-block;
     border: none;
     margin-right: 0.7rem;
     margin-bottom: 0.5rem;
 }

 .btn-red:hover {
     background: var(--red-dark);
     color: #fff;
 }

 .btn-out {
     background: transparent;
     color: var(--red);
     font-family: 'Montserrat', sans-serif;
     font-weight: 700;
     font-size: 0.85rem;
     letter-spacing: 0.06em;
     text-transform: uppercase;
     padding: 0.75rem 1.9rem;
     text-decoration: none;
     display: inline-block;
     border: 2px solid var(--red);
     margin-bottom: 0.5rem;
 }

 .hero-feat {
     display: flex;
     flex-wrap: wrap;
     gap: 1.5rem;
     margin-top: 2.2rem;
     padding-top: 2rem;
     border-top: 1px solid var(--border);
 }

 .hf {
     display: flex;
     align-items: center;
     gap: 0.45rem;
     font-family: 'Montserrat', sans-serif;
     font-weight: 600;
     font-size: 0.78rem;
     color: var(--text);
     text-transform: uppercase;
     letter-spacing: 0.05em;
 }

 .hf i {
     color: var(--red);
     font-size: 0.95rem;
 }

 /* HERO CONTACT CARD */
 .hcard {
     background: #fff;
     border: 1px solid var(--border);
     border-top: 4px solid var(--red);
     padding: 1.75rem 1.5rem;
     box-shadow: 0 4px 20px rgba(0, 0, 0, 0.07);
 }

 .hcard-row {
     display: flex;
     align-items: flex-start;
     gap: 0.9rem;
     padding: 1rem 0;
     border-bottom: 1px solid var(--border);
 }

 .hcard-row:first-child {
     padding-top: 0;
 }

 .hcard-row:last-child {
     border-bottom: none;
     padding-bottom: 0;
 }

 .hcard-icon {
     width: 42px;
     height: 42px;
     display: flex;
     align-items: center;
     justify-content: center;
     flex-shrink: 0;
 }

 .hcard-icon.red {
     background: var(--red);
 }

 .hcard-icon.light {
     background: var(--red-light);
     border: 1px solid #f0c4bf;
 }

 .hcard-icon.green {
     background: #f0fdf4;
     border: 1px solid #bbf7d0;
 }

 .hcard-icon i {
     font-size: 1.1rem;
 }

 .hcard-icon.red i {
     color: #fff;
 }

 .hcard-icon.light i {
     color: var(--red);
 }

 .hcard-icon.green i {
     color: #16a34a;
 }

 .hcard-lbl {
     font-size: 0.68rem;
     font-family: 'Montserrat', sans-serif;
     font-weight: 700;
     letter-spacing: 0.14em;
     text-transform: uppercase;
     color: var(--muted);
     margin-bottom: 0.2rem;
 }

 .hcard-val {
     font-family: 'Montserrat', sans-serif;
     font-weight: 700;
     font-size: 1.05rem;
     color: var(--dark);
     text-decoration: none;
 }

 .hcard-val.phone {
     font-size: 1.25rem;
     color: var(--red);
 }

 .hcard-val.email {
     font-size: 0.95rem;
     color: var(--red);
 }

 .avail-tag {
     display: flex;
     align-items: center;
     gap: 0.5rem;
     font-family: 'Montserrat', sans-serif;
     font-size: 0.75rem;
     font-weight: 700;
     color: #16a34a;
     text-transform: uppercase;
     letter-spacing: 0.08em;
     margin-top: 1rem;
 }

 .gdot {
     width: 8px;
     height: 8px;
     background: #16a34a;
     border-radius: 50%;
     display: inline-block;
 }

 /* SECTIONS */
 section {
     padding: 5rem 0;
 }

 .sec-lbl {
     display: inline-block;
     background: var(--red-light);
     color: var(--red);
     font-family: 'Montserrat', sans-serif;
     font-weight: 700;
     font-size: 0.7rem;
     letter-spacing: 0.16em;
     text-transform: uppercase;
     padding: 0.28rem 0.8rem;
     margin-bottom: 0.6rem;
 }

 .sec-h {
     font-size: clamp(1.7rem, 3.5vw, 2.5rem);
     font-weight: 800;
     margin-bottom: 0.4rem;
 }

 .sec-h span {
     color: var(--red);
 }

 .rbar {
     width: 40px;
     height: 4px;
     background: var(--red);
     margin: 0.85rem 0 1.4rem;
 }

 .rbar.mx-auto {
     margin-left: auto;
     margin-right: auto;
 }

 .sec-p {
     color: var(--muted);
     font-size: 0.93rem;
     max-width: 500px;
     line-height: 1.7;
 }

 /* ABOUT */
 #about {
     background: #fff;
 }

 .about-box {
     background: var(--bg);
     border: 1px solid var(--border);
     padding: 2.5rem 1.75rem;
     text-align: center;
     height: 100%;
 }

 .about-big-i {
     font-size: 6.5rem;
     color: var(--red);
     display: block;
     margin-bottom: 1.2rem;
 }

 .astat-row {
     display: flex;
     justify-content: center;
     gap: 2rem;
     flex-wrap: wrap;
     margin-top: 1.4rem;
 }

 .astat-n {
     font-family: 'Montserrat', sans-serif;
     font-size: 1.7rem;
     font-weight: 800;
     color: var(--red);
     line-height: 1;
 }

 .astat-l {
     font-size: 0.73rem;
     color: var(--muted);
     font-weight: 600;
     text-transform: uppercase;
     letter-spacing: 0.06em;
     margin-top: 0.2rem;
 }

 .alist {
     list-style: none;
     padding: 0;
     margin-top: 1.1rem;
 }

 .alist li {
     display: flex;
     align-items: flex-start;
     gap: 0.55rem;
     font-size: 0.91rem;
     color: var(--text);
     margin-bottom: 0.65rem;
 }

 .alist li i {
     color: var(--red);
     margin-top: 3px;
     flex-shrink: 0;
 }

 /* SERVICES */
 #services {
     background: var(--bg);
 }

 .svc-card {
     background: #fff;
     border: 1px solid var(--border);
     border-bottom: 3px solid var(--red);
     padding: 1.6rem 1.4rem;
     height: 100%;
 }

 .svc-ico {
     width: 46px;
     height: 46px;
     background: var(--red-light);
     border: 1px solid #f0c4bf;
     display: flex;
     align-items: center;
     justify-content: center;
     margin-bottom: 0.9rem;
 }

 .svc-ico i {
     color: var(--red);
     font-size: 1.25rem;
 }

 .svc-t {
     font-family: 'Montserrat', sans-serif;
     font-weight: 700;
     font-size: 0.9rem;
     color: var(--dark);
     margin-bottom: 0.4rem;
 }

 .svc-d {
     font-size: 0.83rem;
     color: var(--muted);
     line-height: 1.6;
     margin: 0;
 }

 /* AREA */
 #area {
     background: #fff;
 }

 .area-box {
     background: var(--bg);
     border: 1px solid var(--border);
     padding: 2.5rem 2rem;
     text-align: center;
 }

 .area-ico {
     font-size: 5rem;
     color: var(--red);
     display: block;
     margin-bottom: 1rem;
 }

 .area-nm {
     font-family: 'Montserrat', sans-serif;
     font-size: 1.9rem;
     font-weight: 800;
     color: var(--dark);
 }

 .area-sub {
     color: var(--muted);
     font-size: 0.88rem;
     margin-top: 0.3rem;
 }

 .chip {
     display: inline-flex;
     align-items: center;
     gap: 0.35rem;
     background: var(--red-light);
     border: 1px solid #f0c4bf;
     padding: 0.3rem 0.85rem;
     margin: 0.3rem;
     font-size: 0.78rem;
     font-family: 'Montserrat', sans-serif;
     font-weight: 600;
     color: var(--red);
 }

 /* WHY */
 #why {
     background: var(--bg);
 }

 .why-card {
     background: #fff;
     border: 1px solid var(--border);
     padding: 1.4rem;
     display: flex;
     gap: 1rem;
     height: 100%;
 }

 .why-ico {
     width: 44px;
     height: 44px;
     background: var(--red);
     display: flex;
     align-items: center;
     justify-content: center;
     flex-shrink: 0;
 }

 .why-ico i {
     color: #fff;
     font-size: 1.1rem;
 }

 .why-t {
     font-family: 'Montserrat', sans-serif;
     font-weight: 700;
     font-size: 0.88rem;
     color: var(--dark);
     margin-bottom: 0.3rem;
 }

 .why-d {
     font-size: 0.82rem;
     color: var(--muted);
     margin: 0;
     line-height: 1.55;
 }

 /* CONTACT */
 #contact {
     background: #fff;
 }

 .contact-red {
     background: var(--red);
     padding: 2.5rem;
     height: 100%;
 }

 .contact-red h3 {
     font-family: 'Montserrat', sans-serif;
     font-weight: 800;
     font-size: 1.5rem;
     color: #fff;
     margin-bottom: 0.35rem;
 }

 .contact-red p {
     color: rgba(255, 255, 255, 0.8);
     font-size: 0.88rem;
     margin-bottom: 1.75rem;
 }

 .c-lbl {
     font-size: 0.7rem;
     font-family: 'Montserrat', sans-serif;
     font-weight: 700;
     letter-spacing: 0.16em;
     text-transform: uppercase;
     color: rgba(255, 255, 255, 0.65);
     margin-bottom: 0.3rem;
 }

 .c-phone {
     font-family: 'Montserrat', sans-serif;
     font-size: clamp(1.9rem, 4vw, 2.8rem);
     font-weight: 800;
     color: #fff;
     text-decoration: none;
     display: block;
     line-height: 1.1;
     margin-bottom: 0.3rem;
 }

 .c-email {
     font-family: 'Montserrat', sans-serif;
     font-size: clamp(0.95rem, 2vw, 1.3rem);
     font-weight: 600;
     color: rgba(255, 255, 255, 0.9);
     text-decoration: none;
     display: block;
     margin-bottom: 1.5rem;
 }

 .c-pill {
     display: inline-flex;
     align-items: center;
     gap: 0.5rem;
     background: rgba(255, 255, 255, 0.18);
     border: 1px solid rgba(255, 255, 255, 0.28);
     padding: 0.38rem 1rem;
     font-family: 'Montserrat', sans-serif;
     font-size: 0.78rem;
     font-weight: 700;
     color: #fff;
     text-transform: uppercase;
     letter-spacing: 0.08em;
 }

 .contact-side {
     background: var(--bg);
     border: 1px solid var(--border);
     padding: 2.5rem 2rem;
     height: 100%;
 }

 .cinfo {
     display: flex;
     align-items: flex-start;
     gap: 0.75rem;
     margin-bottom: 1.2rem;
 }

 .cinfo-ic {
     width: 36px;
     height: 36px;
     background: var(--red-light);
     border: 1px solid #f0c4bf;
     display: flex;
     align-items: center;
     justify-content: center;
     flex-shrink: 0;
 }

 .cinfo-ic i {
     color: var(--red);
     font-size: 0.9rem;
 }

 .cinfo-lbl {
     font-size: 0.68rem;
     font-family: 'Montserrat', sans-serif;
     font-weight: 700;
     letter-spacing: 0.12em;
     text-transform: uppercase;
     color: var(--red);
     margin-bottom: 0.18rem;
 }

 .cinfo-v {
     font-size: 0.88rem;
     color: var(--dark);
     font-weight: 500;
 }

 .cinfo-v a {
     color: var(--dark);
     text-decoration: none;
 }

 .info-note {
     background: var(--red-light);
     border: 1px solid #f0c4bf;
     padding: 0.85rem 1rem;
     margin-top: 1.1rem;
     font-size: 0.82rem;
     color: var(--text);
     line-height: 1.6;
 }

 /* FOOTER */
 footer {
     background: #1c1c1c;
     color: #aaa;
     padding: 3rem 0 1.2rem;
 }

 .f-logo {
     font-family: 'Montserrat', sans-serif;
     font-size: 1.45rem;
     font-weight: 800;
     color: #fff;
     margin-bottom: 0.4rem;
 }

 .f-logo span {
     color: var(--red);
 }

 .f-tag {
     font-size: 0.83rem;
     color: #666;
 }

 .f-h {
     font-family: 'Montserrat', sans-serif;
     font-weight: 700;
     font-size: 0.78rem;
     letter-spacing: 0.14em;
     text-transform: uppercase;
     color: #fff;
     margin-bottom: 1rem;
 }

 .f-list {
     list-style: none;
     padding: 0;
 }

 .f-list li {
     margin-bottom: 0.45rem;
 }

 .f-list a {
     color: #666;
     font-size: 0.83rem;
     text-decoration: none;
 }

 .f-list a:hover {
     color: var(--red);
 }

 .f-item {
     display: flex;
     align-items: flex-start;
     gap: 0.5rem;
     color: #666;
     font-size: 0.83rem;
     margin-bottom: 0.55rem;
 }

 .f-item i {
     color: var(--red);
     margin-top: 2px;
     flex-shrink: 0;
 }

 .f-bot {
     border-top: 1px solid #2a2a2a;
     margin-top: 2.5rem;
     padding-top: 1.2rem;
     display: flex;
     flex-wrap: wrap;
     justify-content: space-between;
     gap: 0.5rem;
 }

 .f-copy {
     font-size: 0.78rem;
     color: #444;
 }

 .f-emerg {
     font-size: 0.78rem;
     color: var(--red);
     font-weight: 600;
 }

 @media(max-width:767px) {
     #hero {
         padding: 2.5rem 0;
     }

     .hcard {
         margin-top: 2rem;
     }

     .contact-red {
         padding: 1.75rem;
     }

     .contact-red h3 {
         font-size: 1.3rem;
     }
     .contact-img img {
        height: 400px;
        width: 100%;
     }
 }