

/* Start:/local/templates/.default/assets/css/font-awesome.min.css?177917286231000*/
/*!
 *  Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */@font-face{font-family:'FontAwesome';src:url('/local/templates/.default/assets/css/../fonts/fontawesome-webfont.eot?v=4.7.0');src:url('/local/templates/.default/assets/css/../fonts/fontawesome-webfont.eot?#iefix&v=4.7.0') format('embedded-opentype'),url('/local/templates/.default/assets/css/../fonts/fontawesome-webfont.woff2?v=4.7.0') format('woff2'),url('/local/templates/.default/assets/css/../fonts/fontawesome-webfont.woff?v=4.7.0') format('woff'),url('/local/templates/.default/assets/css/../fonts/fontawesome-webfont.ttf?v=4.7.0') format('truetype'),url('/local/templates/.default/assets/css/../fonts/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular') format('svg');font-weight:normal;font-style:normal}.fa{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.33333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571429em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14285714em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14285714em;width:2.14285714em;top:.14285714em;text-align:center}.fa-li.fa-lg{left:-1.85714286em}.fa-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left{margin-right:.3em}.fa.fa-pull-right{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scale(-1, 1);-ms-transform:scale(-1, 1);transform:scale(-1, 1)}.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";-webkit-transform:scale(1, -1);-ms-transform:scale(1, -1);transform:scale(1, -1)}:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-flip-horizontal,:root .fa-flip-vertical{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-remove:before,.fa-close:before,.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-gear:before,.fa-cog:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-rotate-right:before,.fa-repeat:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-photo:before,.fa-image:before,.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-warning:before,.fa-exclamation-triangle:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before,.fa-bar-chart:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-gears:before,.fa-cogs:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook-f:before,.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-feed:before,.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-save:before,.fa-floppy-o:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-navicon:before,.fa-reorder:before,.fa-bars:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-unsorted:before,.fa-sort:before{content:"\f0dc"}.fa-sort-down:before,.fa-sort-desc:before{content:"\f0dd"}.fa-sort-up:before,.fa-sort-asc:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-legal:before,.fa-gavel:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-flash:before,.fa-bolt:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-paste:before,.fa-clipboard:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-unlink:before,.fa-chain-broken:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-toggle-down:before,.fa-caret-square-o-down:before{content:"\f150"}.fa-toggle-up:before,.fa-caret-square-o-up:before{content:"\f151"}.fa-toggle-right:before,.fa-caret-square-o-right:before{content:"\f152"}.fa-euro:before,.fa-eur:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-rupee:before,.fa-inr:before{content:"\f156"}.fa-cny:before,.fa-rmb:before,.fa-yen:before,.fa-jpy:before{content:"\f157"}.fa-ruble:before,.fa-rouble:before,.fa-rub:before{content:"\f158"}.fa-won:before,.fa-krw:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before,.fa-gratipay:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-toggle-left:before,.fa-caret-square-o-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-turkish-lira:before,.fa-try:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"}.fa-space-shuttle:before{content:"\f197"}.fa-slack:before{content:"\f198"}.fa-envelope-square:before{content:"\f199"}.fa-wordpress:before{content:"\f19a"}.fa-openid:before{content:"\f19b"}.fa-institution:before,.fa-bank:before,.fa-university:before{content:"\f19c"}.fa-mortar-board:before,.fa-graduation-cap:before{content:"\f19d"}.fa-yahoo:before{content:"\f19e"}.fa-google:before{content:"\f1a0"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-square:before{content:"\f1a2"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-stumbleupon:before{content:"\f1a4"}.fa-delicious:before{content:"\f1a5"}.fa-digg:before{content:"\f1a6"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-drupal:before{content:"\f1a9"}.fa-joomla:before{content:"\f1aa"}.fa-language:before{content:"\f1ab"}.fa-fax:before{content:"\f1ac"}.fa-building:before{content:"\f1ad"}.fa-child:before{content:"\f1ae"}.fa-paw:before{content:"\f1b0"}.fa-spoon:before{content:"\f1b1"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-recycle:before{content:"\f1b8"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-tree:before{content:"\f1bb"}.fa-spotify:before{content:"\f1bc"}.fa-deviantart:before{content:"\f1bd"}.fa-soundcloud:before{content:"\f1be"}.fa-database:before{content:"\f1c0"}.fa-file-pdf-o:before{content:"\f1c1"}.fa-file-word-o:before{content:"\f1c2"}.fa-file-excel-o:before{content:"\f1c3"}.fa-file-powerpoint-o:before{content:"\f1c4"}.fa-file-photo-o:before,.fa-file-picture-o:before,.fa-file-image-o:before{content:"\f1c5"}.fa-file-zip-o:before,.fa-file-archive-o:before{content:"\f1c6"}.fa-file-sound-o:before,.fa-file-audio-o:before{content:"\f1c7"}.fa-file-movie-o:before,.fa-file-video-o:before{content:"\f1c8"}.fa-file-code-o:before{content:"\f1c9"}.fa-vine:before{content:"\f1ca"}.fa-codepen:before{content:"\f1cb"}.fa-jsfiddle:before{content:"\f1cc"}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-saver:before,.fa-support:before,.fa-life-ring:before{content:"\f1cd"}.fa-circle-o-notch:before{content:"\f1ce"}.fa-ra:before,.fa-resistance:before,.fa-rebel:before{content:"\f1d0"}.fa-ge:before,.fa-empire:before{content:"\f1d1"}.fa-git-square:before{content:"\f1d2"}.fa-git:before{content:"\f1d3"}.fa-y-combinator-square:before,.fa-yc-square:before,.fa-hacker-news:before{content:"\f1d4"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-qq:before{content:"\f1d6"}.fa-wechat:before,.fa-weixin:before{content:"\f1d7"}.fa-send:before,.fa-paper-plane:before{content:"\f1d8"}.fa-send-o:before,.fa-paper-plane-o:before{content:"\f1d9"}.fa-history:before{content:"\f1da"}.fa-circle-thin:before{content:"\f1db"}.fa-header:before{content:"\f1dc"}.fa-paragraph:before{content:"\f1dd"}.fa-sliders:before{content:"\f1de"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-bomb:before{content:"\f1e2"}.fa-soccer-ball-o:before,.fa-futbol-o:before{content:"\f1e3"}.fa-tty:before{content:"\f1e4"}.fa-binoculars:before{content:"\f1e5"}.fa-plug:before{content:"\f1e6"}.fa-slideshare:before{content:"\f1e7"}.fa-twitch:before{content:"\f1e8"}.fa-yelp:before{content:"\f1e9"}.fa-newspaper-o:before{content:"\f1ea"}.fa-wifi:before{content:"\f1eb"}.fa-calculator:before{content:"\f1ec"}.fa-paypal:before{content:"\f1ed"}.fa-google-wallet:before{content:"\f1ee"}.fa-cc-visa:before{content:"\f1f0"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-bell-slash:before{content:"\f1f6"}.fa-bell-slash-o:before{content:"\f1f7"}.fa-trash:before{content:"\f1f8"}.fa-copyright:before{content:"\f1f9"}.fa-at:before{content:"\f1fa"}.fa-eyedropper:before{content:"\f1fb"}.fa-paint-brush:before{content:"\f1fc"}.fa-birthday-cake:before{content:"\f1fd"}.fa-area-chart:before{content:"\f1fe"}.fa-pie-chart:before{content:"\f200"}.fa-line-chart:before{content:"\f201"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-bicycle:before{content:"\f206"}.fa-bus:before{content:"\f207"}.fa-ioxhost:before{content:"\f208"}.fa-angellist:before{content:"\f209"}.fa-cc:before{content:"\f20a"}.fa-shekel:before,.fa-sheqel:before,.fa-ils:before{content:"\f20b"}.fa-meanpath:before{content:"\f20c"}.fa-buysellads:before{content:"\f20d"}.fa-connectdevelop:before{content:"\f20e"}.fa-dashcube:before{content:"\f210"}.fa-forumbee:before{content:"\f211"}.fa-leanpub:before{content:"\f212"}.fa-sellsy:before{content:"\f213"}.fa-shirtsinbulk:before{content:"\f214"}.fa-simplybuilt:before{content:"\f215"}.fa-skyatlas:before{content:"\f216"}.fa-cart-plus:before{content:"\f217"}.fa-cart-arrow-down:before{content:"\f218"}.fa-diamond:before{content:"\f219"}.fa-ship:before{content:"\f21a"}.fa-user-secret:before{content:"\f21b"}.fa-motorcycle:before{content:"\f21c"}.fa-street-view:before{content:"\f21d"}.fa-heartbeat:before{content:"\f21e"}.fa-venus:before{content:"\f221"}.fa-mars:before{content:"\f222"}.fa-mercury:before{content:"\f223"}.fa-intersex:before,.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-venus-double:before{content:"\f226"}.fa-mars-double:before{content:"\f227"}.fa-venus-mars:before{content:"\f228"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-neuter:before{content:"\f22c"}.fa-genderless:before{content:"\f22d"}.fa-facebook-official:before{content:"\f230"}.fa-pinterest-p:before{content:"\f231"}.fa-whatsapp:before{content:"\f232"}.fa-server:before{content:"\f233"}.fa-user-plus:before{content:"\f234"}.fa-user-times:before{content:"\f235"}.fa-hotel:before,.fa-bed:before{content:"\f236"}.fa-viacoin:before{content:"\f237"}.fa-train:before{content:"\f238"}.fa-subway:before{content:"\f239"}.fa-medium:before{content:"\f23a"}.fa-yc:before,.fa-y-combinator:before{content:"\f23b"}.fa-optin-monster:before{content:"\f23c"}.fa-opencart:before{content:"\f23d"}.fa-expeditedssl:before{content:"\f23e"}.fa-battery-4:before,.fa-battery:before,.fa-battery-full:before{content:"\f240"}.fa-battery-3:before,.fa-battery-three-quarters:before{content:"\f241"}.fa-battery-2:before,.fa-battery-half:before{content:"\f242"}.fa-battery-1:before,.fa-battery-quarter:before{content:"\f243"}.fa-battery-0:before,.fa-battery-empty:before{content:"\f244"}.fa-mouse-pointer:before{content:"\f245"}.fa-i-cursor:before{content:"\f246"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-sticky-note:before{content:"\f249"}.fa-sticky-note-o:before{content:"\f24a"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-diners-club:before{content:"\f24c"}.fa-clone:before{content:"\f24d"}.fa-balance-scale:before{content:"\f24e"}.fa-hourglass-o:before{content:"\f250"}.fa-hourglass-1:before,.fa-hourglass-start:before{content:"\f251"}.fa-hourglass-2:before,.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-3:before,.fa-hourglass-end:before{content:"\f253"}.fa-hourglass:before{content:"\f254"}.fa-hand-grab-o:before,.fa-hand-rock-o:before{content:"\f255"}.fa-hand-stop-o:before,.fa-hand-paper-o:before{content:"\f256"}.fa-hand-scissors-o:before{content:"\f257"}.fa-hand-lizard-o:before{content:"\f258"}.fa-hand-spock-o:before{content:"\f259"}.fa-hand-pointer-o:before{content:"\f25a"}.fa-hand-peace-o:before{content:"\f25b"}.fa-trademark:before{content:"\f25c"}.fa-registered:before{content:"\f25d"}.fa-creative-commons:before{content:"\f25e"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-tripadvisor:before{content:"\f262"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-get-pocket:before{content:"\f265"}.fa-wikipedia-w:before{content:"\f266"}.fa-safari:before{content:"\f267"}.fa-chrome:before{content:"\f268"}.fa-firefox:before{content:"\f269"}.fa-opera:before{content:"\f26a"}.fa-internet-explorer:before{content:"\f26b"}.fa-tv:before,.fa-television:before{content:"\f26c"}.fa-contao:before{content:"\f26d"}.fa-500px:before{content:"\f26e"}.fa-amazon:before{content:"\f270"}.fa-calendar-plus-o:before{content:"\f271"}.fa-calendar-minus-o:before{content:"\f272"}.fa-calendar-times-o:before{content:"\f273"}.fa-calendar-check-o:before{content:"\f274"}.fa-industry:before{content:"\f275"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-map-o:before{content:"\f278"}.fa-map:before{content:"\f279"}.fa-commenting:before{content:"\f27a"}.fa-commenting-o:before{content:"\f27b"}.fa-houzz:before{content:"\f27c"}.fa-vimeo:before{content:"\f27d"}.fa-black-tie:before{content:"\f27e"}.fa-fonticons:before{content:"\f280"}.fa-reddit-alien:before{content:"\f281"}.fa-edge:before{content:"\f282"}.fa-credit-card-alt:before{content:"\f283"}.fa-codiepie:before{content:"\f284"}.fa-modx:before{content:"\f285"}.fa-fort-awesome:before{content:"\f286"}.fa-usb:before{content:"\f287"}.fa-product-hunt:before{content:"\f288"}.fa-mixcloud:before{content:"\f289"}.fa-scribd:before{content:"\f28a"}.fa-pause-circle:before{content:"\f28b"}.fa-pause-circle-o:before{content:"\f28c"}.fa-stop-circle:before{content:"\f28d"}.fa-stop-circle-o:before{content:"\f28e"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-hashtag:before{content:"\f292"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-percent:before{content:"\f295"}.fa-gitlab:before{content:"\f296"}.fa-wpbeginner:before{content:"\f297"}.fa-wpforms:before{content:"\f298"}.fa-envira:before{content:"\f299"}.fa-universal-access:before{content:"\f29a"}.fa-wheelchair-alt:before{content:"\f29b"}.fa-question-circle-o:before{content:"\f29c"}.fa-blind:before{content:"\f29d"}.fa-audio-description:before{content:"\f29e"}.fa-volume-control-phone:before{content:"\f2a0"}.fa-braille:before{content:"\f2a1"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asl-interpreting:before,.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-deafness:before,.fa-hard-of-hearing:before,.fa-deaf:before{content:"\f2a4"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-signing:before,.fa-sign-language:before{content:"\f2a7"}.fa-low-vision:before{content:"\f2a8"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-pied-piper:before{content:"\f2ae"}.fa-first-order:before{content:"\f2b0"}.fa-yoast:before{content:"\f2b1"}.fa-themeisle:before{content:"\f2b2"}.fa-google-plus-circle:before,.fa-google-plus-official:before{content:"\f2b3"}.fa-fa:before,.fa-font-awesome:before{content:"\f2b4"}.fa-handshake-o:before{content:"\f2b5"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-o:before{content:"\f2b7"}.fa-linode:before{content:"\f2b8"}.fa-address-book:before{content:"\f2b9"}.fa-address-book-o:before{content:"\f2ba"}.fa-vcard:before,.fa-address-card:before{content:"\f2bb"}.fa-vcard-o:before,.fa-address-card-o:before{content:"\f2bc"}.fa-user-circle:before{content:"\f2bd"}.fa-user-circle-o:before{content:"\f2be"}.fa-user-o:before{content:"\f2c0"}.fa-id-badge:before{content:"\f2c1"}.fa-drivers-license:before,.fa-id-card:before{content:"\f2c2"}.fa-drivers-license-o:before,.fa-id-card-o:before{content:"\f2c3"}.fa-quora:before{content:"\f2c4"}.fa-free-code-camp:before{content:"\f2c5"}.fa-telegram:before{content:"\f2c6"}.fa-thermometer-4:before,.fa-thermometer:before,.fa-thermometer-full:before{content:"\f2c7"}.fa-thermometer-3:before,.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-thermometer-2:before,.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-1:before,.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-0:before,.fa-thermometer-empty:before{content:"\f2cb"}.fa-shower:before{content:"\f2cc"}.fa-bathtub:before,.fa-s15:before,.fa-bath:before{content:"\f2cd"}.fa-podcast:before{content:"\f2ce"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-times-rectangle:before,.fa-window-close:before{content:"\f2d3"}.fa-times-rectangle-o:before,.fa-window-close-o:before{content:"\f2d4"}.fa-bandcamp:before{content:"\f2d5"}.fa-grav:before{content:"\f2d6"}.fa-etsy:before{content:"\f2d7"}.fa-imdb:before{content:"\f2d8"}.fa-ravelry:before{content:"\f2d9"}.fa-eercast:before{content:"\f2da"}.fa-microchip:before{content:"\f2db"}.fa-snowflake-o:before{content:"\f2dc"}.fa-superpowers:before{content:"\f2dd"}.fa-wpexplorer:before{content:"\f2de"}.fa-meetup:before{content:"\f2e0"}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}

/* End */


/* Start:/local/templates/.default/assets/css/v4.css?177917286246225*/
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}
html {
  scrollbar-gutter: stable;
}
:root {
  --sky: #1274b5;
  --sky-dark: #0f5a8f;
  --sky-light: #f2faff;
  --pink: #c1272d;
  --pink-dark: #9e1f24;
  --pink-light: #f9e0e1;
  --white: #fff;
  --gray: #f5f7fa;
  --dark: #1a2332;
  --text: #2d3748;
  --muted: #718096;
  --border: rgba(26, 35, 50, 0.08);
  --spt: 40px;
  --spb: 60px;
}
html {
  scroll-behavior: smooth;
}
body {
  font-family: "Raleway", sans-serif;
  background: #fff;
  color: var(--text);
  font-variant-numeric: lining-nums proportional-nums;
}
.site-num {
  font-family: "Nunito", sans-serif;
  font-variant-numeric: lining-nums proportional-nums;
}

#about {
  scroll-margin-top: 60px;
}

#documents {
  scroll-margin-top: 70px;
}

#stages {
  scroll-margin-top: 60px;
}

#scoring {
  scroll-margin-top: 40px;
}

#nominations {
  scroll-margin-top: 70px;
}

#orgcommittee {
  scroll-margin-top: 50px;
}

#partners {
  scroll-margin-top: 80px;
}

#expert-council {
  scroll-margin-top: 100px;
}

#apply {
  scroll-margin-top: 50px;
}

/* ===== CONTAINER ===== */
.container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
  width: 100%;
}

/* ===== NAV ===== */
.main-nav {
  --nav-logo-height: 38px;
  background: #fff;
  border-bottom: 1px solid var(--border);
  position: sticky;
  top: 0;
  z-index: 100;
  height: 72px;
}
.nav-inner {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 20px;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}
.nav-brand {
  display: flex;
  align-items: center;
  gap: 18px;
  flex-shrink: 0;
}
.nav-logo {
  display: flex;
  align-items: center;
  height: var(--nav-logo-height);
  text-decoration: none;
}
.nav-logo img {
  height: 100%;
  width: auto;
  display: block;
}
.nav-partners {
  display: flex;
  align-items: center;
  gap: 10px;
}
.nav-partner-logo {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  height: var(--nav-logo-height);
}
.nav-partner-logo--pfki {
  width: auto;
}
.nav-partner-logo--pcm {
  width: auto;
}
.nav-partner-logo img,
.nav-partner-logo--pcm img {
  width: auto;
  height: 100%;
  object-fit: contain;
  display: block;
}
.nav-partner-logo--pcm img {
  filter: brightness(0);
}
.nav-links {
  display: flex;
  align-items: center;
  gap: 0;
}
.nav-links a {
  font-size: 13px;
  font-weight: 500;
  color: var(--text);
  text-decoration: none;
  padding: 6px 10px;
  transition: color 0.15s;
  white-space: nowrap;
}
.nav-links a:hover {
  color: var(--sky);
}
.nav-links a.active {
  color: var(--pink);
  font-weight: 600;
}

/* ===== BUTTONS ===== */
.btn-primary {
  display: inline-block;
  background: #c1272d;
  color: #fff;
  font-family: "Raleway", sans-serif;
  font-weight: 700;
  font-size: 16px;
  padding: 14px 36px;
  border-radius: 50px;
  border: none;
  cursor: pointer;
  text-decoration: none;
  transition:
    background 0.18s,
    transform 0.15s,
    box-shadow 0.18s;
  box-shadow: 0 4px 18px rgba(193, 39, 45, 0.25);
  white-space: nowrap;
}
.btn-primary:hover {
  background: #a81f24;
  box-shadow: 0 6px 24px rgba(193, 39, 45, 0.35);
  transform: translateY(-1px);
}
.btn-primary:active {
  background: #9e1f24;
  box-shadow: 0 2px 10px rgba(193, 39, 45, 0.3);
  transform: translateY(1px);
}

/* ===== MOBILE BURGER ===== */
.burger {
  display: none;
  background: none;
  border: none;
  cursor: pointer;
  padding: 4px;
  flex-shrink: 0;
}
.burger img {
  width: 36px;
  height: 36px;
  display: block;
}

/* ===== MOBILE DRAWER ===== */
.mobile-drawer {
  position: fixed;
  top: 0;
  right: 0;
  width: 260px;
  background: #fff;
  box-shadow: 0 8px 32px rgba(26, 35, 50, 0.18);
  border-radius: 0 0 0 20px;
  z-index: 200;
  display: flex;
  flex-direction: column;
  padding: 14px 24px 28px;
  transform-origin: top right;
  transform: scale(0.9) translateY(-8px);
  opacity: 0;
  visibility: hidden;
  transition:
    transform 0.2s ease,
    opacity 0.2s ease,
    visibility 0s linear 0.2s;
}
.mobile-drawer.open {
  transform: scale(1) translateY(0);
  opacity: 1;
  visibility: visible;
  transition:
    transform 0.2s ease,
    opacity 0.2s ease,
    visibility 0s linear 0s;
}
.mobile-drawer-top {
  height: 0;
  overflow: visible;
}
.mobile-drawer-close {
  position: fixed;
  top: 0;
  right: 0;
  height: 72px;
  padding: 0 16px;
  display: flex;
  align-items: center;
  background: none;
  border: none;
  cursor: pointer;
  z-index: 201;
}
.mobile-drawer-close img {
  width: 36px;
  height: 36px;
  display: block;
}
@media (max-width: 768px) {
  .mobile-drawer-close {
    padding: 0 12px;
  }
}
.mobile-nav-links {
  display: flex;
  flex-direction: column;
}
.mobile-nav-links a {
  font-size: 18px;
  font-weight: 500;
  color: var(--muted);
  text-decoration: none;
  padding: 14px 0;
  transition: color 0.15s;
}
.mobile-nav-links a:hover {
  color: var(--sky);
}
.mobile-nav-links a.active {
  color: var(--pink);
  font-weight: 600;
}

/* ===== HERO ===== */
.hero {
  background: linear-gradient(to bottom, #e6f4fb 0%, #f2faff 60%, #ffffff 100%);
  position: relative;
  overflow: hidden;
  padding: 56px 0 0;
}
.hero-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
  display: grid;
  grid-template-columns: 52% 48%;
  align-items: flex-end;
  gap: 0;
  min-height: 520px;
  position: relative;
  z-index: 1;
}
.hero-text {
  padding-bottom: 64px;
  z-index: 1;
  position: relative;
}
.hero-label {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--pink);
  margin-bottom: 20px;
}
.hero-title {
  font-family: "Playfair Display", serif;
  font-size: 56px;
  font-weight: 700;
  color: var(--dark);
  line-height: 1.12;
  margin-bottom: 14px;
}
.hero-subtitle {
  font-size: 15px;
  font-weight: 400;
  font-style: italic;
  color: var(--muted);
  margin-bottom: 32px;
}
.hero-btns {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
  margin-bottom: 48px;
}
.btn-outline {
  display: inline-block;
  background: transparent;
  color: var(--sky);
  font-family: "Raleway", sans-serif;
  font-weight: 700;
  font-size: 16px;
  padding: 13px 32px;
  border-radius: 50px;
  border: 2px solid var(--sky);
  text-decoration: none;
  transition:
    background 0.18s,
    color 0.18s;
  white-space: nowrap;
}
.btn-outline:hover {
  background: var(--sky);
  color: #fff;
}
.hero-support {
  font-family: "Nunito", sans-serif;
  font-size: 18px;
  font-weight: 700;
  color: #3d3050;
  line-height: normal;
}
.hero-image {
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
}
.hero-image img {
  width: 100%;
  max-width: 600px;
  display: block;
}
/* clouds */
@keyframes cloud-drift {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(120px);
  }
}
.hero-cloud {
  position: absolute;
  pointer-events: none;
  user-select: none;
  animation: cloud-drift linear infinite alternate;
  z-index: 0;
}
.hero-cloud--1 {
  width: 260px;
  top: 60px;
  left: -30px;
  opacity: 0.8;
  animation-duration: 18s;
}
.hero-cloud--2 {
  width: 320px;
  top: 300px;
  left: 40px;
  opacity: 0.75;
  animation-duration: 26s;
  animation-delay: -8s;
}
.hero-cloud--3 {
  width: 360px;
  top: 240px;
  left: 36%;
  opacity: 0.65;
  animation-duration: 22s;
  animation-delay: -14s;
}

@media (max-width: 900px) {
  .hero-title {
    font-size: 42px;
  }
}
@media (max-width: 680px) {
  .hero-inner {
    grid-template-columns: 1fr;
    min-height: auto;
    gap: 20px;
  }
  .hero-text {
    padding-bottom: 20px;
  }
  .hero-title {
    font-size: 38px;
  }
  .hero-image {
    justify-content: center;
  }
  .hero-image img {
    max-width: 360px;
  }
}

/* ===== SECTION LABEL ===== */
.section-label {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--sky);
  margin-bottom: 48px;
}

/* ===== ABOUT ===== */
.about {
  padding: var(--spt) 0 24px;
  background: #fff;
}
.about-grid {
  display: grid;
  grid-template-columns: 42% 1fr;
  gap: 64px;
  align-items: start;
}
.about-photo-card {
  border-left: 4px solid #c1272d;
  border-radius: 0 20px 20px 0;
  padding: 24px;
  background: #f2faff;
}
.about-photo {
  width: 100%;
  border-radius: 12px;
  display: block;
  margin-bottom: 12px;
}
.about-photo-credit {
  font-size: 12px;
  color: var(--muted);
  font-style: italic;
  margin-bottom: 16px;
}
.about-quote {
  font-size: 15px;
  font-style: italic;
  color: var(--text);
  line-height: 1.65;
  margin-bottom: 12px;
}
.about-author {
  font-size: 16px;
  font-weight: 700;
  color: var(--dark);
  text-align: right;
}
.about-title {
  font-family: "Playfair Display", serif;
  font-size: 26px;
  font-weight: 700;
  color: var(--dark);
  margin-bottom: 24px;
  line-height: 1.3;
}
.about-lead {
  font-size: 16px;
  font-weight: 700;
  color: var(--dark);
  line-height: 1.6;
  margin-bottom: 20px;
}
.about-body {
  font-size: 16px;
  font-weight: 400;
  color: var(--text);
  line-height: 1.75;
}

@media (max-width: 680px) {
  .about-grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }
}

/* ===== MISSION ===== */
.mission {
  padding: 0 0 50px;
  background: #fff;
}
.mission-title {
  font-family: "Playfair Display", serif;
  font-size: 42px;
  font-weight: 700;
  color: var(--dark);
  margin-bottom: 24px;
}
.mission-intro {
  font-size: 16px;
  font-weight: 400;
  color: var(--text);
  line-height: 1.75;
  margin-bottom: 24px;
}
.mission-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}
.mission-card {
  background: #f2faff;
  border-radius: 16px;
  padding: 32px 36px 36px;
}
.mission-num {
  display: block;
  font-family: "Cormorant Garamond", serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 40px;
  font-variant-numeric: lining-nums proportional-nums;
  margin-bottom: 12px;
  background: linear-gradient(138deg, #07abe3 0%, #c1272d 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.mission-card-title {
  font-size: 18px;
  font-weight: 700;
  color: var(--dark);
  margin-bottom: 10px;
}
.mission-card-text {
  font-size: 15px;
  font-weight: 400;
  color: var(--text);
  line-height: 1.65;
}

@media (max-width: 600px) {
  .mission-title {
    font-size: 32px;
  }
}

/* ===== GOAL ===== */
.goal {
  padding: var(--spt) 0 var(--spb);
  background: #fff;
}
.section-label--pill {
  display: inline-block;
  background: #f2faff;
  color: #b32938;
  border-radius: 50px;
  padding: 4px 16px;
  margin-bottom: 24px;
}
.goal-quote {
  border-left: 4px solid #c1272d;
  padding: 12px 0 12px 28px;
  margin: 0;
  font-size: 18px;
  font-weight: 400;
  color: var(--dark);
  line-height: 1.75;
}

/* ===== UNIQUENESS ===== */
.uniqueness {
  padding: var(--spt) 0 60px;
  background: #fff;
}
.section-h2 {
  font-family: "Playfair Display", serif;
  font-size: 42px;
  font-weight: 700;
  color: var(--dark);
  margin-bottom: 20px;
}
.uniq-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}
.uniq-card {
  background: #f2faff;
  border-radius: 16px;
  padding: 28px 32px;
}
.uniq-card-title {
  font-size: 18px;
  font-weight: 700;
  color: var(--dark);
  margin-bottom: 10px;
}
.uniq-card-text {
  font-size: 15px;
  font-weight: 400;
  color: var(--text);
  line-height: 1.65;
}

/* ===== PARTICIPATION ===== */
.participation {
  padding: 0;
  background: #fff;
}
.participation-intro {
  font-size: 16px;
  font-weight: 400;
  color: var(--text);
  line-height: 1.7;
  margin-bottom: 48px;
  max-width: 680px;
}
.participation-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 64px;
}
.participation-col-title {
  font-size: 18px;
  font-weight: 900;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #000000;
  margin-bottom: 20px;
}
.participation-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.participation-list li {
  font-size: 16px;
  font-weight: 400;
  color: var(--text);
  line-height: 1.6;
  padding-left: 20px;
  position: relative;
}
.participation-list li::before {
  content: "•";
  position: absolute;
  left: 0;
  top: 0;
  color: #b32938;
  font-size: 18px;
  line-height: 1.45;
}

/* ===== CITIES ===== */
.cities {
  padding: 40px 0 var(--spb);
  background: #fff;
}
.cities-title {
  font-size: 18px;
  font-weight: 900;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #000000;
  margin-bottom: 28px;
}
.cities-track-wrap {
  overflow: hidden;
  position: relative;
}
.cities-track {
  width: 100%;
  padding: 0 0 4px;
  will-change: transform;
}
.cities-track:not(.slick-initialized) {
  display: flex;
  gap: 16px;
}
.cities-track.slick-initialized {
  margin-left: -148px;
  width: calc(100% + 148px);
}
.cities-track .slick-list {
  overflow: visible;
}
.cities-track .slick-track {
  display: flex;
}
.city-slide {
  position: relative;
  width: 280px;
  height: 200px;
  border-radius: 20px;
  overflow: hidden;
  flex-shrink: 0;
  cursor: pointer;
  user-select: none;
}
.cities-track.slick-initialized .city-slide {
  margin-right: 16px;
  width: 280px;
}
.city-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.4s ease;
}
.city-slide:hover img {
  transform: scale(1.05);
}
.city-label {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: linear-gradient(
    to top,
    rgba(0, 0, 0, 0.7) 0%,
    rgba(0, 0, 0, 0.3) 60%,
    transparent 100%
  );
  padding: 40px 16px 16px;
  transform: translateY(100%);
  transition: transform 0.3s ease;
}
.city-slide:hover .city-label {
  transform: translateY(0);
}
.city-label > span {
  font-size: 14px;
  font-weight: 600;
  color: #fff;
  display: block;
}
.city-label .site-num {
  display: inline;
}
.cities-cta {
  text-align: center;
  margin-top: 24px;
}

/* ===== CITY MODAL ===== */
.city-modal {
  position: fixed;
  inset: 0;
  z-index: 500;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s;
}
.city-modal.open {
  opacity: 1;
  pointer-events: all;
}
.city-modal-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.75);
}
.city-modal-inner {
  position: relative;
  z-index: 1;
  max-width: calc(100vw - 48px);
  width: fit-content;
  max-height: calc(100vh - 48px);
  border-radius: 20px;
  overflow: hidden;
  background: #000;
  box-shadow: 0 28px 80px rgba(0, 0, 0, 0.45);
  transform: scale(0.92);
  transition: transform 0.25s;
}
.city-modal.open .city-modal-inner {
  transform: scale(1);
}
.city-modal-inner img {
  width: auto;
  height: auto;
  max-width: calc(100vw - 48px);
  max-height: calc(100vh - 48px);
  object-fit: contain;
  display: block;
}
.city-modal-name {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 12px 20px;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.6), transparent);
  color: #fff;
  font-size: 18px;
  font-weight: 600;
}
.city-modal-close {
  position: absolute;
  top: 14px;
  right: 14px;
  background: rgba(0, 0, 0, 0.5);
  border: none;
  color: #fff;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  font-size: 16px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
  transition: background 0.2s;
}
.city-modal-close:hover {
  background: rgba(0, 0, 0, 0.8);
}

