/*
Theme Name: CUBELAB Orbit
Description: Zakázková prezentace CUBELAB 3D. Lokální návrh s redakční správou realizací a článků.
Version: 0.1.0
Text Domain: cubelab-orbit
*/
@font-face{font-family:Hanken;src:url('assets/hanken.ttf') format('truetype');font-weight:100 900;font-style:normal;font-display:swap}
:root{--bg:#090e15;--surface:#10171f;--ink:#f1f4f3;--muted:#9ba8ae;--line:#ffffff17;--teal:#64ffff;--font:Hanken,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--teal);outline-offset:6px}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:500;line-height:1.1;letter-spacing:-.045em}h1{font-size:clamp(48.6px,5.67vw,86.4px)}h2{font-size:clamp(34.2px,3.6vw,54.9px);margin-bottom:0}h2 span{color:var(--muted)}h3{font-size:22.5px;letter-spacing:-.025em}p{color:var(--muted)}.wrap{width:min(1280px,calc(100% - 112px));margin-inline:auto}.section{padding-top:110px;padding-bottom:110px}.icon{width:24px;height:24px;flex-shrink:0}.eyebrow{display:flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.17em;font-weight:600;text-transform:uppercase;color:var(--teal);margin-bottom:27px}.status-dot{display:inline-block;width:6px;height:6px;background:var(--teal);border-radius:50%;box-shadow:0 0 12px #64ffff4d}.skip{position:fixed;top:-100px;left:15px;z-index:1000;background:var(--teal);color:var(--bg);padding:12px}.skip:focus{top:10px}.site-header{height:100px;display:flex;align-items:center;justify-content:space-between;width:min(1440px,calc(100% - 112px));margin:auto;position:relative;z-index:10;border-bottom:1px solid var(--line)}.brand img{width:210px;height:auto}.site-header nav{display:flex;gap:32px;align-items:center;font-size:14px}.site-header nav>a{font-size:inherit;line-height:1;font-weight:400;color:#c3ccce;transition:color .2s}.site-header nav>a:hover{color:var(--teal)}.site-header .nav-contact{border:1px solid #a4c8c53d;padding:12px 20px;display:flex;align-items:center;gap:25px;color:var(--ink);min-height:48px;line-height:1}.nav-contact .icon{width:17px;height:17px;display:block}.menu-toggle{display:none}.space{position:relative;isolation:isolate;background:radial-gradient(ellipse at 70% 45%,#163b422f,transparent 50%),radial-gradient(ellipse at 45% 85%,#25194329,transparent 60%)}.space:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.23;background-image:radial-gradient(1px 1px at 20px 30px,#bddeef 60%,transparent 100%),radial-gradient(1px 1px at 120px 140px,#c1d5da 60%,transparent 100%),radial-gradient(1px 1px at 220px 80px,#78aab9 60%,transparent 100%);background-size:277px 241px,413px 377px,359px 327px}.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;min-height:620px;padding-top:35px;padding-bottom:35px}.hero-copy{position:relative;z-index:2}.hero h1{margin-bottom:28px;line-height:1.04;letter-spacing:-.055em}.hero h1 span{color:var(--teal)}.hero-intro{font-size:18px;line-height:1.65;color:#a9b4b9}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:38px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:16px 23px;font-size:13px;font-weight:600;transition:background .2s,transform .2s}.button.primary{background:var(--teal);color:#091c1d}.button:hover{background:#adfff1;transform:translateY(-2px)}.button .icon{width:20px}.text-link{display:inline-flex;align-items:center;gap:20px;font-size:13px;font-weight:500}.text-link:hover{color:var(--teal)}.text-link .icon{width:19px}.orbital-art{position:relative;width:112%;margin-left:-5%;aspect-ratio:1.08}.orbital-art>svg{width:100%;height:100%;animation:float 10s ease-in-out infinite}.art-label{position:absolute;font:9px monospace;letter-spacing:.12em;color:#70878d}.art-label.top{right:19%;top:10%}.art-label.bottom{left:22%;bottom:5%}.art-caption{position:absolute;bottom:25%;right:0;font-size:11px;color:#9bb3b6;writing-mode:vertical-rl}.hero-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);height:75px;font-size:9px;letter-spacing:.15em;color:#7f9098}.hero-bottom a{font-size:11px;letter-spacing:.04em;color:#bdc7ca}.hero-bottom a span{margin-left:20px;color:var(--teal)}.clients{display:flex;align-items:center;gap:75px;padding-block:47px;border-bottom:1px solid var(--line)}.clients p{flex-shrink:0;font-size:12px;line-height:1.5;margin:0;color:#7f9098}.clients strong{font-weight:500;color:#bcc6ca}.client-names{width:100%;display:flex;align-items:center;justify-content:space-between;gap:30px;color:#b0b8bd;font-size:18px;font-weight:600;letter-spacing:-.04em}.client-names .rexroth{font-size:23px;font-weight:700}.client-names .tescan{font-size:26px;font-weight:800;letter-spacing:.1em}.client-names .theatre{font-size:16px;line-height:1.15}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:55px}.section-heading>p,.section-heading>div>p:not(.eyebrow){font-size:14px;line-height:1.8;margin-bottom:6px}.section-heading .text-link{margin-top:18px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line)}.service{padding:32px 25px 26px;border-right:1px solid var(--line);transition:background .25s}.service:first-child{padding-left:0}.service:last-child{border-right:0;padding-right:0}.service:hover{background:#172d302e}.service-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:37px}.service-top>.icon{width:39px;height:39px;color:var(--teal)}.service-top span{font:10px monospace;color:#62737d}.service h3{font-size:20.7px;margin-bottom:18px}.service>p{font-size:13px;line-height:1.8;min-height:115px;margin-bottom:25px}.service-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px}.service-bottom small{font-size:9px;color:#87979d}.service-bottom>.icon{width:18px;color:var(--teal)}.projects{overflow:hidden;background-color:#0b101d;border-block:1px solid var(--line);padding-bottom:40px}.projects.space{background-image:radial-gradient(ellipse at 50% 55%,#17324270,transparent 55%),radial-gradient(ellipse at 90% 90%,#27234d55,transparent 60%)}.projects .section-heading{margin-bottom:50px}.carousel{outline-offset:-4px}.carousel-stage{display:flex;gap:24px;padding:0 50px;overflow:auto}.project-card{flex:0 0 340px;background:#111a24;border:1px solid #58707733;overflow:hidden}.project-photo{display:block;position:relative;aspect-ratio:1.12;overflow:hidden}.project-photo img{width:100%;height:100%;object-fit:cover}.photo-arrow{position:absolute;bottom:16px;right:16px;background:#0b172a99;border:1px solid #ffffff44;width:35px;height:35px;display:grid;place-items:center;border-radius:50%;backdrop-filter:blur(10px)}.photo-arrow .icon{width:16px}.project-copy{padding:25px}.project-copy .eyebrow{font-size:9px;letter-spacing:.1em;margin-bottom:12px}.project-copy h3{font-size:22.5px;margin-bottom:12px}.project-copy>p:not(.eyebrow){font-size:12px;line-height:1.65;min-height:40px;margin-bottom:16px}.project-tags{font-size:9px;letter-spacing:.02em;color:#8b9da9;margin-bottom:20px}.project-link{border-top:1px solid var(--line);padding-top:16px;display:flex;justify-content:space-between;align-items:center;font-size:11px}.project-link .icon{width:16px;color:var(--teal)}.carousel.is-ready .carousel-stage{height:555px;position:relative;overflow:visible;padding:0;perspective:1300px;display:block}.is-ready .project-card{position:absolute;width:340px;left:calc(50% - 170px);top:0;transition:transform .65s cubic-bezier(.22,.7,.3,1),opacity .65s,filter .65s;transform-origin:center;backface-visibility:hidden;will-change:transform}.project-card[data-offset="0"]{z-index:5;transform:translateX(0);opacity:1;box-shadow:0 20px 75px #0005}.project-card[data-offset="1"]{z-index:4;transform:translateX(330px) translateZ(-100px) rotateY(-26deg);filter:brightness(.65)}.project-card[data-offset="-1"]{z-index:4;transform:translateX(-330px) translateZ(-100px) rotateY(26deg);filter:brightness(.65)}.project-card[data-offset="2"]{z-index:3;transform:translateX(615px) translateZ(-210px) rotateY(-38deg);filter:brightness(.4)}.project-card[data-offset="-2"]{z-index:3;transform:translateX(-615px) translateZ(-210px) rotateY(38deg);filter:brightness(.4)}.project-card[data-offset="3"],.project-card[data-offset="-3"]{z-index:1;transform:translateX(750px) translateZ(-400px) rotateY(-45deg);opacity:0;pointer-events:none}.carousel-controls{display:flex;justify-content:space-between;align-items:center;padding-top:22px;border-top:1px solid var(--line);gap:20px}.carousel-label{font-size:9px;letter-spacing:.13em;color:#83949f}.carousel-dots{display:flex;gap:5px;align-items:center}.carousel-dots button{width:24px;height:30px;border:0;background:transparent;position:relative;padding:0}.carousel-dots button:before{content:"";width:5px;height:5px;position:absolute;top:12px;left:9px;background:#596772;border-radius:50%;transition:background .3s,width .3s}.carousel-dots button[aria-current="true"]:before{width:18px;left:3px;border-radius:5px;background:var(--teal)}.arrow-controls{display:flex;align-items:center;gap:9px}.carousel-count{font:11px monospace;color:#98a8b3;margin-right:17px}.arrow-controls button{width:43px;height:43px;border:1px solid #ffffff30;color:var(--ink);background:transparent;font-size:22px}.arrow-controls button:hover{background:var(--teal);color:var(--bg);border-color:var(--teal)}.studio{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.studio-visual{position:relative;aspect-ratio:1;overflow:hidden;border:1px solid var(--line)}.studio-visual>img{width:100%;height:100%;object-fit:cover;filter:saturate(.7)}.image-note{position:absolute;bottom:20px;left:20px;padding:10px 16px;background:#09131cc9;backdrop-filter:blur(12px);display:flex;align-items:center;gap:10px;font-size:11px}.studio-copy h2{margin-bottom:28px}.studio-copy .lead{font-size:21px;color:#d4dedf;line-height:1.5}.studio-copy>p:not(.eyebrow):not(.lead){font-size:14px;line-height:1.85}.studio-copy .text-link{margin-top:17px}.process{background:#e2eae7;color:#142927}.process .eyebrow{color:#4c7871}.process p{color:#586b67}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:45px}.process-grid>div{border-top:1px solid #183e3a33;padding-top:22px}.step-number{font:12px monospace;color:#577971}.process h3{font-size:20.7px;margin-top:33px;margin-bottom:15px}.process-grid p{font-size:13px;line-height:1.8;margin:0}.journal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.journal-image{aspect-ratio:1.75;position:relative;overflow:hidden;background:var(--surface)}.journal-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s;filter:saturate(.65)}.journal-grid a:hover img{transform:scale(1.04)}.journal-image>.icon{position:absolute;bottom:14px;right:14px;background:#101a2299;width:34px;height:34px;padding:8px;backdrop-filter:blur(8px)}.journal-grid .eyebrow{font-size:9px;margin-block:23px 12px;color:var(--teal)}.journal-grid h3{font-size:21.6px;line-height:1.25}.contact{border-block:1px solid var(--line);background-color:#0c151c}.contact-grid{display:grid;grid-template-columns:1.6fr 1fr;align-items:end;gap:70px}.contact h2{font-size:clamp(34.2px,4.275vw,65px);margin-bottom:28px}.contact h2 span{color:var(--teal)}.contact p{font-size:15px;line-height:1.8}.contact-email{display:inline-flex;gap:35px;align-items:center;font-size:clamp(22px,2.5vw,35px);letter-spacing:-.03em;border-bottom:1px solid #64ffff77;padding-bottom:10px;margin-top:16px}.contact-email .icon{color:var(--teal);width:28px;height:28px}.contact-details{border-left:1px solid var(--line);padding-left:55px}.contact-details>a{font-size:24px;letter-spacing:-.03em}.contact-details p{margin-top:25px;color:#d3dce0}.contact-details small{font-size:13px;color:var(--muted)}.contact-company{font-size:12px;line-height:1.8;color:#7c8f98;margin-top:38px}.footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-block:37px;font-size:10px;color:#7f8f97}.footer .brand img{width:130px;opacity:.52;transition:opacity .8s ease}.footer .brand:hover img,.footer .brand:focus-visible img{opacity:1}.footer p{margin:0}.footer>a:not(.brand){color:#c0cdcf}.footer>a.footer-credit{color:#7f8f97}.footer>a.footer-credit:hover,.footer>a.footer-credit:focus-visible{color:var(--teal)}.detail-hero{padding-block:65px 50px}.back-link{font-size:12px;color:var(--muted);display:block;margin-bottom:50px}.detail-hero h1{max-width:1000px;font-size:clamp(36px,4.95vw,70.2px);margin-bottom:25px}.detail-intro{font-size:20px;max-width:750px;line-height:1.6}.detail-layout{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:80px;padding-bottom:100px}.detail-image{width:100%;height:auto;max-height:650px;object-fit:cover}.detail-layout dl{margin:32px 0}.detail-layout dt{text-transform:uppercase;color:var(--teal);font-size:10px;letter-spacing:.14em;margin-top:25px}.detail-layout dd{margin:6px 0;font-size:16px;color:#c8d4d6}.prose{color:#b5c2c6;line-height:1.85}.prose p{color:inherit}.prose h2{font-size:30.6px;color:var(--ink);margin:45px 0 22px;line-height:1.2}.prose h3{font-size:22.5px;color:var(--ink);margin:35px 0 15px}.prose>h2:first-child{margin-top:0}.prose a{color:var(--teal);text-decoration:underline;text-underline-offset:4px}.prose img{height:auto;margin-block:20px}.prose figure{margin:25px 0}.prose figcaption{font-size:12px}.prose ul{padding-left:20px}.prose .wp-block-columns{display:block}.page-prose{max-width:850px;padding-bottom:90px}.archive-main{padding-block:80px 100px}.archive-main h1{font-size:clamp(40.5px,4.95vw,67.5px);margin-bottom:60px}.archive-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:55px 30px}.archive-grid img{width:100%;aspect-ratio:1.1;height:auto;object-fit:cover}.archive-grid .eyebrow{margin-block:20px 12px;font-size:10px}.archive-grid h2{font-size:24.3px;line-height:1.2;margin-bottom:18px}.archive-grid p:not(.eyebrow){font-size:14px}.archive-grid .text-link{color:var(--teal)}.navigation.pagination{margin-top:50px}.page-numbers{padding:12px}.admin-bar .site-header{margin-top:0}@keyframes float{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-12px) rotate(1deg)}}
@media(min-width:1550px){.hero-grid{min-height:700px}.hero h1{font-size:90px}}
@media(max-width:1100px){.wrap,.site-header{width:calc(100% - 64px)}.site-header nav{gap:22px}.hero-grid{min-height:550px}.hero h1{font-size:clamp(46.8px,5.85vw,64.8px)}.hero-intro{font-size:16px}.hero-actions{gap:20px}.hero-actions .button{padding:14px 16px;gap:18px}.hero-actions .text-link{font-size:12px;gap:10px}.orbital-art{width:110%;margin-left:-5%}.clients{gap:35px}.client-names{gap:20px;font-size:15px}.client-names .rexroth{font-size:19px}.client-names .tescan{font-size:23px}.section{padding-block:85px}.service{padding-inline:18px}.service h3{font-size:18.9px}.service>p{min-height:140px}.service-bottom small{font-size:8px}.studio{gap:50px}.studio-copy h2{font-size:37.8px}.process-grid{gap:25px}.process h3{font-size:18.9px}.contact-details{padding-left:35px}.detail-layout{gap:40px}}
@media(max-width:780px){.wrap,.site-header{width:calc(100% - 40px)}.site-header{height:78px}.brand img{width:156px}.menu-toggle{display:flex;gap:17px;align-items:center;background:transparent;color:var(--ink);border:1px solid var(--line);padding:8px 12px;font-size:12px}.menu-toggle span{color:var(--teal);font-size:20px}.site-header nav{display:none;position:absolute;top:77px;left:-20px;right:-20px;background:#101a23;border-bottom:1px solid #32484a;padding:25px;box-shadow:0 25px 40px #0007}.site-header nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:20px}.nav-contact{justify-content:space-between}.hero-grid{grid-template-columns:1fr 1fr;min-height:510px;position:relative}.hero-copy{grid-column:1 / -1;width:75%;padding-block:32px}.hero h1{font-size:57.6px}.hero-intro{font-size:15px}.orbital-art{position:absolute;width:55%;right:-10px;top:35px;opacity:.42;z-index:0}.art-label,.art-caption{display:none}.hero-copy .eyebrow{font-size:9px}.hero-actions{margin-top:28px}.hero-bottom{height:62px}.hero-bottom>span:last-child{display:none}.clients{padding-block:30px;gap:30px}.client-names{flex-wrap:wrap;justify-content:flex-start;gap:18px 25px}.client-names .rexroth{font-size:17px}.client-names .tescan{font-size:21px}.client-names .theatre{font-size:14px}.client-names>span:last-child{display:none}.section{padding-block:70px}.section-heading{align-items:flex-start;gap:25px;margin-bottom:37px}.section-heading h2{font-size:36px}.section-heading>p,.section-heading>div>p:not(.eyebrow){font-size:12px}.section-heading>p br,.section-heading>div>p:not(.eyebrow) br{display:none}.service-grid{grid-template-columns:repeat(2,1fr)}.service,.service:first-child,.service:last-child{padding:25px}.service:nth-child(2){border-right:0}.service:nth-child(-n+2){border-bottom:1px solid var(--line)}.service>p{min-height:85px}.service-top{margin-bottom:25px}.service-bottom small{font-size:9px}.projects .section-heading{display:block}.projects .section-heading>div+div{margin-top:22px}.carousel-label{display:none}.carousel-controls{padding-top:20px}.studio{gap:35px}.studio-copy h2{font-size:31.5px}.studio-copy .lead{font-size:17px}.studio-copy>p:not(.eyebrow):not(.lead){font-size:12px}.image-note{font-size:9px;left:10px;bottom:10px;padding:7px 9px}.process-grid{grid-template-columns:repeat(2,1fr);gap:35px}.journal-grid{gap:17px}.journal-grid h3{font-size:17.1px}.journal-grid .eyebrow{font-size:8px;letter-spacing:.08em}.contact-grid{gap:35px;grid-template-columns:1.4fr 1fr}.contact-details{padding-left:25px}.contact-details>a{font-size:20px}.contact p{font-size:13px}.contact-email{font-size:24px;gap:15px}.footer{flex-wrap:wrap}.footer p{order:3;width:60%}.footer>span{order:4}.detail-layout{grid-template-columns:1fr;gap:45px}.detail-layout aside{max-width:550px}.archive-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.hero-grid{min-height:580px;display:block;padding-top:5px;padding-bottom:0}.hero-copy{width:100%;padding-top:45px;padding-bottom:40px}.hero h1{font-size:52.2px;margin-bottom:25px;position:relative}.hero-intro{font-size:15px;max-width:310px}.hero .eyebrow{margin-bottom:34px}.orbital-art{width:280px;right:-50px;top:250px;opacity:.28}.hero-actions{align-items:flex-start;flex-direction:column;gap:22px}.hero-actions .button{padding:15px 18px;font-size:12px;gap:30px}.hero-actions .text-link{font-size:12px}.hero-bottom{font-size:8px}.hero-bottom a{font-size:10px}.clients{display:block;padding-block:28px}.clients p{margin-bottom:20px}.clients p br{display:none}.clients p strong{margin-left:5px}.client-names{justify-content:space-between;gap:20px 14px}.client-names>span{font-size:14px}.client-names .rexroth{font-size:17px}.client-names .tescan{font-size:21px}.client-names .theatre{font-size:13px}.section{padding-block:60px}.eyebrow{font-size:9px;margin-bottom:20px}.section-heading{display:block}.section-heading h2{font-size:35.1px}.section-heading>p{margin-top:23px;font-size:13px}.section-heading>div>p:not(.eyebrow){font-size:13px}.service-grid{grid-template-columns:1fr}.service,.service:first-child,.service:last-child{padding:25px 0;border-right:0;border-bottom:1px solid var(--line)}.service:last-child{border-bottom:0}.service-top{margin-bottom:22px}.service h3{font-size:22.5px}.service>p{min-height:0;max-width:330px;font-size:14px;margin-bottom:20px}.service-bottom small{font-size:10px}.carousel.is-ready .carousel-stage{height:560px}.is-ready .project-card{width:290px;left:calc(50% - 145px)}.project-copy{padding:22px}.project-copy h3{font-size:21.6px}.project-copy>p:not(.eyebrow){font-size:13px}.project-card[data-offset="1"]{transform:translateX(270px) translateZ(-160px) rotateY(-30deg)}.project-card[data-offset="-1"]{transform:translateX(-270px) translateZ(-160px) rotateY(30deg)}.project-card[data-offset="2"]{transform:translateX(470px) translateZ(-260px) rotateY(-40deg)}.project-card[data-offset="-2"]{transform:translateX(-470px) translateZ(-260px) rotateY(40deg)}.carousel-dots{gap:0}.carousel-dots button{width:21px}.carousel-count{font-size:9px;margin-right:2px}.arrow-controls{gap:6px}.arrow-controls button{width:38px;height:38px}.carousel-controls{gap:5px}.studio{grid-template-columns:1fr;gap:35px}.studio-visual{aspect-ratio:1.1}.studio-copy h2{font-size:36px}.studio-copy .lead{font-size:20px}.studio-copy>p:not(.eyebrow):not(.lead){font-size:14px}.process-grid{gap:28px 20px}.process h3{font-size:18.9px;margin-top:25px}.process-grid p{font-size:12px}.journal-grid{grid-template-columns:1fr;gap:32px}.journal-grid h3{font-size:22.5px}.journal-grid .eyebrow{font-size:9px;margin-top:18px}.journal .section-heading .text-link{margin-top:24px}.contact-grid{grid-template-columns:1fr;gap:40px}.contact h2{font-size:37.6px}.contact-details{padding-left:0;padding-top:30px;border-left:0;border-top:1px solid var(--line)}.contact-email{font-size:28px}.contact-details>a{font-size:24px}.footer{padding-block:30px;gap:20px}.footer .brand img{width:120px}.footer p{font-size:9px;width:100%}.footer>span{font-size:9px}.detail-hero{padding-top:40px}.detail-hero h1{font-size:37.8px;overflow-wrap:anywhere}.detail-intro{font-size:17px}.detail-layout{padding-bottom:55px}.prose{font-size:15px}.prose h2{font-size:25.2px}.archive-grid{grid-template-columns:1fr;gap:40px}.archive-main{padding-block:55px}.archive-main h1{font-size:39.6px;margin-bottom:35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

.project-gallery{padding-bottom:90px}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.gallery-grid img{width:100%;height:auto;aspect-ratio:1;object-fit:cover}.gallery-grid a:hover{opacity:.8}@media(max-width:520px){.gallery-grid{grid-template-columns:1fr;gap:20px}.project-gallery{padding-bottom:60px}}
/* Keep room for complete captions and controls, including longer Czech titles. */
.carousel.is-ready .carousel-stage{height:650px;perspective:none}
.project-card[data-offset="1"]{transform:translateX(360px) scale(.88) perspective(1000px) rotateY(-28deg)}
.project-card[data-offset="-1"]{transform:translateX(-360px) scale(.88) perspective(1000px) rotateY(28deg)}
.project-card[data-offset="2"]{transform:translateX(650px) scale(.73) perspective(1000px) rotateY(-38deg)}
.project-card[data-offset="-2"]{transform:translateX(-650px) scale(.73) perspective(1000px) rotateY(38deg)}
@media(max-width:520px){.carousel.is-ready .carousel-stage{height:600px}.project-card[data-offset="1"]{transform:translateX(285px) scale(.86) perspective(1000px) rotateY(-28deg)}.project-card[data-offset="-1"]{transform:translateX(-285px) scale(.86) perspective(1000px) rotateY(28deg)}}
.hero{overflow:hidden}
@media(max-width:520px){.hero h1{font-size:clamp(35.1px,11.07vw,52.2px)}}

@media(prefers-reduced-motion:reduce){.footer .brand img{transition:none}}

.carousel-all{white-space:nowrap;color:var(--muted);transition:color .3s}.carousel-all:hover{color:var(--teal)}@media(max-width:520px){.carousel-all{font-size:11px;gap:8px}.carousel-all .icon{width:16px}}

/* Consistent vertical alignment for text-and-icon controls. */
.button,.text-link,.project-link,.nav-contact,.motion-toggle,.menu-toggle{line-height:1.2;align-items:center}
.button{min-height:56px}
.button .icon{width:20px;height:20px;display:block}
.text-link .icon{width:19px;height:19px;display:block}
.project-link .icon{width:16px;height:16px;display:block}
.nav-contact .icon{width:17px;height:17px;display:block}
.motion-toggle>span,.menu-toggle>span{display:block;line-height:1}
@media(max-width:520px){.button{min-height:50px}}

/* Full-width sticky navigation; stable height prevents scroll jumps. */
.site-header-shell{position:sticky;top:0;z-index:100;background:#080808;transition:background .35s ease,box-shadow .35s ease;isolation:isolate}
.site-header-shell.is-scrolled{background:#080808e6;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 1px 0 #ffffff0d,0 10px 32px #0002}
.site-header-shell .site-header{border-bottom-color:transparent}
.site-header-shell .brand{transform-origin:left center;transition:transform .35s ease}
.site-header-shell.is-scrolled .brand{transform:scale(.9)}
.site-header-shell .nav-contact{border-radius:40px;transition:background .25s ease,border-color .25s ease,color .25s ease}
.site-header-shell .nav-contact:hover{background:#64ffff0c;border-color:#64ffff66;color:var(--teal)}
html{scroll-padding-top:120px}
.admin-bar .site-header-shell{top:32px}
@media(max-width:782px){.admin-bar .site-header-shell{top:46px}}
@media(max-width:780px){html{scroll-padding-top:96px}.site-header-shell .site-header nav{top:100%;max-height:calc(100dvh - 90px);overflow-y:auto;background:#080808f5;backdrop-filter:blur(18px)}}
@media(max-width:600px){.admin-bar .site-header-shell{top:0}}
@media(prefers-reduced-motion:reduce){.site-header-shell,.site-header-shell .brand{transition:none}}
/* Section padding is compensated by site.js; native anchors retain URL/history. */
html{scroll-padding-top:var(--anchor-header-height,88px)}

.detail-hero .back-link{display:inline-flex;align-items:center;gap:10px}.detail-hero .back-link .icon{width:17px;height:17px;transform:rotate(180deg)}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Lightweight 404 sharing the homepage poster. */
.lost-orbit{position:relative;isolation:isolate;overflow:hidden;background:#030706;min-height:calc(100svh - 88px);display:flex;align-items:center;padding:90px 0}
.lost-orbit-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% center;z-index:-3}
.lost-orbit:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#030706f5 0%,#030706dc 30%,#03070645 75%),linear-gradient(0deg,#030706 0%,transparent 45%)}
.lost-orbit-content h1{max-width:760px;font-size:clamp(46px,5.5vw,78px);margin:28px 0}
.lost-orbit-description{max-width:490px;font-size:18px;color:#c7cfce}
.lost-orbit-actions{display:flex;align-items:center;gap:32px;flex-wrap:wrap;margin-top:34px}
.lost-orbit-location{margin:64px 0 0;font-size:11px;letter-spacing:.08em}
.lost-orbit-traces{position:absolute;inset:0;z-index:-1;pointer-events:none}
.lost-orbit-traces span{position:absolute;left:-80px;top:65%;width:260px;height:1px;background:linear-gradient(90deg,transparent,#ffffff60,transparent);transform:rotate(-35deg);animation:lost-orbit-drift 16s ease-in-out infinite}
.lost-orbit-traces span+span{top:23%;left:18%;width:130px;animation-delay:-9s;animation-duration:21s}
@keyframes lost-orbit-drift{0%,100%{opacity:0;transform:translate(0,30px) rotate(-35deg)}50%{opacity:.7;transform:translate(90px,-30px) rotate(-35deg)}}
@media(max-width:780px){.lost-orbit{padding:64px 0;min-height:calc(100svh - 76px)}.lost-orbit-image{object-position:65% center;opacity:.5}.lost-orbit:before{background:linear-gradient(90deg,#030706db,#03070660),linear-gradient(0deg,#030706,transparent)}.lost-orbit-content h1{font-size:clamp(40px,9vw,60px)}.lost-orbit-description{font-size:16px}.lost-orbit-actions{gap:24px}.lost-orbit-location{margin-top:48px;max-width:240px}}
@media(prefers-reduced-motion:reduce){.lost-orbit-traces{display:none}}

.pricing-section.section{padding-top:36px;padding-bottom:60px}
.pricing-details{border-block:1px solid var(--line)}
.pricing-details summary{display:flex;align-items:center;justify-content:space-between;gap:28px;cursor:pointer;list-style:none;padding:32px 0}
.pricing-details summary::-webkit-details-marker{display:none}
.pricing-details summary:focus-visible{outline:2px solid var(--teal);outline-offset:8px}
.pricing-details summary h2{font-size:clamp(27px,3vw,42px);margin:0}
.pricing-details summary:hover{color:var(--teal)}
.pricing-toggle{width:24px;height:24px;flex-shrink:0;color:var(--teal)}
.pricing-toggle svg{display:block;width:100%;height:100%}
.pricing-details[open] .pricing-plus{display:none}
.pricing-content{display:grid;grid-template-columns:1fr 1fr;gap:64px;padding:4px 0 36px;max-width:1120px}
.pricing-content p{line-height:1.85}.pricing-content h3{font-size:22px;margin-bottom:18px}.pricing-content .text-link{margin-top:8px}
@media(max-width:780px){.pricing-section.section{padding-top:20px;padding-bottom:36px}.pricing-content{grid-template-columns:1fr;gap:16px;padding-bottom:28px}.pricing-details summary{padding:26px 0;gap:20px}}

.pricing-content{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);max-width:none;gap:clamp(32px,6vw,88px);padding:12px 0 40px;align-items:start}
.pricing-story{padding-top:12px}.pricing-story .eyebrow{margin-bottom:20px}.pricing-story .pricing-lead{font-size:clamp(19px,1.8vw,23px);line-height:1.65;color:var(--ink)}
.pricing-brief{background:#ffffff03;border:1px solid var(--line);padding:clamp(24px,3vw,40px)}
.pricing-inputs{list-style:none;padding:0;margin:24px 0}.pricing-inputs li{display:grid;grid-template-columns:24px minmax(0,1fr);gap:18px;padding:18px 0;border-top:1px solid var(--line)}
.pricing-inputs li>span{font-size:11px;letter-spacing:.08em;color:var(--teal);padding-top:4px}.pricing-inputs h4{font-size:16px;font-weight:500;margin:0 0 6px}.pricing-inputs p{font-size:14px;margin:0;line-height:1.7}.pricing-brief .pricing-note{font-size:13px;line-height:1.7;margin:0}
@media(max-width:780px){.pricing-content{grid-template-columns:minmax(0,1fr);gap:28px}.pricing-story{padding-top:0}.pricing-brief{padding:24px}.pricing-inputs{margin-bottom:18px}}

/* Pricing: an editorial brief beside a lightweight orbital illustration. */
.pricing-brief-inline{margin-top:36px;padding:0;background:none;border:0;border-block:1px solid var(--line)}
.pricing-brief-inline summary{padding:19px 0;font-size:18px;font-weight:500;transition:color .2s ease,padding .2s ease;gap:16px}
.pricing-brief-inline summary:hover{padding-inline:8px;color:var(--teal)}
.pricing-brief-inline summary>span{color:var(--teal);font-size:23px;font-weight:300;transition:transform .2s ease}
.pricing-brief-inline[open] summary>span{transform:rotate(45deg)}
.pricing-brief-inline .pricing-inputs{margin:0}.pricing-brief-inline .pricing-note{padding:16px 0 22px}
.price-universe{margin:0;align-self:center;min-width:0;text-align:center}
.price-system{position:relative;aspect-ratio:1.12;width:100%;isolation:isolate;background:radial-gradient(ellipse at center,#64ffff08,transparent 65%)}
.price-ring{position:absolute;left:8%;top:18%;width:84%;height:64%;border:1px solid #a4c7c72b;border-radius:50%;pointer-events:none}
.price-ring-two{transform:rotate(38deg);border-color:#a4c7c715}.price-ring-three{transform:rotate(-38deg);border-color:#a4c7c715}
.price-sun{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:124px;height:124px;border-radius:50%;display:flex;flex-direction:column;justify-content:center;border:1px solid #64ffff50;background:radial-gradient(circle at 32% 25%,#264747,#102021 48%,#070c0d 85%);box-shadow:0 0 60px #64ffff08}
.price-sun>span{font-size:27px;letter-spacing:-.03em;color:var(--ink)}.price-sun small{font-size:10px;color:#afc0bf;letter-spacing:.04em}
.price-planet{position:absolute;left:0;top:0;offset-path:ellipse(42% 32% at 50% 50%);offset-rotate:0deg;animation:price-orbit 72s linear var(--phase) infinite;animation-play-state:paused;display:flex;align-items:center;gap:8px;white-space:nowrap;font-size:12px;color:#d9e5e3;padding:6px 9px;background:#0a1010e8;border:1px solid #ffffff12;border-radius:20px}
.price-planet i{width:5px;height:5px;background:#85e3df;border-radius:50%;box-shadow:0 0 8px #64ffff25}
.price-universe.is-visible .price-planet{animation-play-state:running}
.price-universe:hover .price-planet{animation-play-state:paused}
.price-universe figcaption{font-size:12px;color:var(--muted);margin-top:8px;letter-spacing:.02em}
@keyframes price-orbit{from{offset-distance:0%}to{offset-distance:100%}}
@media(max-width:780px){.price-universe{width:100%;max-width:460px;justify-self:center}.price-system{width:90%;margin-inline:auto}.price-sun{width:100px;height:100px}.price-sun>span{font-size:24px}.price-planet{font-size:10px;gap:5px;padding:5px 7px}.pricing-brief-inline{padding:0}.pricing-brief-inline summary{font-size:17px}}
@media(prefers-reduced-motion:reduce){.price-universe.is-visible .price-planet{animation-play-state:paused}.pricing-brief-inline summary{transition:none}}
@media(max-width:780px){.price-planet{offset-path:ellipse(34% 32% at 50% 50%)}.price-ring-one{left:16%;width:68%}}

/* Perspective scene: orbit positions have real X/Y/Z depth, labels face the viewer. */
.price-system{container-type:inline-size;perspective:700px;transform-style:preserve-3d;isolation:auto;background:none}
.price-ring{left:14%;top:50%;width:72%;height:auto;aspect-ratio:1;margin-top:-36%;transform:rotateZ(-20deg) rotateX(65deg);border-color:#a4c7c733}
.price-ring-two{transform:rotateZ(40deg) rotateX(65deg);border-color:#a4c7c724}
.price-ring-three{transform:rotateZ(100deg) rotateX(65deg);border-color:#a4c7c724}
.price-sun{width:88px;height:88px;transform:translate3d(-50%,-50%,0);background:radial-gradient(circle at 30% 22%,#365a59,#122828 42%,#060b0c 80%);box-shadow:inset -10px -10px 20px #0009,0 0 36px #64ffff0a}
.price-sun>span{font-size:20px}.price-sun small{font-size:8px}
.price-planet{left:50%;top:50%;offset-path:none;animation-name:price-orbit-3d-one;animation-duration:72s;animation-delay:var(--phase);backface-visibility:hidden;background:#0a1010f5}
.price-planet:nth-child(6),.price-planet:nth-child(9){animation-name:price-orbit-3d-two}
.price-planet:nth-child(7),.price-planet:nth-child(10){animation-name:price-orbit-3d-three}
@media(max-width:780px){.price-system{perspective:600px}.price-sun{width:72px;height:72px}.price-sun>span{font-size:17px}.price-sun small{font-size:7px}.price-planet{offset-path:none}}




.pricing-brief-row{margin-top:36px;padding:24px 0 0;background:none;border:0;border-top:1px solid var(--line)}
.pricing-brief-row h3{font-size:18px;margin-bottom:22px}
.pricing-brief-row .pricing-inputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:0 0 20px}
.pricing-brief-row .pricing-inputs li{display:block;padding:0;border:0}
.pricing-brief-row .pricing-inputs li>span{display:block;margin-bottom:10px;padding:0}
.pricing-brief-row .pricing-inputs h4{font-size:14px;line-height:1.45}
.pricing-brief-row .pricing-inputs p{font-size:12px;line-height:1.75}
@media(max-width:780px){.pricing-brief-row{padding:24px 0 0}.pricing-brief-row .pricing-inputs{grid-template-columns:1fr;gap:18px}.pricing-brief-row .pricing-inputs li{display:grid;grid-template-columns:24px minmax(0,1fr);gap:14px}.pricing-brief-row .pricing-inputs p{font-size:14px}.pricing-brief-row .pricing-inputs li>span{padding-top:3px}}

/* Tactile planets: labels appear only on interaction, with an accessible copy panel. */
.price-planet{width:44px;height:44px;display:grid;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;color:var(--planet-color);cursor:pointer}
.price-planet i{display:block;width:var(--planet-size);height:var(--planet-size);border-radius:50%;background:radial-gradient(circle at 28% 22%,#edffff 0%,var(--planet-color) 18%,#163d40 64%,#061214 95%);box-shadow:inset -3px -4px 7px #0009,0 0 15px color-mix(in srgb,var(--planet-color) 22%,transparent);transition:filter .2s ease}
.price-planet:is(:hover,:focus-visible) i{filter:brightness(1.25)}
.price-planet-label{position:absolute;left:calc(100% + 18px);top:50%;transform:translateY(-50%);font-size:12px;line-height:1.4;white-space:normal;text-align:left;width:max-content;max-width:125px;padding:5px 8px;background:#090f10f2;border:1px solid #ffffff16;border-radius:3px;color:#e9ffff;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease}
.price-planet-label:before{content:"";position:absolute;right:100%;top:50%;width:22px;height:1px;background:var(--planet-color);opacity:.65}
.price-planet[data-label-side="left"] .price-planet-label{left:auto;right:calc(100% + 18px);text-align:right}
.price-planet[data-label-side="left"] .price-planet-label:before{right:auto;left:100%}
.price-planet:is(:hover,:focus-visible,.is-selected) .price-planet-label{opacity:1;visibility:visible}
.price-universe:focus-within .price-planet{animation-play-state:paused}
.price-universe figcaption{color:var(--ink);font-size:16px;letter-spacing:0}
.price-factor-info{min-height:150px;max-width:420px;margin:18px auto 0;text-align:center}
.price-factor-info .price-factor-title{font-size:12px;color:var(--teal);margin:0 0 8px}
.price-factor-info #price-factor-copy{font-size:13px;line-height:1.8;margin:0;color:var(--muted)}
@media(max-width:780px){.price-planet-label{font-size:11px;max-width:108px}.price-factor-info{min-height:165px;padding-inline:10px}.price-universe figcaption{font-size:15px}.price-planet i{width:calc(var(--planet-size)*.85);height:calc(var(--planet-size)*.85)}}

/* Solar-system layout: concentric orbits in one inclined plane. */
.price-system .solar-ring{left:calc(50% - var(--orbit-radius)*1%);top:50%;width:calc(var(--orbit-radius)*2%);margin-top:calc(var(--orbit-radius)*-1%);transform:rotateZ(-16deg) rotateX(58deg);border-color:#97ccc526}
.price-system .solar-ring{transition:border-color 1.2s ease-out,box-shadow 1.2s ease-out}
.price-system .solar-ring.is-highlighted{border-color:color-mix(in srgb,var(--orbit-highlight) 75%,transparent);box-shadow:0 0 9px color-mix(in srgb,var(--orbit-highlight) 18%,transparent),inset 0 0 9px color-mix(in srgb,var(--orbit-highlight) 12%,transparent)}
@media(prefers-reduced-motion:reduce){.price-system .solar-ring{transition:none}}
.price-system .price-planet{animation-name:price-solar-orbit;animation-duration:var(--orbit-duration)}
.price-system .price-sun{width:56px;height:56px;background:radial-gradient(circle at 28% 22%,#d7ffff,#70d9d4 14%,#1d5253 46%,#071718 82%);border:0}
.price-sun .price-sun-label{position:absolute;top:50%;left:calc(100% + 20px);transform:translateY(-50%);font-size:13px;letter-spacing:0;line-height:1.4;color:#edffff;background:#090f10eb;padding:5px 8px;border:1px solid #ffffff16;border-radius:3px}
.price-sun-label:before{content:"";position:absolute;right:100%;top:50%;width:22px;height:1px;background:#8ce8e1;opacity:.65}
@media(max-width:780px){.price-system .price-sun{width:44px;height:44px}.price-sun .price-sun-label{font-size:11px;left:calc(100% + 12px)}.price-sun-label:before{width:14px}}
@keyframes price-solar-orbit{
0.0000%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.96126cqw),calc(var(--orbit-radius)*-0.27564cqw),calc(var(--orbit-radius)*0.00000cqw));opacity:0.925}
1.3889%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.97033cqw),calc(var(--orbit-radius)*-0.23019cqw),calc(var(--orbit-radius)*0.07391cqw));opacity:0.931}
2.7778%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.97202cqw),calc(var(--orbit-radius)*-0.18299cqw),calc(var(--orbit-radius)*0.14726cqw));opacity:0.936}
4.1667%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.96631cqw),calc(var(--orbit-radius)*-0.13441cqw),calc(var(--orbit-radius)*0.21949cqw));opacity:0.941}
5.5556%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.95325cqw),calc(var(--orbit-radius)*-0.08479cqw),calc(var(--orbit-radius)*0.29005cqw));opacity:0.947}
6.9444%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.93293cqw),calc(var(--orbit-radius)*-0.03453cqw),calc(var(--orbit-radius)*0.35840cqw));opacity:0.952}
8.3333%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.90551cqw),calc(var(--orbit-radius)*0.01599cqw),calc(var(--orbit-radius)*0.42402cqw));opacity:0.957}
9.7222%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.87120cqw),calc(var(--orbit-radius)*0.06639cqw),calc(var(--orbit-radius)*0.48642cqw));opacity:0.961}
11.1111%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.83026cqw),calc(var(--orbit-radius)*0.11628cqw),calc(var(--orbit-radius)*0.54511cqw));opacity:0.966}
12.5000%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.78300cqw),calc(var(--orbit-radius)*0.16529cqw),calc(var(--orbit-radius)*0.59966cqw));opacity:0.970}
13.8889%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.72978cqw),calc(var(--orbit-radius)*0.21304cqw),calc(var(--orbit-radius)*0.64964cqw));opacity:0.974}
15.2778%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.67101cqw),calc(var(--orbit-radius)*0.25917cqw),calc(var(--orbit-radius)*0.69468cqw));opacity:0.977}
16.6667%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.60713cqw),calc(var(--orbit-radius)*0.30333cqw),calc(var(--orbit-radius)*0.73443cqw));opacity:0.980}
18.0556%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.53863cqw),calc(var(--orbit-radius)*0.34518cqw),calc(var(--orbit-radius)*0.76859cqw));opacity:0.983}
19.4444%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.46603cqw),calc(var(--orbit-radius)*0.38440cqw),calc(var(--orbit-radius)*0.79690cqw));opacity:0.985}
20.8333%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.38988cqw),calc(var(--orbit-radius)*0.42069cqw),calc(var(--orbit-radius)*0.81915cqw));opacity:0.986}
22.2222%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.31077cqw),calc(var(--orbit-radius)*0.45379cqw),calc(var(--orbit-radius)*0.83516cqw));opacity:0.988}
23.6111%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.22929cqw),calc(var(--orbit-radius)*0.48343cqw),calc(var(--orbit-radius)*0.84482cqw));opacity:0.988}
25.0000%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.14607cqw),calc(var(--orbit-radius)*0.50939cqw),calc(var(--orbit-radius)*0.84805cqw));opacity:0.989}
26.3889%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.06173cqw),calc(var(--orbit-radius)*0.53148cqw),calc(var(--orbit-radius)*0.84482cqw));opacity:0.988}
27.7778%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.02307cqw),calc(var(--orbit-radius)*0.54952cqw),calc(var(--orbit-radius)*0.83516cqw));opacity:0.988}
29.1667%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.10770cqw),calc(var(--orbit-radius)*0.56337cqw),calc(var(--orbit-radius)*0.81915cqw));opacity:0.986}
30.5556%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.19151cqw),calc(var(--orbit-radius)*0.57294cqw),calc(var(--orbit-radius)*0.79690cqw));opacity:0.985}
31.9444%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.27387cqw),calc(var(--orbit-radius)*0.57815cqw),calc(var(--orbit-radius)*0.76859cqw));opacity:0.983}
33.3333%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.35413cqw),calc(var(--orbit-radius)*0.57896cqw),calc(var(--orbit-radius)*0.73443cqw));opacity:0.980}
34.7222%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.43171cqw),calc(var(--orbit-radius)*0.57537cqw),calc(var(--orbit-radius)*0.69468cqw));opacity:0.977}
36.1111%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.50599cqw),calc(var(--orbit-radius)*0.56739cqw),calc(var(--orbit-radius)*0.64964cqw));opacity:0.974}
37.5000%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.57643cqw),calc(var(--orbit-radius)*0.55510cqw),calc(var(--orbit-radius)*0.59966cqw));opacity:0.970}
38.8889%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.64248cqw),calc(var(--orbit-radius)*0.53858cqw),calc(var(--orbit-radius)*0.54511cqw));opacity:0.966}
40.2778%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.70364cqw),calc(var(--orbit-radius)*0.51796cqw),calc(var(--orbit-radius)*0.48642cqw));opacity:0.961}
41.6667%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.75944cqw),calc(var(--orbit-radius)*0.49340cqw),calc(var(--orbit-radius)*0.42402cqw));opacity:0.957}
43.0556%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.80947cqw),calc(var(--orbit-radius)*0.46509cqw),calc(var(--orbit-radius)*0.35840cqw));opacity:0.952}
44.4444%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.85333cqw),calc(var(--orbit-radius)*0.43324cqw),calc(var(--orbit-radius)*0.29005cqw));opacity:0.947}
45.8333%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.89070cqw),calc(var(--orbit-radius)*0.39809cqw),calc(var(--orbit-radius)*0.21949cqw));opacity:0.941}
47.2222%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.92129cqw),calc(var(--orbit-radius)*0.35990cqw),calc(var(--orbit-radius)*0.14726cqw));opacity:0.936}
48.6111%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.94487cqw),calc(var(--orbit-radius)*0.31898cqw),calc(var(--orbit-radius)*0.07391cqw));opacity:0.931}
50.0000%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.96126cqw),calc(var(--orbit-radius)*0.27564cqw),calc(var(--orbit-radius)*0.00000cqw));opacity:0.925}
51.3889%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.97033cqw),calc(var(--orbit-radius)*0.23019cqw),calc(var(--orbit-radius)*-0.07391cqw));opacity:0.919}
52.7778%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.97202cqw),calc(var(--orbit-radius)*0.18299cqw),calc(var(--orbit-radius)*-0.14726cqw));opacity:0.914}
54.1667%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.96631cqw),calc(var(--orbit-radius)*0.13441cqw),calc(var(--orbit-radius)*-0.21949cqw));opacity:0.909}
55.5556%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.95325cqw),calc(var(--orbit-radius)*0.08479cqw),calc(var(--orbit-radius)*-0.29005cqw));opacity:0.903}
56.9444%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.93293cqw),calc(var(--orbit-radius)*0.03453cqw),calc(var(--orbit-radius)*-0.35840cqw));opacity:0.898}
58.3333%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.90551cqw),calc(var(--orbit-radius)*-0.01599cqw),calc(var(--orbit-radius)*-0.42402cqw));opacity:0.893}
59.7222%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.87120cqw),calc(var(--orbit-radius)*-0.06639cqw),calc(var(--orbit-radius)*-0.48642cqw));opacity:0.889}
61.1111%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.83026cqw),calc(var(--orbit-radius)*-0.11628cqw),calc(var(--orbit-radius)*-0.54511cqw));opacity:0.884}
62.5000%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.78300cqw),calc(var(--orbit-radius)*-0.16529cqw),calc(var(--orbit-radius)*-0.59966cqw));opacity:0.880}
63.8889%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.72978cqw),calc(var(--orbit-radius)*-0.21304cqw),calc(var(--orbit-radius)*-0.64964cqw));opacity:0.876}
65.2778%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.67101cqw),calc(var(--orbit-radius)*-0.25917cqw),calc(var(--orbit-radius)*-0.69468cqw));opacity:0.873}
66.6667%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.60713cqw),calc(var(--orbit-radius)*-0.30333cqw),calc(var(--orbit-radius)*-0.73443cqw));opacity:0.870}
68.0556%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.53863cqw),calc(var(--orbit-radius)*-0.34518cqw),calc(var(--orbit-radius)*-0.76859cqw));opacity:0.867}
69.4444%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.46603cqw),calc(var(--orbit-radius)*-0.38440cqw),calc(var(--orbit-radius)*-0.79690cqw));opacity:0.865}
70.8333%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.38988cqw),calc(var(--orbit-radius)*-0.42069cqw),calc(var(--orbit-radius)*-0.81915cqw));opacity:0.864}
72.2222%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.31077cqw),calc(var(--orbit-radius)*-0.45379cqw),calc(var(--orbit-radius)*-0.83516cqw));opacity:0.862}
73.6111%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.22929cqw),calc(var(--orbit-radius)*-0.48343cqw),calc(var(--orbit-radius)*-0.84482cqw));opacity:0.862}
75.0000%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.14607cqw),calc(var(--orbit-radius)*-0.50939cqw),calc(var(--orbit-radius)*-0.84805cqw));opacity:0.861}
76.3889%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*-0.06173cqw),calc(var(--orbit-radius)*-0.53148cqw),calc(var(--orbit-radius)*-0.84482cqw));opacity:0.862}
77.7778%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.02307cqw),calc(var(--orbit-radius)*-0.54952cqw),calc(var(--orbit-radius)*-0.83516cqw));opacity:0.862}
79.1667%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.10770cqw),calc(var(--orbit-radius)*-0.56337cqw),calc(var(--orbit-radius)*-0.81915cqw));opacity:0.864}
80.5556%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.19151cqw),calc(var(--orbit-radius)*-0.57294cqw),calc(var(--orbit-radius)*-0.79690cqw));opacity:0.865}
81.9444%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.27387cqw),calc(var(--orbit-radius)*-0.57815cqw),calc(var(--orbit-radius)*-0.76859cqw));opacity:0.867}
83.3333%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.35413cqw),calc(var(--orbit-radius)*-0.57896cqw),calc(var(--orbit-radius)*-0.73443cqw));opacity:0.870}
84.7222%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.43171cqw),calc(var(--orbit-radius)*-0.57537cqw),calc(var(--orbit-radius)*-0.69468cqw));opacity:0.873}
86.1111%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.50599cqw),calc(var(--orbit-radius)*-0.56739cqw),calc(var(--orbit-radius)*-0.64964cqw));opacity:0.876}
87.5000%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.57643cqw),calc(var(--orbit-radius)*-0.55510cqw),calc(var(--orbit-radius)*-0.59966cqw));opacity:0.880}
88.8889%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.64248cqw),calc(var(--orbit-radius)*-0.53858cqw),calc(var(--orbit-radius)*-0.54511cqw));opacity:0.884}
90.2778%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.70364cqw),calc(var(--orbit-radius)*-0.51796cqw),calc(var(--orbit-radius)*-0.48642cqw));opacity:0.889}
91.6667%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.75944cqw),calc(var(--orbit-radius)*-0.49340cqw),calc(var(--orbit-radius)*-0.42402cqw));opacity:0.893}
93.0556%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.80947cqw),calc(var(--orbit-radius)*-0.46509cqw),calc(var(--orbit-radius)*-0.35840cqw));opacity:0.898}
94.4444%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.85333cqw),calc(var(--orbit-radius)*-0.43324cqw),calc(var(--orbit-radius)*-0.29005cqw));opacity:0.903}
95.8333%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.89070cqw),calc(var(--orbit-radius)*-0.39809cqw),calc(var(--orbit-radius)*-0.21949cqw));opacity:0.909}
97.2222%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.92129cqw),calc(var(--orbit-radius)*-0.35990cqw),calc(var(--orbit-radius)*-0.14726cqw));opacity:0.914}
98.6111%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.94487cqw),calc(var(--orbit-radius)*-0.31898cqw),calc(var(--orbit-radius)*-0.07391cqw));opacity:0.919}
100.0000%{transform:translate(-50%,-50%) translate3d(calc(var(--orbit-radius)*0.96126cqw),calc(var(--orbit-radius)*-0.27564cqw),calc(var(--orbit-radius)*-0.00000cqw));opacity:0.925}
}
@media(max-width:780px){.price-system{width:84%}}

