/*
Theme Name: Fusion Kitchen & Culture
Theme URI: https://fusionkitchenculture.com/
Author: 360 Brand Advancement & Management
Description: Official Fusion Kitchen & Culture + Fusion Live hospitality theme.
Version: 1.1.0
Text Domain: fkc-hospitality
*/

:root {
    --fkc-black:#070707;
    --fkc-panel:#10100f;
    --fkc-panel-2:#151310;
    --fkc-gold:#d4a34f;
    --fkc-gold-light:#efc977;
    --fkc-ivory:#f3eee5;
    --fkc-muted:#aaa095;
    --fkc-line:rgba(212,163,79,.22);
    --fkc-live:#765783;
    --fkc-max:1200px;
}

* {
    box-sizing:border-box;
}

html {
    scroll-behavior:smooth;
}

body {
    margin:0;
    background:var(--fkc-black);
    color:var(--fkc-ivory);
    font-family:Arial,Helvetica,sans-serif;
    font-size:16px;
    line-height:1.65;
}

a {
    color:inherit;
}

img {
    max-width:100%;
    height:auto;
}

.fkc-container {
    width:min(calc(100% - 40px),var(--fkc-max));
    margin:0 auto;
}

.fkc-eyebrow {
    color:var(--fkc-gold);
    font-size:11px;
    line-height:1.3;
    font-weight:800;
    letter-spacing:.16em;
    text-transform:uppercase;
}

.fkc-parent-bar {
    border-bottom:1px solid rgba(212,163,79,.22);
    background:#0d0d0d;
}

.fkc-parent-bar-inner {
    min-height:32px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    color:#9d9387;
    font-size:9px;
    font-weight:800;
    letter-spacing:.14em;
    text-transform:uppercase;
}

.fkc-parent-bar a {
    color:var(--fkc-gold);
    text-decoration:none;
}

.site-header {
    position:sticky;
    top:0;
    z-index:999;
    border-bottom:1px solid var(--fkc-line);
    background:rgba(7,7,7,.95);
    backdrop-filter:blur(14px);
}

.fkc-nav {
    min-height:94px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
}

.fkc-brand {
    display:flex;
    flex-direction:column;
    text-decoration:none;
    line-height:1;
}

.fkc-brand-main {
    font-family:Georgia,serif;
    color:var(--fkc-ivory);
    font-size:24px;
    font-weight:600;
}

.fkc-brand-sub {
    margin-top:8px;
    color:var(--fkc-gold);
    font-size:8px;
    font-weight:800;
    letter-spacing:.15em;
    text-transform:uppercase;
}

.fkc-menu {
    display:flex;
    align-items:center;
    gap:25px;
}

.fkc-menu a {
    color:#d7cfc4;
    font-size:12px;
    font-weight:700;
    text-decoration:none;
}

.fkc-menu a:hover {
    color:var(--fkc-gold-light);
}

.fkc-menu .fkc-live-nav {
    color:#d7bddf;
}

.fkc-nav-cta {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:42px;
    padding:0 19px;
    border-radius:7px;
    background:var(--fkc-gold);
    color:#080808 !important;
    font-size:10px !important;
    font-weight:900 !important;
    letter-spacing:.09em;
    text-transform:uppercase;
}

.fkc-mobile-button {
    display:none;
    border:0;
    background:transparent;
    color:#fff;
    font-size:26px;
}

.fkc-home-hero {
    min-height:690px;
    position:relative;
    display:flex;
    align-items:center;
    overflow:hidden;
    border-bottom:1px solid var(--fkc-line);
    background:
        radial-gradient(
            circle at 74% 32%,
            rgba(205,142,47,.19),
            transparent 32%
        ),
        radial-gradient(
            circle at 86% 72%,
            rgba(118,87,131,.12),
            transparent 30%
        ),
        linear-gradient(125deg,#080808,#11100d 65%,#17120d);
}

.fkc-home-hero:before {
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            90deg,
            rgba(0,0,0,.85),
            rgba(0,0,0,.25),
            rgba(0,0,0,.60)
        );
}

.fkc-hero-inner {
    position:relative;
    z-index:2;
    width:100%;
    max-width:910px;
    padding:105px 0;
}

