:root{color-scheme:dark;--bg:#101418;--bg2:#171c20;--surface:#1c2328;--surface2:#232b30;--line:#344047;--text:#f5f3ee;--muted:#b5bdc0;--copper:#d5a474;--copper2:#bb814f;--max:1240px;--radius:3px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);line-height:1.65}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}svg{width:1.25em;height:1.25em;flex:none}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.15;letter-spacing:-.035em}h1{font-size:clamp(3.2rem,6.8vw,6.5rem);font-weight:600}h2{font-size:clamp(2.1rem,4.3vw,3.85rem);font-weight:560}h3{font-size:1.35rem;font-weight:600}p{color:var(--muted)}:focus-visible{outline:3px solid var(--copper);outline-offset:4px}.container{width:min(calc(100% - 64px),var(--max));margin-inline:auto}.skip-link{position:absolute;z-index:200;top:-100px;left:20px;padding:12px 18px;background:var(--copper);color:#101418}.skip-link:focus{top:15px}.eyebrow{color:var(--copper);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.19em;margin-bottom:22px}.lead{font-size:clamp(1.05rem,1.7vw,1.3rem);max-width:670px;line-height:1.65;color:#d7dcda}.topline{height:34px;background:#0b0e10;border-bottom:1px solid #20272b;color:#aeb5b5;font-size:.72rem;letter-spacing:.055em}.topline .container{height:100%;display:flex;justify-content:space-between;align-items:center}.site-header{position:sticky;top:0;z-index:100;background:rgba(16,20,24,.97);border-bottom:1px solid rgba(213,164,116,.18);backdrop-filter:blur(20px)}.nav-wrap{display:flex;align-items:center;justify-content:space-between;gap:24px}.brand img{height:auto;object-fit:contain}.site-header nav{display:flex;align-items:center;gap:30px}.site-header nav ul{list-style:none;display:flex;align-items:center;gap:25px;margin:0;padding:0}.site-header nav a{font-size:.82rem;font-weight:550;color:#d5d8d7;white-space:nowrap;transition:color .2s}.site-header nav a:hover,.site-header nav a[aria-current="page"]{color:var(--copper)}.site-header nav .nav-cta{padding:11px 16px;border:1px solid var(--copper);color:var(--copper);display:inline-flex;align-items:center;gap:8px}.nav-cta svg{width:15px;height:15px}.menu-toggle{display:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:52px;border:1px solid var(--copper);padding:13px 21px;background:var(--copper);color:#181819;font-size:.86rem;font-weight:700;letter-spacing:.015em;transition:background .2s,transform .2s,color .2s;text-align:center}.button:hover{background:#edbd8b;border-color:#edbd8b;transform:translateY(-2px)}.button svg{width:18px;height:18px}.button-outline{color:var(--text);border-color:#758087;background:transparent}.button-outline:hover{background:#fff;color:var(--bg);border-color:#fff}.actions{display:flex;flex-wrap:wrap;gap:13px}.home-hero{min-height:650px;position:relative;display:flex;align-items:center;isolation:isolate;overflow:hidden}.home-hero-image{position:absolute;inset:0;z-index:-2;background:url('assets/hero.jpg') center/cover no-repeat}.home-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(10,13,15,.97) 0%,rgba(10,13,15,.91) 28%,rgba(10,13,15,.45) 64%,rgba(10,13,15,.15) 100%),linear-gradient(0deg,rgba(10,13,15,.63),transparent 45%)}.home-hero-inner{padding:108px 0 90px}.home-hero h1{max-width:900px;margin-bottom:24px}.home-hero h1 span{color:var(--copper)}.home-hero .lead{margin-bottom:32px}.hero-facts{display:flex;flex-wrap:wrap;gap:28px;margin-top:65px;color:#d1d5d3;font-size:.82rem}.hero-facts span{display:flex;align-items:center;gap:8px}.hero-facts svg{color:var(--copper);width:15px;height:15px}.hero-index{position:absolute;right:30px;bottom:24px;color:#b7b3af;font-size:.72rem;letter-spacing:.16em}.intro-section{background:#20272a;border-top:1px solid #2b3438;border-bottom:1px solid #313a3d}.intro-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:9%;align-items:center;padding:85px 0}.intro-grid h2{max-width:710px;margin-bottom:0}.intro-grid>p{font-size:1.05rem;margin:40px 0 0}.section{padding:112px 0}.subtle{background:var(--bg2)}.section-heading{max-width:780px;margin-bottom:50px}.section-heading h2{margin-bottom:20px}.section-heading>p:last-child{font-size:1.06rem;margin-bottom:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.service-card{background:var(--bg2);padding:38px 34px;min-height:270px;display:flex;flex-direction:column;align-items:flex-start}.service-card:hover{background:#20292e}.service-icon,.detail-icon{width:46px;height:46px;display:inline-grid;place-items:center;background:#342e29;color:var(--copper);margin-bottom:29px}.service-icon svg,.detail-icon svg{width:24px;height:24px}.service-card h3{margin-bottom:11px}.service-card p{font-size:.93rem;line-height:1.65;margin-bottom:22px}.text-link{display:inline-flex;align-items:center;gap:9px;color:var(--copper);font-size:.86rem;font-weight:650;margin-top:auto}.text-link:hover{text-decoration:underline;text-underline-offset:4px}.text-link svg{width:17px;height:17px}.image-story{background:#141a1e;overflow:hidden}.image-story-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:8%;align-items:center}.image-story-photo{height:570px;margin-left:calc((min(100vw - 64px, var(--max)) - 100vw)/2)}.image-story-photo img{height:100%;width:100%;object-fit:cover;object-position:64% center}.image-story-copy{padding:90px 0}.image-story-copy h2{margin-bottom:22px}.image-story-copy p{font-size:1.02rem}.check-list{padding:0;margin:26px 0 32px;list-style:none}.check-list li{position:relative;padding-left:25px;margin:9px 0;color:#d4dbda;font-size:.92rem}.check-list li:before{content:"✓";position:absolute;left:0;color:var(--copper);font-weight:700}.offer-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.offer-panel{position:relative;background:#20272b;border:1px solid #344047;padding:42px;min-height:320px}.offer-number{position:absolute;right:36px;top:24px;color:#545b5d;font-size:3rem;font-weight:650;line-height:1}.offer-panel h2{font-size:2.5rem}.offer-panel p{max-width:460px}.offer-price{font-size:2rem;color:var(--copper);font-weight:600;margin:35px 0 20px}.offer-price small{font-size:.78rem;color:var(--muted);font-weight:400}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line)}.steps>div{padding:30px 28px 0;border-right:1px solid var(--line)}.steps>div:first-child{padding-left:0}.steps>div:last-child{border-right:0}.steps span{color:var(--copper);font-size:.8rem;font-weight:700;letter-spacing:.1em}.steps h3{margin:28px 0 10px}.steps p{font-size:.92rem}.contact-banner{background:#292723;border-top:1px solid #765b42;border-bottom:1px solid #765b42}.contact-banner-inner{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:70px 0}.contact-banner h2{margin-bottom:10px;max-width:720px}.contact-banner p:last-child{margin-bottom:0}.site-footer{background:#0b0e10}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10%;padding:72px 0 60px}.footer-grid>div{display:flex;flex-direction:column;align-items:flex-start;gap:9px}.footer-grid .brand{margin-bottom:7px}.footer-grid p{max-width:340px;font-size:.9rem}.footer-grid h2{font-size:.85rem;letter-spacing:.13em;text-transform:uppercase;color:var(--copper);margin:13px 0 10px}.footer-grid a:not(.brand),.footer-grid span{font-size:.87rem;color:#b5bfc0}.footer-grid a:hover,.footer-bottom a:hover{color:var(--copper)}.footer-bottom{border-top:1px solid #2b3235;display:flex;justify-content:space-between;gap:30px;padding:23px 0 32px;font-size:.77rem;color:#8e9899}.footer-bottom span:last-child{display:flex;gap:22px}.page-hero{position:relative;min-height:470px;isolation:isolate;display:flex;align-items:center}.page-hero-image{position:absolute;inset:0;z-index:-2;background-position:center;background-size:cover}.page-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(12,16,18,.98) 0%,rgba(12,16,18,.92) 40%,rgba(12,16,18,.38) 100%)}.page-hero-inner{padding:95px 0}.page-hero h1{font-size:clamp(3rem,5.8vw,5.3rem);max-width:850px;margin-bottom:20px}.page-hero .lead{margin-bottom:28px}.detail-list{border-top:1px solid var(--line)}.detail-row{display:grid;grid-template-columns:100px 1fr;gap:50px;border-bottom:1px solid var(--line);padding:48px 0;scroll-margin-top:100px}.detail-icon{width:66px;height:66px}.detail-row h2{font-size:2.7rem}.detail-row p:not(.eyebrow){max-width:820px}.tag-list{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:25px 0 0}.tag-list li{border:1px solid #465057;color:#d3dbd9;padding:5px 12px;font-size:.78rem}.two-col{display:grid;grid-template-columns:.9fr 1.1fr;gap:12%}.two-col h2{margin-bottom:20px}.two-col p{font-size:1.02rem}.mini-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.mini-grid>div{background:#21292d;border:1px solid var(--line);padding:25px}.mini-grid h3{font-size:1.12rem;margin-bottom:8px}.mini-grid p{font-size:.87rem;margin:0}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;scroll-margin-top:115px}.price-card{position:relative;padding:34px 30px 30px;background:#1d2529;border:1px solid #3d484d;display:flex;flex-direction:column;align-items:flex-start;min-height:570px}.price-card.featured{border-color:var(--copper);background:#262b2c}.price-badge{position:absolute;top:-16px;right:20px;background:var(--copper);color:#171717;padding:6px 11px;font-size:.72rem;font-weight:750}.price-card h3{font-size:1.62rem;margin-bottom:10px}.price-card>p{font-size:.9rem;min-height:42px}.price{font-size:2.1rem;color:var(--copper);font-weight:650;line-height:1.2;margin:18px 0 20px}.price small{display:block;font-size:.77rem;color:#b8c0c0;font-weight:400;margin-top:5px}.price-card .check-list{margin:15px 0 28px}.price-card .check-list li{font-size:.83rem;margin:8px 0}.price-card .button{width:100%;margin-top:auto;min-height:48px;font-size:.78rem;gap:8px;padding:10px}.price-card .button svg{width:15px;height:15px}.package-note{border-left:3px solid var(--copper);padding:12px 20px;margin:30px 0 0;background:#22292c;color:#d6dddd;font-size:.87rem}.boundary-box{background:#232a2d;border-left:3px solid var(--copper);padding:30px}.boundary-box h3{margin-bottom:0}.boundary-box p{font-size:.88rem}.faq-list{max-width:900px}.faq-list details{border-bottom:1px solid var(--line);padding:16px 0}.faq-list summary{cursor:pointer;font-size:1.06rem;font-weight:600;padding:8px 40px 8px 0;list-style:none;position:relative}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";position:absolute;right:4px;top:5px;color:var(--copper);font-size:1.5rem;font-weight:400}.faq-list details[open] summary:after{content:"−"}.faq-list details p{max-width:800px;margin:10px 0;font-size:.93rem}.industry-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.industry-grid article{padding:35px;border:1px solid var(--line);background:var(--bg2);display:flex;flex-direction:column;align-items:flex-start}.industry-grid h2{font-size:1.75rem}.industry-grid p{font-size:.93rem}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:10%}.contact-method{display:flex;gap:17px;align-items:center;margin:23px 0}.contact-method>span{display:grid;place-items:center;color:var(--copper);width:45px;height:45px;border:1px solid var(--line)}.contact-method div{display:flex;flex-direction:column}.contact-method strong{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--copper)}.contact-method a{font-size:1.08rem}.contact-method a:hover{text-decoration:underline}.contact-note{margin-top:37px}.contact-form{background:#20282b;border:1px solid var(--line);padding:38px}.contact-form h2{font-size:2rem;margin-bottom:6px}.contact-form>p{font-size:.86rem}.contact-form label{display:flex;flex-direction:column;color:#e7e9e6;font-size:.83rem;font-weight:600;margin:16px 0}.contact-form label span{color:var(--copper)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-form input,.contact-form select,.contact-form textarea{width:100%;padding:12px 14px;background:#111719;color:var(--text);border:1px solid #5c686b;border-radius:0;margin-top:7px;outline:none}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--copper);box-shadow:0 0 0 2px rgba(213,164,116,.25)}.contact-form textarea{resize:vertical}.form-status{min-height:24px;color:var(--copper)}.contact-form .form-privacy{font-size:.75rem;color:#aeb8b8;margin:0}.legal-page{min-height:55vh;padding:95px 0}.legal-page h1{font-size:clamp(3rem,5vw,5rem)}.legal-alert{max-width:850px;border-left:3px solid var(--copper);background:#222a2d;padding:30px;margin-top:45px}.legal-alert h2{font-size:1.65rem}.legal-alert p{margin:0}
@media(max-width:1100px){.site-header nav{gap:15px}.site-header nav ul{gap:14px}.site-header nav a{font-size:.74rem}.service-card{padding:28px}.price-card{padding:28px 22px}}
@media(max-width:850px){.container{width:min(calc(100% - 40px),var(--max))}.topline span:last-child{display:none}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;border:1px solid #506066;background:transparent;padding:10px}.menu-toggle span{width:100%;height:2px;background:var(--text)}.site-header nav{display:none;position:absolute;left:0;right:0;top:100%;background:#141a1e;border-bottom:1px solid var(--line);padding:22px 20px 28px;box-shadow:0 16px 25px #0008}.site-header nav.open{display:flex;flex-direction:column;align-items:stretch}.site-header nav ul{display:flex;flex-direction:column;align-items:stretch;gap:0}.site-header nav li{border-bottom:1px solid #303b40}.site-header nav a{display:block;padding:12px 0;font-size:1rem}.site-header nav .nav-cta{display:flex;justify-content:center;margin-top:8px}.home-hero{min-height:610px}.home-hero-inner{padding:80px 0}.intro-grid,.image-story-grid,.two-col,.contact-grid{grid-template-columns:1fr;gap:30px}.intro-grid{padding:65px 0}.intro-grid>p{margin:0}.service-grid,.pricing-grid,.industry-grid{grid-template-columns:repeat(2,1fr)}.image-story-photo{height:380px;margin:0 -20px}.image-story-copy{padding:15px 0 65px}.steps{grid-template-columns:repeat(2,1fr);row-gap:25px}.steps>div:nth-child(2){border:0}.contact-banner-inner{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1.4fr 1fr;gap:30px}.footer-grid>div:first-child{grid-column:1/-1}.price-card{min-height:520px}}
@media(max-width:600px){.container{width:min(calc(100% - 32px),var(--max))}.home-hero{min-height:610px}.home-hero-image{background-position:64% center}.home-hero:before{background:linear-gradient(90deg,rgba(10,13,15,.96),rgba(10,13,15,.65)),linear-gradient(0deg,rgba(10,13,15,.55),transparent)}.home-hero-inner{padding:65px 0 70px}.home-hero h1{font-size:clamp(2.65rem,10vw,4.1rem)}.hero-facts{gap:10px 22px;margin-top:38px}.hero-index{display:none}.section{padding:75px 0}.section-heading{margin-bottom:35px}.service-grid,.pricing-grid,.industry-grid,.offer-grid,.mini-grid,.form-row{grid-template-columns:1fr}.service-card{min-height:220px}.offer-panel{min-height:auto;padding:32px}.steps{grid-template-columns:1fr}.steps>div{padding:18px 0!important;border-right:0;border-bottom:1px solid var(--line)}.steps>div:last-child{border-bottom:0}.page-hero{min-height:440px}.page-hero-inner{padding:70px 0}.page-hero h1{font-size:clamp(2.65rem,10vw,4.1rem)}.page-hero:before{background:linear-gradient(90deg,rgba(12,16,18,.97),rgba(12,16,18,.72))}.detail-row{grid-template-columns:1fr;gap:15px;padding:35px 0}.detail-row h2{font-size:2.2rem}.price-card{min-height:0}.price-card .button{margin-top:15px}.footer-grid{grid-template-columns:1fr;padding:55px 0 40px}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{flex-direction:column;gap:8px}.contact-form{padding:24px}.contact-banner-inner{padding:60px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
.privacy-check{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:12px;line-height:1.5}.privacy-check input{width:18px;height:18px;margin:3px 0 0;flex:none;accent-color:var(--copper)}.privacy-check span{color:#e7e9e6!important;font-weight:400}.privacy-check a,.legal-copy a{color:var(--copper);text-decoration:underline;text-underline-offset:3px}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.legal-copy{max-width:880px;margin-top:45px}.legal-copy h2{font-size:1.6rem;margin:40px 0 12px}.legal-copy p{font-size:.98rem;line-height:1.8}.subhero{position:relative;isolation:isolate;background:url('assets/hero.jpg') center/cover;padding:92px 0}.subhero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#101418f7 0%,#101418da 62%,#10141880)}.wrap{width:min(calc(100% - 64px),var(--max));margin-inline:auto}.subhero h1{max-width:900px;font-size:clamp(3rem,5.5vw,5.2rem);margin-bottom:20px}.subhero p{max-width:700px;font-size:1.13rem}.subhero .actions{margin-top:30px}.subhero .btn,.band .btn,.sidebar .btn{display:inline-flex;align-items:center;min-height:48px;padding:10px 18px;background:var(--copper);color:#171717;font-weight:700;font-size:.85rem;margin-right:8px}.subhero .btn-alt{background:transparent;color:var(--text);border:1px solid #7f8a8c}.content{padding:90px 0}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:9%}.content-grid article{border-bottom:1px solid var(--line);padding:0 0 30px;margin-bottom:38px}.content-grid article:last-child{border-bottom:0}.content-grid h2{font-size:clamp(1.75rem,3vw,2.7rem);margin-bottom:16px}.content-grid article p{max-width:800px}.content-grid article ul{padding-left:20px;color:var(--muted)}.sidebar{align-self:start;position:sticky;top:115px;background:#20282c;border:1px solid var(--line);padding:25px;display:flex;flex-direction:column;gap:12px}.sidebar strong{color:var(--copper);margin-bottom:8px}.sidebar a{font-size:.83rem;color:#d4dddd}.sidebar a:hover{color:var(--copper)}.sidebar .btn{color:#171717;text-align:center;margin:12px 0 0}.band{background:#292723;border-top:1px solid #765b42;padding:55px 0}.band .wrap{display:flex;align-items:center;justify-content:space-between;gap:30px}.band h2{font-size:2.3rem;margin-bottom:7px}.band p{margin-bottom:0}.band .btn{white-space:nowrap}.content .grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.content .tile{border:1px solid var(--line);padding:25px;background:var(--bg2)}.content .tile h3{margin:10px 0}.content .tile .more{color:var(--copper)}.content img{height:auto}.content-grid a:not(.btn),.content a:not(.tile){color:var(--copper)}
.contact-form label:not(.privacy-check){display:block}.contact-form label:not(.privacy-check)>span{display:inline}.honeypot[hidden]{display:none}
@media(max-width:850px){.wrap{width:min(calc(100% - 40px),var(--max))}.content-grid{grid-template-columns:1fr}.sidebar{position:static}.content .grid3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.wrap{width:min(calc(100% - 32px),var(--max))}.subhero{padding:70px 0}.subhero h1{font-size:clamp(2.65rem,10vw,4.1rem)}.content{padding:65px 0}.band .wrap{align-items:flex-start;flex-direction:column}.content .grid3{grid-template-columns:1fr}}
.link-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.link-grid a{display:flex;justify-content:space-between;align-items:center;gap:10px;background:#20272b;padding:22px;color:#e9ecea;font-weight:600;font-size:.9rem}.link-grid a:hover{background:#2b3539;color:var(--copper)}.link-grid svg{color:var(--copper);width:17px;height:17px}
@media(max-width:850px){.link-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.link-grid{grid-template-columns:1fr}}
.legacy-photo{margin-top:50px}.legacy-photo img{width:100%;height:420px;object-fit:cover;object-position:center}.project-list{display:grid;gap:26px}.project-card{display:grid;grid-template-columns:.9fr 1.1fr;background:#1d2529;border:1px solid var(--line)}.project-card>img{width:100%;height:100%;min-height:360px;object-fit:cover}.project-card>div{padding:38px}.project-card h2{font-size:2.25rem}.project-card p:not(.eyebrow){font-size:.95rem}.project-card .tag-list{margin-top:26px}
@media(max-width:850px){.project-card{grid-template-columns:1fr}.project-card>img{height:330px;min-height:0}.legacy-photo img{height:330px}}
@media(max-width:600px){.project-card>img{height:230px}.project-card>div{padding:25px}.project-card h2{font-size:1.9rem}.legacy-photo img{height:230px}}
.home-hero-image{background-image:url('assets/hero-main.jpg')}
.image-story-photo:has(.portrait-image){display:flex;align-items:flex-end;justify-content:center;background:radial-gradient(circle at 72% 30%,#645446 0,#2a3031 48%,#171d20 100%);overflow:hidden}
.image-story-photo .portrait-image{width:auto;max-width:100%;height:100%;object-fit:contain;object-position:bottom center}
.portrait-grid{display:grid;grid-template-columns:minmax(280px,.75fr) 1fr;gap:9%;align-items:center}
.portrait-frame{display:flex;align-items:flex-end;justify-content:center;min-height:520px;background:radial-gradient(circle at 70% 20%,#6b5849,#2a3031 50%,#171d20);overflow:hidden}
.portrait-frame img{width:auto;max-width:100%;height:520px;object-fit:contain;object-position:bottom center}
@media(max-width:850px){.portrait-grid{grid-template-columns:1fr;gap:30px}.portrait-frame{min-height:400px}.portrait-frame img{height:400px}}
@media(max-width:600px){.portrait-frame{min-height:320px}.portrait-frame img{height:320px}}
@media(max-width:600px){.legal-page h1{font-size:clamp(2rem,7.8vw,3rem);hyphens:auto;overflow-wrap:anywhere}}
.project-list,.project-card,.project-card>div{min-width:0}.project-card>div{overflow-wrap:anywhere}
@media(max-width:850px){.project-card{grid-template-columns:minmax(0,1fr)}}
@media(max-width:600px){.subhero h1,.page-hero h1,.content-grid h2,.image-story h2{hyphens:auto;overflow-wrap:anywhere}}
/* Ergänzungen: gemeinsame Portraitbreite, Erfahrung, Kundenstimmen. */
.image-story .image-story-copy{padding:0}.image-story .portrait-frame{min-width:0}
.experience-strip{border-block:1px solid var(--line);background:#171d20;padding:30px 0}.experience-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}.experience-grid>div{display:flex;flex-direction:column;gap:5px}.experience-grid strong{color:var(--copper);font-size:1.6rem;line-height:1.3}.experience-grid span{color:var(--muted);font-size:.85rem}
.reviews-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.review-card{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);padding:30px;min-width:0}.review-stars{color:var(--copper);letter-spacing:.1em;font-size:1.1rem}.review-card blockquote{margin:20px 0 28px;color:#e2e5e2;font-size:.97rem;white-space:pre-line;overflow-wrap:anywhere}.review-card footer{margin-top:auto;display:flex;flex-direction:column;gap:4px}.review-card footer strong{font-size:.95rem}.review-company{color:var(--copper);font-size:.88rem}.review-company a{text-decoration:underline;text-underline-offset:3px}.review-card footer>span:last-child,.review-card time{color:var(--muted);font-size:.76rem}.review-status{font-size:.8rem;margin:20px 0}.review-status:empty{margin:0 0 26px}.review-card a:hover{color:var(--text)}.related-links{display:grid;gap:9px;padding-left:20px}.related-links a{text-decoration:underline;text-underline-offset:3px}.content-grid article .mini-grid{margin:25px 0}.content-grid article .mini-grid p{font-size:.9rem}.content-grid .faq-list summary{font-size:1rem}.mini-grid h3{letter-spacing:-.01em}
@media(max-width:850px){.reviews-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.experience-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.reviews-grid{grid-template-columns:minmax(0,1fr)}.review-card{padding:25px}.experience-grid{gap:22px}.experience-grid strong{font-size:1.3rem}.portrait-grid>*{min-width:0}}
.review-actions{margin-top:28px}.industry-grid article h3{font-size:1.75rem}.footer-bottom>span:first-child{max-width:75ch}#ueber,#leistungen,#kontakt{scroll-margin-top:100px}
.content .sidebar a.btn,.content .sidebar a.btn:hover{color:#171717}

.review-card footer strong a{text-decoration:underline;text-underline-offset:3px}

/* Telefonnummer im Kopfbereich; bei schmalen Fenstern bleibt sie im mobilen Menü. */
.site-header nav .nav-phone{display:inline-flex;align-items:center;gap:8px;color:var(--text);font-weight:650;letter-spacing:.01em}.site-header nav .nav-phone-icon{width:17px;height:17px;flex:0 0 17px}.site-header nav .nav-phone:hover{color:var(--copper)}
@media(max-width:1120px){.site-header nav{display:none;position:absolute;left:0;right:0;top:100%;background:#141a1e;border-bottom:1px solid var(--line);padding:22px 20px 28px;box-shadow:0 16px 25px #0008}.site-header nav.open{display:flex;flex-direction:column;align-items:stretch}.site-header nav ul{display:flex;flex-direction:column;align-items:stretch;gap:0}.site-header nav li{border-bottom:1px solid #303b40}.site-header nav a{display:block;padding:12px 0;font-size:1rem}.site-header nav .nav-phone{border-bottom:1px solid #303b40}.site-header nav .nav-cta{display:flex;justify-content:center;margin-top:8px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;border:1px solid #506066;background:transparent;padding:10px}.menu-toggle span{width:100%;height:2px;background:var(--text)}}
.topic-links{display:flex;flex-wrap:wrap;gap:12px 26px;margin-top:22px}.project-card{scroll-margin-top:110px}.industry-grid .text-link{margin-top:auto}.section .two-col a:not(.button){color:var(--copper);text-decoration:underline;text-underline-offset:3px}

/* Header dimensions are defined once in the final responsive block. */

@media(max-width:1100px){.site-header nav{gap:12px}.site-header nav ul{gap:11px}}
@media(max-width:800px){}
@media(max-width:420px){}
/* Ratgeber – im bestehenden LOR-IT-Look */
.guide-hero{background:radial-gradient(ellipse at 75% 10%,rgba(190,127,72,.13),transparent 52%),linear-gradient(135deg,#11191d,#20292c);padding:84px 0 70px;border-bottom:1px solid var(--line)}
.guide-hero .eyebrow{margin-bottom:18px}.guide-hero h1{font-size:clamp(2.5rem,5vw,4.7rem);max-width:920px;line-height:1.1;margin-bottom:24px}
.guide-hero .lead{max-width:750px}.guide-kicker{display:flex;gap:14px;flex-wrap:wrap;align-items:center;color:#b8c0be;font-size:.87rem;margin-top:25px}
.guide-crumb{font-size:.83rem;color:#b1b7b7;margin:0 0 34px}.guide-crumb a{color:var(--copper)}
.guide-grid,.guide-home-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.guide-grid{padding:0 0 70px}.guide-card{background:#1a2226;border:1px solid #354046;padding:30px;display:flex;flex-direction:column;min-height:262px;transition:border-color .2s,transform .2s}
.guide-card:hover{border-color:var(--copper);transform:translateY(-3px)}.guide-card h2,.guide-card h3{font-size:1.43rem;line-height:1.3;margin:16px 0}.guide-card h2 a,.guide-card h3 a{color:var(--text)}.guide-card h2 a:hover,.guide-card h3 a:hover{color:var(--copper)}
.guide-card p{color:#bac1c1;line-height:1.7;flex:1}.guide-category{font-size:.75rem;color:var(--copper);font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.guide-card .text-link{margin-top:18px;align-self:flex-start}.guide-section-heading{padding:65px 0 32px;max-width:760px}.guide-section-heading h2{margin-bottom:10px}.guide-center{text-align:center;margin-top:35px}
.guide-article-wrap{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:74px;align-items:start;padding-top:62px;padding-bottom:80px}
.guide-article{max-width:780px}.guide-article h2{font-size:clamp(1.5rem,2.2vw,2.15rem);line-height:1.28;margin:42px 0 17px}.guide-article p{line-height:1.86;margin-bottom:19px;color:#d4dcdb;font-size:1.03rem}.guide-article ul{padding-left:24px;margin:16px 0 27px}.guide-article li{line-height:1.85;margin:5px 0;color:#d4dcdb}
.guide-article .guide-lead{font-size:1.15rem;color:#f1efeb;line-height:1.75;border-left:3px solid var(--copper);padding:4px 0 4px 20px;margin:0 0 36px}
.guide-side{position:sticky;top:115px;background:#1a2226;border:1px solid #354046;padding:24px}.guide-side h2{font-size:1.05rem;margin-bottom:16px}.guide-side a{display:block;color:#d8dfdf;font-size:.91rem;padding:9px 0;line-height:1.5}.guide-side a:hover{color:var(--copper)}
.guide-box{background:#202a2d;border-left:3px solid var(--copper);padding:24px 25px;margin:33px 0}.guide-box h2{font-size:1.3rem;margin-top:0}.guide-box p:last-child{margin-bottom:0}
.guide-sources{margin-top:52px;padding-top:24px;border-top:1px solid #354046}.guide-sources h2{font-size:1.35rem;margin-top:0}.guide-sources li{font-size:.9rem;overflow-wrap:anywhere}.guide-sources a{color:var(--copper);text-decoration:underline;text-underline-offset:3px}
.guide-cta{padding:38px;background:linear-gradient(135deg,#293033,#182124);border:1px solid #604d3b;margin:36px 0}.guide-cta h2{margin:0 0 12px;font-size:1.7rem}.guide-cta p{margin-bottom:24px}.guide-cta a{display:inline-block}
.guide-related{padding:62px 0;border-top:1px solid var(--line)}.guide-related h2{margin-bottom:26px}
@media(max-width:1100px){.guide-grid,.guide-home-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-article-wrap{grid-template-columns:minmax(0,1fr) 220px;gap:34px}}
@media(max-width:800px){.guide-hero{padding:57px 0 50px}.guide-grid,.guide-home-grid,.guide-article-wrap{grid-template-columns:1fr}.guide-side{position:static;order:-1}.guide-card{min-height:0}.guide-article-wrap{gap:30px;padding-top:36px;padding-bottom:55px}}

/* LOR-IT editorial media enhancement · 2026-11-03 */
.guide-card{padding:0;overflow:hidden;min-height:0}
.guide-card .guide-category,.guide-card h2,.guide-card h3,.guide-card p,.guide-card>.text-link{margin-left:26px;margin-right:26px}
.guide-card .guide-category{margin-top:23px;display:block}
.guide-card>.text-link{margin-bottom:28px}
.guide-card-photo{display:block;overflow:hidden;background:#222b2f;aspect-ratio:16/9}
.guide-card-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.guide-card:hover .guide-card-photo img{transform:scale(1.035)}
.guide-feature-image{margin:0 0 34px;overflow:hidden;background:#20282c;border:1px solid var(--line)}
.guide-feature-image img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.service-feature-image{margin:25px 0 5px;background:#192126;border:1px solid var(--line)}
.service-feature-image img{display:block;width:100%;max-height:380px;aspect-ratio:16/9;object-fit:cover}
.service-feature-image figcaption{padding:10px 15px;font-size:.78rem;color:#aab4b5;line-height:1.5;border-top:1px solid var(--line)}
.editorial-photo-strip{background:var(--bg);padding:0 0 24px}
.editorial-photo-strip img{width:100%;height:clamp(240px,34vw,430px);object-fit:cover;border:1px solid var(--line)}
.editorial-topic-icon{display:inline-flex;align-items:center;justify-content:center;width:43px;height:43px;color:var(--copper);border:1px solid #73563d;background:#2c2926;margin-bottom:14px}
.editorial-topic-icon svg{width:23px;height:23px}
@media(max-width:600px){.guide-card .guide-category,.guide-card h2,.guide-card h3,.guide-card p,.guide-card>.text-link{margin-left:20px;margin-right:20px}.guide-card-photo{aspect-ratio:16/10}.guide-feature-image{margin-bottom:25px}.service-feature-image img{max-height:255px}.editorial-photo-strip img{height:220px}}
@media(prefers-reduced-motion:reduce){.guide-card-photo img{transition:none}.guide-card:hover .guide-card-photo img{transform:none}}

/* LOR-IT: diskreter Instagram-Link im Footer */
.footer-grid .instagram-footer-link{display:inline-flex;align-items:center;gap:10px;margin-top:10px;padding:9px 13px;border:1px solid #79583e;color:#e2bf9c!important;font-weight:600;transition:border-color .2s,background .2s,color .2s}
.footer-grid .instagram-footer-link svg{width:18px;height:18px;flex:none}
.footer-grid .instagram-footer-link:hover,.footer-grid .instagram-footer-link:focus-visible{background:#3a2d25;border-color:var(--copper);color:#fff!important}

/* Review footer: accommodate verified original customer logo next to company */
.review-card footer .review-company-line{display:flex;align-items:center;gap:12px;justify-content:space-between;width:100%;min-width:0}
.review-card footer .review-company-line strong{min-width:0;overflow-wrap:anywhere}

@media(max-width:480px){}

/* Customer logos in authentic Google review cards */


@media(max-width:480px){}

/* Mobile Safari: Seiten-Navigation strikt im Dokumentfluss halten.
   Verhindert eine Überlagerung des abschließenden Kontakt-Banners. */
@media (max-width: 850px) {
  .content-grid { display: flex; flex-direction: column; align-items: stretch; gap: 28px; }
  .content-grid > * { width: 100%; min-width: 0; }
  .content-grid .sidebar { position: static !important; inset: auto !important; top: auto !important; transform: none !important; align-self: stretch; margin: 0; }
  .content:has(.content-grid) { display: flow-root; }
  .content + .band { position: relative; z-index: 0; clear: both; }
  .band .wrap { min-width: 0; }
  .band h2, .band p { overflow-wrap: anywhere; }
}

/* Review: verified practice identity; neutral wordmark until official logo file is available */

@media(max-width:480px){}

.review-card footer .review-company-logo{display:block;flex:0 0 auto;width:auto;height:auto;object-fit:contain;vertical-align:middle}
.review-card footer .review-company-logo--goldschmiede{width:44px;height:44px;max-width:44px;max-height:44px;object-fit:cover;border-radius:5px}
.review-card footer .review-company-logo--jeggle{width:96px;max-width:96px;max-height:38px;object-fit:contain;background:#f5f5f0;padding:4px 6px;border-radius:4px}
.review-card footer .review-company-logo--zahn{width:180px;max-width:180px;max-height:52px;object-fit:contain;background:#f5f5f0;padding:6px 8px;border-radius:4px;box-sizing:border-box}
@media(max-width:480px){.review-card footer .review-company-logo--goldschmiede{width:40px;height:40px}.review-card footer .review-company-logo--jeggle{width:82px;max-width:82px;max-height:32px;padding:3px 5px}.review-card footer .review-company-logo--zahn{width:140px;max-width:140px;max-height:44px;padding:5px 6px}}

/* V1.4 – gezielter UI- und Conversion-Feinschliff */
:where(a,button,input,textarea,select,summary):focus-visible{outline:2px solid var(--copper);outline-offset:4px}
:where(a,button){-webkit-tap-highlight-color:rgba(213,164,116,.22)}
.project-service-link{display:inline-flex;align-items:center;gap:8px;margin-top:22px;color:var(--copper);font-size:.92rem;font-weight:650;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.project-service-link:hover{color:var(--text)}
.review-card{transition:border-color .2s ease}
.review-card:hover{border-color:#685543}
.review-card footer .review-company-line{gap:14px}
.review-card footer .review-company-line strong{flex:1 1 auto;min-width:0;line-height:1.4}
.review-card footer .review-company-logo{flex-shrink:0}
.guide-card:focus-within{border-color:var(--copper)}
@media(max-width:600px){
  .section-heading{margin-bottom:32px}
  .project-card>div{padding:26px 23px}
  .project-card h2{font-size:clamp(1.52rem,6vw,1.92rem);line-height:1.22}
  .review-card{padding:24px 21px}
  .review-card footer .review-company-line{gap:10px}
  .review-card footer .review-company-logo--zahn{width:118px;max-width:118px;max-height:46px}
  .review-card footer .review-company-logo--jeggle{width:76px;max-width:76px}
  .guide-article p{line-height:1.75}
  .contact-banner-inner{gap:24px}
  .contact-banner h2{overflow-wrap:break-word}
  .content-grid .sidebar{position:static!important;z-index:auto!important}
}
@media(prefers-reduced-motion:reduce){.review-card{transition:none}}

/* V1.7: genuine practice photography and project references */
.project-card > .project-media{min-width:0;align-self:stretch;display:flex;flex-direction:column;background:#151d21}
.project-media-main{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}
.project-media-thumbs{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:8px 8px 0}
.project-media-thumbs img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;min-width:0}
.project-photo-caption{padding:10px 12px 14px;margin:0;color:#b7c1c2;font-size:.79rem;line-height:1.5}
.project-detail-list{padding-left:20px;margin:15px 0 20px;line-height:1.65}
.project-detail-list li+li{margin-top:9px}
.project-related{display:flex;flex-wrap:wrap;gap:4px 20px;align-items:center}
.project-client{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin:19px 0 5px}
.project-client img{max-width:180px;width:180px;height:auto;max-height:70px;object-fit:contain;background:#f5f5f0;padding:9px 12px;border-radius:5px;box-sizing:border-box}
.project-client a,.project-review-link a{color:var(--copper);text-decoration:underline;text-underline-offset:3px}
.home-project-photo{display:block;width:100%;height:155px;object-fit:cover;object-position:center;margin:0 0 18px;border-radius:4px}
@media(max-width:850px){.project-card>.project-media{width:100%}.project-media-main{max-height:370px}.project-photo-caption{padding-bottom:15px}}
@media(max-width:600px){.project-media-main{aspect-ratio:16/10}.project-media-thumbs img{aspect-ratio:4/3}.project-detail-list{padding-left:18px}.project-related{gap:0 15px}.project-client img{width:155px}}

/* Ensure photo collage stays edge-to-edge inside project card */
.project-card > .project-media{padding:0}
.project-card .project-photo-caption{font-size:.79rem}

/* V1.8: unified references and accessible client-logo links */
.project-card>.project-media{min-width:0;overflow:hidden;padding:0}
.project-card>.project-content{min-width:0;padding:38px}
.project-card>.project-media .project-media-main{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;display:block}
.project-card>.project-media .project-media-thumbs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:8px}
.project-card>.project-media .project-media-thumbs img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.home-reference-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.home-reference-grid article{min-width:0;padding:25px;align-items:stretch}
.home-reference-photo-link{display:block;width:100%;margin-bottom:17px;overflow:hidden;border-radius:4px}
.home-reference-grid .home-project-photo{display:block;width:100%;height:220px;object-fit:cover;margin:0;border-radius:4px}
.home-reference-eyebrow{margin:0 0 12px;font-size:.73rem;color:var(--copper)}
.home-reference-grid article h3{margin-top:0;line-height:1.25}
.home-reference-grid article>.text-link{margin-top:auto;padding-top:12px}
.review-card footer .review-logo-link{display:flex;align-items:center;justify-content:center;width:180px;height:58px;max-width:100%;box-sizing:border-box;padding:6px 8px;border-radius:5px;background:#f5f5f0;transition:box-shadow .2s ease}
.review-card footer .review-logo-link:hover{box-shadow:0 0 0 2px var(--copper)}
.review-card footer .review-logo-link:focus-visible,.home-reference-photo-link:focus-visible{outline:3px solid var(--copper);outline-offset:3px}
.review-card footer .review-logo-link img.review-company-logo{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;background:transparent;padding:0;border-radius:0;box-sizing:border-box}
@media(max-width:850px){.home-reference-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-card>.project-content{padding:30px}}
@media(max-width:600px){.home-reference-grid{grid-template-columns:1fr}.home-reference-grid .home-project-photo{height:190px}.home-reference-grid article{padding:22px}.project-card>.project-content{padding:25px}.review-card footer .review-logo-link{width:160px;height:54px}}


/* ================================================================
   LOR-IT | V2.1 LIGHT – eigenstaendiger Designentwurf
   Non-destructive override over the original V2.1 stylesheet.
   Layout/semantics, pages, SEO, PHP and Javascript remain intact.
   ================================================================ */
:root{color-scheme:light;--bg:#faf9f6;--bg2:#f1f0eb;--surface:#fff;--surface2:#f6f4ef;--line:#dfddd6;--text:#202a2c;--muted:#536164;--copper:#986139;--copper2:#80502d;--max:1240px;--radius:5px}
html{background:#faf9f6}body{background:var(--bg);color:var(--text);line-height:1.68}
h1,h2,h3{letter-spacing:-.025em;color:var(--text)}h1{font-size:clamp(2.8rem,5.1vw,5.1rem);line-height:1.1;font-weight:650}h2{font-size:clamp(2rem,3.45vw,3.25rem);font-weight:630;line-height:1.2}h3{font-weight:650}p{color:var(--muted)}
.eyebrow{color:var(--copper2);font-size:.76rem;letter-spacing:.115em;margin-bottom:16px}.lead{color:#48575a}
.topline{background:#f0eee9;color:#4e5b5c;border-bottom:1px solid #e3e1d9;letter-spacing:.025em}
.site-header{background:rgba(255,255,254,.97);border-bottom:1px solid #e4e1da;backdrop-filter:blur(12px);box-shadow:0 3px 14px rgba(19,28,27,.035)}
.site-header .brand img{height:auto}.site-header nav a{color:#344145;font-weight:600;font-size:.83rem}.site-header nav a:hover,.site-header nav a[aria-current="page"]{color:#865432}
.site-header nav .nav-cta{border:1px solid #9b6843;background:#fff;color:#714628;border-radius:4px}
.nav-phone{color:#3b4748!important}
.button{background:#986139;border-color:#986139;color:#fff;border-radius:4px;transition:background .2s,border-color .2s;box-shadow:none}.button:hover{background:#774728;border-color:#774728;transform:none;color:#fff}
.button-outline{background:transparent;color:#3b4345;border-color:#aaa69d}.button-outline:hover{background:#edeae3;color:#202a2c;border-color:#8e8c86}
.text-link{color:#81502b}.text-link:hover{color:#5f371d}
.section{padding:88px 0}.section-heading{margin-bottom:37px}.subtle{background:#f1f0eb}
/* Editorial opening: light information area and a single authentic image */
.home-hero{min-height:615px;background:#f9f8f5;overflow:hidden}
.home-hero-image{inset:0 0 0 auto;width:47%;background-image:url('assets/hero-main.jpg');background-size:cover;background-position:center;z-index:-2}
.home-hero:before{background:linear-gradient(90deg,#faf9f6 0%,#faf9f6 46%,rgba(250,249,246,.96) 53%,rgba(250,249,246,.1) 73%,rgba(250,249,246,0) 100%);z-index:-1}
.home-hero-inner{padding:83px 0 78px}.home-hero h1{max-width:735px;margin-bottom:22px}.home-hero h1 span{color:#986139}.home-hero .lead{max-width:670px;margin-bottom:30px;font-size:clamp(1rem,1.4vw,1.17rem);color:#455456}
.hero-facts{color:#435255;margin-top:49px;gap:18px 27px;font-size:.82rem}.hero-facts svg{color:#986139}
.experience-strip{background:#263438!important;color:#fff;border-color:#263438!important}.experience-strip strong{color:#f5f1e9!important}.experience-strip span{color:#dce1df!important}
.intro-section{background:#f0eee8;border-top:1px solid #e6e2da;border-bottom:1px solid #e5e1d9}.intro-grid{padding:66px 0;gap:7%}.intro-grid>p{margin:12px 0 0;color:#4f5b5d}
/* Less startup-style identical tile blocks; refined editorial service list */
.service-grid{gap:0;grid-template-columns:repeat(3,minmax(0,1fr));border:0;background:transparent;column-gap:32px;row-gap:0}
.service-card{background:transparent;border-top:1px solid #d6d1c7;padding:29px 6px 34px 0;min-height:235px}.service-card:hover{background:transparent;border-top-color:#a16d49}
.service-icon,.detail-icon{background:#eee6dc;color:#85542f;border:1px solid #e5d4c1;border-radius:4px;margin-bottom:21px}
.service-card h3{font-size:1.27rem}.service-card p{color:#566163}.service-card .text-link{margin-top:auto}
.image-story{background:#f0f1ec}.image-story-copy{padding:80px 0}.image-story-copy p{color:#4a595c}.check-list li{color:#48565a}.check-list li:before{color:#94623a}
.offer-grid{gap:22px}.offer-panel{background:#fff;border:1px solid #dfdcd4;border-top:3px solid #95633c;padding:35px;min-height:305px}.offer-number{color:#dad6cf;font-size:2.4rem}.offer-price{color:#84512d}
.steps{border-color:#d7d4cc}.steps>div{border-color:#d7d4cc}.steps span{color:#86532d}
.contact-banner{background:#28363a;border-color:#28363a}.contact-banner h2,.contact-banner .eyebrow{color:#fff}.contact-banner p{color:#dce3e2}.contact-banner .button{background:#e0ab79;border-color:#e0ab79;color:#1c2829}.contact-banner .button:hover{background:#f0bf8f;border-color:#f0bf8f;color:#1c2829}
.site-footer{background:#1b272a;color:#f4f3ed}.site-footer p,.site-footer h2{color:#dddeda}.footer-grid a:not(.brand),.footer-grid span{color:#d0d9d8}.footer-bottom{border-color:#495357;color:#bfc8c8}.footer-grid .instagram-footer-link{border-color:#8c7564}
/* Internal page mastheads retain their photograph, without opaque darkness */
.page-hero{background:#efeee9;min-height:400px}.page-hero:before{background:linear-gradient(90deg,#f8f7f3 0%,rgba(248,247,243,.98) 47%,rgba(248,247,243,.55) 74%,rgba(248,247,243,.18) 100%)}.page-hero-inner{padding:75px 0}.page-hero h1{font-size:clamp(2.65rem,4.5vw,4.45rem);max-width:790px}.page-hero .lead{color:#405053}
.detail-list,.detail-row{border-color:#dcd9d1}.tag-list li{color:#4d5b5d;border-color:#c9c6be;background:#fff}
.mini-grid>div{background:#fff;border-color:#dfdcd4}.price-card{background:#fff;border-color:#dedbd5}.price-card.featured{background:#f7f1e9;border-color:#ac805c}.price{color:#86532f}.price small{color:#556263}.price-badge{color:#fff;background:#83512d}
.package-note,.boundary-box{background:#f3f0ea;color:#4a5859}
/* Project images and named client references should lead visually */
.project-card,.review-card,.guide-card,.home-reference-grid article{background:#fff!important;border-color:#dedbd3!important;box-shadow:none!important}
.project-card>.project-media{background:#eeeae3}.project-card>.project-content{padding:35px}.project-photo-caption{color:#536061;background:#f3f1eb}
.project-client img{background:#fff}.home-reference-grid article{padding:17px!important}.home-reference-grid .home-project-photo{height:245px}.home-reference-grid article h3,.home-reference-grid article p,.home-reference-grid article .home-reference-eyebrow,.home-reference-grid article>.text-link{margin-left:10px;margin-right:10px}
.review-card footer .review-logo-link:hover{box-shadow:0 0 0 2px #986139}
.guide-hero{background:#efeee9!important}.guide-card-photo,.guide-feature-image,.service-feature-image{background:#edeae2;border-color:#dfdcd4}.guide-card .guide-category{color:#82522f}.guide-cta{background:#f0ede7!important;border-color:#dfd6ca!important}
.editorial-photo-strip{background:#faf9f6}.editorial-topic-icon{color:#84512f;border-color:#c5b7a6}
/* Accessible fields and all content panels */
input,textarea,select{color:#202a2c;background:#fff;border-color:#b9b9b0}input::placeholder,textarea::placeholder{color:#647173}
:where(.faq-list,.faq-section) details{border-color:#d8d5cc!important}.faq-list summary,.faq-section summary{color:#28383a}
:where(.industry-grid,.mini-grid,.reference-grid,.review-grid,.project-grid,.guide-home-grid,.guide-grid) article{border-color:#ddd9d1}
:focus-visible{outline-color:#986139}
/* older editorial/detail layouts use their own selectors */
.subhero{background:#efeee9!important;color:#202a2c!important}.subhero h1,.subhero p{color:#202a2c!important}.content{background:#faf9f6!important;color:#202a2c}.content p,.content li{color:#4b585a}.content .sidebar,.sidebar{background:#fff!important;border-color:#dfddd6!important;color:#28383a}.band{background:#28363a!important;color:#fff}.band h2,.band p{color:#fff!important}
/* Tone down repeated ornamental shadows/glow */
:is(.service-card,.guide-card,.project-card,.price-card,.review-card,.offer-panel):hover{transform:none;box-shadow:none}
@media(max-width:1100px){.service-grid{column-gap:20px}.home-hero-image{width:44%}.home-hero:before{background:linear-gradient(90deg,#faf9f6 0%,#faf9f6 48%,rgba(250,249,246,.91) 61%,rgba(250,249,246,.12) 100%)}}
@media(max-width:820px){.home-hero{min-height:0}.home-hero-image{display:none}.home-hero:before{background:none}.home-hero-inner{padding:65px 0 55px}.home-hero h1{max-width:100%}.hero-facts{margin-top:35px}.page-hero:before{background:linear-gradient(90deg,rgba(250,249,246,.98),rgba(250,249,246,.88))}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section{padding:68px 0}.site-header nav{background:#fff!important;color:#253134;border-color:#dedbd3!important}.site-header nav a{color:#28383a!important}.site-header nav .nav-cta{color:#754629!important}.menu-toggle{border-color:#d3cfc7!important;background:transparent!important}.menu-toggle span{background:#293638!important}}
@media(max-width:600px){.container{width:min(calc(100% - 36px),var(--max))}.topline{height:auto;min-height:34px}.topline .container{gap:8px;flex-wrap:wrap;padding-block:7px}.home-hero-inner{padding:51px 0 45px}.home-hero h1{font-size:clamp(2.45rem,10vw,3.4rem)}.home-hero .lead{font-size:1.03rem}.hero-facts{gap:10px 22px}.section{padding:54px 0}.service-grid{grid-template-columns:1fr}.service-card{padding:24px 0 28px;min-height:0}.offer-panel{padding:29px 24px}.page-hero{min-height:310px}.page-hero-inner{padding:57px 0}.page-hero h1{font-size:clamp(2.25rem,9vw,3.25rem)}.intro-grid{padding:52px 0}.contact-banner-inner{padding:52px 0}.home-reference-grid .home-project-photo{height:200px}.project-card>.project-content{padding:23px}.detail-row h2{font-size:2rem}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}


/* V2.1 Light: Kundenbewertungen – ausreichender Kontrast auf hellen Karten.
   In der Dark-Version war die Zitatfarbe fest auf fast Weiss gesetzt. */
.review-card blockquote { color:#344144; }
.review-card footer strong,
.review-card footer strong a { color:#202a2c; }
.review-card footer>span:last-child,
.review-card time { color:#536164; }
.review-card .review-company { color:#80502d; }
.review-card .review-stars { color:#986139; }

/* ================================================================
   LOR-IT Light — Review correction pack 2026-11-08
   01/02: copper line icons without dark tile backgrounds
   03: project photo gallery natural height instead of empty stretched rail
   04: guide articles, overview and modules contrast
   05: dark service masthead contrast
   ================================================================ */
/* The same icon component is used on the home industry cards and on
   the six IT flat-rate add-on modules. Keep SVG line art and spacing. */
.industry-grid .editorial-topic-icon,
.mini-grid .editorial-topic-icon {
  width:43px;height:43px;
  border:0;background:transparent;
  color:#87512d;
  justify-content:flex-start;
  margin-bottom:13px;
}
.industry-grid .editorial-topic-icon svg,
.mini-grid .editorial-topic-icon svg {width:29px;height:29px;stroke-width:1.75}
/* Remove beige full-height rail, retain the original photo collage. */
.project-card > .project-media.project-media--praxis {
  align-self:start;
  height:auto;
  background:transparent;
}
.project-card > .project-media.project-media--praxis .project-photo-caption {
  background:#f3f1eb;
  color:#445356;
}
/* Dark mastheads are intentionally retained as a deliberate contrast
   to the bright body. Always use light type *inside* the masthead. */
.page-hero {
  background:#21292c;
  color:#f7f6f2;
}
.page-hero::before {
  background:linear-gradient(90deg,rgba(20,27,30,.97) 0%,rgba(20,27,30,.92) 44%,rgba(20,27,30,.62) 78%,rgba(20,27,30,.48) 100%);
}
.page-hero h1,.page-hero h2,.page-hero h3 {color:#f7f6f2}
.page-hero .lead,.page-hero p:not(.eyebrow) {color:#dce4e2}
.page-hero .eyebrow {color:#dfa875}
.page-hero .button-outline {color:#f7f6f2;border-color:#c4cbca}
.page-hero .button-outline:hover {color:#202a2c;background:#f5f2ed}
/* Ratgeber hero itself uses a light surface, not the dark service masthead. */
.guide-hero h1,.guide-hero h2,.guide-hero h3 {color:#202a2c}
.guide-hero .lead,.guide-hero p:not(.eyebrow) {color:#455558}
.guide-hero .guide-kicker,.guide-crumb {color:#4b5a5e}
.guide-hero .eyebrow,.guide-hero .guide-category {color:#80502d}
.guide-article,.guide-article h2,.guide-article h3 {color:#202a2c}
.guide-article p,.guide-article li {color:#455457}
.guide-article .guide-lead {color:#29393b}
.guide-card p,.guide-home-grid .guide-card p {color:#49585b}
.guide-card h2,.guide-card h3,.guide-card h2 a,.guide-card h3 a {color:#202a2c}
.guide-side {background:#fff;border-color:#dedbd3}
.guide-side h2 {color:#233134}
.guide-side a {color:#34474b}
.guide-side a:hover,.guide-side a:focus-visible {color:#80502d}
.guide-box {background:#f0eee8;border-left-color:#986139}
.guide-box h2,.guide-box h3 {color:#243234}
.guide-box p,.guide-box li {color:#455457}
.guide-sources {border-color:#dedbd3}
.guide-sources a {color:#80502d}
.guide-cta {background:#f0ede7!important;border-color:#d8cabc!important}
.guide-cta h2,.guide-cta h3 {color:#202a2c}
.guide-cta p,.guide-cta li {color:#455457}
.guide-related h2,.guide-section-heading h2 {color:#202a2c}
/* Responsive corrections: service masthead remains dark on mobile. */
@media(max-width:820px){
  .page-hero::before{background:linear-gradient(90deg,rgba(20,27,30,.97),rgba(20,27,30,.86))}
}


/* ================================================================
   LOR-IT Light V2.3 – page-wide visual consistency / contrast
   Correct shared service subhero (13 pages), remaining legacy dark
   styles on light content and responsive navigation.
   ================================================================ */
/* Older service detail pages use .subhero rather than .page-hero.
   Preserve the intentional dark masthead, with legible light text. */
.subhero {
  background:#202a2d url("assets/hero.jpg") center / cover no-repeat !important;
  color:#f7f6f2 !important;
}
.subhero::before {
  background:linear-gradient(90deg,rgba(17,25,29,.97) 0%,rgba(17,25,29,.91) 57%,rgba(17,25,29,.69) 100%);
}
.subhero h1,.subhero h2,.subhero h3 {color:#f7f6f2 !important;}
.subhero p {color:#dee5e4 !important;}
.subhero .eyebrow {color:#e3ad7b !important;}
.subhero .btn {background:#c58b5c;color:#172326;border:1px solid #c58b5c;}
.subhero .btn:hover {background:#e0aa7d;color:#172326;border-color:#e0aa7d;}
.subhero .btn-alt {background:transparent;color:#f7f6f2;border:1px solid #b9c4c4;}
.subhero .btn-alt:hover {background:#f7f6f2;color:#1f2b2d;border-color:#f7f6f2;}
/* Shared service detail content is on a light background. */
.content .tile {background:#fff;border-color:#dedbd3;}
.content .tile h3,.content-grid h2,.content-grid h3 {color:#202a2c;}
.content .tile p,.content-grid article p,.content-grid li {color:#455558;}
.content .sidebar a:not(.btn),.sidebar a:not(.btn) {color:#34474b;}
.content .sidebar a:not(.btn):hover,.sidebar a:not(.btn):hover {color:#80502d;}
.content .sidebar strong,.sidebar strong {color:#80502d;}
.sidebar .btn {background:#986139;color:#fff !important;}
.sidebar .btn:hover {background:#774728;color:#fff !important;}
/* Avoid low-contrast privacy confirmation inherited from dark theme. */
.contact-form .privacy-check span {color:#edf0ee !important;}
.contact-form .privacy-check a {color:#e3ad7b;}
/* Legal pages, guidance and section navigation. */
.legal-page h1,.legal-copy h2,.legal-copy h3 {color:#202a2c;}
.legal-copy p,.legal-copy li {color:#455558;}
.legal-copy a {color:#80502d;}
.link-grid {background:#384549;border-color:#384549;}
.link-grid a {background:#202a2d;color:#f7f6f2;}
.link-grid a:hover {background:#354144;color:#f3b47e;}
.link-grid svg {color:#dfa875;}
/* Shared dark component contrast remains correct in every layout. */
.band h2,.band h3,.band p {color:#f7f6f2 !important;}
.band .btn {color:#182425;}
.band .btn:hover {background:#e0aa7d;color:#182425;}
.site-footer h2,.site-footer h3 {color:#f7f6f2;}
/* Inline editorial imagery should not stretch or inherit a dark rail. */
.project-card>.project-media.project-media--praxis {align-self:start;}
@media(max-width:1120px) {
  .site-header nav {background:#fff;border-color:#dedbd3;box-shadow:0 14px 25px rgba(23,34,36,.13);}
  .site-header nav li,.site-header nav .nav-phone {border-color:#e4e0d7;}
  .site-header nav a {color:#28383a;}
  .site-header nav .nav-cta {color:#754629;}
}
@media(max-width:600px) {
  .subhero::before {background:linear-gradient(90deg,rgba(17,25,29,.97),rgba(17,25,29,.88));}
  .subhero .actions {display:flex;flex-wrap:wrap;gap:10px;}
  .subhero .actions .btn {margin-right:0;}
}

/* Match the deliberate dark contact form with accessible labels and fields. */
.contact-form {background:#28363a;border-color:#566367;}
.contact-form label:not(.privacy-check),.contact-form .form-privacy {color:#e6edeb;}
.contact-form input:not([type="checkbox"]),.contact-form select,.contact-form textarea {
  background:#fff;color:#202a2c;border-color:#aeb9b7;
}
.contact-form input::placeholder,.contact-form textarea::placeholder {color:#5e696b;}
.contact-form .privacy-check input {accent-color:#c58b5c;}


/* ================================================================
   LOR-IT | V2.4 LIGHT | Warm & Professional
   Unified warm surfaces, quieter masthead/header and visible mobile
   hero photography. Previous content, HTML and backend stay intact.
   ================================================================ */
:root {
  --bg:#faf9f6;
  --bg2:#f0efeb;
  --surface:#ffffff;
  --surface2:#f5f3ee;
  --line:#e0ddd6;
  --text:#222b2e;
  --muted:#4f5c5f;
  --copper:#986139;
  --copper2:#80502d;
  color-scheme:light;
}
html,body {background:#faf9f6;color:var(--text)}
/* Unify the two navigation bands instead of stacking different gray tones. */
.topline {background:#faf9f6;color:#536064;border-bottom:1px solid #ece9e2}
.site-header {background:rgba(250,249,246,.98);border-bottom:1px solid #e5e1da;box-shadow:0 3px 12px rgba(30,40,38,.025)}
.site-header nav a {color:#2e3a3d}
.site-header nav .nav-cta {background:transparent;border-color:#a77c5d;color:#744829}
/* Restrained section palette: just warm-white and soft neutral gray. */
.subtle,.intro-section {background:#f0efeb}
.intro-section {border-top-color:#e3e0d9;border-bottom-color:#e3e0d9}
.section,.services-section,.editorial-photo-strip {background-color:#faf9f6}
.section.subtle {background-color:#f0efeb}
.service-card,.service-card:hover {background:transparent}
.mini-grid>div,.price-card,.offer-panel,.project-card,.review-card,.guide-card,.home-reference-grid article {
  background:#fff!important;
  border-color:#e0ddd6!important;
}
.project-photo-caption,.guide-box,.package-note,.boundary-box,.guide-cta {background-color:#f0efeb!important}
/* Maintain intentional high-contrast charcoal sections, but one charcoal. */
.experience-strip,.contact-banner,.band {background:#263438!important}
.contact-banner,.band {border-color:#263438!important}
.site-footer {background:#222d30}
.page-hero,.subhero {background-color:#263438}
/* Increase detail and visibility in desktop hero photography on the image side. */
.home-hero {background:#faf9f6}
.home-hero:before {
  background:linear-gradient(90deg,#faf9f6 0%,#faf9f6 42%,rgba(250,249,246,.96) 49%,rgba(250,249,246,.06) 70%,rgba(250,249,246,0) 100%);
}
.page-hero:before {
  background:linear-gradient(90deg,rgba(20,27,30,.96) 0%,rgba(20,27,30,.89) 42%,rgba(20,27,30,.42) 76%,rgba(20,27,30,.26) 100%);
}
.subhero::before {
  background:linear-gradient(90deg,rgba(17,25,29,.97) 0%,rgba(17,25,29,.89) 50%,rgba(17,25,29,.43) 100%);
}
.page-hero h1,.page-hero h2,.page-hero h3,.subhero h1,.subhero h2,.subhero h3 {color:#f7f6f2!important}
.page-hero .lead,.page-hero p:not(.eyebrow),.subhero p {color:#e0e7e5!important}
/* Mobile: display the actual home image instead of hiding it.
   The photo is in its own band, never overlaid by dark lettering. */
@media(max-width:820px) {
  .home-hero {display:flex;flex-direction:column;align-items:stretch;min-height:0;overflow:hidden}
  .home-hero:before {display:none}
  .home-hero-inner {order:1;position:relative;z-index:1;padding:58px 0 45px}
  .home-hero-image {
    display:block;position:relative;inset:auto;order:2;z-index:0;
    flex:none;width:100%;height:clamp(210px,55vw,330px);
    background-image:url('assets/hero-main.jpg');
    background-position:50% 55%;background-size:cover;
  }
  /* Shared image-based internal hero: separate image from dark text field. */
  .page-hero {display:flex;flex-direction:column;align-items:stretch;min-height:0;background:#263438}
  .page-hero:before {display:none}
  .page-hero-inner {position:relative;order:1;z-index:1;padding:65px 0 55px}
  .page-hero-image {
    display:block;position:relative;order:2;inset:auto;z-index:0;
    width:100%;height:clamp(170px,49vw,280px);
    background-size:cover;background-position:50% 48%;
  }
  /* The 13 .subhero pages have their photo as a CSS background instead
     of an image div. Reserve an image-visible lower band below the text. */
  .subhero {
    position:relative;
    padding:62px 0 215px;
    background-image:url('assets/hero.jpg')!important;
    background-size:auto 100%!important;
    background-position:center bottom!important;
    background-repeat:no-repeat!important;
  }
  .subhero::before {
    background:linear-gradient(to bottom,#202a2d 0%,rgba(25,34,37,.98) 56%,rgba(25,34,37,.91) 65%,rgba(25,34,37,.12) 87%,rgba(25,34,37,.04) 100%);
  }
}
@media(max-width:600px) {
  .home-hero-inner {padding:48px 0 39px}
  .home-hero-image {height:clamp(210px,62vw,290px);background-position:55% 54%}
  .page-hero-inner {padding:50px 0 44px}
  .page-hero-image {height:clamp(185px,53vw,250px)}
  .subhero {padding:51px 0 210px}
  .subhero::before {background:linear-gradient(to bottom,#202a2d 0%,rgba(25,34,37,.98) 53%,rgba(25,34,37,.88) 65%,rgba(25,34,37,.10) 88%,rgba(25,34,37,.02) 100%)}
  .site-header nav {background:#faf9f6!important}
}

/* V2.4: desktop-only fixed quick contacts, unobtrusive and accessible */
.lorenz-quick-contact{position:fixed;left:0;top:48%;transform:translateY(-50%);z-index:85;display:flex;flex-direction:column;gap:7px}
.lorenz-quick-contact a{width:49px;height:49px;display:flex;align-items:center;justify-content:center;background:#263438;color:#fff;border:1px solid #657076;border-left:0;border-radius:0 5px 5px 0;box-shadow:0 4px 16px rgba(17,24,26,.17);transition:width .2s,background .2s}
.lorenz-quick-contact a:hover,.lorenz-quick-contact a:focus-visible{width:55px;background:#986139;color:#fff}
.lorenz-quick-contact svg{width:23px;height:23px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:1120px),(pointer:coarse){.lorenz-quick-contact{display:none!important}}
@media print{.lorenz-quick-contact{display:none!important}}
/* Restore clear button contrast in dark heroes including secondary buttons. */
.page-hero .button-outline,.subhero .btn-alt{color:#f8f7f4!important;border-color:#cbd2d0!important;background:rgba(19,29,32,.18)!important}
.page-hero .button-outline:hover,.subhero .btn-alt:hover{background:#f8f7f4!important;color:#243033!important}
/* Make the photo in each inner-page hero clear on phones, without lowering title contrast. */
@media(max-width:820px){
 .home-hero-image{display:block!important;visibility:visible!important;opacity:1!important}
 .page-hero-image{display:block!important;visibility:visible!important;opacity:1!important}
 .subhero{background-size:cover!important;background-position:center bottom!important}
}


/* ===============================================================
   LOR-IT Light V2.5 — consistent white masthead and layered
   mobile hero imagery. Overrides the V2.4 separated image layout.
   =============================================================== */
/* The original header-logo asset has a white raster background.
   Match its surrounding header exactly rather than using off-white. */
.site-header {background:#fff!important;border-bottom:1px solid #e7e3dc;}
.site-header .nav-wrap {background:#fff;}
.site-header .brand {background:#fff;}
.site-header nav {background:#fff;}
.site-header nav a {color:#2e3a3d;}
.site-header nav a:hover,.site-header nav a[aria-current="page"]{color:#80502d;}
/* Copper quick-contact controls retain legible white pictograms. */
.lorenz-quick-contact a,
.lorenz-quick-contact a:hover,
.lorenz-quick-contact a:focus-visible {
  background:#986139!important;color:#fff!important;
  border-color:#986139!important;
}
.lorenz-quick-contact a:hover,
.lorenz-quick-contact a:focus-visible {background:#80502d!important;border-color:#80502d!important;}
.lorenz-quick-contact svg{stroke:#fff!important;}
@media(max-width:850px){
  .site-header nav,.site-header nav.open{background:#fff!important;}
  .site-header .menu-toggle{background:transparent;}
}
/* Keep photographs as a true background layer BEHIND the headings,
   on every mobile hero type. No appended image blocks. */
@media(max-width:820px){
  .home-hero,.page-hero {
    position:relative;display:flex;flex-direction:row;align-items:center;
    min-height:clamp(490px,92vw,670px);overflow:hidden;isolation:isolate;
    background:#253135;
  }
  .home-hero-image,.page-hero-image {
    display:block!important;position:absolute!important;
    inset:0!important;order:initial!important;z-index:-2!important;
    width:100%!important;height:100%!important;
    opacity:1!important;visibility:visible!important;
    background-size:cover!important;
    background-position:58% center!important;
  }
  .home-hero:before,.page-hero:before{
    content:"";display:block!important;position:absolute;inset:0;
    z-index:-1!important;
    /* Photo stays visible; darkening is strongest behind copy. */
    background:linear-gradient(90deg,rgba(18,27,31,.79) 0%,rgba(18,27,31,.64) 56%,rgba(18,27,31,.35) 100%)!important;
  }
  .home-hero-inner,.page-hero-inner{
    position:relative;z-index:1;order:initial!important;
    padding:68px 0 62px!important;
  }
  .home-hero h1,.page-hero h1 {color:#fff!important;text-shadow:0 1px 3px rgba(0,0,0,.20);}
  .home-hero .lead,.page-hero .lead,.home-hero .hero-facts {color:#f2f3f1!important;}
  .home-hero .eyebrow,.page-hero .eyebrow {color:#e5b38b!important;}
  .home-hero h1 span {color:#e8b78c!important;}
  .home-hero .button-outline,.page-hero .button-outline {
    color:#fff!important;border-color:#e2e7e4!important;
    background:rgba(19,29,32,.28)!important;
  }
  .home-hero .button-outline:hover,.page-hero .button-outline:hover {
    background:#fff!important;color:#243033!important;
  }
  /* .subhero pages use the actual image as a background on the hero itself. */
  .subhero{
    position:relative;isolation:isolate;min-height:440px;
    padding:70px 0!important;
    background:#263438 url('assets/hero.jpg') center/cover no-repeat!important;
  }
  .subhero::before{
    content:"";position:absolute;inset:0;z-index:-1;
    background:linear-gradient(90deg,rgba(18,27,31,.78),rgba(18,27,31,.46))!important;
  }
  .subhero h1,.subhero h2,.subhero h3{color:#fff!important;}
  .subhero p{color:#f0f2ef!important;}
  .subhero .eyebrow{color:#e6b38b!important;}
}
@media(max-width:600px){
  .home-hero,.page-hero{min-height:clamp(500px,130vw,680px);}
  .home-hero-image{background-position:59% center!important;}
  .page-hero-image{background-position:60% center!important;}
  .home-hero:before,.page-hero:before{
    background:linear-gradient(90deg,rgba(18,27,31,.79),rgba(18,27,31,.52))!important;
  }
  .home-hero-inner,.page-hero-inner{padding:58px 0 54px!important;}
  .subhero{min-height:420px;padding:60px 0!important;background-position:58% center!important;}
  .subhero::before{background:linear-gradient(90deg,rgba(18,27,31,.81),rgba(18,27,31,.47))!important;}
}


/* ================================================================
   V2.6 — consistent editorial photo heroes and responsive contacts
   ================================================================ */
/* Home photo spans the whole hero, like the inner-page photo heroes. */
.home-hero {background:#263438!important;isolation:isolate;}
.home-hero-image {background-image:url('assets/hero-main.jpg')!important;background-position:63% center!important;background-size:cover!important;}
.home-hero:before {background:linear-gradient(90deg,rgba(18,26,29,.96) 0%,rgba(18,26,29,.88) 31%,rgba(18,26,29,.62) 55%,rgba(18,26,29,.24) 82%,rgba(18,26,29,.12) 100%)!important;}
.home-hero h1 {color:#fff!important;}
.home-hero h1 span {color:#d09b71!important;}
.home-hero .eyebrow {color:#e1a879!important;}
.home-hero .lead,.home-hero .hero-facts,.home-hero .hero-facts span {color:#f0f2f0!important;}
.home-hero .button-outline {color:#fff!important;border-color:#d5dddb!important;background:rgba(20,29,31,.25)!important;}
.home-hero .button-outline:hover,.home-hero .button-outline:focus-visible {color:#263438!important;background:#fff!important;}
/* Warm, naturally lit editorial workplace image for Ratgeber overview. */
.guide-hero {position:relative;isolation:isolate;overflow:hidden;min-height:435px;display:flex;align-items:center;
  background:#263438 url('assets/ratgeber-hero-arbeitsplatz-v29.webp') 65% center/cover no-repeat!important;}
.guide-hero:before {content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(90deg,rgba(18,27,30,.97) 0%,rgba(18,27,30,.9) 36%,rgba(18,27,30,.59) 64%,rgba(18,27,30,.33) 100%);}
.guide-hero h1,.guide-hero h2,.guide-hero h3 {color:#fff!important;}
.guide-hero .lead,.guide-hero p:not(.eyebrow),.guide-hero .guide-kicker,.guide-hero .guide-crumb {color:#eef0ed!important;}
.guide-hero .eyebrow,.guide-hero .guide-crumb a {color:#e6b18b!important;}
.guide-hero .container{position:relative;z-index:1;}
/* Fixed desktop icons, inset slightly to avoid touching the viewport edge. */
@media(min-width:1121px) and (pointer:fine){
 .lorenz-quick-contact{left:18px!important;}
 .lorenz-quick-contact a{border-radius:6px!important;border-left:1px solid #986139!important;width:50px;height:50px;}
}
/* Compact floating mobile pair, directly above iOS bottom safe area. */
@media(max-width:1120px), (pointer:coarse){
 .lorenz-quick-contact {display:flex!important;position:fixed!important;top:auto!important;bottom:calc(14px + env(safe-area-inset-bottom,0px));left:50%!important;right:auto!important;transform:translateX(-50%)!important;
    flex-direction:row!important;gap:10px!important;z-index:90;}
 .lorenz-quick-contact a {width:56px!important;height:52px!important;border:1px solid #986139!important;border-radius:8px!important;background:#986139!important;color:#fff!important;box-shadow:0 5px 20px rgba(19,28,30,.24)!important;}
 .lorenz-quick-contact a:hover,.lorenz-quick-contact a:focus-visible {width:56px!important;background:#80502d!important;}
 body {padding-bottom:calc(68px + env(safe-area-inset-bottom,0px));}
}
@media(max-width:820px){
 .home-hero-image{background-image:url('assets/hero-main.jpg')!important;background-position:62% center!important;}
 .home-hero:before {background:linear-gradient(90deg,rgba(18,27,31,.83),rgba(18,27,31,.52))!important;}
 .guide-hero{min-height:410px;padding:62px 0 58px;background-position:65% center!important;}
 .guide-hero:before{background:linear-gradient(90deg,rgba(18,27,30,.86),rgba(18,27,30,.55));}
}
@media(max-width:600px){
 .home-hero-image{background-position:63% center!important;}
 .home-hero:before{background:linear-gradient(90deg,rgba(18,27,31,.82),rgba(18,27,31,.55))!important;}
 .guide-hero{padding:57px 0 54px;min-height:430px;background-position:61% center!important;}
 .guide-hero:before{background:linear-gradient(90deg,rgba(18,27,30,.87),rgba(18,27,30,.60));}
}
@media print{.lorenz-quick-contact{display:none!important}body{padding-bottom:0!important}}


/* ------------------------------------------------------------------
   V2.7 — final polish: brighter home hero and right-aligned mobile
   contact buttons.
------------------------------------------------------------------- */
.home-hero-image{
  filter:brightness(1.15) saturate(1.02) !important;
}
.home-hero:before{
  background:linear-gradient(90deg,rgba(18,26,29,.92) 0%,rgba(18,26,29,.82) 31%,rgba(18,26,29,.54) 55%,rgba(18,26,29,.18) 82%,rgba(18,26,29,.08) 100%)!important;
}
@media(max-width:1120px), (pointer:coarse){
  .lorenz-quick-contact{
    left:auto!important;
    right:calc(8px + env(safe-area-inset-right,0px))!important;
    transform:none!important;
    justify-content:flex-end!important;
  }
}
@media(max-width:820px){
  .home-hero:before{
    background:linear-gradient(90deg,rgba(18,27,31,.74),rgba(18,27,31,.44))!important;
  }
}
@media(max-width:600px){
  .home-hero:before{
    background:linear-gradient(90deg,rgba(18,27,31,.76),rgba(18,27,31,.47))!important;
  }
}


/* V2.8 — full-width homepage hero photo, no hard split */
.home-hero{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  background:#263438!important;
}
.home-hero-image{
  position:absolute!important;
  display:block!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  z-index:-2!important;
  opacity:1!important;
  visibility:visible!important;
  background-image:url('assets/hero-main.jpg')!important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  filter:brightness(1.15) saturate(1.02)!important;
}
.home-hero::before{
  position:absolute!important;
  inset:0!important;
  z-index:-1!important;
  background:linear-gradient(90deg,rgba(18,26,29,.88) 0%,rgba(18,26,29,.77) 31%,rgba(18,26,29,.49) 55%,rgba(18,26,29,.15) 82%,rgba(18,26,29,.07) 100%)!important;
}
@media(max-width:820px){
  .home-hero-image{
    inset:0!important;width:100%!important;height:100%!important;
    background-position:59% center!important;
  }
  .home-hero::before{
    background:linear-gradient(90deg,rgba(18,27,31,.75),rgba(18,27,31,.44))!important;
  }
}
@media(max-width:600px){
  .home-hero-image{background-position:61% center!important;}
  .home-hero::before{
    background:linear-gradient(90deg,rgba(18,27,31,.76),rgba(18,27,31,.47))!important;
  }
}


/* V3.0 — Back-to-top shortcut, coordinated with fixed quick contacts. */
.lorenz-back-to-top {
  position:fixed;
  z-index:91;
  left:18px;
  bottom:18px;
  display:grid;
  place-items:center;
  width:50px;
  height:50px;
  padding:0;
  border:1px solid #986139;
  border-radius:6px;
  background:#986139;
  color:#fff;
  box-shadow:0 5px 20px rgba(19,28,30,.24);
  cursor:pointer;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(8px);
  transition:opacity .2s ease,transform .2s ease,visibility .2s ease,background .2s ease;
}
.lorenz-back-to-top.is-visible {
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateY(0);
}
.lorenz-back-to-top:hover,
.lorenz-back-to-top:focus-visible { background:#80502d; }
.lorenz-back-to-top svg {
  width:24px;
  height:24px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
@media(max-width:1120px), (pointer:coarse) {
  .lorenz-back-to-top {
    left:auto;
    right:calc(8px + env(safe-area-inset-right,0px));
    bottom:calc(78px + env(safe-area-inset-bottom,0px));
    width:56px;
    height:52px;
    border-radius:8px;
  }
}
@media(prefers-reduced-motion:reduce) {
  .lorenz-back-to-top {transition:none;}
}
@media print {
  .lorenz-back-to-top{display:none!important;}
}


/* V3.2 — accessible warm-light contact form, replacing legacy dark card */
.contact-form {
  background:#f0efeb;
  border:1px solid #d9d5cc;
  color:#243034;
}
.contact-form h2 {color:#202a2c;}
.contact-form > p:not(.form-privacy) {color:#455558;}
.contact-form label:not(.privacy-check) {color:#243034;}
.contact-form label:not(.privacy-check) > span {color:#8c542f;}
.contact-form input:not([type="checkbox"]):not([type="hidden"]),
.contact-form select,
.contact-form textarea {
  background:#fff;
  color:#243034;
  border:1px solid #aab4b1;
  border-radius:4px;
  color-scheme:light;
}
.contact-form input:not([type="checkbox"]):focus-visible,
.contact-form select:focus-visible,
.contact-form textarea:focus-visible {
  border-color:#986139;
  outline:2px solid #986139;
  outline-offset:2px;
  box-shadow:none;
}
.contact-form input::placeholder,
.contact-form textarea::placeholder {color:#59676a;opacity:1;}
.contact-form .privacy-check,
.contact-form .privacy-check > span {
  color:#39494b!important;
}
.contact-form .privacy-check a {
  color:#80502d;
  text-decoration:underline;
  text-underline-offset:3px;
}
.contact-form .privacy-check input[type="checkbox"] {accent-color:#986139;}
.contact-form .form-privacy {color:#536164;}
.contact-form .button[type="submit"] {
  background:#986139;
  border-color:#986139;
  color:#fff;
}
.contact-form .button[type="submit"]:hover,
.contact-form .button[type="submit"]:focus-visible {
  background:#80502d;
  border-color:#80502d;
  color:#fff;
}

/* V3.3: horizontal testimonial layout and verified Google aggregate panel */
.testimonials-layout{display:grid;grid-template-columns:minmax(245px,.77fr) minmax(0,2.2fr);gap:44px;align-items:start}
.reviews-summary{min-width:0;padding:15px 5px 5px 0}
.reviews-summary h2{font-size:clamp(1.85rem,2.9vw,3rem);line-height:1.14;color:#243438;margin:0 0 24px}
.reviews-summary .eyebrow{margin-bottom:14px}
.reviews-rating-number{font-size:clamp(2.6rem,4.1vw,4.3rem);line-height:1.1;color:#202e30;font-weight:700;letter-spacing:-.045em}
.reviews-rating-denominator{font-size:1rem;font-weight:500;letter-spacing:0;color:#506064}
.reviews-rating-stars{color:#a66d3e;letter-spacing:3px;font-size:1.2rem;margin:8px 0}
.reviews-rating-total,.reviews-summary-fallback{font-size:.92rem;color:#526065;margin:8px 0 14px;line-height:1.6}
.google-maps-credit{font-size:.88rem!important;letter-spacing:.01em;color:#526064!important;margin-bottom:14px}
.reviews-google-link{display:inline-flex;align-items:center;gap:6px;color:#80502d;font-size:.85rem;font-weight:700;text-decoration:underline;text-underline-offset:4px;line-height:1.5}
.reviews-google-link:hover{color:#57361d}
.reviews-showcase{min-width:0}
.reviews-showcase-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px}
.reviews-showcase-header p{font-size:.95rem;color:#425155;margin:0;font-weight:650}
.reviews-controls{display:flex;gap:7px}
.reviews-arrow{width:37px;height:37px;border-radius:6px;border:1px solid #ccc8c0;background:#fff;color:#2c3a3c;font-size:1.7rem;line-height:1;display:grid;place-items:center;padding:0}
.reviews-arrow:hover:not(:disabled){border-color:#986139;color:#986139}
.reviews-arrow:disabled{opacity:.35;cursor:default}
.testimonial-cards{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#b6a18d transparent;padding:2px 3px 16px;align-items:stretch}
.testimonial-cards .review-card{flex:0 0 clamp(260px,43%,360px);min-width:0;scroll-snap-align:start;display:flex;flex-direction:column;padding:29px 26px;border:1px solid #e2ddd5!important;border-radius:12px;background:#fff!important}
.testimonial-cards .review-card blockquote{font-size:.95rem;line-height:1.7;color:#344144!important;margin:12px 0 22px;flex:1 1 auto}
.testimonial-cards .review-card footer{margin-top:auto;display:flex;flex-direction:column;align-items:flex-start;gap:9px}
.testimonial-cards .review-card footer .review-company-line{display:flex;flex-wrap:wrap;align-items:center;gap:12px;width:100%}
.testimonial-cards .review-card footer .review-logo-link{width:130px;height:55px;margin-left:auto;max-width:100%;flex-shrink:1}
.testimonial-cards .review-card footer .review-company-logo{max-width:100%}
.testimonial-cards .review-stars{color:#986139;font-size:1rem;letter-spacing:2px}
@media(max-width:980px){.testimonials-layout{grid-template-columns:1fr;gap:24px}.reviews-summary{padding:0}.reviews-summary h2{max-width:640px}.testimonial-cards .review-card{flex-basis:min(72%,355px)}}
@media(max-width:600px){.testimonials-layout{gap:20px}.testimonial-cards{margin-right:-18px;padding-right:18px}.testimonial-cards .review-card{flex-basis:min(86%,340px);padding:23px 20px}.reviews-summary h2{font-size:2rem}}
@media(prefers-reduced-motion:reduce){.testimonial-cards{scroll-behavior:auto}}
@media print{.testimonial-cards{overflow:visible;flex-wrap:wrap}.testimonial-cards .review-card{flex:1 1 42%}.reviews-controls{display:none}}


/* V3.4 – customer/company identification above review stars and quote */
.testimonial-cards .review-card .review-company-header{display:block;margin:0 0 16px;min-height:60px}
.testimonial-cards .review-card .review-company-header .review-company-line{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;min-width:0}
.testimonial-cards .review-card .review-company-header strong{color:#202a2c;font-size:1rem;min-width:0;overflow-wrap:anywhere;flex:1 1 120px}
.testimonial-cards .review-card .review-company-header strong a{color:#202a2c;text-decoration:underline;text-underline-offset:3px}
.testimonial-cards .review-card .review-company-header .review-logo-link{width:122px;height:56px;max-width:100%;margin:0;flex:0 1 auto}
.testimonial-cards .review-card .review-stars{margin-bottom:12px}
.testimonial-cards .review-card blockquote{margin:0 0 22px}
.testimonial-cards .review-card footer{margin-top:auto}
@media(max-width:600px){.testimonial-cards .review-card .review-company-header{min-height:0}.testimonial-cards .review-card .review-company-header .review-logo-link{width:105px;height:50px}}


/* V3.5 – review summary fallback visible locally and unified review logos */
.reviews-summary-live{display:block}
.reviews-summary-fallback[hidden]{display:none!important}
.testimonial-cards .review-card .review-company-header{min-height:72px}
.testimonial-cards .review-card .review-company-header .review-company-line{align-items:flex-start}
.testimonial-cards .review-card .review-company-header .review-logo-link{
  width:168px;
  height:60px;
  min-width:168px;
  padding:8px 10px;
  border:1px solid #ddd6ca;
  background:#f7f5f0;
  border-radius:6px;
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:center;
}
.testimonial-cards .review-card .review-company-header .review-company-logo{
  width:auto!important;
  height:auto!important;
  max-width:148px!important;
  max-height:36px!important;
  object-fit:contain!important;
  background:transparent!important;
  padding:0!important;
  border-radius:0!important;
}
.testimonial-cards .review-card .review-company-header .review-company-logo--goldschmiede{max-width:58px!important;max-height:58px!important;border-radius:4px!important}
@media(max-width:600px){
  .testimonial-cards .review-card .review-company-header .review-logo-link{width:152px;height:56px;min-width:152px;padding:7px 9px}
  .testimonial-cards .review-card .review-company-header .review-company-logo{max-width:132px!important;max-height:34px!important}
  .testimonial-cards .review-card .review-company-header .review-company-logo--goldschmiede{max-width:52px!important;max-height:52px!important}
}


/* V3.6 – Bewertungsskala visuell gewichten, Google-Zahl hervorheben */
.reviews-summary .reviews-rating-number{font-size:clamp(2.55rem,3.3vw,3.45rem);line-height:1.12}
.reviews-summary .reviews-rating-denominator{font-size:.95rem}
.reviews-summary .reviews-rating-stars{font-size:clamp(1.8rem,2.35vw,2.35rem);letter-spacing:.09em;line-height:1.3;margin:8px 0 12px}
.reviews-summary .reviews-rating-total strong{font-weight:800;color:#253438}

/* V3.7: Fourth authentic photo at dental practice, consistently cropped thumbs */
.project-media--praxis .project-media-thumbs{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.project-media--praxis .project-media-thumbs img{aspect-ratio:4/3;object-fit:cover;object-position:center}
.project-media--praxis .project-media-thumbs img:last-child{object-position:center 52%}
@media(max-width:600px){
 .project-media--praxis .project-media-thumbs{grid-template-columns:repeat(2,minmax(0,1fr))}
 .project-media--praxis .project-media-thumbs img:last-child{grid-column:1/-1;aspect-ratio:16/10;object-position:center 55%}
}


/* V3.8 FINAL: Praxis gallery consistent thumbnail grid on all screens */
@media(min-width:601px){
  .project-card>.project-media.project-media--praxis .project-media-thumbs{
    display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:8px;
  }
  .project-card>.project-media.project-media--praxis .project-media-thumbs img{
    width:100%;aspect-ratio:4/3;object-fit:cover;object-position:center;
  }
}
@media(max-width:600px){
  .project-card>.project-media.project-media--praxis .project-media-thumbs{
    display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:8px;
  }
  .project-card>.project-media.project-media--praxis .project-media-thumbs img:last-child{
    grid-column:1/-1;aspect-ratio:16/10;object-position:center 55%;
  }
}


/* V3.9: accessible interactive project image gallery */
.project-card>.project-media.project-media--praxis .project-media-thumbs .praxis-gallery-thumb{
  appearance:none;-webkit-appearance:none;display:block;min-width:0;width:100%;padding:0;
  border:2px solid transparent;background:transparent;border-radius:4px;cursor:pointer;
  overflow:hidden;line-height:0;transition:border-color .18s ease;
}
.project-card>.project-media.project-media--praxis .project-media-thumbs .praxis-gallery-thumb:hover{
  border-color:#986139;
}
.project-card>.project-media.project-media--praxis .project-media-thumbs .praxis-gallery-thumb:focus-visible{
  outline:3px solid #986139;outline-offset:2px;
}
.project-card>.project-media.project-media--praxis .project-media-thumbs .praxis-gallery-thumb img{
  display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center;
}
@media(min-width:601px){
  .project-card>.project-media.project-media--praxis .project-media-thumbs .praxis-gallery-thumb{
    grid-column:auto;aspect-ratio:auto;
  }
}
@media(max-width:600px){
  .project-card>.project-media.project-media--praxis .project-media-thumbs .praxis-gallery-thumb:last-child{
    grid-column:1/-1;
  }
  .project-card>.project-media.project-media--praxis .project-media-thumbs .praxis-gallery-thumb:last-child img{
    aspect-ratio:16/10;object-position:center 55%;
  }
}
@media(prefers-reduced-motion:reduce){
  .project-card>.project-media.project-media--praxis .project-media-thumbs .praxis-gallery-thumb{transition:none}
}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;
  margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
/* Keep the interactive controls themselves at a stable photo aspect ratio. */
.project-card>.project-media.project-media--praxis .project-media-thumbs .praxis-gallery-thumb{
  aspect-ratio:4/3!important;height:auto!important;align-self:start;
}
.project-card>.project-media.project-media--praxis .project-media-thumbs .praxis-gallery-thumb img{
  width:100%!important;height:100%!important;aspect-ratio:auto!important;object-fit:cover!important;
}
@media(max-width:600px){
  .project-card>.project-media.project-media--praxis .project-media-thumbs .praxis-gallery-thumb:last-child{aspect-ratio:16/10!important}
}

/* LOR-IT V1.5 – consolidated header/logo sizing (values preserved from V1.4). */
.site-header .brand {flex:0 0 auto;display:flex;align-items:center;min-width:0;}
.site-header .brand img {display:block;width:350px;max-width:100%;height:auto;object-fit:contain;}
.site-header .nav-wrap {min-height:108px;}
.footer-grid .brand img {display:block;width:400px;max-width:100%;height:auto;object-fit:contain;}
@media (max-width:1350px) and (min-width:1121px) {
  .site-header .brand img {width:300px;}
  .site-header nav {gap:12px;}
  .site-header nav ul {gap:11px;}
  .site-header .nav-wrap {min-height:101px;}
}
@media (max-width:1120px) and (min-width:851px) {
  .site-header .brand img {width:285px;}
  .site-header .nav-wrap {min-height:92px;gap:15px;}
}
@media (max-width:850px) {
  .site-header .brand img {width:300px;max-width:calc(100vw - 110px);}
  .site-header .nav-wrap {min-height:94px;gap:14px;}
}
@media (max-width:600px) {
  .site-header .brand img {width:280px;max-width:calc(100vw - 104px);}
  .site-header .nav-wrap {min-height:90px;}
}
@media (max-width:380px) {
  .site-header .brand img {width:260px;max-width:calc(100vw - 104px);}
  .site-header .nav-wrap {min-height:86px;}
}

