/* ===========================================================================
   DESIGN 5 - ELEGANT / LUXURY
   Dark canvas, gold accents, serif display type, cinematic hero, slow motion.
   Suits: hotels, jewellery, weddings, fine dining.
   =========================================================================== */

.design-5 { background: var(--c-bg); color: var(--c-text); }
.design-5 h1, .design-5 h2, .design-5 h3 { font-weight: 400; letter-spacing: .01em; }
.design-5 h1, .design-5 h2 { font-size: clamp(2rem, 4.6vw, 3.4rem); }
.design-5 .eyebrow { color: var(--c-accent); font-weight: 400; letter-spacing: .34em; font-size: .72rem; }
.design-5 p, .design-5 .section-lead, .design-5 .card-text { color: var(--c-muted); }

.design-5 .btn { border-radius: 0; font-weight: 500; letter-spacing: .16em; text-transform: uppercase; font-size: .74rem; padding: 16px 34px; }
.design-5 .btn-primary { background: transparent; border: 1px solid var(--c-accent); color: var(--c-accent); }
.design-5 .btn-primary:hover { background: var(--c-accent); color: var(--c-bg); filter: none; }
.design-5 .btn-ghost { border-color: color-mix(in srgb, var(--c-text) 40%, transparent); color: var(--c-text); }
.design-5 .btn:hover { transform: none; }

.design-5 .site-header { background: color-mix(in srgb, var(--c-bg) 90%, transparent); backdrop-filter: blur(12px); border-bottom-color: var(--c-border); }
.design-5 .brand-mark { background: transparent; border: 1px solid var(--c-accent); color: var(--c-accent); border-radius: 0; }
.design-5 .brand-name { font-weight: 400; letter-spacing: .08em; }
.design-5 .site-nav a { font-size: .8rem; letter-spacing: .12em; text-transform: uppercase; }

/* Hero: cinematic, centred, slow zoom */
.design-5 .section-hero { min-height: 94vh; display: grid; align-items: center; text-align: center; }
.design-5 .hero-copy { max-width: 780px; margin-inline: auto; text-align: center; }
.design-5 .hero-actions { justify-content: center; }
.design-5 .hero-media { animation: slow-zoom 22s var(--ease) infinite alternate; }
.design-5 .hero-media::after { background: linear-gradient(rgba(11,11,13,.62), rgba(11,11,13,.78)); }
@keyframes slow-zoom { from { transform: scale(1); } to { transform: scale(1.09); } }
.design-5 .hero-title { font-size: clamp(2.4rem, 6vw, 4.6rem); }
.design-5 .hero-title::after {
  content: ''; display: block; width: 70px; height: 1px;
  background: var(--c-accent); margin: var(--sp-5) auto 0;
}

.design-5 .section-head { text-align: center; }
.design-5 .section-lead { margin-inline: auto; }

.design-5 .card { background: var(--c-surface); border-color: var(--c-border); border-radius: 0; }
.design-5 .card:hover { border-color: var(--c-accent); transform: translateY(-4px); box-shadow: none; }
.design-5 .card-body { padding: var(--sp-6) var(--sp-5); text-align: center; }
.design-5 .card-icon { margin-inline: auto; background: transparent; border: 1px solid var(--c-accent); border-radius: 0; }
.design-5 .card-link { color: var(--c-accent); letter-spacing: .1em; text-transform: uppercase; font-size: .75rem; }

.design-5 .feature { background: transparent; border: 1px solid var(--c-border); border-radius: 0; text-align: center; }
.design-5 .feature-icon { margin-inline: auto; border: 1px solid var(--c-accent); border-radius: 0; background: transparent; }

.design-5 .section-stats { background: var(--c-surface); }
.design-5 .stat-value, .design-5 .stat-suffix { color: var(--c-accent); font-weight: 400; }

.design-5 .gallery-item img { border-radius: 0; filter: saturate(.85); transition: filter var(--speed) var(--ease), transform var(--speed) var(--ease); }
.design-5 .gallery-item:hover img { filter: saturate(1.05); }

.design-5 .price-card { background: var(--c-surface); border-radius: 0; border-color: var(--c-border); }
.design-5 .price-card.is-featured { border-color: var(--c-accent); }
.design-5 .price-amount { font-weight: 400; }
.design-5 .price-badge { background: var(--c-accent); color: var(--c-bg); border-radius: 0; letter-spacing: .16em; }

.design-5 .testimonial { background: transparent; border: 1px solid var(--c-border); border-radius: 0; text-align: center; }
.design-5 .testimonial blockquote { font-family: var(--font-heading); font-size: 1.3rem; font-style: italic; }
.design-5 .testimonial-author { justify-content: center; }
.design-5 .slider-btn { border-color: var(--c-border); }

.design-5 .accordion-item { border-bottom-color: var(--c-border); }
.design-5 .accordion-trigger { font-weight: 400; }

