/**
 * Layout presets — each theme should feel unmistakably different on the storefront.
 */

/* ===== Platform Editorial (Kutchara layout) ===== */
.layout-preset-platform_editorial .hero { padding: clamp(2.5rem, 6vw, 4.5rem) clamp(1.5rem, 4vw, 3rem); }
.layout-preset-platform_editorial .hero .hero-grid { grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr); gap: clamp(2rem, 5vw, 4rem); align-items: center; }
.layout-preset-platform_editorial .hero-content h1 { font-size: clamp(2.5rem, 5.5vw, 3.75rem); font-weight: 600; }
.layout-preset-platform_editorial .design-fallback-grid { grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: clamp(1.25rem, 3vw, 2rem); }
.layout-preset-platform_editorial .design-card { border-radius: var(--radius-card, 12px); overflow: hidden; }
.layout-preset-platform_editorial .trust-grid { grid-template-columns: repeat(4, 1fr); gap: 1.25rem; }

/* ===== Soft Linen ===== */
.layout-preset-soft_linen .hero { padding: 4rem 0; border-radius: 0 0 32px 32px; }
.layout-preset-soft_linen .hero .hero-grid { grid-template-columns: 1fr 1fr; gap: 3rem; align-items: center; }
.layout-preset-soft_linen .hero-content h1 { font-size: clamp(2.4rem, 5vw, 3.4rem); font-weight: 500; }
.layout-preset-soft_linen .design-fallback-grid { grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 1.75rem; }
.layout-preset-soft_linen .design-card { border-radius: var(--radius-card, 20px); overflow: hidden; }
.layout-preset-soft_linen .trust-grid { grid-template-columns: repeat(4, 1fr); }

/* ===== Signal Grid ===== */
.layout-preset-signal_grid .hero { padding: 1.5rem 0 2.5rem; border-bottom: 2px solid var(--color-text); }
.layout-preset-signal_grid .hero .hero-grid { grid-template-columns: 1fr; text-align: left; max-width: 720px; }
.layout-preset-signal_grid .hero-content h1 { font-size: clamp(2rem, 4vw, 2.75rem); letter-spacing: -0.04em; text-transform: uppercase; font-weight: 700; }
.layout-preset-signal_grid .hero-buttons { justify-content: flex-start; }
.layout-preset-signal_grid .hero-media { display: block; }
.layout-preset-signal_grid .navbar { border-bottom: 2px solid var(--color-text) !important; box-shadow: none !important; }
.layout-preset-signal_grid .design-fallback-grid { grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--color-border); border: 1px solid var(--color-border); }
.layout-preset-signal_grid .design-card { border-radius: 0; box-shadow: 0 4px 0 var(--color-text); border: 1px solid var(--color-text); background: var(--color-surface); }
.layout-preset-signal_grid .btn { border-radius: 0; text-transform: uppercase; letter-spacing: 0.06em; font-size: 0.8rem; }

/* ===== Noir Edge ===== */
.layout-preset-noir_edge .hero { min-height: 70vh; display: flex; align-items: flex-end; padding: 0 0 4rem; background: linear-gradient(180deg, transparent 40%, var(--color-bg) 100%), var(--color-surface) !important; }
.layout-preset-noir_edge .hero .hero-grid { grid-template-columns: 1.2fr 0.8fr; align-items: end; }
.layout-preset-noir_edge .hero-content h1 { font-size: clamp(3rem, 8vw, 5.5rem); line-height: 0.95; font-style: italic; }
.layout-preset-noir_edge .hero-content p { font-size: 1.125rem; max-width: 28rem; color: var(--color-muted); }
.layout-preset-noir_edge .navbar { background: transparent !important; position: absolute; width: 100%; z-index: 10; border: none !important; }
.layout-preset-noir_edge .nav-link { color: var(--color-text) !important; text-transform: uppercase; letter-spacing: 0.12em; font-size: 0.75rem; }
.layout-preset-noir_edge .design-fallback-grid { columns: 2; column-gap: 1.5rem; display: block; }
.layout-preset-noir_edge .design-card { break-inside: avoid; margin-bottom: 1.5rem; border: 1px solid var(--color-border); }
.layout-preset-noir_edge .social-proof { border-top: 1px solid var(--color-border); border-bottom: 1px solid var(--color-border); }

