        :root { --accent:#512729; --dark:#232728; --light-bg:#FDF7F4; --text:#444; }
        /* Breadcrumb Banner */
        .tp-page-banner { position:relative; height:380px; display:flex; align-items:center; justify-content:center; overflow:hidden; background-color:var(--dark); }
        .tp-page-banner::before { content:''; position:absolute; inset:0; background:linear-gradient(135deg,rgba(81,39,41,0.85),rgba(35,39,40,0.75)); z-index:2; }
        .tp-page-banner-bg { position:absolute; inset:0; background-size:cover; background-position:center; transform:scale(1.05); transition:transform 8s ease; z-index:1; }
        .tp-page-banner:hover .tp-page-banner-bg { transform:scale(1.1); }
        .tp-page-banner-content { position:relative; z-index:3; text-align:center; color:#fff; }
        .tp-page-banner-content h1 { font-size:clamp(36px,6vw,64px); font-weight:900; text-transform:uppercase; letter-spacing:4px; margin-bottom:18px; color:#fff; }
        .tp-breadcrumb { display:flex; align-items:center; justify-content:center; gap:10px; list-style:none; padding:0; margin:0; }
        .tp-breadcrumb li { font-size:14px; font-weight:500; letter-spacing:1px; color:rgba(255,255,255,0.65); text-transform:uppercase; }
        .tp-breadcrumb li a { color:rgba(255,255,255,0.75); text-decoration:none; transition:color .3s; }
        .tp-breadcrumb li a:hover { color:#fff; }
        .tp-breadcrumb li.active { color:#f5c6c6; }
        /* Gallery Toggle Tabs */
        .ht-gallery-tabs { background:var(--dark); padding:0; }
        .ht-gallery-tab-inner { display:flex; justify-content:center; border-bottom:2px solid rgba(255,255,255,0.08); }
        .ht-gallery-tab-btn {
            background:none; border:none; color:rgba(255,255,255,0.5);
            font-size:14px; font-weight:700; letter-spacing:3px; text-transform:uppercase;
            padding:22px 40px; cursor:pointer; font-family:'Montserrat',sans-serif;
            transition:all .3s; border-bottom:2px solid transparent; margin-bottom:-2px;
        }
        .ht-gallery-tab-btn.active, .ht-gallery-tab-btn:hover { color:#fff; border-bottom-color:var(--accent); }
        /* Filter Bar */
        .ht-gallery-section { padding:80px 0 100px; background:var(--light-bg); }
        .ht-section-head { text-align:center; margin-bottom:50px; }
        .ht-section-head .eyebrow { display:inline-flex; align-items:center; gap:12px; font-size:12px; letter-spacing:4px; color:var(--accent); font-weight:800; text-transform:uppercase; margin-bottom:18px; }
        .ht-section-head .eyebrow::before, .ht-section-head .eyebrow::after { content:''; width:35px; height:2px; background:var(--accent); display:block; }
        .ht-section-head h2 { font-size:clamp(26px,4vw,42px); font-weight:900; color:var(--dark); }
        /* Filter Buttons */
        .ht-filter-bar { display:flex; flex-wrap:wrap; justify-content:center; gap:12px; margin-bottom:50px; }
        .ht-filter-btn {
            background:#fff; border:1.5px solid rgba(81,39,41,0.2); color:var(--dark);
            padding:10px 24px; border-radius:30px; font-size:13px; font-weight:700;
            cursor:pointer; font-family:'Montserrat',sans-serif; transition:all .3s;
        }
        .ht-filter-btn:hover, .ht-filter-btn.active { background:var(--accent); border-color:var(--accent); color:#fff; }
        /* Gallery Grid */
        .ht-gallery-grid { columns:3; column-gap:20px; }
        .ht-gallery-item {
            break-inside:avoid; margin-bottom:20px; position:relative;
            border-radius:16px; overflow:hidden; display:block;
            cursor:pointer;
        }
        .ht-gallery-item img { width:100%; display:block; transition:transform .5s; }
        .ht-gallery-item:hover img { transform:scale(1.07); }
        .ht-gallery-overlay {
            position:absolute; inset:0; background:linear-gradient(to top,rgba(81,39,41,0.9) 0%,transparent 60%);
            opacity:0; transition:opacity .4s; display:flex; flex-direction:column;
            justify-content:flex-end; padding:24px; border-radius:16px;
        }
        .ht-gallery-item:hover .ht-gallery-overlay { opacity:1; }
        .ht-gallery-overlay h5 { color:#fff; font-size:16px; font-weight:800; margin:0 0 6px; }
        .ht-gallery-overlay span { color:rgba(255,255,255,0.7); font-size:12px; letter-spacing:2px; text-transform:uppercase; font-weight:500; }
        .ht-gallery-overlay .zoom-icon { position:absolute; top:20px; right:20px; width:40px; height:40px; background:rgba(255,255,255,0.2); border-radius:50%; display:flex; align-items:center; justify-content:center; color:#fff; font-size:16px; backdrop-filter:blur(4px); }
        /* Hidden items */
        .ht-gallery-item.hidden { display:none; }
        /* Load More */
        .ht-load-more { text-align:center; margin-top:50px; }
        .ht-load-btn {
            background:var(--dark); color:#fff; padding:16px 48px;
            border-radius:50px; font-size:14px; font-weight:800;
            letter-spacing:2px; text-transform:uppercase; border:none;
            cursor:pointer; font-family:'Montserrat',sans-serif; transition:all .3s;
        }
        .ht-load-btn:hover { background:var(--accent); transform:translateY(-3px); box-shadow:0 12px 30px rgba(81,39,41,0.3); }
        /* CTA */
        .ht-cta { background:var(--accent); padding:80px 0; text-align:center; }
        .ht-cta h2 { color:#fff; font-size:clamp(26px,4vw,44px); font-weight:900; margin-bottom:20px; }
        .ht-cta p { color:rgba(255,255,255,0.8); font-size:16px; max-width:600px; margin:0 auto 36px; font-weight:400; }
        .ht-btn-white { background:#fff; color:var(--accent); padding:16px 44px; border-radius:50px; font-size:14px; font-weight:800; letter-spacing:1px; text-decoration:none; display:inline-block; transition:all .3s; }
        .ht-btn-white:hover { background:var(--dark); color:#fff; transform:translateY(-3px); box-shadow:0 12px 30px rgba(0,0,0,0.25); }
        /* Footer */
        .it-footer-style.crp-footer-bg { background-color:#232728; }
        .white-filter { filter:brightness(0) invert(1); }
        .opacity-low { opacity:0.2; }
        @media (max-width:991px) { .ht-gallery-grid { columns:2; } }
        @media (max-width:767px) {
            .tp-page-banner { height:260px; }
            .ht-gallery-grid { columns:1; }
            .ht-filter-btn { padding:8px 16px; font-size:12px; }
        }
        /* Lightbox */
        .mfp-bg { background:#000; opacity:.92; }
        .mfp-figure figure { background:none; }
