/* This stylesheet is loaded after site.css to keep the public homepage
   independent from older, inherited theme rules. */

/* Restore the original dark-and-gold header hierarchy. */
.site-header,
.site-header--inner {
    background: #0b0e12 !important;
}

.site-header .desktop-header,
.site-header--inner .desktop-header,
.site-header .mobile-header,
.site-header--inner .mobile-header {
    color: #ffffffa3;
    background: #0d1014 !important;
}

.site-header .announcement-bar {
    color: rgb(255 255 255 / 68%);
    background: #080a0d !important;
    border-bottom: 1px solid rgb(255 255 255 / 8%);
}


.site-header .header-action,
.site-header .header-action small,
.site-header .header-search-link,
.site-header .header-search-link .icon,
.site-header .mobile-menu-trigger {
    color: #ffffffa3;
}


.site-header .desktop-segment-picker__trigger > .icon:first-child {
    color: #d9ad61;
}
.site-header .header-action > .icon {
    color: #d9ad61;
    font-size: 16px;
}

.site-header .desktop-segment-picker__trigger {
    color: #f6f1e8;
    background: rgb(236 200 125 / 12%);
    border-color: rgb(217 173 97 / 39%);
}

.site-header .desktop-segment-picker__trigger:hover,
.site-header .desktop-segment-picker__trigger:focus-visible,
.site-header .desktop-segment-picker.is-open .desktop-segment-picker__trigger {
    color: #fff;
    background: rgb(217 173 97 / 18%);
    border-color: #d9ad61;
}

/* Font Awesome icons are inline glyphs. Reset the old negative offset so the
   palette, text and chevron sit on one precise centre line. */
.site-header .desktop-segment-picker__trigger {
    align-items: center;
    line-height: 1;
}

.site-header .desktop-segment-picker__trigger > .icon {
    display: inline-grid;
    flex: 0 0 auto;
    place-items: center;
    margin: 0 !important;
    line-height: 1;
    vertical-align: middle;
}

.site-header .primary-nav,
.site-header--inner .primary-nav {
    background: #c9a15d !important;
}

.site-header .primary-nav a,
.site-header .primary-nav li > a,
.site-header .primary-nav .icon {
    color: #4e3016;
}

.site-header .primary-nav a:hover,
.site-header .primary-nav a:focus-visible {
    color: #fffdf8;
    background: transparent;
}

/* Place the visual category collection back over the hero, as in the source
   layout, without bringing back the former introductory block. */
.page-home .brand-rail {
    position: relative;
    z-index: 6;
    margin-top: -239px;
    padding-top: 0;
    padding-bottom: 0px;
    margin-bottom: -66px;
    background: transparent;
}

.page-home .brand-grid {
    box-shadow: none;
}

/* Flat category cards: no arrows, rounding, outlines or drop shadows. */
.brand-tile--visual .brand-tile__arrow {
    display: none !important;
}

.brand-tile.brand-tile--visual,
.page-home .brand-tile.brand-tile--visual,
.page-brands .brand-tile.brand-tile--visual,
.brand-tile.brand-tile--visual:hover,
.page-home .brand-tile.brand-tile--visual:hover,
.page-brands .brand-tile.brand-tile--visual:hover {
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transform: none;
}

@media (width <= 760px) {
    .page-home,
    .page-brands {
        overflow-x: hidden;
    }
    .page-home h2#spotlight-title {
    font-size: 15px;
    font-weight: 600;
}

.page-home .brand-rail {
    margin-top: -120px;
    padding-top: 0;
    padding-bottom: 0px;
    margin-bottom: 60px;
}

.brand-grid, .page-home .brand-grid, .page-brands .brand-grid {
    width: 100%;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-bottom: -122px;
}

    .brand-tile.brand-tile--visual,
    .page-home .brand-tile.brand-tile--visual,
    .page-brands .brand-tile.brand-tile--visual {
        width: 100%;
        min-width: 0;
        min-height: 0;
        aspect-ratio: 1 / 0.6;
    }

    .brand-tile--visual .brand-tile__shade {
        background: linear-gradient(180deg, rgb(12 9 5 / 0%) 16%, rgb(12 9 5 / 0%) 52%, rgb(12 9 5 / 88%) 100%);
    }

    .brand-tile--visual .brand-tile__content {
        right: 10px;
        bottom: 10px;
        left: 10px;
        text-align: center;
    }

    .brand-tile--visual .brand-tile__eyebrow {
        display: none;
    }

    .brand-tile--visual strong,
    .page-home .brand-tile--visual strong,
    .page-brands .brand-tile--visual strong {
        font-size: 12.9px;
        line-height: 1.15;
        text-align: center;
    }

    .brand-tile--visual small,
    .page-home .brand-tile--visual small,
    .page-brands .brand-tile--visual small {
        margin-top: 4px;
        font-size: 8.5px;
        line-height: 1.35;
        text-align: center;
        -webkit-line-clamp: 2;
        display: none;
    }
}

/* A composed mobile dock: the phone stays prominent, the existing drawer is
   now available from the Menu cell, and every icon/label shares one baseline. */
@media (max-width: 1024px) {
    /* Giữ nguyên giao diện menu gốc; chỉ đổi hướng mở từ trái sang phải. */
    .mobile-menu {
        right: auto;
        left: 0;
        transform: translateX(-100%);
    }

    .mobile-menu.is-open {
        transform: translateX(0);
    }

.mobile-bottom-nav {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    align-items: stretch;
    width: auto;
    max-width: none;
    min-height: 64px;
    margin: 0 !important;
    overflow: hidden;
    color: #f8f4eb;
    background: rgb(10 13 17 / 97%);
    border: 1px solid rgb(217 173 97 / 15%);
    border-radius: 0;
    border-bottom: 0px solid #555;
    box-shadow: 0 12px 28px rgb(0 0 0 / 30%);
    backdrop-filter: blur(12px);
}

    .mobile-bottom-nav > a,
    .mobile-bottom-nav > button {
        display: grid;
        grid-template-rows: 34px 18px;
        place-items: center;
        gap: 0;
        min-width: 0;
        min-height: 62px;
        padding: 5px 2px 4px;
        color: #f7f2e9;
        background: transparent;
        border: 0;
        border-right: 1px solid rgb(217 173 97 / 15%);
        border-radius: 0;
        font: inherit;
        line-height: 1;
    }

    .mobile-bottom-nav > :last-child {
        border-right: 0;
    }

    .mobile-bottom-nav > a > .icon,
    .mobile-bottom-nav > button > .icon,
    .mobile-bottom-nav > a > img {
        grid-row: 1;
        align-self: center;
        justify-self: center;
        width: 17px;
        height: 17px;
        margin: 0;
        color: #e0b663;
    }

.mobile-bottom-nav > a > span, .mobile-bottom-nav > button > span {
    grid-row: 2;
    align-self: center;
    justify-self: center;
    width: 100%;
    margin: 0;
    padding: 0 1px;
    overflow: hidden;
    letter-spacing: 0.5px;
    color: rgb(255 237 196);
    font-size: 8px;
    font-weight: 400;
    line-height: 1;
    text-align: center;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

    .mobile-bottom-nav .mobile-bottom-nav__menu {
        cursor: pointer;
    }

    .mobile-bottom-nav .mobile-call-link {
        position: relative;
        isolation: isolate;
        grid-template-rows: 1fr;
        align-items: center;
        justify-items: center;
        gap: 0;
        background: linear-gradient(180deg, rgb(9 31 22 / 98%) 0%, rgb(6 20 14 / 98%) 100%);
        overflow: hidden;
    }

    .mobile-bottom-nav .mobile-call-link::before {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        width: 44px;
        height: 44px;
        border-radius: 999px;
        border: 1px solid rgb(64 218 134 / 48%);
        transform: translate(-50%, -50%);
        opacity: .75;
        animation: mobile-call-ring 2.4s ease-out infinite;
        pointer-events: none;
    }

    .mobile-bottom-nav .mobile-call-link .icon {
        grid-row: 1;
        position: relative;
        z-index: 1;
        display: grid;
        place-items: center;
        width: 18px;
        height: 18px;
        padding: 11px;
        box-sizing: content-box;
        color: #ffffff;
        background: linear-gradient(135deg, #26cf78 0%, #12a960 57%, #087742 100%);
        border: 1px solid rgb(255 255 255 / 26%);
        border-radius: 999px;
        box-shadow: 0 10px 22px rgb(8 134 69 / 44%), inset 0 1px 0 rgb(255 255 255 / 30%);
        animation: mobile-call-pulse 2.4s ease-in-out infinite;
    }

    .mobile-bottom-nav .mobile-call-link span {
        position: absolute !important;
        width: 1px;
        height: 1px;
        margin: -1px;
        padding: 0;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        clip-path: inset(50%);
        border: 0;
        white-space: nowrap;
    }

    .mobile-bottom-nav .mobile-bottom-nav__segment {
        color: #fff;
        background: rgb(217 173 97 / 12%);
        border-left: 0;
    }

    .mobile-bottom-nav .mobile-bottom-nav__segment .icon {
        color: #efc873;
    }

    .mobile-bottom-nav > a:hover,
    .mobile-bottom-nav > a:focus-visible,
    .mobile-bottom-nav > button:hover,
    .mobile-bottom-nav > button:focus-visible {
        color: #fff;
        background: rgb(255 255 255 / 8%);
        outline: 0;
    }

    .mobile-bottom-nav .mobile-call-link:hover,
    .mobile-bottom-nav .mobile-call-link:focus-visible {
        background: linear-gradient(180deg, rgb(10 43 29 / 98%) 0%, rgb(7 28 19 / 98%) 100%);
    }

    .mobile-bottom-nav .mobile-call-link:hover .icon,
    .mobile-bottom-nav .mobile-call-link:focus-visible .icon {
        transform: translateY(-1px) scale(1.04);
    }
}

@keyframes mobile-call-pulse {
    0%, 100% {
        transform: scale(1);
        box-shadow: 0 10px 22px rgb(8 134 69 / 44%), inset 0 1px 0 rgb(255 255 255 / 30%);
    }
    50% {
        transform: scale(1.06);
        box-shadow: 0 14px 26px rgb(8 134 69 / 52%), 0 0 0 6px rgb(38 207 120 / 9%), inset 0 1px 0 rgb(255 255 255 / 34%);
    }
}

@keyframes mobile-call-ring {
    0% {
        transform: translate(-50%, -50%) scale(.82);
        opacity: 0;
    }
    22% {
        opacity: .58;
    }
    70% {
        opacity: .18;
    }
    100% {
        transform: translate(-50%, -50%) scale(1.34);
        opacity: 0;
    }
}

@media (max-width: 1024px) and (prefers-reduced-motion: reduce) {
    .mobile-bottom-nav .mobile-call-link::before,
    .mobile-bottom-nav .mobile-call-link .icon {
        animation: none;
    }
}

/* Homepage spotlight: a photo-led project gallery with only the project name
   and price. The composition intentionally reuses the images chosen in CRM. */
.page-home .spotlight-mosaic {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: clamp(58px, 6.5vw, 104px) 0;
    color: #fff;
    background:
        radial-gradient(circle at 12% 12%, rgb(220 178 96 / 15%), transparent 31%),
        linear-gradient(124deg, #090c10 0%, #101419 54%, #080a0d 100%);
}

.page-home .spotlight-mosaic::before,
.page-home .spotlight-mosaic::after {
    z-index: -1;
    content: "";
    pointer-events: none;
    position: absolute;
    inset: 0;
}

.page-home .spotlight-mosaic::before {
    opacity: .5;
    background-image: linear-gradient(90deg, rgb(255 255 255 / 3%) 1px, transparent 1px);
    background-size: 82px 100%;
    mask-image: linear-gradient(90deg, #000, transparent 78%);
}

.page-home .spotlight-mosaic::after {
    opacity: .75;
    background: linear-gradient(90deg, transparent 0 70%, rgb(211 167 84 / 7%) 100%);
}

.page-home .spotlight-mosaic__section-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: end;
    gap: clamp(16px, 3vw, 42px);
    margin: 0 0 clamp(16px, 2vw, 5px);
    padding: 0px;
}

.page-home .spotlight-mosaic__section-copy {
    display: grid;
    gap: 6px;
    min-width: 0;
    padding-left: 15px;
    border-left: 2px solid #e5bd68;
}

.page-home .spotlight-mosaic__grid {
    display: grid;
    grid-template-columns: minmax(0, 1.42fr) minmax(330px, .88fr);
    gap: clamp(9px, 1vw, 16px);
    align-items: stretch;
}

.page-home .spotlight-mosaic__grid--solo {
    grid-template-columns: minmax(0, 1fr);
}

.page-home .spotlight-mosaic__lead,
.page-home .spotlight-mosaic__tile {
    display: block;
    overflow: hidden;
    color: inherit;
    background: #15191e;
    text-decoration: none;
}

.page-home .spotlight-mosaic__lead {
    position: relative;
    min-height: clamp(390px, 41.5vw, 590px);
    isolation: isolate;
}

.page-home .spotlight-mosaic__lead::after {
    z-index: 1;
    content: "";
    pointer-events: none;
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgb(5 7 10 / 17%) 0%, rgb(5 7 10 / 7%) 31%, rgb(5 7 10 / 23%) 54%, rgb(5 7 10 / 89%) 100%),
        linear-gradient(90deg, rgb(5 7 10 / 37%), transparent 64%);
}

.page-home .spotlight-mosaic__lead > img,
.page-home .spotlight-mosaic__tile > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
    transition: transform .85s cubic-bezier(.18, .78, .22, 1), filter .55s ease;
}

.page-home .spotlight-mosaic__lead > img {
    position: absolute;
    inset: 0;
    filter: saturate(.88) contrast(1.04);
}

.page-home .spotlight-mosaic__shine {
    z-index: 2;
    pointer-events: none;
    width: 42%;
    height: 160%;
    opacity: 0;
    background: linear-gradient(105deg, transparent, rgb(255 241 198 / 22%), transparent);
    transition: transform 1.05s ease, opacity .4s ease;
    position: absolute;
    top: -34%;
    left: -52%;
    transform: translateX(-135%) skewX(-19deg);
}

.page-home .spotlight-mosaic__eyebrow {
    display: block;
    color: #efca77;
    font-size: 11px;
    font-weight: 400;
    letter-spacing: .13em;
    line-height: 1.2;
        margin-top: -3px;

}

.page-home .spotlight-mosaic__title,
.page-home .spotlight-mosaic__price {
    display: block;
}

.page-home h2#spotlight-title {
    display: -webkit-box;
    margin: 0;
    padding: 0;
    overflow: hidden;
    color: #fff;
    font-size: clamp(12px, 2.15vw, 20px);
    font-weight: 560;
    line-height: 1.34;
    text-align: left;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    margin-bottom: -6px;
}

.page-home .spotlight-mosaic__price {
    color: #efca77;
    font-size: clamp(17px, 1.6vw, 23px);
    font-weight: 800;
    letter-spacing: .015em;
    line-height: 1.1;
    text-align: right;display: none;
    white-space: nowrap;
}

.page-home .spotlight-mosaic__lead-specs {
    z-index: 3;
    position: absolute;
    right: clamp(16px, 2.2vw, 28px);
    bottom: clamp(16px, 2.2vw, 28px);
    left: clamp(16px, 2.2vw, 28px);
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1px;
    overflow: hidden;
    color: #fff;
    background: linear-gradient(135deg, rgb(237 199 110 / 5%), rgb(144 99 34 / 0%));
    box-shadow: 0 14px 34px rgb(0 0 0 / 28%), inset 0 1px rgb(255 250 230 / 14%);
    backdrop-filter: blur(9px);
    -webkit-backdrop-filter: blur(9px);
}

.page-home .spotlight-mosaic__lead-spec {
    position: relative;
    display: grid;
    grid-template-columns: 18px minmax(0, 1fr);
    align-content: center;
    gap: 7px;
    min-width: 0;
    min-height: 58px;
    padding: 9px 11px;
    overflow: hidden;
    background: #00000047;
    transition: background .25s ease;
}

.page-home .spotlight-mosaic__lead-spec::after {
    content: "";
    pointer-events: none;
    position: absolute;
    right: -36px;
    bottom: -36px;
    width: 88px;
    height: 88px;
    opacity: .42;
}

.page-home .spotlight-mosaic__lead-spec:nth-child(7) {
    grid-column: span 2;
}

.page-home .spotlight-mosaic__lead-spec > .icon {
    align-self: start;
    width: 17px;
    height: 17px;
    margin-top: 1px;
    color: #edc66f;
    stroke-width: 1.9px;
}

.page-home .spotlight-mosaic__lead-spec > span {
    position: relative;
    z-index: 1;
    min-width: 0;
}

