.ddw-footer { --ddw-navy:#2C3946; --ddw-blue:#526B83; --ddw-paper:#F3F1EC; --ddw-accent:#B86247; width:100%; max-width:none; padding:0; margin:0; gap:0; display:flex; flex-direction:column; font-family:"DDW Source",Arial,sans-serif; font-size:16px; line-height:1.6; color:var(--ddw-paper); background:var(--ddw-navy); }
.ddw-footer *, .ddw-footer *::before, .ddw-footer *::after { box-sizing:border-box; }
.ddw-footer .e-con { gap:0; min-height:0; }
.ddw-footer .elementor-widget { margin:0; --kit-widget-spacing:0px; }
.ddw-footer .elementor-widget-container { margin:0; }
.ddw-footer p { margin:0; }
.ddw-footer a { text-decoration:none; transition:color .2s,background .2s,transform .2s; }
.ddw-footer a:focus-visible { outline:2px solid var(--ddw-accent); outline-offset:5px; }
.ddw-footer .ddw-contact { width:100%; padding:48px 32px; background:var(--ddw-paper); color:var(--ddw-navy); }
.ddw-footer .ddw-contact-row { display:flex; flex-direction:row; justify-content:space-between; align-items:center; gap:48px; width:100%; max-width:1120px; margin:0 auto; padding:0; }
.ddw-footer .ddw-contact-copy { width:auto; flex:1; padding:0; display:flex; flex-direction:column; gap:12px; }
.ddw-footer .ddw-eyebrow .elementor-heading-title { font-family:"DDW Source",Arial,sans-serif; font-size:11px; line-height:1.4; font-weight:600; letter-spacing:2px; color:var(--ddw-blue); margin:0; }
.ddw-footer .ddw-title .elementor-heading-title { font-family:Larken,Georgia,serif; font-size:38px; line-height:1.16; font-weight:400; letter-spacing:-.8px; color:var(--ddw-navy); margin:0; }
.ddw-footer .ddw-contact-action { width:270px; flex:0 0 270px; padding:0; display:flex; flex-direction:column; align-items:flex-start; gap:18px; }
.ddw-footer .ddw-contact-action .elementor-widget-text-editor { font-size:15px; line-height:1.65; color:var(--ddw-blue); }
.ddw-footer .ddw-button .elementor-button { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:13px 22px; color:var(--ddw-paper); background:var(--ddw-navy); border-radius:3px; font-family:"DDW Source",Arial,sans-serif; font-size:15px; font-weight:600; line-height:1.4; border:1px solid var(--ddw-navy); }
.ddw-footer .ddw-button .elementor-button::after { content:"↗"; margin-left:24px; font-size:20px; line-height:1; color:#DCA28E; }
.ddw-footer .ddw-button .elementor-button:hover { background:var(--ddw-blue); border-color:var(--ddw-blue); transform:translateY(-1px); }
.ddw-footer .ddw-main { width:100%; padding:56px 32px 0; background:var(--ddw-navy); }
.ddw-footer .ddw-main-row { display:flex; flex-direction:row; align-items:flex-start; gap:70px; width:100%; max-width:1120px; margin:0 auto; padding:0 0 42px; }
.ddw-footer .ddw-brand { display:flex; flex-direction:column; gap:24px; flex:1.7; width:0; padding:0; }
.ddw-footer .ddw-logo { width:300px; max-width:100%; }
.ddw-footer .ddw-logo a { display:block; width:100%; }
.ddw-footer .ddw-logo svg { display:block; width:100%; height:auto; }
.ddw-footer .ddw-brand-copy { max-width:330px; font-size:16px; line-height:1.75; color:#D7DEE3; }
.ddw-footer .ddw-signature { font-size:12px; color:#C2CBD3; letter-spacing:.2px; }
.ddw-footer .ddw-signature p::before { content:""; display:inline-block; width:22px; height:2px; vertical-align:middle; margin-right:11px; background:var(--ddw-accent); }
.ddw-footer .ddw-nav { display:flex; flex-direction:column; gap:14px; flex:1; width:0; padding:10px 0 0; }
.ddw-footer .ddw-nav-title .elementor-heading-title { font-family:"DDW Source",Arial,sans-serif; font-size:12px; line-height:1.5; font-weight:600; letter-spacing:1.6px; color:#F3F1EC; text-transform:uppercase; margin:0; }
.ddw-footer .ddw-links { list-style:none; padding:0; margin:0; }
.ddw-footer .ddw-links li { padding:0; margin:0; }
.ddw-footer .ddw-links a { display:inline-flex; align-items:center; min-height:40px; color:#D7DEE3; font-size:16px; }
.ddw-footer .ddw-links a:hover, .ddw-footer .ddw-legal a:hover { color:#F3F1EC; text-decoration:underline; text-decoration-color:#DCA28E; text-underline-offset:5px; }
.ddw-footer .ddw-bottom { width:100%; max-width:1120px; margin:0 auto; border-top:1px solid #52616F; padding:23px 0; display:flex; flex-direction:row; justify-content:space-between; align-items:center; gap:24px; }
.ddw-footer .ddw-copyright { width:auto; color:#C2CBD3; font-size:12px; line-height:1.8; }
.ddw-footer .ddw-legal { width:auto; }
.ddw-footer .ddw-legal p { display:flex; flex-wrap:wrap; gap:24px; }
.ddw-footer .ddw-legal a { color:#C2CBD3; font-size:12px; line-height:1.8; min-height:32px; display:inline-flex; align-items:center; }
@media (max-width:1024px) {
 .ddw-footer .ddw-contact, .ddw-footer .ddw-main { padding-left:28px; padding-right:28px; }
 .ddw-footer .ddw-main-row { gap:36px; }
 .ddw-footer .ddw-logo { width:270px; }
 .ddw-footer .ddw-title .elementor-heading-title { font-size:34px; }
}
@media (max-width:767px) {
 .ddw-footer .ddw-contact { padding:34px 24px 36px; }
 .ddw-footer .ddw-contact-row { flex-direction:column; align-items:flex-start; gap:24px; }
 .ddw-footer .ddw-contact-copy { width:100%; flex:auto; }
 .ddw-footer .ddw-title .elementor-heading-title { font-size:31px; letter-spacing:-.6px; }
 .ddw-footer .ddw-contact-action { width:100%; flex:auto; gap:16px; }
 .ddw-footer .ddw-main { padding:36px 24px 0; }
 .ddw-footer .ddw-main-row { flex-wrap:wrap; gap:32px 20px; padding-bottom:30px; }
 .ddw-footer .ddw-brand { width:100%; flex:0 0 100%; gap:20px; }
 .ddw-footer .ddw-logo { width:275px; }
 .ddw-footer .ddw-brand-copy { max-width:340px; font-size:15px; }
 .ddw-footer .ddw-nav { flex:1 1 calc(50% - 10px); width:calc(50% - 10px); padding:0; gap:10px; }
 .ddw-footer .ddw-links a { min-height:44px; font-size:15px; }
 .ddw-footer .ddw-bottom { flex-direction:column; align-items:flex-start; gap:6px; padding:20px 0 24px; }
 .ddw-footer .ddw-legal p { gap:6px 20px; }
 .ddw-footer .ddw-legal a { min-height:44px; }
}
@media (prefers-reduced-motion:reduce) { .ddw-footer a { transition:none; } }