99 color : #2d4739 ;
1010 font-family : Arial , sans-serif ;
1111
12+ /* jednotná velikost ikon v .features a .services */
13+ --icon-size : 64px ;
14+
1215 /* obrázky a typografie – tvrdá ochrana před přetečením */
1316 img {
1417 max-width : 100% ;
2326 flex-direction : column ;
2427 text-align : center ;
2528 margin : 0 auto 30px ;
29+ gap : 16px ; /* mezera mezi textem a obrázkem */
2630
27- @media (min-width : 768px ) { flex-direction : row ; }
31+ @media (min-width : 768px ) {
32+ flex-direction : row ;
33+ gap : 32px ;
34+ align-items : center ;
35+ }
2836 }
2937
3038 .intro-left ,
3139 .intro-right {
3240 @media (min-width : 768px ) { width : 50% ; }
3341 }
3442
35- .intro-left { margin : auto 0 ; }
43+ .intro-left {
44+ margin : auto 0 ;
45+ position : relative ;
46+ z-index : 1 ; /* zajistí text nad obrázkem */
47+ }
48+
49+ .intro-right {
50+ position : relative ;
51+ z-index : 0 ;
52+
53+ img { /* kontrola rozměrů a bez přesahů */
54+ width : 100% ;
55+ height : auto ;
56+ max-width : 420px ;
57+ max-height : 40vh ;
58+ object-fit : contain ;
59+ display : block ;
60+ margin : 0 auto ;
61+ }
62+ }
3663
3764 /* jen uvnitř landing – neovlivní zbytek app */
3865 h1 {
3966 text-align : center ;
4067 font-size : 2.2rem ;
4168 color : #2d4739 ;
42- line-height : 66 px ;
69+ line-height : 1.2 ; /* místo pevného px */
4370 text-transform : uppercase ;
4471 font-family : skautbold, sans-serif ;
4572
5582 @media (min-width : 768px ) { text-align : left ; }
5683 }
5784
58- .intro-right img { /* redundance – drží rozměr v gridu */
59- width : 100% ;
60- height : auto ;
61- }
62-
6385 .intro-buttons {
6486 max-width : 1000px ;
6587 padding : 20px 0 ;
95117 flex-direction : row ;
96118 gap : 20px ;
97119 text-align : center ;
98-
120+ align-items : center ; /* vertikální zarovnání */
99121 @media (min-width : 768px ) { flex : 1 1 250px ; flex-direction : unset ; }
100122 }
101123
102- .features-item-left { margin : auto 0 ; }
124+ .features-item-left {
125+ margin : auto 0 ;
126+ width : var (--icon-size );
127+ height : var (--icon-size );
128+ min-width : var (--icon-size );
129+ min-height : var (--icon-size );
130+ flex : 0 0 var (--icon-size );
131+ display : grid ;
132+ place-items : center ;
133+
134+ img {
135+ width : 100% ;
136+ height : 100% ;
137+ object-fit : contain ; /* stejná výsledná velikost bez deformace */
138+ display : block ;
139+ }
140+ }
103141
104142 .features-item h3 {
105143 font-size : 1.2rem ;
112150 p { margin : 0 ; }
113151 }
114152
115- .features img {
116- width : 57px ;
117- }
153+ /* POZN.: zrušeno původní .features img { width: 57px; } */
118154
119155 .services-container {
120156 padding : 20px ;
139175 display : flex ;
140176 flex-direction : row ;
141177 gap : 20px ;
178+ align-items : center ;
142179
143180 @media (min-width : 768px ) { flex : 1 1 45% ; flex-direction : unset ; }
144181 }
145182
183+ .services-item-left {
184+ width : var (--icon-size );
185+ height : var (--icon-size );
186+ min-width : var (--icon-size );
187+ min-height : var (--icon-size );
188+ flex : 0 0 var (--icon-size );
189+ display : grid ;
190+ place-items : center ;
191+
192+ img {
193+ width : 100% ;
194+ height : 100% ;
195+ object-fit : contain ;
196+ display : block ;
197+ }
198+ }
199+
146200 .services-item-right {
147201 margin : auto 0 ;
148202
188242 text-decoration : none ;
189243 }
190244 }
245+
246+ /* responzivní úpravy pro mobily */
247+ @media (max-width : 767.98px ) {
248+ .features { transform : none ; margin-top : 10px ; }
249+ }
250+ }
251+
252+ /* menší ikona na velmi malých displejích */
253+ @media (max-width : 360px ) {
254+ .landing { --icon-size : 56px ; }
191255}
192256
193257/* Dark mode pro landing (izolovaně) */
238302 transform : translateY (-3px );
239303 }
240304 }
241- }
305+ }
0 commit comments