.page-home .spotlight-mosaic__lead-spec small {
    display: block;
    overflow: hidden;
    color: rgb(255 255 255 / 57%);
    font-size: 9px;
    font-weight: 400;
    letter-spacing: .045em;
    line-height: 1.2;
    letter-spacing: 1.2px;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.page-home .spotlight-mosaic__lead-spec strong {
    display: block;
    margin-top: 3px;
    overflow-wrap: anywhere;
    color: #fffdf8;
    font-size: clamp(12px, .88vw, 16px);
    font-weight: 600;
    line-height: 1.25;
}

.page-home .spotlight-mosaic__gallery {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(2, minmax(0, 1fr));
    gap: clamp(9px, 1vw, 16px);
    min-height: 0;
}

.page-home .spotlight-mosaic__tile {
    position: relative;
    min-height: 0;
    isolation: isolate;
}

.page-home .spotlight-mosaic__tile::after {
    z-index: 1;
    content: "";
    pointer-events: none;
    opacity: .6;
    background: linear-gradient(145deg, transparent 42%, rgb(4 6 8 / 69%) 100%);
    transition: opacity .35s ease;
    position: absolute;
    inset: 0;
}

.page-home .spotlight-mosaic__gallery--1 .spotlight-mosaic__tile {
    grid-column: span 2;
    grid-row: span 2;
}

.page-home .spotlight-mosaic__gallery--2 .spotlight-mosaic__tile {
    grid-row: span 2;
}

.page-home .spotlight-mosaic__gallery--3 .spotlight-mosaic__tile:first-child {
    grid-row: span 2;
}

.page-home .spotlight-mosaic__lead:hover > img,
.page-home .spotlight-mosaic__lead:focus-visible > img {
    filter: saturate(1.01) contrast(1.07);
    transform: scale(1.045);
}

.page-home .spotlight-mosaic__lead:hover .spotlight-mosaic__shine,
.page-home .spotlight-mosaic__lead:focus-visible .spotlight-mosaic__shine {
    opacity: 1;
    transform: translateX(410%) skewX(-19deg);
}

.page-home .spotlight-mosaic__tile:hover > img,
.page-home .spotlight-mosaic__tile:focus-visible > img {
    filter: saturate(1.08) contrast(1.06);
    transform: scale(1.07);
}

.page-home .spotlight-mosaic__tile:hover::after,
.page-home .spotlight-mosaic__tile:focus-visible::after {
    opacity: .27;
}

.page-home .spotlight-mosaic__lead:focus-visible,
.page-home .spotlight-mosaic__tile:focus-visible {
    z-index: 5;
    outline: 2px solid #f0c96f;
    outline-offset: 4px;
}

@media (max-width: 980px) {
    .page-home .spotlight-mosaic__grid {
        grid-template-columns: minmax(0, 1.2fr) minmax(250px, .8fr);
    }

    .page-home .spotlight-mosaic__lead {
        min-height: clamp(360px, 51vw, 490px);
    }

    .page-home .spotlight-mosaic__section-head {
        gap: 20px;
    }

    .page-home .spotlight-mosaic__lead-specs {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .page-home .spotlight-mosaic__lead-spec:nth-child(7) {
        grid-column: span 3;
    }
}

@media (max-width: 760px) {
    .page-home .spotlight-mosaic {
        padding: 132px 0 40px;
    }

    .page-home .spotlight-mosaic__grid,
    .page-home .spotlight-mosaic__grid--solo {
        grid-template-columns: minmax(0, 1fr);
        gap: 7px;
    }

    .page-home .spotlight-mosaic__lead {
        min-height: 0;
        aspect-ratio: 1 / 1.07;
    }

    .page-home .spotlight-mosaic__section-head {
        grid-template-columns: minmax(0, 1fr);
        align-items: start;
        gap: 6px;
        margin-bottom: 12px;
        padding-bottom: 0;
        position: relative;
        border-top: 0;
        border-bottom: 0;
        padding-top: 22px;
    }

    /* Mobile-only champagne-gold artwork replaces the original dashed rule.
       Kept on the existing header so no markup or desktop layout changes. */
    .page-home .spotlight-mosaic__section-head::before {
        content: "";
        position: absolute;
        inset: 0 0 auto;
        display: block;
        height: 15px;
        background: transparent url('../images/ui/spotlight-divider-gold.webp') center center / 88% auto no-repeat;
        pointer-events: none;
    }

    .page-home .spotlight-mosaic__section-copy {
        gap: 4px;
        padding-left: 10px;
    }

    .page-home .spotlight-mosaic__eyebrow {
        font-size: 8px;
        letter-spacing: .1em;
    }

    .page-home .spotlight-mosaic__title {
        font-size: 19px;
        line-height: 1.28;
    }

.page-home .spotlight-mosaic__price {
    font-size: 16px;
    text-align: left;
    margin-left: 11px;
    margin-top: 10px;
}

    .page-home .spotlight-mosaic__lead-specs {
        right: 11px;
        bottom: 11px;
        left: 11px;
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .page-home .spotlight-mosaic__lead-spec {
        grid-template-columns: 13px minmax(0, 1fr);
        gap: 4px;
        min-height: 54px;
        padding: 7px 6px;
    }

    .page-home .spotlight-mosaic__lead-spec:nth-child(7) {
        grid-column: span 2;
    }

    .page-home .spotlight-mosaic__lead-spec > .icon {
        width: 13px;
        height: 13px;
    }

    .page-home .spotlight-mosaic__lead-spec small {
        font-size: 7px;
        letter-spacing: .035em;
    }

    .page-home .spotlight-mosaic__lead-spec:nth-child(4) small {
        font-size: 0;
        letter-spacing: 0;
    }

    .page-home .spotlight-mosaic__lead-spec:nth-child(4) small::after {
        content: "Công năng";
        font-size: 7px;
        letter-spacing: .035em;
    }

    .page-home .spotlight-mosaic__lead-spec strong {
        display: -webkit-box;
        margin-top: 2px;
        overflow: hidden;
        font-size: 9px;
        line-height: 1.12;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
    }

    .page-home .spotlight-mosaic__gallery {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-template-rows: none;
        grid-auto-rows: auto;
        gap: 7px;
    }

    .page-home .spotlight-mosaic__tile,
    .page-home .spotlight-mosaic__gallery--2 .spotlight-mosaic__tile,
    .page-home .spotlight-mosaic__gallery--3 .spotlight-mosaic__tile:first-child {
        grid-column: auto;
        grid-row: auto;
        aspect-ratio: 1.22 / 1;
    }

    .page-home .spotlight-mosaic__gallery--1 .spotlight-mosaic__tile {
        grid-column: span 2;
        grid-row: auto;
        aspect-ratio: 16 / 9;
    }
}

/* Carry the eye from the featured dossier into the wider project library. */
.page-home .featured-products--linked {
    position: relative;
    z-index: 1;
    content-visibility: visible;
    contain-intrinsic-size: auto;
    padding: 0 0 clamp(20px, 2vw, 60px);
    overflow: hidden;
    background: linear-gradient(180deg, #080b0f 0, #0b0f14 150px, #f4f1eb 150px, #faf8f4 100%);
}

.page-home .featured-products--linked::before {
    z-index: 0;
    content: "";
    pointer-events: none;
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 152px;
    opacity: .72;
    background:
        linear-gradient(90deg, transparent 0 18%, rgb(234 196 111 / 10%) 18.1% 18.18%, transparent 18.3% 100%),
        radial-gradient(circle at 85% 0, rgb(231 187 93 / 14%), transparent 42%);
}

.page-home .featured-products--linked .container {
    position: relative;
    z-index: 1;
}
.page-home .featured-products__bridge {
    display: grid;
    grid-template-columns: 52px minmax(0, 1.16fr) minmax(230px, .7fr);
    align-items: end;
    gap: 20px;
    min-height: 39px;
    margin: 0;
    padding: 20px 0 0px;
    color: #fff;
}

.page-home .featured-products__index {
    align-self: center;
    color: #e9c372;
    font-size: clamp(29px, 3vw, 43px);
    font-weight: 300;
    letter-spacing: -.075em;
    line-height: .8;
    opacity: .88;
}

.page-home .featured-products__bridge-copy {
    min-width: 0;
}

.page-home .featured-products__eyebrow {
    display: block;
    margin-bottom: 2px;
    color: #ebc873;
    font-size: 11px;
    font-weight: 400;
    line-height: 1.2;
}

.page-home .featured-products__bridge h2 {
    max-width: 740px;
    margin: 0;
    color: #fffdfa;
    font-size: clamp(15px, 2.1vw, 20px);
    font-weight: 540;
    line-height: 1.26;
}

.page-home .featured-products__bridge > p {
    max-width: 380px;
    margin: 0 0 2px;
    color: rgb(255 255 255 / 64%);
    font-size: 12px;
    display: none;
    line-height: 1.65;
}

.page-home .featured-products--linked .luxury-product-grid {
    margin-top: 10px;
}

/* An image-led proof of craft: research, technical documentation and delivery
   share one visual rhythm instead of becoming a text-only promise section. */
.page-home .design-craft {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: clamp(76px, 8vw, 132px) 0;
    color: #fff;
    background:
        radial-gradient(circle at 82% 16%, rgb(214 166 80 / 18%), transparent 26%),
        linear-gradient(124deg, #080b0f 0%, #11161b 51%, #090c10 100%);
}

.page-home .design-craft::before,
.page-home .design-craft::after {
    z-index: -1;
    content: "";
    pointer-events: none;
    position: absolute;
    inset: 0;
}

.page-home .design-craft::before {
    opacity: .44;
    background-image: linear-gradient(90deg, rgb(255 255 255 / 3%) 1px, transparent 1px);
    background-size: 76px 100%;
    mask-image: linear-gradient(90deg, #000, transparent 74%);
}

.page-home .design-craft::after {
    opacity: .56;
    background: linear-gradient(180deg, rgb(255 255 255 / 3%), transparent 28%, rgb(0 0 0 / 22%) 100%);
}

.page-home .design-craft__layout {
    display: grid;
    grid-template-columns: minmax(310px, .82fr) minmax(440px, 1.18fr);
    align-items: center;
    gap: clamp(42px, 7vw, 118px);
}

.page-home .design-craft__content {
    position: relative;
    z-index: 1;
    min-width: 0;
}

.page-home .design-craft__eyebrow {
    display: block;
    margin-bottom: 13px;
    color: #ecc774;
    font-size: 10px;
    font-weight: 400;
    letter-spacing: .16em;
    line-height: 1.2;
}

.page-home .design-craft h2 {
    max-width: 570px;
    margin: 0;
    color: #fffdf8;
    font-size: clamp(31px, 3.55vw, 53px);
    font-weight: 500;
    letter-spacing: -.055em;
    line-height: 1.08;
}

.page-home .design-craft__lead {
    max-width: 535px;
    margin: 22px 0 0;
    color: rgb(255 255 255 / 70%);
    font-size: 14px;
    line-height: 1.75;
}

.page-home .design-craft__steps {
    display: grid;
    margin: clamp(27px, 3vw, 40px) 0 0;
    padding: 0;
    list-style: none;
    border-top: 1px solid rgb(255 255 255 / 16%);
}

.page-home .design-craft__steps li {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr);
    gap: 13px;
    align-items: start;
    min-width: 0;
    padding: 15px 0;
    border-bottom: 1px solid rgb(255 255 255 / 14%);
}

.page-home .design-craft__step-icon {
    display: grid;
    width: 35px;
    height: 35px;
    place-items: center;
    color: #eec873;
    background: rgb(229 188 104 / 10%);
    border: 1px solid rgb(239 204 129 / 29%);
}

.page-home .design-craft__step-icon .icon {
    width: 17px;
    height: 17px;
    color: currentcolor;
    stroke-width: 1.9px;
}

.page-home .design-craft__steps li > span:last-child {
    min-width: 0;
}

.page-home .design-craft__steps strong,
.page-home .design-craft__steps small {
    display: block;
}

.page-home .design-craft__steps strong {
    color: #fffdfa;
    font-size: 13px;
    font-weight: 750;
    line-height: 1.35;
}

.page-home .design-craft__steps small {
    margin-top: 3px;
    color: rgb(255 255 255 / 57%);
    font-size: 11px;
    line-height: 1.5;
}

.page-home .design-craft__cta {
    display: inline-flex;
    align-items: center;
    gap: 11px;
    margin-top: 28px;
    padding: 0 0 8px;
    color: #efc970;
    border-bottom: 1px solid rgb(239 201 112 / 52%);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .035em;
    text-transform: uppercase;
    transition: color .25s ease, border-color .25s ease, gap .25s ease;
}

.page-home .design-craft__cta .icon {
    width: 17px;
    height: 17px;
    color: currentcolor;
}

.page-home .design-craft__cta:hover,
.page-home .design-craft__cta:focus-visible {
    gap: 15px;
    color: #fff8e9;
    border-color: #fff8e9;
    outline: 0;
}

.page-home .design-craft__gallery {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr);
    grid-template-rows: repeat(2, minmax(0, 1fr));
    gap: clamp(8px, 1vw, 15px);
    min-height: clamp(420px, 40vw, 592px);
}

.page-home .design-craft__photo {
    position: relative;
    min-width: 0;
    min-height: 0;
    margin: 0;
    overflow: hidden;
    background: #14191e;
}

.page-home .design-craft__photo::after {
    z-index: 1;
    content: "";
    pointer-events: none;
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgb(4 6 8 / 3%) 32%, rgb(4 6 8 / 81%) 100%);
}

.page-home .design-craft__photo--1 {
    grid-row: span 2;
}

.page-home .design-craft__photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    filter: saturate(.86) contrast(1.04);
    transition: transform .8s cubic-bezier(.2, .74, .22, 1), filter .45s ease;
}

.page-home .design-craft__photo--1 img {
    object-position: center;
}

.page-home .design-craft__photo figcaption {
    z-index: 2;
    display: grid;
    gap: 3px;
    position: absolute;
    right: 15px;
    bottom: 14px;
    left: 15px;
    color: #fff;
}

.page-home .design-craft__photo figcaption span {
    color: #f0c974;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .14em;
    line-height: 1.2;
}

.page-home .design-craft__photo figcaption strong {
    color: #fffdf8;
    font-size: clamp(12px, 1.1vw, 16px);
    font-weight: 700;
    line-height: 1.25;
}

.page-home .design-craft__photo:hover img,
.page-home .design-craft__photo:focus-within img {
    filter: saturate(1.04) contrast(1.08);
    transform: scale(1.055);
}

.page-home .design-craft__seal {
    z-index: 3;
    display: grid;
    width: clamp(98px, 10vw, 142px);
    aspect-ratio: 1;
    place-content: center;
    gap: 3px;
    position: absolute;
    top: 43%;
    left: 49%;
    color: #16120c;
    background: #ebc56f;
    border: 5px solid rgb(12 15 19 / 86%);
    box-shadow: 0 18px 35px rgb(0 0 0 / 28%);
    text-align: center;
    transform: translate(-50%, -50%) rotate(-5deg);
}

.page-home .design-craft__seal strong {
    font-size: clamp(23px, 2.4vw, 34px);
    font-weight: 400;
    letter-spacing: -.08em;
    line-height: .8;
}

.page-home .design-craft__seal small {
    color: rgb(18 15 10 / 74%);
    font-size: 8px;
    font-weight: 800;
    letter-spacing: .055em;
    line-height: 1.3;
    text-transform: uppercase;
}

@media (max-width: 980px) {
    .page-home .featured-products--linked {
        background: linear-gradient(180deg, #080b0f 0, #0b0f14 172px, #f4f1eb 172px, #faf8f4 100%);
    }

    .page-home .featured-products__bridge {
        grid-template-columns: 48px minmax(0, 1fr);
        min-height: 39px;
    }

    .page-home .featured-products__bridge > p {
        grid-column: 2;
        max-width: 610px;
        margin-top: -8px;
    }

    .page-home .design-craft__layout {
        grid-template-columns: minmax(280px, .86fr) minmax(340px, 1.14fr);
        gap: 34px;
    }

    .page-home .design-craft__gallery {
        min-height: 470px;
    }
}

@media (max-width: 760px) {
    .page-home .featured-products--linked {
        padding-bottom: 10px;
        background: linear-gradient(180deg, #080b0f 0, #0b0f14 202px, #f4f1eb 202px, #faf8f4 100%);
    }
    section.latest-news.latest-news--video.section {
    padding-top: 0px;
}
.page-home .featured-products__bridge {
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 12px 13px;
    min-height: 30px;
    padding: 20px 0 20px;
}

    .page-home .featured-products__index {
        align-self: start;
        padding-top: 3px;
        font-size: 30px;
    }

    .page-home .featured-products__eyebrow {
        margin-bottom: 6px;
        font-size: 8px;
        letter-spacing: .105em;
    }

.page-home .featured-products__bridge h2 {
    font-size: 15.8px;
    line-height: 1.5;
    font-weight: 500;
    margin-bottom: -10px;
}

    .page-home .featured-products__bridge > p {
        grid-column: 2;
        margin: 0;
        font-size: 11px;
        line-height: 1.55;
    }

    .page-home .featured-products--linked .luxury-product-grid {
        margin-top: 5px;
    }

    .page-home .design-craft {
        padding: 59px 0 66px;
    }

    .page-home .design-craft__layout {
        grid-template-columns: minmax(0, 1fr);
        gap: 35px;
    }

    .page-home .design-craft__eyebrow {
        margin-bottom: 10px;
        font-size: 8px;
        letter-spacing: .115em;
    }

    .page-home .design-craft h2 {
        max-width: 355px;
        font-size: 31px;
        line-height: 1.1;
    }

    .page-home .design-craft__lead {
        margin-top: 16px;
        font-size: 12px;
        line-height: 1.68;
    }

    .page-home .design-craft__steps {
        margin-top: 23px;
    }

    .page-home .design-craft__steps li {
        grid-template-columns: 33px minmax(0, 1fr);
        gap: 10px;
        padding: 12px 0;
    }

    .page-home .design-craft__step-icon {
        width: 31px;
        height: 31px;
    }

    .page-home .design-craft__step-icon .icon {
        width: 15px;
        height: 15px;
    }

    .page-home .design-craft__steps strong {
        font-size: 12px;
    }

    .page-home .design-craft__steps small {
        margin-top: 2px;
        font-size: 10px;
        line-height: 1.43;
    }

    .page-home .design-craft__cta {
        margin-top: 22px;
        font-size: 10px;
    }

    .page-home .design-craft__gallery {
        min-height: 398px;
        gap: 7px;
    }

    .page-home .design-craft__photo figcaption {
        right: 9px;
        bottom: 9px;
        left: 9px;
    }

    .page-home .design-craft__photo figcaption span {
        font-size: 7px;
        letter-spacing: .09em;
    }

    .page-home .design-craft__photo figcaption strong {
        font-size: 10px;
        line-height: 1.18;
    }

    .page-home .design-craft__seal {
        width: 88px;
        border-width: 4px;
    }

    .page-home .design-craft__seal strong {
        font-size: 24px;
    }

    .page-home .design-craft__seal small {
        font-size: 6px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .page-home .spotlight-mosaic *,
    .page-home .spotlight-mosaic *::before,
    .page-home .spotlight-mosaic *::after,
    .page-home .design-craft *,
    .page-home .design-craft *::before,
    .page-home .design-craft *::after {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
    }
}

.page-home .spotlight-mosaic {
    padding-top: 99px;
    padding-bottom: 39px;
}
.page-home .spotlight-mosaic > .container {
    position: relative;
    z-index: 1;
}
.page-home .spotlight-mosaic__wave { display: none !important; }

/* Editorial interior carousel, inspired by the interaction rhythm of Stripe's
   What's happening section. All HTML/CSS/JS here is original site code. */
.page-home .design-craft {
    padding: 39px 0px;
}
.page-home .design-craft__showcase {
    max-width: 1420px;
    position: relative;
    z-index: 1;
}
.page-home .design-craft__heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 28px;
    margin-bottom: 20px;
}
.page-home .design-craft__heading-copy {
    min-width: 0;
        margin-bottom: -12px;
}
.page-home .design-craft__eyebrow {
    margin-bottom: 5px;
    color: #e8bd6b;
    font-size: 11px;
}
.page-home .design-craft__heading h2 {
    font-size: 20px;
    line-height: 1.1;
    letter-spacing: 0.5px;
    font-weight: 500;
}
.page-home .design-craft__heading p {
    color: rgb(255 255 255 / 68%);
    margin: 17px 0 0;
    font-size: clamp(12px, 1.15vw, 15px);
    line-height: 1.75;
    display: none;
}
.page-home .design-craft__navigation {
    flex: 0 0 auto;
    display: flex;
    gap: 10px;
    padding-bottom: 2px;
}
.page-home .design-craft__nav {
    appearance: none;
    border: 0px solid rgb(234 193 114 / 36%);
    border-radius: 0 !important;
    box-shadow: none !important;
    background: rgb(234 193 114 / 12%);
    color: #f7d386;
    display: grid;
    place-items: center;
    width: 46px;
    height: 46px;
    padding: 0;
    cursor: pointer;
    transition: color .24s ease, background .24s ease, border-color .24s ease;
}
.page-home .design-craft__nav .icon { width: 18px; height: 18px; color: currentColor; }
.page-home .design-craft__nav:hover,
.page-home .design-craft__nav:focus-visible {
    color: #101114;
    background: #edc779;
    border-color: #edc779;
    outline: 0;
}
.page-home .design-craft__panels {
    display: flex;
    align-items: stretch;
    gap: 11px;
    width: 100%;
    height: clamp(370px, 35vw, 520px);
    overflow: hidden;
    isolation: isolate;
    touch-action: pan-y;
}
.page-home .design-craft__panel {
    position: relative;
    box-sizing: border-box;
    flex: 0 0 6%;
    min-width: 0;
    height: 100%;
    display: block;
    padding: 0;
    overflow: hidden;
    border: none;
    border-radius: 0 !important;
    box-shadow: none !important;
    appearance: none;
    background: #30302c;
    color: #fff;
    cursor: pointer;
    text-align: left;
    backface-visibility: hidden;
    will-change: transform, flex-basis;
    transform-origin: center center;
    transition: flex-basis .82s cubic-bezier(.18, .86, .24, 1), filter .42s ease, opacity .42s ease;
}
.page-home .design-craft__panels.is-measuring .design-craft__panel { transition: none !important; }
.page-home .design-craft__panel[data-position="0"] { flex-basis: calc(63% - 33px); z-index: 4; }
.page-home .design-craft__panel[data-position="1"] { flex-basis: 18%; z-index: 3; }
.page-home .design-craft__panel[data-position="2"] { flex-basis: 11%; z-index: 2; }
.page-home .design-craft__panel[data-position="3"] { flex-basis: 8%; z-index: 1; }
.page-home .design-craft__panel img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    filter: brightness(.87) saturate(.92);
    transform: scale(1.055);
    transition: transform .84s cubic-bezier(.18, .86, .24, 1), filter .48s ease, opacity .48s ease;
}
.page-home .design-craft__panel.is-active img {
    filter: brightness(1) saturate(1);
    transform: scale(1);
}
.page-home .design-craft__panel:not(.is-active):hover img,
.page-home .design-craft__panel:not(.is-active):focus-visible img {
    transform: scale(1.08);
    filter: brightness(1.04) saturate(.98);
}
.page-home .design-craft__panel:focus-visible { outline: 3px solid #edc779; outline-offset: -3px; }
.page-home .design-craft__panel-shade {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgb(0 0 0 / 4%) 15%, transparent 36%, rgb(0 0 0 / 69%) 100%);
    pointer-events: none;
}
.page-home .design-craft__panel-index {
    position: absolute;
    top: 19px;
    left: 19px;
    color: #f3cb7c;
    font-size: 22px;
    font-weight: 400;
    letter-spacing: .1em;
    opacity: 0.6;
}
.page-home .design-craft__panel-copy {
    position: absolute;
    left: clamp(18px, 2.5vw, 34px);
    bottom: clamp(20px, 2.5vw, 34px);
    display: grid;
    gap: 2px;
    opacity: 0;
    transform: translateY(16px);
    pointer-events: none;
    transition: opacity .34s ease, transform .56s cubic-bezier(.18, .86, .24, 1);
}
.page-home .design-craft__panel.is-active .design-craft__panel-copy {
    opacity: 1;
    transform: translateY(0);
    transition-delay: .22s;
}
.page-home .design-craft__panel-copy > span {
    color: #f1cc84;
    font-size: 12px;
    font-weight: 400;
}
.page-home .design-craft__panel-copy > strong {
    font-size: 16px;
    line-height: 1.15;
    text-transform: uppercase;
    font-weight: 500;
    letter-spacing: 1.18px;
}
.page-home .design-craft__detail {
    min-height: 39px;
    padding-top: 26px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px 44px;
}
.page-home .design-craft__detail-copy { max-width: 840px; min-width: 0; }
.page-home .design-craft__detail-copy > span {
    display: block;
    color: #e9c47a;
    font-size: 10px;
    font-weight: 400;
    letter-spacing: .15em;
}
.page-home .design-craft__detail-copy > h3 {
    color: #fff;
    font-size: clamp(19px, 2vw, 27px);
    letter-spacing: -.035em;
    font-weight: 570;
    line-height: 1.3;
    margin: 8px 0 5px;
    display: none;
}
.page-home .design-craft__detail-copy > p {
    color: rgb(255 255 255 / 65%);
    margin: 0;
    font-size: 15px;
    line-height: 1.7;
}
.page-home .design-craft__detail-copy.is-updating {
    animation: design-detail-appear .48s cubic-bezier(.15, .7, .2, 1) both;
}
@keyframes design-detail-appear {
    from { opacity: .35; transform: translateY(8px); }
    to { opacity: 1; transform: translateY(0); }
}
.page-home .design-craft__detail .design-craft__cta {
    flex: 0 0 auto;
    margin: 0;
    border: 0px solid rgb(236 200 125 / 12%);
    padding: 15px 19px;
    font-size: 12.8px;
    background: rgb(236 200 125 / 12%);
    font-weight: 400;
    line-height: 1.3;
    letter-spacing: 1px;
    white-space: nowrap;
    box-shadow: none;
}
.page-home .design-craft__detail .design-craft__cta:hover,
.page-home .design-craft__detail .design-craft__cta:focus-visible {
    color: #0c0e11;
    background: #efcc84;
    border-color: #efcc84;
}
.page-home .design-craft__progress {
    display: flex;
    gap: 8px;
    align-items: center;
    max-width: 380px;
    padding-top: 14px;
}
.page-home .design-craft__progress-item {
    flex: 1;
    height: 19px;
    display: flex;
    align-items: center;
    padding: 0;
    background: transparent;
    border: 0;
    border-radius: 0 !important;
    box-shadow: none !important;
    cursor: pointer;
}
.page-home .design-craft__progress-item > span {
    display: block;
    width: 100%;
    height: 2px;
    background: rgb(255 255 255 / 20%);
    transition: background .3s ease, height .3s ease;
}
.page-home .design-craft__progress-item.is-active > span,
.page-home .design-craft__progress-item:hover > span,
.page-home .design-craft__progress-item:focus-visible > span {
    background: #e9bf70;
    height: 3px;
}
.page-home .design-craft__progress-item:focus-visible { outline: 2px solid #edc779; outline-offset: 2px; }
.page-home .design-craft__fineprint {
    color: rgb(255 255 255 / 38%);
    margin: 12px 0 0;
    font-size: 10px;
    line-height: 1.45;
        display: none;
}

@media (max-width: 980px) {
    .page-home .design-craft__panels { gap: 9px; height: clamp(355px, 48vw, 480px); }
    .page-home .design-craft__panel[data-position="0"] { flex-basis: calc(64% - 27px); }
    .page-home .design-craft__panel[data-position="1"] { flex-basis: 18%; }
    .page-home .design-craft__panel[data-position="2"] { flex-basis: 10%; }
    .page-home .design-craft__panel[data-position="3"] { flex-basis: 8%; }
    .page-home .design-craft__detail { gap: 20px; }
    .page-home .design-craft__detail .design-craft__cta { max-width: 260px; white-space: normal; }
}
@media (max-width: 760px) {
    .page-home .spotlight-mosaic { padding: 80px 0 20px; }
    .page-home .design-craft {
    padding: 50px 0 50px;
    z-index: 1;
    margin-bottom: -45px;
}
    .page-home .design-craft__heading { gap: 14px; align-items: end; margin-bottom: 23px; }
    .page-home .design-craft__heading h2 {
    font-size: 15px;
    line-height: 1.5;
}
    .page-home .design-craft__heading p { font-size: 12px; line-height: 1.65; margin-top: 12px; }
    .page-home .design-craft__eyebrow { font-size: 9px; letter-spacing: .1em; margin-bottom: 2px; }
    .page-home .design-craft__navigation { gap: 6px; align-self: end; }
    .page-home .design-craft__nav { width: 34px; height: 36px; }
    .page-home .design-craft__nav .icon { width: 15px; height: 15px; }
    .page-home .design-craft__panels { height: clamp(310px, 90vw, 415px); gap: 5px; }
    .page-home .design-craft__panel[data-position="0"] { flex-basis: calc(74% - 15px); }
    .page-home .design-craft__panel[data-position="1"] { flex-basis: 11%; }
    .page-home .design-craft__panel[data-position="2"] { flex-basis: 8%; }
    .page-home .design-craft__panel[data-position="3"] { flex-basis: 7%; }
    .page-home .design-craft__panel-index {
        top: 8px;
        left: 8px;
        font-size: 10px;
    }
    .page-home .design-craft__panel-copy { left: 14px; bottom: 20px; width: calc(100% - 25px); gap: 7px; }
    .page-home .design-craft__panel-copy > span { font-size: 8px; letter-spacing: .1em; }
    .page-home .design-craft__panel-copy > strong { font-size: 12.8px; }
    .page-home .design-craft__detail { min-height: 0; padding-top: 20px; align-items: start; flex-direction: column; gap: 16px; }
    .page-home .design-craft__detail-copy > h3 { font-size: 19px; margin-top: 7px; }
    .page-home .design-craft__detail-copy > p { font-size: 13.8px; line-height: 1.65; }
    .page-home .design-craft__detail .design-craft__cta { max-width: none; width: 100%; justify-content: space-between; padding: 13px 15px; font-size: 11px; }
    .page-home .design-craft__progress { max-width: none; padding-top: 5px; }
}
@media (max-width: 370px) {
    .page-home .design-craft__heading { flex-wrap: wrap; }
    .page-home .design-craft__navigation { margin-left: auto; }
    .page-home .design-craft__panels { height: 315px; }
}
@media (prefers-reduced-motion: reduce) {
    .page-home .design-craft__detail-copy.is-updating { animation: none !important; }
    .page-home .design-craft__panel img,
    .page-home .design-craft__panel-copy,
    .page-home .design-craft__progress-item > span { transition: none !important; }
}

/* v3 — continuous Stripe-style expanding editorial rail.
   All edges stay square. Position and width are animated in JS; unlike the
   older FLIP implementation, photos are never transformed with scaleX. */
.page-home .design-craft__panels.is-stripe-ready {
    position: relative;
    display: block;
    overflow: hidden;
    isolation: isolate;
    touch-action: pan-y;
}
.page-home .design-craft__panels.is-stripe-ready .design-craft__panel {
    position: absolute;
    inset-block-start: 0;
    right: auto;
    flex: none !important;
    height: 100%;
    margin: 0;
    border-radius: 0 !important;
    box-shadow: none !important;
    transform: translateZ(0);
    transition: none !important;
    contain: layout style paint;
}
.page-home .design-craft__panels.is-stripe-ready .design-craft__panel[data-position] {
    flex-basis: auto !important;
}
.page-home .design-craft__panels.is-stripe-ready .design-craft__panel img {
    width: 100%;
    height: 100%;
    transform: scale(1.025);
    transition: transform 1.05s cubic-bezier(.22,.76,.18,1), filter .65s ease;
}
.page-home .design-craft__panels.is-stripe-ready .design-craft__panel.is-active img {
    transform: scale(1);
}
.page-home .design-craft__panels.is-stripe-ready .design-craft__panel:not(.is-active):hover img {
    transform: scale(1.045);
}
.page-home .design-craft__panels.is-stripe-ready .design-craft__panel[data-position="4"],
.page-home .design-craft__panels.is-stripe-ready .design-craft__panel[data-position="5"],
.page-home .design-craft__panels.is-stripe-ready .design-craft__panel[data-position="6"] {
    cursor: default;
}
@media (prefers-reduced-motion: reduce) {
    .page-home .design-craft__panels.is-stripe-ready .design-craft__panel,
    .page-home .design-craft__panels.is-stripe-ready .design-craft__panel img {
        transition: none !important;
        animation: none !important;
    }
}

/* Video cards for the configurable design carousel. Never load YouTube until click. */
.page-home .design-craft__video-play {
    position: absolute; z-index: 2; top: 50%; left: 50%; transform: translate(-50%, -50%);
    display: flex; flex-direction: column; gap: 7px; align-items: center; justify-content: center;
    color: #fff; text-shadow: 0 2px 16px #000a; pointer-events: none;
}
.page-home .design-craft__video-play .icon { width: 40px; height: 40px; color: #f2d194; }
.page-home .design-craft__video-play small { font-size: 10px; font-weight: 700; letter-spacing: .15em; white-space: nowrap; }
.page-home .design-craft__panel:not(.is-active) .design-craft__video-play { opacity: .75; }
.page-home .design-craft__video-dialog[hidden] { display: none !important; }
.page-home .design-craft__video-dialog {
    position: fixed; z-index: 2000; inset: 0; display: grid; place-items: center;
    padding: clamp(16px, 4vw, 60px); background: rgb(0 0 0 / 82%);
}
.page-home .design-craft__video-dialog-backdrop { position: absolute; inset: 0; cursor: pointer; }
.page-home .design-craft__video-dialog-inner { position: relative; z-index: 1; width: min(1020px, 100%); max-height: 90vh; }
.page-home .design-craft__video-frame { position: relative; width: 100%; aspect-ratio: 16/9; background: #08090b; }
.page-home .design-craft__video-frame iframe { position: absolute; inset: 0; border: 0; width: 100%; height: 100%; }
.page-home .design-craft__video-close { position: absolute; z-index: 2; top: -48px; right: 0; width: 40px; height: 40px; border: 1px solid #e9c47a; border-radius: 0 !important; background: #121314; color: #fff; font-size: 25px; cursor: pointer; }
body.design-craft-video-open { overflow: hidden; }
@media (max-width: 760px) {
  .page-home .design-craft__video-play .icon { width: 25px; height: 25px; }
  .page-home .design-craft__video-play small { font-size: 8px; }
  .page-home .design-craft__video-dialog { padding: 12px; }
  .page-home .design-craft__video-close { top: -46px; }
}
.page-home .design-craft--single .design-craft__navigation,
.page-home .design-craft--single .design-craft__progress { display: none; }

/* ===== Product-linked Spotlight rail (2026-11-02) =====
   Uses ONE CRM-selected product and its own gallery photos. The seven project
   specifications, name, price and canonical detail link stay intact. It shares
   the continuous left/width-based motion vocabulary of the editorial carousel. */
.page-home .spotlight-mosaic__slider {
    --spotlight-rail-height: clamp(390px, 40vw, 552px);
    position: relative;
    min-width: 0;
}
.page-home .spotlight-mosaic__rail {
    position: relative;
    display: flex;
    width: 100%;
    height: var(--spotlight-rail-height);
    gap: 11px;
    overflow: hidden;
    isolation: isolate;
    touch-action: pan-y;
}
.page-home .spotlight-mosaic__slide {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
    padding: 0;
    appearance: none;
    background: #15191e;
    color: #efca77;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    cursor: pointer;
    text-align: left;
    backface-visibility: hidden;
    will-change: left, width;
}
.page-home .spotlight-mosaic__rail:not(.is-ready) .spotlight-mosaic__slide:not(:first-child) {
    display: none;
}
.page-home .spotlight-mosaic__slide > img {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    filter: brightness(.89) saturate(.89);
    transition: filter .55s ease, transform .8s cubic-bezier(.22, .76, .18, 1);
}
.page-home .spotlight-mosaic__slide.is-active > img {
    filter: brightness(1) saturate(1);
}
.page-home .spotlight-mosaic__slide:not(.is-active):hover > img,
.page-home .spotlight-mosaic__slide:not(.is-active):focus-visible > img {
    filter: brightness(1) saturate(1);
    transform: scale(1.04);
}
.page-home .spotlight-mosaic__slide-shade {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: linear-gradient(180deg, rgb(0 0 0 / 15%) 0%, transparent 38%, rgb(0 0 0 / 34%) 100%);
}
.page-home .spotlight-mosaic__slide-index {
    position: absolute;
    z-index: 2;
    left: 18px;
    top: 18px;
    color: #f2cc81;
    font-size: 20px;
    opacity: 0.5;
    font-weight: 400;
    letter-spacing: .13em;
}
.page-home .spotlight-mosaic__slide:focus-visible {
    outline: 2px solid #f0c96f;
    outline-offset: -3px;
}
/* Specifications remain superimposed on the LEAD image, not recreated for each
   preview card. Their values never change as the single product's photos move. */
.page-home .spotlight-mosaic__spec-overlay {
    position: absolute;
    z-index: 5;
    left: 0;
    top: 0;
    width: var(--spotlight-active-width, 100%);
    height: var(--spotlight-rail-height);
    pointer-events: none;
}
.page-home .spotlight-mosaic__spec-overlay .spotlight-mosaic__lead-specs {
    left: clamp(14px, 2vw, 28px);
    right: clamp(14px, 2vw, 28px);
    bottom: clamp(14px, 2vw, 28px);
    pointer-events: none;
}
.page-home .spotlight-mosaic__controls {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 16px 26px;
    min-height: 79px;
    padding-top: 18px;
}
.page-home .spotlight-mosaic__controls-left {
    display: flex;
    align-items: center;
    gap: 18px;
}
.page-home .spotlight-mosaic__count {
    color: #f0cb7d;
    font-weight: 400;
    font-size: 11px;
    letter-spacing: .1em;
    white-space: nowrap;
}
.page-home .spotlight-mosaic__count-label {
    color: rgb(255 255 255 / 55%);
    letter-spacing: .035em;
}
.page-home .spotlight-mosaic__navigation { display: flex; align-items: center; gap: 7px; }
.page-home .spotlight-mosaic__nav {
    display: grid;
    place-items: center;
    width: 41px;
    height: 41px;
    margin: 0;
    padding: 0;
    cursor: pointer;
    appearance: none;
    border: 0px solid rgb(234 193 114 / 43%);
    border-radius: 0 !important;
    box-shadow: none !important;
    color: #efcc84;
    background: rgb(234 193 114 / 11%);
    transition: color .2s ease, background .2s ease, border-color .2s ease;
}
.page-home .spotlight-mosaic__nav .icon { width: 17px; height: 17px; color: currentColor; }
.page-home .spotlight-mosaic__nav:hover,
.page-home .spotlight-mosaic__nav:focus-visible {
    color: #0c0e11;
    background: #edc779;
    border-color: #edc779;
    outline: none;
}
.page-home .spotlight-mosaic__product-link {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    padding: 13px 16px;
    color: #efc873;
    font-size: 12px;
    font-weight: 400;
    letter-spacing: .055em;
    text-decoration: none;
    white-space: nowrap;
    background: rgb(234 193 114 / 7%);
    border: 0px solid rgb(234 193 114 / 45%);
    border-radius: 0 !important;
    box-shadow: none !important;
    transition: color .2s ease, background .2s ease;
}
.page-home .spotlight-mosaic__product-link .icon { width: 15px; height: 15px; }
.page-home .spotlight-mosaic__product-link:hover,
.page-home .spotlight-mosaic__product-link:focus-visible {
    color: #111419;
    background: #efcc84;
}
.page-home .spotlight-mosaic__progress {
    height: 2px;
    width: 100%;
    margin-top: 9px;
    background: rgb(255 255 255 / 17%);
    border-radius: 0 !important;
    overflow: hidden;
}
.page-home .spotlight-mosaic__progress > span {
    display: block;
    height: 100%;
    width: var(--spotlight-progress, 10%);
    background: #e8bd6b;
    transition: width .45s ease;
}
@media (max-width: 980px) {
    .page-home .spotlight-mosaic__slider { --spotlight-rail-height: clamp(340px, 48vw, 480px); }
    .page-home .spotlight-mosaic__rail {gap: 9px;}
    .page-home .spotlight-mosaic__spec-overlay .spotlight-mosaic__lead-specs {
        left: 11px; right: 11px; bottom: 11px;
    }
}
@media (max-width: 760px) {
    .page-home .spotlight-mosaic__slider { --spotlight-rail-height: clamp(300px, 90vw, 430px); }
    .page-home .spotlight-mosaic__rail { gap: 5px; }
    .page-home .spotlight-mosaic__slide-index { top: 12px; left: 12px; font-size: 15px; }
    /* Move the unchanged project facts BELOW the photos to avoid covering the
       main image or making tiny labels unreadable on a narrow phone. */
    .page-home .spotlight-mosaic__spec-overlay {
        position: relative;
        left: auto;
        top: auto;
        width: 100% !important;
        height: auto;
        margin-top: 12px;
    }
    .page-home .spotlight-mosaic__spec-overlay .spotlight-mosaic__lead-specs {
        position: relative;
        left: auto;
        right: auto;
        bottom: auto;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        box-shadow: none;
    }
    .page-home .spotlight-mosaic__spec-overlay .spotlight-mosaic__lead-spec {
        grid-template-columns: 17px minmax(0,1fr);
        gap: 7px;
        min-height: 55px;
        padding: 9px 8px;
    }
    .page-home .spotlight-mosaic__spec-overlay .spotlight-mosaic__lead-spec:nth-child(7) { grid-column: span 2; }
    .page-home .spotlight-mosaic__spec-overlay .spotlight-mosaic__lead-spec > .icon {width: 16px; height: 16px;}
    .page-home .spotlight-mosaic__spec-overlay .spotlight-mosaic__lead-spec small {font-size: 8px;}
    .page-home .spotlight-mosaic__spec-overlay .spotlight-mosaic__lead-spec strong {
        display: block;
        font-size: 12px;
        line-height: 1.25;
        overflow-wrap: anywhere;
        font-weight: 500;
    }
    .page-home .spotlight-mosaic__controls { padding-top: 15px; min-height: 0; gap: 15px; }
    .page-home .spotlight-mosaic__controls-left { justify-content: space-between; width: 100%; }
    .page-home .spotlight-mosaic__nav { width: 37px; height: 37px; }
    .page-home .spotlight-mosaic__product-link { width: 100%; justify-content: space-between; }
}
@media (max-width: 365px) {
    .page-home .spotlight-mosaic__count-label { display: none; }
    .page-home .spotlight-mosaic__spec-overlay .spotlight-mosaic__lead-spec small { font-size: 7.5px; }
}
@media (prefers-reduced-motion: reduce) {
    .page-home .spotlight-mosaic__slide > img,
    .page-home .spotlight-mosaic__progress > span { transition: none !important; }
}
/* Keep the entire CRM product name visible rather than truncating it to 2 lines. */
.page-home h2#spotlight-title {
    display: block;
    overflow: visible;
    -webkit-line-clamp: unset;
}
@media (max-width: 760px) {
    .page-home .spotlight-mosaic__spec-overlay .spotlight-mosaic__lead-spec small {
        display: block;
        white-space: normal;
        overflow: visible;
        overflow-wrap: anywhere;
        text-overflow: clip;
        font-size: 8px;
        line-height: 1.25;
    }
    .page-home .spotlight-mosaic__spec-overlay .spotlight-mosaic__lead-spec:nth-child(4) small::after {
        content: none;
        display: none;
    }
}


/* Header mobile/tablet: no round icon frames, no wordmark slogan.
   Drawer typography, link styles, and the rest of the UI remain original. */
@media (max-width: 980px) {
    .site-header .mobile-header,
    .site-header--inner .mobile-header {
        grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
        align-items: center;
        min-height: 60px;
        gap: 8px;
    }
    .mobile-header > .brand--mobile {
        justify-self: center;
        min-width: 0;
        margin: 0;
    }
    .mobile-header .brand--mobile img {
        display: block;
        width: 150px;
        height: auto;
    }
.site-header .mobile-header > .mobile-menu-trigger {
    justify-self: start;
    display: flex;
    place-items: center;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
    margin: 0;
    padding: 0;
    color: #fff;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}
    .site-header .mobile-header > .mobile-menu-trigger .icon {
        width: 21px;
        height: 21px;
        color: #d9ad61;
    }
    .mobile-header__actions {
        justify-self: end;
        display: flex;
        align-items: center;
        gap: 4px;
    }
.site-header .mobile-header__actions .header-action {
    display: grid;
    position: relative;
    place-items: center;
    width: 28px;
    height: 28px;
    min-width: 28px;
    margin: 0;
    padding: 0;
    color: #d9ad61;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}
    .site-header .mobile-header__actions .header-action:hover,
    .site-header .mobile-header__actions .header-action:focus-visible,
    .site-header .mobile-header > .mobile-menu-trigger:hover,
    .site-header .mobile-header > .mobile-menu-trigger:focus-visible {
        color: #fff;
        background: transparent;
        outline: 2px solid #d9ad61;
        outline-offset: -2px;
    }
.site-header .mobile-header__actions .header-action > .icon {
    font-size: 16px;
    color: #d9ad61;
}
.header-count {
    width: 12px;
    height: 12px;
    font-size: 8px;
    font-weight: 400;
}
.site-header .mobile-header__actions .mobile-segment-trigger__dot {
    top: 2px;
    right: 1px;
    border-radius: 100px;
}
.site-header .mobile-header__actions .header-count {
    top: 0px;
    right: -3px;
    min-width: 12px;
    padding-inline: 2px;
}
}
@media (max-width: 360px) {
    .mobile-header .brand--mobile img { width: 126px; }
    .mobile-header__actions { gap: 2px; }
    .site-header .mobile-header__actions .header-action { width: 35px; min-width: 35px; }
    .site-header .mobile-header > .mobile-menu-trigger { width: 37px; }
}


/* Mobile homepage: the video showcase overlaps the following design-craft
   section by 20px, without changing desktop/tablet or carousel behavior. */
@media (max-width: 760px) {
    .page-home section.latest-news.latest-news--video.section {
        position: relative;
        z-index: 2; /* Above design-craft (z-index: 1). */
        margin-bottom: -20px;
    }

    .page-home section.latest-news.latest-news--video.section .video-showcase {
        position: relative;
        z-index: 2;
        padding-bottom: 0; /* Remove the light strip below the video rail. */
    }
}

/* Keep the desktop navigation available immediately below the compact header.
   The row stays touch-scrollable instead of compressing labels into two lines. */
.mobile-primary-nav {
    display: none;
}

@media (max-width: 980px) {
.site-header .mobile-primary-nav, .site-header--inner .mobile-primary-nav {
    display: block;
    position: relative;
    z-index: 31;
    overflow: hidden;
    color: #4e3016;
    background: #d9ad62;
}

.mobile-primary-nav__scroll {
    display: flex;
    align-items: center;
    gap: 5px;
    max-width: var(--container);
    min-height: 30px;
    margin-inline: auto;
    padding: 2px 14px;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x proximity;
}

    .mobile-primary-nav__scroll::-webkit-scrollbar {
        display: none;
    }

.mobile-primary-nav a {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    min-height: 25px;
    padding: 2px 2px 2px 14px;
    color: inherit;
    border: 0px solid transparent;
    border-radius: 0px;
    font-size: 10px;
    font-weight: 400;
    letter-spacing: .08em;
    line-height: 1.2;
    text-transform: uppercase;
    white-space: nowrap;
    scroll-snap-align: start;
    transition: color .2s ease, background-color .2s ease, border-color .2s ease;
}

    .mobile-primary-nav a:hover,
    .mobile-primary-nav a:focus-visible {
        color: #fffdf8;
        background: rgb(78 48 22 / 20%);
        border-color: rgb(255 245 219 / 48%);
        outline: 0;
    }

    .mobile-primary-nav a:focus-visible {
        box-shadow: 0 0 0 2px rgb(255 255 255 / 64%);
    }
}

@media (min-width: 761px) and (max-width: 980px) {
    .mobile-primary-nav__scroll {
        justify-content: center;
        padding-inline: 20px;
    }
}

@media (max-width: 760px) {
    .mobile-primary-nav a[data-navigation-key="home"] , .mobile-primary-nav a[data-navigation-key="categories"]{
        display: none;
    }

    .mobile-primary-nav__scroll {
        justify-content: flex-start;
    }


    /* Preserve the sharp source image: the earlier presentation deliberately
       muted these previews, which made fine interior details look soft. */
    .video-showcase__facade > img,
    .video-thumb__media img {
        filter: none;
        image-rendering: auto;
    }
}

@media (min-width: 761px) {
    .video-showcase__facade > img,
    .video-thumb__media img {
        filter: none;
        image-rendering: auto;
    }
}


/* Company profile / About --------------------------------------------------
   This is deliberately isolated from the existing home, catalog and header
   treatments. It uses the same charcoal, warm-gold and paper palette while
   giving the company profile its own editorial rhythm. */
.page-about {
    overflow-x: clip;
    color: #1c1b19;
    background: #f5f1e9;
}

.page-about .company-profile,
.page-about .company-profile * {
    border-radius: 0 !important;
}

.page-about .company-profile {
    --profile-ink: #15191d;
    --profile-ink-soft: #35383c;
    --profile-paper: #f5f1e9;
    --profile-paper-deep: #e9e1d4;
    --profile-gold: #d8ae67;
    --profile-gold-light: #f1d28f;
    --profile-line: rgb(68 54 34 / 22%);
    --profile-muted: #756f67;
    color: var(--profile-ink);
    background: var(--profile-paper);
}

.page-about .company-profile h1,
.page-about .company-profile h2,
.page-about .company-profile h3,
.page-about .company-profile p,
.page-about .company-profile figure {
    margin-top: 0;
}

.page-about .company-profile__hero {
    position: relative;
    min-height: min(702px, calc(100vh - 42px));
    overflow: hidden;
    color: #fff;
    isolation: isolate;
    background: #101318;
}

.page-about .company-profile__hero::before,
.page-about .company-profile__hero::after {
    position: absolute;
    z-index: -1;
    content: "";
    pointer-events: none;
    inset: 0;
}

.page-about .company-profile__hero::before {
    background: linear-gradient(90deg, rgb(8 10 13 / 94%) 0%, rgb(8 10 13 / 76%) 39%, rgb(8 10 13 / 35%) 70%, rgb(8 10 13 / 18%) 100%);
}

.page-about .company-profile__hero::after {
    background:
        linear-gradient(180deg, rgb(7 9 12 / 38%) 0%, transparent 28%, transparent 62%, rgb(7 9 12 / 70%) 100%),
        linear-gradient(90deg, transparent 0%, transparent 82%, rgb(216 174 103 / 22%) 82%, rgb(216 174 103 / 22%) calc(82% + 1px), transparent calc(82% + 1px));
}

.page-about .company-profile__hero-visual {
    position: absolute;
    z-index: -2;
    inset: 0;
}

.page-about .company-profile__hero-visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    filter: saturate(.82) contrast(.98) brightness(.79);
}

.page-about .company-profile__hero-inner {
    display: grid;
    grid-template-columns: minmax(0, 780px) minmax(195px, 1fr);
    align-items: end;
    min-height: inherit;
    padding-top: clamp(82px, 11vw, 148px);
    padding-bottom: clamp(44px, 6.5vw, 86px);
}

.page-about .company-profile__hero-copy {
    max-width: 765px;
    animation: company-profile-rise .85s cubic-bezier(.2, .75, .2, 1) both;
}

.page-about .company-profile__hero .breadcrumbs {
    margin-bottom: clamp(44px, 7vw, 87px);
}

.page-about .company-profile__hero .breadcrumbs li,
.page-about .company-profile__hero .breadcrumbs a {
    color: rgb(255 255 255 / 65%);
    font-size: 10px;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.page-about .company-profile__hero .breadcrumbs li:not(:last-child)::after {
    color: var(--profile-gold);
}

.page-about .company-profile__kicker, .page-about .company-profile__eyebrow {
    margin-bottom: 12px;
    color: #a47a39;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.25;
    text-transform: uppercase;
}

.page-about .company-profile__kicker {
    color: var(--profile-gold-light);
}

.page-about .company-profile__kicker span {
    display: inline-block;
    margin-inline: 8px;
    color: rgb(255 255 255 / 45%);
}

.page-about .company-profile__hero h1 {
    margin-bottom: 25px;
    color: #fffdf8;
    font-size: 39px;
    font-weight: 400;
    line-height: 1.08;
}

.page-about .company-profile__hero h1 em {
    color: var(--profile-gold-light);
    font-family: Iowan Old Style, Baskerville, Times New Roman, serif;
    font-weight: 400;
    font-size: 30px;
}

.page-about .company-profile__hero-lead {
    margin-bottom: 30px;
    color: rgb(255 255 255 / 78%);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.75;
}

.page-about .company-profile__hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 11px;
}

.page-about .company-profile__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 11px;
    min-height: 50px;
    padding: 13px 19px;
    border: 1px solid transparent;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .055em;
    line-height: 1.2;
    text-align: center;
    text-transform: uppercase;
    transition: color .25s ease, background-color .25s ease, border-color .25s ease, transform .25s ease;
}

.page-about .company-profile__button .icon {
    width: 16px;
    height: 16px;
}

.page-about .company-profile__button:hover,
.page-about .company-profile__button:focus-visible {
    transform: translateY(-3px);
}

.page-about .company-profile__button:focus-visible,
.page-about .company-profile__jump a:focus-visible,
.page-about .company-profile__text-link:focus-visible,
.page-about .company-profile__contact-details a:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 4px;
}

.page-about .company-profile__button--gold {
    color: #231a10;
    background: var(--profile-gold-light);
    border-color: var(--profile-gold-light);
}

.page-about .company-profile__button--gold:hover,
.page-about .company-profile__button--gold:focus-visible {
    color: #fffdf8;
    background: #8e662d;
    border-color: #8e662d;
}

.page-about .company-profile__button--ghost {
    color: #fffdf8;
    background: rgb(255 255 255 / 3%);
    border-color: rgb(255 255 255 / 45%);
}

.page-about .company-profile__button--ghost:hover,
.page-about .company-profile__button--ghost:focus-visible {
    color: #1e1811;
    background: #fffdf8;
    border-color: #fffdf8;
}

.page-about .company-profile__hero-note {
    align-self: end;
    max-width: 235px;
    margin-bottom: 6px;
    padding: 19px 0 0 18px;
    border-top: 1px solid rgb(241 210 143 / 74%);
    border-left: 1px solid rgb(241 210 143 / 46%);
    color: rgb(255 255 255 / 88%);
    animation: company-profile-rise .85s .12s cubic-bezier(.2, .75, .2, 1) both;
}

.page-about .company-profile__hero-note > span {
    color: var(--profile-gold-light);
    font-size: 12px;
    font-weight: 400;
    letter-spacing: .14em;
    line-height: 1;
    text-transform: uppercase;
}

.page-about .company-profile__hero-note p {
    margin: 10px 0 0;
    font-family: Iowan Old Style, Baskerville, Times New Roman, serif;
    font-size: 18px;
    font-style: italic;
    line-height: 1.28;
}

.page-about .company-profile__jump {
    position: relative;
    z-index: 3;
    color: #34291b;
    background: #e9dfcd;
    border-bottom: 1px solid rgb(93 65 23 / 17%);
}

.page-about .company-profile__jump-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    min-height: 59px;
}

.page-about .company-profile__jump-inner > span {
    color: #8e672e;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.page-about .company-profile__jump-inner > div {
    display: flex;
    align-items: stretch;
    align-self: stretch;
}

.page-about .company-profile__jump a {
    display: inline-flex;
    align-items: center;
    min-height: 100%;
    padding: 0 17px;
    border-left: 1px solid rgb(93 65 23 / 18%);
    color: #51402a;
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .08em;
    text-transform: uppercase;
    transition: color .2s ease, background-color .2s ease;
}

.page-about .company-profile__jump a:last-child {
    border-right: 1px solid rgb(93 65 23 / 18%);
}

.page-about .company-profile__jump a:hover,
.page-about .company-profile__jump a:focus-visible {
    color: #fffdf8;
    background: #8e672f;
}

.page-about .company-profile__letter {
    padding-block: 26px;
    background: var(--profile-paper);
}

.page-about .company-profile__letter-grid {
    display: grid;
    grid-template-columns: minmax(0, .87fr) minmax(0, 1.13fr);
    align-items: center;
    gap: clamp(46px, 9vw, 134px);
}

.page-about .company-profile__letter-copy {
    max-width: 490px;
}

.page-about .company-profile__letter h2, .page-about .company-profile__section-head h2, .page-about .company-profile__language-heading h2 {
    margin-bottom: 22px;
    color: var(--profile-ink);
    font-size: 30px;
    font-weight: 600;
    line-height: 1.25;
}
.page-about .company-profile__clarity h2 {
    margin-bottom: 22px;
    color: var(--profile-ink);
    font-size: 25px;
    font-family: Iowan Old Style, Baskerville, Times New Roman, serif;
    font-weight: 600;
    line-height: 1.25;
}

.page-about .company-profile__letter-copy > p,
.page-about .company-profile__clarity-copy > p {
    margin-bottom: 17px;
    color: #6a665f;
    font-size: 15px;
    font-weight: 450;
    line-height: 1.82;
}

.page-about .company-profile__signature {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-top: 34px;
}

.page-about .company-profile__signature > span {
    display: block;
    width: 42px;
    height: 1px;
    background: #ad803d;
}

.page-about .company-profile__signature strong,
.page-about .company-profile__signature small {
    display: block;
}

.page-about .company-profile__signature strong {
    color: #302719;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .075em;
    text-transform: uppercase;
}

.page-about .company-profile__signature small {
    margin-top: 2px;
    color: #8c8479;
    font-size: 11px;
    line-height: 1.45;
}

.page-about .company-profile__materials {
    position: relative;
    aspect-ratio: 1.35 / 1;
    min-height: 0;
    margin: 0;
    overflow: hidden;
    background: #d7cabb;
}

.page-about .company-profile__materials img {
    width: 100%;
    height: 100%;
    min-height: 0;
    object-fit: cover;
    object-position: center;
    transition: transform .8s cubic-bezier(.2, .75, .2, 1);
}

.page-about .company-profile__materials:hover img {
    transform: scale(1.035);
}

.page-about .company-profile__materials::after {
    position: absolute;
    content: "";
    pointer-events: none;
    inset: 0;
    background: linear-gradient(180deg, transparent 45%, rgb(18 17 15 / 77%) 100%);
}

.page-about .company-profile__materials figcaption {
    position: absolute;
    z-index: 1;
    right: 28px;
    bottom: 26px;
    left: 28px;
    color: #fff;
}

.page-about .company-profile__materials figcaption span,
.page-about .company-profile__materials figcaption strong {
    display: block;
}

.page-about .company-profile__materials figcaption span {
    margin-bottom: 8px;
    color: var(--profile-gold-light);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .16em;
}

.page-about .company-profile__materials figcaption strong {
    font-size: 20px;
    font-weight: 400;
    line-height: 1.15;
}

.page-about .company-profile__manifesto {
    position: relative;
    overflow: hidden;
    padding-block: 39px;
    color: #fff;
    background: radial-gradient(circle at 96% 8%, rgb(220 177 100 / 18%), transparent 25%),
        linear-gradient(140deg, #14171b 0%, #1e2023 100%);
}

.page-about .company-profile__manifesto::before {
    position: absolute;
    top: -17%;
    right: 10%;
    width: min(39vw, 560px);
    aspect-ratio: 1;
    border: 1px solid rgb(232 199 138 / 19%);
    content: "";
    transform: rotate(45deg);
}

.page-about .company-profile__manifesto .container {
    position: relative;
}

.page-about .company-profile__eyebrow--light {
    color: var(--profile-gold-light);
}

.page-about .company-profile__manifesto-head {
    margin-bottom: 26px;
}

.page-about .company-profile__manifesto h2 {
    margin: 0;
    color: #fffdf8;
    font-size: 26px;
    font-weight: 400;
    font-family: Iowan Old Style, Baskerville, Times New Roman, serif;
    line-height: 1.08;
}

.page-about .company-profile__manifesto-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    border-top: 1px solid rgb(255 255 255 / 20%);
    border-left: 1px solid rgb(255 255 255 / 20%);
}

.page-about .company-profile__manifesto-grid article {
    position: relative;
    min-height: 100px;
    padding: 30px 30px 25px;
    border-right: 1px solid rgb(255 255 255 / 20%);
    border-bottom: 1px solid rgb(255 255 255 / 20%);
}

.page-about .company-profile__manifesto-grid article > span {
    display: block;
    margin-bottom: 20px;
    color: rgb(241 210 143 / 67%);
    font-family: Iowan Old Style, Baskerville, Times New Roman, serif;
    font-size: 25px;
    line-height: 1;
}

.page-about .company-profile__manifesto-grid h3 {
    margin-bottom: 8px;
    color: #fff;
    font-size: 19px;
    font-weight: 600;
    letter-spacing: -.025em;
}

.page-about .company-profile__manifesto-grid p {
    max-width: 325px;
    margin: 0;
    color: rgb(255 255 255 / 68%);
    font-size: 13px;
    font-weight: 450;
    line-height: 1.65;
}

.page-about .company-profile__capabilities {
    padding-block: 30px;
    background: #f7f4ee;
}

.page-about .company-profile__section-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(220px, .48fr);
    align-items: end;
    gap: 40px;
    margin-bottom: 20px;
}

.page-about .company-profile__section-head h2 {
    margin-bottom: 0;
    font-family: Iowan Old Style, Baskerville, Times New Roman, serif;
    font-weight: 500;
    font-size: 28px;
}

.page-about .company-profile__section-head > p {
    max-width: 405px;
    margin: 0 0 5px auto;
    color: #706b64;
    font-size: 14px;
    font-weight: 450;
    line-height: 1.75;
}

.page-about .company-profile__capability-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border-top: 1px solid var(--profile-line);
    border-left: 1px solid var(--profile-line);
}

.page-about .company-profile__capability-card {
    position: relative;
    min-height: 100px;
    padding: 27px 25px 26px;
    border-right: 1px solid var(--profile-line);
    border-bottom: 1px solid var(--profile-line);
    transition: background-color .25s ease, color .25s ease;
}

.page-about .company-profile__capability-card:hover {
    color: #fffdf8;
    background: #202328;
}

.page-about .company-profile__capability-icon {
    display: grid;
    width: 44px;
    height: 44px;
    margin-bottom: 52px;
    place-items: center;
    color: #9c6e2d;
    border: 1px solid rgb(156 110 45 / 46%);
    transition: color .25s ease, border-color .25s ease;
}

.page-about .company-profile__capability-icon .icon {
    width: 22px;
    height: 22px;
}

.page-about .company-profile__capability-card > span {
    position: absolute;
    top: 29px;
    right: 23px;
    color: #aa9d8c;
    font-family: Iowan Old Style, Baskerville, Times New Roman, serif;
    font-size: 18px;
}

.page-about .company-profile__capability-card h3 {
    margin-bottom: 9px;
    color: #272524;
    font-size: 18px;
    font-weight: 600;
    font-family: Iowan Old Style, Baskerville, Times New Roman, serif;
    line-height: 1.22;
    transition: color .25s ease;
}

.page-about .company-profile__capability-card p {
    margin-bottom: 0;
    color: #716c65;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.68;
    transition: color .25s ease;
}

.page-about .company-profile__capability-card:hover h3 {
    color: #fffdf8;
}

.page-about .company-profile__capability-card:hover p {
    color: rgb(255 255 255 / 68%);
}

.page-about .company-profile__capability-card:hover .company-profile__capability-icon {
    color: var(--profile-gold-light);
    border-color: var(--profile-gold-light);
}

.page-about .company-profile__capability-card:hover > span {
    color: rgb(241 210 143 / 75%);
}

.page-about .company-profile__language {
    padding-block: 30px;
    color: #fff;
    background: #13161a;
}
p.company-profile__language-note {
    display: none;
}
.page-about .company-profile__language-heading {
    margin-bottom: 20px;
}

.page-about .company-profile__language-heading h2 {
    margin-bottom: 0;
    color: #fffdf8;
    font-family: Iowan Old Style, Baskerville, Times New Roman, serif;
    font-weight: 500;
    font-size: 26px;
}

.page-about .company-profile__language-grid {
    display: grid;
    grid-auto-rows: 220px;
    grid-template-columns: 1.55fr .85fr .85fr;
    gap: 10px;
}

.page-about .company-profile__language-card {
    position: relative;
    min-width: 0;
    margin: 0;
    overflow: hidden;
    background: #29231d;
}

.page-about .company-profile__language-card--main {
    grid-row: span 2;
}

.page-about .company-profile__language-card--tall {
    grid-row: span 2;
}

.page-about .company-profile__language-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .75s cubic-bezier(.2, .75, .2, 1), filter .35s ease;
}

.page-about .company-profile__language-card--main img {
    object-position: center;
}

.page-about .company-profile__language-card::after {
    position: absolute;
    content: "";
    pointer-events: none;
    inset: 0;
    background: linear-gradient(180deg, rgb(6 8 10 / 0%) 38%, rgb(6 8 10 / 85%) 100%);
}

.page-about .company-profile__language-card:hover img {
    filter: saturate(1.08) contrast(1.02);
    transform: scale(1.052);
}

.page-about .company-profile__language-card figcaption {
    position: absolute;
    z-index: 1;
    right: 18px;
    bottom: 17px;
    left: 18px;
}

.page-about .company-profile__language-card figcaption span,
.page-about .company-profile__language-card figcaption strong {
    display: block;
}

.page-about .company-profile__language-card figcaption span {
    margin-bottom: 5px;
    color: var(--profile-gold-light);
    font-size: 11px;
    font-weight: 400;
    letter-spacing: .15em;
}

.page-about .company-profile__language-card figcaption strong {
    color: #fff;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.24;
}

.page-about .company-profile__language-card--main figcaption strong {
    font-size: 20px;
    font-weight: 400;
}

.page-about .company-profile__language-note {
    margin: 20px 0 0;
    color: rgb(255 255 255 / 54%);
    font-size: 11px;
    font-weight: 450;
    line-height: 1.65;
}

.page-about .company-profile__process {
    position: relative;
    overflow: hidden;
    padding-block: 50px;
    color: #fff;
    background: #9e7335;
}

.page-about .company-profile__process::before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: calc(50% - 1px);
    width: 1px;
    background: rgb(255 255 255 / 22%);
    content: "";
}

