/**
 * Local SVG UI icons + brand logo sizing
 */

.ui-icon {
    display: block;
    width: auto;
    height: auto;
    max-width: 100%;
    object-fit: contain;
    flex-shrink: 0;
}

.ui-icon--inline {
    display: inline-block;
    vertical-align: middle;
}

.ui-icon--muted {
    opacity: 0.72;
}

.link-tree__icon .ui-icon,
.hub-card__icon .ui-icon,
.frost-dock__icon .ui-icon {
    width: 1.35rem;
    height: 1.35rem;
}

.hub-card__arrow .ui-icon {
    width: 0.75rem;
    height: 0.75rem;
    display: inline-block;
    vertical-align: -2px;
    margin-left: 0.25rem;
}

.btn__icon {
    display: inline-flex;
    align-items: center;
    margin-right: 0.35rem;
}

.btn__icon .ui-icon {
    width: 1rem;
    height: 1rem;
}

.btn-solid .btn__icon .ui-icon {
    width: 1.125rem;
    height: 1.125rem;
}

/* Gold icons on dark glass — full brightness */
.link-tree__icon .ui-icon,
.hub-card__icon .ui-icon,
.frost-dock__icon .ui-icon {
    opacity: 1;
    filter: drop-shadow(0 1px 3px rgba(0, 0, 0, 0.45));
}

/* Dark silhouette on solid gold buttons (gold-on-gold fix) */
.btn-solid .ui-icon,
.btn-executive-gold .ui-icon {
    filter: brightness(0) saturate(100%);
    opacity: 0.78;
}

/* Keep brand colors on WhatsApp solid buttons */
.btn-solid.contact-page__whatsapp .ui-icon,
.btn-solid.btn--whatsapp .ui-icon,
.link-tree__item--whatsapp .ui-icon,
.ui-icon--whatsapp {
    filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.35));
    opacity: 1;
}

.btn-solid:hover .ui-icon:not(.ui-icon--whatsapp) {
    opacity: 0.92;
}

/* Font Awesome on solid gold buttons — match dark icon treatment */
.btn-solid .fas,
.btn-solid .far,
.btn-solid .fab {
    color: #0a0e14;
    opacity: 0.85;
}

.btn-solid.contact-page__whatsapp .fab,
.btn-solid.btn--whatsapp .fab {
    color: #128c7e;
    opacity: 1;
}

/* Brand logo variants */
.brand-logo {
    display: block;
    width: auto;
    height: auto;
    object-fit: contain;
    filter: drop-shadow(0 4px 16px rgba(201, 169, 98, 0.22));
}

.brand-logo--nav {
    height: clamp(38px, 4.5vw, 46px);
    max-width: min(260px, 54vw);
}

.logo--png {
    display: inline-flex;
    align-items: center;
    flex-shrink: 0;
    min-width: 0;
}

.nav-drawer__brand {
    display: block;
    margin-bottom: 1.25rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.brand-logo--drawer {
    height: 48px;
    max-width: min(300px, 88vw);
    margin: 0 auto;
}

.brand-logo--hero {
    width: min(400px, 88vw);
    height: auto;
    max-height: 140px;
}

.brand-logo--footer {
    height: 42px;
    max-width: min(240px, 70vw);
    margin: 0 auto 0.75rem;
}

.brand-logo--mini {
    height: 32px;
    max-width: 120px;
}

.unified-nav__mark.brand-logo--mini {
    filter: none;
}

.home-hero__logo-wrap {
    margin-bottom: 1.25rem;
}

@media (min-width: 768px) {
    .home-hero__logo-wrap {
        margin-left: 0;
    }
}

/* Font Awesome fallback — ensure icons render when CDN loads */
.royal-site .fa-solid,
.royal-site .fas {
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-style: normal;
}

.royal-site .fa-brands,
.royal-site .fab {
    font-family: "Font Awesome 6 Brands";
    font-weight: 400;
    font-style: normal;
}

.royal-site .fa-regular,
.royal-site .far {
    font-family: "Font Awesome 6 Free";
    font-weight: 400;
    font-style: normal;
}

.frost-dock__link i.fas,
.frost-dock__link i.fab {
    font-family: inherit;
}

.frost-dock__link i.fas {
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
}

.frost-dock__link i.fab {
    font-family: "Font Awesome 6 Brands";
    font-weight: 400;
}