.design-5 .section-cta { background: var(--c-surface); border-block: 1px solid var(--c-accent); }
.design-5 .section-cta .cta-title, .design-5 .section-cta p { color: var(--c-text); }

.design-5 .contact-form { background: var(--c-surface); border: 1px solid var(--c-border); border-radius: 0; }
.design-5 .field input, .design-5 .field textarea { background: transparent; border-color: var(--c-border); border-radius: 0; }

.design-5 .site-footer { background: var(--c-surface); border-top: 1px solid var(--c-border); }
.design-5 .footer-brand { color: var(--c-accent); letter-spacing: .1em; }
.design-5 .social-list a { border-color: var(--c-border); }
.design-5 .social-list a:hover { background: var(--c-accent); color: var(--c-bg); border-color: var(--c-accent); }

.design-5 .switcher-toggle { background: var(--c-accent); color: var(--c-bg); }

/* --- Structural personality: dark, centred, generous, metallic ------------ */
.design-5 .section { padding-block: var(--sp-10); }
.design-5 .section-head { text-align: center; max-width: 58ch; margin-inline: auto; margin-bottom: var(--sp-8); }
.design-5 .section-title { font-weight: 400; letter-spacing: .01em; font-size: clamp(1.9rem, 4.4vw, 3.1rem); }
.design-5 .eyebrow {
  color: var(--c-accent); letter-spacing: .38em; font-size: .66rem; font-weight: 500;
}
.design-5 .eyebrow::after {
  content: ''; display: block; width: 40px; height: 1px;
  background: var(--c-accent); margin: var(--sp-4) auto 0; opacity: .6;
}

/* Thin metallic rules instead of borders and shadows */
.design-5 .site-header { border-bottom: 1px solid var(--c-border); background: rgba(0,0,0,.35); backdrop-filter: blur(10px); }
.design-5 .brand-mark { background: none; border: 1px solid var(--c-accent); color: var(--c-accent); border-radius: 0; }
.design-5 .brand-name { letter-spacing: .12em; font-weight: 400; }

.design-5 .hero-inner { grid-template-columns: 1fr; text-align: center; justify-items: center; }
.design-5 .hero-title { font-weight: 300; letter-spacing: .01em; }
.design-5 .hero-sub { letter-spacing: .16em; text-transform: uppercase; font-size: .84rem; color: var(--c-accent); }
.design-5 .hero-body { max-width: 58ch; margin-inline: auto; }
.design-5 .hero-actions { justify-content: center; }
.design-5 .hero-media img { border: 1px solid var(--c-border); border-radius: 0; filter: saturate(.85) contrast(1.05); }

.design-5 .card { background: var(--c-surface); border: 1px solid var(--c-border); border-radius: 0; box-shadow: none; text-align: center; }
.design-5 .card:hover { transform: none; border-color: var(--c-accent); }
.design-5 .card-icon { background: none; border: 1px solid var(--c-accent); color: var(--c-accent); border-radius: 0; margin-inline: auto; }
.design-5 .card-title { font-weight: 400; letter-spacing: .04em; }

.design-5 .feature { border: 0; border-top: 1px solid var(--c-border); border-radius: 0; text-align: center; }
.design-5 .feature-icon { background: none; color: var(--c-accent); margin-inline: auto; }

.design-5 .stat-value { font-weight: 300; color: var(--c-accent); letter-spacing: -.01em; }
.design-5 .stat-label { letter-spacing: .22em; text-transform: uppercase; font-size: .68rem; }

.design-5 .price-card { border-radius: 0; background: var(--c-surface); }
.design-5 .price-card.is-featured { border-color: var(--c-accent); }
.design-5 .price-badge { border-radius: 0; background: var(--c-accent); color: #0b0b0d; letter-spacing: .16em; }
.design-5 .price-amount { font-weight: 300; }

.design-5 .testimonial { background: none; border: 1px solid var(--c-border); border-radius: 0; text-align: center; }
.design-5 .accordion-item { border-radius: 0; border-color: var(--c-border); }
.design-5 .accordion-trigger { font-weight: 400; letter-spacing: .03em; }

.design-5 .btn { border-radius: 0; letter-spacing: .2em; text-transform: uppercase; font-size: .74rem; font-weight: 500; padding-inline: var(--sp-6); }
.design-5 .btn-primary { background: var(--c-accent); color: #0b0b0d; }
.design-5 .btn-primary:hover { background: transparent; color: var(--c-accent); box-shadow: inset 0 0 0 1px var(--c-accent); }
.design-5 .btn-ghost { border-color: var(--c-accent); color: var(--c-accent); }

.design-5 .cta-inner { border: 1px solid var(--c-accent); background: none; border-radius: 0; text-align: center; }
.design-5 .site-footer { background: #000; border-top: 1px solid var(--c-border); }
.design-5 .gallery-item img { border-radius: 0; filter: saturate(.9); }
