 .site-footer,.site-footer *{box-sizing:border-box;margin:0;padding:0;}:root{--footer-bg:#1a1a1a;--footer-text:#e0e0e0;--footer-heading:#ffffff;--footer-link:var(--color-link);--footer-link-hover:var(--color-link-hover);--footer-border:rgba(255,255,255,0.1);--footer-padding-v:2rem;--footer-padding-h:1.5rem;--footer-gap:2rem;--footer-radius:8px;--transition-fast:0.2s ease;}.footer-container{max-width:1200px;margin:4rem auto 2rem;padding:var(--footer-padding-v) var(--footer-padding-h);background-color:var(--footer-bg);color:var(--footer-text);border-radius:var(--footer-radius);}.footer-widgets--flex{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--footer-gap);margin-bottom:2.5rem;}.footer-widget-area,.footer-newsletter{background-color:rgba(255,255,255,0.04);padding:var(--footer-padding-v) var(--footer-padding-h);border-radius:var(--footer-radius);}.footer-widget-area .widget-title,.footer-newsletter .card-title{background:transparent !important;padding:0 !important;font-family:var(--font-serif);font-size:1.3rem;margin-bottom:1rem;color:var(--footer-heading);position:relative;}.footer-widget-area .widget-title::after,.footer-newsletter .card-title::after{content:"";display:block;width:3rem;height:3px;background-color:var(--footer-link);margin-top:0.25rem;}.footer-widget-area ul{list-style:none;margin-left:0;}.footer-widget-area ul li{margin-bottom:0.5rem;}.footer-widget-area ul li a{color:var(--footer-text);text-decoration:none;transition:color var(--transition-fast);}.footer-widget-area ul li a:hover{color:var(--footer-link);}.newsletter-group{display:flex;flex-wrap:wrap;gap:1rem;}.newsletter-input{flex:2;padding:0.75rem 1rem;border:1px solid var(--footer-border);background:transparent;color:var(--footer-text);border-radius:4px;font-size:1rem;}.newsletter-input::placeholder{color:rgba(224,224,224,0.6);}.newsletter-submit{flex:1;padding:0.75rem 1rem;background-color:var(--footer-link);color:#1a1a1a;border:none;border-radius:4px;cursor:pointer;transition:background-color var(--transition-fast);}.newsletter-submit:hover{background-color:var(--footer-link-hover);}.footer-nav-wrap{background:var(--footer-bg,#111);padding:2rem 1rem;}.footer-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem 2rem;list-style:none;margin:0 auto;max-width:960px;padding:0;}.footer-nav li{flex:0 1 auto;}.footer-nav a{font-family:var(--font-sans,sans-serif);font-size:0.875rem;color:var(--footer-text,#ccc);text-transform:uppercase;letter-spacing:0.05em;text-decoration:none;transition:color 0.2s ease;}.footer-nav a:hover{color:var(--footer-link,#fff);}.footer-nav-wrap::before{content:"";display:block;width:80px;height:2px;background:var(--footer-link,#fff);margin:0 auto 1.5rem;}@media (max-width:768px){.footer-nav{gap:1rem;justify-content:space-between;}.footer-nav li{flex:1 1 45%;text-align:center;}}@media (max-width:480px){.footer-nav{flex-direction:column;gap:0.75rem;}.footer-nav li{flex:1 1 100%;}}.footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;border-top:1px solid var(--footer-border);padding:1.5rem var(--footer-padding-h);}.footer-legal{font-family:var(--font-sans);font-size:0.8rem;text-align:center;color:rgba(224,224,224,0.6);}.footer-credit-link{color:rgba(224,224,224,0.6);text-decoration:underline;transition:color var(--transition-fast);}.footer-credit-link:hover{color:var(--footer-link);text-decoration:none;}.back-to-top{font-family:var(--font-sans);font-size:1.2rem;color:var(--footer-text);text-decoration:none;transition:color var(--transition-fast);}.back-to-top{font-family:var(--font-sans);font-size:1.2rem;color:var(--footer-text);text-decoration:none;transition:color var(--transition-fast);}.back-to-top:hover{color:var(--footer-link);}.social-list{display:flex;gap:0.75rem;list-style:none;}.social-list__item a{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background:rgba(255,255,255,0.1);border-radius:50%;transition:background var(--transition-fast),transform var(--transition-fast);}.social-list__item a:hover{background:var(--footer-link);transform:translateY(-2px);}.social-list__item i{color:#fff;font-size:1.25rem;}@media (max-width:768px){.footer-widgets--flex{grid-template-columns:1fr;gap:1rem;}.footer-nav-wrap{margin-bottom:1.5rem;}.footer-bottom{flex-direction:column;text-align:center;}}