
:root{--ink:#101f38;--ocean:#123e66;--sky:#1478b8;--mist:#e9f5fd;--paper:#fff;--border:#dbe9f3}
html{scroll-behavior:smooth}body{background:#fff!important;color:var(--ink)!important;font-family:'DM Sans',Arial,sans-serif}
.container{max-width:1190px!important}
.nav{background:rgba(255,255,255,.94)!important;backdrop-filter:blur(16px);border-bottom:1px solid #e9f1f6!important;box-shadow:0 7px 35px rgba(13,46,78,.035)!important}
.nav-inner{min-height:94px!important}.nav .logo-name{color:#153d64!important;font-size:49px!important}.nav .logo-role{color:#61819c!important}
.menu a{font-weight:600;color:#263c53!important}.menu a:hover{color:#1478b8!important}
.hero{background:radial-gradient(ellipse at 78% 28%,#d3eafb 0%,transparent 47%),linear-gradient(128deg,#fff 10%,#f2f9fe 58%,#e8f4fd 100%)!important;padding:86px 0 95px!important;overflow:hidden}
.hero:before{background-image:radial-gradient(#9ccce8 0.7px,transparent 0.7px)!important;background-size:25px 25px!important;opacity:.3}
.hero:after{content:"";position:absolute;width:690px;height:690px;border:1px solid rgba(51,131,185,.14);border-radius:50%;right:-210px;top:-220px;pointer-events:none}
.hero-grid{grid-template-columns:1.07fr .93fr!important;gap:80px!important;align-items:center}
.badge{display:inline-block!important;color:#1d78aa!important;background:#e9f5fe!important;border:1px solid #d4eaf8!important;border-radius:99px!important;padding:9px 17px!important;font-size:10px!important;letter-spacing:1.4px!important}
.hero h1{font-size:clamp(43px,5.1vw,76px)!important;line-height:1.07!important;letter-spacing:-3.5px!important;color:#122642!important;margin:30px 0 23px!important;font-weight:800}
.hero h1 em{color:#1478b8!important;font-style:normal}
.hero .lead{font-size:19px!important;color:#4a647c!important;max-width:570px;line-height:1.75!important}
.hero-visit{box-shadow:0 12px 30px rgba(26,94,145,.08)!important;border:1px solid #d5eaf8!important;background:#fff!important;margin:25px 0!important;border-radius:17px!important}
.hero-visit strong{color:#173e62!important}.hero-visit svg{stroke:#1478b8!important}
.btn{border-radius:13px!important;min-height:51px;display:inline-flex;align-items:center;justify-content:center;transition:transform .2s,box-shadow .2s!important}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:linear-gradient(115deg,#167cb8,#10517e)!important;box-shadow:0 12px 22px rgba(16,94,147,.18);color:#fff!important}
.btn-secondary{background:#fff!important;color:#185a86!important;border:1px solid #bfdbea!important}
.hero-card{position:relative!important;border-radius:30px!important;box-shadow:0 35px 65px rgba(15,59,95,.19)!important;border:8px solid #fff!important;background:#e4f1f9!important;transform:rotate(1.2deg)}
.hero-card img{width:100%;height:100%;aspect-ratio:4/5!important;object-fit:cover;object-position:center 24%;border-radius:23px!important}
.portrait-caption{position:absolute;bottom:18px;left:18px;right:18px;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);padding:15px 18px;border-radius:16px;color:#183a58;font-weight:800;box-shadow:0 10px 25px rgba(5,28,49,.13)}
.portrait-caption small{display:block;font-weight:500;font-size:12px;color:#5b7892;margin:3px 0 0 17px}.portrait-dot{display:inline-block;width:9px;height:9px;background:#28a9a0;border-radius:50%;margin-right:7px}
.hero-trust{display:flex;gap:16px;flex-wrap:wrap;margin:24px 0 12px;color:#38607d;font-size:12px;font-weight:700}
.stats{margin-top:22px!important}.stat{background:rgba(255,255,255,.8)!important;border:1px solid #dbeaf5!important;border-radius:13px!important}
section:not(.hero):not(.visit-section):not(.cta-section){scroll-margin-top:100px}
#o-mne,#sluzby,#spoluprace,#recenze,#clanky,#kontakt{padding-top:72px!important;padding-bottom:72px!important}
#o-mne{background:#fff}#sluzby{background:linear-gradient(180deg,#f3f9fe,#edf6fc)!important}
.section-kicker{font-size:11px;font-weight:800;letter-spacing:2.4px;color:#2080b6;margin:0 0 10px}
.section-title{color:#122c49!important;font-size:clamp(28px,3.2vw,43px)!important;letter-spacing:-1.3px;line-height:1.15}
.section-title .accent{color:#167bb5}
.section-sub{color:#61788e!important}
.panel,.card,.contact-box,.article{background:#fff!important;border:1px solid #e2edf5!important;border-radius:23px!important;box-shadow:0 16px 35px rgba(18,67,103,.045)!important}
.panel{padding:35px!important}
.cards{gap:19px!important}.service-card{padding:30px 26px!important;transition:transform .25s,box-shadow .25s!important}
.service-card:hover{transform:translateY(-7px);box-shadow:0 23px 40px rgba(18,87,135,.11)!important}
.service-card .icon{background:linear-gradient(135deg,#e7f5fe,#d9ecf9)!important;border:1px solid #cde4f3!important;color:#126da7!important;border-radius:17px!important}
.service-card .icon-index{background:#fff!important;color:#126da7!important}
.visit-section{background:linear-gradient(120deg,#0c2b4c,#15517d)!important;padding:64px 0!important;position:relative;overflow:hidden}
.visit-section:after{content:"";position:absolute;width:350px;height:350px;border:1px solid rgba(255,255,255,.12);border-radius:50%;right:-100px;top:-180px}
.visit-section h2 span{color:#8ed5ff!important}.visit-symbol{border-color:#5a9cc6!important;color:#a5dfff!important}.eyebrow{color:#9bdcff!important}
.visit-section .btn-primary{background:#fff!important;color:#11527f!important}
.strip{background:#fff!important;border:0!important}.step{background:#f2f9fe!important;border:1px solid #deebf4!important;border-radius:18px!important}
.step:before{background:#167eb8!important}
#recenze{background:#eef7fd!important}
#clanky{background:#fff!important}
.article{transition:transform .2s}.article:hover{transform:translateY(-4px)}
.cta-section{background:#f3f9fe!important;padding:35px 0 15px!important}.cta-section .cta{background:linear-gradient(115deg,#102d4d,#16537d)!important;border-radius:28px!important;padding:46px 50px!important}
.cta .section-title{color:#fff!important}.cta .lead{color:#dcecf7!important}.cta .btn-secondary{color:#fff!important;background:transparent!important;border-color:#9acbe7!important}
#kontakt{background:#f3f9fe!important}.contact-box{padding:32px!important}
input,select,textarea{border:1px solid #d0e2ee!important;border-radius:11px!important;background:#fff!important}
footer{background:#0f2743!important;color:#c7d8e7!important}footer a{color:#a8dbff!important}
@media(max-width:900px){
.nav-inner{min-height:76px!important}.nav .logo-name{font-size:38px!important}
.hero{padding:30px 0 48px!important}.hero-grid{display:block!important}
.hero h1{font-size:clamp(35px,8.6vw,55px)!important;letter-spacing:-1.9px!important;margin:22px 0 16px!important}
.hero .lead{font-size:16px!important}
.hero-card.mobile-portrait{display:block!important;transform:none!important;width:min(100%,360px);max-width:360px!important;margin:20px auto!important;border-width:6px!important}
.hero-card.mobile-portrait img{aspect-ratio:4/3!important}
.desktop-portrait{display:none!important}.hero-trust{gap:9px}
#o-mne,#sluzby,#spoluprace,#recenze,#clanky,#kontakt{padding-top:48px!important;padding-bottom:48px!important}
.cta-section .cta{padding:28px 23px!important}
}
@media(max-width:500px){.nav .logo-name{font-size:35px!important}.nav .logo-role{font-size:7px!important}.hero .btns{display:grid;grid-template-columns:1fr 1fr;gap:9px}.hero .btn{font-size:12px!important;padding:10px!important}.hero-trust{font-size:11px}.stats{gap:7px!important}.stat{padding:10px 7px!important}.stat strong{font-size:14px!important}.stat span{font-size:10px!important}.hero h1{font-size:36px!important}.badge{font-size:9px!important;letter-spacing:.7px!important}.panel,.contact-box{padding:23px!important}.visit-section{padding:40px 0!important}}
@media(prefers-reduced-motion:reduce){.btn,.service-card,.article{transition:none!important}}
