/* =========================================================
   DIVYASHAKTI GLOBAL SITE — PREMIUM HEADER + FOOTER
   ========================================================= */

@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&family=Playfair+Display:wght@500;600;700&display=swap');

:root {
    --ds-green: #062f24;
    --ds-green-deep: #041f18;
    --ds-green-2: #0b4333;
    --ds-gold: #e9c66d;
    --ds-gold-light: #f5dda0;
    --ds-ivory: #f7f3e9;
    --ds-white: #ffffff;
    --ds-muted: rgba(255,255,255,.68);
}

#dsHeader,#dsHeader *,#dsHeader *::before,#dsHeader *::after,
#dsFooter,#dsFooter *,#dsFooter *::before,#dsFooter *::after{box-sizing:border-box}

/* =========================================================
   HEADER
   ========================================================= */
#dsHeader.ds-header{
    position:sticky!important;top:0;left:0;width:100%;height:108px;min-height:108px;max-height:108px;
    margin:0;padding:0;background:linear-gradient(115deg,#041f18 0%,#062f24 48%,#0b4333 100%);
    border:0;z-index:99999;font-family:'Montserrat',sans-serif;line-height:normal;overflow:visible;
    box-shadow:0 10px 35px rgba(2,28,21,.14);
}
#dsHeader.ds-header::before{
    content:"";position:absolute;top:0;left:-25%;width:35%;height:2px;
    background:linear-gradient(90deg,transparent,var(--ds-gold),transparent);opacity:.9;
    animation:dsHeaderLight 7s linear infinite;pointer-events:none;
}
#dsHeader.ds-header::after{
    content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 0%,rgba(233,198,109,.11),transparent 27%),radial-gradient(circle at 85% 100%,rgba(255,255,255,.045),transparent 25%);pointer-events:none;
}
body.admin-bar #dsHeader.ds-header{top:32px}

#dsHeader .ds-header-core{
    position:relative;z-index:2;display:flex;align-items:center;width:100%;height:108px;min-height:108px;max-height:108px;
    padding:0 42px;gap:30px;margin:0;overflow:visible;
}

/* Brand */
#dsHeader .ds-brand{display:flex;align-items:center;flex:0 0 auto;height:108px;margin:0;padding:0;gap:25px;color:#fff!important;text-decoration:none!important}
#dsHeader .ds-logo-wrap{
    position:relative;display:flex;align-items:center;justify-content:center;width:72px;height:72px;min-width:72px;
    overflow:hidden;flex-shrink:0;background:#fff;border:1px solid rgba(255,255,255,.24);border-radius:15px;
    box-shadow:0 10px 28px rgba(0,0,0,.2);transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease,border-radius .35s ease;
}
#dsHeader .ds-logo-wrap::after{content:"";position:absolute;inset:-45%;background:linear-gradient(110deg,transparent 38%,rgba(255,255,255,.65) 50%,transparent 62%);transform:translateX(-100%) rotate(12deg);transition:transform .65s ease;pointer-events:none}
#dsHeader .ds-brand:hover .ds-logo-wrap{transform:translateY(-2px) scale(1.03)}
#dsHeader .ds-brand:hover .ds-logo-wrap::after{transform:translateX(100%) rotate(12deg)}
#dsHeader .ds-logo-wrap .custom-logo-link{display:flex;align-items:center;justify-content:center;width:100%;height:100%;margin:0;padding:0}
#dsHeader .ds-logo-wrap .custom-logo,#dsHeader .ds-logo-wrap .ds-site-logo{display:block;width:100%;height:100%;max-width:100%;max-height:100%;margin:0;object-fit:contain}
#dsHeader .ds-logo-fallback{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:var(--ds-green);font-size:24px;font-weight:800;letter-spacing:-1px}
#dsHeader .ds-brand-text{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:4px;margin:0;padding:0}
#dsHeader .ds-brand-name{margin:0;padding:0;color:#fff!important;font-family:'Montserrat',sans-serif;font-size:24px;font-weight:800;line-height:1;letter-spacing:.7px;white-space:nowrap}
#dsHeader .ds-brand-sub{margin:0;padding:0;color:var(--ds-gold)!important;font-family:'Montserrat',sans-serif;font-size:9px;font-weight:700;line-height:1;letter-spacing:2.25px;white-space:nowrap}

/* Nav */
#dsHeader .ds-nav{display:flex;align-items:center;justify-content:flex-end;flex:1 1 auto;height:108px;min-width:0;gap:17px;margin:0;padding:0 0 0 12px;overflow:visible}
#dsHeader .ds-nav>a,#dsHeader .ds-nav-dropdown>.ds-dropdown-trigger{
    position:relative;display:inline-flex;align-items:center;height:108px;margin:0;padding:0;color:rgba(255,255,255,.91)!important;
    background:transparent!important;border:0!important;font-family:'Montserrat',sans-serif;font-size:13.8px;font-weight:600;line-height:1;
    text-decoration:none!important;white-space:nowrap;transition:color .25s ease,transform .25s ease;letter-spacing:.05px
}
#dsHeader .ds-nav>a::after,#dsHeader .ds-nav-dropdown>.ds-dropdown-trigger::after{
    content:"";position:absolute;left:0;bottom:19px;width:0;height:2px;border-radius:20px;background:var(--ds-gold);
    box-shadow:0 0 10px rgba(233,198,109,.25);transition:width .28s cubic-bezier(.2,.8,.2,1)
}
#dsHeader .ds-nav>a:hover,#dsHeader .ds-nav>a:focus,#dsHeader .ds-nav-dropdown:hover>.ds-dropdown-trigger,#dsHeader .ds-nav-dropdown:focus-within>.ds-dropdown-trigger{color:var(--ds-gold)!important;transform:translateY(-2px)}
#dsHeader .ds-nav>a:hover::after,#dsHeader .ds-nav>a:focus::after,#dsHeader .ds-nav-dropdown:hover>.ds-dropdown-trigger::after,#dsHeader .ds-nav-dropdown:focus-within>.ds-dropdown-trigger::after{width:100%}
#dsHeader .ds-nav-dropdown{position:relative;display:flex;align-items:center;height:108px;flex:0 0 auto;margin:0;padding:0}
#dsHeader .ds-arrow{
    position:relative;
    display:inline-block;
    width:10px;
    height:10px;
    margin-left:8px;
    margin-top:-4px;
    flex:0 0 10px;
    border-right:2px solid var(--ds-gold);
    border-bottom:2px solid var(--ds-gold);
    transform:rotate(45deg);
    transform-origin:center;
    transition:transform .3s cubic-bezier(.2,.8,.2,1),border-color .2s ease;
}
#dsHeader .ds-nav-dropdown:hover .ds-arrow,#dsHeader .ds-nav-dropdown:focus-within .ds-arrow{
    transform:translateY(4px) rotate(45deg);
    border-color:var(--ds-gold-light);
}
#dsHeader .ds-nav-dropdown::before{content:"";position:absolute;left:-12px;right:-12px;top:100%;height:18px;background:transparent}
#dsHeader .ds-dropdown{
    position:absolute;top:calc(100% - 1px);left:50%;width:225px;margin:0;padding:10px;background:rgba(4,31,24,.98);
    border:1px solid rgba(233,198,109,.18);border-radius:14px;box-shadow:0 22px 55px rgba(0,0,0,.3);opacity:0;visibility:hidden;
    pointer-events:none;transform:translate(-50%,12px) scale(.96);transform-origin:top center;transition:opacity .23s ease,transform .23s ease,visibility .23s ease
}
#dsHeader .ds-nav-dropdown:hover>.ds-dropdown,#dsHeader .ds-nav-dropdown:focus-within>.ds-dropdown{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0) scale(1)}
#dsHeader .ds-dropdown a{display:flex;align-items:center;width:100%;min-height:44px;margin:0;padding:0 15px;color:rgba(255,255,255,.9)!important;background:transparent!important;border-radius:9px;font-family:'Montserrat',sans-serif;font-size:13.2px;font-weight:600;line-height:1.2;text-decoration:none!important;transition:color .2s ease,background .2s ease,padding-left .2s ease}
#dsHeader .ds-dropdown a:hover,#dsHeader .ds-dropdown a:focus{color:var(--ds-gold)!important;background:rgba(233,198,109,.08)!important;padding-left:20px}