/* ===== STAGES ===== */
.stages {
  padding: var(--spt) 0 0;
  background: #1274b5;
  position: relative;
  overflow: hidden;
}
.stages-cloud {
  position: absolute;
  pointer-events: none;
  opacity: 0.25;
  user-select: none;
  animation: cloud-drift linear infinite alternate;
  will-change: transform;
}
.stages-cloud--1 {
  width: 260px;
  bottom: 120px;
  left: -40px;
  animation-duration: 24s;
  animation-delay: -6s;
}
.stages-cloud--2 {
  width: 200px;
  top: 40px;
  right: 20px;
  animation-duration: 20s;
  animation-delay: -12s;
}
.section-label--white {
  background: rgba(255, 255, 255, 0.18);
  color: #fff;
  border-radius: 50px;
  padding: 4px 16px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  display: inline-block;
  margin-bottom: 20px;
}
.stages-title {
  font-family: "Playfair Display", serif;
  font-size: 42px;
  font-weight: 700;
  color: #fff;
  margin-bottom: 36px;
}
.stages-top {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  margin-bottom: 20px;
}
.stages-card {
  background: rgba(255, 255, 255, 0.15);
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 20px;
  padding: 28px 28px 32px;
  backdrop-filter: blur(4px);
}
.stages-final {
  background: rgba(255, 255, 255, 0.15);
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 20px;
  padding: 32px 0 0 40px;
  backdrop-filter: blur(4px);
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 40px;
  overflow: hidden;
  margin-bottom: 64px;
}
.stages-final-text {
  flex: 1;
  padding-bottom: 32px;
}
.stages-city {
  width: 420px;
  flex-shrink: 0;
  display: block;
  opacity: 0.5;
  align-self: flex-end;
}
.stages-num {
  display: block;
  font-family: "Cormorant Garamond", serif;
  font-size: 64px;
  font-weight: 700;
  line-height: 1;
  color: rgba(255, 255, 255, 0.6);
  font-variant-numeric: lining-nums proportional-nums;
  margin-bottom: 12px;
}
.stages-card-title {
  font-size: 17px;
  font-weight: 700;
  color: #fff;
  padding-bottom: 16px;
  margin-bottom: 16px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}
