/* Shared navigation enhancements. Desktop keeps its established composition. */
.preview-service-link,.mobile-gallery-link { display:none; }
.footer-group { min-width:0; }
.footer-group>summary { list-style:none; color:#b9d5e8; font-size:.7rem; text-transform:uppercase; letter-spacing:.1em; font-weight:600; margin-bottom:1rem; }
.footer-group>summary::-webkit-details-marker { display:none; }
.footer-group-links { display:flex; flex-direction:column; }
.portfolio-more[hidden] { display:none!important; }
.portfolio-more { margin:1.3rem auto 0; }
.design-2026 .portfolio-categories { display:flex; flex-wrap:wrap; gap:.5rem; margin:0 0 1.5rem; }
.design-2026 .portfolio-categories>span { padding:.45rem .75rem; border:1px solid #c8dce8; border-radius:20px; background:#f6f9fc; color:#405d73; font-size:.78rem; font-weight:500; line-height:1.4; }
.rd-bath-image>picture,.about-split-media>picture { display:block; width:100%; height:100%; }
.design-2026 .contact-home .contact-aside { padding-bottom:0; }
.design-2026 .contact-home .contact-facts { margin-bottom:0; padding-bottom:.5rem; }
@media(min-width:701px) {
 .design-2026.page-svc-boiler .rd-boiler::before { inset-inline-start:98%!important; }
 .design-2026.page-svc-boiler .rd-boiler-grid { grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:3rem; align-items:center; }
 .design-2026.page-svc-boiler .rd-boiler-visual { width:100%; max-width:none; border-radius:10px; overflow:hidden; }
 .design-2026.page-svc-boiler .rd-boiler-visual .rd-photo { height:auto; aspect-ratio:16/9; border-radius:0; }
 .design-2026.page-svc-boiler .rd-boiler-visual picture { display:block; width:100%; height:100%; }
 .design-2026.page-svc-boiler .rd-boiler-visual img { display:block; width:100%; height:100%; object-fit:contain; transform:none!important; }
 .design-2026.page-svc-boiler #kotly { grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); }
 .design-2026.page-svc-boiler .boiler-project-photo figure { height:auto; }
 .design-2026.page-svc-boiler .boiler-project-photo picture { height:auto; aspect-ratio:16/9; }
 .design-2026.page-svc-boiler .boiler-project-photo img { display:block; width:100%; height:100%; aspect-ratio:16/9; object-fit:contain; }
 .design-2026.page-svc-boiler .boiler-project-photo figcaption { position:static; }
 .design-2026.page-home .case-grid-home { grid-template-columns:repeat(2,minmax(0,1fr)); align-items:stretch; }
 .design-2026.page-home .case-grid-home .case-card { display:flex; flex-direction:column; height:100%; }
 .design-2026.page-home .case-grid-home picture { position:relative; display:block; width:100%; height:auto; aspect-ratio:16/9; flex-shrink:0; }
 .design-2026.page-home .case-grid-home img { position:absolute; inset:0; display:block; width:100%; height:100%; min-height:0; max-height:none; aspect-ratio:auto; object-fit:cover; transform:none!important; }
 .design-2026.page-home .case-grid-home .case-card-modernization img { object-fit:contain; }
 .design-2026.page-home .case-grid-home .case-card-body { display:block; flex:1; padding:1.2rem; }
 .design-2026.page-home .case-grid-home .case-card-body p { margin-bottom:0; }
 .design-2026.page-gallery .bento-grid [data-cat="kotlownie"] picture { height:auto; aspect-ratio:16/9; }
 .design-2026.page-gallery .bento-grid [data-cat="kotlownie"] img { width:100%; height:100%; aspect-ratio:16/9; object-fit:contain; }
 .design-2026.page-gallery .story-strip picture { position:relative; display:block; width:100%; height:auto; aspect-ratio:16/9; overflow:hidden; }
 .design-2026.page-gallery .story-strip picture img { position:absolute; inset:0; display:block; width:100%; height:100%; max-height:none; aspect-ratio:auto; object-fit:cover; }
 .design-2026.page-gallery .story-strip article:last-child picture img { object-fit:contain; }
}
.design-2026 .drawer .drawer-legal { margin-top:.9rem; padding-top:.55rem; border-top:1px solid #c9dce8; }
.design-2026 .drawer .drawer-legal a { display:flex; align-items:center; min-height:44px; padding:.65rem .9rem; border:0; background:transparent; color:#405d73; font-size:.78rem; font-weight:400; line-height:1.5; }
@media(hover:none) and (pointer:coarse) {
 .preview-service-link { display:block; color:#ffca8e!important; font-size:.78rem; text-decoration:underline; text-underline-offset:4px; }
 .design-2026.page-home #uslugi .rd-service-preview figcaption>span:last-of-type { display:none; }
}
@media(min-width:701px) { .footer-group>summary { pointer-events:none; } }
@media(max-width:700px) {
 .design-2026 .drawer { max-height:calc(100dvh - var(--h,72px) - 64px - env(safe-area-inset-bottom,0px)); padding-bottom:.5rem; }
 /* A phone gets a selector, not six links that unexpectedly leave the page. */
 .design-2026.page-home #uslugi .svc-menu { display:grid; grid-template-columns:minmax(0,1fr); gap:1rem; }
 .design-2026.page-home #uslugi .svc-menu-intro { grid-row:1; }
 .design-2026.page-home #uslugi .svc-menu-intro>div { display:block; }
 .design-2026.page-home #uslugi .svc-menu-list { grid-column:1; grid-row:2; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:repeat(3,minmax(56px,auto)); height:auto; gap:.5rem; border:0; }
 .design-2026.page-home #uslugi .svc-menu-item { min-height:56px; grid-template-columns:20px minmax(0,1fr); gap:.4rem; padding:.7rem; border:1px solid #c4d7e4; border-radius:7px; background:#fff!important; }
 .design-2026.page-home #uslugi .svc-menu-item h3 { font-size:.86rem; line-height:1.3; }
 .design-2026.page-home #uslugi .svc-menu-item p,.design-2026.page-home #uslugi .svc-menu-item>span { display:none!important; }
 .design-2026.page-home #uslugi .svc-menu-item.is-previewed { background:#082c4a!important; box-shadow:inset 3px 0 #ff9228; }
 .design-2026.page-home #uslugi .rd-service-preview { grid-row:3; width:100%; height:350px; padding:46px 0 66px; }
 .design-2026.page-home #uslugi .rd-service-preview figcaption { min-height:66px; padding:.7rem .85rem; gap:.6rem; justify-content:space-between; font-size:.93rem; }
 .design-2026.page-home #uslugi .rd-service-preview figcaption>span:last-of-type { display:none; }
 .preview-service-link { display:block; flex-shrink:0; color:#ffca8e!important; font-size:.72rem; line-height:1.4; text-decoration:underline; text-underline-offset:4px; }
 .design-2026.page-home #uslugi .svc-menu-aside { grid-row:4; }
 .design-2026.page-home #uslugi .svc-menu-aside>p:not(.svc-menu-aside-label) { display:none; }
 /* Cities form a compact text block rather than full-width labels. */
 .design-2026.page-home .area-strip { display:block; padding:1rem; border-radius:7px; }
 .design-2026.page-home .area-strip>strong { display:block; margin-bottom:.65rem; font-size:.7rem; }
 .design-2026.page-home .area-cities { display:block; line-height:1.9; }
 .design-2026.page-home .area-cities span { display:inline; padding:0; margin:0; border:0; border-radius:0; background:none; color:#dceafa!important; font-size:.85rem; white-space:nowrap; }
 .design-2026.page-home .area-cities span:not(:last-child)::after { content:' · '; color:#a7cce3; }
 .design-2026.page-home .case-grid-home { grid-template-columns:1fr; gap:1rem; }
 .design-2026.page-home .case-grid-home .case-card { display:block; }
 .design-2026.page-home .case-grid-home picture { display:block; aspect-ratio:16/9; height:auto; }
 .design-2026.page-home .case-grid-home img { display:block; width:100%; height:100%; aspect-ratio:16/9; object-fit:cover; object-position:center 42%; }
 .design-2026.page-home .case-grid-home .case-card-body { padding:1rem; }
 /* Keep the portrait boiler installation intact, beside the copy. */
 .design-2026.page-home .case-grid-home .case-card-modernization { display:grid; grid-template-columns:44% minmax(0,1fr); align-items:stretch; border-radius:10px; }
 .design-2026.page-home .case-card-modernization picture { position:relative; width:100%; height:auto; aspect-ratio:1154/2048; min-height:245px; background:#edf1f3; }
 .design-2026.page-home .case-card-modernization img { position:absolute; inset:0; width:100%; height:100%; min-height:0; max-height:none; aspect-ratio:auto; object-fit:contain; object-position:center; transform:none!important; }
 .design-2026.page-home .case-card-modernization .case-card-body { display:flex; flex-direction:column; justify-content:center; padding:1rem .85rem; min-width:0; }
 .design-2026.page-home .case-card-modernization .case-card-body>span { font-size:.6rem; letter-spacing:.07em; }
 .design-2026.page-home .case-card-modernization h3 { font-size:1.08rem; line-height:1.2; margin:.45rem 0 .6rem; }
 .design-2026.page-home .case-card-modernization p { font-size:.76rem; line-height:1.6; margin:0; }
 /* Two optional link groups, with contact information always visible. */
 .design-2026 .footer { padding:1.6rem 0 1rem!important; }
 .design-2026 .footer-top { display:block; padding:0; gap:0; }
 .design-2026 .footer-brand { margin:0 0 1.1rem; }
 .design-2026 .footer-logo { display:block; width:135px; padding:0; background:none; }
 .design-2026 .footer-logo img { width:135px; height:auto; }
 .design-2026 .footer-brand .footer-tag,.design-2026 .footer-brand .footer-phone { display:none; }
 .design-2026 .footer-cols { display:block; gap:0; }
 .design-2026 .footer-group { border-top:1px solid #ffffff30; padding:0; }
 .design-2026 .footer-group>summary { cursor:pointer; display:flex; justify-content:space-between; align-items:center; min-height:48px; padding:.7rem 0; margin:0; color:#fff; font-size:.85rem; text-transform:none; letter-spacing:0; }
 .design-2026 .footer-group>summary::after { content:'+'; font-size:1.2rem; color:#ffbd73; }
 .design-2026 .footer-group[open]>summary::after { content:'−'; }
 .design-2026 .footer-group-links { display:grid; grid-template-columns:1fr 1fr; gap:.35rem .7rem; padding:0 0 .8rem; }
 .design-2026 .footer-group-links a { padding:.4rem 0; font-size:.78rem; line-height:1.4; }
 .design-2026 .footer-cols>div { margin-top:1rem; padding-top:1rem; border-top:1px solid #ffffff30; gap:.4rem; }
 .design-2026 .footer-cols>div>.footer-label { display:none; }
 .design-2026 .footer-cols>div .is-phone { font-size:1.25rem; }
 .design-2026 .footer-cols>div a,.design-2026 .footer-cols>div span { margin:0; font-size:.82rem; }
 .design-2026 .footer-bottom { display:block; padding-top:.9rem; margin-top:1rem; }
 .design-2026 .footer-bottom p { font-size:.65rem; line-height:1.6; max-width:39ch; margin-bottom:.5rem; }
 .design-2026 .footer-bottom a { font-size:.7rem; }
 /* Catalog: one offer index, six cards, no second row of repeated bars. */
 .design-2026 .rd-catalog .rd-service-cards { display:none; }
 .design-2026 .rd-catalog .catalog-photo { height:auto; aspect-ratio:16/9; margin-top:.5rem; }
 .design-2026 .rd-catalog .catalog-photo img { width:100%; height:100%; object-fit:cover; }
 .design-2026 .svc-dir-head { padding:0; }
 .design-2026 .svc-dir { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.65rem; }
 .design-2026 .svc-dir li { min-width:0; margin:0; }
 .design-2026 .svc-dir li a { display:flex; flex-direction:column; align-items:start; gap:.6rem; min-height:170px; height:100%; padding:1rem!important; border-radius:8px!important; border:1px solid #cbdce8!important; border-bottom:2px solid #ff9228!important; }
 .design-2026 .svc-dir li a::after { display:none; }
 .design-2026 .svc-dir li a>span { font-size:.75rem; }
 .design-2026 .svc-dir h3 { font-size:1rem; line-height:1.2; margin:0 0 .5rem; }
 .design-2026 .svc-dir p { font-size:.77rem; line-height:1.5; }
 /* B2B: remove the oversized stamp and make the project pair consistent. */
 .design-2026.page-b2b .rd-technical-stamp { display:none; }
 .design-2026.page-b2b .rd-industrial-visual { padding:0; margin:0; }
 .design-2026.page-b2b .rd-industrial-visual .rd-photo { border:0; box-shadow:none; height:auto; aspect-ratio:16/9; border-radius:9px; }
 .design-2026.page-b2b .rd-industrial-visual .rd-photo img { width:100%; height:100%; object-fit:cover; }
 .design-2026.page-b2b .shot-strip { display:grid; grid-template-columns:1fr!important; gap:1rem; }
 .design-2026.page-b2b .shot-strip figure { margin:0; border:1px solid #cbdce8; border-radius:8px; overflow:hidden; }
 .design-2026.page-b2b .shot-strip picture { display:block; aspect-ratio:16/9; height:auto; }
 .design-2026.page-b2b .shot-strip img { display:block; width:100%; height:100%; aspect-ratio:16/9; object-fit:cover; transform:none!important; }
 .design-2026.page-b2b .shot-strip figcaption { position:static; padding:.7rem .9rem; background:#f1f6fa; color:#102d46; font-size:.8rem; }
 /* Portfolio: a calm 16:9 sequence; full originals still open in the lightbox. */
 .design-2026 .rd-gallery-page { padding-top:1.4rem; background:#f3f7fa!important; }
 .design-2026 .rd-gallery-page :is(h1,.page-hero-lead,.breadcrumbs,.breadcrumbs a) { color:#102d46; }
 .design-2026 .rd-gallery-page .section-label { color:#00678e!important; }
 .design-2026 .hx-reel-intro { gap:1rem; }
 .design-2026 .portfolio-note { padding:1rem 0; border-color:#cadce8; background:none; }
 .design-2026 .portfolio-note span { color:#102d46; font-size:.9rem; }
 .design-2026 .portfolio-note p { color:#405d73; font-size:.82rem; }
 .design-2026 .rd-gallery-page .bento-grid { grid-template-columns:1fr; gap:1.1rem; }
 .design-2026 .rd-gallery-page .bento-grid picture { height:auto; aspect-ratio:16/9; }
 .design-2026 .rd-gallery-page .bento-grid img { height:100%; aspect-ratio:16/9; object-fit:cover; }
 .design-2026 .rd-gallery-page .bento-grid figcaption { padding:.8rem 1rem; min-height:0; font-size:.82rem; }
 .design-2026 .rd-gallery-page .gallery-tabs { display:flex; flex-wrap:wrap; gap:.4rem; }
 .design-2026 .rd-gallery-page .gallery-tabs button { padding:.6rem .8rem; font-size:.76rem; }
 .design-2026.page-gallery .story-strip { display:none; }
 /* No long photo galleries in the middle of service descriptions. */
 .design-2026.page-svc-water main .shot-strip,.design-2026.page-svc-heat main .shot-strip { display:none; }
 .mobile-gallery-link { display:flex; gap:.6rem; flex-direction:column; margin:1.4rem 0; padding:1rem; border:1px solid #c7dbe8; border-radius:7px; background:#f3f8fc; }
 .mobile-gallery-link>span { color:#405d73; font-size:.75rem; }
 .mobile-gallery-link>a { display:flex; justify-content:space-between; color:#102d46; font-weight:600; font-size:.94rem; }
 .design-2026 .rd-chapter .pc-lines p { font-size:.89rem; line-height:1.65; }
 .design-2026 .rd-chapter .pc-lines h3 { font-size:1.08rem; line-height:1.3; }
 .design-2026 .rd-chapter h2 { font-size:1.7rem!important; line-height:1.18; letter-spacing:-.03em; }
 /* Mobile boiler hero: full portrait project photograph with a side caption. */
 .design-2026.page-svc-boiler .rd-boiler-grid { display:flex; flex-direction:column; gap:1.5rem; }
 .design-2026.page-svc-boiler .rd-boiler-grid>.rd-copy { order:0; }
 .design-2026.page-svc-boiler .rd-boiler-visual { order:1; display:grid; grid-template-columns:44% minmax(0,1fr); align-items:stretch; width:100%; max-width:none; overflow:hidden; border:1px solid #49667c; border-radius:10px; background:#113b58; }
 .design-2026.page-svc-boiler .rd-boiler-visual .rd-photo { position:relative; width:100%; height:auto; min-height:245px; aspect-ratio:1154/2048; margin:0; border-radius:0; border:0; box-shadow:none; background:#eef1f3; }
 .design-2026.page-svc-boiler .rd-boiler-visual .rd-photo picture { display:block; width:100%; height:100%; }
 .design-2026.page-svc-boiler .rd-boiler-visual .rd-photo img { position:absolute; inset:0; width:100%; height:100%; min-height:0; max-height:none; object-fit:contain; object-position:center; transform:none!important; }
 .design-2026.page-svc-boiler .boiler-note { display:flex; flex-direction:column; justify-content:center; padding:1rem; background:none; border:0; }
 .design-2026.page-svc-boiler .boiler-note strong { color:#fff; font-size:1rem; line-height:1.4; font-weight:500; }
 .design-2026.page-svc-boiler .boiler-note>span { display:block; color:#ffbd73; font-size:.59rem; letter-spacing:.06em; line-height:1.6; margin-bottom:.65rem; }
 /* Bath: an actual image panel rather than copy laid over a cropped room. */
 .design-2026.page-svc-soft .rd-bath { display:flex; flex-direction:column; padding:1.5rem 0 0; background:#082c4a!important; min-height:0; }
 .design-2026.page-svc-soft .rd-bath::before,.design-2026.page-svc-soft .rd-bath::after { display:none; }
 .design-2026.page-svc-soft .rd-bath-layout { order:0; display:block; padding-bottom:1.4rem; }
 .design-2026.page-svc-soft .rd-bath .rd-copy { padding:0; background:none; width:100%; max-width:none; box-shadow:none; border:0; border-radius:0; }
 .design-2026.page-svc-soft .rd-bath .rd-copy :is(h1,.rd-lead,.breadcrumbs,.breadcrumbs a) { color:#fff; }
 .design-2026.page-svc-soft .rd-bath .rd-eyebrow { color:#9cddff; }
 .design-2026.page-svc-soft .rd-bath-image { position:relative; order:1; inset:auto; width:100%; height:auto; aspect-ratio:16/9; }
 .design-2026.page-svc-soft .rd-bath-image img { width:100%; height:100%; object-fit:cover; object-position:center; opacity:1; filter:none; }
 .design-2026 .about-split-media { height:auto; min-height:0; aspect-ratio:16/9; }
 .design-2026 .about-split-media img { width:100%; height:100%; object-fit:cover; }
}


/* Bathroom photograph: gentle blur without the orange overlay. */
.design-2026.page-svc-soft .rd-bath::before { display:none; }
.design-2026.page-svc-soft .rd-bath-image { overflow:hidden; }
.design-2026.page-svc-soft .rd-bath-image img { filter:blur(2.6px); transform:scale(1.025); }

/* Separate finishing service with a softly blurred illustrative background. */
.design-2026.page-home #uslugi .bath-service-note { position:relative; isolation:isolate; overflow:hidden; margin-top:1.5rem; padding:1.7rem 2rem; background:#082c4a; border:1px solid #d1e0eb; border-radius:12px; color:#fff; }
.design-2026.page-home #uslugi .bath-service-note>img { position:absolute; z-index:-2; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 55%; filter:blur(4.55px); transform:scale(1.05); }
.design-2026.page-home #uslugi .bath-service-note::before { content:""; position:absolute; z-index:-1; inset:0; background:linear-gradient(90deg,#082c4af2,#082c4ac9 55%,#082c4a70); }
.design-2026.page-home #uslugi .bath-service-note h3 { font-size:1.5rem; color:#fff; margin:.3rem 0 .55rem; }
.design-2026.page-home #uslugi .bath-service-note p { color:#e4eef5; max-width:65ch; font-size:.93rem; margin:0 0 .8rem; }
.design-2026.page-home #uslugi .bath-service-note a { color:#ffca8e; font-weight:600; font-size:.85rem; text-underline-offset:4px; }
.bath-service-eyebrow,.bath-service-photo-note { font-size:.64rem; letter-spacing:.08em; color:#c7deed; }
.bath-service-photo-note { position:absolute; right:1.2rem; bottom:1rem; letter-spacing:0; }
@media(max-width:700px) {
 .design-2026.page-home #uslugi .bath-service-note { padding:1.3rem 1.2rem 2.6rem; margin-top:1rem; }
 .design-2026.page-home #uslugi .svc-menu-item:last-child { grid-column:1/-1; }
}

/* Stable legal navigation and readable action states. */
.design-2026 .rd-legal-toc { position:static; top:auto; }
.design-2026 .doc-body .btn-outline { background:#fff!important; color:#082c4a!important; border-color:#082c4a!important; transition:background .18s,color .18s; }
.design-2026 .doc-body .btn-outline:is(:hover,:focus-visible) { background:#082c4a!important; color:#fff!important; border-color:#082c4a!important; }
.design-2026 .header .header-cta .btn-red { background:#ff9228!important; border-color:#ff9228!important; color:#082c4a!important; transition:background .18s,box-shadow .18s; }
.design-2026 .header .header-cta .btn-red:is(:hover,:focus-visible) { background:#ffa33f!important; border-color:#ffa33f!important; box-shadow:0 3px 10px #ff92282b; color:#082c4a!important; }
@media(max-width:700px) {
 .design-2026.page-home .rd-service-ribbon a.is-tap-ready { background:#082c4a; color:#fff!important; box-shadow:inset 0 -2px #ffca8e; }
 .design-2026.page-home .rd-service-ribbon a.is-tap-ready span { color:#ffca8e; }
}
/* Mobile gallery action stays readable after tapping. */
.design-2026.page-gallery .portfolio-more.btn-outline { background:#082c4a!important; color:#fff!important; border-color:#082c4a!important; transition:background .18s; }
.design-2026.page-gallery .portfolio-more.btn-outline:is(:hover,:active,:focus-visible) { background:#174c70!important; color:#fff!important; border-color:#174c70!important; }
.design-2026.page-gallery .portfolio-more.btn-outline:focus-visible { outline:2px solid #009bc8; outline-offset:3px; }
@media(max-width:700px) {
 .design-2026.page-svc-soft .rd-bath { display:block; padding:0; position:relative; isolation:isolate; }
 .design-2026.page-svc-soft .rd-bath-image { position:absolute; z-index:0; inset:0; width:100%; height:100%; aspect-ratio:auto; }
 .design-2026.page-svc-soft .rd-bath::after { content:""; display:block; position:absolute; z-index:0; inset:0; background:linear-gradient(90deg,#082c4adb,#082c4aa8); pointer-events:none; }
 .design-2026.page-svc-soft .rd-bath-layout { position:relative; z-index:1; padding-block:1.7rem; margin-top:0; }
}
/* Let contact grid columns shrink on very narrow phones. */
.design-2026 .contact-wrap>* { min-width:0; }
@media(max-width:700px) {
 .design-2026 .contact-wrap { grid-template-columns:minmax(0,1fr); }
 .design-2026 .contact-aside { grid-template-columns:minmax(0,1fr) minmax(0,1.2fr); }
 .design-2026 .contact-photo-brand { min-width:0; padding:1rem; }
 .design-2026 .contact-photo-brand strong { font-size:clamp(.875rem,4.5vw,1.6rem); letter-spacing:.02em; }
 .design-2026 .contact-direct { min-width:0; }
 .design-2026 .contact-direct strong { overflow-wrap:anywhere; }
}
/* Form fields must fit even when privacy tools replace web fonts. */
.design-2026 .form,.design-2026 .form>* { min-width:0; }
.design-2026 .form .reason-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.design-2026 .form .reason { min-width:0; overflow-wrap:anywhere; }
.design-2026 .form .field input,.design-2026 .form .field textarea { min-width:0; max-width:100%; }
@media(max-width:700px) { .design-2026 .form { grid-template-columns:minmax(0,1fr); } }
@media(max-width:700px) {
 .design-2026 .contact-home { grid-template-columns:minmax(0,1fr); }
 .design-2026 .contact-home .contact-aside { display:block; }
 .design-2026 a[href^="mailto:"] { white-space:nowrap; overflow-wrap:normal; word-break:normal; }
 .design-2026 .rd-contact-links a[href^="mailto:"] strong { white-space:nowrap; font-size:clamp(.85rem,3.8vw,1.1rem); }
}
@media(max-width:480px) {
 .design-2026 .contact-aside { grid-template-columns:minmax(0,1fr); }
}
html.nav-open { overflow:hidden; overscroll-behavior:none; }
body.design-2026.nav-open { position:fixed; top:var(--menu-scroll-top); left:0; right:0; width:100%; overflow:hidden; padding-top:var(--menu-top); }
.design-2026.nav-open .header { position:fixed; top:0; left:0; right:0; z-index:111; }
.design-2026.nav-open .drawer { position:fixed; top:var(--menu-top); left:0; right:0; bottom:0; z-index:110; height:calc(100vh - var(--menu-top)); height:calc(100dvh - var(--menu-top)); max-height:none; overflow-y:auto; overscroll-behavior:contain; -webkit-overflow-scrolling:touch; align-content:start; padding-bottom:calc(1.2rem + env(safe-area-inset-bottom,0px)); }
.design-2026.nav-open :is(.dock,.rd-back-top) { visibility:hidden; }
.design-2026.nav-open .burger::before { top:50%; transform:rotate(45deg); }
.design-2026.nav-open .burger::after { top:50%; bottom:auto; transform:rotate(-45deg); }
.design-2026 a[href^="mailto:"] { white-space:nowrap; overflow-wrap:normal; word-break:normal; }
@media(min-width:701px) and (max-width:1000px) {
 .design-2026 .contact-direct a[href^="mailto:"] { font-size:clamp(.8rem,1.6vw,1rem); }
}