.fkc-home-hero h1 {
    max-width:850px;
    margin:15px 0 24px;
    font-family:Georgia,serif;
    font-size:clamp(54px,7vw,92px);
    line-height:.96;
    font-weight:500;
}

.fkc-home-hero h1 em {
    color:var(--fkc-gold-light);
    font-style:normal;
}

.fkc-hero-copy {
    max-width:700px;
    color:#c9bfb3;
    font-size:19px;
}

.fkc-actions {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:31px;
}

.fkc-button {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:48px;
    padding:0 22px;
    border:1px solid var(--fkc-gold);
    border-radius:8px;
    font-size:10px;
    font-weight:900;
    letter-spacing:.09em;
    text-decoration:none;
    text-transform:uppercase;
}

.fkc-button-primary {
    background:var(--fkc-gold);
    color:#080808;
}

.fkc-button-secondary {
    background:transparent;
    color:var(--fkc-gold-light);
}

.fkc-section {
    padding:96px 0;
    border-bottom:1px solid var(--fkc-line);
}

.fkc-section-header {
    max-width:830px;
    margin-bottom:48px;
}

.fkc-section h2,
.fkc-page-content h2 {
    margin:8px 0 16px;
    color:#fff;
    font-family:Georgia,serif;
    font-size:clamp(38px,4.5vw,60px);
    line-height:1.04;
    font-weight:500;
}

.fkc-section-header p,
.fkc-page-content p {
    color:var(--fkc-muted);
}

.fkc-two-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:20px;
}

.fkc-card {
    min-height:380px;
    padding:35px;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    border:1px solid var(--fkc-line);
    border-radius:20px;
    background:
        radial-gradient(
            circle at 15% 10%,
            rgba(212,163,79,.12),
            transparent 35%
        ),
        var(--fkc-panel);
}

.fkc-card-live {
    background:
        radial-gradient(
            circle at 80% 10%,
            rgba(118,87,131,.19),
            transparent 38%
        ),
        var(--fkc-panel);
}

.fkc-card h3 {
    margin:14px 0;
    font-family:Georgia,serif;
    font-size:34px;
    line-height:1.08;
    font-weight:500;
}

.fkc-pill-row {
    display:flex;
    flex-wrap:wrap;
    gap:7px;
}

.fkc-pill {
    display:inline-flex;
    align-items:center;
    min-height:28px;
    padding:0 11px;
    border:1px solid rgba(212,163,79,.42);
    border-radius:999px;
    color:var(--fkc-gold);
    font-size:9px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.fkc-live-strip {
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(
            circle at 80% 20%,
            rgba(118,87,131,.20),
            transparent 30%
        ),
        #0d0b0f;
}

.fkc-live-grid {
    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:70px;
    align-items:center;
}

.fkc-live-mark {
    min-height:360px;
    padding:36px;
    display:flex;
    align-items:flex-end;
    border:1px solid rgba(173,126,190,.30);
    border-radius:22px;
    background:
        linear-gradient(
            145deg,
            rgba(118,87,131,.22),
            rgba(10,10,10,.55)
        );
}

.fkc-live-mark strong {
    display:block;
    font-family:Georgia,serif;
    font-size:clamp(42px,5vw,70px);
    line-height:.95;
    font-weight:500;
}

.fkc-live-mark span {
    display:block;
    margin-top:15px;
    color:#cbb7d2;
    font-size:11px;
    letter-spacing:.14em;
    text-transform:uppercase;
}

.fkc-page-hero {
    padding:110px 0 72px;
    border-bottom:1px solid var(--fkc-line);
    background:
        radial-gradient(
            circle at 75% 30%,
            rgba(212,163,79,.14),
            transparent 30%
        ),
        #0b0b0b;
}

.fkc-page-hero h1 {
    margin:10px 0;
    font-family:Georgia,serif;
    font-size:clamp(46px,6vw,76px);
    line-height:1;
    font-weight:500;
}

.fkc-page-content {
    padding:80px 0 105px;
}

.fkc-page-content .fkc-content-shell {
    max-width:900px;
}

.fkc-page-content h3 {
    margin-top:38px;
    font-family:Georgia,serif;
    font-size:28px;
    font-weight:500;
}

.fkc-page-content ul {
    color:#b8aea2;
    line-height:1.9;
}

.fkc-contact-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:20px;
}