.stages-card-date {
  font-size: 15px;
  font-weight: 700;
  color: #fff;
  margin-bottom: 10px;
}
.stages-card-text {
  font-size: 14px;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.8);
  line-height: 1.65;
}

@media (max-width: 900px) {
  .stages-top {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 680px) {
  .stages-final {
    flex-direction: column;
  }
  .stages-city {
    width: 100%;
  }
}

/* ===== DOCUMENTS ===== */
.docs {
  padding: 30px 0 var(--spb);
  background:
    linear-gradient(358deg, rgba(255, 255, 255, 0) 57.2%, #fff 101.23%), #f2faff;
}
.docs-sub {
  font-size: 16px;
  color: var(--muted);
  margin-bottom: 34px;
}
.docs-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 20px;
}
.docs-card {
  background: #fff;
  border-radius: 16px;
  padding: 28px 24px 24px;
}
.docs-icon {
  width: 40px;
  height: 40px;
  margin-bottom: 16px;
}
.docs-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.docs-card-title {
  font-size: 16px;
  font-weight: 700;
  color: var(--dark);
  margin-bottom: 10px;
  line-height: 1.4;
}
.docs-download {
  font-size: 14px;
  font-weight: 600;
  color: var(--sky);
  text-decoration: none;
  transition: opacity 0.15s;
}
.docs-download:hover {
  opacity: 0.75;
}

@media (max-width: 900px) {
  .docs-grid {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 480px) {
  .docs-grid {
    grid-template-columns: 1fr;
  }
}

/* ===== SCORING ===== */
.scoring {
  padding: 80px 0 40px;
  background: #fff;
}
.scoring-block-title {
  font-size: 16px;
  font-weight: 700;
  color: var(--dark);
  margin-bottom: 24px;
}
.scoring-percent-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 16px;
  margin-bottom: 48px;
}
.scoring-percent-card {
  background: #f2faff;
  border-radius: 16px;
  padding: 24px 20px 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 12px;
}
.scoring-pct {
  font-family: "Cormorant Garamond", serif;
  font-size: 72px;
  font-weight: 700;
  line-height: 1;
  font-variant-numeric: lining-nums proportional-nums;
  color: var(--pink);
  font-style: normal;
}
.scoring-pct-text {
  font-size: 13px;
  font-weight: 400;
  color: var(--text);
  line-height: 1.55;
}
.scoring-check-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
.scoring-check-card {
  background: #f2faff;
  border-radius: 16px;
  padding: 24px 24px 28px;
}
.scoring-check-card--wide {
  grid-column: 1/-1;
}
.scoring-check-icon {
  width: 20px;
  height: 20px;
  display: block;
  margin-bottom: 14px;
}
.scoring-check-text {
  font-size: 15px;
  font-weight: 400;
  color: var(--text);
  line-height: 1.65;
}

@media (max-width: 1024px) {
  .scoring-percent-grid {
    grid-template-columns: repeat(6, 1fr);
  }
  .scoring-percent-card {
    grid-column: span 2;
  }
  .scoring-percent-card:nth-child(4),
  .scoring-percent-card:nth-child(5) {
    grid-column: span 3;
  }
}

/* ===== POINTS ===== */
.points {
  padding: 0 0 var(--spb);
  background: #fff;
}
.points-title {
  font-size: 16px;
  font-weight: 700;
  color: var(--dark);
  margin-bottom: 24px;
}
.points-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.points-card {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 32px 28px 36px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 0;
}
.points-card:nth-child(3) {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 150px 1fr;
  grid-template-rows: auto auto;
  column-gap: 32px;
  align-items: center;
  text-align: left;
}
.points-card:nth-child(3) .points-num {
  grid-column: 1;
  grid-row: 1;
  text-align: center;
}
.points-card:nth-child(3) .points-label {
  grid-column: 1;
  grid-row: 2;
  margin-bottom: 0;
  text-align: center;
}
.points-card:nth-child(3) .points-text {
  grid-column: 2;
  grid-row: 1 / -1;
  align-self: center;
}
.points-num {
  font-family: "Cormorant Garamond", serif;
  font-size: 72px;
  font-weight: 700;
  line-height: 1;
  font-variant-numeric: lining-nums proportional-nums;
  color: var(--pink);
  font-style: normal;
}
.points-label {
  font-size: 16px;
  font-weight: 700;
  color: var(--pink);
  margin-bottom: 20px;
}
.points-text {
  font-size: 15px;
  font-weight: 400;
  color: var(--text);
  line-height: 1.65;
}

/* ===== NOMINATIONS ===== */
.nominations {
  padding: 30px 0 var(--spb);
  background: linear-gradient(180deg, #fff 0%, #f2faff 100%);
}
.nom-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 16px;
}
.nom-card {
  background: #fff;
  border-radius: 16px;
  padding: 28px 20px 28px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 0;
}
.nom-icon {
  width: 56px;
  height: 56px;
  margin-bottom: 20px;
  flex-shrink: 0;
}
.nom-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.nom-title {
  font-size: 15px;
  font-weight: 700;
  color: var(--dark);
  margin-bottom: 12px;
  line-height: 1.4;
}
.nom-text {
  font-size: 14px;
  font-weight: 400;
  color: var(--muted);
  line-height: 1.6;
}

@media (max-width: 1024px) {
  .nom-grid {
    grid-template-columns: repeat(6, 1fr);
  }
  .nom-card {
    grid-column: span 2;
  }
  .nom-card:nth-child(4) {
    grid-column: 2 / span 2;
  }
  .nom-card:nth-child(5) {
    grid-column: 4 / span 2;
  }
}

/* ===== ORGCOMMITTEE ===== */
.orgcom {
  padding: 80px 0 var(--spb);
  background: #fff;
  position: relative;
  overflow: hidden;
}
.orgcom-cloud {
  position: absolute;
  pointer-events: none;
  opacity: 1;
  z-index: 0;
  user-select: none;
  animation: cloud-drift linear infinite alternate;
  will-change: transform;
}
.orgcom .container {
  position: relative;
  z-index: 1;
}
.orgcom-cloud--1 {
  width: 200px;
  top: 120px;
  left: -20px;
  animation-duration: 21s;
  animation-delay: -4s;
}
.orgcom-cloud--2 {
  width: 280px;
  top: 100px;
  right: -30px;
  animation-duration: 28s;
  animation-delay: -13s;
}
.orgcom-cloud--3 {
  width: 220px;
  top: 500px;
  left: -10px;
  animation-duration: 25s;
  animation-delay: -9s;
}
.orgcom-cloud--4 {
  width: 380px;
  top: 460px;
  right: -80px;
  animation-duration: 32s;
  animation-delay: -18s;
}
.orgcom-title {
  font-family: "Playfair Display", serif;
  font-size: 42px;
  font-weight: 700;
  color: var(--dark);
  text-align: center;
  margin-bottom: 48px;
}
.orgcom-row {
  display: grid;
  justify-items: center;
  margin-bottom: 48px;
}
.orgcom-row--2 {
  grid-template-columns: repeat(2, 220px);
  gap: 80px;
  justify-content: center;
}
.orgcom-row--5 {
  grid-template-columns: repeat(5, 1fr);
  gap: 24px;
}
.orgcom-row--6 {
  grid-template-columns: repeat(6, 1fr);
  gap: 20px;
}
.orgcom-person {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.orgcom-photo {
  border-radius: 50%;
  object-fit: cover;
  display: block;
  margin-bottom: 16px;
}
.orgcom-person--lg .orgcom-photo {
  width: 200px;
  height: 200px;
}
.orgcom-person--md .orgcom-photo {
  width: 160px;
  height: 160px;
}
.orgcom-person--sm .orgcom-photo {
  width: 120px;
  height: 120px;
}
.orgcom-name {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  font-size: 15px;
  font-weight: 700;
  color: var(--dark);
  margin-bottom: 6px;
  line-height: 1.2;
  word-break: normal;
  overflow-wrap: normal;
}
.orgcom-name-line {
  display: block;
  white-space: nowrap;
  line-height: 1.2;
}
.orgcom-person--sm .orgcom-name {
  font-size: 13px;
}
.orgcom-role {
  font-size: 13px;
  font-weight: 400;
  color: var(--muted);
  line-height: 1.55;
}
.orgcom-person--sm .orgcom-role {
  font-size: 12px;
}

@media (max-width: 900px) {
  .orgcom-row--5 {
    flex-wrap: wrap;
  }
  .orgcom-row--2 {
    gap: 40px;
  }
}
@media (max-width: 600px) {
  .orgcom-row--2 {
    flex-direction: column;
    align-items: center;
  }
}

/* ===== PARTNERS HOME ===== */
.partners-home {
  padding: 64px 0 var(--spb);
  background-color: #f2faff;
  background-image:
    url("/local/templates/.default/assets/css/../img/cloude_02.svg"),
    url("/local/templates/.default/assets/css/../img/cloude_05.svg"),
    linear-gradient(180deg, #fff 0%, #f2faff 48%, #fff 100%);
  background-position:
    left -70px top 42px,
    right -95px bottom 34px,
    center;
  background-repeat: no-repeat;
  background-size:
    260px auto,
    340px auto,
    auto;
}
.partners-home-title {
  font-family: "Playfair Display", serif;
  font-size: 42px;
  font-weight: 700;
  color: var(--dark);
  text-align: center;
  margin-bottom: 30px;
}
.partners-home-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
.partner-tile {
  position: relative;
  height: 226px;
  min-height: 226px;
  border-radius: 20px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  color: #fff;
  text-decoration: none;
  isolation: isolate;
  border: 1px solid rgba(26, 35, 50, 0.08);
  box-shadow: none;
}
.partner-tile::before {
  content: none;
}
.partner-tile img {
  display: block;
  transition: transform 0.4s ease;
}
.partner-tile--logo img {
  width: 78%;
  height: 92px;
  max-width: 78%;
  max-height: 92px;
  object-fit: contain;
}
.partner-tile--wide-logo img {
  width: 82%;
  height: 74px;
  max-width: 82%;
  max-height: 74px;
}
.partner-tile--emblem-logo img {
  width: 70%;
  height: 118px;
  max-height: 118px;
}
.partner-tile--placeholder {
  background: #fff;
}
.partner-tile--placeholder img {
  width: 72%;
  height: 118px;
  max-width: 72%;
  max-height: 118px;
  object-fit: contain;
}
.partner-tile:hover img,
.partner-tile:focus-visible img {
  transform: scale(1.05);
}
.partner-tile-label {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
  padding: 64px 18px 18px;
  background: linear-gradient(
    to top,
    rgba(0, 0, 0, 0.78) 0%,
    rgba(0, 0, 0, 0.38) 62%,
    transparent 100%
  );
  color: #fff;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.35;
  transform: translateY(100%);
  transition: transform 0.3s ease;
}
.partner-tile:hover .partner-tile-label,
.partner-tile:focus-visible .partner-tile-label {
  transform: translateY(0);
}
.partner-tile:focus-visible {
  outline: 3px solid var(--sky);
  outline-offset: 4px;
}

/* ===== EXPERT COUNCIL ===== */
.expert {
  padding: 0 0 var(--spb);
  background: linear-gradient(180deg, #fff 0%, #f2faff 100%);
}
.expert-title {
  font-family: "Playfair Display", serif;
  font-size: 42px;
  font-weight: 700;
  color: var(--dark);
  text-align: center;
  margin-bottom: 30px;
}
.expert-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
.expert-card {
  background: #fff;
  border-radius: 16px;
  padding: 28px 28px 32px;
}
.expert-card--center {
  grid-column: 2;
}
.expert-card-title {
  font-size: 16px;
  font-weight: 700;
  color: var(--dark);
  margin-bottom: 12px;
  line-height: 1.4;
}
.mission-card-title,
.uniq-card-title,
.docs-card-title,
.expert-card-title {
  font-family: "Raleway", sans-serif;
  font-size: 18px;
  line-height: 1.35;
}
.expert-card-text {
  font-size: 14px;
  font-weight: 400;
  color: var(--muted);
  line-height: 1.65;
}

@media (max-width: 768px) {
  .partners-home-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .partner-tile {
    height: 210px;
    min-height: 210px;
  }
  .expert-grid {
    grid-template-columns: 1fr 1fr;
  }
  .expert-card--center {
    grid-column: 1;
  }
}

@media (hover: none) {
  .partner-tile-label {
    transform: translateY(0);
  }
}

@media (max-width: 560px) {
  .partners-home {
    padding: 40px 0 48px;
    background-position:
      left -120px top 28px,
      right -160px bottom 22px,
      center;
  }
  .partners-home-title {
    font-size: 36px;
    text-align: left;
  }
  .partners-home-grid {
    grid-template-columns: 1fr;
  }
  .partner-tile {
    height: 220px;
    min-height: 220px;
    border-radius: 18px;
  }
  .partner-tile--wide-logo img {
    max-height: 72px;
  }
  .partner-tile--emblem-logo img {
    max-height: 116px;
  }
  .partner-tile-label {
    padding: 58px 16px 16px;
    font-size: 14px;
  }
}

/* ===== APPLY ===== */
.apply {
  padding: var(--spb) 0;
  background: linear-gradient(135deg, #a01830 0%, #c1272d 60%, #8b1020 100%);
  text-align: center;
}
.section-label--apply {
  display: inline-block;
  background: rgba(255, 255, 255, 0.18);
  color: #fff;
  border-radius: 50px;
  padding: 4px 16px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  margin-bottom: 20px;
}
.apply-title {
  font-family: "Playfair Display", serif;
  font-size: 48px;
  font-weight: 700;
  color: #fff;
  margin-bottom: 20px;
}
.apply-desc {
  font-size: 16px;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.85);
  line-height: 1.7;
  max-width: 560px;
  margin: 0 auto 48px;
}
.apply-steps {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 16px;
  margin-bottom: 48px;
}
.apply-step {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}
.apply-step-num {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.2);
  border: 2px solid rgba(255, 255, 255, 0.5);
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.apply-step-label {
  font-size: 15px;
  font-weight: 700;
  color: #fff;
  line-height: 1.4;
}
.apply-arrow {
  width: 20px;
  opacity: 0.7;
  margin-top: 14px;
  flex-shrink: 0;
}
.apply-btns {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  flex-wrap: wrap;
}
.apply-btn-primary {
  display: inline-block;
  background: #fff;
  color: var(--pink);
  font-family: "Raleway", sans-serif;
  font-weight: 700;
  font-size: 16px;
  padding: 14px 36px;
  border-radius: 50px;
  text-decoration: none;
  transition: opacity 0.2s;
  white-space: nowrap;
}
.apply-btn-primary:hover {
  opacity: 0.9;
}
.apply-btn-outline {
  display: inline-block;
  background: transparent;
  color: #fff;
  font-family: "Raleway", sans-serif;
  font-weight: 700;
  font-size: 16px;
  padding: 13px 36px;
  border-radius: 50px;
  border: 2px solid rgba(255, 255, 255, 0.6);
  text-decoration: none;
  transition: border-color 0.2s;
  white-space: nowrap;
}
.apply-btn-outline:hover {
  border-color: #fff;
}

@media (max-width: 600px) {
  .apply-steps {
    flex-wrap: wrap;
  }
  .apply-arrow {
    display: block;
    transform: rotate(90deg);
  }
}

/* ===== FOOTER ===== */
.footer {
  background: #2b2d3e;
  padding: 56px 0 0;
}
.footer-top {
  display: grid;
  grid-template-columns: 320px 1fr;
  gap: 80px;
  padding-bottom: 48px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}
.footer-logo {
  height: 80px;
  width: auto;
  display: block;
  margin-bottom: 20px;
}
.footer-tagline {
  font-size: 14px;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.5);
  line-height: 1.6;
}
.footer-nav {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
}
.footer-col {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.footer-col-title {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.4);
  margin-bottom: 4px;
}
.footer-col a {
  font-size: 15px;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.7);
  text-decoration: none;
  transition: color 0.15s;
}
.footer-col a:hover {
  color: #fff;
}
.footer-hours {
  font-size: 15px;
  color: rgba(255, 255, 255, 0.7);
}
.footer-bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 20px 0;
}
.footer-copy {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.35);
}
.footer-motto {
  font-size: 13px;
  font-style: italic;
  color: rgba(255, 255, 255, 0.35);
}

