/*
Theme Name: Meisterform
Description: Custom WordPress theme converted from HTML/CSS
Version: 1.0
Author: Antigravity
*/
:root{--ink:#111314;--paper:#e9e9e5;--orange:#bf2026;--line:rgba(17,19,20,.18);--mono:'DM Mono',monospace;--sans:'Manrope',sans-serif}
.page-hero{min-height:590px;background:#191b1a;color:#e9e9e5;display:grid;grid-template-columns:1fr 1.15fr;align-items:stretch}.page-hero>div{padding:120px 8vw;display:flex;justify-content:center;flex-direction:column}.page-hero h1{font-size:clamp(62px,7vw,110px);line-height:.9;letter-spacing:-.075em;margin:0}.page-hero h1 em,.contact-intro h1 em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.07em}.page-hero p:not(.eyebrow){max-width:340px;font-size:14px;line-height:1.7;color:#a5a7a2;margin-top:34px}.page-hero img{min-height:590px}.page-hero-invert{background:var(--orange)}.page-hero-invert .eyebrow,.page-hero-invert p:not(.eyebrow){color:#fff}.service-grid,.collab-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0;border-top:1px solid var(--line)}.service-grid article,.collab-grid article{padding:32px 32px 38px 0;border-bottom:1px solid var(--line);min-height:220px}.service-grid article:nth-child(odd),.collab-grid article:nth-child(odd){border-right:1px solid var(--line);padding-right:45px}.service-grid article:nth-child(even),.collab-grid article:nth-child(even){padding-left:45px}.service-grid span,.collab-grid span{font:11px var(--mono);color:var(--orange)}.service-grid h3,.collab-grid h3{font-size:23px;letter-spacing:-.04em;margin:25px 0 12px}.service-grid p,.collab-grid p{font-size:13px;line-height:1.7;color:#5d605e;max-width:410px}.dark-callout{background:var(--orange);color:#fff;padding:100px 8vw}.dark-callout .eyebrow{color:#fff}.dark-callout h2{font-size:clamp(50px,6vw,90px);line-height:.92;letter-spacing:-.07em;margin:0 0 40px}.dark-callout h2 em{font-family:Georgia,serif;font-weight:400}.story-section{display:grid;grid-template-columns:1fr 1.4fr;gap:10vw}.story-number{font-size:clamp(100px,15vw,220px);font-weight:800;letter-spacing:-.13em;color:var(--orange)}.story-number span{font-weight:400}.story-section h2{font-size:clamp(52px,6vw,86px);line-height:.9;letter-spacing:-.075em;margin:0 0 35px}.story-section h2 em{font-family:Georgia,serif;font-weight:400}.story-section>div:last-child p:not(.eyebrow){font-size:15px;line-height:1.8;color:#5d605e;max-width:580px}.values-band{display:grid;grid-template-columns:repeat(4,1fr);background:#191b1a;color:#e9e9e5;padding:45px 8vw;gap:25px}.values-band div{display:flex;flex-direction:column;gap:8px}.values-band strong{font:16px var(--mono);color:var(--orange)}.values-band span{font-size:11px;color:#a5a7a2}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:12vw;min-height:720px}.contact-intro h1{font-size:clamp(62px,7vw,110px);line-height:.9;letter-spacing:-.075em;margin:0}.contact-intro>p:not(.eyebrow){font-size:14px;line-height:1.7;color:#5d605e;max-width:360px;margin:35px 0 55px}.contact-details{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:28px 35px;padding-top:22px}.contact-details div{display:flex;flex-direction:column;gap:8px}.contact-details span{font:10px var(--mono);text-transform:uppercase;color:#777a76}.contact-details a,.contact-details p{font-size:13px;margin:0;line-height:1.5}.contact-details a:hover{color:var(--orange)}.contact-form{align-self:center}.contact-form textarea{grid-column:2;background:none;border:0;border-bottom:1px solid transparent;padding:10px 0 0;font:14px var(--sans);outline:0;color:#777a76;resize:vertical}.contact-form textarea:focus{border-bottom-color:var(--orange)}.footer-brand small{font:10px var(--mono);color:#a5a7a2;display:block;margin-top:24px}.footer-links{display:flex;flex-direction:column;gap:10px;font:10px var(--mono);text-transform:uppercase;color:#a5a7a2}.footer-links a:hover{color:var(--orange)}.footer-contact{display:flex;flex-direction:column;align-items:flex-end;gap:10px;font:10px var(--mono);color:#a5a7a2;text-align:right}
@media(max-width:760px){.footer-contact{align-items:flex-start;text-align:left;grid-column:1 / -1}.page-hero{display:flex;flex-direction:column;min-height:0}.page-hero>div{padding:80px 8vw 65px;min-height:470px}.page-hero img{height:430px;min-height:0}.page-hero h1{font-size:66px}.service-grid,.collab-grid{display:block}.service-grid article,.collab-grid article,.service-grid article:nth-child(odd),.collab-grid article:nth-child(odd),.service-grid article:nth-child(even),.collab-grid article:nth-child(even){border-right:0;padding:28px 0;min-height:0}.story-section,.contact-layout{display:block;min-height:0}.story-number{font-size:130px;margin-bottom:45px}.story-section h2,.contact-intro h1{font-size:55px}.values-band{grid-template-columns:1fr 1fr;gap:30px;padding:45px 8vw}.contact-intro{margin-bottom:65px}.dark-callout{padding:75px 8vw}.footer-links{grid-column:2;grid-row:1 / span 2}}
.main-nav a.active{color:var(--orange);opacity:1}
@media(max-width:760px){.site-header{height:auto;min-height:70px;flex-wrap:wrap;padding-bottom:15px}.main-nav{display:flex;order:3;width:100%;margin:15px 0 0;gap:15px 19px;flex-wrap:wrap}.main-nav a{font-size:9px}}
:root{--ink:#111314;--paper:#e9e9e5;--orange:#ff5a1f;--line:rgba(17,19,20,.18);--mono:'DM Mono',monospace;--sans:'Manrope',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:100%;object-fit:cover}.site-header{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 4vw;border-bottom:1px solid var(--line);position:relative;z-index:2}.brand{font-size:25px;letter-spacing:-.11em;font-weight:800}.brand span{color:var(--orange);padding-left:3px}.main-nav{display:flex;gap:32px;margin-left:9vw}.main-nav a,.header-cta,.text-link{font-size:11px;text-transform:uppercase;letter-spacing:.09em;font-weight:700}.main-nav a{opacity:.62}.main-nav a:hover,.text-link:hover{opacity:1;color:var(--orange)}.header-cta{border-bottom:1px solid var(--ink);padding-bottom:5px}.header-cta span,.text-link span{color:var(--orange);font-size:15px;margin-left:5px}.hero{min-height:calc(100vh - 84px);display:grid;grid-template-columns:1.03fr 1.32fr 52px;align-items:stretch;padding-left:4vw}.hero-copy{display:flex;justify-content:center;flex-direction:column;padding-right:5vw;position:relative}.eyebrow{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;margin:0 0 28px;color:#5d605e}.status-dot{display:inline-block;width:7px;height:7px;background:var(--orange);border-radius:50%;margin-right:8px}.hero h1,.section-heading h2,.craft-copy h2,.build-intro h2{font-size:clamp(52px,6.8vw,110px);line-height:.91;letter-spacing:-.075em;margin:0;font-weight:700}.hero h1 em,.section-heading em,.craft-copy em,.build-intro em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.07em}.hero-intro{max-width:290px;font-size:14px;line-height:1.6;margin:37px 0 32px;color:#5d605e}.hero-actions{display:flex;align-items:center;gap:29px}.button{border:0;cursor:pointer;font-family:var(--sans);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;padding:17px 21px;display:inline-flex;align-items:center;gap:30px}.button-primary{background:var(--orange);color:#fff}.button-primary:hover{background:var(--ink)}.text-link{border-bottom:1px solid var(--ink);padding-bottom:5px}.hero-image-wrap{position:relative;min-height:580px}.hero-image-wrap img{filter:contrast(1.1)}.hero-image-label{position:absolute;bottom:20px;left:22px;right:22px;display:flex;justify-content:space-between;color:#fff;font:10px var(--mono);text-transform:uppercase}.hero-side-note{writing-mode:vertical-rl;transform:rotate(180deg);font:10px var(--mono);letter-spacing:.15em;display:flex;align-items:center;justify-content:center;color:#737672;border-left:1px solid var(--line)}.ticker{height:66px;background:var(--orange);display:flex;align-items:center;justify-content:space-around;gap:10px;padding:0 4vw;color:#fff;font:10px var(--mono);text-transform:uppercase;letter-spacing:.1em}.ticker i{font-style:normal;font-size:17px}.section-shell{padding:130px 8vw}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:60px}.section-heading h2,.craft-copy h2,.build-intro h2{font-size:clamp(45px,5vw,76px)}.section-copy{max-width:250px;font-size:13px;line-height:1.6;color:#5d605e;margin:0 5vw 5px 20px}.gallery-grid{display:grid;grid-template-columns:1.35fr .82fr;grid-template-rows:250px 250px;gap:18px}.gallery-card{position:relative;overflow:hidden;background:#bbb}.gallery-card img{transition:transform .7s cubic-bezier(.2,.6,.2,1)}.gallery-card:hover img{transform:scale(1.04)}.gallery-card-large{grid-row:span 2}.gallery-card-wide{grid-column:2}.gallery-card-tall img{object-position:center}.card-meta{position:absolute;bottom:0;left:0;right:0;padding:18px 20px;display:flex;justify-content:space-between;color:#fff;font:10px var(--mono);background:linear-gradient(transparent,rgba(0,0,0,.7))}.craft-section{background:#191b1a;color:#e9e9e5;display:grid;grid-template-columns:1fr 1fr;min-height:600px}.craft-image{min-height:600px}.craft-image img{filter:grayscale(1);opacity:.84}.craft-copy{padding:120px 9vw 80px}.craft-copy .eyebrow{color:#a5a7a2}.craft-copy>p:not(.eyebrow){max-width:330px;font-size:14px;line-height:1.75;color:#a5a7a2;margin:34px 0}.craft-copy .text-link{border-color:#e9e9e5}.spec-row{border-top:1px solid rgba(233,233,229,.25);display:flex;gap:35px;margin-top:80px;padding-top:20px}.spec-row div{display:flex;flex-direction:column;gap:8px}.spec-row strong{font:14px var(--mono);color:var(--orange)}.spec-row span{font-size:10px;color:#a5a7a2}.build-section{display:grid;grid-template-columns:1fr 1.1fr;gap:12vw}.build-intro>p:last-child{font-size:14px;line-height:1.6;max-width:260px;margin-top:35px;color:#5d605e}.build-form{border-top:1px solid var(--line)}.build-form label{display:grid;grid-template-columns:35px 1fr;grid-template-rows:auto auto;padding:23px 0;border-bottom:1px solid var(--line);font:10px var(--mono);color:#777a76}.build-form label span{font-family:var(--sans);font-size:14px;color:var(--ink);font-weight:600}.build-form select,.build-form input{grid-column:2;background:none;border:0;border-bottom:1px solid transparent;padding:10px 0 0;font:14px var(--sans);outline:0;color:#777a76}.build-form select:focus,.build-form input:focus{border-bottom-color:var(--orange)}.build-form .button{margin-top:30px}.form-note{font-size:12px;color:var(--orange);margin:18px 0 0}.site-footer{background:#191b1a;color:#e9e9e5;min-height:150px;padding:35px 4vw;display:flex;align-items:flex-start;justify-content:space-between}.site-footer p{margin:4px 0;font:10px var(--mono);text-transform:uppercase;color:#a5a7a2}.site-footer div{display:flex;flex-direction:column;align-items:flex-end;gap:12px;font:10px var(--mono);color:#a5a7a2}.site-footer a:hover{color:var(--orange)}@media(max-width:760px){.site-header{height:70px;padding:0 6vw}.main-nav{display:none}.header-cta{font-size:9px}.hero{display:flex;flex-direction:column;padding:0;min-height:auto}.hero-copy{padding:80px 8vw 65px;min-height:530px}.hero h1{font-size:66px}.hero-image-wrap{height:60vh;min-height:420px}.hero-side-note{display:none}.ticker{height:auto;min-height:70px;flex-wrap:wrap;padding:18px 6vw;gap:12px 18px}.ticker i{display:none}.section-shell{padding:85px 8vw}.section-heading{display:block;margin-bottom:38px}.section-heading h2{font-size:49px}.section-copy{margin:28px 0 0}.gallery-grid{display:flex;flex-direction:column;gap:14px}.gallery-card{height:290px}.gallery-card-large{height:390px}.craft-section{display:flex;flex-direction:column}.craft-image{height:390px;min-height:0}.craft-copy{padding:75px 8vw}.craft-copy h2{font-size:49px}.spec-row{gap:20px;margin-top:60px;flex-wrap:wrap}.build-section{display:block}.build-intro{margin-bottom:55px}.build-intro h2{font-size:49px}.site-footer{display:grid;grid-template-columns:1fr 1fr;gap:35px}.site-footer div{align-items:flex-start;grid-column:1 / -1}}
/* Mobile Menu Additions */
.mobile-toggle, .mobile-close {
    display: none;
    background: none;
    border: none;
    color: var(--ink);
    cursor: pointer;
    padding: 0;
}
.mobile-toggle {
    font-size: 24px;
    margin-right: 15px;
}
.mobile-close {
    font-size: 30px;
    position: absolute;
    top: 20px;
    right: 20px;
}
.mobile-overlay {
    display: none;
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    background: transparent; /* Changed from dark opacity to completely transparent */
    z-index: 999;
}
.mobile-overlay.active {
    display: block;
}

@media(max-width: 760px) {
    .site-header {
        justify-content: flex-start;
        padding-bottom: 0;
        height: 70px;
        flex-wrap: nowrap;
    }
    .mobile-toggle, .mobile-close {
        display: block;
    }
    .brand {
        margin-right: auto;
    }
    .main-nav {
        position: fixed;
        top: 0;
        left: -280px;
        width: 250px;
        height: 100vh;
        background: var(--paper);
        flex-direction: column;
        padding: 80px 30px;
        box-shadow: 2px 0 10px rgba(0,0,0,0.1);
        transition: left 0.3s ease;
        z-index: 1000;
        margin: 0;
        gap: 25px;
        display: flex;
    }
    .main-nav.menu-open {
        left: 0;
    }
    .main-nav a {
        font-family: var(--sans);
        font-size: 11px !important;
        text-transform: uppercase;
        letter-spacing: .09em;
        font-weight: 700 !important;
        opacity: 1;
    }
}
.site-header { z-index: 9999 !important; }
.mobile-overlay { z-index: -1 !important; }

/* BLOG STYLES */
.blog-listing-main {
    background: var(--paper);
    padding-bottom: 80px;
}
.blog-hero-header {
    text-align: center;
    padding: 80px 4vw 60px;
    background: #191b1a;
    color: var(--paper);
}
.blog-hero-header h1 {
    font-size: clamp(40px, 6vw, 75px);
    margin: 0 0 15px;
    letter-spacing: -0.04em;
}
.blog-hero-header p {
    font-size: 18px;
    color: #a5a7a2;
}
.featured-blog-card {
    display: flex;
    flex-direction: column;
    background: #fff;
    margin: -40px 4vw 80px;
    border: 1px solid var(--line);
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0,0,0,0.05);
}
@media(min-width: 900px) {
    .featured-blog-card {
        flex-direction: row;
        align-items: center;
    }
    .featured-img-wrap {
        width: 55%;
        border-right: 1px solid var(--line);
    }
    .featured-content {
        width: 45%;
        padding: 60px;
    }
}
.featured-img-wrap img, .placeholder {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 75% center;
    min-height: 300px;
}
.featured-content {
    padding: 30px;
}
.blog-tags span {
    display: inline-block;
    background: #fdf5f2;
    color: var(--orange);
    padding: 6px 14px;
    border-radius: 50px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin-bottom: 20px;
}
.featured-content h2 {
    font-size: clamp(28px, 3vw, 42px);
    line-height: 1.2;
    margin: 0 0 20px;
    letter-spacing: -0.03em;
}
.featured-excerpt {
    font-size: 16px;
    color: #5d605e;
    line-height: 1.6;
    margin-bottom: 30px;
}
.blog-meta-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 13px;
    color: #888;
    border-top: 1px solid var(--line);
    padding-top: 20px;
    margin-top: auto;
}
.author-info {
    display: flex;
    align-items: center;
    gap: 10px;
    color: var(--ink);
    font-weight: 600;
}
.avatar-circle {
    width: 32px;
    height: 32px;
    background: #e2e2df;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
}

/* Grid Section */
.blog-grid-section {
    padding: 0 4vw;
}
.blog-heading-row h2 {
    font-size: 32px;
    margin-bottom: 40px;
    letter-spacing: -0.02em;
}
.blog-card-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
}
.blog-card {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 12px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.blog-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0,0,0,0.06);
}
.blog-card-img-link {
    height: 220px;
    border-bottom: 1px solid var(--line);
}
.blog-card-img-link img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 75% center;
}
.blog-card-content {
    padding: 25px;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}