.page-about .company-profile__process-grid {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr);
    gap: clamp(56px, 8vw, 118px);
}

.page-about .company-profile__process h2 {
    margin-bottom: 22px;
    color: #fffdf8;
    font-size: 28px;
    font-weight: 600;
    font-family: Iowan Old Style, Baskerville, Times New Roman, serif;
    line-height: 1.26;
}

.page-about .company-profile__process-intro > p {
    margin-bottom: 30px;
    color: rgb(255 255 255 / 76%);
    font-size: 15px;
    font-weight: 400;
    line-height: 1.76;
}

.page-about .company-profile__text-link {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding-bottom: 6px;
    color: #fffdf8;
    border-bottom: 1px solid rgb(255 255 255 / 65%);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    transition: color .2s ease, border-color .2s ease;
}

.page-about .company-profile__text-link .icon {
    width: 15px;
    height: 15px;
    transition: transform .2s ease;
}

.page-about .company-profile__text-link:hover,
.page-about .company-profile__text-link:focus-visible {
    color: #2c2112;
    border-color: #2c2112;
}

.page-about .company-profile__text-link:hover .icon,
.page-about .company-profile__text-link:focus-visible .icon {
    transform: translateX(4px);
}

.page-about .company-profile__steps {
    position: relative;
    display: grid;
    gap: 0;
    margin: 0;
    padding: 0;
    list-style: none;
    counter-reset: none;
    border-top: 1px solid rgb(255 255 255 / 35%);
}