/* ===== Volt Drop ===== */
.layout-preset-volt_drop .hero { padding: 5rem 0; text-align: center; background: var(--color-bg) !important; border-bottom: 3px solid var(--color-primary); }
.layout-preset-volt_drop .hero .hero-grid { grid-template-columns: 1fr; }
.layout-preset-volt_drop .hero-content h1 { font-size: clamp(3.5rem, 12vw, 7rem); text-transform: uppercase; letter-spacing: 0.02em; line-height: 0.9; color: var(--color-primary); }
.layout-preset-volt_drop .hero-content p { font-size: 1.25rem; max-width: 36rem; margin: 1rem auto 2rem; }
.layout-preset-volt_drop .hero-buttons { justify-content: center; }
.layout-preset-volt_drop .hero-media { min-height: 380px; }
.layout-preset-volt_drop .navbar { background: var(--color-primary) !important; }
.layout-preset-volt_drop .navbar .logo, .layout-preset-volt_drop .nav-link { color: var(--color-primary-contrast) !important; font-weight: 700; text-transform: uppercase; }
.layout-preset-volt_drop .design-fallback-grid { grid-template-columns: repeat(2, 1fr); gap: 2px; }
.layout-preset-volt_drop .design-card:nth-child(3n+1) { grid-column: span 2; }
.layout-preset-volt_drop .design-card { border: 1px solid var(--color-border); background: var(--color-surface); }
.layout-preset-volt_drop .btn-primary { box-shadow: 0 0 24px rgba(163, 255, 18, 0.35); }

/* ===== Harbor Goods ===== */
.layout-preset-harbor_goods .hero { padding: 3rem 0; background: var(--color-secondary) !important; border-radius: 24px; margin: 1rem auto; max-width: calc(1140px - 2rem); }
.layout-preset-harbor_goods .hero .hero-grid { grid-template-columns: 0.85fr 1.15fr; }
.layout-preset-harbor_goods .hero-content h1 { font-size: clamp(2rem, 4vw, 2.8rem); }
.layout-preset-harbor_goods .social-proof { background: var(--color-accent); color: #fff; }
.layout-preset-harbor_goods .social-proof h2 { color: #fff; }
.layout-preset-harbor_goods .trust-card { background: rgba(255,255,255,0.15); color: #fff; border: none; }
.layout-preset-harbor_goods .design-fallback-grid { grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 1.25rem; }
.layout-preset-harbor_goods .design-card { border: 2px solid var(--color-border); border-radius: var(--radius-card, 18px); }

/* Home layout variants */
.layout-home-hero-minimal .hero-media { min-height: 360px; }
.layout-home-hero-bold .hero-content { text-align: center; max-width: 900px; margin: 0 auto; }
.layout-home-hero-editorial .hero { position: relative; }
.layout-home-hero-warm .hero-buttons .btn-secondary {
    background: var(--color-accent);
    color: #fff !important;
    border-color: var(--color-accent);
}
.layout-home-hero-warm .hero-buttons .btn-secondary:hover {
    color: #fff !important;
}

@media (max-width: 900px) {
    .layout-preset-soft_linen .hero .hero-grid,
    .layout-preset-noir_edge .hero .hero-grid,
    .layout-preset-harbor_goods .hero .hero-grid { grid-template-columns: 1fr; }
    .layout-preset-signal_grid .design-fallback-grid { grid-template-columns: repeat(2, 1fr); }
    .layout-preset-volt_drop .design-card:nth-child(3n+1) { grid-column: span 1; }
    .layout-preset-noir_edge .design-fallback-grid { columns: 1; }
    .layout-preset-soft_linen .trust-grid { grid-template-columns: 1fr 1fr; }
}