.blog-card-content h3 {
    font-size: 22px;
    line-height: 1.3;
    margin: 0 0 20px;
    letter-spacing: -0.02em;
}
.blog-card-content h3 a:hover {
    color: var(--orange);
}
.blog-pagination {
    margin-top: 60px;
    display: flex;
    justify-content: center;
    gap: 10px;
}
.blog-pagination .page-numbers {
    padding: 10px 15px;
    border: 1px solid var(--line);
    border-radius: 6px;
    font-size: 13px;
    font-weight: 600;
}
.blog-pagination .current, .blog-pagination .page-numbers:hover {
    background: var(--ink);
    color: #fff;
    border-color: var(--ink);
}

/* Single Post */
.blog-single-main {
    background: #fff;
}
.blog-container {
    max-width: 800px;
    margin: 0 auto;
    padding: 0 4vw;
}
.blog-post-header {
    padding: 80px 0 40px;
}
.blog-post-header .blog-tags {
    margin-bottom: 25px;
}
.blog-post-title {
    font-size: clamp(36px, 5vw, 60px);
    line-height: 1.1;
    letter-spacing: -0.03em;
    margin: 0 0 30px;
}
.single-meta {
    border-top: 0;
    border-bottom: 1px solid var(--line);
    padding: 20px 0;
    margin: 0;
}
.blog-featured-image {
    max-width: 1100px;
    margin: 0 auto 60px;
    padding: 0 4vw;
}
.blog-featured-image img {
    width: 100%;
    border-radius: 12px;
}