.page-about .company-profile__steps li {
    display: grid;
    grid-template-columns: 75px minmax(0, 1fr);
    gap: 18px;
    padding: 21px 0 20px;
    border-bottom: 1px solid rgb(255 255 255 / 28%);
}

.page-about .company-profile__steps li > span {
    color: rgb(255 247 228 / 88%);
    font-family: Iowan Old Style, Baskerville, Times New Roman, serif;
    font-size: 24px;
    font-style: italic;
    line-height: 1.1;
}

.page-about .company-profile__steps h3 {
    margin-bottom: 3px;
    color: #fffdf8;
    font-size: 19px;
    font-weight: 600;
    font-family: Iowan Old Style, Baskerville, Times New Roman, serif;
    line-height: 1.3;
}

.page-about .company-profile__steps p {
    max-width: 530px;
    margin: 0;
    color: rgb(255 255 255 / 72%);
    font-size: 12.5px;
    font-weight: 450;
    line-height: 1.63;
}

.page-about .company-profile__clarity {
    padding-block: 30px;
    background: #efe8dc;
}

.page-about .company-profile__clarity-grid {
    display: grid;
    grid-template-columns: minmax(0, .88fr) minmax(0, 1.12fr);
    align-items: start;
    gap: clamp(54px, 9vw, 138px);
}

