/* Pure Soul Tales shared header/footer — based on the supplied Contact/Author pages */
:root{--pst-bg:#FAF6F0;--pst-primary:#380F18;--pst-accent:#8E283B;--pst-text:#2C2523;--pst-muted:#6B605B;--pst-border:#E8DFD5;--pst-serif:'Cormorant Garamond',Georgia,serif;--pst-sans:'Montserrat',sans-serif;--pst-hand:'Caveat',cursive}
.site-nav{background-color:var(--pst-bg)!important;padding:1.25rem 0!important;border-bottom:1px solid var(--pst-border)!important;position:sticky!important;top:0;z-index:1030;backdrop-filter:blur(10px)}
.brand-logo-wrap{display:inline-flex;flex-direction:column;align-items:center;text-decoration:none!important}
.brand-feather-icon{width:22px;height:22px;color:var(--pst-accent);margin-bottom:2px;transition:transform .3s ease}
.brand-logo-wrap:hover .brand-feather-icon{transform:rotate(-10deg) scale(1.08)}
.brand-title{font-family:var(--pst-serif)!important;letter-spacing:.22em!important;font-weight:700!important;font-size:1.25rem!important;color:var(--pst-primary)!important;line-height:1.1!important;text-transform:uppercase}
.brand-subtitle{font-family:var(--pst-sans)!important;font-size:.55rem!important;letter-spacing:.35em!important;color:var(--pst-muted)!important;text-transform:uppercase}
.site-nav .nav-link{font-family:var(--pst-sans)!important;font-size:.86rem!important;letter-spacing:.04em!important;color:#4a413d!important;padding:.45rem 1.1rem!important;position:relative;transition:color .2s ease;font-weight:400}
.site-nav .nav-link:hover{color:var(--pst-accent)!important}
.site-nav .nav-link.active{color:var(--pst-primary)!important;font-weight:500}
.site-nav .nav-link.active::after{content:'';position:absolute;bottom:0;left:1.1rem;right:1.1rem;height:1.5px;background-color:var(--pst-accent)}
.search-nav-btn{color:#4a413d!important;background:none!important;border:none!important;padding:.35rem!important;cursor:pointer;font-size:1.05rem;transition:color .2s,transform .2s}
.search-nav-btn:hover{color:var(--pst-accent)!important;transform:scale(1.1)}
.site-footer{background-color:var(--pst-primary)!important;color:#E8DCD5;padding:5rem 0 2.5rem;position:relative}
.site-footer .footer-brand-title{font-family:var(--pst-serif);letter-spacing:.22em;font-weight:700;font-size:1.45rem;color:#fff;text-transform:uppercase}
.site-footer .footer-brand-sub{font-size:.58rem;letter-spacing:.35em;color:#CBBAB1;text-transform:uppercase;display:block;margin-bottom:1.2rem}
.site-footer .footer-quote{font-size:.88rem;line-height:1.75;color:#D3C5BD;font-weight:300;max-width:320px}
.site-footer .footer-heading{font-family:var(--pst-serif);font-size:1.25rem;color:#fff;margin-bottom:1.4rem;font-weight:600;letter-spacing:.05em}
.site-footer .footer-links{list-style:none;padding:0;margin:0}.site-footer .footer-links li{margin-bottom:.55rem}
.site-footer .footer-links a,.site-footer .footer-contact-mail{color:#D3C5BD;text-decoration:none;font-size:.88rem;font-weight:300;transition:color .2s ease,padding-left .2s ease}
.site-footer .footer-links a:hover{color:#fff;padding-left:4px}.site-footer .footer-contact-mail{word-break:break-all;display:inline-block;margin-bottom:1.25rem}
.site-footer .footer-contact-mail:hover,.site-footer .social-icon-btn:hover{color:#fff}
.site-footer .social-icon-btn{color:#D3C5BD;font-size:1.3rem;transition:color .2s ease,transform .2s ease;display:inline-block;text-decoration:none}
.site-footer .social-icon-btn:hover{transform:translateY(-2px)}
.site-footer .footer-script-sign{font-family:var(--pst-hand);font-size:1.75rem;color:#D6BCB4;line-height:1.2;opacity:.9;transform:rotate(-3deg);margin-top:1.5rem}
.site-footer .footer-copyright{font-size:.8rem;color:#9F8A80;font-weight:300}
@media(max-width:991px){.site-nav .nav-link{padding:.45rem 1rem!important}.site-nav .nav-link.active::after{left:1rem;right:1rem}.site-footer{padding:4rem 0 2rem}}

/* Dynamic site logo */
.custom-logo-link{display:inline-flex;align-items:center;text-decoration:none!important;line-height:0}.pst-header-custom-logo img.custom-logo{max-height:74px;width:auto;max-width:220px;object-fit:contain}.pst-footer-custom-logo img.custom-logo{max-height:86px;width:auto;max-width:260px;object-fit:contain}.footer-logo-fallback{display:inline-flex;flex-direction:column;text-decoration:none!important}.footer-logo-fallback .footer-brand-sub{margin-bottom:1.2rem}
@media(max-width:575px){.pst-header-custom-logo img.custom-logo{max-width:165px;max-height:62px}.pst-footer-custom-logo img.custom-logo{max-width:200px;max-height:70px}.site-nav{padding:.9rem 0!important}.search-nav-btn{font-size:1.1rem}}
