diff --git a/config/settings.py b/config/settings.py
index b2d9e57..df967cb 100755
--- a/config/settings.py
+++ b/config/settings.py
@@ -39,6 +39,7 @@ INSTALLED_APPS = [
'django.contrib.messages',
'django.contrib.staticfiles',
'widget_tweaks',
+ 'django_cleanup'
]
MIDDLEWARE = [
@@ -123,3 +124,10 @@ STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, "static"),
]
+
+CRISPY_TEMPLATE_PACK = 'bootstrap4'
+
+MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
+MEDIA_URL = '/media/'
+
+PROJECT_PATH = os.path.abspath(os.path.dirname(__name__))
\ No newline at end of file
diff --git a/config/urls.py b/config/urls.py
index 9acc569..bcfeb4c 100755
--- a/config/urls.py
+++ b/config/urls.py
@@ -15,9 +15,13 @@ Including another URLconf
"""
from django.contrib import admin
from django.urls import path, include
+from django.conf.urls.static import static
+from django.conf import settings
urlpatterns = [
+ path ('admin/', admin.site.urls),
path ('', include('homepage.urls')),
- path ('admin/', include('admin.urls')),
- path( 'adminpanel/', admin.site.urls),
]
+
+if settings.DEBUG:
+ urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
\ No newline at end of file
diff --git a/homepage/admin.py b/homepage/admin.py
index 5c9c3a9..4d2bab4 100755
--- a/homepage/admin.py
+++ b/homepage/admin.py
@@ -1,7 +1,8 @@
from django.contrib import admin
-from .models import Poll, Answer
+from .models import Poll, Answer, Location
# Register your models here.
+admin.site.register(Location)
admin.site.register(Poll)
admin.site.register(Answer)
\ No newline at end of file
diff --git a/homepage/forms.py b/homepage/forms.py
index 3655db6..a55987a 100644
--- a/homepage/forms.py
+++ b/homepage/forms.py
@@ -1,16 +1,16 @@
-from django import forms
-from django.contrib.auth.models import User
-import re
-from .models import Answer, EMOTION_CHOICES
-
-class PollForm(forms.ModelForm):
- hi = forms.CharField(max_length=200, required=True)
- lo = forms.CharField(max_length=200, required=True)
- emotion = forms.ChoiceField(widget=forms.RadioSelect, choices=EMOTION_CHOICES, required=True)
- name = forms.CharField(max_length=100)
- place = forms.CharField(max_length=100)
- question = forms.CharField(max_length=200)
-
- class Meta:
- model = Answer
+from django import forms
+from django.contrib.auth.models import User
+import re
+from .models import Answer, EMOTION_CHOICES
+
+class PollForm(forms.ModelForm):
+ hi = forms.CharField(max_length=200, required=True)
+ lo = forms.CharField(max_length=200, required=True)
+ emotion = forms.ChoiceField(widget=forms.RadioSelect, choices=EMOTION_CHOICES, required=True)
+ name = forms.CharField(max_length=100)
+ place = forms.CharField(max_length=100)
+ question = forms.CharField(max_length=200)
+
+ class Meta:
+ model = Answer
fields = ['hi', 'lo', 'emotion', 'name', 'place', 'question']
\ No newline at end of file
diff --git a/homepage/migrations/0001_initial.py b/homepage/migrations/0001_initial.py
index 66eef4e..b2996b4 100755
--- a/homepage/migrations/0001_initial.py
+++ b/homepage/migrations/0001_initial.py
@@ -1,4 +1,4 @@
-# Generated by Django 3.0.8 on 2020-08-25 21:41
+# Generated by Django 3.1 on 2020-08-26 17:28
from django.db import migrations, models
import django.db.models.deletion
@@ -12,23 +12,31 @@ class Migration(migrations.Migration):
]
operations = [
+ migrations.CreateModel(
+ name='Location',
+ fields=[
+ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+ ('name', models.CharField(blank=True, max_length=20, null=True)),
+ ],
+ ),
migrations.CreateModel(
name='Poll',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
- ('askHi', models.BooleanField(default=True)),
- ('HiText', models.CharField(blank=True, max_length=50, null=True)),
- ('askLo', models.BooleanField(default=True)),
- ('LoText', models.CharField(blank=True, max_length=50, null=True)),
- ('askEmotion', models.BooleanField(default=True)),
- ('EmotionText', models.CharField(blank=True, max_length=50, null=True)),
- ('askName', models.BooleanField(default=True)),
- ('NameText', models.CharField(blank=True, max_length=50, null=True)),
- ('askPlace', models.BooleanField(default=True)),
- ('PlaceText', models.CharField(blank=True, max_length=50, null=True)),
- ('askQuestion', models.BooleanField(default=True)),
- ('QuestionText', models.CharField(blank=True, max_length=50, null=True)),
+ ('ask_hi', models.BooleanField(default=True)),
+ ('hi_text', models.CharField(blank=True, max_length=50, null=True)),
+ ('ask_lo', models.BooleanField(default=True)),
+ ('lo_text', models.CharField(blank=True, max_length=50, null=True)),
+ ('ask_emotion', models.BooleanField(default=True)),
+ ('emotion_text', models.CharField(blank=True, max_length=50, null=True)),
+ ('ask_name', models.BooleanField(default=True)),
+ ('name_text', models.CharField(blank=True, max_length=50, null=True)),
+ ('ask_place', models.BooleanField(default=True)),
+ ('place_text', models.CharField(blank=True, max_length=50, null=True)),
+ ('ask_question', models.BooleanField(default=False)),
+ ('question_text', models.CharField(blank=True, max_length=50, null=True)),
('pub_date', models.DateTimeField(verbose_name='date published')),
+ ('location', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='homepage.location')),
],
),
migrations.CreateModel(
@@ -37,9 +45,11 @@ class Migration(migrations.Migration):
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('hi', models.CharField(blank=True, max_length=200, null=True)),
('lo', models.CharField(blank=True, max_length=200, null=True)),
- ('name', models.CharField(blank=True, max_length=200, null=True)),
- ('place', models.CharField(blank=True, max_length=200, null=True)),
- ('poll', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='homepage.Poll')),
+ ('emotion', models.CharField(blank=True, choices=[('happy', 'Happy'), ('meh', 'Meh'), ('sad', 'Sad')], default='meh', max_length=8, null=True)),
+ ('name', models.CharField(blank=True, max_length=100, null=True)),
+ ('place', models.CharField(blank=True, max_length=100, null=True)),
+ ('question', models.CharField(blank=True, max_length=200, null=True)),
+ ('poll', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='homepage.poll')),
],
),
]
diff --git a/homepage/migrations/0002_answer_emotion.py b/homepage/migrations/0002_answer_emotion.py
deleted file mode 100644
index 2d88d93..0000000
--- a/homepage/migrations/0002_answer_emotion.py
+++ /dev/null
@@ -1,18 +0,0 @@
-# Generated by Django 3.0.8 on 2020-08-25 21:41
-
-from django.db import migrations, models
-
-
-class Migration(migrations.Migration):
-
- dependencies = [
- ('homepage', '0001_initial'),
- ]
-
- operations = [
- migrations.AddField(
- model_name='answer',
- name='emotion',
- field=models.CharField(blank=True, max_length=200, null=True),
- ),
- ]
diff --git a/homepage/migrations/0002_auto_20200826_1732.py b/homepage/migrations/0002_auto_20200826_1732.py
new file mode 100644
index 0000000..137a8d5
--- /dev/null
+++ b/homepage/migrations/0002_auto_20200826_1732.py
@@ -0,0 +1,38 @@
+# Generated by Django 3.1 on 2020-08-26 17:32
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('homepage', '0001_initial'),
+ ]
+
+ operations = [
+ migrations.AlterField(
+ model_name='poll',
+ name='emotion_text',
+ field=models.CharField(blank=True, default='how are you feeling today?', max_length=50, null=True),
+ ),
+ migrations.AlterField(
+ model_name='poll',
+ name='hi_text',
+ field=models.CharField(blank=True, default='What was the Hi of this we', max_length=50, null=True),
+ ),
+ migrations.AlterField(
+ model_name='poll',
+ name='lo_text',
+ field=models.CharField(blank=True, default='What was the Lo of this we', max_length=50, null=True),
+ ),
+ migrations.AlterField(
+ model_name='poll',
+ name='name_text',
+ field=models.CharField(blank=True, default="what's your name?", max_length=50, null=True),
+ ),
+ migrations.AlterField(
+ model_name='poll',
+ name='place_text',
+ field=models.CharField(blank=True, default='where are you from?', max_length=50, null=True),
+ ),
+ ]
diff --git a/homepage/migrations/0003_auto_20200825_2220.py b/homepage/migrations/0003_auto_20200825_2220.py
deleted file mode 100644
index 5c1d510..0000000
--- a/homepage/migrations/0003_auto_20200825_2220.py
+++ /dev/null
@@ -1,18 +0,0 @@
-# Generated by Django 3.0.8 on 2020-08-25 22:20
-
-from django.db import migrations, models
-
-
-class Migration(migrations.Migration):
-
- dependencies = [
- ('homepage', '0002_answer_emotion'),
- ]
-
- operations = [
- migrations.AlterField(
- model_name='answer',
- name='emotion',
- field=models.CharField(blank=True, choices=[('happy', 'Happy'), ('meh', 'Meh'), ('sad', 'Sad')], default='meh', max_length=8, null=True),
- ),
- ]
diff --git a/homepage/migrations/0003_auto_20200826_1738.py b/homepage/migrations/0003_auto_20200826_1738.py
new file mode 100644
index 0000000..dd45b08
--- /dev/null
+++ b/homepage/migrations/0003_auto_20200826_1738.py
@@ -0,0 +1,19 @@
+# Generated by Django 3.1 on 2020-08-26 17:38
+
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('homepage', '0002_auto_20200826_1732'),
+ ]
+
+ operations = [
+ migrations.AlterField(
+ model_name='poll',
+ name='location',
+ field=models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to='homepage.location'),
+ ),
+ ]
diff --git a/homepage/migrations/0004_auto_20200825_2233.py b/homepage/migrations/0004_auto_20200825_2233.py
deleted file mode 100644
index ff74e51..0000000
--- a/homepage/migrations/0004_auto_20200825_2233.py
+++ /dev/null
@@ -1,73 +0,0 @@
-# Generated by Django 3.0.8 on 2020-08-25 22:33
-
-from django.db import migrations
-
-
-class Migration(migrations.Migration):
-
- dependencies = [
- ('homepage', '0003_auto_20200825_2220'),
- ]
-
- operations = [
- migrations.RenameField(
- model_name='poll',
- old_name='askEmotion',
- new_name='ask_emotion',
- ),
- migrations.RenameField(
- model_name='poll',
- old_name='askHi',
- new_name='ask_hi',
- ),
- migrations.RenameField(
- model_name='poll',
- old_name='askLo',
- new_name='ask_lo',
- ),
- migrations.RenameField(
- model_name='poll',
- old_name='askName',
- new_name='ask_name',
- ),
- migrations.RenameField(
- model_name='poll',
- old_name='askPlace',
- new_name='ask_place',
- ),
- migrations.RenameField(
- model_name='poll',
- old_name='askQuestion',
- new_name='ask_question',
- ),
- migrations.RenameField(
- model_name='poll',
- old_name='EmotionText',
- new_name='emotion_text',
- ),
- migrations.RenameField(
- model_name='poll',
- old_name='HiText',
- new_name='hi_text',
- ),
- migrations.RenameField(
- model_name='poll',
- old_name='LoText',
- new_name='lo_text',
- ),
- migrations.RenameField(
- model_name='poll',
- old_name='NameText',
- new_name='name_text',
- ),
- migrations.RenameField(
- model_name='poll',
- old_name='PlaceText',
- new_name='place_text',
- ),
- migrations.RenameField(
- model_name='poll',
- old_name='QuestionText',
- new_name='question_text',
- ),
- ]
diff --git a/homepage/migrations/0004_auto_20200826_1831.py b/homepage/migrations/0004_auto_20200826_1831.py
new file mode 100644
index 0000000..876951e
--- /dev/null
+++ b/homepage/migrations/0004_auto_20200826_1831.py
@@ -0,0 +1,23 @@
+# Generated by Django 3.1 on 2020-08-26 18:31
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('homepage', '0003_auto_20200826_1738'),
+ ]
+
+ operations = [
+ migrations.AddField(
+ model_name='location',
+ name='hero',
+ field=models.ImageField(default='hero.png', upload_to='heros'),
+ ),
+ migrations.AddField(
+ model_name='location',
+ name='slug',
+ field=models.CharField(blank=True, max_length=20, null=True),
+ ),
+ ]
diff --git a/homepage/migrations/0005_auto_20200826_1843.py b/homepage/migrations/0005_auto_20200826_1843.py
new file mode 100644
index 0000000..c136986
--- /dev/null
+++ b/homepage/migrations/0005_auto_20200826_1843.py
@@ -0,0 +1,18 @@
+# Generated by Django 3.1 on 2020-08-26 18:43
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('homepage', '0004_auto_20200826_1831'),
+ ]
+
+ operations = [
+ migrations.AlterField(
+ model_name='location',
+ name='hero',
+ field=models.ImageField(default='hero.png', upload_to='heros/-hero.png'),
+ ),
+ ]
diff --git a/homepage/migrations/0006_auto_20200826_1858.py b/homepage/migrations/0006_auto_20200826_1858.py
new file mode 100644
index 0000000..0d471b7
--- /dev/null
+++ b/homepage/migrations/0006_auto_20200826_1858.py
@@ -0,0 +1,18 @@
+# Generated by Django 3.1 on 2020-08-26 18:58
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('homepage', '0005_auto_20200826_1843'),
+ ]
+
+ operations = [
+ migrations.AlterField(
+ model_name='location',
+ name='hero',
+ field=models.ImageField(default='hero.png', upload_to='heros'),
+ ),
+ ]
diff --git a/homepage/migrations/0007_location_hero_mobile.py b/homepage/migrations/0007_location_hero_mobile.py
new file mode 100644
index 0000000..80f425a
--- /dev/null
+++ b/homepage/migrations/0007_location_hero_mobile.py
@@ -0,0 +1,18 @@
+# Generated by Django 3.1 on 2020-08-26 19:20
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('homepage', '0006_auto_20200826_1858'),
+ ]
+
+ operations = [
+ migrations.AddField(
+ model_name='location',
+ name='hero_mobile',
+ field=models.ImageField(default='hero-mobile.png', upload_to='heros'),
+ ),
+ ]
diff --git a/homepage/models.py b/homepage/models.py
index 6b775c4..aeef0a8 100755
--- a/homepage/models.py
+++ b/homepage/models.py
@@ -1,22 +1,67 @@
from django.db import models
+import os
+
+from django.core.files import File
+
+from django.conf import settings
+from django.templatetags.static import static
+from django.utils.text import slugify
+
+from PIL import Image, ImageDraw, ImageFont
+
# Create your models here.
+class Location (models.Model):
+ name = models.CharField(max_length=20, blank=True, null=True)
+ slug = models.CharField(max_length=20, blank=True, null=True)
+
+ hero = models.ImageField(default="hero.png", upload_to='heros')
+ hero_mobile = models.ImageField(default="hero-mobile.png", upload_to='heros')
+
+ def __str__(self):
+ return self.name
+
+ def save(self, *args, **kwargs):
+ self.slug = slugify(self.name)
+ self.hero = f'heros/hero-{self.slug}.png'
+ self.hero_mobile = f'heros/hero-{self.slug}-mobile.png'
+ super().save(*args, **kwargs)
+
+ output = f'{settings.PROJECT_PATH}/media/heros/hero-{self.slug}.png'
+ mobile_output = f'{settings.PROJECT_PATH}/media/heros/hero-{self.slug}-mobile.png'
+
+ img = Image.open(settings.PROJECT_PATH + static("css/res/hero.png"))
+ draw = ImageDraw.Draw(img)
+ font = ImageFont.truetype(settings.PROJECT_PATH + static("css/fonts/Shorelines-Script-Bold.otf"), 80)
+ draw.text((1050,450), self.slug, (255,255,255), font=font)
+ img.save(output)
+
+ img = Image.open(settings.PROJECT_PATH + static("css/res/hero-mobile.png"))
+ draw = ImageDraw.Draw(img)
+ font = ImageFont.truetype(settings.PROJECT_PATH + static("css/fonts/Shorelines-Script-Bold.otf"), 80)
+ draw.text((420,860), self.slug, (255,255,255), font=font)
+ img.save(mobile_output)
+
+
+
class Poll (models.Model):
+ location = models.OneToOneField(Location, on_delete=models.CASCADE)
+
ask_hi = models.BooleanField(default=True)
- hi_text = models.CharField(max_length=50, blank=True, null=True)
+ hi_text = models.CharField(max_length=50, blank=True, null=True, default='What was the Hi of this we')
ask_lo = models.BooleanField(default=True)
- lo_text = models.CharField(max_length=50, blank=True, null=True)
+ lo_text = models.CharField(max_length=50, blank=True, null=True, default='What was the Lo of this we')
ask_emotion = models.BooleanField(default=True)
- emotion_text = models.CharField(max_length=50, blank=True, null=True)
+ emotion_text = models.CharField(max_length=50, blank=True, null=True, default="how are you feeling today?")
ask_name = models.BooleanField(default=True)
- name_text = models.CharField(max_length=50, blank=True, null=True)
+ name_text = models.CharField(max_length=50, blank=True, null=True, default="what's your name?")
ask_place = models.BooleanField(default=True)
- place_text = models.CharField(max_length=50, blank=True, null=True)
+ place_text = models.CharField(max_length=50, blank=True, null=True, default="where are you from?")
ask_question = models.BooleanField(default=False)
question_text = models.CharField(max_length=50, blank=True, null=True)
@@ -24,7 +69,7 @@ class Poll (models.Model):
pub_date = models.DateTimeField('date published')
def __str__(self):
- return 'Current Poll'
+ return f"{self.location.name}'s Poll"
diff --git a/homepage/templates/homepage/base.html b/homepage/templates/homepage/base.html
index 0d701d9..25a0368 100644
--- a/homepage/templates/homepage/base.html
+++ b/homepage/templates/homepage/base.html
@@ -1,38 +1,38 @@
-{% load static %}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- HiLo Arlington
-
-
-
-
-
- {% block content %}{% endblock content %}
-
-
-
-
-
-
+{% load static %}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ HiLo Arlington
+
+
+
+
+
+ {% block content %}{% endblock content %}
+
+
+
+
+
+
diff --git a/homepage/templates/homepage/finish.html b/homepage/templates/homepage/finish.html
index 9fc8b37..e8fc68c 100644
--- a/homepage/templates/homepage/finish.html
+++ b/homepage/templates/homepage/finish.html
@@ -1,5 +1,5 @@
-{% extends 'homepage/base.html' %}
-{% load static %}
-
-{% block content %}
+{% extends 'homepage/base.html' %}
+{% load static %}
+
+{% block content %}
{% enblock %}
\ No newline at end of file
diff --git a/homepage/urls.py b/homepage/urls.py
index f8aeec5..d4e6659 100755
--- a/homepage/urls.py
+++ b/homepage/urls.py
@@ -3,5 +3,6 @@ from . import views
urlpatterns = [
path ('', views.homepage, name="homepage"),
+ path ('/', views.homepage),
path ('finish/', views.finish, name="finish")
]
diff --git a/homepage/views.py b/homepage/views.py
index 8dc59ec..aeb72dd 100755
--- a/homepage/views.py
+++ b/homepage/views.py
@@ -1,14 +1,20 @@
from django.shortcuts import render, redirect
from django.contrib import messages
from django.shortcuts import get_object_or_404
+from django.http import HttpResponseNotFound
from .forms import PollForm
-from .models import Poll
+from .models import Poll, Location
# Create your views here.
-def homepage (request):
- poll = get_object_or_404(Poll)
+def homepage (request, slug="arlington"):
+ location = get_object_or_404(Location, slug=slug)
+
+ try:
+ poll = location.poll
+ except:
+ return HttpResponseNotFound(f'404: No poll was found for {location}!')
if poll.ask_hi:
hi_text = poll.hi_text
@@ -69,4 +75,5 @@ def homepage (request):
return render(request, 'homepage/index.html', context=context)
def finish (request):
- pass
\ No newline at end of file
+ pass
+
diff --git a/requirements.txt b/requirements.txt
index 57c44ad..1b78930 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,6 +1,6 @@
-argparse
-django
-django-widget-tweaks
-pip-chill
-python
-wsgiref
+argparse==1.4.0
+django==3.1
+django-cleanup==5.0.0
+django-widget-tweaks==1.4.8
+pillow==7.2.0
+pip-chill==1.0.0
diff --git a/static/css/fonts/Shorelines-Script-Bold.otf b/static/css/fonts/Shorelines-Script-Bold.otf
new file mode 100644
index 0000000..9e34462
Binary files /dev/null and b/static/css/fonts/Shorelines-Script-Bold.otf differ
diff --git a/static/css/res/Shorelines-Script-Bold.otf b/static/css/res/Shorelines-Script-Bold.otf
new file mode 100644
index 0000000..9e34462
Binary files /dev/null and b/static/css/res/Shorelines-Script-Bold.otf differ
diff --git a/static/css/res/hero-mobile.png b/static/css/res/hero-mobile.png
index 8cf2343..3838451 100755
Binary files a/static/css/res/hero-mobile.png and b/static/css/res/hero-mobile.png differ
diff --git a/static/css/res/hero.png b/static/css/res/hero.png
index 68b7ee7..d8e3fcb 100755
Binary files a/static/css/res/hero.png and b/static/css/res/hero.png differ
diff --git a/static/css/res/hilo-hero.png b/static/css/res/hilo-hero.png
deleted file mode 100644
index d8e3fcb..0000000
Binary files a/static/css/res/hilo-hero.png and /dev/null differ
diff --git a/static/css/res/wys-hero-mobile.png b/static/css/res/wys-hero-mobile.png
new file mode 100644
index 0000000..8cf2343
Binary files /dev/null and b/static/css/res/wys-hero-mobile.png differ
diff --git a/static/css/res/wys-hero.png b/static/css/res/wys-hero.png
new file mode 100644
index 0000000..68b7ee7
Binary files /dev/null and b/static/css/res/wys-hero.png differ
diff --git a/static/css/styles.css b/static/css/styles.css
index 4488a8e..fa72606 100644
--- a/static/css/styles.css
+++ b/static/css/styles.css
@@ -1,179 +1,179 @@
-@charset "UTF-8";
-@font-face {
- src: url("./fonts/Hanson-Bold.ttf");
- font-family: "Hanson-Bold"; }
-@font-face {
- src: url("./fonts/WildYouth-Regular.otf");
- font-family: "WildYouth"; }
-@font-face {
- src: url("./fonts/FuturaPTMedium.otf");
- font-family: "Futura";
- font-weight: normal;
- font-style: normal; }
-@font-face {
- src: url("./fonts/FuturaPTLight.otf");
- font-family: "Futura-Light"; }
-@font-face {
- src: url("./fonts/FuturaPTHeavy.otf");
- font-family: "Futura-Heavy"; }
-html {
- background-color: #333;
- font-family: "Hanson-Bold", "Arial", sans-serif;
- overflow-x: none; }
-
-body {
- overflow-y: scroll;
- /* Keep scroll functionality */
- -ms-overflow-style: none;
- /* IE and Edge */
- scrollbar-width: none;
- /* Firefox */ }
-
-body::-webkit-scrollbar {
- display: none; }
-
-.hero {
- color: #333 !important;
- background-color: #333 !important;
- background-image: url("res/hilo-hero-text.png");
- background-position: center;
- background-repeat: no-repeat;
- background-size: cover;
- background-attachment: fixed; }
- @media (max-width: 768px) {
- .hero {
- background-image: url("res/hilo-hero-text-mobile.png"); } }
-
-.arrow {
- cursor: pointer;
- width: 70px;
- margin: 0 auto;
- margin-top: 70vh;
- height: 100px; }
-
-.arrow:after {
- content: "";
- margin-top: 70vh;
- width: 70px;
- height: 100px;
- position: absolute;
- background-image: url("res/arrow.svg");
- background-size: cover;
- background-repeat: no-repeat;
- -webkit-animation: 3s infinite ease;
- animation: 3s infinite ease;
- animation-name: การเคลื่อนไหวที่-1; }
-@keyframes การเคลื่อนไหวที่-1 {
- 0%,
- 100% {
- top: 50px; }
- 50% {
- top: 80px; } }
-.vh-25 {
- height: 25vh; }
-
-.vh-50 {
- height: 50vh; }
-
-.banner {
- color: white;
- background-image: url("res/banner.png");
- background-position: center;
- background-repeat: no-repeat;
- background-size: cover;
- background-attachment: fixed; }
-
-.info-col {
- background-color: #fff; }
-
-.info-header {
- color: white;
- font-family: "Hanson-Bold", "Arial", sans-serif;
- text-stroke: 3px #305899;
- -webkit-text-stroke: 3px #305899; }
- @media (max-width: 768px) {
- .info-header {
- font-size: 1.25em;
- text-stroke: 2px #305899;
- -webkit-text-stroke: 2px #305899; } }
-
-.info {
- font-size: .8em;
- color: #2b5291;
- font-family: "Hanson-Bold", "Arial", sans-serif; }
- @media (max-width: 768px) {
- .info {
- font-size: .75em; } }
-
-#insta-section {
- background-color: #333; }
-
-.bg-colored:before {
- right: -999em;
- background: #0b3b52;
- content: '';
- display: block;
- position: absolute;
- width: 999em;
- top: 0;
- bottom: 0; }
-
-.poll {
- color: white;
- background-image: url("res/gradient-mobile.png");
- background-position: center;
- background-repeat: no-repeat;
- background-size: cover;
- background-attachment: fixed;
- font-family: "Hanson-Bold", "Arial", sans-serif;
- font-weight: lighter;
- font-size: .75em; }
- @media (max-width: 768px) {
- .poll {
- background-image: url("res/gradient-mobile.png"); } }
-
-.short-answer {
- font-size: 1.2em; }
-
-.title {
- color: #42b8c7;
- font-size: 1.45em; }
-
-.subtitle {
- color: #42b8c7;
- font-size: 1.15em; }
-
-label {
- font-size: 1.25em; }
-
-.emote img {
- width: 25vw;
- height: auto; }
-
-.btn {
- color: #2b5291;
- border-image-repeat: none; }
-
-.hi {
- color: #48B93E;
- font-family: "WildYouth", "Hanson-Bold", "Arial", sans-serif; }
-
-.lo {
- color: #E34848;
- font-family: "WildYouth", "Hanson-Bold", "Arial", sans-serif; }
-
-[type=radio] {
- position: absolute;
- opacity: 0;
- width: 0;
- height: 0; }
-
-/* IMAGE STYLES */
-[type=radio] + img {
- cursor: pointer; }
-
-/* CHECKED STYLES */
-[type=radio]:checked + img {
- outline: 2px solid #2b5291; }
-
-/*# sourceMappingURL=styles.css.map */
+@charset "UTF-8";
+@font-face {
+ src: url("./fonts/Hanson-Bold.ttf");
+ font-family: "Hanson-Bold"; }
+@font-face {
+ src: url("./fonts/WildYouth-Regular.otf");
+ font-family: "WildYouth"; }
+@font-face {
+ src: url("./fonts/FuturaPTMedium.otf");
+ font-family: "Futura";
+ font-weight: normal;
+ font-style: normal; }
+@font-face {
+ src: url("./fonts/FuturaPTLight.otf");
+ font-family: "Futura-Light"; }
+@font-face {
+ src: url("./fonts/FuturaPTHeavy.otf");
+ font-family: "Futura-Heavy"; }
+html {
+ background-color: #333;
+ font-family: "Hanson-Bold", "Arial", sans-serif;
+ overflow-x: none; }
+
+body {
+ overflow-y: scroll;
+ /* Keep scroll functionality */
+ -ms-overflow-style: none;
+ /* IE and Edge */
+ scrollbar-width: none;
+ /* Firefox */ }
+
+body::-webkit-scrollbar {
+ display: none; }
+
+.hero {
+ color: #333 !important;
+ background-color: #333 !important;
+ background-image: url("res/hilo-hero-text.png");
+ background-position: center;
+ background-repeat: no-repeat;
+ background-size: cover;
+ background-attachment: fixed; }
+ @media (max-width: 768px) {
+ .hero {
+ background-image: url("res/hilo-hero-text-mobile.png"); } }
+
+.arrow {
+ cursor: pointer;
+ width: 70px;
+ margin: 0 auto;
+ margin-top: 70vh;
+ height: 100px; }
+
+.arrow:after {
+ content: "";
+ margin-top: 70vh;
+ width: 70px;
+ height: 100px;
+ position: absolute;
+ background-image: url("res/arrow.svg");
+ background-size: cover;
+ background-repeat: no-repeat;
+ -webkit-animation: 3s infinite ease;
+ animation: 3s infinite ease;
+ animation-name: การเคลื่อนไหวที่-1; }
+@keyframes การเคลื่อนไหวที่-1 {
+ 0%,
+ 100% {
+ top: 50px; }
+ 50% {
+ top: 80px; } }
+.vh-25 {
+ height: 25vh; }
+
+.vh-50 {
+ height: 50vh; }
+
+.banner {
+ color: white;
+ background-image: url("res/banner.png");
+ background-position: center;
+ background-repeat: no-repeat;
+ background-size: cover;
+ background-attachment: fixed; }
+
+.info-col {
+ background-color: #fff; }
+
+.info-header {
+ color: white;
+ font-family: "Hanson-Bold", "Arial", sans-serif;
+ text-stroke: 3px #305899;
+ -webkit-text-stroke: 3px #305899; }
+ @media (max-width: 768px) {
+ .info-header {
+ font-size: 1.25em;
+ text-stroke: 2px #305899;
+ -webkit-text-stroke: 2px #305899; } }
+
+.info {
+ font-size: .8em;
+ color: #2b5291;
+ font-family: "Hanson-Bold", "Arial", sans-serif; }
+ @media (max-width: 768px) {
+ .info {
+ font-size: .75em; } }
+
+#insta-section {
+ background-color: #333; }
+
+.bg-colored:before {
+ right: -999em;
+ background: #0b3b52;
+ content: '';
+ display: block;
+ position: absolute;
+ width: 999em;
+ top: 0;
+ bottom: 0; }
+
+.poll {
+ color: white;
+ background-image: url("res/gradient-mobile.png");
+ background-position: center;
+ background-repeat: no-repeat;
+ background-size: cover;
+ background-attachment: fixed;
+ font-family: "Hanson-Bold", "Arial", sans-serif;
+ font-weight: lighter;
+ font-size: .75em; }
+ @media (max-width: 768px) {
+ .poll {
+ background-image: url("res/gradient-mobile.png"); } }
+
+.short-answer {
+ font-size: 1.2em; }
+
+.title {
+ color: #42b8c7;
+ font-size: 1.45em; }
+
+.subtitle {
+ color: #42b8c7;
+ font-size: 1.15em; }
+
+label {
+ font-size: 1.25em; }
+
+.emote img {
+ width: 25vw;
+ height: auto; }
+
+.btn {
+ color: #2b5291;
+ border-image-repeat: none; }
+
+.hi {
+ color: #48B93E;
+ font-family: "WildYouth", "Hanson-Bold", "Arial", sans-serif; }
+
+.lo {
+ color: #E34848;
+ font-family: "WildYouth", "Hanson-Bold", "Arial", sans-serif; }
+
+[type=radio] {
+ position: absolute;
+ opacity: 0;
+ width: 0;
+ height: 0; }
+
+/* IMAGE STYLES */
+[type=radio] + img {
+ cursor: pointer; }
+
+/* CHECKED STYLES */
+[type=radio]:checked + img {
+ outline: 2px solid #2b5291; }
+
+/*# sourceMappingURL=styles.css.map */