@media (min-width: 601px) and (max-width: 900px) {
  .footer-top {
    grid-template-columns: 180px 1fr;
    gap: 32px;
  }
  .footer-logo {
    height: 60px;
    margin-bottom: 16px;
  }
  .footer-nav {
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
  }
}
@media (max-width: 600px) {
  .footer-top {
    grid-template-columns: 1fr;
    gap: 40px;
    text-align: center;
  }
  .footer-logo {
    height: 60px;
    margin: 0 auto 20px;
  }
  .footer-nav {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  .footer-col {
    align-items: center;
  }
  .footer-bottom {
    flex-direction: column;
    gap: 8px;
    text-align: center;
  }
}

/* drawer backdrop */
.drawer-backdrop {
  position: fixed;
  inset: 0;
  z-index: 199;
  pointer-events: none;
  background: transparent;
}
.drawer-backdrop.open {
  pointer-events: all;
}

@media (max-width: 1320px) {
  .nav-inner {
    gap: 8px;
  }
  .nav-brand {
    gap: 14px;
  }
  .nav-links {
    display: none;
  }
  .btn-nav {
    margin-left: auto;
  }
  .burger {
    display: flex;
    align-items: center;
  }
}
@media (max-width: 768px) {
  .main-nav {
    --nav-logo-height: 28px;
  }
  .nav-inner {
    padding: 0 12px;
  }
  .nav-brand {
    gap: 8px;
  }
  .nav-partners {
    gap: 6px;
  }
  .nav-partner-logo--pfki {
    width: auto;
  }
  .nav-partner-logo--pcm {
    width: auto;
  }
  .btn-nav {
    display: none;
  }
}

@media (max-width: 480px) {
  .main-nav {
    --nav-logo-height: 26px;
  }
  .nav-partner-logo--pfki {
    width: auto;
  }
  .nav-partner-logo--pcm {
    width: auto;
  }
}

/* ===== TABLET ===== */
@media (min-width: 601px) and (max-width: 900px) {
  .orgcom {
    padding-top: 60px;
  }

  :root {
    --spt: 20px;
    --spb: 30px;
  }

  /* Nav — кнопка прижата к бургеру */
  .btn-nav {
    margin-left: auto;
  }
  .nav-inner {
    gap: 8px;
  }

  /* Hero — 2 колонки, дерево в правой колонке */
  .hero {
    padding: 36px 0 0;
    overflow: hidden;
  }
  .hero-inner {
    grid-template-columns: 60% 40%;
    min-height: 360px;
    align-items: end;
    gap: 0;
  }
  .hero-text {
    padding-bottom: 32px;
    z-index: 2;
    position: relative;
    width: auto;
  }
  .hero-title {
    font-size: 36px;
  }
  .hero-image {
    position: static;
    display: flex;
    align-items: flex-end;
    justify-content: center;
  }
  .hero-image img {
    width: 100%;
    height: auto;
    display: block;
  }

  /* About — 1 колонка */
  .about-grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  /* Stages final */
  .stages-final {
    flex-direction: column;
    padding: 0;
    gap: 0;
    margin-bottom: 40px;
    position: relative;
    overflow: hidden;
  }
  .stages-final-text {
    width: 100%;
    padding: 32px 32px 220px;
  }
  .stages-city {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    max-width: none;
    margin: 0;
  }

  /* Orgcom — маленькие в 3 колонки */
  .orgcom-row--5,
  .orgcom-row--6 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 24px;
  }
  .orgcom-row--5 .orgcom-person,
  .orgcom-row--6 .orgcom-person {
    flex: 0 0 calc(33.33% - 16px);
  }

  /* Scoring check — 2 колонки */
  .scoring-check-grid {
    grid-template-columns: 1fr 1fr;
  }
  .scoring-check-card--wide {
    grid-column: 1/-1;
  }

  /* Points — 1 колонка, цифра слева, текст справа */
  .points-grid {
    grid-template-columns: 1fr;
  }
  .points-card {
    display: grid;
    grid-template-columns: 100px 1fr;
    grid-template-rows: auto auto;
    column-gap: 32px;
    align-items: center;
    text-align: left;
    padding: 24px 32px;
  }
  .points-card:nth-child(3) {
    grid-column: 1;
    grid-template-columns: 100px 1fr;
  }
  .points-num {
    grid-column: 1;
    grid-row: 1;
    font-size: 64px;
    line-height: 1;
    text-align: center;
  }
  .points-label {
    grid-column: 1;
    grid-row: 2;
    margin-bottom: 0;
    text-align: center;
  }
  .points-text {
    grid-column: 2;
    grid-row: 1/-1;
    align-self: center;
  }
}