/* Donate */
#dsHeader .ds-donate{position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:154px;height:62px;min-width:154px;margin:0;padding:0;gap:12px;overflow:hidden;background:var(--ds-gold)!important;border:1px solid var(--ds-gold)!important;border-radius:14px;color:var(--ds-green)!important;font-family:'Montserrat',sans-serif;font-size:13px;font-weight:800;line-height:1;text-decoration:none!important;box-shadow:0 10px 28px rgba(233,198,109,.16);transition:transform .28s ease,box-shadow .28s ease,background .28s ease}
#dsHeader .ds-donate::before{content:"";position:absolute;z-index:-1;top:-70%;left:-80%;width:55%;height:240%;background:rgba(255,255,255,.5);transform:rotate(20deg);animation:dsDonateShine 5s ease-in-out infinite}
#dsHeader .ds-donate:hover,#dsHeader .ds-donate:focus{color:var(--ds-green)!important;background:var(--ds-gold-light)!important;border-color:var(--ds-gold-light)!important;transform:translateY(-3px);box-shadow:0 16px 35px rgba(233,198,109,.27)}
#dsHeader .ds-donate-arrow{font-size:18px;line-height:1;transition:transform .3s cubic-bezier(.2,.8,.2,1)}
#dsHeader .ds-donate:hover .ds-donate-arrow{transform:translateX(5px)}
#dsHeader .ds-mobile-toggle,#dsHeader .ds-mobile-menu{display:none}

/* =========================================================
   FOOTER
   ========================================================= */
