/* CSS Reset & Design Tokens */*, *::before, *::after {    margin: 0;    padding: 0;    box-sizing: border-box;}:root {    --color-bg-deep: #0e1711;    --color-primary: #172c1a;    --color-leaf: #3b6e3f;    --color-accent: #4e8746;    --color-charcoal: #181818;    --color-light-bg: #f4f6f4;    --color-white: #ffffff;    --color-text-muted: #d0d7d0;    --color-text-dark: #444444;    --transition-smooth: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);}html {    scroll-behavior: smooth;}body {    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;    color: var(--color-charcoal);    background-color: var(--color-white);    line-height: 1.6;    overflow-x: hidden;}/* Full Width Header Container (140px height) */header {    position: fixed;    top: 0;    left: 0;    width: 100%;    height: 140px;    background-color: var(--color-white);    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);    z-index: 1000;    border-bottom: 1px solid #e2e8e2;}/* Centered Inner Container capped at 1280px */.header-inner {    width: 100%;    max-width: 1280px;    height: 100%;    margin: 0 auto;    display: flex;    justify-content: space-between;    align-items: center;    padding: 0 2.5rem;}.brand-container {    display: flex;    align-items: center;    gap: 14px;    text-decoration: none;}.brand-container img {    height: 95px;    width: auto;    object-fit: contain;}.brand-text {    display: flex;    flex-direction: column;    justify-content: center;}.brand-top {    font-size: 0.9rem;    font-weight: 700;    color: var(--color-accent);    letter-spacing: 1px;    line-height: 1.2;}.brand-bottom {    font-size: 1.2rem;    font-weight: 800;    color: var(--color-charcoal);    letter-spacing: 0.5px;    line-height: 1.2;}.menu-toggle {    display: none;    background: none;    border: none;    color: var(--color-primary);    font-size: 2.4rem;    cursor: pointer;}nav ul {    display: flex;    list-style: none;    gap: 2rem;    align-items: center;}nav ul li a {    color: var(--color-charcoal);    text-decoration: none;    font-weight: 600;    font-size: 1rem;    text-transform: uppercase;    transition: var(--transition-smooth);}nav ul li a:hover {    color: var(--color-accent);}/* Section Layout Structure (Offset for 140px header) */section {    position: relative;    min-height: 100vh;    width: 100%;    display: flex;    align-items: center;    justify-content: center;    padding: calc(140px + 2rem) 2rem 6rem 2rem;}.container {    width: 100%;    max-width: 1280px;    margin: 0 auto;    z-index: 2;}/* Hero Section */#home {    position: relative;    min-height: 100vh;    width: 100%;    display: flex;    align-items: center;    justify-content: center;    padding: calc(140px + 2rem) 2rem 6rem 2rem;    color: var(--color-white);    text-align: center;    overflow: hidden;    background-color: var(--color-bg-deep);}#home::before {    content: '';    position: absolute;    top: 0;    left: 0;    width: 100%;    height: 100%;    background: url('img/hpbg.jpg');    background-size: cover;    background-position: center 140px;    opacity: 1;    animation: fadeBackground 8s cubic-bezier(0, 0, 0.2, 1) forwards;    z-index: 1;}.hero-content {    position: relative;    z-index: 2;    max-width: 850px;    margin: 0 auto;}@keyframes fadeBackground {    0% {        opacity: 1;     }    100% {        opacity: 0.2;     }}.hero-content h1 {    font-size: 3.5rem;    font-weight: 800;    margin-bottom: 1.25rem;    line-height: 1.15;    letter-spacing: -0.5px;}.hero-content p {    font-size: 1.2rem;    color: var(--color-text-muted);    margin-bottom: 2.5rem;    font-weight: 400;}/* Buttons */.btn {    display: inline-block;    background-color: var(--color-accent);    color: var(--color-white);    padding: 0.95rem 2.4rem;    text-decoration: none;    font-weight: 700;    font-size: 1rem;    border-radius: 6px;    border: none;    cursor: pointer;    transition: var(--transition-smooth);    box-shadow: 0 4px 14px rgba(78, 135, 70, 0.35);}.btn:hover {    background-color: #3d6e37;    transform: translateY(-2px);    box-shadow: 0 6px 20px rgba(78, 135, 70, 0.45);}/* About Section */#about {    position: relative;    color: var(--color-white);    overflow: hidden;}#about::before {    content: '';    position: absolute;    top: 0;    left: 0;    width: 100%;    height: 100%;    background: url('img/aboutus.svg');    background-size: cover;    background-position: center;    background-attachment: fixed;    opacity: 0;    z-index: 1;}#about.fade-active::before {    animation: fadeInSvg 8s ease-in-out forwards;}#about .container,#about .about-grid {    position: relative;    z-index: 2;}.about-grid {    display: grid;    grid-template-columns: 1fr;    gap: 4rem;    align-items: center;}.about-text h2 {    font-size: 1.75rem;    font-weight: 800;    margin-bottom: 1.25rem;    color: #2a4e36 !important;    letter-spacing: -0.5px;}.about-text p {    font-size: 1.05rem;    color: #000000 !important;    margin-bottom: 1.75rem;    line-height: 1.7;}.about-card {    background: rgba(255, 255, 255, 0.08);    backdrop-filter: blur(10px);    padding: 3rem;    border-radius: 12px;    border-left: 6px solid var(--color-accent);    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);}.about-card h3 {    color: #2a4e36 !important;    font-size: 1.4rem;    font-weight: 700;    margin-bottom: 0.75rem;}.about-card p {    color: #000000;    margin-bottom: 0;}/* Services Section */#services {    position: relative;    color: var(--color-white);    overflow: hidden;}#services::before {    content: '';    position: absolute;    top: 0;    left: 0;    width: 100%;    height: 100%;    background: url('img/service.svg');    background-size: cover;    background-position: center;    background-attachment: fixed;    opacity: 0;    z-index: 1;}#services.fade-active::before {    animation: fadeInSvg 8s ease-in-out forwards;}#services .container,#services .section-header,#services .services-grid {    position: relative;    z-index: 2;}.section-header {    text-align: center;    margin-bottom: 4rem;}.section-header h2 {    color: var(--color-primary);    font-size: 1.75rem;    font-weight: 800;    margin-bottom: 0.75rem;    letter-spacing: -0.5px;    text-align: center;}.section-header p {    color: var(--color-text-dark);    font-size: 1.15rem;    text-align: center;}.services-grid {    display: grid;    grid-template-columns: 1fr;    gap: 2rem;}.service-card {    background-size: cover;    background-position: center;    background-repeat: no-repeat;    border-radius: 10px;    border: 1px solid #e2e8e2;    padding: 12rem 2.25rem;    position: relative;    overflow: hidden;    transition: var(--transition-smooth);}.service-card::before {    content: '';    position: absolute;    top: 0;    left: 0;    width: 100%;    height: 100%;    background: rgba(0, 0, 0, 0.55);    z-index: 1;    transition: var(--transition-smooth);}.service-card:hover::before {    background: rgba(0, 0, 0, 0);}.service-card h3,.service-card p {    position: relative;    z-index: 2;}.service-card h3 {    font-size: 1.4rem;    font-weight: 700;    margin-bottom: 0.85rem;    color: var(--color-white);}.service-card p {    color: var(--color-text-muted);    font-size: 0.98rem;    line-height: 1.6;}.service-card:hover {    transform: translateY(-5px);    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);}.service-card:nth-child(1) {    background-image: url('img/tree-removal.jpg');}.service-card:nth-child(2) {    background-image: url('img/trimming-pruning.jpg');}.service-card:nth-child(3) {    background-image: url('img/palm-trimming.jpg');}/* Recent Work Section (Full Width) */#work {    background-color: var(--color-white);    color: var(--color-charcoal);    display: flex;    flex-direction: column;    align-items: stretch;    padding: calc(140px + 2rem) 0 6rem 0;}/* Full-Width Image Slider (Style 5) CSS */.style-5 {  position: relative;  width: 100%;  height: clamp(300px, 45vw, 750px);  overflow: hidden;  font-family: sans-serif;}.style-5 .slide {  position: absolute;  top: 0;  left: 0;  width: 100%;  height: 100%;  background-size: cover;  background-position: center;  opacity: 0;  transition: opacity 0.7s ease;  display: flex;  align-items: center;  padding-left: clamp(20px, 5vw, 80px);  box-sizing: border-box;}.style-5 .slide.active { opacity: 1; }.style-5 .glass-card {  background: transparent;  backdrop-filter: none;  -webkit-backdrop-filter: none;  border: 2px solid rgba(255, 255, 255, 0.7);  padding: clamp(15px, 3vw, 35px);   border-radius: 16px;  max-width: 400px;  width: 100%;  color: white;  box-shadow: 0 6px 25px rgba(0, 0, 0, 0.3);}.style-5 .glass-card h3 {   margin: 0 0 10px;   font-size: clamp(18px, 2vw, 24px);   text-shadow: 0 2px 6px rgba(0, 0, 0, 0.6);}.style-5 .glass-card p {   margin: 0;   font-size: clamp(12px, 1.2vw, 14px);   line-height: 1.5;   text-shadow: 0 1px 4px rgba(0, 0, 0, 0.6);}.style-5 .grid-nav {  position: absolute;  bottom: clamp(15px, 3vw, 25px);  left: 50%;  transform: translateX(-50%);  display: grid;  grid-template-columns: repeat(2, 1fr);  gap: 6px;  background: rgba(0, 0, 0, 0.4);  padding: 8px;  border-radius: 10px;  border: 1px solid rgba(255, 255, 255, 0.2);  z-index: 10;}.style-5 .grid-square {  width: clamp(14px, 2vw, 18px);  height: clamp(14px, 2vw, 18px);  border: 1.5px solid rgba(255, 255, 255, 0.7);  border-radius: 4px;  background: transparent;  cursor: pointer;  transition: all 0.25s ease;}.style-5 .grid-square:hover {  border-color: #fff;  transform: scale(1.05);}.style-5 .grid-square.active {  background: rgba(255, 255, 255, 0.9);  border-color: #fff;}@media (max-width: 600px) {  .style-5 .slide {    align-items: flex-end;    padding-bottom: 90px;    padding-left: 20px;    padding-right: 20px;  }  .style-5 .glass-card {    width: fit-content;            max-width: 280px;                padding: 15px 20px;          }  .style-5 .grid-nav {    bottom: 15px;    left: 50%;    transform: translateX(-50%);  }}/* Contact Section */#contact {    background-color: #2a4e36;    color: var(--color-white);}#contact .section-header h2 {    color: var(--color-white);}#contact .section-header p {    color: var(--color-text-muted);}.contact-layout {    display: grid;    grid-template-columns: 1fr;    gap: 3.5rem;    padding: 3.5rem;    border-radius: 12px;}.contact-info h3 {    font-size: 1.6rem;    font-weight: 700;    margin-bottom: 1.2rem;}.contact-info p {    margin-bottom: 1rem;    color: #FFFFFF;    font-size: 1.02rem;}.contact-info p i {    color: var(--color-accent);    font-size: 1.2rem;    width: 24px;    text-align: center;}/* Form section */.contact-form {    display: flex;    flex-direction: column;}.contact-form form {    display: flex;    flex-direction: column;    gap: 10px;}.contact-form input, .contact-form textarea {    width: 100%;    padding: 1rem 1.15rem;    border: none;    border-bottom: 1px solid;    border-radius: 0;    background-color: transparent;    color: var(--color-white);    font-family: inherit;    font-size: 1rem;    transition: var(--transition-smooth);}.contact-form input:focus,.contact-form textarea:focus {    outline: none;    border-bottom-color: var(--color-accent);    box-shadow: 0 1px 0 0 var(--color-accent);}.contact-form textarea {    resize: vertical;    height: 140px;}.contact-form button {    margin-top: 15px;    width: 50%;    text-align: center;    align-self: flex-start;}/* License, bond, insured CSS */.footer-creds {    font-size: 0.9rem;    text-transform: uppercase;    letter-spacing: 1px;    margin-bottom: 10px;    text-align: center;}.footer-license {    font-weight: 700;    color: #000000;    margin-bottom: 20px;    text-align: center;}/* Full-Width Footer Styles */footer {    background-color: var(--color-white);    color: var(--color-charcoal);    width: 100%;    padding: 2.5rem 0;    border-top: 1px solid #e2e8e2;}.footer-inner {    width: 100%;    max-width: 1280px;    margin: 0 auto;    display: flex;    justify-content: space-between;    align-items: center;    padding: 0 2.5rem;}.footer-inner p {    text-align: left;    font-weight: 600;    margin: 0;    font-size: 1rem;    color: var(--color-text-dark);}/* Custom Social Media Styles */.social_media {    margin: 0;    padding: 0;    display: flex;    font-size: 25px;}ul, li {    list-style: none;}.social_media li a {    position: relative;    width: 60px;    height: 60px;    display: block;    text-align: center;    margin: 0 10px;    border-radius: 50%;    padding: 6px;    box-sizing: border-box;    text-decoration: none;    box-shadow: 0 10px 15px rgba(0,0,0,0.3);    background: linear-gradient(0deg, #ddd, #fff);    transition: 0.5s;}.social_media li a:hover {    box-shadow: 0 2px 5px rgba(0,0,0,0.3);}.social_media li a i {    width: 100%;    height: 100%;    display: block;    border-radius: 50%;    line-height: calc(60px - 15px);    color: #262626;    background: linear-gradient(0deg, #fff, #ddd);    transition: .5s;}.social_media li:nth-child(1) a:hover i { color: #3b5998; }.social_media li:nth-child(2) a:hover i { color: #00aced; }.social_media li:nth-child(3) a:hover i { color: #e4405f; }.social_media li:nth-child(4) a:hover i { color: #cd201f; }.social_media li:nth-child(5) a:hover i { color: #0077B5; }/* Fade-In Animation Keyframes */@keyframes fadeInSvg {    0% {        opacity: 0;    }    100% {        opacity: 1;    }}/* Success Popup Overlay Styles */.popup-overlay {    position: fixed;    top: 0;    left: 0;    width: 100%;    height: 100%;    background-color: rgba(0, 0, 0, 0.75);    display: flex;    justify-content: center;    align-items: center;    z-index: 9999;}.popup-content {    background-color: #1b3824;    color: #ffffff;    padding: 2.5rem 2rem;    border-radius: 8px;    max-width: 450px;    width: 90%;    text-align: center;    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);    border: 1px solid rgba(255, 255, 255, 0.15);}.popup-content h3 {    font-size: 1.5rem;    margin-bottom: 1rem;    color: var(--color-accent, #4e8746);}.popup-content p {    font-size: 1.05rem;    line-height: 1.5;    color: #f0f0f0;}.countdown-text {    margin-top: 1.5rem;    font-size: 0.9rem;    color: #b0b0b0;}/* Mobile Sticky Call Button Base */.mobile-call-bar {    display: none; }/* ==========================================================   RESPONSIVE BREAKPOINTS (Desktop vs Tablet/Mobile)   ========================================================== *//* Desktop view for screens wider than 1024px */@media (min-width: 1025px) {    .menu-toggle {        display: none !important;    }    nav ul {        display: flex !important;    }    .services-grid {        grid-template-columns: repeat(3, 1fr) !important;    }    .mobile-call-bar {        display: none !important;    }    body {        padding-bottom: 0 !important;    }    .about-grid {        grid-template-columns: 1.1fr 0.9fr;        gap: 5rem;    }    .contact-layout {        grid-template-columns: 1fr 1.4fr;        gap: 4.5rem;        padding: 4rem;    }}/* Tablet and Mobile view for 1024px and below (Covers all iPads & Phones) */@media (max-width: 1024px) {    #work {        padding-top: calc(140px + 1rem) !important;    }        .header-inner {        padding: 0 1.5rem;        display: flex;        justify-content: space-between;        align-items: center;    }        nav {        width: 0;        overflow: visible;    }    .menu-toggle {        display: block !important;        margin-left: auto !important;    }        nav ul {        display: none;        flex-direction: column;        position: absolute;        top: 140px;        left: 0;        width: 100%;        background-color: var(--color-white);        padding: 2rem 0;        text-align: center;        box-shadow: 0 15px 30px rgba(0,0,0,0.1);        border-bottom: 2px solid var(--color-accent);    }        nav ul.active {        display: flex;        flex-direction: column;        position: absolute;        top: 140px;        left: 0;        width: 100%;        background-color: var(--color-white);        padding: 2rem 0;        text-align: center;        box-shadow: 0 15px 30px rgba(0,0,0,0.1);        border-bottom: 2px solid var(--color-accent);    }        nav ul li a {        color: var(--color-charcoal);        text-decoration: none;        font-weight: 600;        font-size: 1rem;        text-transform: uppercase;        transition: var(--transition-smooth);    }        nav ul li {        margin: 0.75rem 0;    }    .footer-inner {        flex-direction: column;        gap: 1.5rem;        text-align: center;        padding: 0 1.5rem;    }        .footer-inner p {        text-align: center;    }        .contact-form button {        width: 100%;        text-align: center;        align-self: stretch;    }        #contact .section-header {        margin-bottom: 1rem;    }    /* Mobile Sticky Call Button */    .mobile-call-bar {        display: block !important;        position: fixed;        bottom: 0;        left: 0;        width: 100%;        background-color: #1b3824;        box-shadow: 0 -4px 12px rgba(0, 0, 0, 0.3);        z-index: 9999;        padding: 10px 15px;        box-sizing: border-box;    }    .mobile-call-btn {        display: flex;        justify-content: center;        align-items: center;        gap: 10px;        background-color: var(--color-accent, #4e8746);        color: #ffffff;        text-decoration: none;        padding: 12px;        border-radius: 6px;        font-size: 1.15rem;        font-weight: bold;        width: 100%;        box-sizing: border-box;        text-transform: uppercase;        letter-spacing: 0.5px;    }    .mobile-call-btn:hover {        opacity: 0.95;    }    body {        padding-bottom: 75px;    }    /* Social Media Icons Scaling for Mobile/iPad */    .social_media li a {        width: 46px;        height: 46px;        margin: 0 6px;        padding: 4px;    }    .social_media li a i {        line-height: calc(46px - 8px);        font-size: 20px;    }    /* Hero and Contact Layout Fixes */    .hero-content h1 {        font-size: 2.3rem;         line-height: 1.2;    }    .contact-layout {        padding: 1.5rem;        width: 100%;        box-sizing: border-box;    }    .contact-form input,     .contact-form textarea {        width: 100%;        box-sizing: border-box;    }    .services-grid {        display: grid !important;        grid-template-columns: 1fr !important;    }}/* Medium Desktop Enhancements */@media (min-width: 768px) and (max-width: 1024px) {    .about-grid {        grid-template-columns: 1.1fr 0.9fr;        gap: 3rem;    }    .services-grid {        grid-template-columns: 1fr !important;    }}