Files
bennyshouse.net/templates/contact.html

147 lines
8.2 KiB
HTML

{% extends "base.html" %}
{% block content %}
<section class="py-16 md:py-24">
<div class="max-w-5xl mx-auto px-6">
<div class="grid md:grid-cols-2 gap-10 items-start">
<!-- Left column: Contact card -->
<div
class="relative rounded-2xl border border-white/10 bg-black/50 backdrop-blur p-6 sm:p-8 shadow-xl">
<!-- Accent top border -->
<div class="absolute inset-x-0 -top-px h-px bg-gradient-to-r from-transparent via-white/30 to-transparent"></div>
<header class="flex items-start gap-4">
<div class="h-12 w-12 rounded-xl bg-white/10 grid place-items-center shrink-0">
<!-- Simple user icon -->
<svg xmlns="http://www.w3.org/2000/svg" class="h-6 w-6 opacity-80" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5" aria-hidden="true">
<path stroke-linecap="round" stroke-linejoin="round" d="M15.75 7.5a3.75 3.75 0 11-7.5 0 3.75 3.75 0 017.5 0zM4.5 20.25a8.25 8.25 0 0115 0"/>
</svg>
</div>
<div>
<h1 class="font-bebas text-5xl leading-none tracking-wide">{{ contact.name }}</h1>
<p class="mt-1 text-white/80">{{ contact.title }}</p>
<p class="mt-0.5 text-white/60">{{ contact.city }}</p>
<p class="mt-0.5 text-white/60"><span class="font-medium text-white/70">Hours:</span> {{ contact.hours }}</p>
</div>
</header>
<!-- Divider -->
<div class="mt-6 h-px w-full bg-gradient-to-r from-transparent via-white/10 to-transparent"></div>
<!-- Contact methods -->
<ul class="mt-6 space-y-2 text-sm">
{% if contact.email %}
<li class="group">
<a href="mailto:{{ contact.email }}" class="flex items-center gap-3 rounded-lg px-3 py-2 hover:bg-white/5 transition">
<span class="inline-flex h-8 w-8 items-center justify-center rounded-md border border-white/10 bg-white/5">
<!-- Mail icon -->
<svg xmlns="http://www.w3.org/2000/svg" class="h-4 w-4 opacity-80" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5">
<path stroke-linecap="round" stroke-linejoin="round" d="M21.75 7.5v9a2.25 2.25 0 01-2.25 2.25h-15A2.25 2.25 0 012.25 16.5v-9m19.5 0A2.25 2.25 0 0019.5 5.25h-15A2.25 2.25 0 002.25 7.5m19.5 0l-9.75 6.75L2.25 7.5"/>
</svg>
</span>
<span class="truncate text-white/80 group-hover:text-white">{{ contact.email }}</span>
</a>
</li>
{% endif %}
{% if contact.phone %}
<li class="group">
<a href="tel:{{ contact.phone }}" class="flex items-center gap-3 rounded-lg px-3 py-2 hover:bg-white/5 transition">
<span class="inline-flex h-8 w-8 items-center justify-center rounded-md border border-white/10 bg-white/5">
<!-- Phone icon -->
<svg xmlns="http://www.w3.org/2000/svg" class="h-4 w-4 opacity-80" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5">
<path stroke-linecap="round" stroke-linejoin="round" d="M2.25 6.75c0 8.284 6.716 15 15 15h1.5a1.5 1.5 0 001.5-1.5v-2.318a1.5 1.5 0 00-1.265-1.482l-3.03-.505a1.5 1.5 0 00-1.38.43l-.97.97a12.036 12.036 0 01-5.36-5.36l.97-.97a1.5 1.5 0 00.43-1.38l-.505-3.03A1.5 1.5 0 006.568 3H4.25A2 2 0 002.25 5v1.75z"/>
</svg>
</span>
<span class="truncate text-white/80 group-hover:text-white">{{ contact.phone }}</span>
</a>
</li>
{% endif %}
{% if contact.cal %}
<li class="group">
<a href="{{ contact.cal }}" class="flex items-center gap-3 rounded-lg px-3 py-2 hover:bg-white/5 transition" target="_blank" rel="noopener">
<span class="inline-flex h-8 w-8 items-center justify-center rounded-md border border-white/10 bg-white/5">
<!-- Calendar icon -->
<svg xmlns="http://www.w3.org/2000/svg" class="h-4 w-4 opacity-80" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5">
<path stroke-linecap="round" stroke-linejoin="round" d="M6.75 3v3M17.25 3v3M3.75 8.25h16.5M5.25 21h13.5A2.25 2.25 0 0021 18.75V8.25H3v10.5A2.25 2.25 0 005.25 21z"/>
</svg>
</span>
<span class="truncate text-white/80 group-hover:text-white">Book a call</span>
</a>
</li>
{% endif %}
<li class="group">
<a href="/benjamin.vcf" class="flex items-center gap-3 rounded-lg px-3 py-2 hover:bg-white/5 transition">
<span class="inline-flex h-8 w-8 items-center justify-center rounded-md border border-white/10 bg-white/5">
<!-- vCard icon -->
<svg xmlns="http://www.w3.org/2000/svg" class="h-4 w-4 opacity-80" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5">
<path stroke-linecap="round" stroke-linejoin="round" d="M15.75 6.75h2.25A2.25 2.25 0 0120.25 9v6A2.25 2.25 0 0118 17.25H6A2.25 2.25 0 013.75 15V9A2.25 2.25 0 016 6.75h2.25"/>
<path stroke-linecap="round" stroke-linejoin="round" d="M8.25 12a2.25 2.25 0 104.5 0 2.25 2.25 0 00-4.5 0zM12.75 15.75c-1.5-1.125-3.75-1.125-5.25 0"/>
</svg>
</span>
<span class="truncate text-white/80 group-hover:text-white">Download vCard</span>
</a>
</li>
{% if contact.link %}
<li class="group">
<a href="{{ contact.link }}" class="flex items-center gap-3 rounded-lg px-3 py-2 hover:bg-white/5 transition" target="_blank" rel="noopener">
<span class="inline-flex h-8 w-8 items-center justify-center rounded-md border border-white/10 bg-white/5">
<!-- LinkedIn icon -->
<svg xmlns="http://www.w3.org/2000/svg" class="h-4 w-4 opacity-80" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true">
<path d="M4.98 3.5C4.98 4.88 3.86 6 2.5 6S0 4.88 0 3.5 1.12 1 2.5 1s2.48 1.12 2.48 2.5zM.5 8h4V24h-4V8zm7.5 0h3.8v2.2h.1c.5-1 1.9-2.2 3.9-2.2 4.1 0 4.9 2.7 4.9 6.2V24h-4v-7.1c0-1.7 0-3.9-2.4-3.9s-2.8 1.9-2.8 3.8V24h-4V8z"/>
</svg>
</span>
<span class="truncate text-white/80 group-hover:text-white">LinkedIn</span>
</a>
</li>
{% endif %}
</ul>
<!-- CTA -->
<div class="mt-8">
<a href="https://netdeploy.net"
class="inline-flex w-full items-center justify-center gap-2 rounded-xl px-5 py-3 font-semibold text-black shadow-lg transition
bg-gradient-to-b from-emerald-400 to-emerald-300 hover:from-emerald-300 hover:to-emerald-200 active:from-emerald-400 active:to-emerald-300">
<span>Get a Quote</span>
<!-- Arrow icon -->
<svg xmlns="http://www.w3.org/2000/svg" class="h-4 w-4" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true">
<path d="M13.5 4.5l6 6-6 6v-3.75H4.5v-4.5h9V4.5z"/>
</svg>
</a>
<p class="mt-3 text-xs text-white/50 text-center">No commitment—just a quick estimate.</p>
</div>
</div>
<!-- Right column -->
<div class="rounded-2xl border border-white/10 bg-black/30 p-6 sm:p-8">
<h2 class="text-xl font-semibold">How I can help</h2>
<p class="mt-2 text-white/70">
Need local IT, web hosting, or a custom app? Send a quick note or book a time that works for you.
I typically respond the same day.
</p>
<!-- Non-responsive map (fixed size) -->
<div class="mt-6 overflow-x-auto">
<iframe
class="block mx-auto rounded-xl border border-white/10 shadow-md"
width="600"
height="450"
style="border:0; max-width:100%;"
loading="lazy"
allowfullscreen
referrerpolicy="no-referrer-when-downgrade"
src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d10563.745987097742!2d-101.84526106399407!3d35.2219850311224!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x870ac125c3ca1575%3A0x87f3e3d0ff616d5d!2sDowntown%20Amarillo%2C%20Amarillo%2C%20TX!5e0!3m2!1sen!2sus!4v1707800000000!5m2!1sen!2sus">
</iframe>
<p class="mt-2 text-xs text-white/50 text-center">Downtown Amarillo</p>
</div>
</div>
</div>
</div>
</section>
{% endblock %}