#dsFooter.ds-footer{position:relative;overflow:hidden;margin:0;padding:0;background:linear-gradient(135deg,#041f18 0%,#062f24 48%,#0a3d2f 100%);color:#fff;font-family:'Montserrat',sans-serif}
#dsFooter .ds-footer-glow{position:absolute;width:520px;height:520px;right:-180px;top:-230px;border-radius:50%;background:radial-gradient(circle,rgba(233,198,109,.12) 0%,rgba(233,198,109,.035) 38%,transparent 70%);pointer-events:none;animation:dsFooterFloat 8s ease-in-out infinite}
#dsFooter::before{content:"";position:absolute;top:0;left:0;width:100%;height:1px;background:linear-gradient(90deg,transparent,var(--ds-gold),transparent);opacity:.65}
#dsFooter .ds-footer-main{position:relative;z-index:1;display:grid;grid-template-columns:minmax(280px,1.65fr) repeat(3,minmax(150px,1fr));gap:64px;max-width:1500px;margin:0 auto;padding:92px 52px 70px}
#dsFooter .ds-footer-brand{display:flex;flex-wrap:wrap;align-items:flex-start;column-gap:15px;align-content:flex-start}
#dsFooter .ds-footer-logo{display:flex;align-items:center;justify-content:center;width:72px;height:72px;flex:0 0 72px;background:transparent!important;border:0!important;border-radius:0!important;color:inherit!important;text-decoration:none!important;box-shadow:none!important;overflow:visible;transition:transform .3s ease}
#dsFooter .ds-footer-logo:hover{transform:translateY(-3px)}
#dsFooter .ds-footer-logo-image{display:block;width:72px!important;height:72px!important;max-width:none!important;max-height:none!important;object-fit:contain;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
#dsFooter .ds-footer-mark{font-size:24px;font-weight:800;letter-spacing:-1px;color:var(--ds-gold)}
#dsFooter .ds-footer-name{margin-top:3px;color:#fff;font-size:23px;font-weight:800;letter-spacing:.7px;line-height:1}
#dsFooter .ds-footer-sub{margin-top:7px;color:var(--ds-gold);font-size:9px;font-weight:700;letter-spacing:2.15px;line-height:1}
#dsFooter .ds-footer-brand p{width:100%;max-width:390px;margin:23px 0 0;color:rgba(255,255,255,.65);font-size:12px;font-weight:400;line-height:1.9}
#dsFooter .ds-footer-registration{width:100%;max-width:390px;margin-top:22px;display:flex;flex-direction:column;gap:10px}
#dsFooter .ds-footer-registration-item{display:flex;align-items:flex-start;flex-wrap:wrap;gap:5px 8px;padding:0;color:rgba(255,255,255,.68);font-size:10.5px;line-height:1.6}
#dsFooter .ds-footer-registration-item:first-child{display:block;margin-bottom:2px;color:rgba(255,255,255,.92);font-size:10.5px;font-weight:700;letter-spacing:.25px}
#dsFooter .ds-footer-registration-label{color:rgba(255,255,255,.48);font-weight:500}
#dsFooter .ds-footer-registration-item strong{color:rgba(255,255,255,.9);font-weight:700;letter-spacing:.1px}
#dsFooter .ds-footer-registration-item .ds-footer-status{color:var(--ds-gold);position:relative;padding-left:15px}
#dsFooter .ds-footer-registration-item .ds-footer-status::before{content:"";position:absolute;left:0;top:50%;width:7px;height:7px;border-radius:50%;background:var(--ds-gold);box-shadow:0 0 0 4px rgba(233,198,109,.09);transform:translateY(-50%)}
#dsFooter .ds-footer-social{width:100%;max-width:390px;display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
#dsFooter .ds-footer-social-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:38px;padding:0 14px;border:1px solid rgba(233,198,109,.28);border-radius:10px;background:rgba(255,255,255,.035)!important;color:rgba(255,255,255,.78)!important;font-size:10.5px;font-weight:700;letter-spacing:.25px;line-height:1;text-decoration:none!important;transition:transform .25s ease,border-color .25s ease,background .25s ease,color .25s ease,box-shadow .25s ease}
#dsFooter .ds-footer-social-button svg{width:16px;height:16px;display:block;flex:0 0 16px;fill:currentColor}
#dsFooter .ds-footer-social-button:hover,#dsFooter .ds-footer-social-button:focus-visible{color:var(--ds-gold)!important;border-color:var(--ds-gold)!important;background:rgba(233,198,109,.08)!important;transform:translateY(-2px);box-shadow:0 10px 24px rgba(0,0,0,.15);outline:none}
#dsFooter .ds-footer-column{display:flex;flex-direction:column;align-items:flex-start}
#dsFooter .ds-footer-column h3{position:relative;margin:3px 0 22px;padding:0 0 11px;color:#fff;font-size:13px;font-weight:800;letter-spacing:.3px}
#dsFooter .ds-footer-column h3::after{content:"";position:absolute;left:0;bottom:0;width:28px;height:2px;background:var(--ds-gold);border-radius:20px;transition:width .3s ease}
#dsFooter .ds-footer-column:hover h3::after{width:48px}
#dsFooter .ds-footer-column>a{position:relative;display:inline-block;margin:0 0 13px;padding:0;color:rgba(255,255,255,.65)!important;font-size:13px;font-weight:500;line-height:1.55;text-decoration:none!important;transition:color .22s ease,transform .22s ease}
#dsFooter .ds-footer-column>a::before{content:"";position:absolute;left:-13px;top:50%;width:0;height:1px;background:var(--ds-gold);transform:translateY(-50%);transition:width .22s ease}
#dsFooter .ds-footer-column>a:hover{color:var(--ds-gold)!important;transform:translateX(5px)}
#dsFooter .ds-footer-column>a:hover::before{width:7px}
#dsFooter .ds-footer-action{padding-left:8px}
#dsFooter .ds-footer-cta{display:inline-flex!important;align-items:center;justify-content:space-between;width:170px!important;min-height:46px;margin-top:10px!important;padding:0 14px!important;border:1px solid rgba(233,198,109,.5)!important;border-radius:11px;color:var(--ds-gold)!important;background:rgba(233,198,109,.045)!important;font-size:12px!important;font-weight:700!important;transition:background .25s ease,border-color .25s ease,transform .25s ease!important}
#dsFooter .ds-footer-cta::before{display:none!important}
#dsFooter .ds-footer-cta span{font-size:16px;transition:transform .25s ease}
#dsFooter .ds-footer-cta:hover{background:rgba(233,198,109,.11)!important;border-color:var(--ds-gold)!important;transform:translateY(-2px)!important}
#dsFooter .ds-footer-cta:hover span{transform:translateX(4px)}
#dsFooter .ds-footer-bottom{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:25px;max-width:1440px;margin:0 auto;padding:22px 46px 25px;border-top:1px solid rgba(255,255,255,.09);color:rgba(255,255,255,.45);font-size:9.5px;font-weight:500;line-height:1.6}
#dsFooter .ds-footer-legal{display:flex;align-items:center;gap:22px}
#dsFooter .ds-footer-legal a{color:rgba(255,255,255,.5)!important;text-decoration:none!important;transition:color .2s ease}
#dsFooter .ds-footer-legal a:hover{color:var(--ds-gold)!important}

/* =========================================================
   PREMIUM MOTION
   ========================================================= */
