.layout-segment {
    --layout-primary: #4f46e5;
    --layout-on-primary: #ffffff;
    --layout-header-bg: #ffffff;
    --layout-header-text: #1f2937;
    --layout-header-hover: #312e81;
    --layout-border-soft: rgba(79, 70, 229, 0.18);
    --layout-page-bg: #f5f7fb;
    --layout-page-gradient: linear-gradient(180deg, #f7f9fc 0%, #eef2ff 100%);
    --layout-footer-bg: #312e81;
    --layout-footer-text: #e8ebff;
    --layout-footer-link: #ffffff;
    --layout-badge-bg: rgba(79, 70, 229, 0.12);
    --layout-badge-text: #4f46e5;
    --layout-whatsapp-shadow: rgba(49, 46, 129, 0.3);
    --layout-tog-color: var(--layout-header-text);
    background: var(--layout-page-gradient);
    min-height: 100vh;
    color: var(--layout-header-text);
}

.layout-segment-shell {
    background-color: transparent;
}

.layout-segment--lava {
    --layout-primary: #0b2a55;
    --layout-on-primary: #f4fbff;
    --layout-header-bg: linear-gradient(90deg, #061d3d 0%, #0b2a55 100%);
    --layout-header-text: #f4fbff;
    --layout-header-hover: #00bcd4;
    --layout-border-soft: rgba(0, 188, 212, 0.22);
    --layout-page-bg: #f4faff;
    --layout-page-gradient: linear-gradient(180deg, #f4faff 0%, #e4f3ff 100%);
    --layout-footer-bg: #061d3d;
    --layout-footer-text: #d7ecff;
    --layout-footer-link: #00bcd4;
    --layout-badge-bg: rgba(0, 188, 212, 0.16);
    --layout-badge-text: #00bcd4;
    --layout-whatsapp-shadow: rgba(0, 188, 212, 0.45);
    --layout-tog-color: #00bcd4;
}

.layout-segment--barbearia {
    --layout-primary: #a32020;
    --layout-on-primary: #ffffff;
    --layout-header-bg: linear-gradient(90deg, #0f0f0f 0%, #1f0b0b 100%);
    --layout-header-text: #fefefe;
    --layout-header-hover: #b88a44;
    --layout-border-soft: rgba(184, 138, 68, 0.28);
    --layout-page-bg: #f6f2ee;
    --layout-page-gradient: linear-gradient(180deg, #fdfbf7 0%, #f1e6dd 100%);
    --layout-footer-bg: #0f0f0f;
    --layout-footer-text: #fef3dd;
    --layout-footer-link: #b88a44;
    --layout-badge-bg: rgba(184, 138, 68, 0.18);
    --layout-badge-text: #b88a44;
    --layout-whatsapp-shadow: rgba(163, 32, 32, 0.4);
    --layout-tog-color: #b88a44;
}

.layout-segment--manicure {
    --layout-primary: #d275a8;
    --layout-on-primary: #ffffff;
    --layout-header-bg: linear-gradient(90deg, #fff5f9 0%, #f5dce8 100%);
    --layout-header-text: #5f4b59;
    --layout-header-hover: #c19b5f;
    --layout-border-soft: rgba(210, 117, 168, 0.22);
    --layout-page-bg: #fff9fc;
    --layout-page-gradient: linear-gradient(180deg, #fff9fc 0%, #f7eef4 100%);
    --layout-footer-bg: #f5dce8;
    --layout-footer-text: #5f4b59;
    --layout-footer-link: #c19b5f;
    --layout-badge-bg: rgba(210, 117, 168, 0.18);
    --layout-badge-text: #d275a8;
    --layout-whatsapp-shadow: rgba(210, 117, 168, 0.35);
    --layout-tog-color: #d275a8;
}

.segment-header {
    box-shadow: 0 12px 28px -18px rgba(15, 23, 42, 0.45);
}

.layout-navbar {
    background: var(--layout-header-bg);
    padding: 0.85rem 1.25rem;
    border-bottom: 1px solid var(--layout-border-soft);
}

.layout-navbar__brand {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    color: var(--layout-header-text);
    font-weight: 700;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.layout-navbar__brand:hover,
.layout-navbar__brand:focus {
    color: var(--layout-header-hover);
    text-decoration: none;
}

.layout-navbar__logo {
    width: 40px;
    height: 40px;
    object-fit: contain;
    filter: drop-shadow(0 6px 14px rgba(0, 0, 0, 0.25));
}

.layout-navbar__brand-text {
    font-size: 0.85rem;
    letter-spacing: 0.14em;
}

.layout-navbar__toggler {
    border: none;
    color: var(--layout-header-text);
}

.layout-navbar__toggler:focus {
    box-shadow: none;
}

.layout-navbar__toggler-icon i {
    font-size: 1.6rem;
    color: var(--layout-tog-color);
}

.layout-navbar__links .nav-link {
    color: var(--layout-header-text) !important;
    font-weight: 600;
    letter-spacing: 0.02em;
    padding: 0.6rem 1rem;
}

.layout-navbar__links .nav-link:hover,
.layout-navbar__links .nav-link:focus {
    color: var(--layout-header-hover);
}

.layout-navbar__cta-group {
    align-items: center;
    gap: 0.5rem;
}

.layout-navbar__link--login {
    font-weight: 700;
    color: var(--layout-header-hover) !important;
}

.layout-navbar__link--login:hover {
    color: var(--layout-header-text) !important;
}

.layout-navbar__cta-item {
    display: flex;
    align-items: center;
}

.layout-cta-primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    padding: 0.75rem 1.8rem;
    border-radius: 999px;
    background: var(--layout-primary);
    color: var(--layout-on-primary) !important;
    box-shadow: 0 18px 32px -12px rgba(0, 0, 0, 0.25);
    border: none;
    transition: transform 0.25s ease, box-shadow 0.25s ease, background 0.25s ease;
}

.layout-cta-primary:hover,
.layout-cta-primary:focus {
    transform: translateY(-2px);
    box-shadow: 0 20px 40px -18px rgba(0, 0, 0, 0.35);
    text-decoration: none;
    color: var(--layout-on-primary) !important;
}

.layout-main {
    position: relative;
    min-height: calc(100vh - 320px);
}

.c-loader-overlay {
    background-color: rgba(0, 0, 0, 0.55) !important;
}

.layout-whatsapp {
    position: fixed;
    bottom: 24px;
    right: 24px;
    z-index: 50;
}

.layout-whatsapp__link {
    display: inline-flex;
    border-radius: 50%;
    box-shadow: 0 18px 36px -18px var(--layout-whatsapp-shadow);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.layout-whatsapp__link:hover {
    transform: translateY(-4px);
    box-shadow: 0 24px 36px -14px var(--layout-whatsapp-shadow);
}

.layout-whatsapp__icon {
    width: 72px;
    height: 72px;
    border-radius: 50%;
}

.layout-footer {
    background: var(--layout-footer-bg);
    color: var(--layout-footer-text);
    padding: 2.5rem 0;
    margin-top: 5rem;
}

.layout-footer__inner {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    align-items: flex-start;
}

@media (min-width: 992px) {
    .layout-footer__inner {
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        padding: 0 2rem;
    }
}

.layout-footer__about {
    font-weight: 500;
    line-height: 1.6;
}

.layout-footer__link {
    color: var(--layout-footer-link);
    font-weight: 700;
}

.layout-footer__link:hover {
    text-decoration: underline;
}

.layout-footer__social {
    display: flex;
    gap: 1.5rem;
}

.layout-footer__icon {
    font-size: 1.8rem;
    color: var(--layout-footer-link);
    transition: transform 0.2s ease;
}

.layout-footer__icon:hover {
    transform: translateY(-3px);
}

@media (max-width: 991.98px) {
    .layout-navbar__cta-group {
        margin-top: 1rem;
    }
    .layout-navbar__links .nav-link {
        padding-left: 0;
    }
}
