
:root{--paper:#f6f4ee;--surface:#fffdf9;--ink:#1b2922;--muted:#666e66;--green:#172d24;--gold:#b78c60;--line:#dcded6;--mint:#e9ede6}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,'Helvetica Neue',sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,textarea{font:inherit}.shell{max-width:1480px;padding-inline:clamp(22px,5.1vw,78px);margin:auto}.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:10px;padding:14px;background:white;z-index:100}h1,h2,h3,p{margin-top:0}em{font-weight:400}.site-head{background:var(--paper);border-bottom:1px solid var(--line);height:88px;position:relative;z-index:15}.head-row{height:100%;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;align-items:center;gap:18px;flex-shrink:0}.brand-symbol{font:normal 42px/.9 Georgia,serif;letter-spacing:-4px}.brand-symbol span{color:var(--gold)}.brand-name{font-size:12px;font-weight:800;letter-spacing:1.8px}.brand-name small{display:block;font-size:9px;color:var(--muted);font-weight:600;letter-spacing:2px;margin-top:7px}.menu{display:flex;align-items:center;gap:clamp(15px,2.2vw,34px)}.menu>a{font-size:13px;font-weight:600;white-space:nowrap}.menu>a:hover{color:#986f45}.menu .nav-contact{background:var(--green);color:#fff;padding:15px 20px;border-radius:4px;display:flex;gap:26px}.menu .nav-contact:hover{color:#fff;background:#365346}.menu-button{display:none}.section{padding:clamp(80px,8vw,120px) 0}.section-label,.eyebrow,.hero-caption,.services-tools,.form-label{font-size:11px;font-weight:700;letter-spacing:1.7px}.section-label{display:block;color:#8a755d;margin-bottom:30px}.section-label.light{color:#d4bd9b}.hero{padding:25px 0 0}.hero-inner{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(28px,4vw,64px);align-items:stretch}.hero-copy{display:flex;flex-direction:column;padding:clamp(55px,6vw,92px) 0 32px;min-width:0}.eyebrow{display:flex;gap:13px;align-items:center;color:#8a775e}.eyebrow-line{width:23px;height:1px;background:#b58c60}.hero h1{font:normal clamp(64px,6.2vw,108px)/.99 Georgia,'Times New Roman',serif;letter-spacing:-3px;margin:clamp(38px,5vw,77px) 0 28px}.hero h1 em{color:#688277;font-style:italic}.hero-intro{max-width:490px;color:#546158;line-height:1.85;font-size:clamp(16px,1.28vw,19px);margin:0 0 34px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;justify-content:space-between;align-items:center;gap:36px;padding:17px 23px;font-size:13px;font-weight:700;border:1px solid var(--ink);cursor:pointer;transition:background .2s,transform .2s;border-radius:3px}.btn:hover{transform:translateY(-2px)}.btn-dark{background:var(--green);color:#fff;border-color:var(--green)}.btn-dark:hover{background:#344f42}.btn-line{background:transparent}.btn-line:hover{background:#e9e9df}.hero-caption{display:flex;justify-content:space-between;gap:22px;margin-top:auto;padding-top:55px;color:#7f877c;font-size:10px}.hero-picture{position:relative;height:clamp(570px,48vw,730px);min-width:0;overflow:hidden;border-radius:4px 4px 0 0;background:#d6d0c1}.hero-picture img{width:100%;height:100%;object-fit:cover;object-position:center;position:relative;z-index:1}.hero-picture:after{content:'';inset:auto 0 0;position:absolute;height:32%;background:linear-gradient(transparent,rgba(11,25,17,.56));z-index:2;pointer-events:none}.photo-note{position:absolute;bottom:24px;left:27px;right:27px;color:white;z-index:3;display:flex;justify-content:space-between;font-size:10px;letter-spacing:2px;font-weight:700}.intro-strip{background:var(--green);color:#fff}.intro-strip-inner{padding-block:54px;display:grid;grid-template-columns:220px 1fr;gap:45px;align-items:center}.intro-strip .section-label{margin:0}.intro-strip p{font:normal clamp(27px,3.3vw,47px)/1.2 Georgia,serif;margin:0;max-width:850px}.intro-strip p em{color:#d3c0a9}.section-top{display:grid;grid-template-columns:30% 1fr;gap:30px;align-items:start;margin-bottom:54px}.section-top h2{font:normal clamp(43px,4.7vw,73px)/1.11 Georgia,serif;letter-spacing:-1.8px;margin:0}.section-top h2 em{color:#74877c}.biology{background:#f1f0e9}.biology-lead{display:grid;grid-template-columns:30% 1fr;gap:30px;align-items:start;border-top:1px solid #cdd5ca;border-bottom:1px solid #cdd5ca;padding:22px 0;margin-bottom:26px}.biology-lead span{font:normal 25px Georgia,serif}.biology-lead p{font-size:17px;line-height:1.7;color:#5c655f;margin:0}.process-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.process-item{background:var(--surface);border:1px solid #e2e4db;padding:clamp(25px,3vw,40px);min-height:220px;display:flex;flex-direction:column;justify-content:space-between;gap:25px;box-shadow:0 10px 30px rgba(16,36,22,.035);transition:transform .2s}.process-item:hover{transform:translateY(-3px)}.process-num{font:normal 18px Georgia,serif;color:#b38b5e}.process-item p{font-size:clamp(16px,1.35vw,19px);line-height:1.72;margin:0;max-width:680px}.architecture-band{margin-top:26px;position:relative;height:clamp(270px,35vw,470px);overflow:hidden;border-radius:3px;background:#d7d6c6}.architecture-band img{width:100%;height:100%;object-fit:cover;object-position:center 45%}.architecture-band:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.65))}.architecture-band-caption{position:absolute;z-index:2;bottom:30px;left:35px;color:#fff;display:flex;flex-direction:column;gap:8px}.architecture-band-caption span{font-size:11px;letter-spacing:2px}.architecture-band-caption strong{font:normal clamp(32px,4vw,55px) Georgia,serif}.about-layout{display:grid;grid-template-columns:40% 1fr;gap:clamp(40px,6vw,100px)}.about h2,.cert-info h2,.contact h2{font:normal clamp(50px,5vw,82px)/1.06 Georgia,serif;letter-spacing:-2px;margin:0}.about h2 em,.cert-info h2 em,.contact h2 em{color:#718679}.about-sign{margin-top:33px;font-size:14px;color:#687569}.about-text{max-width:700px}.about-text p{font-size:clamp(16px,1.3vw,19px);line-height:1.9;color:#536057;margin-bottom:22px}.specialization{background:#e6ebe5}.specialization-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.specialization-grid article{min-height:340px;background:var(--green);color:#fff;padding:clamp(28px,4vw,52px);display:flex;flex-direction:column;position:relative;justify-content:space-between}.specialization-grid article+article{background:#d4c2a9;color:#25372d}.specialization-grid article>span{font-size:11px;letter-spacing:2px}.specialization-grid h3{font:normal clamp(29px,3vw,45px)/1.16 Georgia,serif;max-width:530px;margin:30px 0 0}.card-mark{position:absolute;right:36px;top:36px;font-size:25px}.services-desc{max-width:900px;font-size:17px;line-height:1.9;color:#5a645b;margin:0 0 43px 30%}.services-tools{display:flex;justify-content:space-between;border-bottom:1px solid var(--ink);padding-bottom:17px;color:#647167}.service-list{margin:0;padding:0;list-style:none}.service-list li{display:grid;grid-template-columns:64px 1fr;gap:25px;align-items:start;border-bottom:1px solid var(--line);padding:19px 0;min-width:0}.svc-n{font:normal 17px Georgia,serif;color:#b28860;padding-top:3px}.svc-name{font:normal clamp(17px,1.65vw,23px)/1.46 Georgia,serif;max-width:1150px}.svc-plus{display:none}.cert-section{background:#ebede6}.cert-grid{display:grid;grid-template-columns:1fr minmax(270px,.62fr);gap:clamp(45px,7vw,105px);align-items:center}.cert-info>p:not(.cert-disclaimer){font:normal 21px/1.5 Georgia,serif;max-width:580px;margin:28px 0}.cert-info dl{margin:0 0 24px}.cert-info dl div{border-top:1px solid #bdc7bd;padding:15px 0;display:grid;grid-template-columns:170px 1fr;gap:19px}.cert-info dl div:last-child{border-bottom:1px solid #bdc7bd}.cert-info dt{font-size:10px;letter-spacing:1.3px;color:#667368;font-weight:700}.cert-info dd{margin:0;font-size:15px;line-height:1.6;font-weight:600}.cert-disclaimer{font-size:12px;color:#656d64;line-height:1.7;max-width:550px;margin:20px 0 27px}.cert-preview{background:white;padding:19px 19px 17px;box-shadow:0 22px 55px rgba(0,0,0,.1);display:block;max-width:445px;margin:auto}.cert-preview img{width:100%;height:auto}.cert-preview span{display:block;text-align:center;font-size:10px;letter-spacing:1.5px;margin-top:15px}.contact{background:var(--green);color:white}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:clamp(45px,7vw,100px)}.contact h2{margin:35px 0 20px}.contact h2 em{color:#cbb69c}.contact-layout>div>p{font-size:16px;color:#cad6cd}.contact-details{margin-top:60px}.contact-details>div{border-top:1px solid #4e6457;padding:21px 0}.contact-details small{display:block;font-size:11px;letter-spacing:2px;color:#aabfb0;margin-bottom:11px}.contact-details a{font:normal clamp(21px,2.3vw,32px) Georgia,serif;overflow-wrap:anywhere}.form-card{border:1px solid #71867a;padding:clamp(26px,3.5vw,45px)}.form-label{color:#d3bfa5}.form-card h3{font:normal 45px Georgia,serif;margin:25px 0 35px}.form-card label{display:block;font-size:12px;margin-bottom:25px;letter-spacing:.3px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-card input,.form-card textarea{margin-top:12px;width:100%;background:transparent;border:0;border-bottom:1px solid #698173;padding:14px 0;font-size:16px;color:white;outline:0;border-radius:0}.form-card input::placeholder,.form-card textarea::placeholder{color:#aec1b2}.form-card input:focus,.form-card textarea:focus{border-color:#e0cba9}.form-card textarea{resize:vertical}.form-submit{width:100%;background:#d7bc97;color:#1a3025;border:0}.form-submit:hover{background:#e7d1b1}.trap{position:absolute!important;left:-9999px!important}.form-result{margin-top:20px}footer{background:#10251c;color:#dbe5da}.footer-row{min-height:120px;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:11px}.footer-row>span:last-child a{text-decoration:underline;text-underline-offset:3px}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #e3bd82;outline-offset:4px}@media(max-width:1120px){.menu{gap:14px}.menu>a{font-size:11px}.hero h1{font-size:clamp(56px,6vw,80px)}}@media(max-width:850px){.site-head{height:76px}.menu-button{display:flex;flex-direction:column;justify-content:center;gap:7px;border:0;background:transparent;width:42px;height:42px;cursor:pointer}.menu-button span{height:2px;background:var(--ink);width:28px}.menu{display:none;position:absolute;top:76px;left:0;right:0;background:var(--paper);padding:24px;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line);box-shadow:0 15px 30px #0002}.menu.is-open{display:flex}.menu>a{font-size:15px}.menu .nav-contact{justify-content:space-between}.hero-inner{display:flex;flex-direction:column;gap:15px}.hero-copy{padding:45px 0 18px}.hero h1{margin:40px 0 25px;font-size:clamp(64px,12vw,95px)}.hero-caption{padding-top:32px}.hero-picture{height:clamp(380px,61vw,550px)}.intro-strip-inner,.section-top,.biology-lead,.about-layout{grid-template-columns:1fr;gap:20px}.intro-strip-inner{padding-block:35px}.section-top{margin-bottom:32px}.services-desc{margin-left:0}.cert-grid,.contact-layout{grid-template-columns:1fr}.cert-preview{max-width:390px}.footer-row{flex-wrap:wrap;padding-block:25px}.specialization-grid article{min-height:270px}}@media(max-width:560px){.shell{padding-inline:20px}.brand-name{font-size:10px;letter-spacing:1px}.brand-name small{font-size:8px}.hero{padding-top:5px}.hero h1{font-size:clamp(60px,15vw,82px);letter-spacing:-2.5px}.hero-intro{font-size:16px}.hero-picture{height:330px}.photo-note{left:16px;right:16px;bottom:16px;font-size:8px}.intro-strip p{font-size:30px}.section{padding:65px 0}.section-top h2,.about h2,.cert-info h2,.contact h2{font-size:clamp(41px,11vw,56px)}.biology-lead span{font-size:22px}.biology-lead p{font-size:16px}.process-grid,.specialization-grid{grid-template-columns:1fr}.process-item{min-height:0;gap:23px;padding:25px}.process-item p{font-size:16px}.architecture-band{height:260px}.architecture-band-caption{bottom:21px;left:20px}.about-text p{font-size:16px}.specialization-grid article{min-height:260px;padding:29px}.specialization-grid h3{font-size:32px}.services-desc{font-size:16px}.service-list li{grid-template-columns:36px 1fr;gap:12px;padding:17px 0}.svc-name{font-size:18px}.svc-n{font-size:15px}.cert-info dl div{grid-template-columns:1fr;gap:7px}.form-card{padding:24px 19px}.form-row{grid-template-columns:1fr;gap:0}.footer-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.footer-row>.brand-symbol{grid-column:1/-1}.footer-row>span:last-child{text-align:right}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Kontaktní sekce: mapa přes celou šířku pod kontakty a formulářem */
.contact-layout{align-items:start;gap:clamp(35px,5vw,75px)}
.contact-details{margin-top:36px}
.contact-details>div{padding:17px 0}
.contact-details a,.contact-details span{font-size:clamp(18px,1.75vw,25px);line-height:1.35}
.contact-details .contact-address a{font-family:Arial,Helvetica,sans-serif;font-size:clamp(15px,1.2vw,17px);line-height:1.55;font-weight:500}
.contact-details .contact-ico span{display:block;font-family:Georgia,serif}
.contact-map-wide{margin-top:55px;border:1px solid #617769;background:#203b2e;overflow:hidden}
.contact-map-heading{display:flex;gap:20px;align-items:center;justify-content:space-between;padding:23px 28px}
.contact-map-heading>div{display:grid;gap:9px}
.contact-map-heading>div>span{font-size:10px;font-weight:700;letter-spacing:1.6px;color:#cdb899}
.contact-map-heading strong{font:normal clamp(17px,1.65vw,25px)/1.35 Georgia,serif;color:#f5f4eb}
.contact-map-heading>a{display:inline-flex;align-items:center;gap:17px;background:#d7bc97;color:#173025;padding:15px 20px;font-weight:700;font-size:12px;white-space:nowrap}
.contact-map-heading>a:hover{background:#f3d8b1}
.contact-map-wide iframe{display:block;width:100%;height:350px;border:0;background:#e6e8e2}
@media(max-width:850px){.contact-map-wide{margin-top:36px}.contact-map-wide iframe{height:320px}}
@media(max-width:560px){.contact-map-heading{align-items:stretch;flex-direction:column;padding:20px}.contact-map-heading>a{justify-content:space-between}.contact-map-wide iframe{height:280px}.contact-details{margin-top:26px}}

/* Mobilní sjednocení CTA a čistší patička — 2026-11-03 */
@media (max-width: 560px) {
  /* Tlačítka v úvodu: totožná šířka, výška, odsazení a zarovnání šipky. */
  .hero-actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
    width: 100%;
  }
  .hero-actions .btn {
    display: flex;
    width: 100%;
    min-width: 0;
    min-height: 60px;
    justify-content: space-between;
    align-items: center;
    padding: 16px 22px;
    font-size: 15px;
    line-height: 1.35;
    border-radius: 4px;
  }
  .hero-actions .btn span { flex: 0 0 auto; }
  /* Jednotná velikost také u kontaktu a navigace pod mapou. */
  .form-submit,
  .contact-map-heading > a {
    min-height: 60px;
    padding: 16px 22px;
    font-size: 15px;
    line-height: 1.35;
    border-radius: 4px;
  }
  .contact-map-heading > a { display: flex; width: 100%; }
  /* Patička na mobilu v jednom vystředěném, záměrně uspořádaném sloupci. */
  .footer-row {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    gap: 0;
    padding-block: 38px 32px;
    min-height: 0;
    font-size: 13px;
  }
  .footer-row > .brand-symbol {
    display: block;
    margin-bottom: 24px;
    font-size: 54px;
    line-height: 1;
  }
  .footer-row > span:nth-child(2) {
    display: block;
    margin-bottom: 12px;
    line-height: 1.6;
  }
  .footer-row > span:last-child {
    display: block;
    text-align: center;
    line-height: 1.6;
  }
  .footer-row > a[href="#nahoru"]:not(.brand-symbol) {
    display: block;
    width: 100%;
    margin-top: 29px;
    padding-top: 21px;
    border-top: 1px solid rgba(232, 239, 232, .17);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.4px;
    text-align: center;
    order: 4;
  }
}