#dsHeader .ds-header-core > *{animation:dsHeaderDrop .7s cubic-bezier(.2,.8,.2,1) both}
#dsHeader .ds-brand{animation-delay:.04s}
#dsHeader .ds-nav{animation-delay:.12s}
#dsHeader .ds-donate{animation-delay:.2s}
#dsHeader .ds-nav > a:nth-child(1){--ds-i:1}
#dsHeader .ds-nav > a:nth-child(2){--ds-i:2}
#dsHeader .ds-nav > a:nth-child(3){--ds-i:3}
#dsHeader .ds-nav > a:nth-child(4){--ds-i:4}
#dsHeader .ds-nav > a:nth-child(5){--ds-i:5}
#dsHeader .ds-nav > a:nth-child(6){--ds-i:6}
#dsHeader .ds-nav > a:nth-child(7){--ds-i:7}
#dsHeader .ds-nav > a:nth-child(8){--ds-i:8}
#dsHeader .ds-nav > a:nth-child(9){--ds-i:9}
#dsHeader .ds-nav > a:nth-child(10){--ds-i:10}
#dsHeader .ds-nav > a:nth-child(11){--ds-i:11}
#dsHeader .ds-nav > a:nth-child(12){--ds-i:12}
#dsHeader .ds-nav > a:nth-child(13){--ds-i:13}
#dsHeader .ds-nav > a:nth-child(14){--ds-i:14}
#dsHeader .ds-nav > a{animation:dsNavReveal .55s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--ds-i, 1) * 35ms)}
#dsHeader .ds-nav-dropdown{animation:dsNavReveal .55s cubic-bezier(.2,.8,.2,1) both;animation-delay:.28s}
#dsHeader .ds-arrow{animation:dsArrowFloat 2.2s ease-in-out infinite}
#dsHeader .ds-nav-dropdown:hover .ds-arrow,#dsHeader .ds-nav-dropdown:focus-within .ds-arrow{animation:dsArrowDrop .5s cubic-bezier(.2,.8,.2,1) both}
#dsHeader .ds-dropdown{transform:translate(-50%,-8px) scale(.96);transform-origin:top center}
#dsHeader .ds-nav-dropdown:hover>.ds-dropdown,#dsHeader .ds-nav-dropdown:focus-within>.ds-dropdown{transform:translate(-50%,0) scale(1)}
#dsHeader .ds-dropdown a{transform:translateY(-5px);opacity:0}
#dsHeader .ds-nav-dropdown:hover>.ds-dropdown a,#dsHeader .ds-nav-dropdown:focus-within>.ds-dropdown a{animation:dsDropdownItem .35s cubic-bezier(.2,.8,.2,1) forwards}
#dsHeader .ds-nav-dropdown:hover>.ds-dropdown a:nth-child(1),#dsHeader .ds-nav-dropdown:focus-within>.ds-dropdown a:nth-child(1){animation-delay:.04s}
#dsHeader .ds-nav-dropdown:hover>.ds-dropdown a:nth-child(2),#dsHeader .ds-nav-dropdown:focus-within>.ds-dropdown a:nth-child(2){animation-delay:.09s}
#dsHeader .ds-nav-dropdown:hover>.ds-dropdown a:nth-child(3),#dsHeader .ds-nav-dropdown:focus-within>.ds-dropdown a:nth-child(3){animation-delay:.14s}
#dsHeader .ds-footer-main{animation:dsFooterRise .8s cubic-bezier(.2,.8,.2,1) both}
@keyframes dsHeaderDrop{from{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:translateY(0)}}
@keyframes dsNavReveal{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
@keyframes dsArrowFloat{0%,100%{transform:rotate(45deg) translate(0,0)}50%{transform:rotate(45deg) translate(0,2px)}}
@keyframes dsArrowDrop{0%{transform:rotate(45deg) translateY(-5px)}45%{transform:rotate(45deg) translateY(5px)}70%{transform:rotate(45deg) translateY(2px)}100%{transform:rotate(45deg) translateY(4px)}}
@keyframes dsDropdownItem{to{opacity:1;transform:translateY(0)}}
@keyframes dsFooterRise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
@keyframes dsFooterLine{0%{transform:scaleX(0);transform-origin:left}100%{transform:scaleX(1);transform-origin:left}}
@keyframes dsBrandPulse{0%,100%{box-shadow:0 10px 28px rgba(0,0,0,.2)}50%{box-shadow:0 14px 34px rgba(233,198,109,.16)}}

#dsFooter .ds-footer-column h3::after{animation:dsFooterLine .7s cubic-bezier(.2,.8,.2,1) both}
#dsFooter .ds-footer-logo{animation:dsBrandPulse 4.5s ease-in-out infinite}
#dsFooter .ds-footer-column>a{will-change:transform}

/* Remove Astra/content gutters that create the unwanted white line around the site content. */
html,body{margin:0!important;padding:0!important}
body.home #content,body.home .site-content,body.page #content,body.page .site-content{margin-top:0!important;padding-top:0!important}
body .elementor-location-header + .site-content{margin-top:0!important}
body .site-content > .ast-container,body .site-content > .ast-container-fluid{max-width:none!important;width:100%!important;padding-left:0!important;padding-right:0!important}
body .elementor-section-wrap > .elementor-section:first-child{margin-top:0!important}

/* =========================================================
   FULL-WIDTH PAGE / HERO GUTTER FIX
   ========================================================= */
html, body {
    overflow-x:hidden !important;
}
body #page,
body .site,
body .site-content,
body #content,
body .content-area,
body .elementor-location-single,
body .elementor-location-archive {
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
}
body .elementor {
    width:100% !important;
    max-width:none !important;
    margin-left:0 !important;
    margin-right:0 !important;
}
body .elementor-section-wrap {
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
}
body .elementor-section {
    margin-left:0 !important;
    margin-right:0 !important;
}
body .elementor-top-section:first-child {
    margin-top:0 !important;
}

/* =========================================================
   TABLET
   ========================================================= */
@media(min-width:1601px){
    #dsHeader .ds-nav>a,#dsHeader .ds-nav-dropdown>.ds-dropdown-trigger{font-size:13.2px}
}

@media(max-width:1600px){
    #dsHeader .ds-header-core{padding:0 24px;gap:18px}
    #dsHeader .ds-nav{gap:10px}
    #dsHeader .ds-nav>a,#dsHeader .ds-nav-dropdown>.ds-dropdown-trigger{font-size:11.5px}
    #dsHeader .ds-brand-name{font-size:20px}
    #dsHeader .ds-brand-sub{font-size:7.5px;letter-spacing:1.9px}
    #dsHeader .ds-donate{width:132px;min-width:132px;font-size:11.5px}
    #dsFooter .ds-footer-main{gap:38px;padding-left:34px;padding-right:34px}
    #dsFooter .ds-footer-bottom{padding-left:34px;padding-right:34px}
}

@media(max-width:1080px){
    #dsHeader.ds-header{height:84px;min-height:84px;max-height:84px}
    #dsHeader .ds-header-core{height:84px;min-height:84px;max-height:84px;padding:0 20px}
    #dsHeader .ds-brand{height:84px}
    #dsHeader .ds-nav,#dsHeader .ds-donate{display:none}
    #dsHeader .ds-mobile-toggle{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px;width:48px;height:48px;margin-left:auto;padding:0;background:rgba(255,255,255,.035)!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:13px;cursor:pointer}
    #dsHeader .ds-mobile-toggle span{display:block;width:20px;height:2px;background:#fff;border-radius:20px;transition:transform .25s ease,opacity .25s ease}
    #dsHeader.ds-mobile-open .ds-mobile-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
    #dsHeader.ds-mobile-open .ds-mobile-toggle span:nth-child(2){opacity:0}
    #dsHeader.ds-mobile-open .ds-mobile-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
    #dsHeader .ds-mobile-menu{position:absolute;top:100%;left:0;width:100%;max-height:calc(100vh - 84px);overflow-y:auto;display:flex;flex-direction:column;padding:16px 20px 24px;background:rgba(4,31,24,.985);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-top:1px solid rgba(233,198,109,.12);box-shadow:0 25px 45px rgba(0,0,0,.25);opacity:0;visibility:hidden;transform:translateY(-12px);pointer-events:none;transition:opacity .25s ease,transform .25s ease,visibility .25s ease}
    #dsHeader.ds-mobile-open .ds-mobile-menu{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}
    #dsHeader .ds-mobile-menu>a{display:flex;align-items:center;min-height:49px;margin:0;padding:0 5px;color:#fff!important;font-size:12px;font-weight:600;text-decoration:none!important;border-bottom:1px solid rgba(255,255,255,.07)}
    #dsHeader .ds-mobile-menu>a:hover{color:var(--ds-gold)!important}
    #dsHeader .ds-mobile-group{width:100%;margin:0;padding:0;border-bottom:1px solid rgba(255,255,255,.07)}
    #dsHeader .ds-mobile-group-toggle{width:100%;min-height:49px;display:flex;align-items:center;justify-content:space-between;margin:0;padding:0 5px;background:transparent!important;border:0!important;color:#fff!important;font-family:'Montserrat',sans-serif;font-size:12px;font-weight:600;cursor:pointer}
    #dsHeader .ds-mobile-group-toggle:hover{color:var(--ds-gold)!important}
    #dsHeader .ds-mobile-plus{font-size:18px;font-weight:400;color:var(--ds-gold);transition:transform .25s ease}
    #dsHeader .ds-mobile-group.open .ds-mobile-plus{transform:rotate(45deg)}
    #dsHeader .ds-mobile-submenu{display:none;padding:0 0 8px 12px}
    #dsHeader .ds-mobile-group.open .ds-mobile-submenu{display:block}
    #dsHeader .ds-mobile-submenu a{display:flex;align-items:center;min-height:38px;padding:0 5px;color:rgba(255,255,255,.68)!important;font-size:10.5px;font-weight:500;text-decoration:none!important}
    #dsHeader .ds-mobile-submenu a:hover{color:var(--ds-gold)!important}
    #dsHeader .ds-mobile-donate{justify-content:center!important;gap:10px;margin-top:18px!important;min-height:52px!important;background:var(--ds-gold)!important;border:0!important;border-radius:12px!important;color:var(--ds-green)!important;font-weight:800!important}
}

/* Footer tablet */
@media(max-width:900px){
    #dsFooter .ds-footer-main{grid-template-columns:1.5fr 1fr 1fr;gap:35px;padding:60px 28px 48px}
    #dsFooter .ds-footer-brand{grid-column:1/-1}
    #dsFooter .ds-footer-brand p{max-width:650px}
    #dsFooter .ds-footer-action{padding-left:0}
    #dsFooter .ds-footer-bottom{padding:20px 28px 23px}
}

/* =========================================================
   MOBILE
   ========================================================= */
@media(max-width:600px){
    #dsHeader.ds-header{height:74px;min-height:74px}
    #dsHeader .ds-header-core{height:74px;min-height:74px;padding:0 15px}
    #dsHeader .ds-brand{height:74px;gap:10px}
    #dsHeader .ds-logo-wrap{width:47px;height:47px;min-width:47px;border-radius:12px}
    #dsHeader .ds-brand-name{font-size:14px;letter-spacing:.45px}
    #dsHeader .ds-brand-sub{font-size:5.7px;letter-spacing:1.6px}
    #dsHeader .ds-mobile-toggle{width:44px;height:44px}
    #dsHeader .ds-mobile-menu{max-height:calc(100vh - 74px);padding-left:15px;padding-right:15px}

    #dsFooter .ds-footer-main{display:flex;flex-direction:column;gap:40px;padding:55px 23px 42px}
    #dsFooter .ds-footer-brand{display:flex;column-gap:13px}
    #dsFooter .ds-footer-brand p{max-width:none;margin-top:20px;font-size:11.5px}
    #dsFooter .ds-footer-registration{max-width:none;margin-top:19px;gap:9px}
    #dsFooter .ds-footer-registration-item{font-size:10.5px}
    #dsFooter .ds-footer-name{font-size:20px}
    #dsFooter .ds-footer-sub{font-size:7px;letter-spacing:1.8px}
    #dsFooter .ds-footer-column{width:100%}
    #dsFooter .ds-footer-column h3{margin-bottom:20px;font-size:14px}
    #dsFooter .ds-footer-bottom{flex-direction:column;align-items:flex-start;padding:20px 23px 23px;font-size:10px}
    #dsFooter .ds-footer-legal{flex-wrap:wrap;gap:12px 18px}
}

@media(max-width:380px){
    #dsHeader .ds-brand-text{display:none}
    #dsFooter .ds-footer-brand{display:flex}
}

/* =========================================================
   ANIMATIONS
   ========================================================= */
@keyframes dsHeaderLight{0%{left:-30%;opacity:0}12%{opacity:1}48%{opacity:.9}65%{opacity:0}100%{left:110%;opacity:0}}
@keyframes dsDonateShine{0%,55%{transform:translateX(-130%) rotate(20deg)}75%,100%{transform:translateX(350%) rotate(20deg)}}
@keyframes dsFooterFloat{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(-34px,26px,0) scale(1.05)}}