/* TOC */
.blog-toc {
    background: #f9f9f9;
    border: 1px solid var(--line);
    border-radius: 8px;
    padding: 30px;
    margin-bottom: 50px;
}
.blog-toc strong {
    display: block;
    font-size: 18px;
    margin-bottom: 20px;
    letter-spacing: -0.01em;
}
.blog-toc ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.blog-toc li {
    margin-bottom: 12px;
}
.blog-toc li a {
    color: var(--ink);
    text-decoration: none;
    font-size: 15px;
}
.blog-toc li a:hover {
    color: var(--orange);
    text-decoration: underline;
}
.toc-level-3 {
    padding-left: 20px;
}

/* Content Styles */
.blog-content {
    font-size: 18px;
    line-height: 1.7;
    color: #333;
    padding-bottom: 100px;
}
.blog-content p {
    margin-bottom: 1.5em;
}
.blog-content h2 {
    font-size: 30px;
    margin: 2em 0 1em;
    letter-spacing: -0.02em;
}
.blog-content h3 {
    font-size: 24px;
    margin: 1.5em 0 1em;
}
.blog-content blockquote {
    font-family: Georgia, serif;
    font-size: 22px;
    font-style: italic;
    border-left: 4px solid var(--orange);
    margin: 2em 0;
    padding: 0.5em 2em;
    background: #fdf5f2;
}

