diff --git a/core/simple_index_view.py b/core/simple_index_view.py index bb0cab57..df0bdcb2 100644 --- a/core/simple_index_view.py +++ b/core/simple_index_view.py @@ -4,12 +4,23 @@ from django.shortcuts import HttpResponse #from forms import CallbackForm from service.order_forms import CallBackForm from meta.views import MetadataMixin +from functions.cache_mixin import JitterCacheMixin +from settings.models import LandingComment class AdvertisingView(MetadataMixin, TemplateView): template_name = 'simple_pages/advertising.html' +class AdvertisingViewLanding(JitterCacheMixin, AdvertisingView): + template_name = 'simple_pages/advertising_landing.html' + + def get_context_data(self, **kwargs): + context = super(AdvertisingViewLanding, self).get_context_data(**kwargs) + context['comments'] = LandingComment.objects.language().all() + return context + + class AboutView(MetadataMixin, TemplateView): template_name = 'simple_pages/about.html' @@ -24,4 +35,4 @@ def callback(request): else: response['errors'] = form.errors - return HttpResponse(json.dumps(response), content_type='application/json') \ No newline at end of file + return HttpResponse(json.dumps(response), content_type='application/json') diff --git a/expobanner/admin.py b/expobanner/admin.py index 675e947c..3280d64a 100644 --- a/expobanner/admin.py +++ b/expobanner/admin.py @@ -1,16 +1,17 @@ # -*- coding: utf-8 -*- -from django.views.generic import TemplateView, CreateView, ListView, UpdateView, DetailView +from django.views.generic import TemplateView, CreateView, ListView, UpdateView, DetailView, DeleteView from django.conf import settings from django.http import HttpResponseRedirect from django.shortcuts import get_object_or_404 from django.db.models import Sum +from django.core.urlresolvers import reverse_lazy from expobanner.models import URL, BannerGroup, Banner, Paid, MainPage, Top from expobanner.forms import UrlCreateForm, BannerCreateGroupForm, BannerCreateForm, BannerGroupUpdateForm,\ PaidCreateForm, PaidUpdateForm, TopCreateForm, BannerLinkCreateForm, MainCreateForm, MainConfCreateForm, MainUpdateForm, TopUpdateForm from exposition.models import Exposition from conference.models import Conference -from settings.models import Html -from settings.forms import HtmlForm +from settings.models import Html, LandingComment +from settings.forms import HtmlForm, CommentForm class BannersControl(TemplateView): template_name = 'admin/expobanner/banners_control.html' @@ -138,6 +139,41 @@ class BannerStat(DetailView): return context +class CommentMixin(object): + form_class = CommentForm + model = LandingComment + template_name = 'admin/expobanner/comment_create.html' + success_url = reverse_lazy('expobaner-comment_list') + + def get_context_data(self, *args, **kwargs): + ctx = super(CommentMixin, self).get_context_data(*args, **kwargs) + ctx['languages'] = settings.LANGUAGES + return ctx + + def get_success_url(self): + return self.success_url + + +class CommentList(CommentMixin, ListView): + template_name = 'admin/expobanner/comment_list.html' + + def get_queryset(self): + return self.model.objects.language() + + +class CommentCreate(CommentMixin, CreateView): + pass + + +class CommentUpdate(CommentMixin, UpdateView): + pass + + +class CommentDelete(CommentMixin, DeleteView): + def get(self, request, *args, **kwargs): + return self.post(request, *args, **kwargs) + + class PaidList(ListView): model = Exposition template_name = 'admin/expobanner/paid_list.html' @@ -268,9 +304,6 @@ class MainConfList(ListView): return context -from django.core.urlresolvers import reverse_lazy - - class MainConfCreate(CreateView): form_class = MainConfCreateForm template_name = 'admin/expobanner/paid_create.html' diff --git a/expobanner/admin_urls.py b/expobanner/admin_urls.py index d67167eb..8aebf1a3 100644 --- a/expobanner/admin_urls.py +++ b/expobanner/admin_urls.py @@ -43,4 +43,9 @@ urlpatterns = patterns('expobanner.admin', url(r'^main/conf/turn/(?P\d+)/(?P.*)/$', main_turn, name='expobanner-conf-main-turn'), #url(r'^main/conf/(?P\d+)/stat/$', MainStat.as_view(), name='expobanner_stat_main'), url(r'^main/block/(?P\d+)/$', MainPageBlock.as_view()), -) \ No newline at end of file + #comments + url(r'^comments/new/$', CommentCreate.as_view(), name='expobaner-comment_add'), + url(r'^comments/(?P\d+)/delete/$', CommentDelete.as_view(), name='expobaner-comment_delete'), + url(r'^comments/(?P\d+)/$', CommentUpdate.as_view(), name='expobaner-comment_edit'), + url(r'^comments/$', CommentList.as_view(), name='expobaner-comment_list'), +) diff --git a/functions/forms.py b/functions/forms.py index d5abbe91..1a2daad9 100644 --- a/functions/forms.py +++ b/functions/forms.py @@ -157,4 +157,14 @@ class ExpoTranslatableModelForm(forms.ModelForm): translation = inst.translations.get(language_code=code) for field in self._all_tr_field_names: init_tr_data[field+"_%s" % code] = getattr(translation, field) - return init_tr_data \ No newline at end of file + return init_tr_data + + +class ExpoTranslatableModelForm_(ExpoTranslatableModelForm): + @property + def data_by_lang(self): + res = {} + for lang in [code for code, _ in settings.LANGUAGES]: + res[lang] = {key[:-3]: self.cleaned_data[key] for key in self.cleaned_data + if key.endswith("_%s" % lang) and self.cleaned_data[key]} + return res diff --git a/proj/urls.py b/proj/urls.py index 5700fa72..7e9a6380 100644 --- a/proj/urls.py +++ b/proj/urls.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- from django.conf import settings from django.conf.urls import patterns, include, url -from core.simple_index_view import AdvertisingView, AboutView +from core.simple_index_view import AdvertisingView, AboutView, AdvertisingViewLanding from views import MainPageView from django.contrib.sitemaps import views import debug_toolbar @@ -69,7 +69,8 @@ urlpatterns += solid_i18n_patterns('', url(r'^gallery/', include('photologue.client_urls')), url(r'^', include('file.urls')), url(r'^', include('django_messages.expomap_urls')), - url(r'^advertising/$', AdvertisingView.as_view(), {'meta_id':58}, name='expomap_advertising'), + # url(r'^advertising/$', AdvertisingView.as_view(), {'meta_id':58}, name='expomap_advertising'), + url(r'^advertising/$', AdvertisingViewLanding.as_view(), {'meta_id':94}, name='expomap_advertising_landing'), url(r'^about/$', AboutView.as_view(), {'meta_id':56}, name='expomap_about'), url(r'^partners/$', AboutView.as_view(), {'meta_id':57}, name='expomap_partners'), url(r'^contacts/$', AboutView.as_view(), {'meta_id':59}, name='expomap_contacts'), diff --git a/service/urls.py b/service/urls.py index 5b3055a5..6476e1c6 100644 --- a/service/urls.py +++ b/service/urls.py @@ -6,7 +6,7 @@ from views import ServiceView, CallBackListView, VisitListView, TranslationListV urlpatterns = patterns('', url(r'service/thanks/$', Thanks.as_view(), name = "service_thanks"), url(r'service/com_rek/(?P.*)/(?P.*)/$', 'service.views.advertise'), - url(r'service/com_rek/$', 'service.views.advertise'), + url(r'service/com_rek/$', 'service.views.advertise', name='advertise_post'), url(r'service/(?P.*)/$', ServiceView.as_view()), ) diff --git a/settings/forms.py b/settings/forms.py index d30f1b69..3646f94e 100644 --- a/settings/forms.py +++ b/settings/forms.py @@ -2,9 +2,9 @@ from django import forms from ckeditor.widgets import CKEditorWidget from theme.models import Theme -from .models import Html +from .models import Html, LandingComment from article.models import Article -from functions.forms import ExpoTranslatableModelForm +from functions.forms import ExpoTranslatableModelForm, ExpoTranslatableModelForm_ class HtmlForm(ExpoTranslatableModelForm): @@ -15,6 +15,15 @@ class HtmlForm(ExpoTranslatableModelForm): } +class CommentForm(ExpoTranslatableModelForm_): + class Meta: + model = LandingComment + + @property + def verbose(self): + return u'Редактировать комментарий' if self.instance.pk else u'Создать комментарий' + + class MainPageThemes(forms.Form): exposition_themes = forms.ModelMultipleChoiceField(queryset=Theme.objects.filter(types=Theme.types.exposition), required=False) @@ -62,4 +71,4 @@ class MainPageArticle(forms.Form): articles = data['article'] Article.objects.blogs().exclude(id__in=[item.id for item in articles]).update(main_page=0) - articles.update(main_page=1) \ No newline at end of file + articles.update(main_page=1) diff --git a/settings/models.py b/settings/models.py index 8bb734bf..f7b4911c 100644 --- a/settings/models.py +++ b/settings/models.py @@ -1,5 +1,7 @@ # -*- coding: utf-8 -*- from django.db import models +from django.utils.translation import ugettext_lazy as _, get_language +from sorl.thumbnail import ImageField from hvad.models import TranslatableModel, TranslatedFields from functions.custom_fields import EnumField @@ -11,4 +13,50 @@ class Html(TranslatableModel): ) def __unicode__(self): - return self.name \ No newline at end of file + return self.name + + +class LandingComment(TranslatableModel): + translations = TranslatedFields( + text=models.TextField(verbose_name=_(u'Комментарий')), + name=models.CharField(verbose_name=_(u'Имя Фамилия'), max_length=255), + position=models.CharField(verbose_name=_(u'Должность'), max_length=255), + ) + logo = models.ImageField(verbose_name=_(u'Лого'), upload_to='landing/comments/', max_length=255) + + def __unicode__(self): + return self.lazy_translation_getter('name', self.pk) + + def __init__(self, *args, **kwargs): + super(LandingComment, self).__init__(*args, **kwargs) + self.cache_fields = ['name', 'position', 'text'] + self.is_new = True + + def save(self, *args, **kwargs): + return super(LandingComment, self).save(*args, **kwargs) + + self.initial_language = get_language()[:2] or 'ru' + + new_values = {field: getattr(self, field) for field in self.cache_fields} + langs = [code for code, _ in settings.LANGUAGES] + if self.is_new: + for lang in langs: + if lang not in self.get_available_languages(): + self.translate(lang) + for key, value in new_values.items(): + setattr(self, key, value) + self.save_translations(self) + else: + translations = {obj.language_code: obj for obj in list(self.translations.all())} + for lang in langs: + if lang is not self.initial_language: + tr = translations[lang] + for key, value in new_values.items(): + #if u'%s' % getattr(tr, key) is u'%s' % self.var_cache[key]: + setattr(tr, key, value) + tr.save() + + self.lazy_translation_getter(self.initial_language) + self.var_cache = {var: copy.copy(getattr(self, var)) for var in self.cache_fields} + self.is_new = False + return self diff --git a/static/advertising_landing/css/reset.css b/static/advertising_landing/css/reset.css new file mode 100644 index 00000000..410f31ac --- /dev/null +++ b/static/advertising_landing/css/reset.css @@ -0,0 +1,48 @@ +/* http://meyerweb.com/eric/tools/css/reset/ + v2.0 | 20110126 + License: none (public domain) +*/ + +html, body, div, span, applet, object, iframe, +h1, h2, h3, h4, h5, h6, p, blockquote, pre, +a, abbr, acronym, address, big, cite, code, +del, dfn, em, img, ins, kbd, q, s, samp, +small, strike, strong, tt, var, +b, u, i, center, +dl, dt, dd, ol, ul, li, +fieldset, form, label, legend, +table, caption, tbody, tfoot, thead, tr, th, td, +article, aside, canvas, details, embed, +figure, figcaption, footer, header, hgroup, +menu, nav, output, ruby, section, summary, +time, mark, audio, video { + margin: 0; + padding: 0; + border: 0; + font-size: 100%; + font: inherit; + vertical-align: baseline; +} +/* HTML5 display-role reset for older browsers */ +article, aside, details, figcaption, figure, +footer, header, hgroup, menu, nav, section { + display: block; +} +body { + line-height: 1; +} +ol, ul { + list-style: none; +} +blockquote, q { + quotes: none; +} +blockquote:before, blockquote:after, +q:before, q:after { + content: ''; + content: none; +} +table { + border-collapse: collapse; + border-spacing: 0; +} \ No newline at end of file diff --git a/static/advertising_landing/css/style.css b/static/advertising_landing/css/style.css new file mode 100644 index 00000000..26507ec8 --- /dev/null +++ b/static/advertising_landing/css/style.css @@ -0,0 +1,875 @@ +@font-face { + font-family: 'pfdindisplaypro'; + src: url('../fonts/pfdindisplayproblackit.eot'); + src: url('../fonts/pfdindisplayproblackit.eot') format('embedded-opentype'), + url('../fonts/pfdindisplayproblackit.woff2') format('woff2'), + url('../fonts/pfdindisplayproblackit.woff') format('woff'), + url('../fonts/pfdindisplayproblackit.ttf') format('truetype'), + url('../fonts/pfdindisplayproblackit.svg#pfdindisplayproblackit') format('svg'); + font-weight: 900; + font-style: italic; +} + +@font-face { + font-family: 'pfdindisplaypro'; + src: url('../fonts/pfdindisplayprobold.eot'); + src: url('../fonts/pfdindisplayprobold.eot') format('embedded-opentype'), + url('../fonts/pfdindisplayprobold.woff2') format('woff2'), + url('../fonts/pfdindisplayprobold.woff') format('woff'), + url('../fonts/pfdindisplayprobold.ttf') format('truetype'), + url('../fonts/pfdindisplayprobold.svg#pfdindisplayprobold') format('svg'); + font-weight: bold; + font-style: normal; +} + +@font-face { + font-family: 'pfdindisplaypro'; + src: url('../fonts/pfdindisplayprolight.eot'); + src: url('../fonts/pfdindisplayprolight.eot') format('embedded-opentype'), + url('../fonts/pfdindisplayprolight.woff2') format('woff2'), + url('../fonts/pfdindisplayprolight.woff') format('woff'), + url('../fonts/pfdindisplayprolight.ttf') format('truetype'), + url('../fonts/pfdindisplayprolight.svg#pfdindisplayprolight') format('svg'); + font-weight: 300; + font-style: normal; +} + +@font-face { + font-family: 'pfdindisplaypro'; + src: url('../fonts/pfdindisplayproreg.eot'); + src: url('../fonts/pfdindisplayproreg.eot') format('embedded-opentype'), + url('../fonts/pfdindisplayproreg.woff2') format('woff2'), + url('../fonts/pfdindisplayproreg.woff') format('woff'), + url('../fonts/pfdindisplayproreg.ttf') format('truetype'), + url('../fonts/pfdindisplayproreg.svg#pfdindisplayproreg') format('svg'); + font-weight: normal; + font-style: normal; +} + +/*common*/ +body, input, button { + font-family: 'pfdindisplaypro', sans-serif; + font-weight: 300; +} +body { + color: #0b0301; +} +input, button { + border: none; + outline: none; +} +input, .box { + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -o-box-sizing: border-box; +} +.content { + width: 1140px; + padding: 0 15px; + margin: 0 auto; +} +.bg-full-width { + min-width: 1170px; +} +.spacer { + text-align: justify; +} +.spacer > * { + display: inline-block; +} +.spacer:after { + content: ''; + display: inline-block; + width: 100%; +} +.clear-fix:after { + content: ''; + display: block; + clear: both; +} +.pos-center { + position: absolute; + top: 0; bottom: 0; left: 0; right: 0; + margin: auto; +} + +.orange-btn { + width: 266px; + height: 46px; + line-height: 46px; + background: #ff6600; + font-size: 19px; + text-transform: uppercase; + color: #fcfcfb; + border-radius: 2px; + cursor: pointer; +} +.orange-btn:hover { + box-shadow: 0 8px 18px rgba(255, 132, 0, 0.48); + -moz-box-shadow: 0 8px 18px rgba(255, 132, 0, 0.48); + -webkit-box-shadow: 0 8px 18px rgba(255, 132, 0, 0.48); + -o-box-shadow: 0 8px 18px rgba(255, 132, 0, 0.48); +} +.block-title { + font-size: 40px; + font-weight: normal; + text-transform: uppercase; + text-align: center; +} +.block-title_white { + color: #ffffff; +} +/*end common*/ + +/*icons*/ +.icon { + display: inline-block; + background: url('../images/icons.png') no-repeat; +} +.icon-stat-1 { + width: 46px; + height: 48px; + background-position: 0 -7px; +} +.icon-stat-2 { + width: 45px; + height: 41px; + background-position: 0 -55px; +} +.icon-stat-3 { + width: 33px; + height: 33px; + background-position: 0 -96px; +} +.icon-stat-4 { + width: 45px; + height: 40px; + background-position: 0 -129px; +} +.icon-step-1 { + width: 36px; + height: 36px; + background-position: 0 -169px; +} +.icon-step-2 { + width: 49px; + height: 46px; + background-position: 0 -205px; +} +.icon-step-3 { + width: 33px; + height: 43px; + background-position: 0 -251px; +} +.icon-step-4 { + width: 45px; + height: 38px; + background-position: 0 -294px; +} +.icon-step-5 { + width: 38px; + height: 38px; + background-position: 0 -332px; +} +.icon-step-6 { + width: 41px; + height: 41px; + background-position: 0 -370px; +} +.icon-step-7 { + width: 46px; + height: 36px; + background-position: 0 -411px; +} +/*end icons*/ + +/*header*/ +.header { + background: url('../images/bg/header-bg.jpg') no-repeat center top; + min-height: 678px; + color: #ffffff; +} +.logo { + background: url('../images/logo.png') no-repeat; + width: 204px; + height: 60px; + display: inline-block; +} +.phone { + float: right; + font-size: 30px; + padding-top: 13px; +} +.header-top { + padding-top: 24px; +} +.main-title { + margin-top: 93px; + font-size: 57px; + font-weight: bold; + line-height: 115%; + text-align: center; +} +.main-desc { + width: 980px; + margin: 25px auto 0; + text-align: center; + line-height: 140%; + font-size: 25px; +} +.header__btn { + display: block; + margin: 50px auto 0; +} +.header__btn:hover, .footer-block__btn:hover, .popup-form__btn:hover { + box-shadow: 0 8px 18px rgba(255, 132, 0, 0.18); + -moz-box-shadow: 0 8px 18px rgba(255, 132, 0, 0.18); + -webkit-box-shadow: 0 8px 18px rgba(255, 132, 0, 0.18); + -o-box-shadow: 0 8px 18px rgba(255, 132, 0, 0.18); +} +/*end header*/ + +/*cite*/ +.cite, .scroll-block { + background: url('../images/bg/cite-bg.jpg') no-repeat center top; + height: 68px; + text-align: center; + line-height: 68px; + font-size: 25px; + color: #ffffff; +} +.cite__text { + display: inline-block; + position: relative; +} +.cite__text:after { + content: ''; + position: absolute; + top: 33px; + background: url('../images/icons.png') no-repeat; + width: 14px; + height: 7px; + right: -28px; +} +/*end cite*/ + +/*statistics*/ +.statistics { + border-bottom: 1px solid #ebebeb; +} +.statistics-top, .statistics-bottom { + font-size: 0; + border-bottom: 1px solid #ebebeb; +} +.statistics-bottom { + background: #fbfbfb; +} +.statistic-item { + overflow: hidden; + text-align: center; + border-right: 1px solid #ebebeb; +} +.statistic-item_1 { + border-left: 1px solid #ebebeb; + width: 286px; +} +.statistic-item_2 { + width: 281px; +} +.statistic-item_3 { + width: 289px; +} +.statistic-item_4 { + width: 279px; +} +.statistic-item__icon-wrap { + width: 80px; + height: 80px; + border-radius: 8px; + background: #ffffff; + display: inline-block; + margin-top: 37px; + position: relative; + box-shadow: 0 7px 32px rgba(25, 25, 25, 0.1); + -moz-box-shadow: 0 7px 32px rgba(25, 25, 25, 0.1); + -webkit-box-shadow: 0 7px 32px rgba(25, 25, 25, 0.1); + -o-box-shadow: 0 7px 32px rgba(25, 25, 25, 0.1); +} +.statistic-item__title { + width: 155px; + margin: 23px auto 29px; + text-transform: uppercase; + font-size: 20px; + font-weight: normal; + line-height: 120%; +} +.statistics-top .content, +.statistics-bottom .content { + display: table; +} +.statistic-item { + display: table-cell; +} +.statistic-item__desc { + font-size: 16px; + line-height: 135%; + margin-bottom: 24px; +} +.statistic-item__desc:last-child { + margin-bottom: 0; +} +.statistic-item__desc em { + font-weight: bold; +} +.statistics-bottom .statistic-item_1 { + padding: 29px 0; +} +.statistic-item__count { + font-size: 25px; + font-weight: normal; + position: relative; + top: 4px; +} +.statistic-item__count strong { + font-size: 40px; + display: block; + margin: -2px 0 -4px; +} +.statistic-item__count small { + color: #ff6600; +} +.statistic-item__type { + font-size: 16px; + margin-bottom: 20px; +} +.statistic-item__type:last-child { + margin-bottom: 0; +} +.statistics__info { + line-height: 40px; + text-align: right; + font-size: 16px; + font-weight: normal; + color: #ff6600; +} +/*end statistics*/ + +/*instruments*/ +.instruments { + padding-top: 73px; + padding-bottom: 80px; + position: relative; +} +.instruments__bg { + position: absolute; + background: url('../images/bg/instruments-bg.jpg') no-repeat; + width: 706px; + height: 535px; + left: 15px; + bottom: 176px; +} +.instruments-list { + float: right; + width: 325px; + margin-top: 169px; + margin-bottom: 80px; +} +.instruments-list__item { + position: relative; + font-size: 20px; + font-weight: normal; + margin-bottom: 30px; +} +.instruments-list__item:after { + content: ''; + position: absolute; + bottom: 7px; + left: -40px; + background: #ff6600; + width: 11px; + height: 2px; +} +.instruments-list__item:last-child { + margin-bottom: 0; +} +.instruments-btn, .steps__btn { + display: block; + clear: both; + margin: 0 auto; + width: 378px; +} +/*end instruments*/ + +/*steps*/ +.steps { + background: #fbfbfb; + border-top: 1px solid #ebebeb; + border-bottom: 1px solid #ebebeb; + padding-top: 74px; + padding-bottom: 79px; +} +.steps-list { + padding-top: 68px; + padding-left: 15px; + position: relative; +} +.steps-list:after { + content: ''; + background: url('../images/steps-line.png') no-repeat; + width: 1033px; + height: 248px; + left: 101px; + top: 73px; + position: absolute; +} +.step { + display: inline-block; + vertical-align: top; + width: 280px; + position: relative; + z-index: 1; + margin-bottom: 27px; +} +.step:nth-child(5) { + margin-left: 283px; +} +.step:nth-child(4), +.step:nth-child(7) { + width: 265px; +} +.step__icon-wrap { + display: block; + width: 80px; + height: 80px; + border-radius: 50%; + background: #ffffff; + position: relative; +} +.step__numb, .step__icon-wrap { + box-shadow: 0 19px 32px rgba(25, 25, 25, 0.1); + -moz-box-shadow: 0 19px 32px rgba(25, 25, 25, 0.1); + -webkit-box-shadow: 0 19px 32px rgba(25, 25, 25, 0.1); + -o-box-shadow: 0 19px 32px rgba(25, 25, 25, 0.1); +} +.step__numb { + text-align: center; + width: 30px; + height: 30px; + line-height: 30px; + font-size: 16px; + color: #fbfbfb; + font-weight: normal; + position: absolute; + background: #ff6600; + border-radius: 50%; + top: -5px; + right: -10px; +} +.step__title { + font-size: 18px; + color: #000000; + line-height: 130%; + font-weight: normal; + margin-top: 15px; +} +.step__desc { + margin-top: 8px; + font-size: 16px; + color: #999999; + line-height: 120%; +} +.steps__desc { + font-size: 25px; + color: #333333; + font-weight: bold; + text-align: center; + margin-top: 36px; +} +.steps__btn { + margin-top: 30px; +} +/*end steps*/ + +/*budget*/ +.budget { + padding-top: 74px; + padding-bottom: 90px; + text-align: center; +} +.budget__desc { + margin-top: 27px; + font-size: 20px; + font-weight: normal; + line-height: 140%; +} +.budget-packs { + margin-top: 88px; +} +.budget-packs__title { + font-size: 30px; + text-transform: uppercase; + font-weight: bold; + color: #ff6600; + margin-top: 54px; +} +.budget-pack { + position: relative; + display: inline-block; + vertical-align: top; +} +.budget-pack__sum, .budget-pack-info { + position: relative; + z-index: 1; +} +.budget-pack-info { + position: relative; + cursor: default; + width: 44px; + margin: 0 auto; +} +.budget-pack-info__icon { + width: 44px; + height: 44px; + background: #ff6600; + border-radius: 50%; + font-size: 22px; + text-align: center; + color: #fcfcfb; + font-weight: 900; + font-style: italic; + line-height: 44px; + display: block; +} +.budget-pack-info:hover .budget-pack-info__icon { + box-shadow: 0 8px 18px rgba(255, 132, 0, 0.48); + -moz-box-shadow: 0 8px 18px rgba(255, 132, 0, 0.48); + -webkit-box-shadow: 0 8px 18px rgba(255, 132, 0, 0.48); + -o-box-shadow: 0 8px 18px rgba(255, 132, 0, 0.48); +} +.budget-pack-info:hover .budget-pack-desc { + display: block; +} +.budget-pack-desc { + left: -16px; + top: 68px; + width: 550px; + text-align: left; + background: #ff6600; + font-size: 16px; + color: #ffffff; + line-height: 150%; + padding: 14px 22px; + position: absolute; + display: none; +} +.budget-pack_3 .budget-pack-desc { + left: auto; + right: -16px; +} +.budget-pack-desc:after { + content: ''; + background: url('../images/icons.png') no-repeat 0 -819px; + width: 11px; + height: 8px; + position: absolute; + top: -8px; + left: 33px; +} +.budget-pack_3 .budget-pack-desc:after { + left: auto; + right: 33px; +} +.budget-pack__sum { + font-size: 37px; + font-weight: bold; + margin-bottom: 28px; + letter-spacing: -0.055em; +} +.budget-pack_2 { + margin: 0 88px; +} +.budget-pack:after { + content: ''; + background: url('../images/icons.png') no-repeat 0 -447px; + position: absolute; + left: 0; right: 0; + margin: 0 auto; +} +.budget-pack_1:after { + width: 126px; + height: 114px; + top: -42px; +} +.budget-pack_2:after { + width: 212px; + height: 129px; + background-position: 0 -561px; + top: -51px; +} +.budget-pack_3:after { + width: 261px; + height: 129px; + background-position: 0 -690px; + top: -52px; +} +/*end budget*/ + +/*reviews*/ +.reviews { + border-top: 1px solid #ebebeb; + border-bottom: 1px solid #ebebeb; + background: #fbfbfb; + padding-top: 76px; + padding-bottom: 76px; +} +.reviews__desc { + text-align: center; + font-size: 20px; + font-weight: normal; + color: #333333; + margin: 24px 0 73px; +} +.bx-viewport { + padding-bottom: 50px; + height: 344px !important; +} +.review { + margin-right: 20px; + display: inline-block; + vertical-align: top; + border: 5px solid #f5f5f5; + border-radius: 2px; + width: 363px; + background: #ffffff; + padding: 16px 20px 16px 18px; +} +.review:last-child { + margin-right: 0; +} +.review__text { + font-size: 16px; + color: #333333; + line-height: 150%; + margin-bottom: 20px; +} +.review__logo-wrap, .review-desc { + display: inline-block; + vertical-align: top; +} +.review__logo-wrap { + width: 70px; + height: 70px; + background: #f5f4f4; + border-radius: 2px; + position: relative; + margin-bottom: -40px; + box-shadow: 10px 19px 32px rgba(25, 25, 25, 0.1); + -moz-box-shadow: 10px 19px 32px rgba(25, 25, 25, 0.1); + -webkit-box-shadow: 10px 19px 32px rgba(25, 25, 25, 0.1); + -o-box-shadow: 10px 19px 32px rgba(25, 25, 25, 0.1); +} +.review-desc__name { + font-size: 20px; + color: #ff6600; + font-weight: normal; + padding-top: 4px; +} +.review-desc__position { + font-size: 14px; + color: #999999; + margin-top: 4px; +} +.review-desc { + padding-left: 18px; +} +.reviews-listing { + text-align: center; + margin-top: 16px; +} +.reviews-listing__item { + display: inline-block; + vertical-align: top; + width: 9px; + height: 9px; + border-radius: 50%; + background: #dadada; + border: 1px solid #c5c5c5; + margin-right: 13px; +} +.reviews-listing__item.active { + background: #ff6600; + border-color: #ff6600; +} +.reviews-listing__item:last-child { + margin-right: 0; +} +/*end reviews*/ + +/*footer*/ +.footer { + background: url('../images/bg/footer-bg.jpg') no-repeat top center; + height: 523px; +} +.footer .block-title { + padding-top: 74px; +} +.footer-article { + text-align: center; + font-size: 25px; + margin-top: 17px; + color: #ffffff; +} +.footer-article__link { + color: #ff6600; +} +.footer-article__link:hover { + text-decoration: none; +} +.footer-block { + margin-top: 95px; + text-align: center; + font-weight: bold; + color: #ffffff; + position: relative; +} +.footer-block:after { + content: ''; + position: absolute; + background: url('../images/footer-border.png') no-repeat; + width: 981px; + height: 125px; + left: 0; right: 0; + top: 19px; + margin: 0 auto; +} +.footer-block__title { + font-size: 37px; + letter-spacing: -0.03em; + text-transform: uppercase; +} +.footer-block__desc { + font-size: 30px; + margin-top: 14px; +} +.footer-block__btn { + width: 378px; + margin-top: 37px; +} +.footer-block > * { + position: relative; + z-index: 1; +} +.scroll-block { + height: 49px; + position: relative; +} +.scroll-top { + cursor: pointer; + background: url('../images/icons.png') no-repeat 0 -827px; + width: 21px; + height: 10px; +} +.scroll-top:hover { + background-position: 0 -837px; +} +/*end footer*/ + +/*popup*/ +.overlay { + position: fixed; + width: 100%; + height: 100%; + left: 0; + top: 0; + z-index: 9; + display: none; + background: rgba(255, 255, 255, 0.9); +} +.popup { + position: fixed; + top: 0; bottom: 0; left: 0; right: 0; + margin: auto; + z-index: 10; + width: 445px; + height: 501px; + text-align: center; + background: #13161a; + background: linear-gradient(to bottom, #13161a, #1d161d); + background: -ms-linear-gradient(to bottom, #13161a, #1d161d); + background: -webkit-linear-gradient(to bottom, #13161a, #1d161d); + background: -o-linear-gradient(to bottom, #13161a, #1d161d); + background: -moz-linear-gradient(to bottom, #13161a, #1d161d); + color: #ffffff; + display: none; + font-family: 'Open Sans', sans-serif; +} +.popup-thank { + height: 157px; +} +.popup-thank .popup__title { + padding-top: 44px; +} +.popup__close { + position: absolute; + cursor: pointer; + top: 13px; + right: 12px; + background: url('../images/icons.png') no-repeat 0 -847px; + width: 17px; + height: 18px; +} +.popup__title { + font-weight: bold; + padding-top: 37px; + font-size: 33px; +} +.popup__desc { + line-height: 135%; + margin-top: 10px; + font-size: 17px; + font-weight: 300; +} +.popup-form { + margin-top: 25px; +} +.popup-form__field { + width: 350px; + height: 43px; + padding-left: 18px; + background: #eaeaea; + border: 1px solid #dcdcdc; + font-size: 15px; + color: #666666; + font-family: 'Open Sans', sans-serif; + margin-bottom: 14px; +} +.popup-form__btn { + margin-top: 15px; + width: 350px; +} +/*end popup*/ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/static/advertising_landing/fonts/pfdindisplayproblackit.eot b/static/advertising_landing/fonts/pfdindisplayproblackit.eot new file mode 100644 index 00000000..3e601819 Binary files /dev/null and b/static/advertising_landing/fonts/pfdindisplayproblackit.eot differ diff --git a/static/advertising_landing/fonts/pfdindisplayproblackit.svg b/static/advertising_landing/fonts/pfdindisplayproblackit.svg new file mode 100644 index 00000000..896962b7 --- /dev/null +++ b/static/advertising_landing/fonts/pfdindisplayproblackit.svg @@ -0,0 +1,5004 @@ + + + + +Created by FontForge 20150824 at Thu Mar 10 11:30:38 2016 + By Everything Fonts +Copyright (c) 2002, 2005 Parachute :, www.parachute.gr. All rights reserved. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/static/advertising_landing/fonts/pfdindisplayproblackit.ttf b/static/advertising_landing/fonts/pfdindisplayproblackit.ttf new file mode 100644 index 00000000..0b0d24be Binary files /dev/null and b/static/advertising_landing/fonts/pfdindisplayproblackit.ttf differ diff --git a/static/advertising_landing/fonts/pfdindisplayproblackit.woff b/static/advertising_landing/fonts/pfdindisplayproblackit.woff new file mode 100644 index 00000000..02263b26 Binary files /dev/null and b/static/advertising_landing/fonts/pfdindisplayproblackit.woff differ diff --git a/static/advertising_landing/fonts/pfdindisplayproblackit.woff2 b/static/advertising_landing/fonts/pfdindisplayproblackit.woff2 new file mode 100644 index 00000000..3a76b490 Binary files /dev/null and b/static/advertising_landing/fonts/pfdindisplayproblackit.woff2 differ diff --git a/static/advertising_landing/fonts/pfdindisplayprobold.eot b/static/advertising_landing/fonts/pfdindisplayprobold.eot new file mode 100644 index 00000000..b7a35706 Binary files /dev/null and b/static/advertising_landing/fonts/pfdindisplayprobold.eot differ diff --git a/static/advertising_landing/fonts/pfdindisplayprobold.svg b/static/advertising_landing/fonts/pfdindisplayprobold.svg new file mode 100644 index 00000000..cc39ff08 --- /dev/null +++ b/static/advertising_landing/fonts/pfdindisplayprobold.svg @@ -0,0 +1,4889 @@ + + + + +Created by FontForge 20150824 at Thu Mar 10 11:31:19 2016 + By Everything Fonts +Copyright (c) 2002, 2005 Parachute :, www.parachute.gr. All rights reserved. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/static/advertising_landing/fonts/pfdindisplayprobold.ttf b/static/advertising_landing/fonts/pfdindisplayprobold.ttf new file mode 100644 index 00000000..b8f84348 Binary files /dev/null and b/static/advertising_landing/fonts/pfdindisplayprobold.ttf differ diff --git a/static/advertising_landing/fonts/pfdindisplayprobold.woff b/static/advertising_landing/fonts/pfdindisplayprobold.woff new file mode 100644 index 00000000..83132f20 Binary files /dev/null and b/static/advertising_landing/fonts/pfdindisplayprobold.woff differ diff --git a/static/advertising_landing/fonts/pfdindisplayprobold.woff2 b/static/advertising_landing/fonts/pfdindisplayprobold.woff2 new file mode 100644 index 00000000..81e20d69 Binary files /dev/null and b/static/advertising_landing/fonts/pfdindisplayprobold.woff2 differ diff --git a/static/advertising_landing/fonts/pfdindisplayprolight.eot b/static/advertising_landing/fonts/pfdindisplayprolight.eot new file mode 100644 index 00000000..194112c7 Binary files /dev/null and b/static/advertising_landing/fonts/pfdindisplayprolight.eot differ diff --git a/static/advertising_landing/fonts/pfdindisplayprolight.svg b/static/advertising_landing/fonts/pfdindisplayprolight.svg new file mode 100644 index 00000000..6be3d92d --- /dev/null +++ b/static/advertising_landing/fonts/pfdindisplayprolight.svg @@ -0,0 +1,4903 @@ + + + + +Created by FontForge 20150824 at Thu Mar 10 11:32:29 2016 + By Everything Fonts +Copyright (c) 2002, 2005 Parachute :, www.parachute.gr. All rights reserved. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/static/advertising_landing/fonts/pfdindisplayprolight.ttf b/static/advertising_landing/fonts/pfdindisplayprolight.ttf new file mode 100644 index 00000000..ae181cf3 Binary files /dev/null and b/static/advertising_landing/fonts/pfdindisplayprolight.ttf differ diff --git a/static/advertising_landing/fonts/pfdindisplayprolight.woff b/static/advertising_landing/fonts/pfdindisplayprolight.woff new file mode 100644 index 00000000..1302ded0 Binary files /dev/null and b/static/advertising_landing/fonts/pfdindisplayprolight.woff differ diff --git a/static/advertising_landing/fonts/pfdindisplayprolight.woff2 b/static/advertising_landing/fonts/pfdindisplayprolight.woff2 new file mode 100644 index 00000000..aee9d298 Binary files /dev/null and b/static/advertising_landing/fonts/pfdindisplayprolight.woff2 differ diff --git a/static/advertising_landing/fonts/pfdindisplayproreg.eot b/static/advertising_landing/fonts/pfdindisplayproreg.eot new file mode 100644 index 00000000..9e585ef5 Binary files /dev/null and b/static/advertising_landing/fonts/pfdindisplayproreg.eot differ diff --git a/static/advertising_landing/fonts/pfdindisplayproreg.svg b/static/advertising_landing/fonts/pfdindisplayproreg.svg new file mode 100644 index 00000000..68358b9e --- /dev/null +++ b/static/advertising_landing/fonts/pfdindisplayproreg.svg @@ -0,0 +1,4874 @@ + + + + +Created by FontForge 20150824 at Thu Mar 10 11:33:18 2016 + By Everything Fonts +Copyright (c) 2002, 2005 Parachute :, www.parachute.gr. All rights reserved. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/static/advertising_landing/fonts/pfdindisplayproreg.ttf b/static/advertising_landing/fonts/pfdindisplayproreg.ttf new file mode 100644 index 00000000..39948249 Binary files /dev/null and b/static/advertising_landing/fonts/pfdindisplayproreg.ttf differ diff --git a/static/advertising_landing/fonts/pfdindisplayproreg.woff b/static/advertising_landing/fonts/pfdindisplayproreg.woff new file mode 100644 index 00000000..1d8e504e Binary files /dev/null and b/static/advertising_landing/fonts/pfdindisplayproreg.woff differ diff --git a/static/advertising_landing/fonts/pfdindisplayproreg.woff2 b/static/advertising_landing/fonts/pfdindisplayproreg.woff2 new file mode 100644 index 00000000..2b8d5279 Binary files /dev/null and b/static/advertising_landing/fonts/pfdindisplayproreg.woff2 differ diff --git a/static/advertising_landing/images/bg/cite-bg.jpg b/static/advertising_landing/images/bg/cite-bg.jpg new file mode 100644 index 00000000..541c7eba Binary files /dev/null and b/static/advertising_landing/images/bg/cite-bg.jpg differ diff --git a/static/advertising_landing/images/bg/footer-bg.jpg b/static/advertising_landing/images/bg/footer-bg.jpg new file mode 100644 index 00000000..8f243c0c Binary files /dev/null and b/static/advertising_landing/images/bg/footer-bg.jpg differ diff --git a/static/advertising_landing/images/bg/header-bg.jpg b/static/advertising_landing/images/bg/header-bg.jpg new file mode 100644 index 00000000..f1a61591 Binary files /dev/null and b/static/advertising_landing/images/bg/header-bg.jpg differ diff --git a/static/advertising_landing/images/bg/instruments-bg.jpg b/static/advertising_landing/images/bg/instruments-bg.jpg new file mode 100644 index 00000000..1dffe38c Binary files /dev/null and b/static/advertising_landing/images/bg/instruments-bg.jpg differ diff --git a/static/advertising_landing/images/clients/client-1.png b/static/advertising_landing/images/clients/client-1.png new file mode 100644 index 00000000..7c922697 Binary files /dev/null and b/static/advertising_landing/images/clients/client-1.png differ diff --git a/static/advertising_landing/images/clients/client-2.png b/static/advertising_landing/images/clients/client-2.png new file mode 100644 index 00000000..d13543d0 Binary files /dev/null and b/static/advertising_landing/images/clients/client-2.png differ diff --git a/static/advertising_landing/images/clients/client-3.png b/static/advertising_landing/images/clients/client-3.png new file mode 100644 index 00000000..a4fdc530 Binary files /dev/null and b/static/advertising_landing/images/clients/client-3.png differ diff --git a/static/advertising_landing/images/footer-border.png b/static/advertising_landing/images/footer-border.png new file mode 100644 index 00000000..048f10f2 Binary files /dev/null and b/static/advertising_landing/images/footer-border.png differ diff --git a/static/advertising_landing/images/icons.png b/static/advertising_landing/images/icons.png new file mode 100644 index 00000000..da3ebd8d Binary files /dev/null and b/static/advertising_landing/images/icons.png differ diff --git a/static/advertising_landing/images/logo.png b/static/advertising_landing/images/logo.png new file mode 100644 index 00000000..d6354236 Binary files /dev/null and b/static/advertising_landing/images/logo.png differ diff --git a/static/advertising_landing/images/steps-line.png b/static/advertising_landing/images/steps-line.png new file mode 100644 index 00000000..1c7e665b Binary files /dev/null and b/static/advertising_landing/images/steps-line.png differ diff --git a/static/advertising_landing/js/jquery.bxslider.min.js b/static/advertising_landing/js/jquery.bxslider.min.js new file mode 100644 index 00000000..dc338f7a --- /dev/null +++ b/static/advertising_landing/js/jquery.bxslider.min.js @@ -0,0 +1,10 @@ +/** + * BxSlider v4.1.2 - Fully loaded, responsive content slider + * http://bxslider.com + * + * Copyright 2014, Steven Wanderski - http://stevenwanderski.com - http://bxcreative.com + * Written while drinking Belgian ales and listening to jazz + * + * Released under the MIT license - http://opensource.org/licenses/MIT + */ +!function(t){var e={},s={mode:"horizontal",slideSelector:"",infiniteLoop:!0,hideControlOnEnd:!1,speed:500,easing:null,slideMargin:0,startSlide:0,randomStart:!1,captions:!1,ticker:!1,tickerHover:!1,adaptiveHeight:!1,adaptiveHeightSpeed:500,video:!1,useCSS:!0,preloadImages:"visible",responsive:!0,slideZIndex:50,touchEnabled:!0,swipeThreshold:50,oneToOneTouch:!0,preventDefaultSwipeX:!0,preventDefaultSwipeY:!1,pager:!0,pagerType:"full",pagerShortSeparator:" / ",pagerSelector:null,buildPager:null,pagerCustom:null,controls:!0,nextText:"Next",prevText:"Prev",nextSelector:null,prevSelector:null,autoControls:!1,startText:"Start",stopText:"Stop",autoControlsCombine:!1,autoControlsSelector:null,auto:!1,pause:4e3,autoStart:!0,autoDirection:"next",autoHover:!1,autoDelay:0,minSlides:1,maxSlides:1,moveSlides:0,slideWidth:0,onSliderLoad:function(){},onSlideBefore:function(){},onSlideAfter:function(){},onSlideNext:function(){},onSlidePrev:function(){},onSliderResize:function(){}};t.fn.bxSlider=function(n){if(0==this.length)return this;if(this.length>1)return this.each(function(){t(this).bxSlider(n)}),this;var o={},r=this;e.el=this;var a=t(window).width(),l=t(window).height(),d=function(){o.settings=t.extend({},s,n),o.settings.slideWidth=parseInt(o.settings.slideWidth),o.children=r.children(o.settings.slideSelector),o.children.length1||o.settings.maxSlides>1,o.carousel&&(o.settings.preloadImages="all"),o.minThreshold=o.settings.minSlides*o.settings.slideWidth+(o.settings.minSlides-1)*o.settings.slideMargin,o.maxThreshold=o.settings.maxSlides*o.settings.slideWidth+(o.settings.maxSlides-1)*o.settings.slideMargin,o.working=!1,o.controls={},o.interval=null,o.animProp="vertical"==o.settings.mode?"top":"left",o.usingCSS=o.settings.useCSS&&"fade"!=o.settings.mode&&function(){var t=document.createElement("div"),e=["WebkitPerspective","MozPerspective","OPerspective","msPerspective"];for(var i in e)if(void 0!==t.style[e[i]])return o.cssPrefix=e[i].replace("Perspective","").toLowerCase(),o.animProp="-"+o.cssPrefix+"-transform",!0;return!1}(),"vertical"==o.settings.mode&&(o.settings.maxSlides=o.settings.minSlides),r.data("origStyle",r.attr("style")),r.children(o.settings.slideSelector).each(function(){t(this).data("origStyle",t(this).attr("style"))}),c()},c=function(){r.wrap('
'),o.viewport=r.parent(),o.loader=t('
'),o.viewport.prepend(o.loader),r.css({width:"horizontal"==o.settings.mode?100*o.children.length+215+"%":"auto",position:"relative"}),o.usingCSS&&o.settings.easing?r.css("-"+o.cssPrefix+"-transition-timing-function",o.settings.easing):o.settings.easing||(o.settings.easing="swing"),f(),o.viewport.css({width:"100%",overflow:"hidden",position:"relative"}),o.viewport.parent().css({maxWidth:p()}),o.settings.pager||o.viewport.parent().css({margin:"0 auto 0px"}),o.children.css({"float":"horizontal"==o.settings.mode?"left":"none",listStyle:"none",position:"relative"}),o.children.css("width",u()),"horizontal"==o.settings.mode&&o.settings.slideMargin>0&&o.children.css("marginRight",o.settings.slideMargin),"vertical"==o.settings.mode&&o.settings.slideMargin>0&&o.children.css("marginBottom",o.settings.slideMargin),"fade"==o.settings.mode&&(o.children.css({position:"absolute",zIndex:0,display:"none"}),o.children.eq(o.settings.startSlide).css({zIndex:o.settings.slideZIndex,display:"block"})),o.controls.el=t('
'),o.settings.captions&&P(),o.active.last=o.settings.startSlide==x()-1,o.settings.video&&r.fitVids();var e=o.children.eq(o.settings.startSlide);"all"==o.settings.preloadImages&&(e=o.children),o.settings.ticker?o.settings.pager=!1:(o.settings.pager&&T(),o.settings.controls&&C(),o.settings.auto&&o.settings.autoControls&&E(),(o.settings.controls||o.settings.autoControls||o.settings.pager)&&o.viewport.after(o.controls.el)),g(e,h)},g=function(e,i){var s=e.find("img, iframe").length;if(0==s)return i(),void 0;var n=0;e.find("img, iframe").each(function(){t(this).one("load",function(){++n==s&&i()}).each(function(){this.complete&&t(this).load()})})},h=function(){if(o.settings.infiniteLoop&&"fade"!=o.settings.mode&&!o.settings.ticker){var e="vertical"==o.settings.mode?o.settings.minSlides:o.settings.maxSlides,i=o.children.slice(0,e).clone().addClass("bx-clone"),s=o.children.slice(-e).clone().addClass("bx-clone");r.append(i).prepend(s)}o.loader.remove(),S(),"vertical"==o.settings.mode&&(o.settings.adaptiveHeight=!0),o.viewport.height(v()),r.redrawSlider(),o.settings.onSliderLoad(o.active.index),o.initialized=!0,o.settings.responsive&&t(window).bind("resize",Z),o.settings.auto&&o.settings.autoStart&&H(),o.settings.ticker&&L(),o.settings.pager&&q(o.settings.startSlide),o.settings.controls&&W(),o.settings.touchEnabled&&!o.settings.ticker&&O()},v=function(){var e=0,s=t();if("vertical"==o.settings.mode||o.settings.adaptiveHeight)if(o.carousel){var n=1==o.settings.moveSlides?o.active.index:o.active.index*m();for(s=o.children.eq(n),i=1;i<=o.settings.maxSlides-1;i++)s=n+i>=o.children.length?s.add(o.children.eq(i-1)):s.add(o.children.eq(n+i))}else s=o.children.eq(o.active.index);else s=o.children;return"vertical"==o.settings.mode?(s.each(function(){e+=t(this).outerHeight()}),o.settings.slideMargin>0&&(e+=o.settings.slideMargin*(o.settings.minSlides-1))):e=Math.max.apply(Math,s.map(function(){return t(this).outerHeight(!1)}).get()),e},p=function(){var t="100%";return o.settings.slideWidth>0&&(t="horizontal"==o.settings.mode?o.settings.maxSlides*o.settings.slideWidth+(o.settings.maxSlides-1)*o.settings.slideMargin:o.settings.slideWidth),t},u=function(){var t=o.settings.slideWidth,e=o.viewport.width();return 0==o.settings.slideWidth||o.settings.slideWidth>e&&!o.carousel||"vertical"==o.settings.mode?t=e:o.settings.maxSlides>1&&"horizontal"==o.settings.mode&&(e>o.maxThreshold||e0)if(o.viewport.width()o.maxThreshold)t=o.settings.maxSlides;else{var e=o.children.first().width();t=Math.floor(o.viewport.width()/e)}else"vertical"==o.settings.mode&&(t=o.settings.minSlides);return t},x=function(){var t=0;if(o.settings.moveSlides>0)if(o.settings.infiniteLoop)t=o.children.length/m();else for(var e=0,i=0;e0&&o.settings.moveSlides<=f()?o.settings.moveSlides:f()},S=function(){if(o.children.length>o.settings.maxSlides&&o.active.last&&!o.settings.infiniteLoop){if("horizontal"==o.settings.mode){var t=o.children.last(),e=t.position();b(-(e.left-(o.viewport.width()-t.width())),"reset",0)}else if("vertical"==o.settings.mode){var i=o.children.length-o.settings.minSlides,e=o.children.eq(i).position();b(-e.top,"reset",0)}}else{var e=o.children.eq(o.active.index*m()).position();o.active.index==x()-1&&(o.active.last=!0),void 0!=e&&("horizontal"==o.settings.mode?b(-e.left,"reset",0):"vertical"==o.settings.mode&&b(-e.top,"reset",0))}},b=function(t,e,i,s){if(o.usingCSS){var n="vertical"==o.settings.mode?"translate3d(0, "+t+"px, 0)":"translate3d("+t+"px, 0, 0)";r.css("-"+o.cssPrefix+"-transition-duration",i/1e3+"s"),"slide"==e?(r.css(o.animProp,n),r.bind("transitionend webkitTransitionEnd oTransitionEnd MSTransitionEnd",function(){r.unbind("transitionend webkitTransitionEnd oTransitionEnd MSTransitionEnd"),D()})):"reset"==e?r.css(o.animProp,n):"ticker"==e&&(r.css("-"+o.cssPrefix+"-transition-timing-function","linear"),r.css(o.animProp,n),r.bind("transitionend webkitTransitionEnd oTransitionEnd MSTransitionEnd",function(){r.unbind("transitionend webkitTransitionEnd oTransitionEnd MSTransitionEnd"),b(s.resetValue,"reset",0),N()}))}else{var a={};a[o.animProp]=t,"slide"==e?r.animate(a,i,o.settings.easing,function(){D()}):"reset"==e?r.css(o.animProp,t):"ticker"==e&&r.animate(a,speed,"linear",function(){b(s.resetValue,"reset",0),N()})}},w=function(){for(var e="",i=x(),s=0;i>s;s++){var n="";o.settings.buildPager&&t.isFunction(o.settings.buildPager)?(n=o.settings.buildPager(s),o.pagerEl.addClass("bx-custom-pager")):(n=s+1,o.pagerEl.addClass("bx-default-pager")),e+='"}o.pagerEl.html(e)},T=function(){o.settings.pagerCustom?o.pagerEl=t(o.settings.pagerCustom):(o.pagerEl=t('
'),o.settings.pagerSelector?t(o.settings.pagerSelector).html(o.pagerEl):o.controls.el.addClass("bx-has-pager").append(o.pagerEl),w()),o.pagerEl.on("click","a",I)},C=function(){o.controls.next=t(''+o.settings.nextText+""),o.controls.prev=t(''+o.settings.prevText+""),o.controls.next.bind("click",y),o.controls.prev.bind("click",z),o.settings.nextSelector&&t(o.settings.nextSelector).append(o.controls.next),o.settings.prevSelector&&t(o.settings.prevSelector).append(o.controls.prev),o.settings.nextSelector||o.settings.prevSelector||(o.controls.directionEl=t('
'),o.controls.directionEl.append(o.controls.prev).append(o.controls.next),o.controls.el.addClass("bx-has-controls-direction").append(o.controls.directionEl))},E=function(){o.controls.start=t('"),o.controls.stop=t('"),o.controls.autoEl=t('
'),o.controls.autoEl.on("click",".bx-start",k),o.controls.autoEl.on("click",".bx-stop",M),o.settings.autoControlsCombine?o.controls.autoEl.append(o.controls.start):o.controls.autoEl.append(o.controls.start).append(o.controls.stop),o.settings.autoControlsSelector?t(o.settings.autoControlsSelector).html(o.controls.autoEl):o.controls.el.addClass("bx-has-controls-auto").append(o.controls.autoEl),A(o.settings.autoStart?"stop":"start")},P=function(){o.children.each(function(){var e=t(this).find("img:first").attr("title");void 0!=e&&(""+e).length&&t(this).append('
'+e+"
")})},y=function(t){o.settings.auto&&r.stopAuto(),r.goToNextSlide(),t.preventDefault()},z=function(t){o.settings.auto&&r.stopAuto(),r.goToPrevSlide(),t.preventDefault()},k=function(t){r.startAuto(),t.preventDefault()},M=function(t){r.stopAuto(),t.preventDefault()},I=function(e){o.settings.auto&&r.stopAuto();var i=t(e.currentTarget),s=parseInt(i.attr("data-slide-index"));s!=o.active.index&&r.goToSlide(s),e.preventDefault()},q=function(e){var i=o.children.length;return"short"==o.settings.pagerType?(o.settings.maxSlides>1&&(i=Math.ceil(o.children.length/o.settings.maxSlides)),o.pagerEl.html(e+1+o.settings.pagerShortSeparator+i),void 0):(o.pagerEl.find("a").removeClass("active"),o.pagerEl.each(function(i,s){t(s).find("a").eq(e).addClass("active")}),void 0)},D=function(){if(o.settings.infiniteLoop){var t="";0==o.active.index?t=o.children.eq(0).position():o.active.index==x()-1&&o.carousel?t=o.children.eq((x()-1)*m()).position():o.active.index==o.children.length-1&&(t=o.children.eq(o.children.length-1).position()),t&&("horizontal"==o.settings.mode?b(-t.left,"reset",0):"vertical"==o.settings.mode&&b(-t.top,"reset",0))}o.working=!1,o.settings.onSlideAfter(o.children.eq(o.active.index),o.oldIndex,o.active.index)},A=function(t){o.settings.autoControlsCombine?o.controls.autoEl.html(o.controls[t]):(o.controls.autoEl.find("a").removeClass("active"),o.controls.autoEl.find("a:not(.bx-"+t+")").addClass("active"))},W=function(){1==x()?(o.controls.prev.addClass("disabled"),o.controls.next.addClass("disabled")):!o.settings.infiniteLoop&&o.settings.hideControlOnEnd&&(0==o.active.index?(o.controls.prev.addClass("disabled"),o.controls.next.removeClass("disabled")):o.active.index==x()-1?(o.controls.next.addClass("disabled"),o.controls.prev.removeClass("disabled")):(o.controls.prev.removeClass("disabled"),o.controls.next.removeClass("disabled")))},H=function(){o.settings.autoDelay>0?setTimeout(r.startAuto,o.settings.autoDelay):r.startAuto(),o.settings.autoHover&&r.hover(function(){o.interval&&(r.stopAuto(!0),o.autoPaused=!0)},function(){o.autoPaused&&(r.startAuto(!0),o.autoPaused=null)})},L=function(){var e=0;if("next"==o.settings.autoDirection)r.append(o.children.clone().addClass("bx-clone"));else{r.prepend(o.children.clone().addClass("bx-clone"));var i=o.children.first().position();e="horizontal"==o.settings.mode?-i.left:-i.top}b(e,"reset",0),o.settings.pager=!1,o.settings.controls=!1,o.settings.autoControls=!1,o.settings.tickerHover&&!o.usingCSS&&o.viewport.hover(function(){r.stop()},function(){var e=0;o.children.each(function(){e+="horizontal"==o.settings.mode?t(this).outerWidth(!0):t(this).outerHeight(!0)});var i=o.settings.speed/e,s="horizontal"==o.settings.mode?"left":"top",n=i*(e-Math.abs(parseInt(r.css(s))));N(n)}),N()},N=function(t){speed=t?t:o.settings.speed;var e={left:0,top:0},i={left:0,top:0};"next"==o.settings.autoDirection?e=r.find(".bx-clone").first().position():i=o.children.first().position();var s="horizontal"==o.settings.mode?-e.left:-e.top,n="horizontal"==o.settings.mode?-i.left:-i.top,a={resetValue:n};b(s,"ticker",speed,a)},O=function(){o.touch={start:{x:0,y:0},end:{x:0,y:0}},o.viewport.bind("touchstart",X)},X=function(t){if(o.working)t.preventDefault();else{o.touch.originalPos=r.position();var e=t.originalEvent;o.touch.start.x=e.changedTouches[0].pageX,o.touch.start.y=e.changedTouches[0].pageY,o.viewport.bind("touchmove",Y),o.viewport.bind("touchend",V)}},Y=function(t){var e=t.originalEvent,i=Math.abs(e.changedTouches[0].pageX-o.touch.start.x),s=Math.abs(e.changedTouches[0].pageY-o.touch.start.y);if(3*i>s&&o.settings.preventDefaultSwipeX?t.preventDefault():3*s>i&&o.settings.preventDefaultSwipeY&&t.preventDefault(),"fade"!=o.settings.mode&&o.settings.oneToOneTouch){var n=0;if("horizontal"==o.settings.mode){var r=e.changedTouches[0].pageX-o.touch.start.x;n=o.touch.originalPos.left+r}else{var r=e.changedTouches[0].pageY-o.touch.start.y;n=o.touch.originalPos.top+r}b(n,"reset",0)}},V=function(t){o.viewport.unbind("touchmove",Y);var e=t.originalEvent,i=0;if(o.touch.end.x=e.changedTouches[0].pageX,o.touch.end.y=e.changedTouches[0].pageY,"fade"==o.settings.mode){var s=Math.abs(o.touch.start.x-o.touch.end.x);s>=o.settings.swipeThreshold&&(o.touch.start.x>o.touch.end.x?r.goToNextSlide():r.goToPrevSlide(),r.stopAuto())}else{var s=0;"horizontal"==o.settings.mode?(s=o.touch.end.x-o.touch.start.x,i=o.touch.originalPos.left):(s=o.touch.end.y-o.touch.start.y,i=o.touch.originalPos.top),!o.settings.infiniteLoop&&(0==o.active.index&&s>0||o.active.last&&0>s)?b(i,"reset",200):Math.abs(s)>=o.settings.swipeThreshold?(0>s?r.goToNextSlide():r.goToPrevSlide(),r.stopAuto()):b(i,"reset",200)}o.viewport.unbind("touchend",V)},Z=function(){var e=t(window).width(),i=t(window).height();(a!=e||l!=i)&&(a=e,l=i,r.redrawSlider(),o.settings.onSliderResize.call(r,o.active.index))};return r.goToSlide=function(e,i){if(!o.working&&o.active.index!=e)if(o.working=!0,o.oldIndex=o.active.index,o.active.index=0>e?x()-1:e>=x()?0:e,o.settings.onSlideBefore(o.children.eq(o.active.index),o.oldIndex,o.active.index),"next"==i?o.settings.onSlideNext(o.children.eq(o.active.index),o.oldIndex,o.active.index):"prev"==i&&o.settings.onSlidePrev(o.children.eq(o.active.index),o.oldIndex,o.active.index),o.active.last=o.active.index>=x()-1,o.settings.pager&&q(o.active.index),o.settings.controls&&W(),"fade"==o.settings.mode)o.settings.adaptiveHeight&&o.viewport.height()!=v()&&o.viewport.animate({height:v()},o.settings.adaptiveHeightSpeed),o.children.filter(":visible").fadeOut(o.settings.speed).css({zIndex:0}),o.children.eq(o.active.index).css("zIndex",o.settings.slideZIndex+1).fadeIn(o.settings.speed,function(){t(this).css("zIndex",o.settings.slideZIndex),D()});else{o.settings.adaptiveHeight&&o.viewport.height()!=v()&&o.viewport.animate({height:v()},o.settings.adaptiveHeightSpeed);var s=0,n={left:0,top:0};if(!o.settings.infiniteLoop&&o.carousel&&o.active.last)if("horizontal"==o.settings.mode){var a=o.children.eq(o.children.length-1);n=a.position(),s=o.viewport.width()-a.outerWidth()}else{var l=o.children.length-o.settings.minSlides;n=o.children.eq(l).position()}else if(o.carousel&&o.active.last&&"prev"==i){var d=1==o.settings.moveSlides?o.settings.maxSlides-m():(x()-1)*m()-(o.children.length-o.settings.maxSlides),a=r.children(".bx-clone").eq(d);n=a.position()}else if("next"==i&&0==o.active.index)n=r.find("> .bx-clone").eq(o.settings.maxSlides).position(),o.active.last=!1;else if(e>=0){var c=e*m();n=o.children.eq(c).position()}if("undefined"!=typeof n){var g="horizontal"==o.settings.mode?-(n.left-s):-n.top;b(g,"slide",o.settings.speed)}}},r.goToNextSlide=function(){if(o.settings.infiniteLoop||!o.active.last){var t=parseInt(o.active.index)+1;r.goToSlide(t,"next")}},r.goToPrevSlide=function(){if(o.settings.infiniteLoop||0!=o.active.index){var t=parseInt(o.active.index)-1;r.goToSlide(t,"prev")}},r.startAuto=function(t){o.interval||(o.interval=setInterval(function(){"next"==o.settings.autoDirection?r.goToNextSlide():r.goToPrevSlide()},o.settings.pause),o.settings.autoControls&&1!=t&&A("stop"))},r.stopAuto=function(t){o.interval&&(clearInterval(o.interval),o.interval=null,o.settings.autoControls&&1!=t&&A("start"))},r.getCurrentSlide=function(){return o.active.index},r.getCurrentSlideElement=function(){return o.children.eq(o.active.index)},r.getSlideCount=function(){return o.children.length},r.redrawSlider=function(){o.children.add(r.find(".bx-clone")).outerWidth(u()),o.viewport.css("height",v()),o.settings.ticker||S(),o.active.last&&(o.active.index=x()-1),o.active.index>=x()&&(o.active.last=!0),o.settings.pager&&!o.settings.pagerCustom&&(w(),q(o.active.index))},r.destroySlider=function(){o.initialized&&(o.initialized=!1,t(".bx-clone",this).remove(),o.children.each(function(){void 0!=t(this).data("origStyle")?t(this).attr("style",t(this).data("origStyle")):t(this).removeAttr("style")}),void 0!=t(this).data("origStyle")?this.attr("style",t(this).data("origStyle")):t(this).removeAttr("style"),t(this).unwrap().unwrap(),o.controls.el&&o.controls.el.remove(),o.controls.next&&o.controls.next.remove(),o.controls.prev&&o.controls.prev.remove(),o.pagerEl&&o.settings.controls&&o.pagerEl.remove(),t(".bx-caption",this).remove(),o.controls.autoEl&&o.controls.autoEl.remove(),clearInterval(o.interval),o.settings.responsive&&t(window).unbind("resize",Z))},r.reloadSlider=function(t){void 0!=t&&(n=t),r.destroySlider(),d()},d(),this}}(jQuery); \ No newline at end of file diff --git a/static/advertising_landing/js/jquery.placeholder.js b/static/advertising_landing/js/jquery.placeholder.js new file mode 100644 index 00000000..c9511979 --- /dev/null +++ b/static/advertising_landing/js/jquery.placeholder.js @@ -0,0 +1,185 @@ +/*! http://mths.be/placeholder v2.0.8 by @mathias */ +;(function(window, document, $) { + + // Opera Mini v7 doesn’t support placeholder although its DOM seems to indicate so + var isOperaMini = Object.prototype.toString.call(window.operamini) == '[object OperaMini]'; + var isInputSupported = 'placeholder' in document.createElement('input') && !isOperaMini; + var isTextareaSupported = 'placeholder' in document.createElement('textarea') && !isOperaMini; + var prototype = $.fn; + var valHooks = $.valHooks; + var propHooks = $.propHooks; + var hooks; + var placeholder; + + if (isInputSupported && isTextareaSupported) { + + placeholder = prototype.placeholder = function() { + return this; + }; + + placeholder.input = placeholder.textarea = true; + + } else { + + placeholder = prototype.placeholder = function() { + var $this = this; + $this + .filter((isInputSupported ? 'textarea' : ':input') + '[placeholder]') + .not('.placeholder') + .bind({ + 'focus.placeholder': clearPlaceholder, + 'blur.placeholder': setPlaceholder + }) + .data('placeholder-enabled', true) + .trigger('blur.placeholder'); + return $this; + }; + + placeholder.input = isInputSupported; + placeholder.textarea = isTextareaSupported; + + hooks = { + 'get': function(element) { + var $element = $(element); + + var $passwordInput = $element.data('placeholder-password'); + if ($passwordInput) { + return $passwordInput[0].value; + } + + return $element.data('placeholder-enabled') && $element.hasClass('placeholder') ? '' : element.value; + }, + 'set': function(element, value) { + var $element = $(element); + + var $passwordInput = $element.data('placeholder-password'); + if ($passwordInput) { + return $passwordInput[0].value = value; + } + + if (!$element.data('placeholder-enabled')) { + return element.value = value; + } + if (value == '') { + element.value = value; + // Issue #56: Setting the placeholder causes problems if the element continues to have focus. + if (element != safeActiveElement()) { + // We can't use `triggerHandler` here because of dummy text/password inputs :( + setPlaceholder.call(element); + } + } else if ($element.hasClass('placeholder')) { + clearPlaceholder.call(element, true, value) || (element.value = value); + } else { + element.value = value; + } + // `set` can not return `undefined`; see http://jsapi.info/jquery/1.7.1/val#L2363 + return $element; + } + }; + + if (!isInputSupported) { + valHooks.input = hooks; + propHooks.value = hooks; + } + if (!isTextareaSupported) { + valHooks.textarea = hooks; + propHooks.value = hooks; + } + + $(function() { + // Look for forms + $(document).delegate('form', 'submit.placeholder', function() { + // Clear the placeholder values so they don't get submitted + var $inputs = $('.placeholder', this).each(clearPlaceholder); + setTimeout(function() { + $inputs.each(setPlaceholder); + }, 10); + }); + }); + + // Clear placeholder values upon page reload + $(window).bind('beforeunload.placeholder', function() { + $('.placeholder').each(function() { + this.value = ''; + }); + }); + + } + + function args(elem) { + // Return an object of element attributes + var newAttrs = {}; + var rinlinejQuery = /^jQuery\d+$/; + $.each(elem.attributes, function(i, attr) { + if (attr.specified && !rinlinejQuery.test(attr.name)) { + newAttrs[attr.name] = attr.value; + } + }); + return newAttrs; + } + + function clearPlaceholder(event, value) { + var input = this; + var $input = $(input); + if (input.value == $input.attr('placeholder') && $input.hasClass('placeholder')) { + if ($input.data('placeholder-password')) { + $input = $input.hide().next().show().attr('id', $input.removeAttr('id').data('placeholder-id')); + // If `clearPlaceholder` was called from `$.valHooks.input.set` + if (event === true) { + return $input[0].value = value; + } + $input.focus(); + } else { + input.value = ''; + $input.removeClass('placeholder'); + input == safeActiveElement() && input.select(); + } + } + } + + function setPlaceholder() { + var $replacement; + var input = this; + var $input = $(input); + var id = this.id; + if (input.value == '') { + if (input.type == 'password') { + if (!$input.data('placeholder-textinput')) { + try { + $replacement = $input.clone().attr({ 'type': 'text' }); + } catch(e) { + $replacement = $('').attr($.extend(args(this), { 'type': 'text' })); + } + $replacement + .removeAttr('name') + .data({ + 'placeholder-password': $input, + 'placeholder-id': id + }) + .bind('focus.placeholder', clearPlaceholder); + $input + .data({ + 'placeholder-textinput': $replacement, + 'placeholder-id': id + }) + .before($replacement); + } + $input = $input.removeAttr('id').hide().prev().attr('id', id).show(); + // Note: `$input[0] != input` now! + } + $input.addClass('placeholder'); + $input[0].value = $input.attr('placeholder'); + } else { + $input.removeClass('placeholder'); + } + } + + function safeActiveElement() { + // Avoid IE9 `document.activeElement` of death + // https://github.com/mathiasbynens/jquery-placeholder/pull/99 + try { + return document.activeElement; + } catch (exception) {} + } + +}(this, document, jQuery)); diff --git a/static/advertising_landing/js/script.js b/static/advertising_landing/js/script.js new file mode 100644 index 00000000..cd692714 --- /dev/null +++ b/static/advertising_landing/js/script.js @@ -0,0 +1,68 @@ +/** + * Created by Алексей on 10.03.2016. + */ + +$(document).ready(function(){ + $('input').placeholder(); + + $('.reviews-slides').bxSlider({ + pagerCustom: '.reviews-listing', + nextText: ' ', + prevText: ' ', + onSliderLoad: function () { + $(".reviews .bx-pager.bx-default-pager").remove(); + } + }); + + $('.scroll-top').on('click', function(e){ + $('html,body').stop().animate({ scrollTop: $('.header').offset().top }, 1000); + e.preventDefault(); + }); + + $('.popup-open-btn').click(function (e) { + e.preventDefault(); + + $('.overlay').fadeIn(400, + function () { + $('.popup-app') + .css('display', 'block') + .animate({opacity: 1}, 200); + }); + return false; + }); + + $('.popup__close, .overlay').click(function () { + $('.popup') + .animate({opacity: 0}, 200, + function () { + $(this).css('display', 'none'); + $('.overlay').fadeOut(400); + } + ); + }); + + $("form.popup-form").on("submit", function(e){ + console.log('11'); + e.preventDefault(); + var $this = $(this), + url = $this.attr("action"), + form = $this.serialize(); + $.post( + url, + form, + function(data){ + console.log(data); + if(data.success){ + // show thanks popup + $('.popup__close').click(); + $('.overlay').fadeIn(400, + function () { + $('.popup-thank') + .css('display', 'block') + .animate({opacity: 1}, 200); + }); + } + } + ); + }) +}); diff --git a/templates/admin/country/country_list.html b/templates/admin/country/country_list.html index 1f920ce7..4ef63404 100644 --- a/templates/admin/country/country_list.html +++ b/templates/admin/country/country_list.html @@ -13,7 +13,6 @@
-
@@ -54,4 +53,4 @@
{% include 'admin/includes/admin_pagination.html' with page_obj=object_list %}
-{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/templates/admin/expobanner/comment_create.html b/templates/admin/expobanner/comment_create.html new file mode 100644 index 00000000..762dba22 --- /dev/null +++ b/templates/admin/expobanner/comment_create.html @@ -0,0 +1,38 @@ +{% extends 'base.html' %} +{% load static %} + +{% block body %} +
{% csrf_token %} +
+
+
+

{{ form.verbose }}

+
+
+ {# name #} + {% include 'admin/forms/multilang.html' with field='name' form=form languages=languages %} + + {# position #} + {% include 'admin/forms/multilang.html' with field='position' form=form languages=languages %} + + {# text #} + {% include 'admin/forms/multilang.html' with field='text' form=form languages=languages %} + + {# logo #} +
+ +
{{ form.logo }} + {{ form.logo.errors }} +
+
+ +
+
+
+ +
+ + +
+
+{% endblock %} diff --git a/templates/admin/expobanner/comment_list.html b/templates/admin/expobanner/comment_list.html new file mode 100644 index 00000000..d8b7e323 --- /dev/null +++ b/templates/admin/expobanner/comment_list.html @@ -0,0 +1,36 @@ +{% extends 'base.html' %} + +{% block body %} +
+
+

Список комментариев

+
+
+ {% block list_table %} + Добавить комментарий + + + + + + + + + + + {% for item in object_list %} + + + + + + + {% endfor %} + +
ИмяДолжность  
{{ item }}{{ item.position }}ИзменитьУдалить
+ {% endblock %} +
+ {# pagination #} + {% include 'admin/includes/admin_pagination.html' with page_obj=page_obj %} +
+{% endblock %} diff --git a/templates/admin/includes/admin_nav.html b/templates/admin/includes/admin_nav.html index 4cc79ce8..a7eb0250 100644 --- a/templates/admin/includes/admin_nav.html +++ b/templates/admin/includes/admin_nav.html @@ -106,6 +106,7 @@
  • Выставки на главной
  • Конференции на главной
  • Блок на главной
  • +
  • Комментарии на /advertising/
  • @@ -122,4 +123,4 @@
    -
    \ No newline at end of file + diff --git a/templates/client/includes/services.html b/templates/client/includes/services.html index de96a1b5..5e513283 100644 --- a/templates/client/includes/services.html +++ b/templates/client/includes/services.html @@ -9,4 +9,4 @@
  • {% trans 'Участие в выставках' %}
  • - \ No newline at end of file + diff --git a/templates/client/simple_pages/advertising_landing.html b/templates/client/simple_pages/advertising_landing.html new file mode 100644 index 00000000..2b897173 --- /dev/null +++ b/templates/client/simple_pages/advertising_landing.html @@ -0,0 +1,439 @@ +{% load static %} +{% load i18n %} +{% load template_filters %} +{% load thumbnail %} +{% get_current_language as LANGUAGE_CODE %} + + + + + {% include 'client/includes/meta.html' %} + + + + + + + + + + + +
    +
    +
    + +

    + 7 (499) 999-12-07

    +
    + +

    + {{ meta.h1|default:'Привлекаем правильную аудиторию
    на Ваши события' }} +

    + +

    + {% trans "Хотите увеличить поток посетителей и участников на Ваши события? Используйте аудиторию портала Expomap, самого посещаемого интернет-ресурса о выставках и конференциях в России и СНГ!" %} +

    + + + +
    + +
    + +
    +
    +

    + {% trans "Качество и количество аудитории влияют на эффективность" %} +

    +
    + +
    + +
    +
    +
    +
    + + + +

    {% trans "Портрет наших посетителей" %}

    +
    + +
    + + + +

    {% trans "Посещаемость
    в месяц:" %}

    +
    + +
    + + + +

    {% trans "Просмотры страниц:" %}

    +
    + +
    + + + +

    {% trans "Источники трафика:" %}

    +
    + +
    + +
    + +
    +
    +
    +

    {% trans "Средний возраст – 25-45 лет" %}

    +

    {% trans "Пол – муж./жен. (48,5%/51,5%)" %}

    +

    + {% trans "Профессиональная деятельность:" %} {% trans "руководители, собственники," %}
    + {% trans "маркетологи, технические специалисты" %} +

    +

    + {% trans "Интересы:" %}
    + {% trans "бизнес, туризм, недвижимость," %}
    + {% trans "обустройство, финансы, здоровье" %}
    + {% trans "и красота" %} +

    +
    + +
    +

    + {% trans "более" %} + 210 000 + {% trans "визитов" %}* +

    +
    + +
    +

    + {% trans "более" %} + 600 000 + {% trans "просмотров" %}* +

    +
    + +
    +

    {% trans "Поисковые системы" %}

    +

    {% trans "Прямые заходы" %}

    +

    {% trans "Переходы с почтовых рассылок" %}

    +

    {% trans "Сайты-партнеры" %}

    +

    {% trans "Социальные сети" %}

    +
    + +
    + +
    + +
    +

    * {% trans "по данным Яндекс Метрики за 1 – 29 февраля 2016 г." %}

    +
    + +
    + +
    + +

    {% trans "Рекламные инструменты бывают разные" %}

    +
      +
    • {% trans "Медийная реклама" %}
    • +
    • {% trans "Рассылки" %}
    • +
    • {% trans "Имидж-страница события" %}
    • +
    • {% trans "Приоритетная выдача в каталоге" %}
    • +
    • {% trans "Реклама в социальных сетях" %}
    • +
    • {% trans "Видеореклама на главной" %}
    • +
    • {% trans "Размещение новостей-статей" %}
    • +
    • {% trans "Спецпроекты" %}
    • +
    + + + +
    + +
    +
    +

    {% trans "Как мы работаем с рекламодателями" %}

    + +
    +
    + + + 01 + + +

    + {% trans "Получаем входящую" %}
    + {% trans "информацию" %} +

    + +

    + ({% trans "цели, задачи, аудитория, период," %}
    {% trans "ограничения, бюджет" %}) +

    + +
    + +
    + + + 02 + + +

    + {% trans "Анализируем целевую" %}
    + {% trans "аудиторию" %} +

    + +

    + ({% trans "портрет, интересы, мотивация" %}) +

    + +
    + +
    + + + 03 + + +

    + {% trans "Составляем список" %}
    + {% trans "инструментов и календарный" %}
    + {% trans "план" %} +

    + +

    + ({% trans "только подходящие инструменты" %}
    {% trans "для данной ЦА" %}) +

    + +
    + +
    + + + 04 + + +

    + {% trans "Согласовываем" %}
    + {% trans "и утверждаем рекламную" %}
    + {% trans "кампанию с организатором" %} +

    + +
    + +
    + + + 07 + + +

    + {% trans "Делаем подробный отчет" %}
    + {% trans "по итогам рекламной" %}
    + {% trans "кампании" %} +

    + +
    + +
    + + + 06 + + +

    + {% trans "Запускаем и контролируем" %}
    {% trans "кампанию, в случае" %}
    + {% trans "необходимости заменяем" %}
    {% trans "инструменты" %} +

    + +
    + +
    + + + 05 + + +

    + {% trans "Создаем эффективные" %}
    + {% trans "рекламные носители" %} +

    + +

    + ({% trans "сообщения, тексты, баннеры" %},
    + {% trans "письма и др." %}) +

    + +
    + +
    + +

    + {% trans "Только индивидуальный и системный подход приносит результат!" %} +

    + + + +
    + +
    + +
    +

    {% trans "Волнуетесь о бюджете?" %}

    +

    + {% trans "Мы всегда учитываем Ваши возможности и стараемся" %} + {% trans "подобрать максимально работающие инструменты" %}
    + {% trans "под бюджет рекламодателя. Если есть возможность, мы + с радостью дарим подарки и бонусы!" %} +

    + +

    {% trans "Ваш бюджет:" %}

    + +
    +
    +

    {% trans "12 000 – 20 000 руб." %}

    +
    + і +
    + {% trans "Закажите имидж-страницу события и размещение в ТОП нужной Вам тематики, чтобы перенаправить потенциальных участников и посетителей на Ваш сайт" %} +
    + +
    + +
    + +
    +

    {% trans "20 000 – 40 000 руб." %}

    +
    + і +
    + {% trans "Используйте серию рассылок по подписчикам в совокупности с имиджевой страницей и баннерной рекламой с таргетом на Вашу целевую аудиторию" %} +
    + +
    + +
    + +
    +

    {% trans "40 000 руб. и более" %}

    +
    + і +
    + {% trans "Создайте с нашим маркетологом персональный медиаплан на проект и используйте любые рекламные инструменты со скидкой 35%" %} +
    + +
    + +
    + +
    + +
    + +
    +
    +

    {% trans "Если рекламодатели довольны, значит все было не зря!" %}

    +

    {% trans "Что говорят про нас наши клиенты?" %}

    + +
      + {% for comment in comments %} + {% if forloop.first %} +
    • + {% endif %} + +
      +

      + {{ comment.text }} +

      + + img + +
      +

      {{ comment.name }}

      +

      {{ comment.position }}

      +
      + +
      + + {% if forloop.last %} +
    • + {% elif forloop.counter|divisibleby:"3" %} +
    • + {% endif %} + + {% endfor %} +
    + +
    + + + + +
    + +
    + +
    + +
    +
    +

    {% trans "Не знаете, как оценить эффективность?" %}

    +

    + {% trans "Почитайте нашу" %} + {% trans "статью об измерении качества площадки" %}. +

    + + + +
    + +
    + +
    + +
    + +
    + + + + + + +