@media(prefers-reduced-motion:reduce){
    #dsHeader *,#dsHeader *::before,#dsHeader *::after,#dsFooter *,#dsFooter *::before,#dsFooter *::after{transition:none!important;animation:none!important}
}


/* =========================================================
   PREMIUM HEADER V1.4 — SPACIOUS TYPOGRAPHY + CHEVRONS
   ========================================================= */
#dsHeader.ds-header{
    height:128px!important;
    min-height:128px!important;
    max-height:128px!important;
}
#dsHeader .ds-header-core{
    height:128px!important;
    min-height:128px!important;
    max-height:128px!important;
    padding-left:42px!important;
    padding-right:42px!important;
    gap:34px!important;
}
#dsHeader .ds-brand,
#dsHeader .ds-nav-dropdown{
    height:128px!important;
}
#dsHeader .ds-logo-wrap{
    width:82px!important;
    height:82px!important;
    min-width:82px!important;
}
#dsHeader .ds-brand{
    gap:19px!important;
}
#dsHeader .ds-brand-name{
    font-size:27px!important;
    letter-spacing:.85px!important;
}
#dsHeader .ds-brand-sub{
    font-size:9.5px!important;
    letter-spacing:2.45px!important;
}
#dsHeader .ds-nav{
    height:128px!important;
    gap:14px!important;
}
#dsHeader .ds-nav>a,
#dsHeader .ds-nav-dropdown>.ds-dropdown-trigger{
    height:128px!important;
    font-size:14.2px!important;
    font-weight:600!important;
    letter-spacing:.08px!important;
}
#dsHeader .ds-nav>a::after,
#dsHeader .ds-nav-dropdown>.ds-dropdown-trigger::after{
    bottom:25px!important;
    height:2px!important;
}

/* Proper V-shaped CSS chevron — no text glyph */
#dsHeader .ds-arrow{
    position:relative!important;
    display:inline-block!important;
    width:14px!important;
    height:10px!important;
    min-width:14px!important;
    margin-left:8px!important;
    margin-top:0!important;
    border:0!important;
    transform:none!important;
    flex:0 0 14px!important;
}
#dsHeader .ds-arrow::before,
#dsHeader .ds-arrow::after{
    content:""!important;
    position:absolute!important;
    top:3px!important;
    width:9px!important;
    height:2px!important;
    border-radius:10px!important;
    background:var(--ds-gold)!important;
    box-shadow:0 0 7px rgba(233,198,109,.18)!important;
    transform-origin:center!important;
    transition:background .22s ease,box-shadow .22s ease!important;
}
#dsHeader .ds-arrow::before{
    left:0!important;
    transform:rotate(45deg)!important;
}
#dsHeader .ds-arrow::after{
    right:0!important;
    transform:rotate(-45deg)!important;
}

/* Calm downward idle motion */
#dsHeader .ds-arrow{
    animation:dsChevronFloat 2.8s ease-in-out infinite!important;
}
/* Stronger slide-down interaction */
#dsHeader .ds-nav-dropdown:hover .ds-arrow,
#dsHeader .ds-nav-dropdown:focus-within .ds-arrow{
    animation:dsChevronDrop .48s cubic-bezier(.2,.8,.2,1) both!important;
}
#dsHeader .ds-nav-dropdown:hover .ds-arrow::before,
#dsHeader .ds-nav-dropdown:hover .ds-arrow::after,
#dsHeader .ds-nav-dropdown:focus-within .ds-arrow::before,
#dsHeader .ds-nav-dropdown:focus-within .ds-arrow::after{
    background:var(--ds-gold-light)!important;
    box-shadow:0 0 12px rgba(233,198,109,.4)!important;
}