/* ENHANCED ROUNDED EDGES FOR IMAGES */
.blog-featured-image img {
    border-radius: 16px !important;
}
.blog-content img {
    border-radius: 12px !important;
}
.featured-blog-card {
    border-radius: 16px !important;
    overflow: hidden !important;
}
.blog-card {
    border-radius: 16px !important;
    overflow: hidden !important;
}
.featured-img-wrap img, .blog-card-img-link img {
    border-radius: 0 !important; /* Rely on parent overflow: hidden for perfect corners */
}

/* Floating WhatsApp Button */
.floating-whatsapp {
    position: fixed;
    bottom: 30px;
    right: 30px;
    width: 60px;
    height: 60px;
    background-color: #25D366;
    color: white;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 0 8px 24px rgba(0,0,0,0.15);
    z-index: 9999;
    transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275), box-shadow 0.3s ease;
}
.floating-whatsapp:hover {
    transform: scale(1.1);
    box-shadow: 0 12px 30px rgba(0,0,0,0.2);
    color: white;
}
.floating-whatsapp svg {
    width: 35px;
    height: 35px;
}
@media (max-width: 760px) {
    .floating-whatsapp {
        bottom: 20px;
        right: 20px;
        width: 50px;
        height: 50px;
    }
    .floating-whatsapp svg {
        width: 30px;
        height: 30px;
    }
}

