:root{--ink:#17212b;--muted:#596573;--red:#a00c12;--blue:#1949ad;--paper:#f7f8fb;--line:#e6e9ee}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:white;line-height:1.6}a{color:inherit;text-decoration:none}.wrap{width:min(1160px,calc(100% - 40px));margin:auto}.top{background:#101d2b;color:#e8edf3;font-size:13px;padding:7px 0}.top .wrap{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.header{background:white;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.header .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:82px}.brand{display:flex;align-items:center;gap:12px;font-weight:800;font-family:Arial,Helvetica,sans-serif;line-height:1.2}.brand img{height:69px;width:88px;object-fit:contain}.brand small{display:block;font-size:11px;letter-spacing:.05em;color:var(--muted);font-weight:600}.nav{display:flex;gap:21px;align-items:center;font-size:14px;font-weight:700}.nav a:hover,.foot a:hover{color:var(--red)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:var(--red);color:#fff;padding:13px 20px;border-radius:9px;font-weight:800;border:2px solid var(--red);line-height:1.3}.btn:hover{background:#79070c;border-color:#79070c}.btn.outline{background:white;color:var(--red)}.btn.outline:hover{background:#fff3f3}.btn.dark{background:#182b42;border-color:#182b42}.hero{background:linear-gradient(115deg,#f6f8fc 0%,#fff 65%);padding:78px 0 80px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.18fr .82fr;gap:50px;align-items:center}.eyebrow{display:inline-block;color:var(--red);text-transform:uppercase;letter-spacing:.14em;font-weight:800;font-size:12px;margin-bottom:16px}h1,h2,h3{font-family:Arial,Helvetica,sans-serif;line-height:1.18;letter-spacing:-.035em}h1{font-size:clamp(37px,5vw,65px);margin:0 0 20px}h2{font-size:clamp(29px,3vw,42px);margin:0 0 18px}h3{font-size:21px;margin:0 0 10px}.lead{font-size:19px;color:var(--muted);max-width:640px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin:29px 0}.hero-visual{border-radius:22px;min-height:385px;background:linear-gradient(145deg,#edf2fc,#fff);border:1px solid #e3e8f0;display:flex;align-items:center;justify-content:center;position:relative;box-shadow:0 25px 65px #1b2a4612}.hero-visual img{width:94%;max-height:320px;object-fit:contain}.float{position:absolute;bottom:-18px;right:-14px;background:white;padding:15px 20px;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 30px #00000014;font-weight:800}.checks{display:flex;flex-wrap:wrap;gap:15px;color:#526071;font-size:14px;font-weight:700}.checks span:before{content:'✓';color:var(--red);margin-right:6px}section{padding:75px 0}.light{background:var(--paper)}.section-head{max-width:760px;margin-bottom:30px}.section-head p,.card p,.text-muted{color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{border:1px solid var(--line);background:white;padding:26px;border-radius:14px;transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-3px);box-shadow:0 12px 30px #0000000b}.card .symbol{display:flex;width:44px;height:44px;background:#fff0f0;color:var(--red);align-items:center;justify-content:center;border-radius:11px;font-size:24px;margin-bottom:20px}.more{color:var(--red);font-weight:800}.citygrid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.citygrid a{padding:14px;border:1px solid var(--line);border-radius:10px;background:white;font-weight:700;text-align:center}.citygrid a:hover{border-color:var(--red);color:var(--red)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.step b{display:inline-flex;width:42px;height:42px;align-items:center;justify-content:center;background:#f7e5e5;color:var(--red);border-radius:50%;margin-bottom:15px}.cta{background:#172638;color:white;padding:65px 0}.cta p{color:#d5dfe9}.cta .btn.outline{background:transparent;color:white;border-color:#8190a0}.foot{background:#0e1925;color:#e4eaf0;padding:48px 0 24px}.footgrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:35px}.foot p,.foot small{color:#a9b7c5}.foot a{display:block;margin:7px 0}.footbottom{border-top:1px solid #334152;margin-top:30px;padding-top:20px;font-size:13px;color:#a9b7c5}.pagehead{background:#f7f8fb;padding:60px 0}.pagehead h1{font-size:clamp(34px,4vw,52px)}.content{max-width:850px}.content p{font-size:17px;color:#4e5d6b}.panel{background:#f8f9fb;padding:27px;border:1px solid var(--line);border-radius:14px;margin:28px 0}.small{font-size:13px;color:var(--muted)}.mobilebar{display:none}@media(max-width:900px){.nav{gap:11px;font-size:12px}.nav .btn{display:none}.hero-grid{grid-template-columns:1fr}.hero-visual{min-height:250px}.hero-visual img{max-height:220px}.cards{grid-template-columns:repeat(2,1fr)}.citygrid{grid-template-columns:repeat(3,1fr)}}@media(max-width:620px){.wrap{width:min(100% - 30px,1160px)}.header .wrap{min-height:74px}.brand img{height:57px;width:68px}.brand{font-size:12px}.brand small{font-size:9px}.nav{gap:9px}.nav a:nth-child(2),.nav a:nth-child(3){display:none}.hero{padding:45px 0 55px}.hero-grid{gap:26px}.float{right:0}.lead{font-size:17px}section{padding:52px 0}.cards,.steps{grid-template-columns:1fr}.citygrid{grid-template-columns:repeat(2,1fr)}.footgrid{grid-template-columns:1fr 1fr}.footgrid>div:first-child{grid-column:span 2}.mobilebar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:30;background:white;box-shadow:0 -5px 20px #0002;padding:9px;gap:9px}.mobilebar a{flex:1;text-align:center;padding:11px 8px;font-size:13px}.foot{padding-bottom:85px}}
.whatsapp{background:#16864b!important;border-color:#16864b!important;color:#fff!important}.whatsapp:hover{background:#106f3c!important}.quickquote{padding:64px 0;background:#fff}.quickquote-inner{display:grid;grid-template-columns:1.3fr .7fr;gap:34px;align-items:center}.quickquote p{color:#526071}.quickquote-side{background:#f3f9f5;border:1px solid #cde7d6;padding:28px;border-radius:18px;display:flex;flex-direction:column;align-items:flex-start;gap:10px}.quickquote-side p{margin:0 0 12px}.quote-icon{font-family:Arial,Helvetica,sans-serif;font-size:43px;font-weight:800;color:#16864b}.quickquote-side .btn{font-size:14px}@media(max-width:700px){.quickquote-inner{grid-template-columns:1fr}.quickquote{padding:44px 0}}

/* Kontaktformular */
.form-section{background:#f5f7fa}.form-shell{max-width:980px;margin:auto;background:#fff;border:1px solid #e0e5ec;border-radius:22px;padding:clamp(22px,5vw,48px);box-shadow:0 18px 50px #14213d0b}.form-intro{max-width:720px;margin-bottom:28px}.form-intro h2{margin:10px 0}.request-form{display:grid;gap:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.request-form label{display:flex;flex-direction:column;gap:8px;font-weight:700;color:#253247;font-size:14px}.request-form label span:not(.consent span){color:#9e1418}.request-form input:not([type=checkbox]),.request-form select,.request-form textarea{width:100%;border:1px solid #cbd4df;border-radius:10px;background:#fff;padding:13px 14px;font:inherit;font-size:16px;color:#172438;outline-offset:3px}.request-form input:focus,.request-form textarea:focus,.request-form select:focus{border-color:#9e1418}.request-form textarea{resize:vertical}.request-form small{font-weight:400;color:#5e6876}.request-form .consent{display:flex;flex-direction:row;align-items:flex-start;gap:12px;font-weight:400;line-height:1.5}.consent input{margin-top:4px;min-width:19px;min-height:19px}.consent a{color:#9e1418;text-decoration:underline}.form-submit{cursor:pointer;border:0;font:inherit;font-weight:800;justify-self:start}.honeypot{display:none!important}@media(max-width:650px){.form-grid{grid-template-columns:1fr}.form-submit{width:100%}}

.about-grid{display:grid;grid-template-columns:minmax(220px,0.75fr) 1.25fr;gap:36px;align-items:start}.about-photo{width:100%;border-radius:18px;object-fit:cover;box-shadow:0 14px 36px #17212b22}.about-copy h3{margin-top:25px}.about-copy p{margin:0 0 14px}.about-copy ul{padding-left:22px}.about-copy li{margin-bottom:7px}@media(max-width:750px){.about-grid{grid-template-columns:1fr}.about-photo{max-width:480px}}

.project-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:17px;margin:22px 0 35px}.project-gallery figure{margin:0;background:white;border:1px solid #e2e2e2;border-radius:13px;overflow:hidden;box-shadow:0 3px 12px #0000000d}.project-gallery img{display:block;width:100%;height:200px;object-fit:cover}.project-gallery figcaption{padding:11px 13px;font-size:.91rem;color:#424242}.project-intro{max-width:850px;line-height:1.7}.project-section{padding:45px 0}.project-section:nth-child(even){background:#f6f6f6}.service-long{max-width:900px;line-height:1.8}.service-long h2{margin-top:32px}.service-long p{margin:15px 0}.service-long ul{padding-left:25px}.project-video{width:100%;max-width:720px;border-radius:12px;background:#111;display:block;margin:20px 0}.inline-links{display:flex;gap:15px;flex-wrap:wrap;margin:22px 0}.inline-links a{color:#a00c12;font-weight:700}

/* Responsive photo galleries: keep the whole image visible */
.project-gallery{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));align-items:start}
.project-gallery img{width:100%;height:auto;max-height:520px;object-fit:contain;background:#f4f4f4}
.project-gallery figure{align-self:start}
@media(max-width:700px){.project-gallery{grid-template-columns:1fr}.project-gallery img{max-height:none}}

/* Gallery: show full photos on desktop and mobile */
.project-gallery {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start;}
.project-gallery figure {min-width:0;margin:0;}
.project-gallery img {display:block;width:100%;height:auto;max-height:none;object-fit:contain;object-position:center;}
.project-gallery figcaption {padding:12px;}
@media(max-width:700px){.project-gallery{grid-template-columns:1fr;gap:18px;}.project-gallery img{width:100%;height:auto;max-height:none;object-fit:contain;}}

/* Value credit section */
.value-copy{max-width:880px;line-height:1.75}.value-copy h3{margin:26px 0 10px}.value-copy ul{padding-left:1.4rem}.value-copy li{margin:7px 0}

/* Mitarbeiterfoto: nur neuer Abschnitt */
.rinos-team-section { padding-top: 48px; padding-bottom: 48px; }
.rinos-team-grid { display: grid; grid-template-columns: minmax(220px, 340px) 1fr; gap: 32px; align-items: center; }
.rinos-team-photo { display: block; width: 100%; height: auto; max-height: 480px; object-fit: contain; border-radius: 14px; }
.rinos-team-grid h2 { margin-top: 0; }
@media (max-width: 700px) {
  .rinos-team-grid { grid-template-columns: 1fr; gap: 20px; }
  .rinos-team-photo { max-height: none; max-width: 420px; }
}

/* Passende Original-Projektfotos auf Leistungsunterseiten */
.service-project-photo { margin: 28px 0 34px; max-width: 740px; }
.service-project-photo img { display: block; width: 100%; max-height: 480px; height: auto; object-fit: contain; object-position: center; border-radius: 12px; background: #f4f5f7; }
.service-project-photo figcaption { margin-top: 9px; font-size: .88rem; color: #56616d; }
@media(max-width:700px) { .service-project-photo { margin: 20px 0 28px; } .service-project-photo img { max-height: none; } }

.dachboden-gallery {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:900px;}
.dachboden-gallery img {width:100%;height:280px;max-height:none;object-fit:contain;background:#f4f5f7;}
.dachboden-gallery figcaption {grid-column:1/-1;}
@media(max-width:650px){.dachboden-gallery{grid-template-columns:1fr}.dachboden-gallery img{height:auto;max-height:none;}}

/* Mobile Lesbarkeit: Navigation ohne überbreite Desktop-Ansicht */
@media(max-width:750px){
  html,body{max-width:100%;overflow-x:hidden}
  .top{display:none}
  .header .wrap{gap:10px;flex-wrap:nowrap;min-height:78px}
  .brand{min-width:0;flex:1 1 auto;font-size:14px}
  .brand img{width:55px;height:55px;flex-shrink:0}
  .brand span{min-width:0}
  .brand small{font-size:10px}
  .nav{flex:0 0 auto;gap:13px;font-size:14px}
  .nav a{display:none}
  .nav a:first-child,.nav a:nth-last-child(2){display:inline}
  .nav .btn{display:none}
  .hero-grid,.about-grid{grid-template-columns:minmax(0,1fr)}
  .hero{padding:42px 0 56px}
  .hero h1{font-size:clamp(32px,8vw,44px)}
  .about-copy h2{font-size:clamp(29px,7vw,38px)}
  .about-copy p{font-size:16px;line-height:1.7}
  .actions .btn{font-size:15px}
  .mobilebar a{font-size:15px}
}
@media(max-width:390px){.brand{font-size:12px}.brand img{width:45px}.nav{gap:8px;font-size:12px}}

/* Compact spacing on Todesfall / Pflegeheim landing pages only */
.rinos-info-page main > section:not(.project-section):not(.cta){padding-top:0;padding-bottom:0}
.rinos-info-page main > section:not(.project-section):not(.cta) h2{margin-top:0}
@media(max-width:750px){.rinos-info-page main > section:not(.project-section):not(.cta) .wrap{padding-top:16px!important;padding-bottom:16px!important}.rinos-info-page main > section:first-child .wrap{padding-top:28px!important;padding-bottom:22px!important}}

/* Mobile navigation: keep every page reachable without horizontal page overflow */
@media(max-width:900px){.header .wrap{flex-wrap:wrap;gap:0;padding:8px 0}.header .brand{width:100%}.header .nav{width:100%;display:flex;flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;padding:8px 0;gap:17px}.header .nav a{display:inline-flex!important;flex:none;white-space:nowrap;font-size:13px}.header .nav .btn{display:none!important}}
@media(max-width:620px){.pagehead{padding:34px 0}.content h2{font-size:clamp(24px,6vw,31px);margin-top:28px}.content p{font-size:16px}.pagehead h1{font-size:clamp(30px,8vw,42px);overflow-wrap:anywhere}.actions .btn{max-width:100%;text-align:center}.card{padding:22px}body{overflow-x:hidden}}

/* Responsive Fotos auf Leistungs-Unterseiten */
.service-photo {margin: 24px 0 30px; max-width: 760px;}
.service-photo img {display:block; width:100%; height:auto; max-height:390px; object-fit:cover; border-radius:12px;}
.service-photo figcaption {font-size:0.82rem;line-height:1.5;color:#666;margin-top:7px;}
@media(max-width:640px){.service-photo{margin:18px 0 24px}.service-photo img{max-height:none;aspect-ratio:4/3;object-fit:cover;border-radius:9px}}

/* Logo-Vergrößerung und mobile Optimierung Oktober 2026 */
@media(min-width:901px){.header .brand img{width:112px;height:92px;object-fit:contain}.header .wrap{min-height:104px}}
@media(max-width:900px){.header .brand{width:100%;flex:0 0 100%;gap:12px}.header .brand img{width:110px;height:96px;flex-shrink:0;object-fit:contain}.header .brand span{font-size:clamp(13px,3.8vw,19px)}.header .brand small{font-size:11px}.header .nav{max-width:100%;border-top:1px solid #e6e9ee;padding:10px 0}.header .nav a{padding:4px 2px}.hero-visual{min-height:270px;padding:6px 12px 24px}.hero-visual img{width:100%;max-height:none;height:240px;object-fit:contain}}
@media(max-width:620px){.header .brand img{width:105px;height:90px}.hero-visual{min-height:245px}.hero-visual img{height:215px}.hero-visual .float{bottom:-14px}}

/* Inhaberfoto mobil kompakter, Originalmotiv unveraendert */
@media(max-width:750px){#ueber-mich .about-photo{display:block;width:76%;max-width:300px;height:auto;margin:0 auto 0;}#ueber-mich .about-grid{gap:22px;}}

/* Firmenlogo im mobilen Header besser sichtbar */
@media(max-width:900px){.header .brand img{width:136px;height:112px;object-fit:contain}}
@media(max-width:620px){.header .brand img{width:130px;height:108px}}