/* More breathing room inside dropdown */
#dsHeader .ds-dropdown{
    top:calc(100% - 1px)!important;
    width:240px!important;
    padding:12px!important;
    border-radius:16px!important;
    transform:translate(-50%,18px) scale(.95)!important;
}
#dsHeader .ds-nav-dropdown:hover>.ds-dropdown,
#dsHeader .ds-nav-dropdown:focus-within>.ds-dropdown{
    transform:translate(-50%,0) scale(1)!important;
}
#dsHeader .ds-dropdown a{
    min-height:48px!important;
    padding-left:17px!important;
    padding-right:17px!important;
    font-size:13.5px!important;
}

/* Larger donate button */
#dsHeader .ds-donate{
    width:170px!important;
    min-width:170px!important;
    height:68px!important;
    min-height:68px!important;
    border-radius:16px!important;
    font-size:14px!important;
    gap:14px!important;
}
#dsHeader .ds-donate-arrow{
    font-size:20px!important;
}

/* Remove the visible white gutter/line around the first page section */
html,body{
    background:#062f24!important;
}
body #page,
body .site,
body .site-content,
body #content,
body .content-area{
    margin-top:0!important;
    padding-top:0!important;
}
body .site-content > .ast-container,
body .site-content > .ast-container-fluid{
    margin-top:0!important;
    padding-top:0!important;
    padding-left:0!important;
    padding-right:0!important;
    max-width:none!important;
}
body .elementor,
body .elementor-section-wrap,
body .elementor-section{
    margin-top:0!important;
    padding-top:0!important;
}

@keyframes dsChevronFloat{
    0%,100%{transform:translateY(0)}
    50%{transform:translateY(3px)}
}
@keyframes dsChevronDrop{
    0%{transform:translateY(-3px) scale(.92)}
    55%{transform:translateY(5px) scale(1.08)}
    100%{transform:translateY(2px) scale(1)}
}

/* =========================================================
   V1.4 RESPONSIVE HEADER
   ========================================================= */
@media(max-width:1800px) and (min-width:1081px){
    #dsHeader .ds-header-core{
        padding-left:30px!important;
        padding-right:30px!important;
        gap:22px!important;
    }
    #dsHeader .ds-nav{gap:9px!important}
    #dsHeader .ds-nav>a,
    #dsHeader .ds-nav-dropdown>.ds-dropdown-trigger{font-size:12.8px!important}
    #dsHeader .ds-brand-name{font-size:23px!important}
    #dsHeader .ds-brand-sub{font-size:8px!important;letter-spacing:2px!important}
    #dsHeader .ds-logo-wrap{width:72px!important;height:72px!important;min-width:72px!important}
    #dsHeader .ds-donate{width:145px!important;min-width:145px!important;height:62px!important;min-height:62px!important;font-size:13px!important}
}

@media(max-width:1080px){
    #dsHeader.ds-header{
        height:92px!important;
        min-height:92px!important;
        max-height:92px!important;
    }
    #dsHeader .ds-header-core{
        height:92px!important;
        min-height:92px!important;
        max-height:92px!important;
        padding:0 22px!important;
    }
    #dsHeader .ds-brand{
        height:92px!important;
    }
    #dsHeader .ds-logo-wrap{
        width:62px!important;
        height:62px!important;
        min-width:62px!important;
    }
    #dsHeader .ds-brand-name{font-size:20px!important}
    #dsHeader .ds-brand-sub{font-size:7px!important;letter-spacing:1.8px!important}
}

@media(max-width:600px){
    #dsHeader.ds-header{
        height:78px!important;
        min-height:78px!important;
        max-height:78px!important;
    }
    #dsHeader .ds-header-core{
        height:78px!important;
        min-height:78px!important;
        max-height:78px!important;
        padding:0 16px!important;
    }
    #dsHeader .ds-brand{height:78px!important;gap:10px!important}
    #dsHeader .ds-logo-wrap{width:50px!important;height:50px!important;min-width:50px!important}
    #dsHeader .ds-brand-name{font-size:15px!important}
    #dsHeader .ds-brand-sub{font-size:5.9px!important;letter-spacing:1.65px!important}
    #dsHeader .ds-mobile-menu{max-height:calc(100vh - 78px)!important}
}


/* =========================================================
   PREMIUM HEADER V1.5 — BALANCED BRAND + NAVIGATION
   ========================================================= */
#dsHeader.ds-header{
    height:128px!important;
    min-height:128px!important;
    max-height:128px!important;
}
#dsHeader .ds-header-core{
    height:128px!important;
    min-height:128px!important;
    max-height:128px!important;
    padding-left:40px!important;
    padding-right:40px!important;
    gap:26px!important;
}

/* Slightly smaller brand so the navigation has clear breathing room */
#dsHeader .ds-brand{
    height:128px!important;
    gap:15px!important;
    flex:0 0 350px!important;
    min-width:350px!important;
    max-width:350px!important;
}
#dsHeader .ds-logo-wrap{
    width:70px!important;
    height:70px!important;
    min-width:70px!important;
    max-width:70px!important;
    min-height:70px!important;
    max-height:70px!important;
    border-radius:14px!important;
}
#dsHeader .ds-brand-name{
    font-size:23px!important;
    letter-spacing:.55px!important;
}
#dsHeader .ds-brand-sub{
    font-size:8px!important;
    letter-spacing:2.05px!important;
}

/* Keep navigation in its own flexible zone; never overlap the brand */
#dsHeader .ds-nav{
    flex:1 1 auto!important;
    min-width:0!important;
    height:128px!important;
    gap:11px!important;
    justify-content:flex-end!important;
}
#dsHeader .ds-nav>a,
#dsHeader .ds-nav-dropdown>.ds-dropdown-trigger{
    height:128px!important;
    flex:0 0 auto!important;
    font-size:12px!important;
    font-weight:600!important;
    letter-spacing:0!important;
}
#dsHeader .ds-nav-dropdown{
    height:128px!important;
    flex:0 0 auto!important;
}

