/* DATECH: DAITA orange for surfaces, darker orange for text on light backgrounds. */
:root{
  --brand-orange:#f59c42;
  --brand-orange-hover:#e78b2d;
  --accent:#93470d;
  --accent-hover:#713406;
  --accent-bright:var(--brand-orange);
  --accent-soft:#fff2e5;
  --nav-background:#fff;
  --nav-ink:#0b1622;
  --control-border:#6b7a80;
  --focus-dark:#0b1622;
  --surface:#f7f5f2;
}
.site-header{background:#fff;border-bottom:3px solid var(--brand-orange)}
.site-header .brand img{filter:none;opacity:1;background:transparent}
.navigation>a,.navigation>a:hover,.navigation>a[aria-current]{color:var(--nav-ink)}
.navigation .nav-cta{background:var(--nav-ink);color:white}
.navigation .nav-cta:hover,.navigation .nav-cta[aria-current]{background:var(--accent-soft);color:var(--nav-ink)}
.menu-toggle{border-color:var(--nav-ink);background:transparent}
.menu-toggle span{background:var(--nav-ink)}
.site-header :focus-visible{outline-color:var(--focus-dark)}
.btn:not(.btn-plain):not(.btn-dark):not(.btn-outline):not(.btn-white){background:var(--brand-orange);color:var(--nav-ink);border-color:var(--accent)}
.btn:not(.btn-plain):not(.btn-dark):not(.btn-outline):not(.btn-white):hover{background:var(--brand-orange-hover);color:var(--nav-ink);border-color:var(--accent-hover)}
.btn-dark{background:var(--ink-dark);color:white}
.btn-dark:hover{background:var(--nav-ink);color:white}
.btn-white:hover{background:var(--accent-soft);color:var(--ink-dark)}
.btn-outline{border-color:#cadbe0;color:white}
.btn-outline:hover{background:var(--ink-dark);color:white}
.page-intro{border-bottom-color:var(--brand-orange)}
.closing{border-top-color:var(--brand-orange)}
.closing .eyebrow{color:#ffe4c7}
.closing p:not(.eyebrow){color:#e5edf0}
.qualification-section,.reviews-section{background:#fff8f0}
.service-number{background:#fff8f0;border-color:var(--accent);color:var(--accent)}
.consent-panel{background:#fff8f0;border-color:var(--accent)}
.consent-actions button{border-color:var(--accent)}
.gallery-filters button[aria-pressed=true]{background:var(--brand-orange);border-color:var(--accent);color:var(--nav-ink)}
.gallery-filters button:hover{border-color:var(--accent);color:var(--accent-hover)}
.gallery-filters button[aria-pressed=true]:hover{background:var(--brand-orange-hover);color:var(--nav-ink)}
.image-zoom{background:var(--brand-orange);color:var(--nav-ink);border:1px solid var(--accent)}
/* Two-tone focus stays visible against both orange and dark sections. */
:is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--focus-dark);outline-offset:4px;box-shadow:0 0 0 4px white}
.closing :focus-visible,.topbar :focus-visible,.lightbox :focus-visible{outline-color:var(--brand-orange);box-shadow:0 0 0 4px var(--ink-dark)}
.contact-form-wrap :is(input:not([type=checkbox]):not([type=hidden]):not([type=file]),select,textarea),#application-form :is(input:not([type=checkbox]):not([type=hidden]),select,textarea){border-color:var(--control-border);color:var(--ink);background:white}
input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}
.upload-zone{border-color:var(--control-border)}
.upload-zone:focus-within{outline-color:var(--focus-dark);box-shadow:0 0 0 4px white}
.carousel-controls button,.gallery-filters button,.upload-previews button{border-color:var(--control-border)}
.hero-controls button{border-color:transparent}
.contact-form-wrap [aria-busy=true] #submit-damage::after{border-color:var(--accent);border-top-color:var(--nav-ink)}
.signature-switch[aria-pressed=true]{background:var(--brand-orange);color:var(--nav-ink);border-color:var(--brand-orange)}
.signature-switch[aria-pressed=true]>span:first-child,.signature-switch[aria-pressed=true] .signature-switch-arrow{color:var(--nav-ink)}
@media(max-width:1200px){.navigation{background:white}}
/* Keep the final menu action above the fixed phone contact bar. */
@media(max-width:760px){.navigation{max-height:calc(100dvh - 180px)}}

/* Seal identifies Domenico Aita's documented qualification. */
.footer-qualification > img { width:min(300px,100%); height:auto; flex-shrink:0; background:white; padding:12px; border-radius:var(--radius,12px); object-fit:contain; }
.footer-qualification > div { min-width:0; }
@media(max-width:760px) { .footer-qualification { flex-direction:column; align-items:flex-start; } }

.navigation > .submenu-toggle, .navigation > .nav-services { display:none; }
@media(max-width:1200px) {
  .navigation.is-open { display:grid; grid-template-columns:minmax(0,1fr) 48px; align-items:stretch; gap:0; }
  .navigation > a { grid-column:1/-1; }
  .navigation > a[data-service-overview] { grid-column:1; }
  .js .navigation > .submenu-toggle { display:flex; align-items:center; justify-content:center; grid-column:2; width:48px; min-height:48px; padding:0; border:0; border-bottom:1px solid var(--line); background:#fff; color:var(--ink); font-size:1.5rem; cursor:pointer; border-radius:var(--radius,12px); }
  .submenu-toggle[aria-expanded="true"] span { transform:rotate(180deg); }
  .navigation > .nav-services { grid-column:1/-1; margin:0; padding-left:12px; border-left:2px solid var(--accent); background:var(--surface); }
  .navigation > .nav-services.is-expanded { display:grid; }
  .nav-services a { display:flex; align-items:center; min-height:48px; padding:12px 10px; line-height:1.4; font-size:.9rem; color:var(--ink); border-bottom:1px solid var(--line); }
  html:not(.js) .navigation > .nav-services { display:grid; width:100%; }
}