@media (max-width: 900px) {
  .scoring {
    padding-top: 40px;
  }
}

/* ===== MOBILE ===== */
@media (max-width: 600px) {
  :root {
    --spt: 16px;
    --spb: 20px;
  }

  /* общие */
  .section-h2 {
    font-size: 36px;
  }
  .section-label {
    margin-bottom: 24px;
  }
  .container {
    padding: 0 16px;
  }

  /* кнопки */
  .btn-primary {
    font-size: 15px;
    padding: 14px 24px;
    border-radius: 50px;
  }
  .btn-outline {
    font-size: 15px;
    padding: 13px 24px;
    border-radius: 50px;
  }

  /* Hero */
  .hero {
    padding: 24px 0 0;
    overflow: hidden;
  }
  .hero-inner {
    display: block;
    position: relative;
    min-height: 360px;
  }
  .hero-text {
    padding-bottom: 32px;
    width: 65%;
    position: relative;
    z-index: 2;
  }
  .hero-title {
    font-size: 40px;
    line-height: 1.1;
    margin-bottom: 10px;
  }
  .hero-label {
    font-size: 9px;
    margin-bottom: 10px;
    white-space: nowrap;
  }
  .hero-subtitle {
    font-size: 13px;
    margin-bottom: 18px;
  }
  .hero-btns {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 20px;
  }
  .hero-btns .btn-primary {
    font-size: 15px;
    padding: 12px 24px;
  }
  .hero-btns .btn-outline {
    font-size: 15px;
    padding: 11px 24px;
  }
  .hero-support {
    font-size: 13px;
  }
  .hero-image {
    position: absolute;
    right: -20px;
    bottom: 0;
    width: 55%;
    z-index: 1;
    display: block;
  }
  .hero-image img {
    width: 100%;
    height: auto;
    display: block;
  }
  .hero-cloud--1 {
    width: 100px;
  }
  .hero-cloud--2 {
    width: 120px;
  }
  .hero-cloud--3 {
    width: 100px;
  }

  /* About */
  .about {
    padding: 40px 0 24px;
  }
  .about-grid {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  /* Mission */
  .mission {
    padding: 0 0 48px;
  }
  .mission-title {
    font-size: 36px;
  }
  .mission-grid {
    grid-template-columns: 1fr;
  }

  /* Goal */
  .goal {
    padding: 20px 0 36px 0;
  }
  .goal-quote {
    font-size: 15px;
  }

  /* Uniqueness */
  .uniqueness {
    padding: 0 0 60px;
  }
  .uniq-grid {
    grid-template-columns: 1fr;
  }

  /* Participation */
  .participation {
    padding: 0;
  }
  .participation-grid {
    grid-template-columns: 1fr;
    gap: 28px;
  }
  .participation-col-title {
    font-family: "Nunito", sans-serif;
    font-size: 18px;
    font-weight: 900;
    letter-spacing: 1.04px;
    text-transform: uppercase;
    color: #000;
  }

  /* Cities */
  .cities {
    padding: 40px 0 48px;
  }
  .cities-title {
    font-size: 13px;
  }
  .city-slide {
    width: 220px;
    height: 160px;
  }
  .cities-track.slick-initialized {
    margin-left: 0;
    width: 100%;
  }
  .cities-track.slick-initialized .city-slide {
    width: 220px;
  }

  /* Documents */
  .docs {
    padding: 0 0 48px;
  }
  .docs-grid {
    grid-template-columns: 1fr;
  }

  /* Stages */
  .stages {
    padding: 40px 0 0;
  }
  .stages-title {
    font-size: 36px;
  }
  .stages-top {
    grid-template-columns: 1fr;
  }
  .stages-final {
    flex-direction: column;
    padding: 24px 20px 0;
    margin-bottom: 40px;
  }
  .stages-final-text {
    padding-bottom: 0;
  }
  .stages-city {
    width: 160%;
    max-width: none;
    margin: 0 -30% 0 -15%;
    display: block;
  }

  /* Scoring */
  .scoring {
    padding: 40px 0 48px;
  }
  .scoring-percent-grid {
    grid-template-columns: 1fr;
    column-gap: normal;
  }
  .scoring-check-grid {
    grid-template-columns: 1fr;
  }
  .scoring-check-card--wide {
    grid-column: 1;
  }
  .scoring-pct {
    font-size: 72px;
  }

  /* Points */
  .points {
    padding: 0;
  }
  .points-grid {
    grid-template-columns: 1fr;
  }
  .points-card,
  .points-card:nth-child(3) {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 28px 24px 32px;
  }
  .points-card:nth-child(3) .points-label {
    margin-bottom: 20px;
  }
  .points-card:nth-child(3) .points-text {
    align-self: auto;
  }
  .points-num {
    font-size: 56px;
  }

  /* Nominations */
  .nominations {
    padding: 40px 0 48px;
  }
  .nom-grid {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    gap: 12px;
    padding: 8px 0 16px;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .nom-grid::-webkit-scrollbar {
    display: none;
  }
  .nom-card {
    flex: 0 0 72vw;
    max-width: 280px;
    scroll-snap-align: center;
  }
  .nom-grid .nom-card:first-child {
    margin-left: 16px;
  }
  .nom-grid .nom-card:last-child {
    margin-right: 16px;
  }
  .nom-title {
    font-size: 17px;
  }
  .nom-text {
    font-size: 14px;
  }

  /* Orgcommittee */
  .orgcom {
    padding: 40px 0 0;
  }
  .orgcom-title {
    font-size: 36px;
    margin-bottom: 32px;
  }
  .orgcom-row--2 {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .orgcom-row--5,
  .orgcom-row--6 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 16px;
  }
  .orgcom-row--5 .orgcom-person,
  .orgcom-row--6 .orgcom-person {
    flex: 0 0 calc(50% - 8px);
  }
  .orgcom-row {
    margin-bottom: 24px;
  }
  .orgcom-person--lg .orgcom-photo {
    width: 120px;
    height: 120px;
  }
  .orgcom-person--md .orgcom-photo {
    width: 100px;
    height: 100px;
  }
  .orgcom-person--sm .orgcom-photo {
    width: 76px;
    height: 76px;
  }
  .orgcom-name {
    font-size: 12px;
  }
  .orgcom-person--sm .orgcom-name {
    font-size: 11px;
  }
  .orgcom-role {
    font-size: 11px;
  }
  .orgcom-person--sm .orgcom-role {
    font-size: 10px;
  }

  /* Expert */
  .expert {
    padding: 10px 0 48px;
  }
  .expert-title {
    font-size: 36px;
    text-align: left;
  }
  .expert-grid {
    grid-template-columns: 1fr;
  }
  .expert-card--center {
    grid-column: 1;
  }

  /* Apply */
  .apply {
    padding: 48px 0;
  }
  .apply-title {
    font-size: 36px;
  }
  .apply-desc {
    font-size: 14px;
  }
  .apply-steps {
    flex-wrap: wrap;
    justify-content: center;
    gap: 16px;
  }
  .apply-arrow {
    display: block;
    transform: rotate(90deg);
  }
  .apply-step {
    width: 100%;
  }
  .apply-btns {
    flex-direction: column;
    align-items: stretch;
  }
  .apply-btn-primary,
  .apply-btn-outline {
    width: 100%;
    text-align: center;
    display: block;
  }

  /* Footer */
  .footer-top {
    grid-template-columns: 1fr;
    gap: 32px;
    text-align: center;
  }
  .footer-logo {
    height: 60px;
    margin: 0 auto 20px;
  }
  .footer-nav {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  .footer-col {
    align-items: center;
  }
  .footer-bottom {
    flex-direction: column;
    gap: 8px;
    text-align: center;
  }
}

/* ===== SCROLL REVEAL ===== */
.reveal {
  opacity: 0;
  transform: translateY(32px);
  transition:
    opacity 0.6s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
  will-change: opacity, transform;
}
.reveal.reveal--left {
  transform: translateX(-32px);
}
.reveal.reveal--right {
  transform: translateX(32px);
}
.reveal.reveal--scale {
  transform: translateY(16px) scale(0.96);
}
.reveal.reveal--fast {
  transition-duration: 0.4s;
}

.reveal.is-visible {
  opacity: 1;
  transform: none;
}

/* stagger для дочерних элементов */
.reveal-stagger > * {
  opacity: 0;
  transform: translateY(24px);
  transition:
    opacity 0.55s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
  will-change: opacity, transform;
}
.reveal-stagger.is-visible > *:nth-child(1) {
  transition-delay: 0.05s;
}
.reveal-stagger.is-visible > *:nth-child(2) {
  transition-delay: 0.12s;
}
.reveal-stagger.is-visible > *:nth-child(3) {
  transition-delay: 0.19s;
}
.reveal-stagger.is-visible > *:nth-child(4) {
  transition-delay: 0.26s;
}
.reveal-stagger.is-visible > *:nth-child(5) {
  transition-delay: 0.33s;
}
.reveal-stagger.is-visible > *:nth-child(6) {
  transition-delay: 0.4s;
}
.reveal-stagger.is-visible > *:nth-child(7) {
  transition-delay: 0.47s;
}
.reveal-stagger.is-visible > *:nth-child(n + 8) {
  transition-delay: 0.54s;
}
.reveal-stagger.is-visible > * {
  opacity: 1;
  transform: none;
}

@media (prefers-reduced-motion: reduce) {
  .hero-cloud,
  .stages-cloud,
  .orgcom-cloud {
    animation: none !important;
  }
  .reveal,
  .reveal-stagger > * {
    transition: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
}

/* End */


/* Start:/local/templates/.default/assets/css/pages.css?177917286232492*/
.inner-page {
  background: #fff;
}

.page-main {
  overflow: hidden;
}

.page-hero {
  position: relative;
  overflow: hidden;
  padding: 52px 0 40px;
  background: linear-gradient(180deg, #e6f4fb 0%, #f2faff 58%, #fff 100%);
}

.city-hero {
  min-height: 560px;
  padding: 0;
  background: #183a55;
}

.city-hero-bg,
.city-hero-scrim {
  position: absolute;
  inset: 0;
}

.city-hero-bg {
  z-index: 0;
}

.city-hero-bg-slide {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  transform: scale(1.06);
  transition:
    opacity 1.2s ease,
    transform 6.8s ease;
}

.city-hero-bg-slide--left {
  object-position: 22% center;
}

.city-hero-bg-slide--right {
  object-position: 78% center;
}

.city-hero-bg-slide.is-active {
  opacity: 1;
  transform: scale(1);
}

.city-hero-scrim {
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(10, 34, 53, 0.64) 0%, rgba(10, 34, 53, 0.34) 46%, rgba(10, 34, 53, 0.08) 100%),
    linear-gradient(180deg, rgba(10, 34, 53, 0.04) 0%, rgba(10, 34, 53, 0.42) 100%);
}

.city-hero .page-hero-grid {
  min-height: 560px;
  grid-template-columns: minmax(0, 760px);
  align-items: end;
  padding-top: 84px;
  padding-bottom: 68px;
  z-index: 3;
}

.city-hero .page-title,
.city-hero .page-lead,
.city-hero .page-breadcrumbs span:last-child {
  color: #fff;
}

.city-hero .page-breadcrumbs {
  color: rgba(255, 255, 255, 0.72);
}

.city-hero .page-breadcrumbs a {
  color: rgba(255, 255, 255, 0.86);
}

.city-hero .page-lead {
  color: rgba(255, 255, 255, 0.9);
}

.page-hero--compact {
  padding: 28px 0 24px;
}

.page-hero--news-list {
  padding: 18px 0 14px;
}

.page-cloud {
  position: absolute;
  pointer-events: none;
  user-select: none;
  animation: cloud-drift linear infinite alternate;
  z-index: 0;
}

.page-cloud--1 {
  width: 260px;
  top: 44px;
  left: -38px;
  opacity: 0.8;
  animation-duration: 18s;
}

.page-cloud--2 {
  width: 320px;
  top: 210px;
  right: -40px;
  opacity: 0.72;
  animation-duration: 24s;
  animation-delay: -7s;
}

.page-cloud--3 {
  width: 220px;
  bottom: 26px;
  left: 42%;
  opacity: 0.62;
  animation-duration: 20s;
  animation-delay: -11s;
}

.page-hero-grid {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
  gap: 48px;
  align-items: center;
  position: relative;
  z-index: 1;
}

.page-hero--compact .page-hero-grid {
  gap: 36px;
}

.page-hero--news-list .page-hero-grid {
  gap: 24px;
}

.page-breadcrumbs {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 24px;
  font-size: 13px;
  color: var(--muted);
}

.page-hero--compact .page-breadcrumbs {
  margin-bottom: 16px;
}

.page-breadcrumbs a {
  color: var(--sky);
  text-decoration: none;
}

.page-breadcrumbs span:last-child {
  color: var(--text);
}

.page-title {
  font-family: "Playfair Display", serif;
  font-size: 58px;
  font-weight: 700;
  line-height: 1.06;
  color: var(--dark);
  margin-bottom: 20px;
}

.page-lead {
  max-width: 690px;
  font-size: 18px;
  line-height: 1.78;
  color: var(--text);
}

.page-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 32px;
}

.page-hero-side {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.page-hero-visual {
  width: 100%;
  display: flex;
  justify-content: flex-end;
}

.page-hero-visual img {
  width: 100%;
  max-width: 480px;
  display: block;
  border-radius: 28px;
}

.page-hero-visual.page img {
  object-fit: contain;
  max-width: 400px;
  max-height: 400px;
}

.page-hero-visual--illustration img {
  width: 400px;
  height: 400px;
  max-width: 100%;
  border-radius: 0;
  object-fit: contain;
  filter: none;
}

.page-hero--compact .page-hero-visual--illustration img {
  width: 400px;
  height: 400px;
}

.page-hero--news-list .page-hero-visual--illustration img {
  width: 400px;
  height: 400px;
}

.page-hero--news-list .page-breadcrumbs {
  margin-bottom: 10px;
}

.page-hero--news-list .page-title {
  margin-bottom: 10px;
  font-size: 46px;
}

.page-hero--news-list .page-lead {
  max-width: 620px;
  font-size: 16px;
  line-height: 1.58;
}

.page-hero--compact .page-hero-visual--cities img {
  width: 400px;
  height: 400px;
  max-width: 100%;
}

.page-hero-visual--about-logo img {
  max-width: 360px;
  max-height: 360px;
  object-fit: contain;
}

.page-section {
  padding: 56px 0;
  background: #fff;
}

.page-section--tint {
  background: var(--sky-light);
}

.page-section-head {
  max-width: 820px;
  margin-bottom: 30px;
}

.page-section-head p {
  font-size: 16px;
  line-height: 1.75;
  color: var(--text);
}

.page-grid-2,
.page-grid-3,
.page-grid-4,
.news-grid,
.city-grid,
.media-grid,
.partners-grid,
.fact-grid,
.nomination-winners-grid,
.gallery-grid {
  display: grid;
  gap: 22px;
}

.page-grid-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.results-showcase {
  margin-top: 34px;
}

.results-winner {
  position: relative;
  min-height: 360px;
  overflow: hidden;
  background: var(--sky-light);
}

.results-winner-image {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 66%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.results-winner-panel {
  position: relative;
  z-index: 2;
  display: flex;
  width: min(58%, 660px);
  min-height: 360px;
  flex-direction: column;
  justify-content: flex-end;
  padding: 42px 118px 42px 44px;
  color: #fff;
  background: var(--pink);
  clip-path: polygon(0 0, calc(100% - 78px) 0, 100% 50%, calc(100% - 78px) 100%, 0 100%);
}

.results-winner-kicker {
  margin-bottom: 12px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.72);
}

.results-winner-body {
  max-width: 560px;
}

.results-winner-body h4 {
  font-family: "Playfair Display", serif;
  font-size: 50px;
  line-height: 0.98;
  color: #fff;
  margin-bottom: 14px;
}

.results-winner-place {
  margin-bottom: 16px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.76);
}

.results-winner-body p:last-child {
  max-width: 460px;
  font-size: 17px;
  line-height: 1.72;
  color: rgba(255, 255, 255, 0.9);
}

.results-winner-link {
  margin-top: 22px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  align-self: flex-start;
  color: #fff;
  font-weight: 800;
  text-decoration: none;
  transition: opacity 0.18s ease;
}

.results-winner-link::after {
  content: "";
  width: 28px;
  height: 10px;
  background: currentColor;
  clip-path: polygon(0 42%, 72% 42%, 72% 0, 100% 50%, 72% 100%, 72% 58%, 0 58%);
}

.results-winner-link:hover {
  opacity: 0.82;
}

.page-grid-3,
.news-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.page-grid-4,
.partners-grid,
.fact-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.page-card,
.city-card,
.news-card,
.media-tile,
.partner-card,
.fact-card,
.nomination-winner-card,
.resource-card {
  background: #f2faff;
  border-radius: 24px;
}

.page-section--tint .page-card,
.page-section--tint .city-card,
.page-section--tint .news-card,
.page-section--tint .media-tile,
.page-section--tint .partner-card,
.page-section--tint .fact-card,
.page-section--tint .nomination-winner-card,
.page-section--tint .resource-card,
.page-section--tint .mission-card,
.page-section--tint .expert-card {
  background: #fff;
}

.page-card {
  padding: 28px;
}

.page-card--sky {
  background: var(--sky-light);
}

.page-card--accent {
  background: #fff4f4;
}

.page-card-title {
  font-size: 22px;
  line-height: 1.35;
  color: var(--dark);
  margin-bottom: 14px;
}

.page-card-text {
  font-size: 15px;
  line-height: 1.72;
  color: var(--text);
}

.page-list {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin-top: 18px;
}

.page-list li {
  position: relative;
  padding-left: 20px;
  font-size: 15px;
  line-height: 1.65;
  color: var(--text);
}

.page-list li::before {
  content: "•";
  position: absolute;
  top: 0;
  left: 0;
  color: var(--pink);
  font-size: 18px;
  line-height: 1.45;
}

.page-link {
  color: var(--sky);
  font-weight: 700;
  text-decoration: none;
}

.page-link:hover {
  color: var(--pink);
}

.status-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 6px 12px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.status-tag--winner {
  background: var(--pink);
  color: #fff;
}

.status-tag--finalist {
  background: rgba(18, 116, 181, 0.1);
  color: var(--sky);
}

.status-tag--special {
  background: rgba(193, 39, 45, 0.12);
  color: var(--pink);
}

.cities--participants {
  padding: 42px 0 58px;
}

.cities--participants .cities-title {
  font-family: "Playfair Display", serif;
  font-size: 26px;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.2;
  text-transform: none;
  color: var(--dark);
}

.city-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.nomination-winners-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.city-card,
.news-card,
.nomination-winner-card {
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.news-card {
  border: 1px solid var(--border);
  background: #fff;
  cursor: pointer;
  transition:
    box-shadow 0.24s ease,
    transform 0.24s ease;
}

.news-card:hover,
.news-card:focus-within {
  box-shadow: 0 18px 42px rgba(18, 116, 181, 0.16);
}

.news-card-link {
  position: absolute;
  inset: 0;
  z-index: 3;
  border-radius: inherit;
}

.news-card-link:focus-visible {
  outline: 3px solid rgba(193, 39, 45, 0.72);
  outline-offset: -5px;
}

.city-card-image,
.news-card-image {
  position: relative;
  overflow: hidden;
  aspect-ratio: 16 / 10;
  background: linear-gradient(135deg, #0f5a8f 0%, #1274b5 55%, #c1272d 100%);
}

.city-card-image img,
.news-card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.news-card-image img {
  transition: transform 0.45s ease;
}

.news-card:hover .news-card-image img,
.news-card:focus-within .news-card-image img {
  transform: scale(1.055);
}

.city-card-image--text {
  display: flex;
  align-items: center;
  justify-content: center;
}

.city-card-mark {
  font-family: "Playfair Display", serif;
  font-size: 44px;
  color: #fff;
}

.city-card-body,
.news-card-body {
  padding: 24px;
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 14px;
}

.city-card-body h4,
.news-card-title {
  font-size: 24px;
  line-height: 1.25;
  color: var(--dark);
}

.city-card-text,
.news-card-text,
.resource-card p,
.partner-card p,
.fact-card p {
  font-size: 15px;
  line-height: 1.72;
  color: var(--text);
}

.city-card-meta {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--muted);
}

.article-meta,
.news-meta {
  font-size: 13px;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0;
  text-transform: none;
  color: var(--muted);
}

.news-meta {
  color: var(--pink);
}

.city-card-foot {
  margin-top: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

.nomination-winner-image {
  position: relative;
  overflow: hidden;
  aspect-ratio: 4 / 3;
  background: linear-gradient(135deg, #0f5a8f 0%, #1274b5 55%, #c1272d 100%);
}

.nomination-winner-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.45s ease;
}

.nomination-winner-card:hover .nomination-winner-image img {
  transform: scale(1.055);
}

.nomination-winner-body {
  padding: 20px;
}

.page-main .nomination-winner-body h4 {
  margin-bottom: 8px;
  font-size: 20px;
  line-height: 1.25;
  color: var(--dark);
}

.nomination-winner-body p {
  font-size: 13px;
  font-weight: 800;
  line-height: 1.35;
  letter-spacing: 0;
  text-transform: none;
  color: var(--pink);
}

.gallery-grid {
  grid-template-columns: 1.4fr 0.9fr 0.9fr;
  grid-auto-rows: 220px;
}

.gallery-card {
  overflow: hidden;
  border-radius: 24px;
  box-shadow: 0 18px 40px rgba(18, 116, 181, 0.1);
}

.gallery-card:is(button),
.gallery-slide,
.gallery-arrow,
.gallery-dot {
  border: 0;
  font: inherit;
}

.gallery-card:is(button),
.gallery-slide {
  display: block;
  width: 100%;
  appearance: none;
  padding: 0;
  cursor: pointer;
  background: #dbeaf5;
  text-align: left;
}

.gallery-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.gallery-card--tall {
  grid-row: span 2;
}

.gallery-grid--city {
  grid-template-columns: minmax(280px, 0.92fr) minmax(0, 1.28fr);
  grid-auto-rows: auto;
  column-gap: clamp(28px, 3vw, 42px);
  row-gap: clamp(22px, 2.5vw, 34px);
  align-items: stretch;
}

.gallery-slider {
  position: relative;
  aspect-ratio: 1 / 1;
  cursor: grab;
  touch-action: pan-y;
  user-select: none;
}

.gallery-slider.is-dragging {
  cursor: grabbing;
}

.gallery-slider-track,
.gallery-slide {
  position: absolute;
  inset: 0;
}

.gallery-slide {
  width: 100%;
  height: 100%;
  opacity: 0;
  pointer-events: none;
  transform: scale(1.025);
  transition:
    opacity 0.55s ease,
    transform 0.55s ease;
}

.gallery-slide.is-active {
  opacity: 1;
  pointer-events: auto;
  transform: scale(1);
}

.gallery-slider img {
  -webkit-user-drag: none;
  user-select: none;
}

.gallery-slide img {
  pointer-events: none;
}

.gallery-arrow {
  position: absolute;
  top: 50%;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  padding: 0;
  border-radius: 999px;
  background: rgba(14, 47, 75, 0.58);
  box-shadow: 0 12px 26px rgba(14, 47, 75, 0.22);
  cursor: pointer;
  transform: translateY(-50%);
  transition:
    background 0.18s ease,
    transform 0.18s ease,
    opacity 0.18s ease;
}

.gallery-arrow:hover {
  background: rgba(14, 47, 75, 0.76);
}

.gallery-arrow--prev {
  left: 16px;
}

.gallery-arrow--next {
  right: 16px;
}

.gallery-arrow--prev img {
  transform: rotate(180deg);
}

.gallery-arrow img {
  width: 18px;
  height: 18px;
  display: block;
}

.gallery-dots {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 16px;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  pointer-events: none;
}

.gallery-dot {
  width: 10px;
  height: 10px;
  padding: 0;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.62);
  box-shadow: 0 2px 8px rgba(14, 47, 75, 0.24);
  cursor: pointer;
  pointer-events: auto;
  transition:
    width 0.22s ease,
    background 0.22s ease;
}

.gallery-dot.is-active {
  width: 28px;
  background: #fff;
}

.gallery-static-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(22px, 2.2vw, 30px);
  margin-left: clamp(8px, 0.9vw, 12px);
}

.gallery-static-grid .gallery-card {
  aspect-ratio: 4 / 3;
}

.gallery-card:is(button):hover img,
.gallery-slide:hover img {
  transform: scale(1.045);
}

.gallery-card:is(button):focus-visible,
.gallery-slide:focus-visible,
.gallery-arrow:focus-visible,
.gallery-dot:focus-visible {
  outline: 3px solid rgba(193, 39, 45, 0.72);
  outline-offset: 4px;
}

.gallery-card:is(button) img,
.gallery-slide img {
  transition: transform 0.35s ease;
}

.fact-card,
.resource-card,
.partner-card,
.media-tile {
  padding: 24px;
}

.fact-card strong {
  display: block;
  font-family: "Nunito", sans-serif;
  font-size: 34px;
  line-height: 1;
  color: var(--sky);
  margin-bottom: 12px;
}

.fact-card-title {
  display: block;
  color: var(--sky);
  margin-bottom: 12px;
}

.resource-card h4,
.partner-card h4,
.media-tile h4 {
  font-size: 20px;
  line-height: 1.35;
  color: var(--dark);
  margin-bottom: 12px;
}

.resource-card-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 18px;
}

.resource-card .docs-download {
  margin-top: 0;
}

.news-grid {
  align-items: stretch;
}

.page-pager {
  --pager-border: rgba(18, 116, 181, 0.26);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-top: 34px;
  flex-wrap: wrap;
}

.page-pager > a,
.page-pager > span {
  min-width: 44px;
  height: 44px;
  padding: 0 12px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--pager-border);
  text-decoration: none;
  font-weight: 700;
  color: var(--sky);
  background: #fff;
}

.page-pager > a {
  transition:
    background 0.18s ease,
    border-color 0.18s ease,
    color 0.18s ease,
    box-shadow 0.18s ease,
    transform 0.18s ease;
}

.page-pager > a:hover,
.page-pager > a:focus-visible {
  background: var(--sky);
  border-color: var(--pager-border);
  color: #fff;
  box-shadow: 0 10px 22px rgba(18, 116, 181, 0.18);
  transform: translateY(-1px);
}

.page-pager > a:focus-visible {
  outline: 3px solid rgba(193, 39, 45, 0.5);
  outline-offset: 3px;
}

.page-pager > .is-active {
  background: var(--pink);
  border-color: var(--pager-border);
  color: #fff;
}

.page-pager > .is-disabled {
  color: rgba(113, 128, 150, 0.62);
  background: rgba(245, 247, 250, 0.74);
  pointer-events: none;
}

.page-pager > .page-pager-gap {
  min-width: 28px;
  padding: 0 4px;
  border-color: transparent;
  background: transparent;
  color: var(--muted);
  pointer-events: none;
}

.page-pager-examples {
  display: grid;
  gap: 16px;
  max-width: 760px;
  margin: 28px auto 0;
  padding-top: 24px;
  border-top: 1px solid var(--border);
}

.page-pager-example {
  display: grid;
  gap: 10px;
  justify-items: center;
}

.page-pager-example p {
  font-size: 13px;
  font-weight: 800;
  line-height: 1.4;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--muted);
}