/* Cleaner chevron: subtle idle drift, decisive downward hover */
#dsHeader .ds-arrow{
    width:12px!important;
    height:9px!important;
    min-width:12px!important;
    flex-basis:12px!important;
    margin-left:7px!important;
    animation:dsChevronFloatV15 2.8s ease-in-out infinite!important;
}
#dsHeader .ds-arrow::before,
#dsHeader .ds-arrow::after{
    top:3px!important;
    width:8px!important;
    height:2px!important;
    transition:background .2s ease,box-shadow .2s ease,transform .28s cubic-bezier(.2,.8,.2,1)!important;
}
#dsHeader .ds-nav-dropdown:hover .ds-arrow,
#dsHeader .ds-nav-dropdown:focus-within .ds-arrow{
    animation:none!important;
    transform:translateY(5px)!important;
}
#dsHeader .ds-nav-dropdown:hover .ds-arrow::before,
#dsHeader .ds-nav-dropdown:focus-within .ds-arrow::before{
    transform:rotate(45deg) translateY(0)!important;
}
#dsHeader .ds-nav-dropdown:hover .ds-arrow::after,
#dsHeader .ds-nav-dropdown:focus-within .ds-arrow::after{
    transform:rotate(-45deg) translateY(0)!important;
}

/* Fully rounded premium Donate pill */
#dsHeader .ds-donate{
    width:150px!important;
    min-width:150px!important;
    height:62px!important;
    min-height:62px!important;
    border-radius:999px!important;
    font-size:13px!important;
    gap:13px!important;
}
#dsHeader .ds-donate-arrow{
    font-size:18px!important;
}

/* Medium-large desktop: prevent navigation compression/overlap */
@media(max-width:1700px) and (min-width:1081px){
    #dsHeader .ds-header-core{
        padding-left:28px!important;
        padding-right:28px!important;
        gap:18px!important;
    }
    #dsHeader .ds-brand{
        flex-basis:315px!important;
        min-width:315px!important;
        max-width:315px!important;
        gap:13px!important;
    }
    #dsHeader .ds-logo-wrap{
        width:64px!important;
        height:64px!important;
        min-width:64px!important;
    }
    #dsHeader .ds-brand-name{font-size:21px!important}
    #dsHeader .ds-brand-sub{font-size:7.2px!important;letter-spacing:1.75px!important}
    #dsHeader .ds-nav{gap:8px!important}
    #dsHeader .ds-nav>a,
    #dsHeader .ds-nav-dropdown>.ds-dropdown-trigger{font-size:11px!important}
    #dsHeader .ds-donate{width:135px!important;min-width:135px!important;height:58px!important;min-height:58px!important;font-size:12px!important}
}

@keyframes dsChevronFloatV15{
    0%,100%{transform:translateY(0)}
    50%{transform:translateY(2px)}
}

/* =========================================================
   MOBILE V1.5
   ========================================================= */
@media(max-width:1080px){
    #dsHeader .ds-brand{
        flex:0 0 auto!important;
        min-width:0!important;
        max-width:none!important;
    }
}

/* =========================================================
   PREMIUM HEADER V1.6 — MORE SPREAD + SLIGHTLY LARGER TYPE
   ========================================================= */

@media(min-width:1701px){

    #dsHeader .ds-header-core{
        padding-left:40px!important;
        padding-right:40px!important;
        gap:30px!important;
    }

    /* Give the brand a little more breathing room */
    #dsHeader .ds-brand{
        flex:0 0 365px!important;
        min-width:365px!important;
        max-width:365px!important;
        gap:17px!important;
    }

    #dsHeader .ds-logo-wrap{
        width:68px!important;
        height:68px!important;
        min-width:68px!important;
        max-width:68px!important;
        min-height:68px!important;
        max-height:68px!important;
    }

    #dsHeader .ds-brand-name{
        font-size:22px!important;
        letter-spacing:.6px!important;
    }

    #dsHeader .ds-brand-sub{
        font-size:7.8px!important;
        letter-spacing:2px!important;
    }

    /* More space between menu items */
    #dsHeader .ds-nav{
        gap:15px!important;
        padding-left:8px!important;
    }

    /* Slightly larger navigation text */
    #dsHeader .ds-nav>a,
    #dsHeader .ds-nav-dropdown>.ds-dropdown-trigger{
        font-size:12.2px!important;
        font-weight:600!important;
    }

    #dsHeader .ds-nav-dropdown{
        margin:0!important;
    }

    /* Keep Donate comfortably separated from Contact Us */
    #dsHeader .ds-donate{
        margin-left:10px!important;
        width:150px!important;
        min-width:150px!important;
        height:62px!important;
        min-height:62px!important;
        border-radius:999px!important;
        font-size:13px!important;
    }
}


/* =========================================================
   LARGE DESKTOP — EXTRA BREATHING ROOM
   ========================================================= */

@media(min-width:1801px){

    #dsHeader .ds-header-core{
        padding-left:46px!important;
        padding-right:46px!important;
        gap:34px!important;
    }

    #dsHeader .ds-brand{
        flex-basis:380px!important;
        min-width:380px!important;
        max-width:380px!important;
        gap:18px!important;
    }

    #dsHeader .ds-nav{
        gap:18px!important;
    }

    #dsHeader .ds-nav>a,
    #dsHeader .ds-nav-dropdown>.ds-dropdown-trigger{
        font-size:12.6px!important;
    }
}


/* =========================================================
   MEDIUM DESKTOP — KEEP EVERYTHING BALANCED
   ========================================================= */

@media(max-width:1700px) and (min-width:1401px){

    #dsHeader .ds-header-core{
        padding-left:30px!important;
        padding-right:30px!important;
        gap:20px!important;
    }

    #dsHeader .ds-brand{
        flex:0 0 325px!important;
        min-width:325px!important;
        max-width:325px!important;
        gap:14px!important;
    }

    #dsHeader .ds-logo-wrap{
        width:64px!important;
        height:64px!important;
        min-width:64px!important;
        max-width:64px!important;
        min-height:64px!important;
        max-height:64px!important;
    }

    #dsHeader .ds-brand-name{
        font-size:21px!important;
    }

    #dsHeader .ds-brand-sub{
        font-size:7.2px!important;
        letter-spacing:1.8px!important;
    }

    #dsHeader .ds-nav{
        gap:12px!important;
    }

    #dsHeader .ds-nav>a,
    #dsHeader .ds-nav-dropdown>.ds-dropdown-trigger{
        font-size:11.5px!important;
    }

    #dsHeader .ds-donate{
        width:140px!important;
        min-width:140px!important;
        height:60px!important;
        min-height:60px!important;
        border-radius:999px!important;
        font-size:12.5px!important;
    }
}


/* =========================================================
   ARROW — CLEAN DOWNWARD MOTION
   ========================================================= */

@media(min-width:1081px){

    #dsHeader .ds-arrow{
        width:12px!important;
        height:9px!important;
        min-width:12px!important;
        flex-basis:12px!important;
        margin-left:8px!important;
        animation:dsChevronFloatV16 2.6s ease-in-out infinite!important;
    }

    #dsHeader .ds-nav-dropdown:hover .ds-arrow,
    #dsHeader .ds-nav-dropdown:focus-within .ds-arrow{
        animation:dsChevronHoverV16 .42s cubic-bezier(.2,.8,.2,1) both!important;
    }
}

