/* Scoped to the mobile/tablet drawer; desktop header rules stay unchanged. */
.mobile-drawer { width:min(440px,100vw);height:100dvh;background:#f7f6f2;padding:22px 26px 24px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin; }
.mobile-drawer .drawer-top { display:flex;justify-content:space-between;align-items:center;gap:24px; }
.mobile-drawer .official-logo { width:112px;height:auto;aspect-ratio:1445/1088;object-fit:contain; }
.mobile-drawer .drawer-close { position:static;width:46px;height:46px;flex:0 0 46px;display:grid;place-items:center;padding:0;font-size:29px;line-height:1;border:1px solid #d9dcd8;background:transparent;color:var(--navy);transition:background .18s,transform .18s; }
.mobile-drawer .drawer-close:hover { background:#eaeae4; }
.mobile-drawer .drawer-close:active { transform:scale(.96); }
.mobile-drawer .drawer-links { display:block;margin:36px 0 0;counter-reset:none; }
.mobile-drawer .drawer-links a,.mobile-drawer .drawer-links a:last-child,.mobile-drawer .drawer-services-toggle { position:relative;display:flex;align-items:center;justify-content:flex-start;gap:12px;min-height:60px;margin:0;padding:14px 0;border:0;border-bottom:1px solid #dedfd9;border-radius:0;background:transparent;color:var(--ink);font-family:Manrope,sans-serif;font-size:23px;font-weight:500;line-height:1.2;letter-spacing:-.025em;counter-increment:none;text-align:left;text-decoration:none; }
.mobile-drawer .drawer-links a::before,.mobile-drawer .drawer-links a:last-child::before { content:none;display:none; }
.mobile-drawer .drawer-links .arrow-icon { display:none; }
.mobile-drawer .drawer-services { border:0;margin:0;padding:0; }
.mobile-drawer .drawer-services-toggle { width:100%;justify-content:space-between;cursor:pointer; }
.mobile-drawer .drawer-services-toggle .icon { width:17px;height:17px;transition:transform .24s; }
.mobile-drawer .drawer-services.expanded .drawer-services-toggle .icon { transform:rotate(180deg); }
.mobile-drawer .drawer-service-panel { display:grid;grid-template-rows:0fr;opacity:0;visibility:hidden;transition:grid-template-rows .26s ease,opacity .2s,visibility .26s; }
.mobile-drawer .drawer-service-panel>div { min-height:0;overflow:hidden; }
.mobile-drawer .drawer-services.expanded .drawer-service-panel { grid-template-rows:1fr;opacity:1;visibility:visible; }
.mobile-drawer .drawer-links .drawer-service-link,.mobile-drawer .drawer-links .drawer-service-link:last-child { min-height:46px;padding:12px 0 12px 16px;font-family:'DM Sans',sans-serif;font-size:15px;line-height:1.4;font-weight:500;letter-spacing:0;border:0; }
.mobile-drawer .drawer-links a[aria-current=page] { color:#ad571f; }
.mobile-drawer .drawer-links a[aria-current=page]::after { content:'';position:absolute;right:2px;width:5px;height:5px;border-radius:50%;background:#db8849; }
.mobile-drawer .drawer-contact { margin-top:24px;display:flex;flex-direction:column;align-items:stretch; }
.mobile-drawer .drawer-contact>span { font-size:9px;font-weight:600;letter-spacing:.15em;color:var(--muted);margin-bottom:6px; }
.mobile-drawer .drawer-contact>a:not(.drawer-quote) { display:flex;align-items:center;min-height:32px;font-size:14px;line-height:1.4; }
.mobile-drawer .drawer-quote { display:flex;align-items:center;justify-content:center;min-height:48px;margin-top:14px;padding:13px 18px;background:#efa361;color:var(--navy);font-size:13px;font-weight:600;line-height:1.4;border-radius:2px;transition:background .2s; }
.mobile-drawer .drawer-quote:hover { background:#e99853; }
.mobile-drawer.open { animation:drawer-arrive .24s ease both; }
.mobile-drawer.open .drawer-links> * { animation:drawer-item-arrive .25s ease both; }
.mobile-drawer.open .drawer-links> :nth-child(2) { animation-delay:25ms; }
.mobile-drawer.open .drawer-links> :nth-child(3) { animation-delay:50ms; }
.mobile-drawer.open .drawer-links> :nth-child(4) { animation-delay:75ms; }
.mobile-drawer.open .drawer-links> :nth-child(5) { animation-delay:100ms; }
.mobile-drawer.open .drawer-links> :nth-child(6) { animation-delay:125ms; }
@keyframes drawer-arrive { from { opacity:0;transform:translateX(12px); } to { opacity:1;transform:none; } }
@keyframes drawer-item-arrive { from { opacity:0;transform:translateY(5px); } to { opacity:1;transform:none; } }
@media(max-height:700px) { .mobile-drawer { padding-block:16px; }.mobile-drawer .drawer-links { margin-top:24px; }.mobile-drawer .drawer-links>.drawer-main-link,.mobile-drawer .drawer-services-toggle { min-height:58px;padding-block:12px; }.mobile-drawer .drawer-contact { margin-top:18px; } }
@media(prefers-reduced-motion:reduce) { .mobile-drawer,.mobile-drawer * { animation:none!important;transition:none!important; } }
