/* TikiCore 0.2.26 — native Loft Collection homepage.
   No Elementor CSS/JS is required for this page. */
body.home.tc-site-profile--loft {
    --tc-loft-dark: #1b1b1d;
    --tc-loft-white: #fff;
    --tc-loft-gold: var(--tc-accent);
}
body.home.tc-site-profile--loft .tc-front-page { overflow: clip; }
body.home.tc-site-profile--loft .tc-footer { margin-top: 0; }
.tc-loft-native-home { background: #fff; }

.tc-loft-button {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    padding: .72rem 1.15rem;
    border: 1px solid currentColor;
    font-size: .86rem;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
    transition: background-color .2s ease, color .2s ease, border-color .2s ease;
}
.tc-loft-button--light { color: #fff; }
.tc-loft-button--light:hover { background: #fff; color: #171719; border-color: #fff; }
.tc-loft-button--gold { background: var(--tc-loft-gold); border-color: var(--tc-loft-gold); color: #171719; }
.tc-loft-button--gold:hover { background: #fff; border-color: #fff; color: #171719; }

.tc-loft-hero {
    position: relative;
    display: grid;
    min-height: clamp(340px, 31vw, 500px);
    place-items: center;
    overflow: hidden;
    background: #242426;
    color: #fff;
    text-align: center;
}
.tc-loft-hero__picture {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
}
.tc-loft-hero__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: var(--tc-hero-desktop-position, center center);
    display: block;
}
.tc-loft-hero__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgb(7 7 8 / 12%) 20%, rgb(7 7 8 / 54%) 100%);
}
.tc-loft-hero__content { position: relative; z-index: 1; }
.tc-loft-hero h1 {
    margin: 0;
    color: #fff;
    font-size: clamp(2.3rem, 5vw, 4.5rem);
    font-weight: 800;
    letter-spacing: -.035em;
    line-height: 1;
}
.tc-loft-hero p {
    margin: .9rem 0 1.7rem;
    color: #fff;
    font-size: clamp(1rem, 1.6vw, 1.35rem);
    font-weight: 600;
}

.tc-loft-intro { background: var(--tc-loft-dark); color: #fff; }
.tc-loft-intro__inner { padding-block: clamp(1.8rem, 3vw, 2.8rem); text-align: center; }
.tc-loft-intro h2 {
    margin: 0 0 1.35rem;
    color: var(--tc-loft-gold);
    font-size: clamp(1.5rem, 2.3vw, 2.2rem);
    line-height: 1.2;
}
.tc-loft-intro p { max-width: 980px; margin: .65rem auto; color: #fff; }

.tc-loft-light-section { background: #fff; color: #171719; }
.tc-loft-home-title {
    display: flex;
    align-items: center;
    gap: clamp(1rem, 2vw, 2rem);
    padding-block: clamp(1.35rem, 2.4vw, 2rem);
    color: var(--tc-loft-gold);
    text-align: center;
}
.tc-loft-home-title::before,
.tc-loft-home-title::after {
    content: "";
    height: 1px;
    flex: 1 1 0;
    background: #3a3835;
}
.tc-loft-home-title span {
    max-width: min(800px, 78vw);
    font-size: clamp(1.05rem, 1.55vw, 1.35rem);
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: .035em;
}

.tc-loft-collections-native { padding-bottom: clamp(1.8rem, 3vw, 2.6rem); }
.tc-loft-collections-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    grid-template-areas:
        "one one one two two two"
        "three three four four five five";
    gap: clamp(.7rem, 1.1vw, 1rem);
    max-width: 1040px;
    margin-inline: auto;
}
.tc-loft-collection-card {
    position: relative;
    display: block;
    min-height: 245px;
    overflow: hidden;
    background: #242426;
    color: #fff;
    text-decoration: none;
}
.tc-loft-collection-card--1 { grid-area: one; min-height: 315px; }
.tc-loft-collection-card--2 { grid-area: two; min-height: 315px; }
.tc-loft-collection-card--3 { grid-area: three; }
.tc-loft-collection-card--4 { grid-area: four; }
.tc-loft-collection-card--5 { grid-area: five; }
.tc-loft-collection-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .4s ease;
}
.tc-loft-collection-card__shade {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 45%, rgb(0 0 0 / 62%) 100%);
}
.tc-loft-collection-card__content {
    position: absolute;
    z-index: 1;
    left: 1.3rem;
    bottom: 1.15rem;
    display: grid;
    gap: .5rem;
}
.tc-loft-collection-card__content strong { font-size: clamp(1rem, 1.35vw, 1.25rem); }
.tc-loft-collection-card__content small {
    width: max-content;
    padding: .45rem .75rem;
    border: 1px solid rgb(255 255 255 / 85%);
    font-size: .72rem;
    font-weight: 700;
    text-transform: uppercase;
}
.tc-loft-collection-card:hover img { transform: scale(1.035); }
.tc-loft-collection-card:hover strong { color: var(--tc-loft-gold); }

.tc-loft-references-native { padding-bottom: clamp(1.2rem, 2.2vw, 1.8rem); }
.tc-loft-reference-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(1.5rem, 3vw, 3rem);
    max-width: 980px;
    margin-inline: auto;
}
.tc-loft-reference-card { color: #171719; text-decoration: none; }
.tc-loft-reference-card img {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    display: block;
}
.tc-loft-reference-card h3 {
    margin: .9rem 0 0;
    font-size: clamp(1rem, 1.25vw, 1.15rem);
    line-height: 1.35;
}
.tc-loft-reference-card:hover h3 { color: var(--tc-loft-gold); }

.tc-loft-madein-native { padding-bottom: clamp(1.6rem, 2.8vw, 2.4rem); }
.tc-loft-madein-native__text { max-width: 880px; margin-inline: auto; text-align: center; }
.tc-loft-madein-native__text p { margin: .7rem 0; }

.tc-loft-contact-native { background: #fff; }
.tc-loft-contact-native__banner {
    position: relative;
    display: grid;
    min-height: clamp(180px, 18vw, 250px);
    place-items: center;
    overflow: hidden;
    background: #62584e center/cover no-repeat;
    color: #fff;
    text-align: center;
}
.tc-loft-contact-native__shade { position: absolute; inset: 0; background: rgb(13 12 12 / 34%); }
.tc-loft-contact-native__content { position: relative; z-index: 1; display: grid; gap: .35rem; justify-items: center; }
.tc-loft-contact-native__content span { font-weight: 700; letter-spacing: .06em; }
.tc-loft-contact-native__content strong { font-size: clamp(2rem, 4vw, 3rem); line-height: 1; }
.tc-loft-contact-native__content .tc-loft-button { margin-top: .65rem; }

.tc-loft-dark-tail-native { background: var(--tc-loft-dark); color: #fff; }
.tc-loft-editorial-native { padding-block: clamp(2.2rem, 3.8vw, 3.7rem); }
.tc-loft-editorial-native + .tc-loft-editorial-native { padding-top: 0; }
.tc-loft-editorial-native__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(360px, .86fr);
    align-items: stretch;
    gap: clamp(1.6rem, 3.2vw, 3.6rem);
}
.tc-loft-editorial-native--reverse .tc-loft-editorial-native__grid { grid-template-columns: minmax(360px, .86fr) minmax(0, 1fr); }
.tc-loft-editorial-native__copy { align-self: center; }
.tc-loft-editorial-native__copy h2,
.tc-loft-seo-native h2 {
    margin: 0 0 1.25rem;
    color: var(--tc-loft-gold);
    font-size: clamp(1.5rem, 2.25vw, 2rem);
    line-height: 1.25;
    text-transform: uppercase;
    letter-spacing: .02em;
}
.tc-loft-editorial-native__copy p,
.tc-loft-editorial-native__copy li,
.tc-loft-seo-native p { color: #fff; }
.tc-loft-editorial-native__copy strong,
.tc-loft-seo-native strong { color: var(--tc-loft-gold); }
.tc-loft-editorial-native__copy ul { margin: 1.2rem 0 0; padding-left: 1.15rem; }
.tc-loft-editorial-native__copy li + li { margin-top: .5rem; }
.tc-loft-editorial-native__media { min-height: 460px; background: #242426; overflow: hidden; }
.tc-loft-editorial-native__media img { width: 100%; height: 100%; object-fit: cover; display: block; }

.tc-loft-seo-native { padding: clamp(2.2rem, 3.5vw, 3.2rem) 0 clamp(2.2rem, 3.5vw, 3.2rem); text-align: center; }
.tc-loft-seo-native__inner { max-width: 1000px; }
.tc-loft-seo-native p { margin: 1rem auto; }

@media (max-width: 900px) {
    .tc-loft-collections-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-template-areas: none;
    }
    .tc-loft-collection-card,
    .tc-loft-collection-card--1,
    .tc-loft-collection-card--2,
    .tc-loft-collection-card--3,
    .tc-loft-collection-card--4,
    .tc-loft-collection-card--5 { grid-area: auto; min-height: 280px; }
    .tc-loft-editorial-native__grid,
    .tc-loft-editorial-native--reverse .tc-loft-editorial-native__grid { grid-template-columns: 1fr; }
    .tc-loft-editorial-native--reverse .tc-loft-editorial-native__media { order: 2; }
    .tc-loft-editorial-native__media { min-height: 400px; }
}

@media (max-width: 620px) {
    .tc-loft-hero { min-height: 360px; }
    .tc-loft-hero__image { object-position: var(--tc-hero-mobile-position, center center); }
    .tc-loft-home-title { gap: .7rem; }
    .tc-loft-home-title span { max-width: 76vw; }
    .tc-loft-collections-grid,
    .tc-loft-reference-grid { grid-template-columns: 1fr; }
    .tc-loft-collection-card,
    .tc-loft-collection-card--1,
    .tc-loft-collection-card--2 { min-height: 270px; }
    .tc-loft-editorial-native__media { min-height: 340px; }
}


/* 0.2.26 — tighter native-home rhythm, closer to the validated Elementor layout. */
.tc-loft-intro h2 { margin-bottom: 1rem; }
.tc-loft-intro p { margin-block: .42rem; }
.tc-loft-reference-card h3 { margin-top: .65rem; }
.tc-loft-madein-native__text p { margin-block: .5rem; }
.tc-loft-editorial-native__copy p { margin-block: .72rem; }
.tc-loft-seo-native p { margin-block: .72rem; }
.tc-loft-dark-tail-native + .tc-footer { margin-top: 0; }

/* 0.2.29 — responsive home images: keep original files off the critical path. */
.tc-loft-contact-native__image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* 0.2.30 — dedicated desktop/mobile hero images with independent crop position. */
