/* styles.css */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&display=swap');
:root{--navy:#0c2340;--deep:#081a31;--ink:#132a44;--body:#536278;--muted:#5a6b80;--blue:#1d5fa8;--gold:#e3c069;--gold-ink:#7a6326;--gold-on-dark:#d9bd79;--line:#d6dfeb;--paper:#f5f8fc;--soft:#eaf0f8;--section-h2:clamp(36px,3.6vw,50px);--card-title:22px;--label-size:12px;--count-dur:1600ms}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;font:16px 'DM Sans',Arial,sans-serif;background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:6px}.skip{position:absolute;left:20px;top:-100px;background:white;padding:16px;z-index:10}.skip:focus{top:10px}.header{height:96px;padding:0 5%;display:flex;align-items:center;gap:25px;background:#fff;color:var(--ink);border-bottom:1px solid var(--line)}.brand{display:flex;flex-shrink:0}.brand img{width:157px;height:32px}.nav{margin-left:auto;display:flex;align-items:center;gap:23px;font-size:13px;font-weight:450}.nav a{padding-bottom:6px;border-bottom:1.5px solid transparent}.nav a:hover{color:var(--blue)}.nav a[aria-current=page]{color:var(--blue);border-bottom-color:var(--blue)}.nav-cta{display:flex;gap:25px;padding:12px 16px;font-size:13px;border:1px solid #bba15f;color:#efdbac;white-space:nowrap}.nav-cta:hover{background:#ffffff0a}.menu{display:none}.hero{display:grid;grid-template-columns:46% 54%;background:var(--navy);color:#f7f8f5;min-height:740px;overflow:hidden}.hero-copy{padding:89px 3% 36px 11%;display:flex;flex-direction:column;align-items:flex-start;z-index:2}h1{font-size:clamp(44px,4.7vw,79px);letter-spacing:-.055em;line-height:1.04;font-weight:450;margin:0 0 28px;width:110%}em{font-style:normal;color:var(--gold-ink)}.hero em,.page-hero em,.seller-hero em,.invest-hero em,.inv-hero em,.legal-hero em,.thanks em,.dark-section em,.structure h2 em,.contact h2 em{color:var(--gold)}.hero-copy>p{max-width:420px;font-size:17px;line-height:1.8;color:#c8d5e5;margin:0 0 34px}.hero-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:space-between;min-height:53px;gap:24px;padding:16px 20px;font-size:14px;font-weight:550;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button>span,.text-link>span,.dark-link>span{font-size:20px;line-height:1}.gold{background:var(--gold);color:#142b44}.gold:hover{background:#ecd491}.blue{background:var(--blue);color:white}.blue:hover{background:#154c86}.text-link{padding:14px 0;border-bottom:1px solid currentColor;display:inline-flex;align-items:center;gap:10px;font-size:14px;transition:color .2s,border-color .2s}.text-link:hover{color:var(--blue);border-bottom-color:var(--blue)}.hero .text-link:hover,.inv-hero .text-link:hover,.seller-hero .text-link:hover,.page-hero .text-link:hover,.invest-hero .text-link:hover,.process-section .text-link:hover,.contact-band .text-link:hover,.structure .text-link:hover,.thanks .text-link:hover{color:#9ec6f0;border-bottom-color:#9ec6f0}.hero-foot{display:flex;align-items:center;gap:12px;color:#a9bed5;font-size:12px;margin-top:auto;padding-top:44px}.hero-foot>span{height:32px;width:32px;border:1px solid #5b7291;border-radius:50%;display:grid;place-items:center;font-size:18px}.section{padding-left:7%;padding-right:7%}.about{padding-top:95px;padding-bottom:85px;display:grid;grid-template-columns:1fr 1fr;gap:9%}.section-label{display:block;font-size:var(--label-size);font-weight:600;color:var(--gold-ink);text-transform:uppercase;letter-spacing:.15em;margin-bottom:22px}h2{font-size:var(--section-h2);line-height:1.13;font-weight:450;letter-spacing:-.045em;margin:0}h2 em{color:var(--gold-ink)}.about-copy{padding-top:5px}.about-copy p{font-size:16px;line-height:1.85;color:var(--body);margin:0 0 20px}.about-copy .lead{font-size:23px;color:var(--ink);line-height:1.5;margin-bottom:23px}.dark-link{display:inline-flex;align-items:center;gap:25px;font-size:14px;font-weight:550;border-bottom:1px solid #8c9fba;padding:12px 0;margin-top:4px;color:var(--blue)}.work{padding-top:70px;padding-bottom:76px;background:var(--soft)}.section-top{display:flex;align-items:flex-end;justify-content:space-between;gap:40px}.section-top h2{font-size:var(--section-h2)}.section-top>p{font-size:15px;line-height:1.8;color:var(--body);margin:0}.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5%;margin-top:52px}.work-grid article{border-top:1px solid #c4d0df;padding-top:23px}.work-number{font-size:13px;color:var(--gold-ink)}.work-grid h3{font-size:var(--card-title);font-weight:500;line-height:1.25;letter-spacing:-.4px;margin:25px 0 15px;white-space:normal;overflow-wrap:anywhere}.work-grid p{font-size:15px;line-height:1.8;color:var(--body);margin:0}.process{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding-top:85px;padding-bottom:95px;background:#fff}.process h2{font-size:var(--section-h2)}.process-heading>p{font-size:16px;line-height:1.8;color:var(--body);margin:25px 0}.process-list details{border-top:1px solid var(--line)}.process-list details:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:22px;min-height:83px;font-size:21px;letter-spacing:-.4px;font-weight:450}summary::-webkit-details-marker{display:none}summary>span{font-size:var(--label-size);color:var(--muted);letter-spacing:1px}summary>b{margin-left:auto;font-weight:400;font-size:26px;color:#47698f;transition:transform .2s}details[open] summary>b{transform:rotate(45deg)}details[open] summary{color:var(--blue)}details>p{padding:0 15px 28px 40px;font-size:15px;line-height:1.9;color:var(--body);margin:0}.contact{padding-top:76px;padding-bottom:79px;background:var(--navy);color:#eff4fb;display:grid;grid-template-columns:1.3fr 1fr;gap:10%}.contact .section-label{color:var(--gold-on-dark)}.contact h2{font-size:var(--section-h2)}.contact .contact p{color:#b9c9de;font-size:16px;line-height:1.8;margin:25px 0}.contact-details{display:flex;flex-direction:column;gap:22px;padding-top:5px}.contact-details>div{display:flex;flex-direction:column;gap:7px}.contact-details>div>span{font-size:12px;color:#a9bdd5}.contact-details a{font-size:28px;letter-spacing:-.6px}.contact-details a:hover{color:var(--gold)}.contact-details p{font-size:13px;margin:0;color:#a9bdd5}
@media(min-width:1600px){.hero{min-height:790px}.hero-copy{padding-left:15.2%;padding-top:102px}.hero h1{font-size:82px}.hero-copy>p{font-size:19px;max-width:470px}.header{padding-left:7%;padding-right:7%}.hero-actions{gap:26px}}
@media(max-width:1200px){.nav{gap:17px}.header{padding:0 4%;gap:20px}.hero-copy{padding-left:8.7%;padding-top:80px}.hero h1{font-size:58px}.hero{min-height:720px}.hero-copy>p{font-size:16px;max-width:375px}.hero-actions{gap:10px 20px}.section{padding-left:6%;padding-right:6%}.section-top h2{font-size:35px}.about{gap:7%}h2{font-size:44px}.process{gap:6%}.process h2{font-size:39px}}
@media(max-width:900px){.nav{gap:13px;font-size:12px}.nav-cta{display:none}.header{height:83px}.hero h1{font-size:49px}.hero-copy>p{font-size:15px}.hero-copy{padding-top:62px}.hero{min-height:680px}.about-copy .lead{font-size:21px}.work-grid h3{font-size:24px}.contact h2{font-size:40px}.contact-details a{font-size:25px}}
@media(max-width:760px){.header{height:76px;padding:0 6%;position:relative;z-index:5}.header .brand img{width:147px;height:30px}.menu{display:flex;flex-direction:column;gap:6px;margin-left:auto;padding:10px 0 10px 5px;border:0;background:none}.menu>span{width:22px;height:1px;background:var(--ink)}.nav{display:none;position:absolute;left:0;right:0;top:76px;margin:0;padding:24px 6% 28px;background:#fff;font-size:16px;border-top:1px solid var(--line);box-shadow:0 12px 12px #00122c14}.nav.open{display:flex;flex-direction:column;align-items:stretch;gap:21px}.hero{display:flex;flex-direction:column}.hero-copy{padding:48px 6% 35px}.hero h1{font-size:clamp(45px,9.5vw,67px);width:auto;margin-bottom:25px}.hero-copy>p{font-size:16px;max-width:500px;margin-bottom:28px}.hero-actions{gap:14px 24px}.button{font-size:13px;padding:15px 18px}.text-link{font-size:13px}.hero-foot{display:none}.about{grid-template-columns:1fr;padding-top:55px;padding-bottom:52px;gap:28px}.section-label{font-size:12px;margin-bottom:18px}h2{font-size:41px}.about-copy .lead{font-size:22px}.work{padding-top:49px;padding-bottom:50px}.section-top{display:block}.section-top h2{font-size:33px}.section-top>p{margin-top:22px}.work-grid{grid-template-columns:1fr;gap:30px;margin-top:35px}.work-grid article{display:grid;grid-template-columns:36px 1fr;padding-top:20px}.work-number{padding-top:6px}.work-grid h3{margin:0 0 13px;font-size:25px}.work-grid h3 br{display:none}.work-grid p{grid-column:2}.process{grid-template-columns:1fr;padding-top:51px;padding-bottom:55px;gap:38px}.process h2{font-size:39px}.process h2 br:last-of-type{display:none}summary{font-size:19px;gap:17px;min-height:75px}details>p{padding-left:32px}.contact{grid-template-columns:1fr;gap:42px;padding-top:50px;padding-bottom:54px}.contact h2{font-size:38px}.contact p{font-size:15px}.contact-details{gap:25px}.contact-details a{font-size:28px}}
.bond-notice{border-top:1px solid #ffffff14;margin-bottom:20px}.bond-notice summary{font-size:12px;min-height:48px;color:#b0c0d5;letter-spacing:0}.bond-notice summary b{font-size:20px;color:#b0c0d5}.bond-notice[open] summary{color:#dfe7f2}.bond-notice p{font-size:12px;line-height:1.8;color:#aabbd1;padding:0 0 16px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}


/* animation.css */
.portfolio-animation{position:relative;isolation:isolate;background:#0b1e39;overflow:hidden;min-width:0;display:flex;flex-direction:column;--stage-progress:0%;--reveal:72%}.scene-heading{z-index:3;display:flex;align-items:center;justify-content:space-between;padding:28px 7% 0 8%;font-size:14px;letter-spacing:.1px;color:#c6d5e8}.motion-toggle{height:36px;width:36px;border:1px solid #516b8e;background:#142e4caa;color:#e3c069;border-radius:50%;cursor:pointer;display:grid;place-items:center;flex-shrink:0}.motion-toggle:hover{background:#25466c}.motion-symbol{font-size:16px}.portfolio-scene{height:430px;position:relative;margin-top:-5px;overflow:hidden}.city-camera{position:absolute;inset:0;transform:translate(4%,5%) scale(1.24);transition:transform 4.5s cubic-bezier(.2,.55,.35,1);transform-origin:50% 60%}.city-camera>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.city-base{filter:brightness(.45) saturate(.5)}.city-reveal{clip-path:inset(0 var(--reveal) 0 0);transition:clip-path 4.2s cubic-bezier(.18,.65,.25,1);filter:brightness(1.06)}.light-sweep{position:absolute;inset:0;background:linear-gradient(100deg,transparent 25%,#f7dfa914 45%,#fff0c329 50%,transparent 65%);mix-blend-mode:screen;transform:translateX(-100%);animation:architectural-light 24s ease-in-out infinite;pointer-events:none}.scene-vignette{position:absolute;inset:-1px;background:linear-gradient(90deg,#0b1e39,transparent 15%,transparent 88%,#0b1e39),linear-gradient(0deg,#0b1e39,transparent 24%,transparent 80%,#0b1e39);pointer-events:none}.portfolio-animation[data-stage="1"]{--reveal:46%}.portfolio-animation[data-stage="1"] .city-camera{transform:translate(1%,3%) scale(1.14)}.portfolio-animation[data-stage="2"]{--reveal:20%}.portfolio-animation[data-stage="2"] .city-camera{transform:translate(-1%,1%) scale(1.07)}.portfolio-animation[data-stage="3"]{--reveal:0%}.portfolio-animation[data-stage="3"] .city-camera{transform:translate(0,0) scale(1)}.stage-caption{padding:0 7% 0 8%;margin-top:-6px;min-height:90px;display:flex;align-items:flex-start;gap:20px;position:relative;z-index:2}.stage-count{font-size:12px;letter-spacing:1px;color:#d6b568;padding-top:9px;white-space:nowrap}.stage-caption h2{font-size:28px;line-height:1.2;color:#f3f6fc;letter-spacing:-.7px;margin:0 0 9px}.stage-caption p{font-size:14px;color:#b4c7df;line-height:1.5;margin:0;max-width:390px}.story-steps{padding:22px 7% 29px 8%;display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:auto;z-index:3}.story-step{border:0;background:transparent;color:#91aacb;padding:8px 0;text-align:left;cursor:pointer;min-width:0;font-family:inherit}.step-track{display:block;height:2px;background:#385274;margin-bottom:13px;position:relative;overflow:hidden}.step-track i{display:block;width:0;height:100%;background:#e3c069}.story-step.active .step-track i{width:var(--stage-progress)}.story-step.complete .step-track i{width:100%}.story-step.active,.story-step:hover{color:#ecd294}.step-label{font-size:13px;display:flex;gap:7px;line-height:1.4}.step-label b{font-weight:400;color:#8da6c7;font-size:11px;padding-top:2px}.story-step.active .step-label b{color:#d6b568}
.portfolio-animation{padding-top:3px}.portfolio-scene{height:462px;margin-top:5px}.stage-caption{min-height:93px}.story-steps{gap:13px;padding-top:23px;padding-bottom:36px}.step-label{font-size:12px}.portfolio-scale{display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:#fff;padding-top:34px;padding-bottom:36px;border-bottom:1px solid #d6dfeb}.scale-item{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:0 30px;border-left:1px solid #d6dfeb}.scale-item:first-child{border-left:0;padding-left:0}.scale-item>strong{font-size:46px;line-height:1.15;letter-spacing:-1.9px;font-weight:450;color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap}.scale-item small{font-size:21px;letter-spacing:-.4px}.scale-item>span{font-size:14px;color:var(--muted)}.portfolio-animation.paused .light-sweep{animation-play-state:paused}.portfolio-animation.paused .city-camera,.portfolio-animation.paused .city-reveal{transition:none}@keyframes architectural-light{0%,10%{transform:translateX(-100%)}80%,100%{transform:translateX(100%)}}
@media(min-width:1600px){.portfolio-scene{height:505px}.scene-heading{padding-top:33px}.stage-caption h2{font-size:30px}.story-steps{padding-bottom:39px}.step-label{font-size:13px}}
@media(max-width:1200px){.portfolio-scene{height:442px}.scene-heading{padding-left:6%;padding-right:6%}.stage-caption{padding-left:6%;padding-right:6%;gap:15px}.stage-caption h2{font-size:26px}.stage-count{font-size:11px}.story-steps{padding-left:6%;padding-right:6%;gap:10px}.step-label{font-size:11px}.scale-item{padding-left:24px;padding-right:15px}.scale-item>strong{font-size:40px}.scale-item small{font-size:18px}.scale-item>span{font-size:13px}}
@media(max-width:900px){.portfolio-scene{height:401px}.scene-heading{font-size:12px}.stage-caption h2{font-size:23px}.stage-caption p{font-size:13px}.stage-caption{min-height:104px}.step-label{font-size:11px}.scale-item{padding-left:18px}.scale-item>strong{font-size:36px}.scale-item small{font-size:16px}.scale-item>span{font-size:12px}}
@media(max-width:760px){.portfolio-animation{min-height:555px}.scene-heading{padding-top:20px;font-size:13px}.portfolio-scene{height:343px;margin-top:-4px}.stage-caption{min-height:105px;margin-top:-3px}.stage-caption h2{font-size:26px}.stage-caption p{font-size:14px}.stage-count{font-size:11px}.story-steps{padding-top:8px;padding-bottom:25px;gap:12px}.step-label{font-size:11px;line-height:1.6}.portfolio-scale{grid-template-columns:1fr 1fr;gap:28px 0;padding-top:31px;padding-bottom:31px}.scale-item{padding-left:20px}.scale-item:nth-child(3){border-left:0;padding-left:0;grid-column:1/-1;padding-top:8px}.scale-item>strong{font-size:40px}.scale-item small{font-size:17px}.scale-item>span{font-size:12px}}
@media(prefers-reduced-motion:reduce){.city-camera,.city-reveal{transition:none}.light-sweep{animation:none}}


/* map.css */
/* A large portfolio map with a vertical three-stage timeline. */
.hero{grid-template-columns:35% 65%;min-height:800px}
.hero-copy{padding:90px 6% 40px 12%}
.hero h1{width:100%;font-size:clamp(43px,3.75vw,69px)}
.hero-copy>p{max-width:415px}
.map-scene-3d{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:center;min-width:0;overflow:hidden;background:radial-gradient(ellipse at 60% 40%,#24476540,transparent 68%),#0a1e35;border-left:1px solid #42627d60;padding:32px 3% 38px}
.map-header{display:flex;align-items:center;justify-content:flex-end;gap:20px;color:#a5b8ce;font-size:13px;width:100%;position:relative;z-index:2}
.map-header>span{display:flex;align-items:center;gap:12px}
.map-header i{height:12px;width:1px;background:#6d81974d}
.map-toggle{display:grid;place-items:center;width:35px;height:35px;border:1px solid #536d87;border-radius:50%;color:#dfc080;background:transparent;cursor:pointer;flex-shrink:0}
.map-toggle:hover{background:#294663}
.map-toggle span{font-size:16px}
.map-layout{display:grid;grid-template-columns:114px minmax(0,1fr);grid-template-rows:1fr auto;column-gap:18px;align-items:center;flex:1;width:100%;min-width:0}
.map-visual{grid-column:2;grid-row:1;display:flex;align-items:center;justify-content:center;min-width:0;width:100%;margin:0;min-height:520px}
.czech-map-3d{display:block;width:108%;max-width:none;height:auto;flex-shrink:0;overflow:visible}
.map-point{pointer-events:none}
.map-story{grid-column:1;grid-row:1;display:flex;flex-direction:column;align-self:center;gap:0;position:relative;z-index:2;margin:0;padding:0}
.map-step{position:relative;display:grid;grid-template-columns:17px minmax(0,1fr);grid-template-rows:auto 1fr;align-content:start;column-gap:11px;row-gap:7px;min-height:116px;padding:7px 0 19px;border:0;background:transparent;cursor:pointer;text-align:left;color:#95a9c0;font-family:inherit;font-size:14px;line-height:1.55;white-space:normal}
.map-step b{grid-column:2;grid-row:1;font-size:12px;letter-spacing:1px;font-weight:400;color:#8197ae}
.map-step.active,.map-step:hover{color:#ebd397}
.map-step.active b{color:#dfbc6a}
.map-track{grid-column:1;grid-row:1/3;display:block;align-self:stretch;position:relative;width:2px;height:auto;background:#3b526a;margin:3px 0 0 5px;overflow:visible}
.map-track:before{content:"";position:absolute;top:0;left:-3px;width:8px;height:8px;border-radius:50%;background:#627a92}
.map-track i{display:block;width:100%;height:0;background:#dfbc6a;transition:height 80ms linear}
.map-step.active .map-track i{height:var(--scene-progress,0%)}
.map-step.complete .map-track i{height:100%}
.map-step.active .map-track:before,.map-step.complete .map-track:before{background:#dfbc6a}
.map-step.active .map-track:before{box-shadow:0 0 0 5px #dfbc6a16}
.map-narrative{grid-column:2;grid-row:2;width:100%;border-top:1px solid #6a82962b;padding-top:24px;position:relative;z-index:2}
.map-stage-caption{display:flex;align-items:flex-start;gap:17px;min-height:100px}
.map-stage-count{padding-top:7px;white-space:nowrap;font-size:12px;letter-spacing:1px;color:#c2a96f}
.map-stage-caption h2{font-size:28px;line-height:1.2;letter-spacing:-.8px;font-weight:450;color:#eff3fa;margin:0 0 11px}
.map-stage-caption p{font-size:14px;line-height:1.65;color:#a8bdd2;max-width:540px;margin:0}
@media(min-width:1600px){.hero{min-height:860px}.hero-copy{padding-top:108px}.hero h1{font-size:72px}.map-scene-3d{padding:35px 3% 42px}.map-layout{grid-template-columns:126px minmax(0,1fr);column-gap:22px}.map-visual{min-height:580px}.map-stage-caption h2{font-size:30px}}
@media(max-width:1200px){.hero{grid-template-columns:36% 64%;min-height:770px}.hero h1{font-size:46px}.hero-copy{padding:85px 6% 36px 9%}.map-scene-3d{padding-inline:3%}.map-layout{grid-template-columns:100px minmax(0,1fr);column-gap:12px}.map-step{font-size:13px;column-gap:7px}.map-stage-caption{gap:12px}.map-stage-caption h2{font-size:25px}.map-visual{min-height:470px}}
@media(max-width:900px){.hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:54px 6% 40px}.hero h1{font-size:clamp(44px,7vw,64px)}.hero-copy>p{max-width:570px;font-size:16px}.hero-foot{display:none}.map-scene-3d{border-left:0;border-top:1px solid #42627d60;padding:24px 4% 30px}.map-layout{grid-template-columns:110px minmax(0,1fr);column-gap:16px}.map-visual{min-height:400px}.map-stage-caption{min-height:100px}.map-step{font-size:14px}.map-stage-caption h2{font-size:26px}}
@media(max-width:540px){.hero-copy{padding:45px 6% 32px}.hero h1{font-size:clamp(44px,9vw,60px)}.map-header{font-size:12px;gap:12px}.map-header>span{gap:9px}.map-scene-3d{padding:20px 4% 25px}.map-layout{grid-template-columns:74px minmax(0,1fr);column-gap:7px}.map-visual{min-height:295px}.czech-map-3d{width:112%}.map-step{grid-template-columns:8px minmax(0,1fr);column-gap:7px;row-gap:5px;font-size:12px;min-height:88px;padding-bottom:12px;line-height:1.45}.map-step b{font-size:12px}.map-track{margin-left:2px}.map-track:before{width:6px;height:6px;left:-2px}.map-narrative{grid-column:1/3;padding-top:20px}.map-stage-caption{min-height:104px;gap:12px}.map-stage-caption h2{font-size:24px}.map-stage-caption p{font-size:14px}}
@media(prefers-reduced-motion:reduce){.map-track i{transition:none}}

/* Průběh fází pod mapou: vodorovný ukazatel místo svislé osy a popisků (16. 9. 2026). */
.map-layout{grid-template-columns:minmax(0,1fr);grid-template-rows:1fr auto;column-gap:0;row-gap:20px}
.map-visual{grid-column:1;grid-row:1}
.map-story{grid-column:1;grid-row:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;width:100%;border-top:1px solid #6a82962b;padding-top:20px}
.map-step{display:flex;flex-wrap:wrap;align-items:center;gap:0 8px;min-height:0;padding:0;font-size:14px;line-height:1.4;color:#95a9c0}
.map-step b{font-size:12px;letter-spacing:1px;color:#8197ae}
.map-track{order:2;flex-basis:100%;display:block;width:100%;height:4px;border-radius:999px;background:#3b526a;margin:12px 0 0;overflow:hidden;position:relative}
.map-track:before{display:none}
.map-track i{display:block;height:100%;width:0;border-radius:999px;background:linear-gradient(90deg,#c9a45a,#f0d38a);transition:width 60ms linear}
.map-step.active .map-track{background:#4a6784}
.map-step.active .map-track i,.map-step.complete .map-track i{height:100%}
.map-step.active .map-track i{width:var(--scene-progress,0%);box-shadow:0 0 12px #e3c06980}
.map-step.complete .map-track i{width:100%}
@media(max-width:760px){.map-story{gap:10px;padding-top:14px}.map-step{font-size:12px}.map-step b{flex-basis:100%;margin-bottom:2px}.map-track{margin-top:8px}}
@media(prefers-reduced-motion:reduce){.map-track i{transition:none}}

/* Mapa na polovinu šířky panelu, legenda barev (16. 9. 2026). */
.map-visual{min-height:0;justify-content:center;padding:24px 0}
.czech-map-3d{width:54%}
.map-layout{grid-template-rows:1fr auto auto}
.map-legend{grid-column:1;grid-row:3;display:flex;flex-wrap:wrap;gap:6px 22px;margin:0;padding:14px 0 0;list-style:none;font-size:12px;letter-spacing:.2px;color:#8fa4bc}
.map-legend li{display:flex;align-items:center;gap:8px}
.map-legend i{width:10px;height:10px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff9 0,transparent 45%),var(--c);box-shadow:0 1px 3px #020b1788}
@media(max-width:760px){.czech-map-3d{width:70%}.map-legend{gap:6px 16px;font-size:11px}}

/* Hero sekce na polovinu výšky (16. 9. 2026): menší nadpis, paddingy i mapa. */
.hero{min-height:400px}
.hero-copy{padding:40px 3% 24px 12%}
.hero h1{font-size:clamp(30px,2.5vw,46px);margin:0 0 16px;width:100%}
.hero-copy>p{font-size:15px;line-height:1.6;max-width:400px;margin:0 0 20px}
.hero-actions{gap:10px 16px}
.hero-actions .button{min-height:44px;padding:11px 16px;font-size:13px}
.hero-foot{padding-top:20px}
.map-scene-3d{padding:16px 3% 18px;justify-content:center}
.map-header{font-size:12px}
.map-toggle{width:30px;height:30px}
.map-layout{row-gap:10px}
.map-visual{padding:8px 0}
.czech-map-3d{width:36%}
.map-story{padding-top:12px;gap:14px}
.map-step{font-size:12px;line-height:1.3}
.map-track{height:3px;margin-top:8px}
.map-legend{padding-top:8px;font-size:11px;gap:4px 16px}
@media(min-width:1600px){.hero{min-height:430px}.hero-copy{padding-top:48px}.hero h1{font-size:48px}}
@media(max-width:1200px){.hero{min-height:385px}.hero-copy{padding:36px 6% 22px 9%}.hero h1{font-size:34px}.czech-map-3d{width:42%}}
@media(max-width:900px){.hero{min-height:0}.hero-copy{padding:36px 6% 26px}.hero h1{font-size:clamp(30px,5vw,40px)}.map-scene-3d{padding:16px 4% 18px}.czech-map-3d{width:48%}}
@media(max-width:540px){.hero-copy{padding:30px 6% 22px}.hero h1{font-size:clamp(30px,7vw,38px)}.czech-map-3d{width:64%}.map-visual{min-height:0}}

/* Panel s mapou max. na polovinu šířky stránky (16. 9. 2026). */
.hero{grid-template-columns:minmax(0,1fr) minmax(0,50%)}
.map-scene-3d{max-width:50vw}
.czech-map-3d{width:46%}
@media(max-width:1200px){.hero{grid-template-columns:minmax(0,1fr) minmax(0,50%)}.czech-map-3d{width:52%}}
@media(max-width:900px){.map-scene-3d{max-width:none}.czech-map-3d{width:48%}}
@media(max-width:540px){.czech-map-3d{width:64%}}

/* Mapa roztažená na celou šířku panelu (16. 9. 2026). */
.map-scene-3d{padding:14px 2.5% 16px}
.map-visual{padding:0;overflow:hidden}
.czech-map-3d{width:100%;height:auto}
.map-layout{grid-template-rows:minmax(0,1fr) auto;row-gap:0}
.map-visual{grid-column:1;grid-row:1}
.map-narrative{grid-column:1;grid-row:2;width:100%;margin:0;position:relative;z-index:3;display:flex;flex-direction:column;gap:12px;padding:16px 0 4px;background:#0a1e35;border-top:0}
.map-narrative:before{display:none}
.map-progress{height:3px;border-radius:999px;background:#3b526a;overflow:hidden;margin:0;position:relative;z-index:1}
.map-progress i{display:block;height:100%;width:var(--scene-progress,0%);border-radius:inherit;background:linear-gradient(90deg,#5a9ad4,#7fb2e8);box-shadow:0 0 12px #7fb2e880;transition:width 60ms linear}
.map-stage-caption{display:flex;align-items:flex-start;gap:16px;min-height:92px}
.map-stage-count{padding-top:6px;white-space:nowrap;font-size:12px;letter-spacing:1px;color:#c2a96f}
.map-stage-caption h2{font-size:22px;line-height:1.2;letter-spacing:-.4px;font-weight:450;color:#eff3fa;margin:0 0 8px}
.map-stage-caption p{font-size:14px;line-height:1.6;color:#a8bdd2;max-width:52em;margin:0;min-height:calc(2em * 1.6)}
@media(max-width:1200px){.czech-map-3d{width:100%}.map-stage-caption h2{font-size:20px}}
@media(max-width:900px){.czech-map-3d{width:100%}}
@media(max-width:540px){.czech-map-3d{width:100%}.map-narrative{padding:14px 0 2px}.map-stage-caption{gap:12px;flex-direction:column;min-height:110px}.map-stage-count{padding-top:0}.map-stage-caption h2{font-size:19px}}
@media(prefers-reduced-motion:reduce){.map-progress i{transition:none}}

/* Tři vlasové linky; 01–03 a název nad nimi, pod nimi jen text. */
.map-progress,.map-stage-count{display:none}
.map-story{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:16px;width:100%;margin:0;padding:0;border:0;grid-column:auto;grid-row:auto}
.map-step{display:flex;flex-direction:column;flex-wrap:nowrap;align-items:stretch;justify-content:flex-start;gap:7px;min-height:0;padding:0;font-size:13px;line-height:1.3;color:#8fa4bc}
.map-step-label{display:block;min-width:0}
.map-step b{display:inline;font-size:inherit;letter-spacing:inherit;font-weight:inherit;margin-right:.55em;color:inherit;grid-column:auto;grid-row:auto;flex-basis:auto}
.map-step.active,.map-step:hover{color:#7fb2e8}
.map-step.active b{color:#7fb2e8}
.map-step.complete{color:#c5d4e6}
.map-step.complete b{color:#9fb4cf}
.map-track{display:block;flex:0 0 2px;align-self:auto;width:100%;height:2px;min-height:2px;max-height:2px;border-radius:0;background:#3b526a;margin:0;overflow:hidden;position:relative;box-shadow:none}
.map-track:before{display:none;content:none}
.map-track i{display:block;width:0;height:2px;max-height:2px;border-radius:0;background:#7fb2e8;box-shadow:none;transition:width 60ms linear}
.map-step.active .map-track{background:#4a6784}
.map-step.active .map-track i,.map-step.complete .map-track i{width:var(--scene-progress,0%);height:2px;max-height:2px;background:#7fb2e8;box-shadow:none}
.map-step.complete .map-track i{width:100%}
@media(max-width:760px){.map-story{gap:12px}.map-step{font-size:12px;min-width:0}}@media(max-width:540px){.map-story{grid-template-columns:1fr;gap:14px}.map-step{font-size:13px;padding-bottom:4px}.map-step-label{line-height:1.4}}
@media(prefers-reduced-motion:reduce){.map-track i{transition:none}}

/* Cookie lišta z /cfg-consent.js (16. 9. 2026). Nový web nenačítá cfg-base.css,
   odkud lišta dřív brala styl; hodnoty odpovídají tokenům starého ceere-brand.css. */
.cfg-cc{position:fixed;left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:2000;max-width:560px;margin:0 auto;background:var(--deep);color:#dee8f4;border:1px solid #dee8f41f;box-shadow:0 16px 48px #00000080;padding:22px;display:none}
.cfg-cc.is-visible{display:block}
.cfg-cc__title{font-size:17px;font-weight:600;letter-spacing:0;margin:0 0 8px;color:inherit}
.cfg-cc__text{font-size:13.5px;line-height:1.55;margin:0;color:#dee8f4bf}
.cfg-cc__link{color:inherit;text-decoration:underline}
.cfg-cc__cats{margin:14px 0 0;display:flex;flex-direction:column;gap:10px}
.cfg-cc__cat{display:flex;align-items:center;gap:10px;font-size:14px;cursor:pointer}
.cfg-cc__cat input{width:18px;height:18px;accent-color:var(--gold)}
.cfg-cc__cat em{opacity:.6}
.cfg-cc__btns{margin-top:16px;display:flex;flex-wrap:wrap;gap:10px}
.cfg-cc__btn{min-height:46px;padding:11px 18px;font:600 14px/1 'DM Sans',Arial,sans-serif;cursor:pointer;flex:1 1 auto;border:1px solid transparent;transition:background .15s,border-color .15s}
.cfg-cc__btn--primary{background:var(--gold);color:#142b44}
.cfg-cc__btn--primary:hover{background:#ecd491}
.cfg-cc__btn--ghost{background:transparent;color:#dee8f4;border-color:#dee8f44d}
.cfg-cc__btn--ghost:hover{border-color:#dee8f499}
@media(max-width:520px){.cfg-cc__btn{flex-basis:100%}}

/* Karty s animovanými ikonami místo čísel ([data-icons]: homepage „Náš přístup k nemovitostem“).
   Kroužek se ikonou se po najetí karty do záběru postupně dokreslí, stejně jako .process-steps. */
[data-icons]>:nth-child(2){--i:1}[data-icons]>:nth-child(3){--i:2}[data-icons]>:nth-child(4){--i:3}[data-icons]>:nth-child(5){--i:4}
.feat-icon{width:56px;height:56px;display:grid;place-items:center;border:1px solid var(--gold-ink);border-radius:50%;color:var(--gold-ink);transition:border-color .4s,color .4s,transform .6s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--i,0) * .18s)}
.feat-icon svg{width:26px;height:26px}
.feat-icon path{stroke-dasharray:1;stroke-dashoffset:0;transition:stroke-dashoffset .9s cubic-bezier(.4,0,.2,1);transition-delay:calc(var(--i,0) * .18s + .1s)}
.feat-icon path:nth-child(2){transition-delay:calc(var(--i,0) * .18s + .2s)}
.feat-icon path:nth-child(3){transition-delay:calc(var(--i,0) * .18s + .3s)}
.feat-icon path:nth-child(4){transition-delay:calc(var(--i,0) * .18s + .4s)}
.feat-icon path:nth-child(5){transition-delay:calc(var(--i,0) * .18s + .5s)}
.feature-grid[data-icons] h3{margin-top:24px}
[data-icons][data-reveal]:not(.is-visible) .feat-icon{border-color:#cad5e3;color:#cad5e3;transform:scale(.8);transition:none}
[data-icons][data-reveal]:not(.is-visible) .feat-icon path{stroke-dashoffset:1;transition:none}
@media(prefers-reduced-motion:reduce){.feat-icon,.feat-icon path{transition:none!important}}
.work-grid[data-icons] h3{margin-top:24px}
@media(max-width:1100px){.work-grid{gap:4%}.work-grid h3{font-size:19px;white-space:normal}}@media(max-width:900px){.work-grid{grid-template-columns:1fr;gap:28px;margin-top:36px}.work-grid h3{font-size:var(--card-title)}}
@media(max-width:760px){.work-grid[data-icons] article{display:block}.work-grid[data-icons] h3,.work-grid h3{margin:20px 0 12px;white-space:normal;font-size:22px}.feat-icon{width:50px;height:50px}.feat-icon svg{width:23px;height:23px}}

/* Struktura společnosti (pavouk) na homepage, převzato z cfgre.cz (#skupina) a přebarveno.
   CEE Real Estate jako střed, pod ním pět dceřiných společností podle základního
   prospektu. Desktop = SVG .group-map, mobil = .group-tree. Spojnice a uzly se dokreslí
   po najetí do záběru (main.js přidá [data-reveal] a .is-visible).
   Sekce se jmenuje .structure (dřív kolidovala s .group odkazu „Člen skupiny CFG“ v hlavičce). */
.structure{background:var(--navy);color:#eff4fb;padding-top:76px;padding-bottom:76px;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1.35fr);column-gap:5%;row-gap:28px;align-items:center}
.group-copy{grid-column:1;min-width:0}
.structure .section-label{color:var(--gold-on-dark)}
.structure h2{font-size:var(--section-h2)}
.structure 
.group-copy>p{font-size:16px;line-height:1.8;color:#b9c9de;margin:28px 0 0}
.group-cfg{margin-top:28px;padding-top:0;border-top:0}
.group-cfg p{font-size:16px;line-height:1.8;color:#b9c9de;margin:0 0 22px}
.group-cfg__brand{display:flex;flex-wrap:wrap;align-items:center;gap:8px 24px}
.group-cfg img{display:block;height:22px;width:auto}
.group-cfg .text-link{padding:8px 0}
.group-visual{grid-column:2;max-width:920px;justify-self:center;align-self:center;width:100%;min-width:0}
.group-map{display:block;width:100%;height:auto;overflow:visible;font-family:inherit}
.group-map .link{fill:none;stroke:var(--gold);stroke-width:1.2;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:0;transition:stroke-dashoffset .9s cubic-bezier(.4,0,.2,1);transition-delay:var(--d,0s)}
.group-map .link--dashed{stroke-dasharray:.06 .06;stroke-dashoffset:0;transition:opacity .6s;transition-delay:var(--d,0s)}
.group-map .tip{fill:none;stroke:var(--gold);stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round;transition:opacity .35s;transition-delay:calc(var(--d,0s) + .7s)}
.group-map .node{transform-box:fill-box;transform-origin:center;transition:opacity .6s,transform .6s cubic-bezier(.2,.8,.2,1);transition-delay:var(--d,0s)}
.group-map[data-reveal]:not(.is-visible) .link{stroke-dashoffset:1;transition:none}
.group-map[data-reveal]:not(.is-visible) .link--dashed{opacity:0}
.group-map[data-reveal]:not(.is-visible) .tip,.group-map[data-reveal]:not(.is-visible) .node{opacity:0;transition:none}
.group-map[data-reveal]:not(.is-visible) .node{transform:scale(.85)}
.group-map .hub__disc{fill:var(--deep);stroke:var(--gold);stroke-width:1.5}
.group-map .halo{fill:none;stroke:#e3c06947;stroke-width:1;transform-box:fill-box;transform-origin:center;animation:group-halo 4.5s ease-in-out infinite}
.group-map .halo--2{stroke:#e3c0691f;animation-delay:-2.25s}
@keyframes group-halo{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.55}}
.group-map .hub__mark{fill:#f7f8fb;font-size:25px;font-weight:700;letter-spacing:-1px;text-anchor:middle}
.group-map .hub__sub{fill:var(--gold);font-size:8px;font-weight:700;letter-spacing:1.6px;text-anchor:middle}
.group-map .parent__disc{fill:var(--gold);stroke:#4d6b8e;stroke-width:1.5}
.group-map .parent__mark{fill:#142b44;font-size:18px;font-weight:700;letter-spacing:-.8px;text-anchor:middle}
.group-map .parent__sub{fill:#142b44;font-size:7px;font-weight:700;letter-spacing:1.2px;text-anchor:middle}
.group-map .parent:hover .parent__disc{fill:#ecd491}
.group-map .kid__disc{fill:#15304e;stroke:#4d6b8e;stroke-width:1}
.group-map .kid__ico{fill:none;stroke:var(--gold);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.group-map .label{fill:#e6edf7;font-size:16px;font-weight:500;text-anchor:middle}
.group-tree{display:none}
.group-tree__row{display:flex;align-items:center;gap:18px}
.group-tree__row--hub{position:relative}
.group-tree__chip{flex-shrink:0;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;font-size:14px;font-weight:700;letter-spacing:-.6px}
.group-tree__chip--gold{background:var(--gold);border:1px solid #4d6b8e;color:#142b44}
.group-tree__chip--hub{background:var(--deep);border:1px solid var(--gold);color:#f7f8fb;box-shadow:0 0 0 8px #e3c0691f}
.group-tree__text strong{font-size:16px;font-weight:500;color:#e6edf7}
a.group-tree__row:hover .group-tree__text strong{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:.28em}
.group-tree__kids{list-style:none;margin:0 0 0 26px;padding:24px 0 0 34px;border-left:1px solid var(--gold);display:flex;flex-direction:column;gap:16px;font-size:15px;font-weight:500;color:#e6edf7}
.group-tree__kids li{position:relative}
.group-tree__kids li:before{content:"";position:absolute;left:-34px;top:50%;width:22px;height:1px;background:var(--gold)}
.group-tree__kids li:after{content:"";position:absolute;left:-16px;top:50%;width:5px;height:5px;border-right:1px solid var(--gold);border-bottom:1px solid var(--gold);transform:translateY(-50%) rotate(-45deg)}
@media(max-width:1100px){.structure{grid-template-columns:1fr;gap:56px;align-items:start}.group-copy,.group-visual{grid-column:auto}.group-copy>p{max-width:600px}.group-visual{justify-self:center;max-width:640px;margin-top:0}}
@media(max-width:760px){.structure{padding-top:50px;padding-bottom:54px;gap:40px}.structure h2{font-size:36px}.group-map{display:none}.group-tree{display:block}}
@media(prefers-reduced-motion:reduce){.group-map .halo{animation:none}}

/* Patička podle cfgre.cz: logo s popisem společnosti, navigace a kontakty,
   pod nimi upozornění k dluhopisům (compliance) a právní linka. */
.site-footer{background:var(--deep);color:#c2cede;padding-top:54px;padding-bottom:26px;display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px 56px;font-size:14px;line-height:1.8}
.site-footer .brand img{width:157px;height:32px}
.footer-brand p{margin:22px 0 0;max-width:46ch;color:#a9bdd5}
.footer-col{display:grid;gap:6px;align-content:start}
.footer-head{margin-bottom:8px;color:#f2f6fb;font-weight:600}
.site-footer address{font-style:normal;color:#a9bdd5}
.site-footer a:not(.brand):hover{color:#9ec6f0;text-decoration:underline;text-decoration-color:#9ec6f0;text-underline-offset:.28em}
.site-footer .bond-notice{grid-column:1/-1;margin:0}
.footer-legal{grid-column:1/-1;border-top:1px solid #ffffff25;padding-top:22px;display:flex;gap:25px;flex-wrap:wrap;font-size:13px;color:#91a4be}
.footer-legal span{margin-right:auto}
@media(max-width:1100px){.site-footer{grid-template-columns:1fr 1fr;gap:34px 40px}.footer-brand{grid-column:1/-1}}
@media(max-width:760px){.site-footer{grid-template-columns:1fr;gap:30px;padding-top:40px}.footer-legal{display:grid;gap:10px}.footer-legal span{margin-right:0}}

/* Realizované projekty: karusel převzatý z cfgre.cz (markup + projects.js), přebarvený.
   Nahoře lišta se záložkami projektů (běžící linka autoplaye přes --progress) a šipkami,
   pod ní slidy přes sebe v jedné buňce gridu, aktivní se prolne a fotky dojedou. */
.projects{padding-top:90px;padding-bottom:94px}
.projects .section-heading p{color:var(--body);line-height:1.8;margin:20px 0 0}
.cfgre-projects{margin-top:45px}
.cfgre-projects__bar{display:flex;flex-wrap:wrap;align-items:center;gap:20px 32px;margin-bottom:18px}
.cfgre-projects__dots{list-style:none;margin:0;padding:0;display:flex;gap:4px;flex:1;min-width:0;max-width:820px}
.cfgre-projects__dots li{flex:1;min-width:0}
.cfgre-projects__dots button{display:block;width:100%;padding:6px 14px 10px 0;border:0;background:transparent;color:var(--muted);font:inherit;font-size:16px;line-height:1.3;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;transition:color .25s}
.cfgre-projects__dots [aria-current]{color:var(--ink);font-weight:500}
.cfgre-projects__dots button:hover{color:var(--ink)}
.cfgre-projects__dots i{display:block;height:4px;margin-top:10px;background:#d6dfeb;position:relative;overflow:hidden}
.cfgre-projects__dots i:after{content:"";position:absolute;inset:0;background:var(--blue);transform-origin:left;transform:scaleX(0)}
.cfgre-projects__dots [aria-current] i:after{transform:scaleX(var(--progress,1))}
.cfgre-projects__nav{display:flex;align-items:center;gap:8px}
.cfgre-projects__btn{width:40px;height:40px;border:1px solid #b0c0d2;border-radius:50%;background:transparent;color:var(--ink);display:grid;place-items:center;cursor:pointer;transition:border-color .25s,color .25s,transform .25s}
.cfgre-projects__btn:hover{border-color:var(--blue);color:var(--blue)}
.cfgre-projects__btn:active{transform:scale(.94)}
.cfgre-projects__btn svg{width:20px;height:20px}
.cfgre-projects__count{font-size:15px;color:var(--muted);font-variant-numeric:tabular-nums;min-width:42px;text-align:center}
.cfgre-projects__track{list-style:none;margin:0;padding:0;display:grid;min-width:0;overflow:hidden}
.cfgre-project{grid-area:1/1;display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:5%;align-items:center;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .6s ease,visibility 0s linear .6s;min-width:0}
.cfgre-project.is-active{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .6s ease}
.cfgre-project__compare{display:grid;gap:12px;min-width:0}
.cfgre-project__shot{position:relative;margin:0;overflow:hidden;transform:translateX(-24px);opacity:0;transition:transform .9s cubic-bezier(.2,.8,.2,1),opacity .6s ease}
.cfgre-project__shot--after{transition-delay:.18s}
.cfgre-project.is-active .cfgre-project__shot{transform:none;opacity:1}
.cfgre-project__frame{min-width:0;display:grid;grid-template-columns:repeat(var(--cols,4),minmax(0,1fr));gap:5px}
.cfgre-project__shot img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;background:var(--soft)}
.cfgre-project__shot figcaption{position:absolute;top:12px;left:12px;padding:8px 14px;font-size:14px;line-height:1.2;letter-spacing:.3px;background:var(--navy);color:#fff;box-shadow:0 2px 8px #00000040}
.cfgre-project__shot figcaption span{font-weight:700;text-transform:uppercase;letter-spacing:1px}
.cfgre-project__shot--after figcaption{background:var(--blue)}
.cfgre-project__body{transform:translateY(14px);transition:transform .7s cubic-bezier(.2,.8,.2,1)}
.cfgre-project.is-active .cfgre-project__body{transform:none}
.cfgre-project h3{font-size:clamp(30px,2.8vw,40px);font-weight:500;line-height:1.15;letter-spacing:-1px;margin:0 0 20px}
.cfgre-project p{font-size:17px;line-height:1.75;color:var(--body);margin:0 0 26px}
.cfgre-project__tags{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:10px}
.cfgre-project__tags li{font-size:12px;font-weight:550;letter-spacing:.2px;background:var(--blue);color:#fff;padding:7px 13px}
@media(max-width:1100px){.cfgre-project{grid-template-columns:1fr;gap:28px;align-items:start}.cfgre-project__body,.cfgre-project__compare{max-width:720px}}
@media(max-width:760px){
  .projects{padding-top:57px;padding-bottom:60px}
  .projects .section-heading{margin-bottom:0}
  .cfgre-projects{margin-top:28px}
  .cfgre-project__compare{gap:18px}
  .cfgre-project__frame{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cfgre-project__shot figcaption{top:8px;left:8px;padding:6px 10px;font-size:13px}
  .cfgre-project h3{font-size:26px}
  .cfgre-project p{font-size:16px}
  .cfgre-projects__bar{gap:14px;flex-direction:column;align-items:stretch;margin-bottom:14px}
  .cfgre-projects__dots{flex-wrap:nowrap;flex-basis:auto;max-width:none;width:100%;gap:4px;overflow:visible;padding-bottom:0}
  .cfgre-projects__dots li{flex:1;min-width:0;width:auto}
  .cfgre-projects__dots button{padding-right:8px;font-size:15px}
  .cfgre-projects__nav{align-self:flex-end}
}
@media(prefers-reduced-motion:reduce){.cfgre-project,.cfgre-project__shot,.cfgre-project__body{transition:none}}
/* Hlavička realizací: eyebrow jako ostatní sekce na pro-investory. */
.projects .section-heading{max-width:770px;margin-bottom:49px}
.projects .section-label,.projects .eyebrow{display:block;color:var(--gold-ink);text-transform:uppercase;letter-spacing:.15em;font-size:var(--label-size);font-weight:600;margin-bottom:22px}
@media(max-width:760px){.projects .section-heading{margin-bottom:0}}

/* Rozcestník na konci homepage (stejné karty jako /o-spolecnosti/). */
.links-section{padding-top:90px;padding-bottom:94px;background:#fff}
.links-section .section-heading{margin-bottom:49px}
.link-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}
.link-card{position:relative;display:flex;flex-direction:column;background:var(--paper);border-top:3px solid #3c6fa5;padding:30px 28px;transition:transform .2s,box-shadow .2s}
.link-card:hover{transform:translateY(-3px);box-shadow:0 16px 40px #17324e14}
.link-card b{font-size:var(--label-size);letter-spacing:.1em;font-weight:600;color:var(--gold-ink);text-transform:uppercase}
.link-card h3{font-size:24px;font-weight:500;line-height:1.25;margin:22px 0 12px}
.link-card p{font-size:15px;line-height:1.75;color:var(--body);margin:0 0 24px}
.link-card .text-link{margin-top:auto;align-self:flex-start}
.link-card .text-link:after{content:"";position:absolute;inset:0}
.link-card:hover .text-link{color:var(--blue);border-bottom-color:var(--blue)}
@media(max-width:900px){.link-cards{grid-template-columns:1fr}}
@media(max-width:760px){.links-section{padding-top:57px;padding-bottom:60px}.links-section .section-heading{margin-bottom:32px}}

/* Velká rozlišení (16. 9. 2026): obsah se nerozlézá přes celou šířku okna.
   Boční odsazení sekcí roste tak, aby obsah zůstal do 1440 px a byl vystředěný;
   pozadí sekcí (navy bandy, patička) jde dál přes celou šířku. Princip z cfgre.cz,
   kde obsah drží .cm-container a textové bloky mají max-width v em. */
@media(min-width:1500px){
  .section{padding-left:max(7%,(100% - 1440px)/2);padding-right:max(7%,(100% - 1440px)/2)}
  .header{padding-left:max(7%,(100% - 1440px)/2);padding-right:max(7%,(100% - 1440px)/2)}
  .hero-copy{padding-left:max(7vw,(100vw - 1440px)/2)}
  .bond-grid{max-width:1000px;margin-inline:auto}
  .portfolio-scale{padding-left:max(7%,(100% - 1440px)/2);padding-right:max(7%,(100% - 1440px)/2)}
  .docs-notice,.projects .section-heading p{max-width:52em}
}

/* Hero na homepage: text vystředěný na výšku proti panelu s mapou a o něco větší (16. 9. 2026).
   Původní rozvržení tlačilo obsah nahoru (hero-foot měl margin-top:auto). */
.hero{min-height:560px;align-items:stretch}
.hero-copy{justify-content:center;padding-top:44px;padding-bottom:44px}
.hero h1{font-size:clamp(36px,3.1vw,58px);margin:0 0 20px}
.hero-copy>p{font-size:17px;line-height:1.7;max-width:460px;margin:0 0 26px}
.hero-actions .button{min-height:50px;padding:14px 20px;font-size:14px}
.hero-foot{margin-top:0;padding-top:28px}
@media(min-width:1600px){.hero{min-height:600px}}
@media(max-width:1200px){.hero{min-height:480px}.hero-copy>p{font-size:16px}}
@media(max-width:900px){.hero{min-height:0}.hero-copy{justify-content:flex-start;padding-top:40px;padding-bottom:32px}}
@media(max-width:540px){.hero-copy{padding-top:34px;padding-bottom:26px}.hero-copy>p{font-size:16px}}

/* Jednotná velikost titulku v hero sekci na všech stránkách (16. 9. 2026).
   Token --hero-h1 je jediné místo, kde se ladí; používá ho homepage i podstránky. */
:root{--hero-h1:clamp(40px,4.3vw,70px)}
.hero h1,.page-hero h1,.seller-hero h1,.invest-hero h1,.inv-hero h1,.legal-hero h1,.thanks h1{font-size:var(--hero-h1);line-height:1.04;letter-spacing:-.05em}
@media(max-width:1200px){:root{--hero-h1:clamp(36px,4.6vw,54px)}}
@media(max-width:900px){:root{--hero-h1:clamp(34px,5.6vw,48px)}}
@media(max-width:540px){:root{--hero-h1:clamp(31px,7.6vw,42px)}}