/* Keep the central label in a separate overlay above the entire 3D scene. */
.price-scene{position:relative}
.price-scene .price-system{z-index:0}
.price-center-label{position:absolute;z-index:2;top:50%;left:calc(50% + 48px);transform:translateY(-50%);font-size:13px;line-height:1.4;color:#edffff;background:#090f10;padding:5px 8px;border:1px solid #ffffff16;border-radius:3px;pointer-events:none}
.price-center-label:before{content:"";position:absolute;right:100%;top:50%;width:22px;height:1px;background:#8ce8e1;opacity:.65}
@media(max-width:780px){.price-center-label{font-size:11px;left:calc(50% + 34px)}.price-center-label:before{width:14px}}

/* Transparent scene planes must not intercept planets with negative 3D depth. */
.price-scene,.price-system,.price-ring,.price-sun{pointer-events:none}
.price-system .price-planet{pointer-events:auto}

.price-intro{max-width:430px;margin:0 auto;text-align:center}
.price-intro h3{font-size:18px;line-height:1.5;margin:0 0 12px;letter-spacing:-.015em}
.price-intro p{font-size:13px;line-height:1.8;margin:0}
.price-universe figcaption{color:var(--teal);font-size:12px;margin-top:0}
.price-planet .price-planet-label{display:block;opacity:0;visibility:hidden;pointer-events:none;font-size:11px;padding:3px 6px;color:#f1ffff;border-color:#ffffff20;transition:opacity .3s ease,color .2s ease,border-color .2s ease,visibility 0s linear .3s}
.price-universe.is-visible:hover .price-planet,.price-universe.is-visible:focus-within .price-planet{animation-play-state:running}
.price-universe.is-visible.has-price-hint .price-planet{animation-play-state:paused}
.price-hint{position:absolute;z-index:5;width:260px;max-width:calc(100% - 16px);padding:17px 19px;text-align:left;background:#0d1819;border:1px solid #64ffff38;border-radius:6px;box-shadow:0 12px 36px #0008;pointer-events:auto}
.price-hint[hidden]{display:none}
.price-hint strong{display:block;font-size:14px;font-weight:500;color:var(--teal);margin-bottom:7px}
.price-hint p{font-size:12px;line-height:1.75;margin:0;color:#c1cece}
@media(prefers-reduced-motion:reduce){.price-universe.is-visible:hover .price-planet,.price-universe.is-visible:focus-within .price-planet{animation-play-state:paused}}

/* Keep the explanation above the model and only a concise label at the planet. */
.price-scene{margin-block:20px}
.price-scene .price-system{aspect-ratio:1.55}
.price-hint{width:max-content;max-width:calc(100% - 16px);padding:6px 10px;border-radius:3px;box-shadow:none}
.price-hint strong{font-size:12px;line-height:1.4;margin:0;color:#edffff}
@media(max-width:780px){.price-scene{margin-block:20px}.price-scene .price-system{aspect-ratio:1.4}}
/* Shared grid cells reserve all copy variants, with consistent top alignment. */
.price-intro-slot{display:grid}
.price-intro-slot>*{grid-area:1/1;align-self:start}
.price-intro-sizer{visibility:hidden;pointer-events:none;user-select:none}
.price-intro-heading{font-size:18px;line-height:1.5;letter-spacing:-.015em;margin-bottom:12px}
.price-intro-heading>*{align-self:end}
.price-intro-heading h3{margin:0}
.price-universe.has-price-hint .price-intro h3{color:var(--teal)}
.price-intro-copy{font-size:13px;line-height:1.8}
.price-intro #price-intro-copy{min-height:0}
.price-scene .price-system{transform:translateY(-20px)}
.price-scene .price-center-label{margin-top:-20px}
@media(max-width:780px){.price-scene .price-system{transform:translateY(-10px)}.price-scene .price-center-label{margin-top:-10px}}

/* Equal angular speed keeps the initial 60-degree spacing throughout the orbit. */
.price-universe.is-visible:is(.is-browsing,.is-label-fading) .price-planet{animation-play-state:paused}
.price-universe.is-browsing .price-planet-label{opacity:.9;visibility:visible;pointer-events:auto;transition-delay:0s}
.price-universe.is-browsing .price-planet:is(:hover,:focus-visible,.is-selected) .price-planet-label{opacity:1;color:var(--planet-color);border-color:#64ffff38}
.price-universe.is-browsing .price-hint{display:none}
@media(max-width:780px){.price-universe .price-planet-label{font-size:10px;max-width:90px;left:calc(100% + 4px)}.price-universe.is-browsing .price-planet[data-label-side="left"] .price-planet-label{left:auto;right:calc(100% + 4px)}.price-universe.is-browsing .price-planet-label:before{width:8px}}

@media(prefers-reduced-motion:reduce){.price-universe .price-planet-label{transition:none}}

/* Slow client ribbon: two equal groups make the rightward loop seamless. */
.clients{gap:48px;padding-block:28px}
.client-marquee{flex:1;min-width:0;overflow:hidden;mask-image:linear-gradient(to right,transparent,#000 9%,#000 91%,transparent)}
.client-track{display:flex;width:max-content;background:#080b0d;animation:client-drift 220.833s linear infinite;animation-play-state:paused}
.clients.is-visible .client-track{animation-play-state:running}
.client-group{display:flex;background:#080b0d;flex-shrink:0;align-items:center;gap:48px;padding-right:48px}
.client-mark{display:flex;align-items:center;justify-content:center;flex:0 0 164px;width:164px;height:54px;color:#ecf2f1;font-size:18px;font-weight:500;white-space:nowrap}
.client-mark img{width:180px;height:64px;object-fit:contain;transform:scale(.9);filter:grayscale(0) brightness(0) invert(1) hue-rotate(0deg) saturate(1) brightness(1);opacity:.8;transition:filter 1s ease-in-out,opacity 1s ease-in-out}
.client-mark-paper img{filter:grayscale(1) brightness(1) invert(1) hue-rotate(0deg) saturate(1) brightness(1);mix-blend-mode:screen}
/* Account for the different amounts of whitespace in the supplied artwork. */
.client-mark-rexroth img{width:122px;height:41px}
.client-mark-tescan img{width:115px;height:41px}
.client-mark-museum img{width:153px;height:76px;max-width:none}
.client-mark-theatre img{width:122px;height:122px}
.client-mark-mistry img{width:85px;height:52px}
.clients:hover .client-track,.client-marquee:focus .client-track{animation-play-state:paused}
.clients:hover .client-mark img,.client-marquee:focus .client-mark img{filter:grayscale(0) brightness(1) invert(1) hue-rotate(180deg) saturate(1) brightness(1);opacity:1}
.clients:hover .client-mark-paper img,.client-marquee:focus .client-mark-paper img{filter:grayscale(0) brightness(1) invert(1) hue-rotate(180deg) saturate(1) brightness(1)}
@keyframes client-drift{from{transform:translateX(-50%)}to{transform:translateX(0)}}
@media(max-width:780px){.clients{gap:24px;padding-block:22px}.client-group{gap:28px;padding-right:28px}.client-mark{flex-basis:140px;width:140px}.client-mark img{max-width:none;transform:scale(.765)}}
@media(prefers-reduced-motion:reduce){.client-marquee{overflow-x:auto}.client-track{animation:none}.client-group[aria-hidden="true"]{display:none}.client-mark img{transition:none}}

.client-mark-getmoments{gap:9px;font-size:17px;font-weight:500;letter-spacing:.02em}
.client-mark-getmoments img{width:25px;height:25px}
.client-mark-siemens img{width:112px;height:38px}
.client-mark-aetna img{width:110px;height:45px}
.clients:hover .client-mark-getmoments img,.client-marquee:focus .client-mark-getmoments img,
.clients:hover .client-mark-siemens img,.client-marquee:focus .client-mark-siemens img,
.clients:hover .client-mark-aetna img,.client-marquee:focus .client-mark-aetna img{filter:grayscale(0) brightness(1) invert(0) hue-rotate(0deg) saturate(1) brightness(1)}

.client-mark-haifa img{width:130px;height:34px}
.client-mark-hadivadlo img{width:145px;height:27px}
.client-mark-skoda{flex-direction:column;gap:7px}
.client-mark-skoda img{width:125px;height:23px}
.client-mark-skoda small{font-size:10px;line-height:1.2;color:#9ba8ae;font-weight:400}
.clients:hover .client-mark-haifa img,.client-marquee:focus .client-mark-haifa img,
.clients:hover .client-mark-hadivadlo img,.client-marquee:focus .client-mark-hadivadlo img{filter:grayscale(0) brightness(1) invert(0) hue-rotate(0deg) saturate(1) brightness(1)}

.client-mark-rudis{font-size:15px;letter-spacing:-.02em}
.client-mark-tic img{width:140px;height:70px;max-width:none;filter:grayscale(1) brightness(1) invert(1) hue-rotate(0deg) saturate(1) brightness(2);mix-blend-mode:screen}
.clients:hover .client-mark-tic img,.client-marquee:focus .client-mark-tic img{filter:grayscale(0) brightness(1) invert(1) hue-rotate(180deg) saturate(3) brightness(1)}

.client-mark-staropramen{flex-direction:column;gap:5px}
.client-mark-staropramen img{width:100px;height:36px;flex-shrink:0}
.client-mark-staropramen small{font-size:10px;line-height:1.2;color:#9ba8ae;font-weight:400}
.clients:hover .client-mark-staropramen img,.client-marquee:focus .client-mark-staropramen img{filter:grayscale(0) brightness(1) invert(0) hue-rotate(0deg) saturate(1) brightness(1)}

/* Keep orbit labels legible at every depth without enlarging the planets. */
.price-universe .price-planet-label{font-size:13px;transform:translateY(-50%) scale(var(--label-scale,1));transform-origin:left center}
.price-universe .price-planet[data-label-side="left"] .price-planet-label{transform-origin:right center}
@media(max-width:780px){.price-universe .price-planet-label{font-size:12px}}

/* Change hover emphasis immediately, without fading the text between colors. */
.price-universe .price-planet .price-planet-label{transition:none}

/* Flat text overlay keeps label geometry identical before and during hover. */
.price-universe:is(.is-browsing,.is-label-fading) .price-planet-label{display:none}
.price-flat-label{display:block;opacity:0;visibility:hidden;position:absolute;z-index:3;transform:translateY(calc(-50% - 1.5px));font-size:13px;line-height:1.4;font-weight:400;text-align:left;padding:3px 6px;color:#f1ffff;background:#090f10f2;border:1px solid #ffffff20;border-radius:3px;pointer-events:none;transition:opacity 1.2s ease-out,visibility 0s linear 1.2s;white-space:nowrap}
.price-universe.is-browsing .price-flat-label{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}
@media(prefers-reduced-motion:reduce){.price-flat-label{transition:none}}
.price-flat-label:before{content:"";position:absolute;right:100%;top:50%;width:12px;height:1px;transform:translateY(-50%);background:var(--planet-color);opacity:.65}
.price-flat-label[data-side="left"]:before{right:auto;left:100%}
.price-flat-label:hover{color:var(--planet-color);border-color:#64ffff38}
@media(max-width:780px){.price-flat-label{font-size:12px}.price-flat-label:before{width:8px}}

.price-scene .price-center-label{pointer-events:auto;font-family:inherit;cursor:pointer;transition:none}
.price-center-label:hover,.price-center-label:focus-visible{color:var(--teal);border-color:#64ffff38}

/* Shared close control for service, volume and photo dialogs. */
dialog button.modal-close:is(.volume-close,.service-dialog-close,.lightbox-close){display:flex;align-items:center;justify-content:center;gap:16px;width:auto;height:44px;min-height:44px;padding:10px 16px;border:1px solid #64ffff44;border-radius:24px;background:transparent;color:var(--ink);font-family:var(--font);font-size:14px;font-weight:400;line-height:1;cursor:pointer;transition:color .2s,border-color .2s}
dialog button.modal-close:is(.volume-close,.service-dialog-close,.lightbox-close) svg{display:block;width:20px;height:20px;flex-shrink:0}
dialog button.modal-close:is(.volume-close,.service-dialog-close,.lightbox-close):hover{color:var(--teal);border-color:var(--teal)}
dialog button.modal-close:is(.volume-close,.service-dialog-close,.lightbox-close):focus-visible{outline:2px solid var(--teal);outline-offset:-2px;border-color:var(--teal);background:#64ffff0a}

/* Readable supporting text across all service cards and breakpoints. */
.service-bottom small{font-size:12px;line-height:1.6}
.service-bottom>.icon{flex-shrink:0}

/* Match the central price label to all orbit labels. */
.price-scene .price-center-label{font-size:13px;font-weight:400;line-height:1.4;padding:3px 6px}
@media(max-width:780px){.price-scene .price-center-label{font-size:12px}}

/* Compact language control; shares the header's keyboard and mobile layout. */
.site-header nav{margin-left:auto}
/* Reserve space beside the icon so the navigation does not shift on hover. */
.language-switcher{position:relative;flex:0 0 74px;width:74px;height:44px;margin-left:12px}
.language-switcher .language-trigger{width:44px;height:44px;display:flex;align-items:center;justify-content:center;padding:0;border:0;background:transparent;color:var(--ink);cursor:pointer}
.language-switcher .language-trigger:focus-visible{outline:1px solid var(--teal);outline-offset:2px}
.language-switcher img{width:18px;height:18px;object-fit:contain}
.language-switcher .language-options{visibility:hidden;opacity:0;position:absolute;left:44px;top:0;height:44px;display:flex;align-items:center;background:transparent;border:0;transition:opacity .15s ease}
.language-switcher .language-options a{display:inline-flex;align-items:center;min-height:44px;padding:0 2px;color:var(--ink);font-size:14px;text-decoration:none}
.language-switcher .language-options a:hover,.language-switcher .language-options a:focus-visible{color:var(--teal)}
.language-switcher:hover .language-options,.language-switcher:focus-within .language-options{visibility:visible;opacity:1}
@media(prefers-reduced-motion:reduce){.language-switcher .language-options{transition:none}}
html[lang^="en"] .hero-copy h1{font-size:clamp(42px,5.1vw,78px)}
@media(max-width:900px){.language-switcher{margin-left:12px}.site-header .menu-toggle{margin-left:auto}.language-switcher a{padding:10px 2px}}

/* Illustrated product journey, reached by printed QR codes in CZ and EN. */
.page-prose:has(.manufacturing-steps){max-width:1280px}
.manufacturing-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px;margin-top:44px}
.manufacturing-step{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:24px;padding:26px;background:#e2eae7;color:#142927}
.prose .manufacturing-step img{width:100%;height:auto;margin:0}
.prose .manufacturing-step h2{margin:0 0 16px;font-size:23px;color:#142927;line-height:1.2}
.prose .manufacturing-step p{font-size:15px;line-height:1.7}
.prose .manufacturing-step a{color:#245d63}
@media(max-width:1000px){.manufacturing-steps{grid-template-columns:1fr}}
@media(max-width:540px){.manufacturing-step{grid-template-columns:1fr;padding:22px}.prose .manufacturing-step img{max-width:240px;margin:0 auto}}
.manufacturing-step>p:empty{display:none}

/* Optical alignment and breathing room between the central body and connector. */
.price-scene .price-center-label{left:calc(50% + 54px);transform:translateY(calc(-50% - 1.5px))}
.price-center-label:before{width:18px;transform:translateY(-50%)}
@media(max-width:780px){.price-scene .price-center-label{left:calc(50% + 40px)}.price-center-label:before{width:12px}}