.page-about .company-profile__clarity-copy > p {
    margin-bottom: 0;
}

.page-about .company-profile__clarity-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    border-top: 1px solid var(--profile-line);
    border-left: 1px solid var(--profile-line);
}

.page-about .company-profile__clarity-list article {
    min-height: 100px;
    padding: 24px 23px 22px;
    border-right: 1px solid var(--profile-line);
    border-bottom: 1px solid var(--profile-line);
}

.page-about .company-profile__clarity-list article > span {
    display: block;
    margin-bottom: 20px;
    color: #a37737;
    font-size: 20px;
    font-weight: 400;
    letter-spacing: .14em;
}

.page-about .company-profile__clarity-list h3 {
    margin-bottom: 7px;
    color: #2a2927;
    font-size: 18px;
    font-weight: 700;
    font-family: Iowan Old Style, Baskerville, Times New Roman, serif;
    line-height: 1.25;
}

.page-about .company-profile__clarity-list p {
    margin-bottom: 0;
    color: #766f65;
    font-size: 12px;
    font-weight: 450;
    line-height: 1.62;
}

.page-about .company-profile__contact {
    position: relative;
    overflow: hidden;
    color: #fff;
    background: #121519;
    isolation: isolate;
}

.page-about .company-profile__contact::before {
    position: absolute;
    z-index: -1;
    content: "";
    inset: 0;
    background: linear-gradient(90deg, rgb(9 11 14 / 96%) 0%, rgb(9 11 14 / 82%) 42%, rgb(9 11 14 / 39%) 73%, rgb(9 11 14 / 38%) 100%);
}

.page-about .company-profile__contact-visual {
    position: absolute;
    z-index: -2;
    inset: 0;
}

.page-about .company-profile__contact-visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    filter: saturate(.75) brightness(.66);
}

.page-about .company-profile__contact-inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(270px, .55fr);
    align-items: end;
    gap: 65px;
    padding-block: 30px;
}

.page-about .company-profile__contact h2 {
    margin-bottom: 21px;
    color: #fffdf8;
    font-size: 25px;
    font-weight: 600;
    max-width: 600px;
    line-height: 1.26;
    font-family: Iowan Old Style, Baskerville, Times New Roman, serif;
}

.page-about .company-profile__contact-inner > div > p {
    margin-bottom: 29px;
    color: rgb(255 255 255 / 76%);
    font-size: 15px;
    font-weight: 400;
    max-width: 600px;
    line-height: 1.75;
}

.page-about .company-profile__contact-details {
    display: grid;
    margin: 0;
    font-style: normal;
    border-top: 1px solid rgb(255 255 255 / 27%);
}

.page-about .company-profile__contact-details a {
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr);
    gap: 12px;
    padding: 17px 0;
    color: #fff;
    border-bottom: 1px solid rgb(255 255 255 / 27%);
    transition: color .2s ease;
}

.page-about .company-profile__contact-details a:hover,
.page-about .company-profile__contact-details a:focus-visible {
    color: var(--profile-gold-light);
}

.page-about .company-profile__contact-details .icon {
    width: 18px;
    height: 18px;
    margin-top: 2px;
    color: var(--profile-gold-light);
}

.page-about .company-profile__contact-details small,
.page-about .company-profile__contact-details strong {
    display: block;
}

.page-about .company-profile__contact-details small {
    margin-bottom: 4px;
    color: rgb(255 255 255 / 53%);
    font-size: 8px;
    font-style: normal;
    font-weight: 800;
    letter-spacing: .15em;
}

