/*
Theme Name: ORDRE Sicherheit
Theme URI: https://ordre-sicherheit.de/
Author: ORDRE Sicherheit
Description: Premium WordPress Theme für ORDRE Sicherheit in Anthrazit, Dunkelblau und Gold.
Version: 2.3.0
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: ordre-sicherheit
License: GPL-2.0-or-later
*/
:root{--bg:#0b1824;--gold:#e2af59;--text:#f5f6f8;--soft:#c6d0dc;--border:#26394a}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}a:hover{color:var(--gold)}img{max-width:100%;height:auto}.wrap{width:min(1220px,calc(100% - 44px));margin:0 auto}.skip-link{position:absolute;left:10px;top:-80px;background:#fff;color:#000;padding:12px;z-index:100}.skip-link:focus{top:10px}.site-head{height:70px;display:flex;align-items:center;background:linear-gradient(#0e1d2a,#091520);border-bottom:1px solid #263543;position:relative;z-index:10}.head-inner{display:flex;align-items:center;justify-content:space-between;gap:22px;width:100%}.brand{display:flex;align-items:center;gap:10px;min-width:0}.brand-emblem{width:40px;height:40px;object-fit:contain;border-radius:50%}.brand-name{font-size:27px;line-height:1.05;font-weight:750;white-space:nowrap;letter-spacing:-.025em}.brand-name small{display:block;font-size:8px;font-weight:600;letter-spacing:.21em;color:#d4dce5;margin-top:5px}.nav{display:flex;align-items:center;gap:34px}.nav a{font-size:13px;padding:12px 0;border-bottom:2px solid transparent}.nav a:hover,.nav a:first-child{color:var(--gold);border-color:var(--gold)}.menu-toggle{display:none;background:none;color:#fff;border:1px solid #607083;padding:7px 12px;font-size:22px;cursor:pointer}.hero{height:440px;min-height:440px;background-image:linear-gradient(90deg,rgba(3,9,15,.80) 0%,rgba(3,9,15,.60) 31%,rgba(3,9,15,.08) 67%),url('assets/ordre-hero.webp');background-size:cover;background-position:center 48%;position:relative}.hero-content{display:flex;align-items:center;height:100%}.hero-copy{max-width:650px;text-shadow:0 2px 12px rgba(0,0,0,.6)}.eyebrow{font-size:12px;font-weight:750;letter-spacing:.23em;color:var(--gold);text-transform:uppercase}.hero h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(38px,4.4vw,61px);letter-spacing:-.035em;line-height:1.06;margin:17px 0 11px;font-weight:700}.hero h1 em{font-style:normal;color:var(--gold)}.hero p{max-width:570px;font-size:17px;line-height:1.5;margin:0}.buttons{display:flex;flex-wrap:wrap;gap:14px;margin-top:19px}.btn{display:inline-flex;gap:25px;align-items:center;justify-content:space-between;background:linear-gradient(#efd099,#d2a35e);border:1px solid #c89e55;padding:14px 23px;min-height:48px;color:#08111b;font-size:12px;text-transform:uppercase;font-weight:800;letter-spacing:.09em;text-shadow:none}.btn:hover{background:#f3d9aa;color:#000}.btn span{font-size:23px;line-height:12px}.btn-outline{background:rgba(3,13,22,.82);border-color:#cf9c4d;color:#fff}.btn-outline:hover{background:#1a3044;color:#fff}.services{padding:15px 0 16px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.service{min-height:169px;background:linear-gradient(125deg,rgba(6,17,29,.97),rgba(10,26,41,.85)),#14283c;border:1px solid #2b3c4b;position:relative;overflow:hidden}.service::after{position:absolute;content:'';right:-10px;bottom:-35px;width:52%;height:110%;opacity:.10;transform:rotate(-15deg);background:linear-gradient(50deg,transparent,#acbfd0,transparent)}.service-content{display:flex;position:relative;z-index:1;padding:23px 18px;gap:20px}.service-icon{color:var(--gold);font-size:51px;min-width:57px;font-weight:300;line-height:1}.service h2{font:700 22px/1.15 Georgia,serif;margin:5px 0 10px}.service p{color:#d7dce1;font-size:13px;line-height:1.55;margin:0 0 13px}.service a{color:var(--gold);text-transform:uppercase;letter-spacing:.17em;font-weight:800;font-size:10px}.service a span{font-size:21px;margin-left:7px}.about-section{padding:12px 0 26px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:42px;align-items:center}.about-intro h2{font:700 clamp(26px,2.5vw,34px)/1.18 Georgia,serif;margin:7px 0 12px}.about-intro p{font-size:15px;color:#d7dce4;max-width:620px;margin:0 0 13px}.about-intro .btn{min-height:40px;padding:11px 25px}.values{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--gold);padding:10px 0 10px 35px;gap:24px;text-align:center}.values span{font-size:39px;line-height:1;color:var(--gold)}.values h3{font:700 18px Georgia,serif;margin:11px 0 8px}.values p{font-size:13px;color:#aebdcc;margin:0}.contact-strip{border-top:1px solid #2b3b49;border-bottom:1px solid #2b3b49;background:#0b1825}.contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.contact-item{padding:19px 18px;display:flex;gap:22px;align-items:center;min-width:0}.contact-item+.contact-item{border-left:1px solid #bd9958}.contact-symbol{display:grid;place-items:center;width:46px;height:46px;border:1px solid var(--gold);color:var(--gold);font-size:24px;border-radius:50%;flex:none}.contact-item div{min-width:0}.contact-item div>span{display:block;font-size:13px;color:#c2ccda}.contact-item a,.contact-item strong{display:block;color:#fff;font-size:18px;line-height:1.25;overflow-wrap:anywhere}.contact-item a:hover{color:var(--gold)}.footer{background:#08131e;padding:12px 0 17px}.foot-inner{display:flex;align-items:center;justify-content:space-between;gap:22px}.footer-brand strong{display:block;font-size:18px;line-height:1.3}.footer-brand small{display:block;font-size:12px;color:#c3cede}.foot-links{margin-left:auto;display:flex;gap:23px}.foot-links a{font-size:12px}.back-top{border:1px solid var(--gold);border-radius:50%;width:39px;height:39px;display:grid;place-items:center;color:#fff;font-size:24px;margin-left:18px}.back-top:hover{background:var(--gold);color:#07121d}.legal{max-width:900px;padding:60px 0 100px}.legal h1{font:700 42px Georgia,serif}.legal h2{font:700 26px Georgia,serif;margin-top:32px}.legal a{color:var(--gold);text-decoration:underline}.legal p,.legal li{color:#d4dce5;overflow-wrap:anywhere}.legal h3{font-size:20px}*:focus-visible{outline:3px solid var(--gold);outline-offset:3px}@media(max-width:950px){.brand-name{font-size:21px}.brand-name small{font-size:7px}.nav{gap:17px}.service-content{gap:8px;padding:18px 12px}.service-icon{min-width:36px;font-size:34px}.service h2{font-size:18px}.values{gap:12px;padding-left:20px}.contact-item{gap:10px;padding:18px 10px}.contact-item a,.contact-item strong{font-size:15px}}@media(max-width:700px){.site-head{height:72px}.brand-emblem{width:37px;height:37px}.brand-name{font-size:20px}.brand-name small{font-size:6px;letter-spacing:.12em}.menu-toggle{display:block}.nav{display:none;position:absolute;left:0;right:0;top:100%;padding:14px 22px;background:#0a1724;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 12px 20px #0006}.nav.open{display:flex}.nav a{padding:13px}.hero{height:auto;min-height:485px;background-position:62% center;background-image:linear-gradient(90deg,rgba(2,8,14,.91),rgba(2,8,14,.62)),url('assets/ordre-hero.webp')}.hero-content{padding:75px 0}.hero h1{font-size:clamp(35px,9vw,47px)}.hero p{font-size:15px}.cards,.about-grid,.contact-grid{grid-template-columns:1fr}.services{padding:16px 0}.service{min-height:145px}.service-content{padding:24px 22px;gap:18px}.service-icon{min-width:50px;font-size:45px}.about-section{padding:28px 0}.about-grid{gap:25px}.values{border-left:0;border-top:1px solid var(--gold);padding:23px 0 8px}.contact-item+.contact-item{border-left:0;border-top:1px solid #39485a}.foot-inner{flex-wrap:wrap}.foot-links{margin-left:0}.back-top{margin-left:auto}.legal{padding:45px 0}.legal h1{font-size:34px}}@media(max-width:380px){.brand-name{font-size:17px}.brand-name small{font-size:5px}.values h3{font-size:15px}.values p{font-size:11px}.buttons .btn{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* ORDRE v2.1: fotografische Leistungsboxen mit lesbaren Textoverlays */
.service{background-color:#101e2d;background-size:cover;background-position:center right;isolation:isolate;transition:border-color .2s ease,transform .2s ease;}
.service::before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,rgba(5,15,26,.97) 0%,rgba(6,17,29,.93) 41%,rgba(6,17,29,.53) 77%,rgba(6,17,29,.28) 100%);}
.service::after{display:none;}
.service:hover{border-color:#b99255;transform:translateY(-2px);}
.service-object{background-image:url('assets/service-objektschutz.webp');}
.service-guard{background-image:url('assets/service-bewachung.webp');}
.service-plan{background-image:url('assets/service-sicherheitsloesungen.webp');}
.service-content{z-index:1;}
.service p{max-width:260px;text-shadow:0 1px 3px rgba(0,0,0,.7);}
@media(max-width:700px){.service{background-position:center center;}.service::before{background:linear-gradient(90deg,rgba(5,15,26,.97),rgba(6,17,29,.80) 63%,rgba(6,17,29,.40));}}
@media(prefers-reduced-motion:reduce){.service{transition:none;}}

/* Version 2.2: großzügigeres Layout ohne nicht vorhandene Detailseiten */
@media(min-width:951px){
.hero-copy{max-width:765px}
.hero h1{font-size:clamp(41px,4vw,55px);letter-spacing:-.038em;line-height:1.09}
.hero p{max-width:575px}
}
.services{padding:24px 0 28px}
.cards{gap:17px}
.service{min-height:204px}
.service-content{padding:27px 23px;gap:15px}
.service-icon{min-width:49px;font-size:44px}
.service h2{font-size:23px;line-height:1.18;margin:4px 0 12px}
.service p{font-size:14px;line-height:1.65;margin:0;max-width:290px}
.about-section{padding:25px 0 46px}
.about-grid{gap:46px}
.about-intro h2{margin:12px 0 17px}
.about-intro p{line-height:1.75;margin-bottom:0}
.values{padding-top:16px;padding-bottom:16px}
.contact-item{padding-top:24px;padding-bottom:24px}
.footer{padding:19px 0 22px}
@media(max-width:950px){.service-content{padding:24px 17px;gap:11px}.service h2{font-size:20px}.service-icon{min-width:39px;font-size:36px}}
@media(max-width:700px){
.hero h1{font-size:clamp(34px,8vw,47px)}
.hero-content{padding:70px 0}
.services{padding:22px 0 26px}
.cards{gap:14px}
.service{min-height:174px}
.service-content{padding:26px 20px;gap:17px}
.service-icon{min-width:45px;font-size:43px}
.service h2{font-size:22px}
.service p{font-size:14px}
.about-section{padding:32px 0 42px}
.about-grid{gap:34px}
.contact-item{padding:22px 14px}
}

/* v2.3 – gezielte Mobilkorrekturen, Desktop-Design unverändert */
@media (max-width:700px){
 html,body{max-width:100%;overflow-x:clip}
 .wrap{width:calc(100% - 36px)}
 .head-inner{gap:9px}
 .brand{flex:1;min-width:0;gap:8px}
 .brand-emblem{flex:none;width:34px;height:34px}
 .brand-name{font-size:clamp(15px,4.5vw,20px);white-space:normal;overflow-wrap:normal}
 .brand-name small{font-size:clamp(5px,1.45vw,7px);letter-spacing:.055em;line-height:1.3;overflow-wrap:anywhere}
 .menu-toggle{flex:none;padding:6px 10px}
 .hero{min-height:0;background-position:61% center}
 .hero-content{min-height:500px;padding:54px 0 60px}
 .hero-copy{max-width:100%;min-width:0}
 .hero h1{font-size:clamp(31px,8.1vw,44px);line-height:1.12;overflow-wrap:normal}
 .eyebrow{font-size:10px;letter-spacing:.13em}
 .hero p{font-size:14px;max-width:32rem}
 .buttons{gap:10px}
 .btn{padding:12px 14px;font-size:11px;gap:12px;min-height:44px}
 .service{min-height:0}
 .service-content{padding:24px 18px;gap:14px}
 .service-content>div{min-width:0}
 .service h2{font-size:clamp(20px,5.5vw,23px);overflow-wrap:break-word}
 .service p{font-size:14px;line-height:1.55;max-width:100%}
 .about-grid{grid-template-columns:minmax(0,1fr)}
 .about-intro,.values{min-width:0}
 .about-intro h2{overflow-wrap:break-word}
 .values{grid-template-columns:1fr;gap:0;border-top:1px solid var(--gold);border-left:0;padding:9px 0 0;text-align:left}
 .values>div{display:grid;grid-template-columns:45px minmax(0,1fr);column-gap:14px;align-items:center;padding:14px 0}
 .values>div+div{border-top:1px solid #26394a}
 .values span{font-size:31px;grid-row:1 / span 2;text-align:center}
 .values h3{font-size:19px;margin:0 0 3px;min-width:0;overflow-wrap:break-word}
 .values p{font-size:13px;line-height:1.5;overflow-wrap:break-word}
 .contact-item{gap:14px;padding:18px 0}
 .contact-symbol{width:42px;height:42px}
 .contact-item a,.contact-item strong{font-size:16px}
 .foot-inner{gap:14px}
 .foot-links{flex-wrap:wrap;gap:18px}
 .legal{min-width:0;padding:32px 0 64px}
 .legal h1{font-size:clamp(29px,8vw,35px);overflow-wrap:anywhere}
 .legal h2{font-size:clamp(21px,6vw,26px);line-height:1.25;overflow-wrap:anywhere;hyphens:auto}
 .legal h3,.legal p,.legal li{overflow-wrap:anywhere;hyphens:auto}
}
@media (max-width:390px){
 .wrap{width:calc(100% - 28px)}
 .brand-name{font-size:15px}
 .brand-name small{font-size:5px;letter-spacing:0}
 .hero-content{min-height:520px;padding:55px 0}
 .hero h1{font-size:clamp(30px,8.4vw,34px)}
 .buttons .btn{width:100%;justify-content:space-between}
 .service-content{padding:20px 15px;gap:11px}
 .service-icon{font-size:36px;min-width:34px}
 .service h2{font-size:20px}
}
