/* AQUAKAN · 2026. Shared foundations, individual page compositions.
   styles.css retains the existing functional components and content layouts. */
:root {
  --navy:#092a46; --navy-2:#124767; --ink:#102d46; --mute:#50677c;
  --cyan:#008eb5; --cyan-2:#006a91; --cyan-soft:#d5f0fb; --cyan-mist:#eef9ff;
  --orange:#f58220; --orange-2:#e57012; --orange-soft:#fff0df;
  --red:var(--orange); --red-2:var(--orange-2); --accent:var(--orange);
  --bg:#f5faff; --bg-2:#eaf4fc; --white:#ffffff; --line:#cbdde9;
  --w:1240px; --g:clamp(1.25rem,4vw,4.25rem); --h:5.4rem; --radius:12px;
  --display:"Barlow","Segoe UI",sans-serif;
}
body.design-2026 { background:var(--bg)!important; color:var(--ink); font-size:16px; }
.design-2026 h1,.design-2026 h2,.design-2026 h3 { font-family:var(--display); text-transform:none; letter-spacing:-.035em; }
.design-2026 h2 { font-size:clamp(1.8rem,3vw,2.65rem); line-height:1.15; font-weight:600; max-width:24ch; }
.design-2026 h3 { font-weight:600; line-height:1.25; }
.design-2026 p { text-wrap:pretty; }
.design-2026 :is(a,button,input,textarea,summary):focus-visible { outline:3px solid #008eb5; outline-offset:5px; }
.rd-skip { position:fixed; z-index:200; top:10px; left:15px; padding:12px 20px; background:white; color:#102d46; transform:translateY(-150%); }
.rd-skip:focus { transform:none; }
.design-2026 [id] { scroll-margin-top:7rem; }
.design-2026 .header { background:var(--white)!important; border:0!important; box-shadow:0 1px 0 #193c341a; padding-inline:var(--g); gap:1.2rem; }
.design-2026 .logo,.design-2026 .logo img { width:8.7rem; }
.design-2026 .logo img { height:3.1rem; }
.design-2026 .header :is(.nav a,.nav-home,.btn-phone,.nav-drop-btn) { color:var(--ink)!important; text-transform:none; letter-spacing:0; font-size:.88rem; font-weight:600; }
.design-2026 .nav { gap:1.3rem; }
.design-2026 .nav a { padding-block:.7rem; border-bottom:2px solid transparent; }
.design-2026 .nav a[aria-current],.design-2026 .nav a:hover { border-color:var(--orange); }
.design-2026 .header-cta { gap:.5rem; }
.design-2026 .header .btn-red { background:var(--navy)!important; border-color:var(--navy)!important; color:white!important; }
.design-2026 .btn-phone { border:1px solid var(--line); background:transparent; }
.design-2026 .nav-drop-btn { border:1px solid var(--line); background:transparent; }
.design-2026 .nav-drop-panel { background:var(--navy); border-radius:10px; }
.design-2026 .burger { border-color:var(--line); background:var(--navy); width:44px; height:44px; }
.design-2026 .drawer { background:var(--white); border-bottom:1px solid var(--line); box-shadow:0 15px 20px #163b3412; max-height:calc(100dvh - var(--h)); overflow:auto; }
.design-2026 .drawer a { color:var(--ink); padding:12px 20px; border-color:var(--line); }
.design-2026 .drawer .btn-red { color:white; }
.design-2026 .btn { text-transform:none; letter-spacing:0; border-radius:6px!important; min-height:48px; padding:.8rem 1.35rem; font-size:.9rem; font-weight:600; box-shadow:none!important; transition:background .2s,transform .2s; }
.design-2026 .btn:hover { transform:translateY(-2px); }
.design-2026 .btn-red { background:var(--orange)!important; border:1px solid var(--orange)!important; color:#102d46!important; }
.design-2026 .btn-red:hover { background:var(--orange-2)!important; }
.design-2026 .btn-cyan { background:var(--cyan-2)!important; color:white; }
.design-2026 :is(.btn-outline,.btn-ghost-light) { border:1px solid currentColor!important; color:inherit!important; background:transparent!important; }
.design-2026 .section-label,.rd-eyebrow { color:var(--cyan-2)!important; font-size:.72rem; font-weight:600; text-transform:uppercase; letter-spacing:.16em!important; margin-bottom:1rem; }
.design-2026 .breadcrumbs,.design-2026 .breadcrumbs a { color:var(--mute); font-size:.75rem; }
.design-2026 .breadcrumbs { margin-bottom:1.75rem; }
.rd-hero { position:relative; overflow:hidden; }
.rd-hero h1 { font-size:clamp(2.5rem,4.3vw,4.4rem); font-weight:600; line-height:1.04; margin:0 0 1.5rem; max-width:17ch; }
.rd-lead { color:var(--mute); font-size:1.08rem; line-height:1.7; max-width:51ch; margin:0 0 1.8rem; }
.rd-actions { display:flex; flex-wrap:wrap; gap:.75rem; align-items:center; }
.rd-photo { position:relative; margin:0; overflow:hidden; background:#d8e7e5; }
.rd-photo picture { display:block; width:100%; height:100%; }
.rd-photo img { width:100%; height:100%; object-fit:cover; }
.rd-photo figcaption { position:absolute; bottom:0; inset-inline:0; color:white; padding:2rem 1.2rem 1rem; background:linear-gradient(transparent,#102f38bd); font-size:.72rem; letter-spacing:.04em; }
.rd-pipes { position:absolute; inset:0; width:100%; height:100%; stroke:currentColor; stroke-width:10; opacity:.2; pointer-events:none; }

/* Home: an editorial split with a layered, project-led photo composition. */
.rd-home { background:#edf7ff; padding-top:clamp(2rem,4.5vw,4.5rem); }
.rd-home-inner { display:grid; grid-template-columns:1.05fr 1fr; gap:4rem; align-items:center; padding-bottom:3.6rem; }
.rd-home h1 { font-size:clamp(2.35rem,3.7vw,3.9rem); max-width:17ch; }
.rd-home h1::first-line { color:var(--ink); }
.rd-home .rd-lead { font-size:1rem; max-width:45ch; }
.rd-home-note { display:flex; gap:.5rem; align-items:center; color:var(--mute); font-size:.76rem; margin-top:1.8rem; }
.rd-status { width:7px; height:7px; background:var(--cyan); border-radius:50%; }
.rd-home-visual { position:relative; padding:0 0 3rem 1.2rem; }
.rd-home-visual>.rd-photo:first-child { height:365px; border-radius:120px 12px 12px 12px; }
.rd-home-visual>.rd-photo:first-child img { object-position:40% 40%; }
.rd-home-visual>.rd-photo:first-child figcaption { padding-right:56%; line-height:1.4; }
.rd-home-visual .rd-photo-inset { position:absolute; right:-1.5rem; bottom:0; width:57%; height:168px; border:7px solid #edf7ff; border-radius:8px; }
.rd-home-visual .rd-photo-inset figcaption { font-size:.65rem; padding:1.5rem .7rem .6rem; }
.rd-photo-index { display:block; font-size:.65rem; letter-spacing:.15em; margin-top:1rem; color:var(--cyan-2); }
.rd-service-ribbon { display:grid; grid-template-columns:repeat(6,1fr); background:var(--navy); padding:0 var(--g); }
.rd-service-ribbon a { display:flex; justify-content:space-between; align-items:center; gap:.6rem; color:#fff; font-size:.81rem; padding:1.25rem 1rem; border-left:1px solid #ffffff20; }
.rd-service-ribbon a:last-child { border-right:1px solid #ffffff20; }
.rd-service-ribbon a span { color:#84c8d2; }
.rd-service-ribbon a:hover { background:#ffffff10; }

/* Service directory: a wide introduction, then six illustrated navigation tiles. */
.rd-catalog { padding:3.5rem 0 3rem; background:#d9f1ff; }
.rd-catalog .rd-copy { display:grid; grid-template-columns:1.1fr 1fr; column-gap:4rem; }
.rd-catalog .rd-copy .breadcrumbs,.rd-catalog .rd-copy .rd-eyebrow { grid-column:1/-1; }
.rd-catalog .rd-copy h1 { grid-column:1; grid-row:3/5; }
.rd-catalog .rd-copy .rd-lead { grid-column:2; }
.rd-catalog .rd-actions { grid-column:2; }
.rd-service-cards { display:grid; grid-template-columns:repeat(6,1fr); gap:12px; margin-top:2.5rem; }
.rd-service-cards>a { position:relative; min-height:190px; padding:1.3rem; border-radius:8px; background:#ffffff; box-shadow:0 5px 10px #224e4510; transition:transform .2s; }
.rd-service-cards>a:nth-child(2),.rd-service-cards>a:nth-child(4) { background:#dceeff; }
.rd-service-cards>a:nth-child(3) { background:var(--navy); color:white; }
.rd-card-top { display:flex; align-items:start; justify-content:space-between; margin-bottom:1.8rem; }
.rd-card-top svg { width:42px; height:42px; color:var(--cyan); }
.rd-card-top>span { font-size:.65rem; opacity:.65; }
.rd-service-cards strong { display:block; font-size:.94rem; line-height:1.2; max-width:10ch; font-weight:600; }
.rd-card-arrow { position:absolute; right:1rem; bottom:1rem; }
.rd-service-cards>a:hover { transform:translateY(-5px); }

/* About: open editorial heading, a brand mark, then a panoramic project strip. */
.rd-about { padding:3.5rem 0 0; background:#f5faff; }
.rd-about-top { display:grid; grid-template-columns:1.5fr 1fr; gap:3rem; align-items:center; padding-bottom:2.5rem; }
.rd-about h1 { font-size:clamp(3rem,5.5vw,5rem); }
.rd-about-mark { justify-self:center; display:grid; place-items:center; gap:.8rem; background:#e0f2ff; width:210px; height:210px; border-radius:50%; padding:2rem; }
.rd-about-mark img { width:70px; height:70px; object-fit:contain; }
.rd-about-mark span { font-size:.75rem; text-align:center; letter-spacing:.12em; }
.rd-about-bottom { display:grid; grid-template-columns:1.8fr 1fr; min-height:210px; }
.rd-about-bottom .rd-photo { height:235px; }
.rd-about-detail { background:#cceaff; padding:2rem; border-radius:0 12px 0 0; }
.design-2026 .rd-about-detail .about-meta { display:block; margin:0; border:0; padding:0; }
.rd-about-detail .about-meta p { display:block; margin-bottom:.7rem; color:var(--ink); }
.rd-about-detail .about-meta a { color:var(--ink); }
.rd-about-detail .about-meta span { color:var(--orange-2); display:block; font-size:.65rem; text-transform:uppercase; letter-spacing:.1em; }
.rd-about-detail .reach-ask { margin:1rem 0 0; font-size:.8rem; color:var(--ink); }

/* B2B: technical ink-blue field, wide project photograph and scope rail. */
.rd-industrial { padding:3rem 0 0; background:var(--navy); color:white; }
.rd-industrial-grid { display:grid; grid-template-columns:1fr 1.15fr; gap:3rem; align-items:center; }
.rd-industrial .rd-eyebrow { color:#8ed5df!important; }
.rd-industrial :is(.breadcrumbs,.breadcrumbs a,.rd-lead) { color:#c5d8db; }
.rd-industrial h1 { font-size:clamp(2.8rem,4vw,4rem); }
.rd-industrial-visual { position:relative; padding:1rem 0; }
.rd-industrial-visual .rd-photo { height:340px; border-radius:8px; }
.rd-technical-stamp { position:absolute; right:1rem; top:0; padding:1rem 1.3rem; background:#ffffff; color:var(--ink); font-size:1.1rem; letter-spacing:.08em; }
.rd-technical-stamp span { display:block; font-size:.6rem; letter-spacing:0; margin-top:.4rem; }
.rd-industrial-strip { display:flex; justify-content:space-between; gap:1rem; margin-top:2rem; padding:1.4rem 0; border-top:1px solid #ffffff30; color:#d7e4e5; font-size:.78rem; }

/* Water: a blue canvas, square manifold image and a second installation detail. */
.rd-water { background:#d9f3ff; padding:3rem 0; }
.rd-water-grid { display:grid; grid-template-columns:1.05fr 1fr; gap:4rem; align-items:center; }
.rd-water-visual { position:relative; min-height:365px; padding:0 3rem 2rem 0; color:var(--cyan); }
.rd-water-visual>.rd-photo { width:84%; height:320px; border-radius:8px 75px 8px 8px; }
.rd-water-visual>.rd-water-secondary { position:absolute; bottom:0; right:0; width:43%; height:175px; border:6px solid #d9f3ff; border-radius:8px; }

/* Heating: a tall photograph on the left, warm clay tones and three heat topics. */
.rd-heating { background:#e1efff; padding:2.5rem 0; }
.rd-heating-grid { display:grid; grid-template-columns:.72fr 1.3fr; gap:4.5rem; align-items:center; }
.rd-heating-grid>.rd-photo { height:425px; border-radius:100px 100px 8px 8px; }
.rd-heating-grid>.rd-photo img { object-position:50% 76%; }
.rd-heating .rd-eyebrow { color:#006a91!important; }
.rd-heating-key { display:flex; gap:1.5rem; flex-wrap:wrap; padding-top:1.5rem; margin-top:2rem; border-top:1px solid #78b7e080; font-size:.78rem; }
.rd-heating-key span::before { content:""; display:inline-block; width:6px; height:6px; margin-right:.6rem; border-radius:50%; background:var(--orange); }

/* Heat pumps: explanatory line illustration instead of an unrelated HVAC photo. */
.rd-pump { padding:3rem 0; background:#e2f4ff; }
.rd-pump>.wrap { display:grid; grid-template-columns:1fr 1.2fr; gap:2rem; align-items:center; }
.rd-pump h1 { font-size:clamp(2.35rem,3.5vw,3.65rem); }
.rd-system { margin:0; }
.rd-system svg { width:100%; height:auto; display:block; }
.rd-system figcaption { color:#37657f; font-size:.7rem; text-align:center; margin-top:1rem; }

/* Boiler room: full portrait in a dark equipment frame, offset copper caption. */
.rd-boiler { background:#edf5ff; padding:2.5rem 0; }
.rd-boiler-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:5rem; align-items:center; }
.rd-boiler-visual { position:relative; background:var(--navy); padding:1rem 3.5rem 1rem 1rem; border-radius:12px; }
.rd-boiler-visual .rd-photo { height:405px; width:100%; border-radius:6px; background:#e7f0f7; }
.rd-boiler-visual img { object-fit:contain; }
.rd-boiler-label { position:absolute; right:0; top:2rem; writing-mode:vertical-rl; color:#80d8ff; letter-spacing:.1em; font-size:.7rem; }
.rd-boiler h1 { font-size:clamp(3rem,4.5vw,4.7rem); }

/* Sanitary fixtures: a wide bathroom scene and a clean inset paper card. */
.rd-bath { background:#eef5fb; min-height:490px; display:flex; align-items:center; }
.rd-bath-image { position:absolute; inset:0; }
.rd-bath-image img { width:100%; height:100%; object-fit:cover; object-position:55% 60%; }
.rd-bath-layout { position:relative; padding-block:2.5rem; }
.rd-bath .rd-copy { width:min(45%,500px); padding:2.5rem; background:#fffffff5; border-radius:8px; box-shadow:0 10px 50px #102d4610; }
.rd-bath h1 { font-size:clamp(2.5rem,4vw,4rem); }
.rd-bath .rd-lead { font-size:1rem; }

/* Repair: telephone is the main graphic, with a narrow proof-of-work strip. */
.rd-repair { padding:3rem 0 0; background:#e6f3ff; }
.rd-repair-top { display:grid; grid-template-columns:1.2fr 1fr; align-items:center; gap:4rem; padding-bottom:2rem; }
.rd-repair h1 { font-size:clamp(2.6rem,4vw,4rem); }
.rd-phone-card { display:flex; flex-direction:column; gap:.9rem; background:var(--navy); color:white; border-radius:12px; padding:2.2rem; }
.rd-phone-card svg { width:44px; height:44px; color:#ffab57; margin-bottom:.8rem; }
.rd-phone-card>span { font-size:.85rem; color:#c5d8db; }
.rd-phone-card strong { font-weight:500; font-size:clamp(2rem,3.4vw,3.3rem); letter-spacing:-.025em; white-space:nowrap; }
.rd-phone-card b { float:right; }
.rd-repair-bottom { display:grid; grid-template-columns:1.25fr 1fr; height:150px; }
.rd-repair-bottom>.rd-photo img { object-position:50% 25%; }
.rd-repair-bottom>div { position:relative; display:grid; align-items:end; padding:1.5rem 2rem; background:#b9e3ff; overflow:hidden; }
.rd-repair-bottom>div span { position:relative; font-size:.8rem; }

/* Contact: warm, compact introduction with three practical contact routes. */
.rd-contact { background:#dcefff; padding:2.75rem 0 2.25rem; }
.rd-contact>.wrap { display:grid; grid-template-columns:1.15fr 1fr; gap:5rem; align-items:center; }
.rd-contact h1 { font-size:clamp(2.5rem,3.7vw,3.6rem); }
.rd-contact .rd-lead { font-size:1rem; margin-bottom:0; }
.rd-contact-links { display:grid; border-top:1px solid #98c6e4; }
.rd-contact-links a { position:relative; padding:1rem 2rem 1rem 0; border-bottom:1px solid #98c6e4; }
.rd-contact-links span { display:block; font-size:.68rem; color:var(--mute); margin-bottom:.3rem; }
.rd-contact-links strong { font-weight:500; font-size:1.1rem; overflow-wrap:anywhere; }
.rd-contact-links a:first-child strong { font-size:2rem; }
.rd-contact-links b { position:absolute; right:0; top:45%; font-weight:400; }
.design-2026 .contact-panel { padding:3.5rem 0; background:var(--bg)!important; }
.design-2026 .contact-wrap { width:min(100% - var(--g)*2,var(--w)); display:grid; grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr); gap:2rem; }
.design-2026 .contact-home { display:grid; grid-template-columns:minmax(0,.75fr) minmax(0,1.35fr); gap:2rem; padding-top:1.5rem; }
.design-2026 .contact-home>* { min-width:0; }
.design-2026 .contact-facts a { font-size:clamp(1rem,1.7vw,1.4rem); overflow-wrap:anywhere; }
.design-2026 .contact-aside { background:#e5f2ff; border-radius:12px; border:0; overflow:hidden; }
.design-2026 .contact-photo-brand { background:var(--navy); aspect-ratio:auto; height:auto; min-height:160px; padding:2rem; }
.design-2026 .contact-direct { padding:1.5rem; }
.design-2026 .contact-direct li { padding-block:.85rem; border-color:#b8d6eb; }
.design-2026 .contact-direct a { color:var(--ink); overflow-wrap:anywhere; }
.design-2026 .contact-side { grid-column:1/-1; background:#e0f2ff; padding:2.25rem; border:0; border-radius:12px; }
.design-2026 .contact-loc { display:grid; grid-template-columns:repeat(4,1fr); gap:1.5rem; margin:1.5rem 0; }
.design-2026 .contact-loc li { border:0; display:block; padding:0; }
.design-2026 .contact-loc-n { display:block; margin-bottom:1rem; color:var(--cyan-2); }
.design-2026 .form { border:1px solid #cbddea; border-radius:12px; box-shadow:0 10px 30px #244a3910; background:var(--white); padding:2rem; }
.design-2026 .form h3 { font-size:1.7rem; }
.design-2026 .form :is(input:not([type=radio]),textarea) { border:1px solid #abc3d6; border-radius:5px; background:#fff; min-height:46px; }
.design-2026 .form .reason { background:#f1f7fc; border:1px solid #c5ddeb; border-radius:6px; font-size:.8rem; padding:.75rem; }
.design-2026 .form .reason:has(input:checked) { border-color:var(--cyan); background:#d9f1ff; }
.design-2026 .form .reason input { accent-color:var(--cyan-2); }

/* FAQ: one readable column, concise topic links, native semantic accordions. */
.design-2026 .faq-stage { display:block; min-height:0; padding:3rem var(--g) 4rem; background:var(--bg); width:100%; }
.rd-faq-intro,.design-2026 .faq-main,.rd-faq-help { width:min(100%,850px); margin-inline:auto; }
.rd-faq-intro { padding-bottom:2rem; }
.rd-faq-intro h1 { font-size:clamp(2.5rem,4vw,3.8rem); max-width:19ch; line-height:1.06; margin-bottom:1rem; }
.rd-faq-intro>p:not(.rd-eyebrow) { max-width:60ch; color:var(--mute); }
.rd-faq-jump { display:flex; flex-wrap:wrap; gap:.6rem; margin-top:1.5rem; }
.rd-faq-jump a { padding:.7rem 1.1rem; background:#dff1ff; border:1px solid #b0d6ed; border-radius:5px; font-size:.85rem; }
.design-2026 .faq-main { padding:0; min-height:0; background:transparent; border:0; }
.design-2026 .faq-main h2 { font-size:1.15rem; max-width:none; margin-bottom:1rem; color:var(--mute); font-weight:500; }
.design-2026 .faq-list details { background:var(--white)!important; border:1px solid #c3dce9; border-radius:7px!important; padding:.2rem 1.25rem!important; margin-bottom:.65rem; }
.design-2026 .faq-list details[open] { border-color:#69b7e0; background:#edf8ff!important; }
.design-2026 .faq-list summary { font-size:1rem; font-weight:600; min-height:62px; padding:1rem 2rem 1rem 0; line-height:1.4; }
.design-2026 .faq-list summary::after { color:var(--cyan); }
.design-2026 .faq-list p { font-size:.95rem; line-height:1.75; color:var(--mute); }
.design-2026 .faq-list p a { color:var(--cyan-2); text-decoration:underline; text-underline-offset:3px; }
.rd-faq-help { margin-top:2rem; padding:1.7rem; border-radius:8px; background:#dcefff; display:flex; align-items:center; flex-wrap:wrap; gap:1rem; }
.rd-faq-help a:first-of-type { font-size:1.5rem; margin-left:auto; }
.rd-faq-help a:last-child { font-size:.85rem; text-decoration:underline; }

/* Shared content: editorial spacing, colored section fields, less card repetition. */
.design-2026 .section { background:var(--white); padding-block:clamp(3rem,6vw,5.5rem); }
.design-2026 .section-soft { background:#eef6ff!important; }
.design-2026 .section-navy { background:var(--navy)!important; }
.design-2026 .section-navy h2,.design-2026 .section-navy h3 { color:#ffffff; }
.design-2026 .section-navy .section-label { color:#91cbd3!important; }
.design-2026 .section-lead { color:var(--mute); font-size:1rem; line-height:1.7; max-width:62ch; }
.design-2026 .section-navy .section-lead { color:#cadbdd; }
.design-2026 .perks { background:#e0f2ff!important; padding:1.8rem 0; }
.design-2026 .perks-grid { gap:0; }
.design-2026 .perks article { background:transparent!important; box-shadow:none!important; border:0!important; border-left:1px solid #a8cee7!important; border-radius:0!important; padding:1rem 1.5rem; }
.design-2026 .perks article:first-child { border-left:0!important; padding-left:0; }
.design-2026 .perks h3 { font-size:1rem; margin-bottom:.5rem; }
.design-2026 .perks p { font-size:.83rem; line-height:1.6; color:var(--mute); }
.design-2026 .why-band { background:var(--white)!important; grid-template-columns:1fr 1fr; }
.design-2026 .why-band-copy { background:var(--white)!important; padding:clamp(2rem,5vw,5rem); color:var(--ink)!important; }
.design-2026 .why-band-copy h2 { color:var(--ink)!important; font-size:clamp(1.8rem,3vw,2.65rem); }
.design-2026 .why-band-copy h2 em { color:var(--cyan)!important; font-style:normal; }
.design-2026 .why-band-copy .section-lead { color:var(--mute)!important; }
.design-2026 .why-steps li { border-color:var(--line); }
.design-2026 .why-steps h3 { color:var(--ink); font-size:1rem; }
.design-2026 .why-steps p { color:var(--mute); font-size:.88rem; }
.design-2026 .why-steps li>span { color:var(--orange)!important; }
.design-2026 .why-band-visual { margin:2rem 2rem 2rem 0; border-radius:12px; overflow:hidden; min-height:350px; }
.design-2026 .svc-menu { grid-template-columns:.65fr 1.35fr; gap:3rem; }
.design-2026 .svc-menu-item { border-bottom:1px solid #b4d2e9; background:transparent; padding:1.15rem 0; border-radius:0; }
.design-2026 .svc-menu-item b { font-size:1.2rem; font-weight:600; }
.design-2026 .svc-menu-item span[aria-hidden] { color:var(--orange)!important; }
.design-2026 .svc-menu-intro { background:var(--navy); color:white; padding:2rem; border-radius:10px; }
.design-2026 .svc-menu-intro h3 { color:white; }
.design-2026 .svc-menu-intro h2 { color:white; }
.design-2026 .svc-menu-intro .section-label { color:#91cbd3!important; }
.design-2026 .svc-menu-intro .section-lead { color:#c4d8d9; }
.design-2026 .svc-menu-intro p { color:#c4d8d9; }
.design-2026 .svc-dir-wrap { max-width:var(--w); }
.design-2026 .svc-dir { gap:1rem; border:0; grid-template-columns:repeat(3,1fr); }
.design-2026 .svc-dir li a { border:1px solid #c6ddeb!important; border-radius:10px; background:var(--white); padding:1.5rem!important; grid-template-columns:1.5rem 1fr; }
.design-2026 .svc-dir h3 { font-size:1.2rem; }
.design-2026 .svc-dir li:nth-child(2n) a { background:#e1f1ff; }
.design-2026 .svc-dir a>span { color:var(--orange); font-size:.75rem; }
.design-2026 .svc-dir p { color:var(--mute); font-size:.88rem; }
.design-2026 .rd-scope { grid-template-columns:minmax(0,1.7fr) minmax(230px,.75fr); gap:4rem; align-items:start; }
.design-2026 .rd-scope h2 { max-width:26ch; }
.design-2026 .prose { max-width:76ch; color:var(--mute); font-size:1rem; line-height:1.85; }
.design-2026 .prose strong { color:var(--ink); }
.design-2026 .prose a { color:var(--cyan-2); text-decoration:underline; text-underline-offset:3px; }
.design-2026 .side-box { background:#dff1ff!important; color:var(--ink)!important; border:0!important; border-radius:10px!important; padding:1.6rem!important; box-shadow:none; position:sticky; top:7rem; }
.design-2026 .side-box h3 { color:var(--ink)!important; font-size:1.3rem; }
.design-2026 .side-box p,.design-2026 .side-box a:not(.btn) { color:var(--mute)!important; }
.design-2026 .side-box .btn { margin-top:1rem; }
.design-2026 .check-list { border:0; margin-top:1.5rem; }
.design-2026 .check-list li { border-bottom:1px solid #d3e4f1; padding:.85rem 0 .85rem 1.7rem; font-size:.92rem; }
.design-2026 .rd-chapter { margin-top:3.5rem; background:#eef6ff; padding:2.2rem; border-radius:12px; }
.design-2026 .page-svc-water .rd-chapter { background:#e0f5ff; }
.design-2026.page-svc-water .rd-chapter { background:#e0f5ff; }
.design-2026.page-svc-heat .rd-chapter { background:#e4efff; }
.design-2026.page-svc-cool .rd-chapter { background:#e4f5ff; }
.design-2026.page-svc-soft .rd-chapter { background:#eef5fc; }
.design-2026 .pc-lines { border:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.5rem; margin-top:1.6rem; }
.design-2026 .pc-lines li { border:0; display:block; padding:0; }
.design-2026 .pc-lines li>span { display:block; font-size:.8rem; color:var(--orange); margin-bottom:1rem; }
.design-2026 .pc-lines h3 { font-size:1.15rem; margin-bottom:.5rem; }
.design-2026 .pc-lines p { font-size:.9rem; color:var(--mute); line-height:1.7; }
.design-2026 .industry-v2 { gap:3rem; }
.design-2026 .industry-v2-media { border-radius:10px; overflow:hidden; }
.design-2026 .industry-v2 .section-lead { color:#cadbdd; }
.design-2026 .industry-points { border-color:#ffffff25; }
.design-2026 .who-grid { gap:1.5rem; }
.design-2026 .who-grid article { background:#ffffff08; border:1px solid #ffffff25; border-radius:10px; padding:1.8rem; }
.design-2026 .who-grid p { color:#cadbdd; font-size:.95rem; }
.design-2026 .about-split { grid-template-columns:1.25fr 1fr; background:var(--white); }
.design-2026 .about-split-copy { padding:3.5rem var(--g); }
.design-2026 .about-split-media { margin:3rem 2rem; border-radius:12px; overflow:hidden; }
.design-2026 .about-split-points { display:grid; grid-template-columns:1fr; }
.design-2026 .about-split-points li { border-bottom:1px solid var(--line); padding:1rem 0; }
.design-2026 .about-split-points h3 { font-size:1.1rem; }
.design-2026 .about-split-points p { color:var(--mute); }
.design-2026 .process-v2 { gap:0; border-top:1px solid #b0cfe7; }
.design-2026 .process-v2 li { border:0; background:transparent; box-shadow:none; padding:1.5rem; border-right:1px solid #b0cfe7; border-radius:0; }
.design-2026 .process-v2 strong { color:var(--orange)!important; }
.design-2026 .process-v2 h3 { color:var(--ink); font-size:1rem; }
.design-2026 .reviews { gap:1rem; }
.design-2026 .reviews blockquote { background:#ffffff; color:var(--ink); border:0; border-radius:10px; padding:1.75rem; }
.design-2026 .reviews blockquote p { color:var(--ink); font-size:1rem; }
.design-2026 .reviews cite { color:var(--mute); }
.design-2026 .section-reviews { background:#d5eeff!important; }
.design-2026 .section-reviews h2 { color:var(--ink); }
.design-2026 .section-reviews .section-label { color:var(--cyan-2)!important; }
.design-2026 .cta-callout { background:var(--navy)!important; border:0; padding:3rem 0; }
.design-2026 .cta-callout h2 { font-size:clamp(1.8rem,3vw,2.6rem); max-width:25ch; }
.design-2026 .cta-callout-number { font-family:var(--text); font-weight:500; font-size:clamp(1.8rem,3vw,2.7rem); border:0; letter-spacing:-.03em; }
.design-2026 .cta-callout .section-label { color:#8acbd2!important; }
.design-2026 .panel-bleed { min-height:280px; }
.design-2026 .panel-bleed h2 { font-size:clamp(2rem,4vw,3rem); }
.design-2026 .footer { background:#071f35!important; border:0!important; padding-top:3.5rem; }
.design-2026 .footer-label { color:#91cbd3; text-transform:uppercase; font-size:.7rem; letter-spacing:.12em; }
.design-2026 .footer-cols a { font-size:.87rem; padding-block:.3rem; }
.design-2026 .footer-top { padding-bottom:2rem; }
.design-2026 .footer-bottom { border-color:#ffffff20; }
.design-2026 .footer-phone { background:transparent!important; border:1px solid #ffffff40!important; }
.design-2026 .dock { background:var(--navy); }
.design-2026 .dock a { min-height:50px; font-size:.9rem; }
.design-2026 .dock a { color:white!important; }
.design-2026 .dock a:last-child { background:var(--orange); color:#102d46!important; }

/* Photographs: retain full originals and intentional focal points from the refit. */
.design-2026 img[data-photo] { animation:none!important; object-position:var(--photo-focus,50% 50%)!important; }
img[data-photo="work-podlogowka-petle"] { --photo-focus:50% 76%; }
img[data-photo="work-rury-posadzka"] { --photo-focus:50% 73%; }
img[data-photo="work-rozdzielacz-zawory"] { --photo-focus:60% 30%; }
img[data-photo="work-dach-kanaly"] { --photo-focus:50% 72%; }
.design-2026 .bento-grid,.design-2026 .gallery-grid { display:block; columns:3; column-gap:1rem; }
.design-2026 :is(.bento-grid,.gallery-grid) figure { break-inside:avoid; margin:0 0 1rem; border:0; border-radius:10px; }
.design-2026 :is(.bento-grid,.gallery-grid,.shot-strip) img { display:block; width:100%; height:auto; aspect-ratio:var(--photo-ratio,4/3); object-fit:cover; }
.design-2026 :is(.bento-grid,.gallery-grid,.shot-strip) picture { display:contents; }
.design-2026 .shot-strip { align-items:start; gap:1rem; }
.design-2026 .shot-strip figure { border-radius:8px; }
.design-2026 .shot-strip figcaption { font-size:.75rem; }
.design-2026 .gallery-tabs { display:flex; flex-wrap:wrap; gap:.5rem; background:transparent; border:0; padding:0; margin:0 0 1.5rem; }
.design-2026 .gallery-tabs button { background:#ffffff; color:var(--ink); border:1px solid #a9cce4; border-radius:5px; min-height:44px; padding:.6rem 1.1rem; text-transform:none; font-size:.82rem; }
.design-2026 .gallery-tabs button.on { background:var(--navy); border-color:var(--navy); color:white; }
.rd-gallery-page { background:#e4f4ff; padding:3rem 0; }
.rd-gallery-page .hx-reel-top { padding:0; }
.rd-gallery-page .hx-reel-intro { display:grid; grid-template-columns:1fr 1fr; gap:4rem; align-items:end; margin:0 0 2rem; }
.rd-gallery-page h1 { font-size:clamp(2.5rem,4vw,3.8rem); max-width:17ch; line-height:1.07; }
.design-2026 .rd-gallery-page .page-hero-lead { color:var(--mute); }
.design-2026 .story-strip article { background:#ffffff; border-radius:10px; overflow:hidden; }

/* Legal document: a real contents column and a comfortable reading measure. */
.design-2026 .doc-hero { background:#e0f2ff; padding:3rem 0; }
.design-2026 .doc-hero h1 { font-size:clamp(2.3rem,4vw,3.8rem); color:var(--ink); }
.design-2026 .doc-hero .page-hero-lead { color:var(--mute); max-width:60ch; margin-top:1rem; }
.rd-legal-layout { display:grid; grid-template-columns:230px minmax(0,1fr); gap:4rem; }
.rd-legal-toc { position:sticky; top:7rem; align-self:start; display:flex; flex-direction:column; gap:.75rem; padding:1.5rem; background:#e7f2ff; border-radius:8px; }
.rd-legal-toc>p { font-size:.72rem; letter-spacing:.1em; text-transform:uppercase; margin-bottom:.5rem; }
.rd-legal-toc a { font-size:.85rem; line-height:1.45; }
.rd-legal-toc a:hover { color:var(--cyan); text-decoration:underline; }
.design-2026 .doc-body { width:100%; max-width:74ch; font-size:1rem; line-height:1.85; }
.design-2026 .doc-body h2 { font-size:1.65rem; padding-top:1rem; margin:2rem 0 1rem; color:var(--ink); }
.design-2026 .doc-body ul { padding-left:1.3rem; list-style:disc; }
.design-2026 .doc-body li { margin-bottom:.6rem; }

@media (max-width:1200px) {
  .design-2026 .nav-home { display:none; }
  .design-2026 .nav { gap:.9rem; }
  .design-2026 .header { gap:.75rem; }
  .design-2026 .header-cta .btn-phone { display:none; }
  .rd-service-cards { grid-template-columns:repeat(3,1fr); }
  .rd-service-cards>a { min-height:145px; }
  .rd-card-top { margin-bottom:1rem; }
  .rd-service-ribbon { grid-template-columns:repeat(3,1fr); }
  .rd-home-inner { gap:2rem; }
  .rd-home-visual .rd-photo-inset { right:0; }
}
@media (max-width:900px) {
  :root { --h:4.5rem; --g:1.5rem; }
  .design-2026 .header .nav { display:none; }
  .design-2026 .logo,.design-2026 .logo img { width:7.5rem; }
  .rd-home-inner,.rd-water-grid,.rd-boiler-grid,.rd-industrial-grid,.rd-heating-grid,.rd-pump>.wrap { gap:2rem; }
  .rd-home-inner { grid-template-columns:1fr 1fr; }
  .rd-home h1 { font-size:2.5rem; }
  .rd-home-visual>.rd-photo:first-child { height:340px; border-radius:70px 8px 8px 8px; }
  .rd-home-visual .rd-photo-inset { width:75%; }
  .rd-hero h1 { font-size:2.7rem; }
  .rd-boiler-visual { padding-right:2.5rem; }
  .rd-boiler-visual .rd-photo { height:350px; }
  .rd-catalog .rd-copy { column-gap:2rem; }
  .rd-water-visual { padding-right:1rem; min-height:320px; }
  .rd-water-visual>.rd-photo { height:285px; width:90%; }
  .rd-water-visual>.rd-water-secondary { height:135px; }
  .rd-contact>.wrap { gap:2rem; }
  .rd-phone-card { padding:1.5rem; }
  .rd-repair-top { gap:2rem; }
  .rd-bath .rd-copy { width:55%; padding:1.7rem; }
  .design-2026 .contact-loc { grid-template-columns:repeat(2,1fr); }
  .design-2026 .contact-wrap { grid-template-columns:.7fr 1.3fr; gap:1.25rem; }
  .design-2026 .rd-scope { grid-template-columns:1fr; gap:2rem; }
  .design-2026 .side-box { position:static; }
  .design-2026 .why-band,.design-2026 .about-split { grid-template-columns:1fr; }
  .design-2026 .why-band-visual { min-height:260px; max-height:380px; margin:0 var(--g) 2rem; }
  .design-2026 .about-split-media { max-height:380px; margin:0 var(--g) 2rem; }
  .design-2026 .svc-dir { grid-template-columns:repeat(2,1fr); }
  .design-2026 .perks-grid { grid-template-columns:repeat(2,1fr); gap:1rem; }
  .design-2026 .perks article { padding:.5rem 1rem!important; }
  .design-2026 .bento-grid,.design-2026 .gallery-grid { columns:2; }
  .rd-legal-layout { grid-template-columns:180px minmax(0,1fr); gap:2rem; }
  .rd-gallery-page .hx-reel-intro { gap:2rem; }
}
@media (max-width:640px) {
  :root { --g:1.25rem; }
  .design-2026 .header { gap:.5rem; }
  .design-2026 .header .btn { min-height:42px; padding:.55rem .8rem; font-size:.8rem; }
  .design-2026 .header-cta { margin-left:auto; }
  .design-2026 .header .nav-drop { display:none; }
  .rd-home { padding-top:2rem; }
  .rd-home-inner { grid-template-columns:1fr; gap:1.8rem; padding-bottom:2rem; }
  .rd-home h1 { font-size:2.55rem; max-width:18ch; }
  .rd-home-visual { padding:0 0 2rem; }
  .rd-home-visual>.rd-photo:first-child { height:265px; border-radius:65px 8px 8px 8px; }
  .rd-home-visual .rd-photo-inset { width:48%; height:135px; }
  .rd-home .rd-eyebrow { font-size:.63rem; }
  .rd-home-note { margin-top:1.3rem; }
  .rd-service-ribbon { padding:0 .5rem; grid-template-columns:repeat(2,1fr); }
  .rd-service-ribbon a { font-size:.76rem; padding:1rem .75rem; border-bottom:1px solid #ffffff20; }
  .rd-hero h1 { font-size:2.6rem; }
  .rd-lead { font-size:1rem; line-height:1.65; }
  .rd-catalog { padding:2rem 0; }
  .rd-catalog .rd-copy { display:block; }
  .rd-service-cards { grid-template-columns:repeat(2,1fr); gap:10px; margin-top:2rem; }
  .rd-service-cards>a { min-height:150px; padding:1.1rem; }
  .rd-about { padding-top:2rem; }
  .rd-about-top { grid-template-columns:1fr; gap:0; }
  .rd-about-mark { display:none; }
  .rd-about-bottom { grid-template-columns:1fr; }
  .rd-about-bottom .rd-photo { height:230px; }
  .rd-about-detail { border-radius:0; padding:1.5rem; }
  .rd-industrial,.rd-water,.rd-pump,.rd-boiler,.rd-repair { padding-top:2rem; }
  .rd-industrial-grid,.rd-water-grid,.rd-heating-grid,.rd-pump>.wrap,.rd-boiler-grid,.rd-repair-top,.rd-contact>.wrap { grid-template-columns:1fr; gap:2rem; }
  .rd-industrial-visual .rd-photo { height:260px; }
  .rd-industrial-strip { flex-wrap:wrap; padding-block:1rem; font-size:.7rem; }
  .rd-industrial-strip span { flex:1 1 30%; }
  .rd-water-visual { width:min(100%,400px); min-height:320px; margin:auto; }
  .rd-water-visual>.rd-photo { height:295px; }
  .rd-water-visual>.rd-water-secondary { width:43%; height:150px; }
  .rd-heating { padding-block:2rem; }
  .rd-heating-grid>.rd-photo { height:290px; width:100%; border-radius:65px 65px 8px 8px; }
  .rd-heating-copy { grid-row:1; }
  .rd-heating-key { margin-top:1.5rem; padding-top:1rem; gap:1rem; }
  .rd-system figcaption { padding:0 1rem; }
  .rd-boiler-visual { width:min(100%,340px); margin:auto; }
  .rd-boiler-grid>.rd-copy { grid-row:1; }
  .rd-boiler-visual .rd-photo { height:355px; }
  .rd-bath { display:block; min-height:0; padding-bottom:0; }
  .rd-bath-image { position:relative; height:250px; }
  .rd-bath-layout { padding:0 0 1.5rem; margin-top:-1.5rem; }
  .rd-bath .rd-copy { width:100%; padding:1.5rem; }
  .rd-phone-card { gap:.7rem; padding:1.5rem; }
  .rd-phone-card svg { margin-bottom:0; }
  .rd-phone-card strong { font-size:2.3rem; }
  .rd-repair-bottom { height:135px; grid-template-columns:1fr; }
  .rd-repair-bottom>div { display:none; }
  .rd-contact { padding-block:2rem; }
  .rd-contact-links a:first-child strong { font-size:1.8rem; }
  .design-2026 .contact-wrap { grid-template-columns:1fr; }
  .design-2026 .contact-home { grid-template-columns:1fr; }
  .design-2026 .contact-aside { display:grid; grid-template-columns:1fr 1.2fr; }
  .design-2026 .contact-home .contact-aside { display:block; }
  .design-2026 .contact-photo-brand { padding:1.2rem; min-height:160px; }
  .design-2026 .contact-photo-brand strong { font-size:1.6rem; }
  .design-2026 .contact-photo-brand span { font-size:.75rem; }
  .design-2026 .contact-direct { padding:1rem; }
  .design-2026 .contact-direct li { padding:.5rem 0; }
  .design-2026 .contact-direct a { font-size:.85rem; }
  .design-2026 .contact-side { padding:1.5rem; }
  .design-2026 .contact-loc { grid-template-columns:1fr; }
  .design-2026 .contact-loc li { display:grid; grid-template-columns:2rem 1fr; gap:.5rem; }
  .design-2026 .form { padding:1.3rem; }
  .design-2026 .form .reason-grid { grid-template-columns:1fr 1fr; }
  .design-2026 .faq-stage { padding-top:2rem; }
  .rd-faq-intro h1 { font-size:2.55rem; }
  .rd-faq-help { display:block; }
  .rd-faq-help a { display:block; margin-top:.75rem; }
  .design-2026 .faq-list summary { font-size:.95rem; }
  .design-2026 .section { padding-block:3rem; }
  .design-2026 .perks-grid { gap:1rem .5rem; }
  .design-2026 .perks article:nth-child(odd) { border-left:0!important; padding-left:0!important; }
  .design-2026 .perks h3 { font-size:.95rem; }
  .design-2026 .svc-menu { grid-template-columns:1fr; gap:1.5rem; }
  .design-2026 .svc-dir { grid-template-columns:1fr; }
  .design-2026 .svc-dir li a { padding:1.25rem!important; }
  .design-2026 .rd-chapter { padding:1.5rem; margin-top:2.5rem; }
  .design-2026 .pc-lines { grid-template-columns:1fr; gap:1.5rem; }
  .design-2026 .pc-lines li { display:grid; grid-template-columns:1.7rem 1fr; gap:.7rem; }
  .design-2026 .process-v2 { grid-template-columns:1fr; }
  .design-2026 .process-v2 .pbody { min-width:0; padding:0; }
  .design-2026 .process-v2 li { padding:1rem; }
  .design-2026 .cta-callout-inner { align-items:start; }
  .design-2026 .cta-callout-phone { align-items:start; }
  .design-2026 .bento-grid,.design-2026 .gallery-grid { columns:1; }
  .rd-gallery-page { padding-top:2rem; }
  .rd-gallery-page .hx-reel-intro { grid-template-columns:1fr; gap:1rem; }
  .rd-gallery-page h1 { font-size:2.5rem; }
  .rd-legal-layout { grid-template-columns:1fr; gap:2rem; }
  .rd-legal-toc { position:static; }
  .design-2026 .doc-hero { padding-block:2rem; }
  .design-2026 .doc-body { font-size:.96rem; }
}
@media (prefers-reduced-motion:no-preference) {
  .rd-hero .rd-copy { animation:rd-arrive .55s ease-out both; }
  .rd-service-cards>a { animation:rd-arrive .5s ease-out both; }
  .rd-service-cards>a:nth-child(2n) { animation-delay:.06s; }
  .rd-water-visual>.rd-pipes { animation:rd-ambient 9s ease-in-out infinite alternate; }
  @keyframes rd-arrive { from { transform:translateY(8px); } to { transform:none; } }
  @keyframes rd-ambient { from { transform:translateY(-3px); } to { transform:translateY(3px); } }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto!important; }
  .design-2026 *,.design-2026 *::before,.design-2026 *::after { animation:none!important; transition:none!important; }
  .design-2026 .reveal { opacity:1!important; transform:none!important; }
}