.fkc-contact-card {
    padding:31px;
    border:1px solid var(--fkc-line);
    border-radius:18px;
    background:var(--fkc-panel);
}

.site-footer {
    border-top:1px solid var(--fkc-line);
    background:#080808;
}

.fkc-footer-grid {
    display:grid;
    grid-template-columns:1.4fr .8fr .8fr;
    gap:45px;
    padding:65px 0 48px;
}

.fkc-footer-title {
    font-family:Georgia,serif;
    font-size:24px;
}

.fkc-footer-copy {
    max-width:450px;
    color:#92887c;
    font-size:13px;
}

.fkc-footer-heading {
    margin-bottom:15px;
    color:var(--fkc-gold);
    font-size:10px;
    font-weight:800;
    letter-spacing:.13em;
    text-transform:uppercase;
}

.fkc-footer-links a {
    display:block;
    margin:8px 0;
    color:#aaa095;
    font-size:13px;
    text-decoration:none;
}

.fkc-footer-bottom {
    padding:22px 0;
    display:flex;
    justify-content:space-between;
    gap:20px;
    border-top:1px solid rgba(255,255,255,.06);
    color:#71685e;
    font-size:10px;
}

@media(max-width:980px) {
    .fkc-menu {
        display:none;
        position:absolute;
        top:94px;
        left:0;
        right:0;
        padding:25px;
        flex-direction:column;
        align-items:flex-start;
        background:#090909;
        border-bottom:1px solid var(--fkc-line);
    }

    .fkc-menu.is-open {
        display:flex;
    }

    .fkc-mobile-button {
        display:block;
    }

    .fkc-two-grid,
    .fkc-live-grid,
    .fkc-footer-grid {
        grid-template-columns:1fr;
    }
}

@media(max-width:650px) {
    .fkc-container {
        width:min(calc(100% - 28px),var(--fkc-max));
    }

    .fkc-parent-bar-inner span:first-child {
        display:none;
    }

    .fkc-parent-bar-inner {
        justify-content:flex-end;
    }

    .fkc-brand-main {
        font-size:19px;
    }

    .fkc-home-hero {
        min-height:620px;
    }

    .fkc-home-hero h1 {
        font-size:50px;
    }

    .fkc-section {
        padding:70px 0;
    }

    .fkc-card {
        min-height:330px;
        padding:26px;
    }

    .fkc-actions {
        flex-direction:column;
    }

    .fkc-button {
        width:100%;
        text-align:center;
    }

    .fkc-contact-grid {
        grid-template-columns:1fr;
    }

    .fkc-footer-bottom {
        flex-direction:column;
    }
}


/* ==================================================
   FKC VISUAL POLISH 1.1
   ================================================== */

.fkc-brand {
    flex-direction:row;
    align-items:center;
    gap:14px;
}

.fkc-brand-mark {
    width:49px;
    height:49px;
    flex:0 0 49px;
    display:grid;
    place-items:center;
    border:1px solid rgba(212,163,79,.55);
    border-radius:50%;
    background:
        radial-gradient(
            circle at 35% 30%,
            rgba(239,201,119,.16),
            transparent 45%
        ),
        #0c0b09;
    color:var(--fkc-gold-light);
    font-family:Georgia,serif;
    font-size:17px;
    font-weight:700;
    letter-spacing:-.04em;
}

.fkc-brand-copy {
    display:flex;
    flex-direction:column;
    line-height:1;
}


/* Hero visual composition */

.fkc-home-hero:after {
    content:"";
    position:absolute;
    top:0;
    right:0;
    bottom:0;
    width:48%;
    pointer-events:none;
    background:
        linear-gradient(
            90deg,
            #070707 0%,
            rgba(7,7,7,.72) 18%,
            rgba(7,7,7,.20) 54%,
            rgba(7,7,7,.08) 100%
        ),
        radial-gradient(
            ellipse at 65% 45%,
            rgba(212,163,79,.20),
            transparent 48%
        );
    opacity:.92;
}

.fkc-hero-inner {
    max-width:760px;
}


/* Give culinary and live cards distinct identities */

.fkc-card {
    overflow:hidden;
    position:relative;
}