.page-pager--preview {
  margin-top: 0;
}

.article-shell {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) 320px;
  gap: 24px;
  align-items: start;
}

.article-shell--centered {
  grid-template-columns: minmax(0, 900px);
  justify-content: center;
  gap: 28px;
}

.article-hero-date {
  display: inline-block;
  margin-bottom: 18px;
  font-size: 14px;
  line-height: 1.45;
  letter-spacing: 0;
  text-transform: none;
  color: var(--pink);
}

.article-prose {
  min-width: 0;
  padding: 32px;
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 28px;
  box-shadow: 0 18px 40px rgba(18, 116, 181, 0.08);
}

.article-prose p,
.article-prose li {
  font-size: 16px;
  line-height: 1.85;
  color: var(--text);
}

.article-prose p + p,
.article-prose ul + p,
.article-prose ol + p,
.article-prose figure + p,
.article-prose .article-video + p,
.article-prose .article-table-wrap + p,
.article-prose p + h2,
.article-prose blockquote + p {
  margin-top: 16px;
}

.page-main .article-prose h2 {
  font-family: "Playfair Display", serif;
  font-size: 30px;
  line-height: 1.2;
  color: var(--dark);
  margin-top: 28px;
  margin-bottom: 14px;
}

.article-prose ul,
.article-prose ol {
  padding-left: 22px;
  margin: 16px 0 0;
}