/* Newsletter Popup */
.newsletter-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.75);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 10000;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.4s ease;
}
.newsletter-overlay.active {
    opacity: 1;
    pointer-events: auto;
}
.newsletter-modal {
    background: var(--paper);
    width: 90%;
    max-width: 500px;
    padding: 50px 40px;
    position: relative;
    border-radius: 12px;
    text-align: center;
    transform: translateY(20px);
    transition: transform 0.4s ease;
    border: 1px solid var(--line);
    box-shadow: 0 25px 50px rgba(0,0,0,0.25);
}
.newsletter-overlay.active .newsletter-modal {
    transform: translateY(0);
}
.newsletter-close {
    position: absolute;
    top: 15px;
    right: 20px;
    background: none;
    border: none;
    font-size: 35px;
    color: #a5a7a2;
    cursor: pointer;
    transition: color 0.3s;
    line-height: 1;
}
.newsletter-close:hover {
    color: var(--ink);
}
.newsletter-content h2 {
    font-size: clamp(32px, 4vw, 42px);
    margin: 10px 0 20px;
    line-height: 1.1;
    letter-spacing: -0.03em;
}
.newsletter-content p {
    font-size: 16px;
    color: #5d605e;
    margin-bottom: 30px;
    line-height: 1.6;
}
.newsletter-form {
    display: flex;
    flex-direction: column;
    gap: 15px;
}
.newsletter-form input {
    width: 100%;
    padding: 18px 20px;
    font-size: 16px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
    font-family: var(--sans);
    color: var(--ink);
}
.newsletter-form button {
    width: 100%;
    justify-content: center;
    padding: 20px;
    font-size: 14px;
    border-radius: 8px;
}
.newsletter-note {
    margin: 15px 0 0 0 !important;
    font-size: 13px !important;
    color: var(--orange) !important;
}