.fkc-card:before {
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:
        radial-gradient(
            circle at 85% 15%,
            rgba(212,163,79,.10),
            transparent 30%
        );
}

.fkc-card > * {
    position:relative;
    z-index:2;
}

.fkc-card-live {
    border-color:rgba(165,118,183,.28);
}

.fkc-card-live:before {
    background:
        radial-gradient(
            circle at 85% 15%,
            rgba(130,82,151,.22),
            transparent 36%
        );
}


/* Culinary visual rail */

.fkc-culinary-visual {
    margin-top:45px;
    display:grid;
    grid-template-columns:1.3fr .7fr;
    gap:16px;
}

.fkc-visual-slot {
    min-height:330px;
    overflow:hidden;
    position:relative;
    border:1px solid var(--fkc-line);
    border-radius:20px;
    background:
        radial-gradient(
            circle at 60% 35%,
            rgba(212,163,79,.18),
            transparent 35%
        ),
        linear-gradient(
            145deg,
            #17130e,
            #0c0c0c 65%
        );
}

.fkc-visual-slot-secondary {
    background:
        radial-gradient(
            circle at 55% 30%,
            rgba(190,105,57,.16),
            transparent 36%
        ),
        #101010;
}

.fkc-visual-label {
    position:absolute;
    left:25px;
    bottom:22px;
    color:#c7bcae;
    font-size:10px;
    font-weight:800;
    letter-spacing:.13em;
    text-transform:uppercase;
}


/* Fusion Live identity */

.fkc-live-strip {
    border-top:1px solid rgba(158,111,177,.18);
    border-bottom:1px solid rgba(158,111,177,.18);
}

.fkc-live-strip .fkc-eyebrow {
    color:#c29bd0;
}

.fkc-live-strip .fkc-button-primary {
    background:#ad83ba;
    border-color:#ad83ba;
}

.fkc-live-strip .fkc-button-secondary {
    border-color:rgba(194,155,208,.52);
    color:#d9bee2;
}

.fkc-live-mark {
    position:relative;
    overflow:hidden;
}

.fkc-live-mark:before {
    content:"";
    position:absolute;
    inset:0;
    background:
        radial-gradient(
            circle at 75% 25%,
            rgba(205,157,222,.22),
            transparent 28%
        ),
        linear-gradient(
            155deg,
            rgba(77,45,89,.42),
            rgba(12,10,14,.25)
        );
}

.fkc-live-mark > * {
    position:relative;
    z-index:2;
}


/* Custom Fusion Live page */

body.page-fusion-live .fkc-page-hero,
body.page-id-8 .fkc-page-hero {
    background:
        radial-gradient(
            circle at 78% 35%,
            rgba(142,92,161,.24),
            transparent 32%
        ),
        linear-gradient(125deg,#080708,#171019);
}

body.page-fusion-live .fkc-page-hero .fkc-eyebrow,
body.page-id-8 .fkc-page-hero .fkc-eyebrow {
    color:#c39bd0;
}

body.page-fusion-live .fkc-page-content,
body.page-id-8 .fkc-page-content {
    background:
        radial-gradient(
            circle at 80% 18%,
            rgba(116,74,130,.10),
            transparent 22%
        ),
        #070707;
}


/* Better subpage content rhythm */

.fkc-page-content .fkc-content-shell {
    max-width:960px;
}

.fkc-page-content p {
    max-width:760px;
}

.fkc-page-content h3 {
    margin-top:48px;
}


/* Media ready placeholders */

.fkc-media-ready {
    position:relative;
    overflow:hidden;
}

.fkc-media-ready img {
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}


/* Mobile */

@media(max-width:980px) {
    .fkc-home-hero:after {
        width:60%;
        opacity:.55;
    }

    .fkc-culinary-visual {
        grid-template-columns:1fr;
    }
}

@media(max-width:650px) {
    .fkc-brand-mark {
        width:42px;
        height:42px;
        flex-basis:42px;
        font-size:15px;
    }

    .fkc-brand-main {
        font-size:17px;
    }

    .fkc-brand-sub {
        font-size:7px;
    }

    .fkc-home-hero:after {
        width:100%;
        opacity:.32;
    }

    .fkc-visual-slot {
        min-height:260px;
    }
}