.article-prose li + li {
  margin-top: 8px;
}

.article-prose blockquote {
  margin: 22px 0;
  padding: 8px 0 8px 24px;
  border-left: 4px solid var(--pink);
  font-size: 18px;
  line-height: 1.7;
  color: var(--dark);
}

.article-figure {
  margin: 24px 0;
}

.article-figure img {
  width: 100%;
  display: block;
  border-radius: 22px;
  object-fit: cover;
}

.article-figure figcaption {
  margin-top: 10px;
  font-size: 14px;
  line-height: 1.6;
  color: var(--muted);
}

.article-video {
  margin: 24px 0;
}

.article-video-player {
  width: 100%;
  aspect-ratio: 16 / 9;
  display: block;
  border: 0;
  border-radius: 22px;
  background: #102f48;
  object-fit: cover;
}

.article-table-wrap {
  min-width: 0;
  margin: 18px 0 0;
  overflow-x: auto;
  border: 1px solid var(--border);
  border-radius: 18px;
}

.article-table-wrap table {
  width: 100%;
  min-width: 640px;
  border-collapse: collapse;
  background: #fff;
}

.article-table-wrap th,
.article-table-wrap td {
  padding: 14px 16px;
  border-bottom: 1px solid var(--border);
  font-size: 15px;
  line-height: 1.55;
  text-align: left;
  color: var(--text);
}

.article-table-wrap th {
  color: var(--dark);
  background: var(--sky-light);
  font-weight: 700;
}

.article-table-wrap tr:last-child td {
  border-bottom: 0;
}

.article-media {
  min-width: 0;
  padding: 32px;
  border-radius: 28px;
  background: var(--sky-light);
}

.article-section-head {
  margin-bottom: 24px;
}

.article-media-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 22px;
  align-items: stretch;
}

.article-media-slider {
  min-width: 0;
  aspect-ratio: 16 / 9;
  min-height: 320px;
}