/* Scroll Progress Bar */
.scroll-progress-container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: transparent;
    z-index: 99999;
    pointer-events: none;
}
.scroll-progress-bar {
    height: 100%;
    width: 0%;
    background: var(--orange);
    border-radius: 0 4px 4px 0;
    position: relative;
    will-change: width;
}
.scroll-flare {
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    width: 40px;
    background: linear-gradient(to right, transparent, rgba(255,255,255,0.9));
    border-radius: 0 4px 4px 0;
    box-shadow: 3px 0 10px 1px var(--orange);
}

/* Contact Map Section */
.map-section {
    padding-top: 0; 
}
.map-container {
    width: 100%;
    height: 500px;
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid var(--line);
    box-shadow: 0 10px 30px rgba(0,0,0,0.05);
}
.map-container iframe {
    width: 100%;
    height: 100%;
    display: block;
    border: 0;
}
@media (max-width: 760px) {
    .map-container {
        height: 350px;
        border-radius: 8px;
    }
}

/* Fully Rounded Buttons with Flare/Shadow */
.button {
    border-radius: 50px !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}

.button-primary {
    box-shadow: 0 8px 20px -6px var(--orange) !important;
}
.button-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 25px -4px var(--orange) !important;
}

.button-secondary {
    box-shadow: 0 8px 20px -6px rgba(0,0,0,0.2) !important;
}
.button-secondary:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 25px -4px rgba(0,0,0,0.3) !important;
}

.header-cta {
    border-radius: 50px !important;
    box-shadow: 0 6px 15px -5px var(--orange) !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}
.header-cta:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 20px -4px var(--orange) !important;
}

/* Video Styling */
.cover-video, 
.hero-image-wrap video, 
.gallery-card video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 85% center; /* Pulls the right side into the center */
    border-radius: inherit;
    display: block;
}

/* Logo Gallery */
.logo-grid {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 80px;
    flex-wrap: wrap;
    margin-top: 40px;
}
.logo-grid img {
    max-width: 200px;
    height: auto;
    filter: grayscale(100%) opacity(0.7);
    transition: filter 0.3s ease;
}
.logo-grid img:hover {
    filter: grayscale(0%) opacity(1);
}
@media (max-width: 760px) {
    .logo-grid {
        gap: 40px;
        justify-content: center;
    }
}

/* Logo Card Grid */
.logo-card-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    margin-top: 60px;
}
.logo-card {
    background: #ffffff;
    padding: 40px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    box-shadow: 0 4px 15px rgba(0,0,0,0.03);
}
.logo-card .logo-wrap {
    height: 120px;
    display: flex;
    align-items: center;
    margin-bottom: 30px;
}
.logo-card .logo-wrap img {
    max-height: 100%;
    max-width: 250px;
    object-fit: contain;
}
.logo-card .logo-meta {
    font-size: 13px;
    color: #5d605e;
}
@media (max-width: 760px) {
    .logo-card-grid {
        grid-template-columns: 1fr;
    }
}