/* =========================================
TOVIA™ — CONTACT PAGE
Premium / Minimal / Mobile Optimised
========================================= */
.tovia-contact-page {
--tovia-black: #171717;
--tovia-dark: #242424;
--tovia-brown: #4b3025;
--tovia-cream: #f8f5f1;
--tovia-soft: #f3eee8;
--tovia-border: #e5ded6;
--tovia-text: #292929;
--tovia-muted: #73706d;
font-family: Poppins, Arial, sans-serif;
color: var(--tovia-text);
background: #fff;
overflow: hidden;
}
/* HERO */
.tovia-contact-hero {
background: var(--tovia-cream);
text-align: center;
padding: 78px 20px 68px;
border-bottom: 1px solid var(--tovia-border);
}
.tovia-contact-hero-inner {
max-width: 850px;
margin: 0 auto;
}
.tovia-contact-eyebrow {
display: inline-block;
font-size: 11px;
font-weight: 700;
letter-spacing: 2.5px;
text-transform: uppercase;
color: var(--tovia-brown);
margin-bottom: 18px;
}
.tovia-contact-hero h1 {
margin: 0 0 20px;
font-family: Georgia, "Times New Roman", serif;
font-size: clamp(42px, 6vw, 72px);
line-height: 1.04;
font-weight: 500;
letter-spacing: -1.8px;
color: var(--tovia-black);
}
.tovia-contact-hero p {
max-width: 680px;
margin: 0 auto;
font-size: clamp(15px, 2vw, 18px);
line-height: 1.75;
color: var(--tovia-muted);
}
/* MAIN */
.tovia-contact-wrap {
max-width: 1120px;
margin: 0 auto;
padding: 65px 20px 75px;
}
.tovia-contact-grid {
display: grid;
grid-template-columns: 1.05fr .95fr;
gap: 24px;
align-items: stretch;
}
/* CARDS */
.tovia-contact-card {
background: #fff;
border: 1px solid var(--tovia-border);
border-radius: 18px;
padding: 38px;
}
.tovia-contact-card.dark {
background: var(--tovia-black);
color: #fff;
border-color: var(--tovia-black);
}
.tovia-contact-card h2 {
margin: 0 0 15px;
font-family: Georgia, "Times New Roman", serif;
font-size: clamp(28px, 4vw, 42px);
line-height: 1.1;
font-weight: 500;
letter-spacing: -.7px;
}
.tovia-contact-card > p {
margin: 0;
font-size: 15px;
line-height: 1.75;
color: var(--tovia-muted);
}
.tovia-contact-card.dark > p {
color: #c9c5c1;
}
/* CONTACT ITEMS */
.tovia-contact-list {
display: grid;
gap: 12px;
margin-top: 30px;
}
.tovia-contact-item {
display: flex;
align-items: flex-start;
gap: 15px;
padding: 17px;
background: #faf9f7;
border: 1px solid #eee9e4;
border-radius: 13px;
}
.tovia-contact-icon {
width: 40px;
height: 40px;
min-width: 40px;
border-radius: 50%;
display: grid;
place-items: center;
background: var(--tovia-brown);
color: #fff;
font-size: 17px;
}
.tovia-contact-item strong {
display: block;
margin: 1px 0 4px;
font-size: 14px;
font-weight: 700;
color: var(--tovia-black);
}
.tovia-contact-item span,
.tovia-contact-item a {
color: var(--tovia-muted);
font-size: 14px;
line-height: 1.55;
text-decoration: none;
}
.tovia-contact-item a:hover {
color: var(--tovia-brown);
}
/* SUPPORT NOTE */
.tovia-contact-note {
margin-top: 20px;
padding: 18px 20px;
background: var(--tovia-soft);
border-radius: 13px;
color: #625d58;
font-size: 13px;
line-height: 1.65;
}
/* DARK CARD */
.tovia-support-list {
display: grid;
gap: 24px;
margin-top: 32px;
}
.tovia-support-step {
display: flex;
gap: 15px;
align-items: flex-start;
}
.tovia-step-number {
width: 32px;
height: 32px;
min-width: 32px;
border: 1px solid #74645b;
border-radius: 50%;
display: grid;
place-items: center;
color: #fff;
font-size: 12px;
font-weight: 700;
}
.tovia-support-step strong {
display: block;
margin: 2px 0 5px;
color: #fff;
font-size: 14px;
font-weight: 700;
}
.tovia-support-step span {
display: block;
color: #bcb7b2;
font-size: 13px;
line-height: 1.65;
}
/* SHIPPING NOTE */
.tovia-shipping-box {
margin-top: 28px;
padding: 18px;
border: 1px solid #3a3a3a;
border-radius: 13px;
background: rgba(255,255,255,.035);
}
.tovia-shipping-box strong {
display: block;
margin-bottom: 5px;
font-size: 14px;
color: #fff;
}
.tovia-shipping-box span {
display: block;
color: #bcb7b2;
font-size: 13px;
line-height: 1.6;
}
/* BOTTOM CTA */
.tovia-contact-bottom {
margin-top: 24px;
padding: 58px 25px;
text-align: center;
background: var(--tovia-cream);
border: 1px solid var(--tovia-border);
border-radius: 20px;
}
.tovia-contact-bottom h2 {
max-width: 700px;
margin: 0 auto 15px;
font-family: Georgia, "Times New Roman", serif;
font-size: clamp(30px, 5vw, 48px);
line-height: 1.08;
font-weight: 500;
letter-spacing: -1px;
color: var(--tovia-black);
}
.tovia-contact-bottom p {
max-width: 650px;
margin: 0 auto 26px;
color: var(--tovia-muted);
font-size: 15px;
line-height: 1.7;
}
.tovia-contact-btn {
display: inline-flex;
align-items: center;
justify-content: center;
min-height: 48px;
padding: 13px 27px;
border-radius: 999px;
background: var(--tovia-black);
color: #fff;
font-size: 13px;
font-weight: 700;
text-decoration: none;
transition: all .25s ease;
}
.tovia-contact-btn:hover {
background: var(--tovia-brown);
transform: translateY(-2px);
}
/* MOBILE */
@media (max-width: 800px) {
.tovia-contact-hero {
padding: 58px 18px 50px;
}
.tovia-contact-hero h1 {
letter-spacing: -1px;
}
.tovia-contact-wrap {
padding: 45px 14px 55px;
}
.tovia-contact-grid {
grid-template-columns: 1fr;
gap: 16px;
}
.tovia-contact-card {
padding: 27px 20px;
border-radius: 16px;
}
.tovia-contact-card h2 {
font-size: 30px;
}
.tovia-contact-item {
padding: 14px;
}
.tovia-contact-bottom {
padding: 45px 20px;
border-radius: 17px;
}
}
@media (max-width: 480px) {
.tovia-contact-hero {
padding: 48px 16px 43px;
}
.tovia-contact-hero h1 {
font-size: 42px;
}
.tovia-contact-hero p {
font-size: 14px;
line-height: 1.65;
}
.tovia-contact-wrap {
padding: 35px 12px 45px;
}
.tovia-contact-card {
padding: 24px 16px;
}
.tovia-contact-item span,
.tovia-contact-item a {
font-size: 13px;
}
.tovia-contact-icon {
width: 37px;
height: 37px;
min-width: 37px;
font-size: 15px;
}
}