.article-slide-caption {
  position: absolute;
  right: 18px;
  bottom: 60px;
  left: 18px;
  z-index: 2;
  padding: 12px 14px;
  border-radius: 16px;
  background: rgba(14, 47, 75, 0.7);
  color: #fff;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.35;
  pointer-events: none;
}

.article-share {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  padding: 24px 0 4px;
}

.article-share-title {
  width: 100%;
  margin-bottom: 2px;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--muted);
}

.article-share-link,
.article-share-copy {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 11px 18px;
  border: 1px solid rgba(18, 116, 181, 0.18);
  border-radius: 999px;
  background: #fff;
  color: var(--sky);
  font: inherit;
  font-size: 14px;
  font-weight: 800;
  text-decoration: none;
  cursor: pointer;
  transition:
    background 0.18s ease,
    border-color 0.18s ease,
    color 0.18s ease,
    box-shadow 0.18s ease,
    transform 0.18s ease;
}

.article-share-link:hover,
.article-share-copy:hover,
.article-share-link:focus-visible,
.article-share-copy:focus-visible {
  background: var(--sky);
  border-color: var(--sky);
  color: #fff;
  box-shadow: 0 10px 22px rgba(18, 116, 181, 0.16);
  transform: translateY(-1px);
}

.article-share-link:focus-visible,
.article-share-copy:focus-visible {
  outline: 3px solid rgba(193, 39, 45, 0.5);
  outline-offset: 3px;
}

.article-share-copy.is-copied {
  background: var(--pink);
  border-color: var(--pink);
  color: #fff;
}

.article-nav {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.article-nav-link {
  display: flex;
  min-height: 120px;
  flex-direction: column;
  justify-content: center;
  gap: 8px;
  padding: 22px 24px;
  border: 1px solid var(--border);
  border-radius: 24px;
  background: #fff;
  color: var(--text);
  text-decoration: none;
  box-shadow: 0 16px 34px rgba(18, 116, 181, 0.08);
  transition:
    border-color 0.18s ease,
    box-shadow 0.18s ease,
    transform 0.18s ease;
}

.article-nav-link:hover,
.article-nav-link:focus-visible {
  border-color: rgba(18, 116, 181, 0.32);
  box-shadow: 0 18px 42px rgba(18, 116, 181, 0.14);
  transform: translateY(-1px);
}

.article-nav-link:focus-visible {
  outline: 3px solid rgba(193, 39, 45, 0.5);
  outline-offset: 3px;
}

.article-nav-link span {
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--muted);
}

.article-nav-link strong {
  font-size: 18px;
  line-height: 1.35;
  color: var(--dark);
}

.article-nav-link--next {
  text-align: right;
  align-items: flex-end;
}

.media-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.media-tile img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  display: block;
  border-radius: 18px;
  margin-bottom: 16px;
}

.partner-card {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.partner-mark {
  width: 64px;
  height: 64px;
  border-radius: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: "Playfair Display", serif;
  font-size: 24px;
  color: #fff;
  background: linear-gradient(140deg, #1274b5 0%, #c1272d 100%);
}

.cta-banner {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  overflow: visible;
  padding: 34px;
  border-radius: 28px;
  background: #247fbd;
  color: #fff;
  box-shadow: 0 24px 48px rgba(18, 116, 181, 0.18);
}

.cta-banner-content {
  position: relative;
  z-index: 1;
  max-width: 720px;
}

.cta-banner-icon {
  position: relative;
  z-index: 0;
  flex: 0 0 auto;
  width: clamp(250px, 30vw, 380px);
  max-width: 36%;
  height: auto;
  margin: -74px -22px -82px 0;
  object-fit: contain;
  filter: drop-shadow(0 18px 28px rgba(15, 90, 143, 0.22));
  animation: cta-banner-float 4.8s ease-in-out infinite;
  will-change: transform;
}

.cta-banner-icon--static {
  animation: none;
  filter: none;
  transform: none;
  will-change: auto;
}

.cta-banner-icon--handshake {
  width: clamp(340px, 39vw, 500px);
  max-width: 44%;
  margin: -132px -34px -104px 0;
  animation-duration: 5.4s;
}

@keyframes cta-banner-float {
  0%,
  100% {
    transform: translate3d(0, 0, 0);
  }

  50% {
    transform: translate3d(0, -16px, 0);
  }
}

.page-main .cta-banner h2 {
  font-family: "Playfair Display", serif;
  font-size: 38px;
  line-height: 1.15;
  margin-bottom: 14px;
}

.cta-banner p {
  max-width: 700px;
  font-size: 16px;
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.9);
}

.cta-banner .page-actions {
  margin-top: 24px;
}

.cta-banner .btn-outline {
  border-color: rgba(255, 255, 255, 0.72);
  color: #fff;
}

.cta-banner .btn-outline:hover {
  background: #fff;
  color: var(--sky);
}

.error-shell {
  min-height: calc(100vh - 72px - 224px);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 54px 24px 84px;
  background: linear-gradient(180deg, #e6f4fb 0%, #f2faff 58%, #fff 100%);
}

.error-card {
  width: 100%;
  max-width: 760px;
  padding: 48px;
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 32px;
  text-align: center;
  box-shadow: 0 24px 48px rgba(18, 116, 181, 0.12);
}

.error-code {
  font-family: "Cormorant Garamond", serif;
  font-size: 132px;
  line-height: 0.9;
  margin-bottom: 16px;
  background: linear-gradient(140deg, #1274b5 0%, #c1272d 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.error-card h1 {
  font-family: "Playfair Display", serif;
  font-size: 42px;
  line-height: 1.15;
  color: var(--dark);
  margin-bottom: 16px;
}

.error-card p {
  max-width: 560px;
  margin: 0 auto;
  font-size: 17px;
  line-height: 1.8;
  color: var(--text);
}

.error-card .page-actions {
  justify-content: center;
}

@media (max-width: 1080px) {
  .page-hero-grid {
    grid-template-columns: 1fr;
  }

  .page-hero--compact .page-hero-grid {
    gap: 20px;
  }

  .page-hero-side,
  .page-hero-visual {
    justify-content: center;
  }

  .page-hero--compact .page-hero-visual--illustration img {
    max-width: 330px;
  }

  .page-title {
    font-size: 48px;
  }

  .page-grid-4,
  .partners-grid,
  .fact-grid,
  .nomination-winners-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .city-grid,
  .page-grid-3,
  .news-grid,
  .media-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .article-shell {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 768px) {
  .page-hero {
    padding-top: 36px;
  }

  .city-hero {
    min-height: 520px;
    padding: 0;
  }

  .city-hero .page-hero-grid {
    min-height: 520px;
    padding-top: 70px;
    padding-bottom: 62px;
  }

  .page-hero--compact {
    padding: 24px 0 20px;
  }

  .page-hero--news-list {
    padding: 18px 0 16px;
  }

  .page-hero--compact .page-hero-visual--illustration img {
    max-width: 290px;
  }

  .page-hero--news-list .page-hero-side {
    display: none;
  }

  .page-hero--news-list .page-title {
    font-size: 36px;
  }

  .page-title {
    font-size: 40px;
  }

  .page-lead {
    font-size: 16px;
  }

  .page-grid-2,
  .page-grid-3,
  .page-grid-4,
  .city-grid,
  .news-grid,
  .partners-grid,
  .fact-grid,
  .nomination-winners-grid,
  .media-grid {
    grid-template-columns: 1fr;
  }

  .results-winner,
  .results-winner-panel {
    min-height: 360px;
  }

  .results-winner-panel {
    width: 64%;
    padding: 30px 86px 30px 30px;
  }

  .results-winner-body h4 {
    font-size: 40px;
  }

  .gallery-grid {
    grid-template-columns: 1fr;
    grid-auto-rows: 220px;
  }

  .gallery-grid--city {
    grid-auto-rows: auto;
    row-gap: 18px;
  }

  .gallery-static-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-left: 0;
  }

  .gallery-static-grid .gallery-card {
    aspect-ratio: 1 / 1;
  }

  .gallery-card--tall {
    grid-row: auto;
  }

  .page-card,
  .article-prose,
  .error-card {
    padding: 24px;
  }

  .article-media {
    padding: 24px;
  }

  .article-media-layout,
  .article-nav {
    grid-template-columns: 1fr;
  }

  .article-media-slider {
    min-height: 260px;
  }

  .article-nav-link--next {
    text-align: left;
    align-items: flex-start;
  }

  .cta-banner {
    padding: 28px;
    gap: 20px;
  }

  .page-main .cta-banner h2 {
    font-size: 32px;
  }

  .cta-banner-icon {
    width: 250px;
    max-width: 34%;
    margin: -62px -22px -70px 0;
  }

  .cta-banner-icon--handshake {
    width: 340px;
    max-width: 42%;
    margin: -114px -30px -86px 0;
  }
}

@media (max-width: 560px) {
  .page-hero-grid {
    padding-left: 16px;
    padding-right: 16px;
  }

  .city-hero {
    min-height: 500px;
  }

  .city-hero .page-hero-grid {
    min-height: 500px;
    padding-top: 58px;
    padding-bottom: 54px;
  }

  .city-hero-scrim {
    background:
      linear-gradient(180deg, rgba(10, 34, 53, 0.48) 0%, rgba(10, 34, 53, 0.58) 100%),
      linear-gradient(90deg, rgba(10, 34, 53, 0.52) 0%, rgba(10, 34, 53, 0.18) 100%);
  }

  .page-hero--compact .page-hero-grid {
    gap: 16px;
  }

  .page-hero--compact .page-hero-visual--illustration img {
    max-width: 240px;
  }

  .page-section {
    padding: 44px 0;
  }

  .gallery-grid--city,
  .gallery-static-grid {
    gap: 14px;
  }

  .page-title {
    font-size: 34px;
  }

  .page-hero--news-list .page-title {
    font-size: 32px;
  }

  .article-prose,
  .article-media {
    border-radius: 22px;
  }

  .article-media {
    padding: 20px;
  }

  .article-media-slider {
    min-height: 220px;
  }

  .article-slide-caption {
    right: 12px;
    bottom: 54px;
    left: 12px;
    padding: 10px 12px;
    font-size: 14px;
  }

  .article-share-link,
  .article-share-copy {
    width: 100%;
  }

  .results-winner-body h4 {
    font-size: 34px;
  }

  .results-winner {
    display: flex;
    flex-direction: column;
    min-height: 0;
    background: var(--pink);
  }

  .results-winner-image {
    position: relative;
    width: 100%;
    height: 230px;
    order: 1;
  }

  .results-winner-panel {
    width: 100%;
    min-height: 0;
    order: 2;
    padding: 28px;
    clip-path: none;
  }

  .error-code {
    font-size: 96px;
  }

  .error-card h1 {
    font-size: 32px;
  }

  .cta-banner {
    align-items: flex-start;
    padding-bottom: 188px;
  }

  .cta-banner-icon {
    position: absolute;
    right: -14px;
    bottom: -38px;
    width: 230px;
    max-width: none;
    margin: 0;
  }

  .cta-banner-icon--handshake {
    right: -48px;
    bottom: -34px;
    width: 330px;
  }
}

.page-main h2 {
  font-family: "Playfair Display", serif;
  font-size: 42px;
  font-weight: 700;
  line-height: 1.2;
}

.page-main h3 {
  font-family: "Raleway", sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.35;
}

.page-main h4 {
  font-family: "Raleway", sans-serif;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.35;
}

.page-main .expert-card-title {
  font-size: 18px;
  line-height: 1.35;
}

.page-main .expert-card-text {
  font-size: 14px;
  line-height: 1.65;
}

@media (max-width: 600px) {
  .page-main .expert-title {
    font-size: 36px;
    text-align: left;
  }
}

.results-winner-body h4 {
  font-family: "Playfair Display", serif;
  font-size: 50px;
  line-height: 0.98;
  color: #fff;
  margin-bottom: 14px;
}

@media (max-width: 768px) {
  .results-winner-body h4 {
    font-size: 40px;
  }
}

@media (max-width: 560px) {
  .results-winner-body h4 {
    font-size: 34px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .cta-banner-icon {
    animation: none;
    transform: none;
  }
}

/* End */
/* /local/templates/.default/assets/css/font-awesome.min.css?177917286231000 */
/* /local/templates/.default/assets/css/v4.css?177917286246225 */
/* /local/templates/.default/assets/css/pages.css?177917286232492 */