@keyframes dsChevronFloatV16{
    0%,100%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(2px);
    }
}

@keyframes dsChevronHoverV16{
    0%{
        transform:translateY(-1px);
    }

    55%{
        transform:translateY(5px);
    }

    100%{
        transform:translateY(3px);
    }
}


/* =========================================================
   FINAL ASTRA WIDTH SAFETY
   ========================================================= */

#dsHeader .ds-header-core,
#dsHeader .ds-nav,
#dsHeader .ds-brand{
    min-width:0;
}

#dsHeader .ds-nav>a,
#dsHeader .ds-nav-dropdown,
#dsHeader .ds-nav-dropdown>.ds-dropdown-trigger{
    flex-shrink:0;
}

/* =========================================================
   SHYNIX CREATIVE FOOTER CREDIT
   ========================================================= */
#dsFooter .ds-footer-bottom{
    flex-wrap:wrap;
}

#dsFooter .ds-footer-credit{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:4px;
    color:rgba(255,255,255,.48);
    font-family:'Montserrat',sans-serif;
    font-size:10px;
    font-weight:500;
    line-height:1.5;
    white-space:nowrap;
}

#dsFooter .ds-footer-heart{
    display:inline-block;
    color:var(--ds-gold);
    font-size:12px;
    line-height:1;
    animation:dsFooterHeartPulse 1.8s ease-in-out infinite;
}

#dsFooter .ds-footer-credit a{
    color:var(--ds-gold)!important;
    font-weight:700;
    text-decoration:none!important;
    transition:color .25s ease,transform .25s ease!important;
}

#dsFooter .ds-footer-credit a:hover,
#dsFooter .ds-footer-credit a:focus{
    color:var(--ds-gold-light)!important;
    transform:translateY(-1px);
}

@keyframes dsFooterHeartPulse{
    0%,100%{transform:scale(1)}
    50%{transform:scale(1.16)}
}

@media(max-width:900px){
    #dsFooter .ds-footer-bottom{
        align-items:center;
    }
}

@media(max-width:600px){
    #dsFooter .ds-footer-bottom{
        align-items:flex-start;
    }

    #dsFooter .ds-footer-credit{
        font-size:10px;
    }
}

@media(prefers-reduced-motion:reduce){
    #dsFooter .ds-footer-heart{
        animation:none!important;
    }
}

/* =========================================================
   V1.7 — HARD FIX FOR LOGO DOM / POSITIONING
   ========================================================= */
#dsHeader .ds-brand{
    position:relative!important;
    isolation:isolate!important;
    overflow:visible!important;
}

#dsHeader .ds-logo-wrap{
    position:relative!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 0 68px!important;
    width:68px!important;
    height:68px!important;
    min-width:68px!important;
    max-width:68px!important;
    min-height:68px!important;
    max-height:68px!important;
    overflow:visible!important;
    box-sizing:border-box!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
}

#dsHeader .ds-logo-wrap .ds-site-logo{
    position:relative!important;
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-width:0!important;
    min-height:0!important;
    max-width:100%!important;
    max-height:100%!important;
    margin:0!important;
    padding:0!important;
    object-fit:contain!important;
    object-position:center!important;
    transform:none!important;
}

/* Prevent theme/page logo rules from affecting the custom header. */
#dsHeader .custom-logo,
#dsHeader .custom-logo-link{
    width:auto!important;
    height:auto!important;
    max-width:none!important;
    max-height:none!important;
}

#dsHeader .ds-logo-wrap .ds-site-logo{
    width:100%!important;
    height:100%!important;
    max-width:100%!important;
    max-height:100%!important;
}

/* The header itself is the only global sticky element. */
#dsHeader.ds-header{
    position:sticky!important;
    top:0!important;
    left:0!important;
    right:0!important;
    z-index:99999!important;
    transform:none!important;
}
body.admin-bar #dsHeader.ds-header{top:32px!important}

/* Never let common page/theme logo selectors create another visible logo. */
#masthead .custom-logo,
#masthead .custom-logo-link,
.site-header .custom-logo,
.site-header .custom-logo-link{
    visibility:hidden!important;
}

/* Footer stays in normal document flow and cannot overlap page content. */
#dsFooter.ds-footer{
    position:relative!important;
    z-index:1!important;
    clear:both!important;
    float:none!important;
    transform:none!important;
}

@media(max-width:1700px) and (min-width:1081px){
    #dsHeader .ds-logo-wrap{
        flex-basis:64px!important;
        width:64px!important;
        height:64px!important;
        min-width:64px!important;
        max-width:64px!important;
        min-height:64px!important;
        max-height:64px!important;
    }
}

@media(max-width:1080px){
    #dsHeader .ds-logo-wrap{
        flex-basis:62px!important;
        width:62px!important;
        height:62px!important;
        min-width:62px!important;
        max-width:62px!important;
        min-height:62px!important;
        max-height:62px!important;
    }
}

@media(max-width:600px){
    #dsHeader .ds-logo-wrap{
        flex-basis:50px!important;
        width:50px!important;
        height:50px!important;
        min-width:50px!important;
        max-width:50px!important;
        min-height:50px!important;
        max-height:50px!important;
    }
    body.admin-bar #dsHeader.ds-header{top:46px!important}
}


/* =========================================================
   V1.8 — REMOVE HEADER LOGO WHITE BOX
   ========================================================= */
#dsHeader .ds-logo-wrap,
#dsHeader .ds-logo-wrap:hover,
#dsHeader .ds-brand:hover .ds-logo-wrap{
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
}

#dsHeader .ds-logo-wrap::after{
    display:none!important;
}


/* =========================================================
   V2.2 — LEGAL FOOTER LINKS
   ========================================================= */
#dsFooter .ds-footer-legal{
    display:flex!important;
    align-items:center;
    justify-content:center;
    gap:8px 18px;
    flex-wrap:wrap;
}
#dsFooter .ds-footer-legal a{
    font-family:'Montserrat',sans-serif!important;
    font-size:9.5px!important;
    font-weight:500!important;
    color:rgba(255,255,255,.5)!important;
    text-decoration:none!important;
    transition:color .2s ease,transform .2s ease!important;
}
#dsFooter .ds-footer-legal a:hover,
#dsFooter .ds-footer-legal a:focus-visible{
    color:var(--ds-gold)!important;
    transform:translateY(-1px);
}
@media(max-width:600px){
    #dsFooter .ds-footer-legal{
        width:100%;
        justify-content:flex-start;
        gap:10px 16px;
    }
}