.page-about .company-profile__contact-details strong {
    color: inherit;
    font-size: 12px;
    font-style: normal;
    font-weight: 650;
    line-height: 1.48;
}

@keyframes company-profile-rise {
    from {
        opacity: 0;
        transform: translateY(18px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (max-width: 980px) {
    .page-about .company-profile__hero {
        min-height: 620px;
    }

    .page-about .company-profile__hero-inner {
        grid-template-columns: minmax(0, 1fr) 190px;
    }

    .page-about .company-profile__letter-grid,
    .page-about .company-profile__clarity-grid {
        grid-template-columns: 1fr;
    }

    .page-about .company-profile__letter-copy,
    .page-about .company-profile__clarity-copy {
        max-width: 660px;
    }

    .page-about .company-profile__capability-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .page-about .company-profile__capability-card {
        min-height: 260px;
    }

    .page-about .company-profile__language-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-auto-rows: 230px;
    }

    .page-about .company-profile__language-card--main {
        grid-column: span 2;
        grid-row: span 2;
    }

    .page-about .company-profile__language-card--tall {
        grid-row: span 1;
    }

    .page-about .company-profile__process::before {
        display: none;
    }

    .page-about .company-profile__process-grid {
        grid-template-columns: 1fr;
        gap: 50px;
    }

    .page-about .company-profile__process-intro {
        max-width: 600px;
    }

    .page-about .company-profile__contact-inner {
        grid-template-columns: minmax(0, 1fr) minmax(250px, .64fr);
    }
}

@media (max-width: 760px) {
    .page-about .company-profile__hero {
        min-height: 605px;
    }

    .page-about .company-profile__hero::before {
        background: linear-gradient(180deg, rgb(8 10 13 / 72%) 0%, rgb(8 10 13 / 87%) 56%, rgb(8 10 13 / 96%) 100%);
    }

    .page-about .company-profile__hero::after {
        background: linear-gradient(180deg, rgb(7 9 12 / 0%) 38%, rgb(7 9 12 / 72%) 100%);
    }

    .page-about .company-profile__hero-visual img {
        object-position: 58% center;
    }

    .page-about .company-profile__hero-inner {
        grid-template-columns: 1fr;
        align-content: end;
        padding-top: 72px;
        padding-bottom: 37px;
    }

    .page-about .company-profile__hero .breadcrumbs {
        margin-bottom: 44px;
    }

    .page-about .company-profile__hero h1 {
        font-size: clamp(42px, 12.3vw, 61px);
        line-height: 1.01;
    }

    .page-about .company-profile__hero-lead {
        margin-bottom: 25px;
        font-size: 13px;
        line-height: 1.67;
    }

    .page-about .company-profile__button {
        min-height: 46px;
        padding: 12px 14px;
        font-size: 9px;
    }

    .page-about .company-profile__hero-note {
        display: none;
    }

    .page-about .company-profile__jump {
        overflow-x: auto;
        scrollbar-width: none;
    }

    .page-about .company-profile__jump::-webkit-scrollbar {
        display: none;
    }

    .page-about .company-profile__jump-inner {
        width: max-content;
        min-width: 100%;
        min-height: 50px;
        padding-right: 14px;
    }

    .page-about .company-profile__jump-inner > span {
        display: none;
    }

    .page-about .company-profile__jump a {
        padding-inline: 13px;
        font-size: 8px;
    }

    .page-about .company-profile__jump a:first-child {
        border-left: 0;
    }

    .page-about .company-profile__letter,
    .page-about .company-profile__manifesto,
    .page-about .company-profile__capabilities,
    .page-about .company-profile__language,
    .page-about .company-profile__process,
    .page-about .company-profile__clarity {
        padding-block: 66px;
    }

    .page-about .company-profile__letter-grid,
    .page-about .company-profile__section-head,
    .page-about .company-profile__clarity-grid {
        gap: 34px;
    }

    .page-about .company-profile__letter h2,
    .page-about .company-profile__section-head h2,
    .page-about .company-profile__language-heading h2,
    .page-about .company-profile__clarity h2,
    .page-about .company-profile__manifesto h2,
    .page-about .company-profile__process h2,
    .page-about .company-profile__contact h2 {
        font-size: clamp(31px, 9.5vw, 43px);
        line-height: 1.08;
    }

    .page-about .company-profile__letter-copy > p,
    .page-about .company-profile__clarity-copy > p {
        font-size: 13px;
        line-height: 1.75;
    }

    .page-about .company-profile__materials {
        aspect-ratio: 1.22 / 1;
    }

    .page-about .company-profile__materials figcaption {
        right: 17px;
        bottom: 16px;
        left: 17px;
    }

    .page-about .company-profile__materials figcaption strong {
        font-size: 19px;
    }

    .page-about .company-profile__manifesto-head {
        margin-bottom: 37px;
    }

    .page-about .company-profile__manifesto-grid {
        grid-template-columns: 1fr;
    }

    .page-about .company-profile__manifesto-grid article {
        min-height: auto;
        padding: 23px 20px 25px;
    }

    .page-about .company-profile__manifesto-grid article > span {
        margin-bottom: 25px;
        font-size: 21px;
    }

    .page-about .company-profile__section-head {
        grid-template-columns: 1fr;
        margin-bottom: 35px;
    }

    .page-about .company-profile__section-head > p {
        margin: 0;
        font-size: 12.5px;
        line-height: 1.7;
    }

    .page-about .company-profile__capability-grid {
        grid-template-columns: 1fr;
    }

    .page-about .company-profile__capability-card {
        min-height: 0;
        padding: 22px 20px 23px;
    }

    .page-about .company-profile__capability-icon {
        width: 39px;
        height: 39px;
        margin-bottom: 36px;
    }

    .page-about .company-profile__capability-card h3 {
        font-size: 17px;
    }

    .page-about .company-profile__capability-card p {
        max-width: 370px;
    }

    .page-about .company-profile__language-heading {
        margin-bottom: 33px;
    }

    .page-about .company-profile__language-grid {
        grid-template-columns: 1fr;
        grid-auto-rows: minmax(230px, 69vw);
        gap: 8px;
    }

    .page-about .company-profile__language-card--main,
    .page-about .company-profile__language-card--tall {
        grid-column: auto;
        grid-row: auto;
    }

    .page-about .company-profile__language-card figcaption {
        right: 15px;
        bottom: 14px;
        left: 15px;
    }

    .page-about .company-profile__language-card--main figcaption strong {
        font-size: 20px;
    }

    .page-about .company-profile__language-note {
        margin-top: 14px;
        font-size: 10px;
    }

    .page-about .company-profile__process-grid {
        gap: 38px;
    }

    .page-about .company-profile__process-intro > p {
        margin-bottom: 23px;
        font-size: 12.5px;
        line-height: 1.7;
    }

    .page-about .company-profile__steps li {
        grid-template-columns: 45px minmax(0, 1fr);
        gap: 10px;
        padding-block: 17px;
    }

    .page-about .company-profile__steps li > span {
        font-size: 19px;
    }

    .page-about .company-profile__steps h3 {
        font-size: 15px;
    }

    .page-about .company-profile__steps p {
        font-size: 11.5px;
        line-height: 1.58;
    }

    .page-about .company-profile__clarity-list {
        grid-template-columns: 1fr;
    }

    .page-about .company-profile__clarity-list article {
        min-height: 0;
        padding: 20px 19px;
    }

    .page-about .company-profile__clarity-list article > span {
        margin-bottom: 22px;
    }

    .page-about .company-profile__contact {
        min-height: 0;
    }

    .page-about .company-profile__contact::before {
        background: linear-gradient(180deg, rgb(9 11 14 / 85%) 0%, rgb(9 11 14 / 92%) 55%, rgb(9 11 14 / 98%) 100%);
    }

    .page-about .company-profile__contact-inner {
        grid-template-columns: 1fr;
        gap: 38px;
        min-height: 0;
        padding-block: 70px;
    }

    .page-about .company-profile__contact-inner > div > p {
        margin-bottom: 24px;
        font-size: 13px;
        line-height: 1.72;
    }

    .page-about .company-profile__contact-details a {
        padding-block: 14px;
    }

    .page-about .company-profile__contact-details strong {
        font-size: 11px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .page-about .company-profile *,
    .page-about .company-profile *::before,
    .page-about .company-profile *::after {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
    }
}
.product-card .product-card__specs, .featured-products .product-card .product-card__specs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: minmax(0, auto);
    gap: 10px;
    margin: 3px 0 3px;
    padding: 0;
    background: #fff;
    border-top: 1px solid #f4e7dd;
    color: #56575b;
    padding-top: 12px;
    border-bottom: 1px solid #f4e7dd;
    padding-bottom: 12px;
}

.product-card .product-card__specs > .product-card__spec {
    display: grid;
    grid-template-columns: 15px minmax(0, 1fr);
    align-items: start;
    column-gap: 7px;
    min-width: 0;
    padding: 0px;
}
.product-card .product-card__specs > .product-card__spec > .icon {
    width: 15px;
    height: 16px;
    flex: none;
    margin: 1px 0 0;
    color: #c89538;
    font-size: 14px;
    line-height: 1.2;
    text-align: center;
}
.product-card .product-card__spec-copy {
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 3px;
}
.product-card .product-card__spec-label {
    display: block;
    width: 100%;
    color: #999a9e;
    font-family: inherit;
    font-size: 9px;
    font-weight: 500;
    letter-spacing: .045em;
    line-height: 1.35;
    text-transform: uppercase;
    white-space: normal;
    overflow-wrap: break-word;
}
.product-card .product-card__spec-value {
    display: block;
    width: 100%;
    color: #71767d;
    font-family: inherit;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.42;
    letter-spacing: 0;
    white-space: normal;
    overflow-wrap: anywhere;
}
@media (width <= 760px) {
    .product-card .product-card__specs,
    .featured-products .product-card .product-card__specs {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0px;
        padding-top: 2px;
        padding-bottom: 2px;
    }
    .product-card .product-card__specs > .product-card__spec {
        grid-template-columns: 16px minmax(0, 1fr);
        column-gap: 9px;
        padding: 8px 0px;
    }
    .product-card .product-card__spec-label { font-size: 9px; }
    .product-card .product-card__spec-value { font-size: 12px; }
}

@media (width <= 370px) {
    .product-card .product-card__specs > .product-card__spec {
        column-gap: 6px;
        padding-inline: 8px;
    }
}


/* Mobile-only signature ribbon. Tablet (761–980px) and desktop navigation stay intact. */
.mobile-primary-nav__tagline {
    display: none;
}

@media (max-width: 760px) {
    .site-header .mobile-primary-nav__scroll,
    .site-header--inner .mobile-primary-nav__scroll {
        display: none;
    }

    .site-header .mobile-primary-nav__tagline,
    .site-header--inner .mobile-primary-nav__tagline {
        position: relative;
        isolation: isolate;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: clamp(8px, 2.5vw, 14px);
        width: 100%;
        min-height: 33px;
        padding: 6px 10px 7px;
        overflow: hidden;
    }

    .mobile-primary-nav__tagline::before { top: 3px; }
    .mobile-primary-nav__tagline::after { bottom: 3px; }

    .mobile-primary-nav__tagline-text {
        display: block;
        flex: 0 1 auto;
        min-width: 0;
        color: #493019;
        background: #96602d;
        background-size: 250% 100%;
        background-position: 100% 50%;
        -webkit-background-clip: text;
        background-clip: text;
        -webkit-text-fill-color: transparent;
        font-family: Manrope, Arial, sans-serif;
        font-size: clamp(10px, 3.1vw, 12px);
        font-weight: 400;
        letter-spacing: .06em;
        line-height: 1.5;
        text-align: center;
        text-transform: uppercase;
        white-space: nowrap;
        filter: drop-shadow(0 1px 0 rgba(255, 244, 213, .37));
        animation: mobile-signature-lettershine 8s ease-in-out infinite;
    }

    .mobile-primary-nav__ornament {
        position: relative;
        flex: 1 1 12px;
        width: 22px;
        max-width: 35px;
        height: 1px;
        background: linear-gradient(90deg, rgba(97, 58, 23, .05), rgba(97, 58, 23, .59));
    }

    .mobile-primary-nav__ornament:last-child {
        transform: rotate(180deg);
    }

    .mobile-primary-nav__ornament::after {
        position: absolute;
        top: 50%;
        right: -3px;
        width: 5px;
        height: 5px;
        content: '';
        border: 1px solid rgba(255, 245, 212, .85);
        background: #875827;
        box-shadow: 0 0 0 3px rgba(255, 247, 220, .15), 0 0 8px rgba(255, 252, 234, .55);
        transform: translateY(-50%) rotate(45deg);
        animation: mobile-signature-spark 4s ease-in-out infinite;
    }

    .mobile-primary-nav__ornament:last-child::after {
        animation-delay: 2s;
    }
}

@keyframes mobile-signature-lettershine {
    0%, 30% { background-position: 100% 50%; }
    58%, 100% { background-position: 0% 50%; }
}

@keyframes mobile-signature-spark {
    0%, 100% { box-shadow: 0 0 0 3px rgba(255, 247, 220, .12), 0 0 4px rgba(255, 252, 234, .25); }
    50% { box-shadow: 0 0 0 4px rgba(255, 247, 220, .23), 0 0 12px rgba(255, 252, 234, .84); }
}

@media (prefers-reduced-motion: reduce) {
    .mobile-primary-nav__tagline-text,
    .mobile-primary-nav__ornament::after { animation: none; }
}


/* Badge thong tin cong trinh tren anh: loai cong trinh + dien tich tu CRM. */
.product-card__media .product-card__condition--project {
    max-width: calc(100% - 12px);
    gap: 7px;
    padding: 8px 12px 8px 10px;
    color: #fffaf0;
    background: rgba(13, 15, 17, .9);
    border: 0;
    border-radius: 0;
    box-shadow: 0 2px 10px rgba(0, 0, 0, .17);
    font-size: 11px;
    font-weight: 650;
    letter-spacing: .015em;
    line-height: 1.3;
    text-transform: uppercase;
}
.product-card__media .product-card__condition--project > .icon {
    flex: none;
    width: 13px;
    height: 13px;
    color: #d6a74b;
    font-size: 12px;
}
.product-card__condition--project .product-card__condition-label {
    min-width: 0;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

/* Product cards: estimated cost and title hover match the deep-gold palette.
   The overlay link is deliberately retained, so the full card stays clickable. */
.product-card .product-card__bottom {
    justify-content: flex-start;
}
.product-card .product-card__estimate {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    column-gap: 7px;
    row-gap: 2px;
    min-width: 0;
    line-height: 1.45;
}
.product-card .product-card__estimate-label {
    flex: 0 0 auto;
    color: #756f66;
    font-size: 11px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    white-space: nowrap;
}
.product-card .product-card__estimate-value {
    color: var(--gold-deep, #8f5d18);
    font-family: Manrope, Arial, sans-serif;
    font-size: 19px;
    font-weight: 800;
    letter-spacing: -.025em;
    line-height: 1.35;
    margin-bottom: 0;
    white-space: nowrap;
}
.product-card:hover h3,
.product-card:focus-within h3,
.product-card:hover h3 a,
.product-card:focus-within h3 a {
    color: var(--gold-deep, #8f5d18);
}
@media (max-width: 760px) {
    .product-card .product-card__estimate {
        column-gap: 5px;
        row-gap: 1px;
    }
    .product-card .product-card__estimate-label {
        font-size: 11px;
    }
    .product-card .product-card__estimate-value {
        font-size: clamp(14px, 3.85vw, 17px);
        line-height: 1.35;
    }
}


/* --------------------------------------------------------------------------
   Expert corner / people page
   The `/tin-tuc` route is intentionally retained so existing navigation and
   article URLs keep working; only the public hub has become the expert page.
   -------------------------------------------------------------------------- */
.page-blog {
    overflow-x: clip;
    color: #1b1a18;
    background: #f6f4ef;
}

.page-blog .expert-corner,
.page-blog .expert-corner * {
    border-radius: 0 !important;
}

.page-blog .expert-corner {
    --expert-ink: #17191b;
    --expert-ink-soft: #3b3a36;
    --expert-muted: #77736d;
    --expert-paper: #f6f4ef;
    --expert-paper-warm: #eee9de;
    --expert-panel: #fffdf8;
    --expert-gold: #bb8a43;
    --expert-gold-light: #e2bd77;
    --expert-line: rgb(52 41 23 / 18%);
    --expert-dark: #101215;
    --expert-dark-soft: #171a1d;
    overflow: clip;
    background: var(--expert-paper);
}

.page-blog .expert-corner h1,
.page-blog .expert-corner h2,
.page-blog .expert-corner h3,
.page-blog .expert-corner p,
.page-blog .expert-corner figure,
.page-blog .expert-corner blockquote {
    margin-top: 0;
}

.page-blog .expert-corner__hero {
    position: relative;
    isolation: isolate;
    display: grid;
    min-height: min(704px, calc(100vh - 40px));
    overflow: hidden;
    color: #fffdf8;
    background: var(--expert-dark);
}

.page-blog .expert-corner__hero::before,
.page-blog .expert-corner__hero::after {
    position: absolute;
    z-index: -1;
    inset: 0;
    content: '';
}

.page-blog .expert-corner__hero::before {
    background: linear-gradient(90deg, rgb(7 9 11 / 96%) 0%, rgb(7 9 11 / 88%) 32%, rgb(7 9 11 / 52%) 61%, rgb(7 9 11 / 21%) 100%);
}

.page-blog .expert-corner__hero::after {
    background:
        linear-gradient(180deg, rgb(8 10 12 / 28%) 0%, transparent 30%, transparent 64%, rgb(8 10 12 / 78%) 100%),
        linear-gradient(90deg, rgb(198 147 68 / 12%), transparent 36%);
}

.page-blog .expert-corner__hero-visual {
    position: absolute;
    z-index: -2;
    inset: 0;
}

.page-blog .expert-corner__hero-visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.page-blog .expert-corner__hero-inner {
    display: grid;
    grid-template-columns: minmax(0, 760px) minmax(194px, 1fr);
    align-items: end;
    gap: clamp(34px, 9vw, 152px);
    width: 100%;
    padding-top: clamp(72px, 9vw, 125px);
    padding-bottom: clamp(55px, 8vw, 98px);
}

.page-blog .expert-corner__hero-copy {
    max-width: 760px;
    animation: expert-corner-rise .82s cubic-bezier(.2, .75, .2, 1) both;
}

.page-blog .expert-corner__hero .breadcrumbs {
    margin-bottom: clamp(42px, 7vw, 84px);
}

.page-blog .expert-corner__hero .breadcrumbs li,
.page-blog .expert-corner__hero .breadcrumbs a {
    color: rgb(255 255 255 / 65%);
    font-size: 10px;
    font-weight: 600;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.page-blog .expert-corner__hero .breadcrumbs li:not(:last-child)::after {
    color: var(--expert-gold-light);
}

.page-blog .expert-corner__kicker,
.page-blog .expert-corner__eyebrow {
    display: block;
    margin-bottom: 12px;
    color: #9c7439;
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .16em;
    line-height: 1.5;
    text-transform: uppercase;
}

.page-blog .expert-corner__kicker {
    color: var(--expert-gold-light);
}

.page-blog .expert-corner__kicker span {
    display: inline-block;
    margin-inline: 8px;
    color: rgb(255 255 255 / 42%);
}

.page-blog .expert-corner__hero h1 {
    max-width: 735px;
    margin-bottom: 25px;
    color: #fffdf8;
    font-family: Iowan Old Style, Baskerville, Times New Roman, serif;
    font-size: clamp(45px, 5.3vw, 76px);
    font-weight: 600;
    letter-spacing: -.05em;
    line-height: .99;
}

.page-blog .expert-corner__hero h1 em {
    color: var(--expert-gold-light);
    font-weight: inherit;
}

.page-blog .expert-corner__hero-lead {
    max-width: 600px;
    margin-bottom: 31px;
    color: rgb(255 255 255 / 78%);
    font-size: 16px;
    line-height: 1.78;
}

.page-blog .expert-corner__hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 11px;
}

.page-blog .expert-corner__button {
    display: inline-flex;
    min-height: 52px;
    padding: 13px 20px;
    align-items: center;
    justify-content: center;
    gap: 13px;
    border: 1px solid transparent;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .08em;
    line-height: 1.3;
    text-transform: uppercase;
    transition: transform .25s ease, color .25s ease, border-color .25s ease, background .25s ease;
}

.page-blog .expert-corner__button .icon {
    width: 16px;
    height: 16px;
}

.page-blog .expert-corner__button--gold {
    color: #251a0d;
    background: var(--expert-gold-light);
}

.page-blog .expert-corner__button--gold:hover,
.page-blog .expert-corner__button--gold:focus-visible {
    color: #fffdf8;
    background: #8e662d;
}

.page-blog .expert-corner__button--ghost {
    color: #fffdf8;
    border-color: rgb(255 255 255 / 35%);
    background: rgb(255 255 255 / 3%);
}

.page-blog .expert-corner__button--ghost:hover,
.page-blog .expert-corner__button--ghost:focus-visible {
    color: #1d1710;
    border-color: #fffdf8;
    background: #fffdf8;
}

.page-blog .expert-corner__button:hover,
.page-blog .expert-corner__button:focus-visible {
    transform: translateY(-3px);
}

.page-blog .expert-corner__button:focus-visible,
.page-blog .expert-corner__jump a:focus-visible,
.page-blog .expert-corner__text-link:focus-visible,
.page-blog .expert-corner__contact-details a:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 4px;
}

.page-blog .expert-corner__hero-aside {
    align-self: end;
    max-width: 230px;
    margin-bottom: 4px;
    padding: 0 0 6px 22px;
    border-left: 1px solid rgb(233 198 126 / 47%);
    color: rgb(255 255 255 / 88%);
    animation: expert-corner-rise .82s .12s cubic-bezier(.2, .75, .2, 1) both;
}

.page-blog .expert-corner__hero-aside > span {
    display: block;
    margin-bottom: 11px;
    color: var(--expert-gold-light);
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .13em;
    line-height: 1.55;
}

.page-blog .expert-corner__hero-aside p {
    margin-bottom: 0;
    font-family: Iowan Old Style, Baskerville, Times New Roman, serif;
    font-size: 21px;
    font-weight: 600;
    letter-spacing: -.02em;
    line-height: 1.25;
}

.page-blog .expert-corner__jump {
    position: relative;
    z-index: 3;
    background: #e3bb70;
    border-bottom: 1px solid rgb(84 59 17 / 19%);
}

.page-blog .expert-corner__jump-inner {
    display: flex;
    min-height: 65px;
    align-items: stretch;
    justify-content: space-between;
    gap: 28px;
}

.page-blog .expert-corner__jump-inner > span {
    display: inline-flex;
    align-items: center;
    color: #72501e;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
    white-space: nowrap;
}

.page-blog .expert-corner__jump-inner > div {
    display: flex;
    align-items: stretch;
}

.page-blog .expert-corner__jump a {
    display: inline-flex;
    min-width: 125px;
    padding: 0 20px;
    align-items: center;
    justify-content: center;
    border-left: 1px solid rgb(84 59 17 / 18%);
    color: #382713;
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .06em;
    text-transform: uppercase;
    transition: color .22s ease, background .22s ease;
}

.page-blog .expert-corner__jump a:last-child {
    border-right: 1px solid rgb(84 59 17 / 18%);
}

.page-blog .expert-corner__jump a:hover,
.page-blog .expert-corner__jump a:focus-visible {
    color: #fffdf8;
    background: #86602c;
}

.page-blog .expert-corner__statement {
    padding-block: clamp(78px, 10vw, 148px);
    background: var(--expert-panel);
}

.page-blog .expert-corner__statement-grid {
    display: grid;
    grid-template-columns: minmax(0, .84fr) minmax(0, 1.16fr);
    align-items: center;
    gap: clamp(44px, 9vw, 148px);
}

.page-blog .expert-corner__statement-copy {
    max-width: 510px;
}

.page-blog .expert-corner__statement h2,
.page-blog .expert-corner__section-head h2,
.page-blog .expert-corner__method-heading h2 {
    margin-bottom: 23px;
    color: var(--expert-ink);
    font-family: Iowan Old Style, Baskerville, Times New Roman, serif;
    font-size: clamp(35px, 3.35vw, 52px);
    font-weight: 600;
    letter-spacing: -.044em;
    line-height: 1.12;
}

.page-blog .expert-corner__statement-copy > p {
    margin-bottom: 18px;
    color: #68645d;
    font-size: 15px;
    line-height: 1.82;
}

.page-blog .expert-corner__statement-signature {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-top: 32px;
}

.page-blog .expert-corner__statement-signature > span {
    display: block;
    width: 48px;
    height: 1px;
    background: var(--expert-gold);
}

.page-blog .expert-corner__statement-signature strong,
.page-blog .expert-corner__statement-signature small {
    display: block;
}

.page-blog .expert-corner__statement-signature strong {
    color: #302b24;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .03em;
}

.page-blog .expert-corner__statement-signature small {
    margin-top: 2px;
    color: #82796d;
    font-size: 10px;
    letter-spacing: .02em;
    line-height: 1.45;
}

.page-blog .expert-corner__statement-visual {
    position: relative;
    margin: 0;
    overflow: hidden;
    background: #ebe8e1;
    box-shadow: 22px 25px 0 #e9e2d5;
}

.page-blog .expert-corner__statement-visual::after {
    position: absolute;
    inset: 0;
    pointer-events: none;
    content: '';
    border: 1px solid rgb(108 80 38 / 21%);
}

.page-blog .expert-corner__statement-visual img {
    width: 100%;
    min-height: 420px;
    object-fit: cover;
    object-position: center;
    transition: transform .7s cubic-bezier(.2, .7, .2, 1);
}

.page-blog .expert-corner__statement-visual:hover img {
    transform: scale(1.025);
}

.page-blog .expert-corner__statement-visual figcaption {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    display: grid;
    gap: 4px;
    padding: 17px 22px 18px;
    color: #fffdf8;
    background: linear-gradient(90deg, rgb(15 17 18 / 94%), rgb(15 17 18 / 71%));
}

.page-blog .expert-corner__statement-visual figcaption span {
    color: var(--expert-gold-light);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .14em;
}

.page-blog .expert-corner__statement-visual figcaption strong {
    max-width: 420px;
    font-family: Iowan Old Style, Baskerville, Times New Roman, serif;
    font-size: 19px;
    font-weight: 600;
    letter-spacing: -.01em;
    line-height: 1.3;
}

.page-blog .expert-corner__principles {
    position: relative;
    overflow: hidden;
    padding-block: clamp(74px, 9vw, 130px);
    color: #fffdf8;
    background: var(--expert-dark);
}

.page-blog .expert-corner__principles::after {
    position: absolute;
    right: -18vw;
    bottom: -26vw;
    width: min(58vw, 780px);
    aspect-ratio: 1;
    content: '';
    border: 1px solid rgb(225 189 119 / 13%);
    transform: rotate(45deg);
}

.page-blog .expert-corner__principles > .container {
    position: relative;
    z-index: 1;
}

.page-blog .expert-corner__eyebrow--light {
    color: var(--expert-gold-light);
}

.page-blog .expert-corner__principles-head {
    display: grid;
    grid-template-columns: minmax(210px, .55fr) minmax(0, 1.45fr);
    gap: 38px;
    align-items: start;
    margin-bottom: clamp(42px, 6vw, 72px);
}

.page-blog .expert-corner__principles-head h2,
.page-blog .expert-corner__disciplines-intro h2,
.page-blog .expert-corner__contact h2 {
    margin-bottom: 0;
    font-family: Iowan Old Style, Baskerville, Times New Roman, serif;
    font-size: clamp(35px, 3.65vw, 58px);
    font-weight: 600;
    letter-spacing: -.045em;
    line-height: 1.1;
}

.page-blog .expert-corner__principles-head h2 {
    color: #fffdf8;
    max-width: 820px;
}

.page-blog .expert-corner__principles-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    border-top: 1px solid rgb(255 255 255 / 20%);
}

.page-blog .expert-corner__principles-grid article {
    min-height: 244px;
    padding: 28px clamp(20px, 2.65vw, 42px) 24px;
    border-right: 1px solid rgb(255 255 255 / 20%);
}

.page-blog .expert-corner__principles-grid article:first-child {
    border-left: 1px solid rgb(255 255 255 / 20%);
}

.page-blog .expert-corner__principles-grid span {
    display: block;
    margin-bottom: 44px;
    color: var(--expert-gold-light);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .11em;
}

.page-blog .expert-corner__principles-grid h3 {
    margin-bottom: 12px;
    color: #fffdf8;
    font-family: Iowan Old Style, Baskerville, Times New Roman, serif;
    font-size: 24px;
    font-weight: 600;
    letter-spacing: -.02em;
    line-height: 1.2;
}

.page-blog .expert-corner__principles-grid p {
    max-width: 330px;
    margin-bottom: 0;
    color: rgb(255 255 255 / 66%);
    font-size: 13px;
    line-height: 1.75;
}

.page-blog .expert-corner__team {
    padding-block: clamp(78px, 10vw, 144px);
    background: #f1eee7;
}

.page-blog .expert-corner__section-head {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(270px, .75fr);
    align-items: end;
    gap: 50px;
    margin-bottom: 23px;
}

.page-blog .expert-corner__section-head h2 {
    margin-bottom: 0;
}

.page-blog .expert-corner__section-head > p {
    max-width: 380px;
    margin: 0 0 4px auto;
    color: #6b665e;
    font-size: 14px;
    line-height: 1.8;
}

.page-blog .expert-corner__profile-note {
    display: flex;
    max-width: 670px;
    gap: 11px;
    margin-bottom: 43px;
    padding-top: 15px;
    border-top: 1px solid var(--expert-line);
    color: #7d756a;
    font-size: 11px;
    line-height: 1.65;
}

.page-blog .expert-corner__profile-note span {
    flex: none;
    color: #90692e;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .12em;
    white-space: nowrap;
}

.page-blog .expert-corner__team-grid {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    align-items: start;
    gap: clamp(18px, 2.5vw, 34px);
}

.page-blog .expert-corner__person {
    grid-column: span 3;
    min-width: 0;
}

.page-blog .expert-corner__person--featured {
    grid-column: span 6;
}

.page-blog .expert-corner__person:nth-child(4) {
    grid-column: 7 / span 6;
}

.page-blog .expert-corner__person-photo {
    position: relative;
    margin: 0;
    overflow: hidden;
    background: #d5d0c5;
}

.page-blog .expert-corner__person-photo::after {
    position: absolute;
    inset: 0;
    pointer-events: none;
    content: '';
    border: 1px solid rgb(41 33 20 / 17%);
}

.page-blog .expert-corner__person-photo img {
    width: 100%;
    aspect-ratio: .79;
    object-fit: cover;
    object-position: center top;
    transition: transform .7s cubic-bezier(.2, .7, .2, 1), filter .45s ease;
}

.page-blog .expert-corner__person:hover .expert-corner__person-photo img {
    filter: saturate(1.06);
    transform: scale(1.035);
}

.page-blog .expert-corner__person-photo > span {
    position: absolute;
    right: 0;
    bottom: 0;
    padding: 9px 11px;
    color: #fffdf8;
    background: rgb(16 18 21 / 87%);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .12em;
}

.page-blog .expert-corner__person-copy {
    min-height: 264px;
    padding: 21px 21px 23px;
    background: var(--expert-panel);
    border-top: 2px solid var(--expert-gold);
}

.page-blog .expert-corner__person--featured .expert-corner__person-copy {
    min-height: 0;
    padding: 26px 30px 29px;
}

.page-blog .expert-corner__person-role {
    margin-bottom: 8px;
    color: #956d30;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .12em;
    line-height: 1.5;
}

.page-blog .expert-corner__person h3 {
    margin-bottom: 15px;
    color: #23211e;
    font-family: Iowan Old Style, Baskerville, Times New Roman, serif;
    font-size: clamp(22px, 2vw, 31px);
    font-weight: 600;
    letter-spacing: -.025em;
    line-height: 1.08;
}

.page-blog .expert-corner__person--featured h3 {
    font-size: clamp(28px, 2.55vw, 38px);
}

.page-blog .expert-corner__person blockquote {
    margin-bottom: 15px;
    color: #49443c;
    font-family: Iowan Old Style, Baskerville, Times New Roman, serif;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: -.012em;
    line-height: 1.42;
}

.page-blog .expert-corner__person-copy > p:not(.expert-corner__person-role) {
    margin-bottom: 16px;
    color: #716c64;
    font-size: 12px;
    line-height: 1.7;
}

.page-blog .expert-corner__person-copy ul {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 7px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.page-blog .expert-corner__person-copy li {
    padding: 5px 8px;
    border: 1px solid rgb(143 103 46 / 29%);
    color: #795625;
    font-size: 9px;
    font-weight: 750;
    letter-spacing: .03em;
    line-height: 1.3;
}

.page-blog .expert-corner__disciplines {
    position: relative;
    overflow: hidden;
    padding-block: clamp(78px, 10vw, 145px);
    color: #fffdf8;
    background: var(--expert-dark-soft);
}

.page-blog .expert-corner__disciplines::before {
    position: absolute;
    top: 0;
    right: 9%;
    width: 1px;
    height: 100%;
    content: '';
    background: linear-gradient(180deg, transparent, rgb(223 185 111 / 21%), transparent);
}

.page-blog .expert-corner__disciplines-grid {
    display: grid;
    grid-template-columns: minmax(0, .86fr) minmax(0, 1.14fr);
    gap: clamp(48px, 9vw, 148px);
    align-items: start;
}

.page-blog .expert-corner__disciplines-intro {
    max-width: 510px;
}

.page-blog .expert-corner__disciplines-intro h2 {
    margin-bottom: 24px;
    color: #fffdf8;
}

.page-blog .expert-corner__disciplines-intro > p {
    margin-bottom: 27px;
    color: rgb(255 255 255 / 65%);
    font-size: 14px;
    line-height: 1.82;
}

.page-blog .expert-corner__text-link {
    display: inline-flex;
    padding-bottom: 6px;
    align-items: center;
    gap: 10px;
    border-bottom: 1px solid var(--expert-gold-light);
    color: var(--expert-gold-light);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
    transition: color .2s ease, transform .2s ease;
}

.page-blog .expert-corner__text-link .icon {
    width: 15px;
    height: 15px;
}

.page-blog .expert-corner__text-link:hover,
.page-blog .expert-corner__text-link:focus-visible {
    color: #fffdf8;
    transform: translateX(4px);
}

.page-blog .expert-corner__discipline-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    border-top: 1px solid rgb(255 255 255 / 19%);
    border-left: 1px solid rgb(255 255 255 / 19%);
}

.page-blog .expert-corner__discipline-list article {
    position: relative;
    min-height: 245px;
    padding: 28px 27px 26px;
    border-right: 1px solid rgb(255 255 255 / 19%);
    border-bottom: 1px solid rgb(255 255 255 / 19%);
    transition: background .25s ease;
}

.page-blog .expert-corner__discipline-list article:hover {
    background: rgb(255 255 255 / 5%);
}

.page-blog .expert-corner__discipline-icon {
    display: grid;
    width: 39px;
    height: 39px;
    margin-bottom: 35px;
    place-items: center;
    border: 1px solid rgb(226 189 119 / 44%);
    color: var(--expert-gold-light);
    font-size: 17px;
}

.page-blog .expert-corner__discipline-list article > span {
    position: absolute;
    top: 29px;
    right: 27px;
    color: rgb(255 255 255 / 31%);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .1em;
}

.page-blog .expert-corner__discipline-list h3 {
    margin-bottom: 10px;
    color: #fffdf8;
    font-family: Iowan Old Style, Baskerville, Times New Roman, serif;
    font-size: 24px;
    font-weight: 600;
    letter-spacing: -.025em;
    line-height: 1.18;
}

.page-blog .expert-corner__discipline-list p {
    max-width: 290px;
    margin-bottom: 0;
    color: rgb(255 255 255 / 61%);
    font-size: 12px;
    line-height: 1.74;
}

.page-blog .expert-corner__method {
    padding-block: clamp(78px, 10vw, 141px);
    background: var(--expert-panel);
}

.page-blog .expert-corner__method-grid {
    display: grid;
    grid-template-columns: minmax(0, .84fr) minmax(0, 1.16fr);
    gap: clamp(48px, 9vw, 143px);
    align-items: start;
}

.page-blog .expert-corner__method-heading {
    max-width: 490px;
}

.page-blog .expert-corner__method-heading h2 {
    margin-bottom: 0;
}

.page-blog .expert-corner__method-list {
    margin: 0;
    padding: 0;
    list-style: none;
    border-top: 1px solid var(--expert-line);
}

.page-blog .expert-corner__method-list li {
    display: grid;
    grid-template-columns: 67px minmax(0, 1fr);
    gap: 19px;
    padding: 27px 0 28px;
    border-bottom: 1px solid var(--expert-line);
}

.page-blog .expert-corner__method-list li > span {
    padding-top: 3px;
    color: #a37737;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .1em;
}

.page-blog .expert-corner__method-list h3 {
    margin-bottom: 7px;
    color: #302d28;
    font-family: Iowan Old Style, Baskerville, Times New Roman, serif;
    font-size: 23px;
    font-weight: 600;
    letter-spacing: -.022em;
    line-height: 1.2;
}

.page-blog .expert-corner__method-list p {
    max-width: 570px;
    margin-bottom: 0;
    color: #706b63;
    font-size: 13px;
    line-height: 1.75;
}

.page-blog .expert-corner__contact {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    color: #fffdf8;
    background: var(--expert-dark);
}

.page-blog .expert-corner__contact::before,
.page-blog .expert-corner__contact::after {
    position: absolute;
    z-index: -1;
    inset: 0;
    content: '';
}

.page-blog .expert-corner__contact::before {
    background: linear-gradient(90deg, rgb(9 11 13 / 96%) 0%, rgb(9 11 13 / 87%) 42%, rgb(9 11 13 / 58%) 69%, rgb(9 11 13 / 50%) 100%);
}

.page-blog .expert-corner__contact::after {
    background: linear-gradient(180deg, rgb(6 8 10 / 16%), rgb(6 8 10 / 58%));
}

.page-blog .expert-corner__contact-visual {
    position: absolute;
    z-index: -2;
    inset: 0;
}

.page-blog .expert-corner__contact-visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.page-blog .expert-corner__contact-inner {
    display: grid;
    grid-template-columns: minmax(0, 1.16fr) minmax(300px, .84fr);
    gap: clamp(48px, 10vw, 165px);
    align-items: center;
    min-height: 540px;
    padding-block: clamp(74px, 9vw, 120px);
}

.page-blog .expert-corner__contact-inner > div {
    max-width: 695px;
}

.page-blog .expert-corner__contact h2 {
    max-width: 690px;
    margin-bottom: 22px;
    color: #fffdf8;
}

.page-blog .expert-corner__contact-inner > div > p {
    max-width: 590px;
    margin-bottom: 28px;
    color: rgb(255 255 255 / 74%);
    font-size: 15px;
    line-height: 1.8;
}

.page-blog .expert-corner__contact-details {
    display: grid;
    margin: 0;
    border-top: 1px solid rgb(255 255 255 / 25%);
    font-style: normal;
}

.page-blog .expert-corner__contact-details a {
    display: grid;
    grid-template-columns: 25px minmax(0, 1fr);
    gap: 14px;
    padding: 18px 0;
    align-items: start;
    border-bottom: 1px solid rgb(255 255 255 / 25%);
    transition: color .2s ease, transform .2s ease;
}

.page-blog .expert-corner__contact-details a:hover,
.page-blog .expert-corner__contact-details a:focus-visible {
    color: var(--expert-gold-light);
    transform: translateX(5px);
}

.page-blog .expert-corner__contact-details .icon {
    width: 18px;
    height: 18px;
    margin-top: 4px;
    color: var(--expert-gold-light);
    font-size: 17px;
}

.page-blog .expert-corner__contact-details small,
.page-blog .expert-corner__contact-details strong {
    display: block;
}

.page-blog .expert-corner__contact-details small {
    margin-bottom: 3px;
    color: var(--expert-gold-light);
    font-size: 9px;
    font-style: normal;
    font-weight: 800;
    letter-spacing: .14em;
}

.page-blog .expert-corner__contact-details strong {
    color: #fffdf8;
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: 1.55;
}

@keyframes expert-corner-rise {
    from { opacity: 0; transform: translateY(18px); }
    to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 1080px) {
    .page-blog .expert-corner__hero-inner {
        grid-template-columns: minmax(0, 1fr) minmax(160px, .38fr);
        gap: 42px;
    }

    .page-blog .expert-corner__statement-grid,
    .page-blog .expert-corner__disciplines-grid,
    .page-blog .expert-corner__method-grid {
        gap: 58px;
    }

    .page-blog .expert-corner__section-head {
        gap: 36px;
    }

    .page-blog .expert-corner__person-copy {
        min-height: 0;
        padding: 18px 17px 20px;
    }

    .page-blog .expert-corner__person--featured .expert-corner__person-copy {
        padding: 22px 23px 24px;
    }
}

@media (max-width: 900px) {
    .page-blog .expert-corner__hero {
        min-height: 620px;
    }

    .page-blog .expert-corner__hero::before {
        background: linear-gradient(90deg, rgb(7 9 11 / 94%) 0%, rgb(7 9 11 / 76%) 56%, rgb(7 9 11 / 39%) 100%);
    }

    .page-blog .expert-corner__hero-inner,
    .page-blog .expert-corner__statement-grid,
    .page-blog .expert-corner__disciplines-grid,
    .page-blog .expert-corner__method-grid,
    .page-blog .expert-corner__contact-inner {
        grid-template-columns: 1fr;
    }

    .page-blog .expert-corner__hero-inner {
        align-items: end;
        gap: 35px;
    }

    .page-blog .expert-corner__hero-aside {
        align-self: start;
        max-width: 350px;
    }

    .page-blog .expert-corner__statement-copy,
    .page-blog .expert-corner__disciplines-intro,
    .page-blog .expert-corner__method-heading,
    .page-blog .expert-corner__contact-inner > div {
        max-width: 700px;
    }

    .page-blog .expert-corner__statement-visual {
        max-width: 760px;
    }

    .page-blog .expert-corner__principles-head,
    .page-blog .expert-corner__section-head {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .page-blog .expert-corner__section-head > p {
        margin: 0;
    }

    .page-blog .expert-corner__team-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 22px;
    }

    .page-blog .expert-corner__person,
    .page-blog .expert-corner__person--featured,
    .page-blog .expert-corner__person:nth-child(4) {
        grid-column: auto;
    }

    .page-blog .expert-corner__person--featured {
        grid-column: span 2;
    }

    .page-blog .expert-corner__person--featured .expert-corner__person-photo img {
        aspect-ratio: 1.08;
        object-position: center 36%;
    }

    .page-blog .expert-corner__person--featured .expert-corner__person-copy {
        padding: 24px 25px 26px;
    }

    .page-blog .expert-corner__contact-inner {
        gap: 50px;
        min-height: 0;
    }

    .page-blog .expert-corner__contact-details {
        max-width: 650px;
    }
}

@media (max-width: 760px) {
    .page-blog .expert-corner__hero {
        min-height: 585px;
    }

    .page-blog .expert-corner__hero::before {
        background: linear-gradient(90deg, rgb(7 9 11 / 95%) 0%, rgb(7 9 11 / 78%) 67%, rgb(7 9 11 / 45%) 100%);
    }

    .page-blog .expert-corner__hero-visual img {
        object-position: 58% center;
    }

    .page-blog .expert-corner__hero-inner {
        min-height: 585px;
        padding-top: 43px;
        padding-bottom: 38px;
    }

    .page-blog .expert-corner__hero .breadcrumbs {
        margin-bottom: 37px;
    }

    .page-blog .expert-corner__hero .breadcrumbs li,
    .page-blog .expert-corner__hero .breadcrumbs a {
        font-size: 9px;
    }

    .page-blog .expert-corner__kicker,
    .page-blog .expert-corner__eyebrow {
        margin-bottom: 10px;
        font-size: 9px;
        letter-spacing: .12em;
    }

    .page-blog .expert-corner__hero h1 {
        margin-bottom: 19px;
        font-size: clamp(38px, 10.2vw, 51px);
        line-height: 1.02;
    }

    .page-blog .expert-corner__hero-lead {
        max-width: 480px;
        margin-bottom: 24px;
        font-size: 14px;
        line-height: 1.72;
    }

    .page-blog .expert-corner__hero-actions {
        gap: 8px;
    }

    .page-blog .expert-corner__button {
        min-height: 47px;
        padding: 11px 14px;
        gap: 9px;
        font-size: 9px;
        letter-spacing: .06em;
    }

    .page-blog .expert-corner__hero-aside {
        display: none;
    }

    .page-blog .expert-corner__jump {
        overflow-x: auto;
        scrollbar-width: none;
    }

    .page-blog .expert-corner__jump::-webkit-scrollbar {
        display: none;
    }

    .page-blog .expert-corner__jump-inner {
        width: max-content;
        min-width: 100%;
        min-height: 51px;
        gap: 0;
    }

    .page-blog .expert-corner__jump-inner > span {
        display: none;
    }

    .page-blog .expert-corner__jump a {
        min-width: 120px;
        padding-inline: 15px;
        font-size: 9px;
    }

    .page-blog .expert-corner__jump a:first-child {
        border-left: 0;
    }

    .page-blog .expert-corner__jump a:last-child {
        border-right: 0;
    }

    .page-blog .expert-corner__statement,
    .page-blog .expert-corner__team,
    .page-blog .expert-corner__disciplines,
    .page-blog .expert-corner__method {
        padding-block: 65px;
    }

    .page-blog .expert-corner__statement-grid,
    .page-blog .expert-corner__disciplines-grid,
    .page-blog .expert-corner__method-grid {
        gap: 39px;
    }

    .page-blog .expert-corner__statement h2,
    .page-blog .expert-corner__section-head h2,
    .page-blog .expert-corner__method-heading h2,
    .page-blog .expert-corner__principles-head h2,
    .page-blog .expert-corner__disciplines-intro h2,
    .page-blog .expert-corner__contact h2 {
        font-size: clamp(32px, 8.4vw, 43px);
        line-height: 1.12;
    }

    .page-blog .expert-corner__statement-copy > p {
        font-size: 14px;
        line-height: 1.76;
    }

    .page-blog .expert-corner__statement-signature {
        margin-top: 26px;
    }

    .page-blog .expert-corner__statement-visual {
        box-shadow: 12px 13px 0 #e9e2d5;
    }

    .page-blog .expert-corner__statement-visual img {
        min-height: 0;
        aspect-ratio: 1.12;
    }

    .page-blog .expert-corner__statement-visual figcaption {
        padding: 13px 14px 14px;
    }

    .page-blog .expert-corner__statement-visual figcaption strong {
        font-size: 16px;
    }

    .page-blog .expert-corner__principles {
        padding-block: 64px;
    }

    .page-blog .expert-corner__principles-head {
        gap: 9px;
        margin-bottom: 34px;
    }

    .page-blog .expert-corner__principles-grid {
        grid-template-columns: 1fr;
    }

    .page-blog .expert-corner__principles-grid article,
    .page-blog .expert-corner__principles-grid article:first-child {
        min-height: 0;
        padding: 23px 20px 24px;
        border-right: 1px solid rgb(255 255 255 / 20%);
        border-bottom: 1px solid rgb(255 255 255 / 20%);
        border-left: 1px solid rgb(255 255 255 / 20%);
    }

    .page-blog .expert-corner__principles-grid span {
        margin-bottom: 22px;
    }

    .page-blog .expert-corner__principles-grid h3 {
        font-size: 22px;
    }

    .page-blog .expert-corner__section-head {
        gap: 13px;
        margin-bottom: 20px;
    }

    .page-blog .expert-corner__section-head > p {
        font-size: 13px;
        line-height: 1.72;
    }

    .page-blog .expert-corner__profile-note {
        display: block;
        margin-bottom: 29px;
        padding-top: 13px;
        font-size: 10px;
    }

    .page-blog .expert-corner__profile-note span {
        display: block;
        margin-bottom: 4px;
    }

    .page-blog .expert-corner__team-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .page-blog .expert-corner__person,
    .page-blog .expert-corner__person--featured {
        grid-column: auto;
    }

    .page-blog .expert-corner__person-photo img,
    .page-blog .expert-corner__person--featured .expert-corner__person-photo img {
        aspect-ratio: .93;
        object-position: center 25%;
    }

    .page-blog .expert-corner__person-copy,
    .page-blog .expert-corner__person--featured .expert-corner__person-copy {
        padding: 21px 20px 22px;
    }

    .page-blog .expert-corner__person h3,
    .page-blog .expert-corner__person--featured h3 {
        font-size: 29px;
    }

    .page-blog .expert-corner__person blockquote {
        margin-bottom: 12px;
        font-size: 16px;
    }

    .page-blog .expert-corner__person-copy > p:not(.expert-corner__person-role) {
        font-size: 12px;
    }

    .page-blog .expert-corner__disciplines-intro > p {
        margin-bottom: 23px;
        font-size: 13px;
        line-height: 1.75;
    }

    .page-blog .expert-corner__discipline-list {
        grid-template-columns: 1fr;
    }

    .page-blog .expert-corner__discipline-list article {
        min-height: 0;
        padding: 21px 19px 23px;
    }

    .page-blog .expert-corner__discipline-icon {
        margin-bottom: 22px;
    }

    .page-blog .expert-corner__discipline-list article > span {
        top: 26px;
        right: 19px;
    }

    .page-blog .expert-corner__discipline-list h3 {
        font-size: 22px;
    }

    .page-blog .expert-corner__method-list li {
        grid-template-columns: 43px minmax(0, 1fr);
        gap: 12px;
        padding: 22px 0;
    }

    .page-blog .expert-corner__method-list h3 {
        font-size: 21px;
    }

    .page-blog .expert-corner__method-list p {
        font-size: 12px;
        line-height: 1.7;
    }

    .page-blog .expert-corner__contact::before {
        background: linear-gradient(90deg, rgb(9 11 13 / 96%) 0%, rgb(9 11 13 / 84%) 100%);
    }

    .page-blog .expert-corner__contact-visual img {
        object-position: 65% center;
    }

    .page-blog .expert-corner__contact-inner {
        gap: 37px;
        padding-block: 66px;
    }

    .page-blog .expert-corner__contact-inner > div > p {
        margin-bottom: 24px;
        font-size: 14px;
        line-height: 1.74;
    }

    .page-blog .expert-corner__contact-details a {
        grid-template-columns: 21px minmax(0, 1fr);
        gap: 11px;
        padding: 15px 0;
    }

    .page-blog .expert-corner__contact-details strong {
        font-size: 13px;
    }
}

@media (max-width: 390px) {
    .page-blog .expert-corner__hero-actions {
        display: grid;
        grid-template-columns: 1fr;
        width: min(100%, 255px);
    }

    .page-blog .expert-corner__button {
        width: 100%;
    }

    .page-blog .expert-corner__hero h1 {
        font-size: 37px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .page-blog .expert-corner *,
    .page-blog .expert-corner *::before,
    .page-blog .expert-corner *::after {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
    }
}


/* Home YouTube thumbnail titles: keep the suggestion rail tidy on both
   desktop and mobile, without shortening the real title/data attribute. */
.page-home .video-showcase .video-thumb__copy > strong {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    overflow: hidden;
    white-space: normal;
    overflow-wrap: anywhere;
    line-height: 1.5;
    max-height: 4.5em;
}


/* CATALOG EMPTY STATE — compact luxury proportions, both desktop and mobile. */
.catalog-section .catalog-empty:not([hidden]) {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 330px;
    margin-inline: auto;
    padding: 50px 18px 62px;
    text-align: center;
}

.catalog-section .catalog-empty > .icon {
    display: inline-block;
    width: 1.25em;
    height: 1.25em;
    margin: 0 0 24px;
    color: #c4a063;
    font-size: 46px;
    line-height: 1.25;
}

.catalog-section .catalog-empty h2 {
    max-width: 780px;
    margin: 0 0 11px;
    color: #17191c;
    font-size: clamp(23px, 2.4vw, 28px);
    font-weight: 600;
    letter-spacing: -.025em;
    line-height: 1.27;
}

.catalog-section .catalog-empty p {
    max-width: 660px;
    margin: 0;
    color: #7c8289;
    font-size: 13px;
    line-height: 1.7;
}

.catalog-section .catalog-empty .btn {
    min-height: 42px;
    margin-top: 18px;
    padding: 10px 22px;
    border: 1px solid #c5b8a2;
    border-radius: 0;
    color: #1c2024;
    background: transparent;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .025em;
    line-height: 1.3;
    transition: background-color .2s, border-color .2s, color .2s;
}

.catalog-section .catalog-empty .btn:hover,
.catalog-section .catalog-empty .btn:focus-visible {
    transform: none;
    border-color: #ac8952;
    background: #eee8dd;
    color: #1c2024;
}

@media (max-width: 760px) {
    .catalog-section .catalog-empty:not([hidden]) {
        min-height: 295px;
        padding: 40px 14px 53px;
    }
    .catalog-section .catalog-empty > .icon {
        margin-bottom: 20px;
        font-size: 41px;
    }
    .catalog-section .catalog-empty h2 {
        margin-bottom: 10px;
        font-size: clamp(19px, 5.3vw, 23px);
        line-height: 1.35;
    }
    .catalog-section .catalog-empty p {
        max-width: 340px;
        font-size: 12px;
        line-height: 1.7;
    }
    .catalog-section .catalog-empty .btn {
        min-height: 40px;
        margin-top: 17px;
        padding: 10px 16px;
        font-size: 10.5px;
    }
}
