:root {
    --oc-black: #030303;
    --oc-soft-black: #111111;
    --oc-white: #ffffff;
    --oc-paper: #fbf6f1;
    --oc-ivory: #fbf6f1;
    --oc-ink: #12100d;
    --oc-muted: #69727d;
    --oc-line: #ddd3c6;
    --oc-accent: #8d725b;
    --oc-accent-dark: #725338;
    --oc-serif: "Montserrat", Arial, sans-serif;
    --oc-sans: "Montserrat", Arial, sans-serif;
}

/* Mega menu polish: balanced Orologio-inspired layout without oversized text collisions. */
body:not(.wp-admin) .oc-menu-popup {
    background:
        radial-gradient(circle at 78% 18%, rgba(157, 128, 102, 0.18), transparent 30%),
        linear-gradient(135deg, #030303 0%, #071018 48%, #020202 100%);
    color: var(--oc-paper);
}

body:not(.wp-admin) .oc-menu-popup::before {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(45deg, rgba(157, 128, 102, 0.08) 25%, transparent 25%, transparent 75%, rgba(157, 128, 102, 0.08) 75%),
        linear-gradient(45deg, rgba(157, 128, 102, 0.08) 25%, transparent 25%, transparent 75%, rgba(157, 128, 102, 0.08) 75%);
    background-position: 0 0, 18px 18px;
    background-size: 36px 36px;
    content: "";
    opacity: 0.08;
    pointer-events: none;
}

body:not(.wp-admin) .oc-menu-popup-inner {
    position: relative;
    padding: clamp(26px, 3vw, 38px) clamp(22px, 4vw, 52px) clamp(42px, 5vw, 72px);
}

body:not(.wp-admin) .oc-menu-close {
    top: clamp(30px, 4vw, 52px);
    left: clamp(26px, 4vw, 52px);
    width: clamp(58px, 5.5vw, 74px);
    opacity: 0.78;
}

body:not(.wp-admin) .oc-menu-close:hover {
    opacity: 1;
}

body:not(.wp-admin) .oc-menu-columns {
    display: grid;
    width: min(1180px, calc(100vw - clamp(44px, 8vw, 120px)));
    min-height: calc(100vh - 180px);
    grid-template-columns: minmax(280px, 1.08fr) minmax(230px, 0.72fr) minmax(310px, 0.9fr);
    gap: clamp(34px, 6vw, 86px);
    align-items: center;
    margin: clamp(104px, 12vh, 148px) auto 0;
}

body:not(.wp-admin) .oc-menu-primary,
body:not(.wp-admin) .oc-menu-secondary {
    gap: clamp(10px, 1.4vw, 18px);
}

body:not(.wp-admin) .oc-menu-primary a,
body:not(.wp-admin) .oc-menu-secondary a {
    position: relative;
    display: inline-flex;
    width: fit-content;
    max-width: 100%;
    padding: 0;
    letter-spacing: 0;
    text-decoration: none;
    text-wrap: balance;
    transition: color 0.28s ease, opacity 0.28s ease, transform 0.28s ease;
}

body:not(.wp-admin) .oc-menu-primary a {
    color: rgba(251, 246, 241, 0.92);
    font-family: var(--oc-sans) !important;
    font-size: clamp(44px, 5.4vw, 74px);
    font-weight: 300;
    line-height: 0.96;
}

body:not(.wp-admin) .oc-menu-primary a::after,
body:not(.wp-admin) .oc-menu-secondary a::after {
    position: absolute;
    right: 0;
    bottom: -0.18em;
    left: 0;
    height: 1px;
    background: currentColor;
    content: "";
    opacity: 0;
    transform: scaleX(0);
    transform-origin: left;
    transition: opacity 0.28s ease, transform 0.28s ease;
}

body:not(.wp-admin) .oc-menu-primary a.is-active,
body:not(.wp-admin) .oc-menu-primary a:hover,
body:not(.wp-admin) .oc-menu-secondary a.is-active,
body:not(.wp-admin) .oc-menu-secondary a:hover {
    color: var(--oc-accent);
    transform: translateX(10px);
}

body:not(.wp-admin) .oc-menu-primary a.is-active::after,
body:not(.wp-admin) .oc-menu-primary a:hover::after,
body:not(.wp-admin) .oc-menu-secondary a.is-active::after,
body:not(.wp-admin) .oc-menu-secondary a:hover::after {
    opacity: 0.65;
    transform: scaleX(1);
}

body:not(.wp-admin) .oc-menu-secondary {
    align-self: center;
    padding-top: clamp(8px, 2vw, 28px);
}

body:not(.wp-admin) .oc-menu-secondary a {
    color: rgba(251, 246, 241, 0.66);
    font-family: var(--oc-sans) !important;
    font-size: clamp(22px, 2.3vw, 34px);
    font-weight: 300;
    line-height: 1.16;
}

body:not(.wp-admin) .oc-menu-info {
    align-self: center;
    max-width: 430px;
    margin: 0;
    padding-left: clamp(28px, 4vw, 54px);
    border-left: 1px solid rgba(157, 128, 102, 0.32);
}

body:not(.wp-admin) .oc-menu-info h2 {
    margin: 0 0 24px;
    color: rgba(251, 246, 241, 0.94);
    font-family: var(--oc-sans) !important;
    font-size: clamp(42px, 4vw, 58px);
    font-weight: 300;
    line-height: 1;
    letter-spacing: 0;
}

body:not(.wp-admin) .oc-menu-info p {
    max-width: 360px;
    margin: 0 0 14px;
    color: rgba(251, 246, 241, 0.62);
    font-size: clamp(14px, 1.15vw, 16px);
    line-height: 1.75;
}

@media (max-width: 980px) {
    body:not(.wp-admin) .oc-menu-popup-inner {
        padding: 26px 24px 56px;
    }

    body:not(.wp-admin) .oc-menu-columns {
        width: min(720px, calc(100vw - 48px));
        min-height: auto;
        grid-template-columns: 1fr;
        gap: 34px;
        align-items: start;
        margin-top: 112px;
    }

    body:not(.wp-admin) .oc-menu-primary,
    body:not(.wp-admin) .oc-menu-secondary {
        gap: 14px;
    }

    body:not(.wp-admin) .oc-menu-primary a {
        font-size: clamp(36px, 11.5vw, 58px);
        line-height: 1.02;
    }

    body:not(.wp-admin) .oc-menu-secondary {
        padding-top: 4px;
    }

    body:not(.wp-admin) .oc-menu-secondary a {
        font-size: clamp(20px, 6vw, 28px);
        line-height: 1.18;
    }

    body:not(.wp-admin) .oc-menu-info {
        max-width: none;
        padding-top: 28px;
        padding-left: 0;
        border-top: 1px solid rgba(157, 128, 102, 0.28);
        border-left: 0;
    }
}

/* Contact page. */
body:not(.wp-admin) .orologio-clone .oc-contact-section {
    position: relative;
    overflow: hidden;
}

body:not(.wp-admin) .orologio-clone .oc-contact-hero {
    min-height: clamp(640px, 82vh, 860px);
    display: flex;
    align-items: center;
    padding: clamp(90px, 10vw, 150px) clamp(22px, 5vw, 72px);
    background:
        linear-gradient(90deg, rgba(0, 0, 0, 0.82), rgba(0, 0, 0, 0.46) 48%, rgba(0, 0, 0, 0.72)),
        var(--oc-contact-image) center / cover no-repeat;
    color: #fff;
}

body:not(.wp-admin) .orologio-clone .oc-contact-hero-inner {
    width: min(760px, 100%);
}

body:not(.wp-admin) .orologio-clone .oc-contact-hero-inner > p:first-child,
body:not(.wp-admin) .orologio-clone .oc-contact-panel-copy > p:first-child {
    margin: 0 0 18px;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

body:not(.wp-admin) .orologio-clone .oc-contact-hero h1,
body:not(.wp-admin) .orologio-clone .oc-contact-panel-copy h2 {
    margin: 0;
    color: inherit;
    font-family: var(--oc-serif);
    font-size: clamp(58px, 8.8vw, 126px) !important;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 0.94;
}

body:not(.wp-admin) .orologio-clone .oc-contact-hero em,
body:not(.wp-admin) .orologio-clone .oc-contact-panel-copy em {
    font-style: italic;
}

body:not(.wp-admin) .orologio-clone .oc-contact-hero-inner > p:nth-child(3) {
    max-width: 640px;
    margin: 30px 0 0;
    color: rgba(255, 255, 255, 0.74);
    font-size: clamp(17px, 1.7vw, 23px);
    line-height: 1.62;
}

body:not(.wp-admin) .orologio-clone .oc-contact-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 38px;
}

body:not(.wp-admin) .orologio-clone .oc-contact-hero-actions a,
body:not(.wp-admin) .orologio-clone .oc-contact-form button {
    display: inline-flex;
    min-height: 54px;
    align-items: center;
    justify-content: center;
    padding: 0 30px;
    border: 1px solid rgba(255, 255, 255, 0.36);
    border-radius: 999px;
    background: #9a764d;
    color: #fff;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-decoration: none;
    text-transform: uppercase;
    transition: background-color 260ms ease, color 260ms ease, border-color 260ms ease;
}

body:not(.wp-admin) .orologio-clone .oc-contact-hero-actions a + a {
    background: transparent;
}

body:not(.wp-admin) .orologio-clone .oc-contact-hero-actions a:hover,
body:not(.wp-admin) .orologio-clone .oc-contact-form button:hover {
    border-color: #fff;
    background: #fff;
    color: #050505;
}

body:not(.wp-admin) .orologio-clone .oc-contact-service-strip {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    background: #fbf6f1;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

body:not(.wp-admin) .orologio-clone .oc-contact-service-strip article {
    min-height: 250px;
    padding: clamp(28px, 4vw, 52px);
    border-right: 1px solid rgba(0, 0, 0, 0.1);
}

body:not(.wp-admin) .orologio-clone .oc-contact-service-strip span {
    display: block;
    margin-bottom: 30px;
    color: #9a764d;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.14em;
}

body:not(.wp-admin) .orologio-clone .oc-contact-service-strip h2,
body:not(.wp-admin) .orologio-clone .oc-contact-visit h2 {
    margin: 0 0 16px;
    color: #090909;
    font-family: var(--oc-serif);
    font-size: clamp(30px, 3vw, 48px) !important;
    font-weight: 400;
    line-height: 1.05;
}

body:not(.wp-admin) .orologio-clone .oc-contact-service-strip p {
    max-width: 420px;
    margin: 0;
    color: rgba(0, 0, 0, 0.62);
    font-size: 16px;
    line-height: 1.65;
}

body:not(.wp-admin) .orologio-clone .oc-contact-panel {
    display: grid;
    grid-template-columns: minmax(300px, 0.9fr) minmax(360px, 1.05fr);
    gap: clamp(34px, 6vw, 86px);
    align-items: start;
    padding: clamp(80px, 9vw, 132px) clamp(22px, 5vw, 72px);
    background: #fff;
}

body:not(.wp-admin) .orologio-clone .oc-contact-panel-copy {
    max-width: 620px;
}

body:not(.wp-admin) .orologio-clone .oc-contact-panel-copy p:last-child {
    margin: 28px 0 0;
    color: rgba(0, 0, 0, 0.62);
    font-size: clamp(17px, 1.6vw, 22px);
    line-height: 1.7;
}

body:not(.wp-admin) .orologio-clone .oc-contact-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    padding: clamp(24px, 3vw, 42px);
    background: #fbf6f1;
    border: 1px solid rgba(0, 0, 0, 0.12);
}

body:not(.wp-admin) .orologio-clone .oc-contact-form label {
    display: grid;
    gap: 8px;
}

body:not(.wp-admin) .orologio-clone .oc-contact-form span {
    color: #111;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

body:not(.wp-admin) .orologio-clone .oc-contact-form input,
body:not(.wp-admin) .orologio-clone .oc-contact-form select,
body:not(.wp-admin) .orologio-clone .oc-contact-form textarea {
    width: 100%;
    min-height: 52px;
    padding: 13px 15px;
    border: 1px solid rgba(0, 0, 0, 0.16);
    border-radius: 0;
    background: #fff;
    color: #111;
    font: inherit;
}

body:not(.wp-admin) .orologio-clone .oc-contact-form textarea {
    min-height: 150px;
    resize: vertical;
}

body:not(.wp-admin) .orologio-clone .oc-contact-form-full,
body:not(.wp-admin) .orologio-clone .oc-contact-form button {
    grid-column: 1 / -1;
}

body:not(.wp-admin) .orologio-clone .oc-contact-form button {
    width: fit-content;
    border-color: #9a764d;
    cursor: pointer;
}

body:not(.wp-admin) .orologio-clone .oc-contact-visit {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    background: #050505;
    color: #fff;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
}

body:not(.wp-admin) .orologio-clone .oc-contact-visit article {
    padding: clamp(34px, 4vw, 58px);
    border-right: 1px solid rgba(255, 255, 255, 0.12);
}

body:not(.wp-admin) .orologio-clone .oc-contact-visit h2 {
    color: #fff;
}

body:not(.wp-admin) .orologio-clone .oc-contact-visit p {
    margin: 0 0 12px;
    color: #c69a62;
    font-size: clamp(20px, 2vw, 28px);
    font-weight: 700;
}

body:not(.wp-admin) .orologio-clone .oc-contact-visit a {
    color: inherit;
    text-decoration: none;
}

body:not(.wp-admin) .orologio-clone .oc-contact-visit span {
    color: rgba(255, 255, 255, 0.62);
    font-size: 15px;
    line-height: 1.6;
}

/* Blog article/archive layouts. */
body:not(.wp-admin) .orologio-clone.oc-article-page,
body:not(.wp-admin) .orologio-clone.oc-blog-page {
    background: #fff;
    color: #0b0b0b;
}

body:not(.wp-admin) .orologio-clone .oc-article-hero,
body:not(.wp-admin) .orologio-clone .oc-blog-hero {
    padding: clamp(96px, 10vw, 160px) clamp(22px, 5vw, 72px) clamp(54px, 7vw, 96px);
    background: #fbf6f1;
    text-align: center;
}

body:not(.wp-admin) .orologio-clone .oc-article-breadcrumbs,
body:not(.wp-admin) .orologio-clone .oc-blog-hero .oc-breadcrumbs {
    justify-content: center;
    margin-bottom: 34px;
}

body:not(.wp-admin) .orologio-clone .oc-article-kicker,
body:not(.wp-admin) .orologio-clone .oc-blog-hero > p:first-of-type {
    margin: 0 0 16px;
    color: #9a764d;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

body:not(.wp-admin) .orologio-clone .oc-article-hero h1,
body:not(.wp-admin) .orologio-clone .oc-blog-hero h1 {
    max-width: 1080px;
    margin: 0 auto;
    color: #080808;
    font-family: var(--oc-serif);
    font-size: clamp(48px, 7.8vw, 118px) !important;
    font-weight: 400;
    line-height: 0.96;
    letter-spacing: 0;
}

body:not(.wp-admin) .orologio-clone .oc-article-meta {
    display: flex;
    justify-content: center;
    gap: 18px;
    margin-top: 28px;
    color: rgba(0, 0, 0, 0.56);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

body:not(.wp-admin) .orologio-clone .oc-article-featured {
    margin: 0;
    background: #060606;
}

body:not(.wp-admin) .orologio-clone .oc-article-featured img {
    display: block;
    width: 100%;
    max-height: 720px;
    object-fit: cover;
}

body:not(.wp-admin) .orologio-clone .oc-article-shell {
    display: grid;
    grid-template-columns: minmax(0, 820px) minmax(260px, 340px);
    gap: clamp(36px, 6vw, 90px);
    align-items: start;
    max-width: 1240px;
    margin: 0 auto;
    padding: clamp(58px, 8vw, 112px) clamp(22px, 4vw, 44px);
}

body:not(.wp-admin) .orologio-clone .oc-article-content {
    color: rgba(0, 0, 0, 0.76);
    font-size: clamp(17px, 1.45vw, 20px);
    line-height: 1.78;
}

body:not(.wp-admin) .orologio-clone .oc-article-content > * {
    margin-top: 0;
    margin-bottom: 1.45em;
}

body:not(.wp-admin) .orologio-clone .oc-article-content h2,
body:not(.wp-admin) .orologio-clone .oc-article-content h3 {
    margin-top: 1.7em;
    color: #080808;
    font-family: var(--oc-serif);
    font-weight: 400;
    line-height: 1.08;
}

body:not(.wp-admin) .orologio-clone .oc-article-content h2 {
    font-size: clamp(34px, 4vw, 58px) !important;
}

body:not(.wp-admin) .orologio-clone .oc-article-content h3 {
    font-size: clamp(26px, 3vw, 38px) !important;
}

body:not(.wp-admin) .orologio-clone .oc-article-content img {
    max-width: 100%;
    height: auto;
}

body:not(.wp-admin) .orologio-clone .oc-article-content blockquote {
    margin: 2em 0;
    padding: 22px 0 22px 28px;
    border-left: 1px solid #9a764d;
    color: #111;
    font-family: var(--oc-serif);
    font-size: clamp(26px, 3vw, 42px);
    line-height: 1.18;
}

body:not(.wp-admin) .orologio-clone .oc-article-sidebar {
    position: sticky;
    top: 98px;
    display: grid;
    gap: 22px;
}

body:not(.wp-admin) .orologio-clone .oc-article-cta,
body:not(.wp-admin) .orologio-clone .oc-article-side-list {
    padding: 28px;
    border: 1px solid rgba(0, 0, 0, 0.12);
    background: #fbf6f1;
}

body:not(.wp-admin) .orologio-clone .oc-article-cta p {
    margin: 0 0 12px;
    color: #9a764d;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

body:not(.wp-admin) .orologio-clone .oc-article-cta h2,
body:not(.wp-admin) .orologio-clone .oc-article-side-list h2 {
    margin: 0 0 18px;
    color: #080808;
    font-size: 22px !important;
    line-height: 1.25;
}

body:not(.wp-admin) .orologio-clone .oc-article-cta a,
body:not(.wp-admin) .orologio-clone .oc-blog-readmore {
    color: #080808;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.13em;
    text-transform: uppercase;
}

body:not(.wp-admin) .orologio-clone .oc-article-side-list a {
    display: block;
    padding: 14px 0;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    color: rgba(0, 0, 0, 0.72);
    text-decoration: none;
}

body:not(.wp-admin) .orologio-clone .oc-blog-description {
    max-width: 760px;
    margin: 28px auto 0;
    color: rgba(0, 0, 0, 0.62);
    font-size: clamp(17px, 1.55vw, 22px);
    line-height: 1.65;
}

body:not(.wp-admin) .orologio-clone .oc-blog-grid-section {
    padding: clamp(58px, 7vw, 100px) clamp(22px, 5vw, 72px);
    background: #fff;
}

body:not(.wp-admin) .orologio-clone .oc-blog-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(24px, 3vw, 42px);
    max-width: 1240px;
    margin: 0 auto;
}

body:not(.wp-admin) .orologio-clone .oc-blog-card {
    border: 1px solid rgba(0, 0, 0, 0.09);
    background: #fbf6f1;
}

body:not(.wp-admin) .orologio-clone .oc-blog-card-media {
    display: block;
    overflow: hidden;
    background: #090909;
}

body:not(.wp-admin) .orologio-clone .oc-blog-card-media img {
    display: block;
    width: 100%;
    aspect-ratio: 1.18 / 1;
    object-fit: cover;
    transition: transform 620ms ease, opacity 620ms ease;
}

body:not(.wp-admin) .orologio-clone .oc-blog-card:hover .oc-blog-card-media img {
    transform: scale(1.045);
    opacity: 0.9;
}

body:not(.wp-admin) .orologio-clone .oc-blog-card-body {
    padding: clamp(22px, 3vw, 32px);
}

body:not(.wp-admin) .orologio-clone .oc-blog-card-body span {
    display: block;
    margin-bottom: 16px;
    color: #9a764d;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

body:not(.wp-admin) .orologio-clone .oc-blog-card h2 {
    margin: 0 0 16px;
    font-family: var(--oc-serif);
    font-size: clamp(28px, 2.7vw, 42px) !important;
    font-weight: 400;
    line-height: 1.04;
}

body:not(.wp-admin) .orologio-clone .oc-blog-card h2 a {
    color: inherit;
    text-decoration: none;
}

body:not(.wp-admin) .orologio-clone .oc-blog-card p {
    color: rgba(0, 0, 0, 0.62);
    font-size: 15px;
    line-height: 1.65;
}

body:not(.wp-admin) .orologio-clone .oc-blog-pagination,
body:not(.wp-admin) .orologio-clone .oc-blog-empty {
    max-width: 1240px;
    margin: 48px auto 0;
    text-align: center;
}

@media (max-width: 980px) {
    body:not(.wp-admin) .orologio-clone .oc-contact-service-strip,
    body:not(.wp-admin) .orologio-clone .oc-contact-panel,
    body:not(.wp-admin) .orologio-clone .oc-contact-visit,
    body:not(.wp-admin) .orologio-clone .oc-article-shell,
    body:not(.wp-admin) .orologio-clone .oc-blog-grid {
        grid-template-columns: 1fr;
    }

    body:not(.wp-admin) .orologio-clone .oc-article-sidebar {
        position: static;
    }
}

@media (max-width: 640px) {
    body:not(.wp-admin) .orologio-clone .oc-contact-form {
        grid-template-columns: 1fr;
    }

    body:not(.wp-admin) .orologio-clone .oc-contact-hero-actions a,
    body:not(.wp-admin) .orologio-clone .oc-contact-form button {
        width: 100%;
    }
}

/* Services page: Orologio-inspired editorial service layout. */
body:not(.wp-admin) .orologio-clone .oc-services-section {
    position: relative;
    overflow: hidden;
    color: #070707;
}

body:not(.wp-admin) .orologio-clone .oc-services-hero {
    background: #fbf6f1;
    padding: clamp(92px, 10vw, 150px) clamp(18px, 4vw, 58px) clamp(70px, 8vw, 118px);
}

body:not(.wp-admin) .orologio-clone .oc-services-hero-inner {
    max-width: 1230px;
    margin: 0 auto;
}

body:not(.wp-admin) .orologio-clone .oc-services-heading {
    text-align: center;
}

body:not(.wp-admin) .orologio-clone .oc-services-heading p,
body:not(.wp-admin) .orologio-clone .oc-services-split-head > p,
body:not(.wp-admin) .orologio-clone .oc-services-signature-copy > p:first-child {
    margin: 0 0 12px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

body:not(.wp-admin) .orologio-clone .oc-services-heading h1,
body:not(.wp-admin) .orologio-clone .oc-services-heading h2,
body:not(.wp-admin) .orologio-clone .oc-services-split-head h2,
body:not(.wp-admin) .orologio-clone .oc-services-signature-copy h2 {
    margin: 0;
    color: inherit;
    font-family: var(--oc-serif);
    font-weight: 400;
    letter-spacing: 0;
    line-height: 0.92;
}

body:not(.wp-admin) .orologio-clone .oc-services-heading h1 {
    font-size: clamp(58px, 9vw, 126px) !important;
}

body:not(.wp-admin) .orologio-clone .oc-services-heading em,
body:not(.wp-admin) .orologio-clone .oc-services-split-head em,
body:not(.wp-admin) .orologio-clone .oc-services-signature-copy em,
body:not(.wp-admin) .orologio-clone .oc-services-card em {
    font-style: italic;
}

body:not(.wp-admin) .orologio-clone .oc-services-lead {
    width: min(720px, 100%);
    margin: clamp(28px, 4vw, 48px) auto clamp(44px, 6vw, 76px);
    color: rgba(0, 0, 0, 0.68);
    font-size: clamp(18px, 2vw, 26px);
    line-height: 1.55;
    text-align: center;
}

body:not(.wp-admin) .orologio-clone .oc-services-card-grid,
body:not(.wp-admin) .orologio-clone .oc-services-proof-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(20px, 3vw, 38px);
}

body:not(.wp-admin) .orologio-clone .oc-services-card {
    border: 1px solid rgba(0, 0, 0, 0.08);
    background: rgba(255, 255, 255, 0.42);
    transition: transform 520ms ease, border-color 520ms ease, background-color 520ms ease;
}

body:not(.wp-admin) .orologio-clone .oc-services-card:hover {
    transform: translateY(-8px);
    border-color: rgba(156, 119, 77, 0.42);
    background: #fff;
}

body:not(.wp-admin) .orologio-clone .oc-services-card a {
    display: block;
    color: inherit;
    text-decoration: none;
}

body:not(.wp-admin) .orologio-clone .oc-services-card figure {
    margin: 0;
    overflow: hidden;
    background: #050505;
}

body:not(.wp-admin) .orologio-clone .oc-services-card img,
body:not(.wp-admin) .orologio-clone .oc-services-proof-grid img {
    display: block;
    width: 100%;
    aspect-ratio: 1.42 / 1;
    object-fit: cover;
    transition: transform 700ms ease, opacity 700ms ease;
}

body:not(.wp-admin) .orologio-clone .oc-services-card:hover img {
    transform: scale(1.045);
    opacity: 0.92;
}

body:not(.wp-admin) .orologio-clone .oc-services-card div {
    padding: clamp(22px, 3vw, 34px);
}

body:not(.wp-admin) .orologio-clone .oc-services-card h2 {
    margin: 0 0 16px;
    color: #070707;
    font-family: var(--oc-serif);
    font-size: clamp(27px, 3vw, 44px);
    font-weight: 400;
    line-height: 1.05;
}

body:not(.wp-admin) .orologio-clone .oc-services-card h2 span {
    font-family: var(--oc-sans);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.14em;
    vertical-align: super;
}

body:not(.wp-admin) .orologio-clone .oc-services-card p,
body:not(.wp-admin) .orologio-clone .oc-services-proof-grid p,
body:not(.wp-admin) .orologio-clone .oc-services-step p,
body:not(.wp-admin) .orologio-clone .oc-services-faq-item p {
    color: rgba(0, 0, 0, 0.64);
    font-size: 16px;
    line-height: 1.65;
}

body:not(.wp-admin) .orologio-clone .oc-services-signature {
    display: grid;
    grid-template-columns: minmax(320px, 0.9fr) minmax(0, 1.1fr);
    gap: clamp(28px, 5vw, 78px);
    align-items: center;
    background: #030303;
    padding: clamp(74px, 9vw, 132px) clamp(20px, 5vw, 70px);
    color: #fff;
}

body:not(.wp-admin) .orologio-clone .oc-services-signature-copy {
    justify-self: end;
    width: min(520px, 100%);
}

body:not(.wp-admin) .orologio-clone .oc-services-signature-copy h2 {
    color: #fff;
    font-size: clamp(48px, 7vw, 98px) !important;
}

body:not(.wp-admin) .orologio-clone .oc-services-signature-copy p:not(:first-child) {
    margin: 28px 0;
    color: rgba(255, 255, 255, 0.68);
    font-size: 18px;
    line-height: 1.7;
}

body:not(.wp-admin) .orologio-clone .oc-services-link {
    display: inline-flex;
    align-items: center;
    min-height: 50px;
    padding: 0 28px;
    border: 1px solid rgba(255, 255, 255, 0.34);
    border-radius: 999px;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-decoration: none;
    text-transform: uppercase;
    transition: background-color 260ms ease, color 260ms ease;
}

body:not(.wp-admin) .orologio-clone .oc-services-link:hover {
    background: #fff;
    color: #050505;
}

body:not(.wp-admin) .orologio-clone .oc-services-signature-media {
    margin: 0;
}

body:not(.wp-admin) .orologio-clone .oc-services-signature-media img {
    display: block;
    width: 100%;
    aspect-ratio: 1.38 / 1;
    object-fit: cover;
    opacity: 0.9;
}

body:not(.wp-admin) .orologio-clone .oc-services-process,
body:not(.wp-admin) .orologio-clone .oc-services-faq {
    background: #fff;
    padding: clamp(74px, 9vw, 128px) clamp(20px, 5vw, 70px);
}

body:not(.wp-admin) .orologio-clone .oc-services-split-head {
    display: grid;
    grid-template-columns: minmax(260px, 0.72fr) minmax(260px, 1fr);
    gap: clamp(24px, 5vw, 76px);
    align-items: end;
    max-width: 1210px;
    margin: 0 auto clamp(44px, 6vw, 72px);
}

body:not(.wp-admin) .orologio-clone .oc-services-split-head > p:first-child {
    grid-column: 1 / -1;
    margin-bottom: -10px;
}

body:not(.wp-admin) .orologio-clone .oc-services-split-head h2 {
    font-size: clamp(48px, 7vw, 104px) !important;
}

body:not(.wp-admin) .orologio-clone .oc-services-split-head > p:last-child {
    margin: 0 0 10px;
    color: rgba(0, 0, 0, 0.62);
    font-size: clamp(17px, 1.6vw, 22px);
    line-height: 1.65;
}

body:not(.wp-admin) .orologio-clone .oc-services-step-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    max-width: 1210px;
    margin: 0 auto;
    border-top: 1px solid rgba(0, 0, 0, 0.12);
    border-left: 1px solid rgba(0, 0, 0, 0.12);
}

body:not(.wp-admin) .orologio-clone .oc-services-step {
    min-height: 230px;
    padding: clamp(24px, 3vw, 38px);
    border-right: 1px solid rgba(0, 0, 0, 0.12);
    border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}

body:not(.wp-admin) .orologio-clone .oc-services-step span {
    display: block;
    margin-bottom: 42px;
    color: #a07a50;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.12em;
}

body:not(.wp-admin) .orologio-clone .oc-services-step h3,
body:not(.wp-admin) .orologio-clone .oc-services-proof-grid h3 {
    margin: 0 0 14px;
    color: #080808;
    font-size: clamp(20px, 2vw, 28px);
    font-weight: 600;
    line-height: 1.15;
}

body:not(.wp-admin) .orologio-clone .oc-services-proof {
    background: #fbf6f1;
    padding: clamp(74px, 9vw, 128px) clamp(20px, 5vw, 70px);
}

body:not(.wp-admin) .orologio-clone .oc-services-proof-grid {
    max-width: 1210px;
    margin: 0 auto;
}

body:not(.wp-admin) .orologio-clone .oc-services-proof-grid article {
    background: rgba(255, 255, 255, 0.52);
    border: 1px solid rgba(0, 0, 0, 0.09);
}

body:not(.wp-admin) .orologio-clone .oc-services-proof-grid article > h3,
body:not(.wp-admin) .orologio-clone .oc-services-proof-grid article > p {
    padding-right: clamp(22px, 3vw, 32px);
    padding-left: clamp(22px, 3vw, 32px);
}

body:not(.wp-admin) .orologio-clone .oc-services-proof-grid article > h3 {
    padding-top: 28px;
}

body:not(.wp-admin) .orologio-clone .oc-services-proof-grid article > p {
    padding-bottom: 30px;
}

body:not(.wp-admin) .orologio-clone .oc-services-faq .oc-services-heading h2 {
    font-size: clamp(50px, 7vw, 104px) !important;
}

body:not(.wp-admin) .orologio-clone .oc-services-faq-list {
    width: min(940px, 100%);
    margin: clamp(38px, 5vw, 68px) auto 0;
    border-top: 1px solid rgba(0, 0, 0, 0.14);
}

body:not(.wp-admin) .orologio-clone .oc-services-faq-item {
    border-bottom: 1px solid rgba(0, 0, 0, 0.14);
}

body:not(.wp-admin) .orologio-clone .oc-services-faq-item summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 24px 0;
    cursor: pointer;
    color: #060606;
    font-size: clamp(20px, 2.2vw, 30px);
    font-weight: 500;
    list-style: none;
}

body:not(.wp-admin) .orologio-clone .oc-services-faq-item summary::-webkit-details-marker {
    display: none;
}

body:not(.wp-admin) .orologio-clone .oc-services-faq-item summary::after {
    content: "+";
    flex: 0 0 auto;
    color: #a07a50;
    font-family: var(--oc-serif);
    font-size: 32px;
}

body:not(.wp-admin) .orologio-clone .oc-services-faq-item[open] summary::after {
    content: "-";
}

body:not(.wp-admin) .orologio-clone .oc-services-faq-item p {
    max-width: 760px;
    margin: -4px 0 28px;
}

@media (max-width: 980px) {
    body:not(.wp-admin) .orologio-clone .oc-services-card-grid,
    body:not(.wp-admin) .orologio-clone .oc-services-proof-grid,
    body:not(.wp-admin) .orologio-clone .oc-services-step-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body:not(.wp-admin) .orologio-clone .oc-services-signature,
    body:not(.wp-admin) .orologio-clone .oc-services-split-head {
        grid-template-columns: 1fr;
    }

    body:not(.wp-admin) .orologio-clone .oc-services-signature-copy {
        justify-self: start;
    }
}

@media (max-width: 640px) {
    body:not(.wp-admin) .orologio-clone .oc-services-card-grid,
    body:not(.wp-admin) .orologio-clone .oc-services-proof-grid,
    body:not(.wp-admin) .orologio-clone .oc-services-step-grid {
        grid-template-columns: 1fr;
    }

    body:not(.wp-admin) .orologio-clone .oc-services-step {
        min-height: auto;
    }

    body:not(.wp-admin) .orologio-clone .oc-services-step span {
        margin-bottom: 24px;
    }
}

@media (max-width: 520px) {
    body:not(.wp-admin) .oc-menu-popup-inner {
        padding-right: 18px;
        padding-left: 18px;
    }

    body:not(.wp-admin) .oc-menu-columns {
        width: 100%;
        margin-top: 94px;
    }

    body:not(.wp-admin) .oc-menu-primary a {
        font-size: clamp(34px, 10.8vw, 48px);
    }

    body:not(.wp-admin) .oc-menu-primary a.is-active,
    body:not(.wp-admin) .oc-menu-primary a:hover,
    body:not(.wp-admin) .oc-menu-secondary a.is-active,
    body:not(.wp-admin) .oc-menu-secondary a:hover {
        transform: translateX(5px);
    }
}

html,
body,
button,
input,
select,
textarea {
    font-family: var(--oc-sans);
}

body {
    font-family: var(--oc-sans) !important;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.8;
    letter-spacing: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
.site-title,
.main-title,
.entry-title,
.page-title,
.woocommerce-products-header__title,
.product_title,
.related.products > h2,
.up-sells > h2,
.cross-sells > h2 {
    font-family: var(--oc-serif) !important;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.08;
}

p,
li,
td,
th,
.entry-content,
.woocommerce,
.woocommerce div.product,
.woocommerce ul.products li.product,
.woocommerce-Tabs-panel {
    font-family: var(--oc-sans) !important;
}

a,
button,
.button,
input[type="button"],
input[type="submit"],
.wp-block-button__link,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.main-navigation a,
.menu-toggle {
    font-family: var(--oc-sans) !important;
    font-weight: 400;
    letter-spacing: 0;
}

.main-navigation a,
.secondary-navigation a,
.woocommerce-breadcrumb,
.woocommerce-result-count,
.woocommerce-ordering,
.price,
.sku_wrapper,
.posted_in,
.tagged_as {
    font-family: var(--oc-sans) !important;
}

body:not(.wp-admin),
body:not(.wp-admin) button,
body:not(.wp-admin) input,
body:not(.wp-admin) select,
body:not(.wp-admin) textarea {
    font-family: var(--oc-sans) !important;
}

body:not(.wp-admin) h1,
body:not(.wp-admin) h2,
body:not(.wp-admin) h3,
body:not(.wp-admin) h4,
body:not(.wp-admin) h5,
body:not(.wp-admin) h6 {
    font-family: var(--oc-serif) !important;
}

body.orologio-clone-active,
body.orologio-clone-active #page,
body.orologio-clone-active .site {
    background: var(--oc-black);
}

body.orologio-clone-active .site-header,
body.orologio-clone-active .main-navigation,
body.orologio-clone-active .mobile-header-navigation,
body.orologio-clone-active #site-navigation,
body.orologio-clone-active #mobile-header,
body.orologio-clone-active #sticky-navigation,
body.orologio-clone-active .navigation-stick,
body.orologio-clone-active .page-header-image,
body.orologio-clone-active .site-footer {
    display: none !important;
}

body.orologio-clone-active .site.grid-container,
body.orologio-clone-active .site-content,
body.orologio-clone-active .content-area,
body.orologio-clone-active .inside-article {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
}

.orologio-clone {
    overflow: hidden;
    background: var(--oc-black);
    color: var(--oc-white);
    font-family: var(--oc-sans);
    font-size: 18px;
    line-height: 1.75;
}

.orologio-clone *,
.orologio-clone *::before,
.orologio-clone *::after {
    box-sizing: border-box;
}

.orologio-clone a {
    color: inherit;
    text-decoration: none;
}

.orologio-clone img {
    display: block;
    max-width: 100%;
}

.oc-header {
    position: fixed;
    z-index: 50;
    top: 0;
    left: 0;
    right: 0;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    padding: 28px clamp(20px, 4vw, 52px);
    color: var(--oc-white);
    pointer-events: none;
    transition: background 220ms ease, padding 220ms ease, backdrop-filter 220ms ease;
}

.oc-header.is-scrolled {
    padding-top: 18px;
    padding-bottom: 18px;
    background: rgba(3, 3, 3, 0.72);
    backdrop-filter: blur(16px);
}

.oc-header > * {
    pointer-events: auto;
}

.oc-logo {
    font-family: var(--oc-serif);
    font-size: clamp(24px, 2.1vw, 34px);
    line-height: 1;
}

.oc-menu-button {
    display: inline-flex;
    width: 54px;
    height: 28px;
    flex-direction: column;
    justify-content: space-between;
    border: 0;
    background: transparent;
    padding: 0;
    color: inherit;
    cursor: pointer;
}

.oc-menu-button span {
    display: block;
    width: 100%;
    height: 1px;
    background: currentColor;
    transition: transform 220ms ease, opacity 220ms ease;
}

.oc-menu-button[aria-expanded="true"] span:nth-child(1) {
    transform: translateY(13px) rotate(18deg);
}

.oc-menu-button[aria-expanded="true"] span:nth-child(2) {
    opacity: 0;
}

.oc-menu-button[aria-expanded="true"] span:nth-child(3) {
    transform: translateY(-13px) rotate(-18deg);
}

.oc-actions {
    justify-self: end;
    display: flex;
    gap: 16px;
    font-size: 22px;
}

.oc-hotline-link {
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    gap: 10px;
    border: 1px solid rgba(255, 255, 255, 0.52);
    background: rgba(255, 255, 255, 0.04);
    padding: 10px 18px;
    color: #fff;
    font-size: 12px;
    line-height: 1;
    text-decoration: none;
    transition: background-color 220ms ease, border-color 220ms ease, color 220ms ease, transform 220ms ease;
}

.oc-hotline-link span {
    color: rgba(255, 255, 255, 0.64);
    font-size: 9px;
    font-weight: 600;
    letter-spacing: 1.4px;
    text-transform: uppercase;
}

.oc-hotline-link strong {
    color: #fff;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.8px;
    white-space: nowrap;
}

.oc-hotline-link:hover,
.oc-hotline-link:focus-visible {
    border-color: #9d8066;
    background: #9d8066;
    color: #fff;
    transform: translateY(-1px);
}

.oc-hotline-link:hover span,
.oc-hotline-link:focus-visible span {
    color: rgba(255, 255, 255, 0.82);
}

.oc-drawer {
    position: absolute;
    top: 86px;
    left: clamp(20px, 4vw, 52px);
    width: min(340px, calc(100vw - 40px));
    padding: 28px;
    background: rgba(3, 3, 3, 0.94);
    border: 1px solid rgba(255, 255, 255, 0.16);
    opacity: 0;
    transform: translateY(-12px);
    pointer-events: none;
    transition: opacity 220ms ease, transform 220ms ease;
}

.oc-drawer.is-open {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}

.oc-drawer ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.oc-drawer a {
    display: block;
    padding: 10px 0;
    font-size: 14px;
    text-transform: uppercase;
}

.oc-hero {
    position: relative;
    min-height: 100vh;
    overflow: hidden;
    padding: 0 clamp(22px, 5vw, 96px);
    background: var(--oc-black);
}

.oc-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
    background:
        radial-gradient(ellipse at 50% 57%, rgba(0,0,0,0) 0%, rgba(0,0,0,0.08) 34%, rgba(0,0,0,0.68) 76%, rgba(0,0,0,0.95) 100%),
        linear-gradient(180deg, rgba(0,0,0,0.62) 0%, rgba(0,0,0,0.06) 36%, rgba(0,0,0,0.1) 62%, rgba(0,0,0,0.78) 100%);
}

.oc-hero-product {
    position: absolute;
    z-index: 1;
    left: 50%;
    top: 49%;
    width: min(1160px, 76vw);
    aspect-ratio: 3 / 2;
    transform: translate(-50%, -38%);
    background: var(--oc-hero-image) 72% 55% / 138% auto no-repeat;
    filter: brightness(1.22) contrast(1.08) saturate(1.05);
}

.oc-hero-heading {
    position: relative;
    z-index: 3;
    width: min(680px, 100%);
    margin: 0 auto;
    padding-top: clamp(132px, 13vh, 164px);
    text-align: center;
}

.oc-kicker {
    margin: 0 0 12px;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.3;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.oc-hero h1,
.oc-section h2,
.oc-section h3,
.oc-footer-cta h2,
.oc-newsletter h2,
.oc-newsletter h3,
.oc-subhero h1,
.oc-product-summary h1,
.oc-page-content h1 {
    font-family: var(--oc-serif);
    font-weight: 400;
}

.oc-hero h1 {
    max-width: 680px;
    margin: 0 auto;
    font-size: clamp(60px, 5.85vw, 88px);
    line-height: 0.84;
}

.oc-hero h1 span {
    display: block;
    white-space: nowrap;
}

.oc-hero h1 em {
    display: inline;
    color: var(--oc-accent);
    font-size: 0.58em;
    font-style: italic;
    vertical-align: 0.08em;
}

.oc-hero-copy {
    position: absolute;
    z-index: 3;
    left: clamp(22px, 18.5vw, 300px);
    bottom: clamp(58px, 8.5vh, 92px);
    width: min(430px, calc(100vw - 44px));
    margin: 0;
    color: rgba(255, 255, 255, 0.78);
    font-size: 15px;
    line-height: 1.55;
}

.oc-hero-cta {
    position: absolute;
    z-index: 3;
    right: clamp(22px, 18vw, 300px);
    bottom: clamp(54px, 8vh, 86px);
    min-width: 174px;
    border-radius: 999px;
}

.oc-button,
.oc-cart-link,
.oc-collection-card span,
.oc-footer-cta a,
.oc-product-actions button.single_add_to_cart_button,
.oc-contact-card .button,
.oc-page-content .button {
    display: inline-flex;
    min-height: 56px;
    align-items: center;
    justify-content: center;
    border: 0;
    background: var(--oc-accent);
    color: var(--oc-white);
    padding: 15px 35px;
    font-size: 16px;
    line-height: 1.8;
    transition: background 600ms cubic-bezier(0.165, 0.84, 0.44, 1), transform 180ms ease;
}

.oc-button:hover,
.oc-cart-link:hover,
.oc-collection-card:hover span,
.oc-footer-cta a:hover,
.oc-product-actions button.single_add_to_cart_button:hover,
.oc-contact-card .button:hover {
    background: var(--oc-accent-dark);
    transform: translateY(-1px);
}

.oc-ghost-link {
    display: inline-flex;
    min-height: 56px;
    align-items: center;
    border-bottom: 1px solid rgba(255,255,255,0.55);
    color: var(--oc-white);
}

.oc-marquee {
    display: flex;
    min-height: 100px;
    align-items: center;
    overflow: hidden;
    background: var(--oc-paper);
    color: var(--oc-ink);
}

.oc-marquee div {
    display: flex;
    width: max-content;
    animation: oc-marquee 26s linear infinite;
}

.oc-marquee span {
    padding: 0 34px;
    font-family: var(--oc-sans);
    font-size: 18px;
    font-weight: 400;
    line-height: 1.8;
    white-space: nowrap;
}

.oc-marquee span:nth-child(odd) {
    color: var(--oc-ink);
    font-style: normal;
}

.oc-section {
    padding: clamp(76px, 9vw, 142px) clamp(20px, 6vw, 82px);
    background: var(--oc-paper);
    color: var(--oc-ink);
}

.oc-section h2 {
    margin: 0;
    font-size: clamp(50px, 5.55vw, 70px);
    line-height: 0.86;
}

.oc-brand {
    display: grid;
    grid-template-columns: minmax(280px, 380px) minmax(320px, 380px);
    gap: clamp(70px, 8.5vw, 120px);
    align-items: center;
    justify-content: center;
    padding-top: 100px;
    padding-bottom: 100px;
}

.oc-brand-copy h2 {
    margin: 0 0 20px;
    font-size: clamp(42px, 3.9vw, 50px);
    line-height: 1.3;
}

.oc-brand-copy p {
    margin: 0 0 25px;
    color: var(--oc-ink);
    font-size: 18px;
    line-height: 1.8;
}

.oc-brand-image {
    width: 100%;
    height: 570px;
    object-fit: cover;
}

.oc-text-link {
    display: inline-flex;
    margin-top: 0;
    padding-bottom: 7px;
    border-bottom: 1px solid currentColor;
    color: var(--oc-ink);
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.oc-intro {
    display: block;
    max-width: none;
    margin: 0 auto;
    padding-top: 100px;
    padding-right: 0;
    padding-bottom: 60px;
    padding-left: 0;
    text-align: left;
}

.oc-intro > div {
    max-width: 100%;
    text-align: center;
}

.oc-intro > p {
    display: none;
}

.oc-intro .oc-kicker {
    margin-bottom: 10px;
    font-size: 16px;
    line-height: 1.3;
}

.oc-intro > p,
.oc-editorial-copy p:not(.oc-kicker),
.oc-product-body p,
.oc-newsletter p,
.oc-product-short,
.oc-page-content {
    color: var(--oc-muted);
}

.oc-collections {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: min(1200px, calc(100vw - 40px));
    grid-template-columns: none;
    gap: 30px;
    width: min(1200px, calc(100vw - 40px));
    max-width: none;
    margin-right: auto;
    margin-bottom: 0;
    margin-left: auto;
    overflow-x: auto;
    overflow-y: hidden;
    padding-top: 0;
    padding-right: 0;
    padding-bottom: 0;
    padding-left: 0;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
}

.oc-collections::-webkit-scrollbar {
    display: none;
}

.orologio-clone .oc-collections {
    margin: 0 auto;
}

.oc-collection-card {
    width: min(1200px, calc(100vw - 40px));
    min-height: 604px;
    overflow: visible;
    background: transparent;
    color: var(--oc-ink);
    scroll-snap-align: start;
}

.oc-collection-card a {
    display: flex;
    min-height: inherit;
    gap: 60px;
    align-items: center;
    padding-left: 0;
}

.oc-collection-card img {
    width: min(453px, 38vw);
    flex: 0 0 min(453px, 38vw);
    height: clamp(470px, 42vw, 604px);
    min-height: 0;
    object-fit: cover;
    padding: 0;
    background: transparent;
    transition: transform 650ms ease;
}

.oc-collection-card:hover img {
    transform: scale(1.045);
}

.oc-collection-card div {
    display: flex;
    width: min(686px, calc(100% - min(453px, 38vw) - 60px));
    min-height: 604px;
    flex-direction: column;
    justify-content: center;
    padding: 0 60px;
}

.oc-collection-card h3 {
    margin: 0 0 20px;
    color: var(--oc-ink);
    font-size: clamp(52px, 5.55vw, 70px);
    line-height: 1.3;
}

.oc-collection-card p:not(.oc-kicker) {
    max-width: 567px;
    min-height: 65px;
    margin: 0 0 25px;
    color: var(--oc-ink);
    font-size: 18px;
    line-height: 1.8;
}

.oc-collection-card span {
    min-height: 60px;
    align-self: flex-start;
    padding: 15px 35px;
}

.oc-collection-card .oc-kicker {
    margin: 0;
    font-size: 16px;
    line-height: 1.8;
}

.oc-collection-tabs {
    display: flex;
    width: min(1200px, calc(100vw - 40px));
    min-height: 63px;
    align-items: center;
    justify-content: center;
    gap: clamp(24px, 5vw, 70px);
    margin: 0 auto 40px;
    padding: 0;
    overflow: hidden;
    background: var(--oc-paper);
    color: var(--oc-ink);
}

.oc-collection-tabs span {
    font-family: var(--oc-sans);
    font-size: 14px;
    font-weight: 600;
    line-height: 1.3;
    letter-spacing: 2px;
    white-space: nowrap;
}

.oc-section-heading {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 24px;
    align-items: end;
    margin-bottom: 44px;
}

.oc-product-grid,
.oc-archive-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 54px;
}

.oc-product-card {
    min-width: 0;
    background: var(--oc-ivory);
    text-align: center;
}

.oc-product-image {
    display: block;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    background: #eee7dd;
}

.oc-product-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    padding: 0;
    transition: transform 460ms ease;
}

.oc-product-card:hover .oc-product-image img {
    transform: scale(1.035);
}

.oc-product-body {
    padding: 30px;
}

.oc-product-body h3 {
    margin: 0 0 5px;
    font-size: 32px;
    line-height: normal;
}

.oc-product-body p {
    min-height: 32px;
    margin: 0 0 22px;
    color: var(--oc-ink);
    font-size: 16px;
    line-height: 2.025;
}

.oc-price {
    margin-bottom: 22px;
    color: var(--oc-accent);
    font-size: 16px;
    font-weight: 400;
}

.oc-cart-link {
    width: 100%;
    min-height: 40px;
    padding: 8px;
    overflow: hidden;
}

.oc-editorial,
.oc-latest,
.oc-social {
    display: grid;
    gap: clamp(34px, 6vw, 90px);
    align-items: center;
}

.oc-editorial {
    grid-template-columns: minmax(300px, 0.8fr) minmax(420px, 1.2fr);
    padding-top: 100px;
    padding-bottom: 100px;
}

.oc-editorial-copy h2 {
    max-width: 760px;
    font-size: clamp(50px, 5.55vw, 70px);
    line-height: 0.86;
}

.oc-latest h2 {
    font-size: clamp(46px, 4.45vw, 64px);
    line-height: 1;
    text-transform: uppercase;
}

.oc-editorial-copy p:not(.oc-kicker) {
    max-width: 560px;
    margin: 26px 0 0;
    color: var(--oc-ink);
    font-size: 18px;
    line-height: 1.8;
}

.oc-editorial-media,
.oc-latest-images {
    display: grid;
    grid-template-columns: minmax(220px, 0.78fr) minmax(260px, 1fr);
    gap: 18px;
    align-items: end;
}

.oc-editorial-media img,
.oc-latest-images img {
    width: 100%;
    height: min(54vw, 620px);
    object-fit: cover;
}

.oc-editorial-media img:first-child,
.oc-latest-images img + img {
    height: min(42vw, 470px);
    object-fit: cover;
    padding: 0;
    background: transparent;
}

.oc-latest {
    position: relative;
    min-height: 1000px;
    grid-template-columns: minmax(340px, 620px);
    background: var(--oc-black);
    color: var(--oc-white);
    justify-content: center;
    align-content: center;
    text-align: center;
    overflow: hidden;
}

.oc-latest h3 {
    max-width: 640px;
    margin: 26px auto 34px;
    font-size: clamp(28px, 2.55vw, 37px);
    line-height: 1.3;
}

.oc-latest-copy {
    position: relative;
    z-index: 2;
}

.oc-latest-images {
    position: absolute;
    inset: auto 0 0;
    z-index: 1;
    opacity: 0.36;
    pointer-events: none;
}

.oc-latest-images img,
.oc-latest-images img + img {
    height: 430px;
    filter: brightness(0.72);
}

.oc-social {
    grid-template-columns: minmax(280px, 0.8fr) minmax(0, 1fr);
    background: var(--oc-black);
    color: var(--oc-white);
}

.oc-social p {
    margin: 0;
    font-family: var(--oc-serif);
    font-size: clamp(34px, 5vw, 74px);
    line-height: 1.03;
}

.oc-social p a {
    color: var(--oc-accent);
    font-style: italic;
}

.oc-social img {
    width: 100%;
    height: min(58vw, 640px);
    object-fit: cover;
}

.oc-social-links {
    display: flex;
    gap: 24px;
    margin-top: 32px;
}

.oc-social-links a {
    border-bottom: 1px solid currentColor;
    font-size: 14px;
    text-transform: uppercase;
}

.oc-newsletter {
    padding: 0;
    background: var(--oc-paper);
    color: var(--oc-ink);
}

.oc-newsletter-signup {
    display: grid;
    min-height: 141px;
    width: min(1300px, calc(100% - 40px));
    margin: 0 auto;
    grid-template-columns: minmax(280px, 620px) minmax(320px, 620px);
    gap: 20px;
    align-items: center;
}

.oc-newsletter h2 {
    margin: 0;
    font-size: clamp(30px, 2.55vw, 36.8px);
    line-height: 1.3;
}

.oc-newsletter form {
    position: relative;
    display: block;
    width: 100%;
    border-bottom: 0;
}

.oc-newsletter input {
    width: 100%;
    height: 61px;
    border: 0;
    border-bottom: 1px solid var(--oc-accent);
    background: transparent;
    padding: 0 74px 0 0;
    color: var(--oc-ink);
    font-family: var(--oc-sans);
    font-size: 18px;
    line-height: normal;
}

.oc-newsletter button {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    border: 0;
    background: transparent;
    padding: 0;
    color: var(--oc-accent);
    font-family: var(--oc-sans);
    font-size: 11px;
    line-height: 1.8;
    cursor: pointer;
    text-transform: uppercase;
}

.oc-newsletter footer {
    margin: 0;
    background: var(--oc-black);
    color: var(--oc-white);
}

.oc-footer-main {
    position: relative;
    isolation: isolate;
    min-height: 745px;
    overflow: hidden;
    padding: 90px 0 0;
}

.oc-footer-main::before {
    position: absolute;
    inset: 0;
    z-index: -2;
    background:
        linear-gradient(45deg, rgba(157, 128, 102, 0.095) 25%, transparent 25%, transparent 75%, rgba(157, 128, 102, 0.095) 75%),
        linear-gradient(45deg, rgba(157, 128, 102, 0.095) 25%, transparent 25%, transparent 75%, rgba(157, 128, 102, 0.095) 75%);
    background-position: 0 0, 18px 18px;
    background-size: 36px 36px;
    content: "";
    opacity: 0.18;
    pointer-events: none;
}

.oc-footer-main::after {
    position: absolute;
    inset: 0;
    z-index: -1;
    background:
        radial-gradient(circle at 18% 20%, rgba(157, 128, 102, 0.12), transparent 28%),
        linear-gradient(180deg, rgba(3, 3, 3, 0.08) 0%, #030303 58%, #030303 100%);
    content: "";
    pointer-events: none;
}

.oc-newsletter h3 {
    width: min(1300px, calc(100% - 40px));
    margin: 0 auto 20px;
    color: var(--oc-white);
    font-size: clamp(54px, 5.1vw, 73.6px);
    font-weight: 300;
    line-height: 1;
    letter-spacing: -2.6px;
}

.oc-footer-intro,
.oc-footer-columns,
.oc-footer-bottom {
    width: min(1300px, calc(100% - 40px));
    margin-left: auto;
    margin-right: auto;
}

.oc-footer-intro {
    max-width: 520px;
    margin-bottom: 78px;
    color: rgba(255, 255, 255, 0.62);
    font-size: 15px;
    line-height: 1.8;
}

.oc-footer-columns {
    display: grid;
    grid-template-columns: 1fr 1fr 2fr 1fr;
    gap: 20px;
    align-items: start;
}

.oc-footer-columns nav,
.oc-footer-columns > div {
    display: flex;
    min-height: 216px;
    flex-direction: column;
    gap: 14px;
    padding: 10px;
}

.oc-footer-columns h4 {
    margin: 0 0 6px;
    color: var(--oc-white);
    font-family: var(--oc-sans);
    font-size: 13px;
    font-weight: 600;
    line-height: 1.3;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.oc-newsletter nav {
    display: flex;
}

.oc-footer-columns a,
.oc-footer-columns p,
.oc-footer-bottom,
.oc-footer-bottom a {
    color: rgba(255, 255, 255, 0.72);
    font-size: 16px;
    line-height: 1.8;
}

.oc-footer-columns a {
    width: max-content;
    max-width: 100%;
    transition: color 260ms ease;
}

.oc-footer-columns a:hover,
.oc-footer-bottom a:hover {
    color: var(--oc-white);
}

.oc-footer-columns p {
    margin: 0;
}

.oc-footer-bottom {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 28px;
    align-items: center;
    margin-top: 28px;
    padding-top: 34px;
    color: rgba(255, 255, 255, 0.54);
    border-top: 1px solid rgba(255,255,255,0.12);
}

.oc-footer-bottom nav {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
}

.oc-page {
    min-height: 100vh;
    background: var(--oc-paper);
    color: var(--oc-ink);
}

.oc-subhero {
    min-height: 58vh;
    display: grid;
    align-items: end;
    padding: 140px clamp(20px, 6vw, 80px) 70px;
    background:
        linear-gradient(90deg, rgba(0,0,0,0.88), rgba(0,0,0,0.72)),
        var(--oc-subhero-image, url("/wp-content/uploads/2023/11/BUT-PARKER-KHAC-TEN_butky_website-02.jpg")) center / cover no-repeat,
        var(--oc-black);
    color: var(--oc-white);
}

.oc-subhero h1 {
    max-width: 980px;
    margin: 0;
    font-size: clamp(56px, 9vw, 126px);
    line-height: 0.92;
}

body.single-product .oc-subhero h1 {
    max-width: 1080px;
    font-size: clamp(42px, 6.6vw, 88px);
    line-height: 0.96;
    overflow-wrap: anywhere;
}

.oc-subhero p {
    max-width: 620px;
    margin: 22px 0 0;
    color: rgba(255,255,255,0.76);
}

.oc-breadcrumbs {
    margin-bottom: 22px;
    color: rgba(255,255,255,0.7);
    font-size: 13px;
    text-transform: uppercase;
}

.oc-product-detail,
.oc-page-layout {
    display: grid;
    grid-template-columns: minmax(280px, 1fr) minmax(320px, 0.92fr);
    gap: clamp(34px, 6vw, 88px);
    align-items: start;
}

.oc-product-gallery {
    background: var(--oc-white);
}

.oc-product-gallery img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
}

.oc-product-summary h1,
.oc-page-content h1 {
    margin: 0 0 18px;
    font-size: clamp(46px, 6vw, 88px);
    line-height: 0.98;
    overflow-wrap: anywhere;
}

.oc-product-summary .price {
    margin: 0 0 24px;
    color: var(--oc-accent);
    font-size: 24px;
    font-weight: 800;
}

.oc-product-actions {
    margin: 28px 0;
}

.oc-product-actions form.cart {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: stretch;
}

.oc-product-actions .quantity input {
    width: 86px;
    height: 56px;
    border: 1px solid var(--oc-line);
    background: var(--oc-white);
    text-align: center;
}

.oc-product-meta,
.oc-description {
    margin-top: 30px;
    padding-top: 24px;
    border-top: 1px solid var(--oc-line);
}

.oc-description h2,
.oc-related h2,
.oc-page-content h2,
.oc-page-content h3,
.oc-contact-card h2 {
    margin: 0 0 24px;
    color: var(--oc-ink);
    font-family: var(--oc-serif);
    font-weight: 400;
}

.oc-contact-card {
    padding: 34px;
    background: var(--oc-black);
    color: var(--oc-white);
}

.oc-contact-card h2 {
    color: var(--oc-white);
    font-size: 42px;
}

.oc-contact-card p {
    color: rgba(255,255,255,0.72);
}

.oc-reveal {
    opacity: 0;
    transform: translateY(22px);
    transition: opacity 700ms cubic-bezier(.2,.8,.2,1), transform 700ms cubic-bezier(.2,.8,.2,1);
}

.oc-reveal.is-visible {
    opacity: 1;
    transform: translateY(0);
}

@keyframes oc-marquee {
    from { transform: translateX(0); }
    to { transform: translateX(-50%); }
}

.oc-collections-shell {
    padding-top: 100px;
    padding-right: 0;
    padding-bottom: 60px;
    padding-left: 0;
    overflow: hidden;
    background: var(--oc-white);
    margin-bottom: 0 !important;
}

.oc-collection-stage {
    position: relative;
    width: 100%;
    margin: 0 auto;
}

.oc-collections-heading {
    width: 100%;
    min-height: 151px;
    margin: 0 0 20px;
    text-align: center;
}

.oc-collections-heading .oc-kicker {
    margin: 0;
    color: #000;
    font-family: var(--oc-sans);
    font-size: 18px;
    font-weight: 400;
    line-height: 32.4px;
    letter-spacing: 0;
    text-transform: none;
}

.oc-collections-heading h2 {
    margin: 10px 0 0;
    color: #000;
    font-family: var(--oc-serif);
    font-size: clamp(54px, 6.6vw, 70px);
    font-weight: 400;
    line-height: 60px;
    letter-spacing: 0;
    text-align: center;
}

.oc-collection-viewport {
    width: min(1200px, calc(100vw - 15px));
    margin: 0 auto;
    overflow: hidden;
}

.oc-collection-track {
    display: flex;
    transition: transform 700ms cubic-bezier(0.165, 0.84, 0.44, 1);
    will-change: transform;
}

.oc-collection-card {
    width: 100%;
    min-width: 100%;
    min-height: 604px;
    overflow: visible;
    color: var(--oc-ink);
}

.oc-collection-card a {
    position: relative;
    display: grid;
    min-height: 604px;
    grid-template-columns: clamp(389px, 37vw, 453px) minmax(320px, 1fr) minmax(160px, 300px);
    gap: clamp(40px, 9vw, 100px);
    align-items: center;
}

.oc-collection-card img {
    position: relative;
    z-index: 2;
    width: clamp(389px, 37vw, 453px);
    height: clamp(519px, 49.4vw, 604px);
    object-fit: cover;
    background: transparent;
    transition: transform 900ms cubic-bezier(0.165, 0.84, 0.44, 1), filter 900ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

.oc-collection-card:hover img {
    transform: scale(1.03);
    filter: saturate(1.05) contrast(1.02);
}

.oc-collection-copy {
    position: relative;
    z-index: 3;
    display: flex;
    min-height: auto;
    width: auto;
    flex-direction: column;
    justify-content: center;
    padding: 0;
}

.oc-collection-copy .oc-kicker {
    margin: 0 0 18px;
    color: var(--oc-ink);
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.oc-collection-copy h3 {
    max-width: 560px;
    margin: 0 0 30px;
    color: var(--oc-ink);
    font-size: clamp(56px, 6.1vw, 88px);
    line-height: 0.95;
}

.oc-collection-copy p:not(.oc-kicker) {
    max-width: 520px;
    min-height: 0;
    margin: 0 0 28px;
    color: var(--oc-ink);
    font-size: 18px;
    line-height: 1.8;
}

.oc-collection-copy span {
    min-height: 62px;
    width: max-content;
    border-radius: 999px;
    padding: 15px 35px;
    background: var(--oc-accent);
}

.oc-collection-blank {
    align-self: stretch;
    min-height: 411px;
    background: rgba(255, 255, 255, 0.22);
}

.oc-collection-controls {
    position: absolute;
    bottom: 82px;
    left: 50%;
    z-index: 5;
    display: grid;
    grid-template-columns: 70px 1fr 70px;
    width: min(1200px, calc(100vw - 15px));
    gap: 22px;
    align-items: center;
    margin-top: 0;
    padding: 0;
    transform: translateX(-50%);
}

.oc-collection-arrow {
    display: inline-grid;
    width: 58px;
    height: 58px;
    place-items: center;
    border: 0;
    border-radius: 50%;
    background: rgba(255,255,255,0.25);
    color: var(--oc-ink);
    font-size: 30px;
    line-height: 1;
    cursor: pointer;
    transition: background 260ms ease, transform 260ms ease;
}

.oc-collection-arrow:hover {
    background: rgba(255,255,255,0.48);
    transform: translateY(-2px);
}

.oc-collection-tabs {
    display: flex;
    min-height: 58px;
    align-items: center;
    justify-content: center;
    gap: clamp(20px, 4vw, 44px);
    overflow-x: auto;
    scrollbar-width: none;
}

.oc-collection-tabs::-webkit-scrollbar {
    display: none;
}

.oc-collection-tabs button,
.oc-model-tabs button {
    border: 0;
    background: transparent;
    color: var(--oc-ink);
    padding: 10px 0;
    font-family: var(--oc-sans);
    font-size: 14px;
    font-weight: 600;
    line-height: 1.3;
    letter-spacing: 2px;
    text-transform: uppercase;
    cursor: pointer;
    opacity: 0.56;
    transition: opacity 260ms ease, color 260ms ease;
}

.oc-collection-tabs button.is-active,
.oc-collection-tabs button:hover,
.oc-model-tabs button.is-active,
.oc-model-tabs button:hover {
    opacity: 1;
}

.oc-model-tabs {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: clamp(18px, 4vw, 42px);
    margin: 0 auto 48px;
}

.oc-products .oc-section-heading {
    grid-template-columns: 1fr;
    justify-items: center;
    text-align: center;
}

.oc-products .oc-text-link {
    margin-top: 10px;
}

.oc-product-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 54px;
}

.oc-product-card {
    background: var(--oc-ivory);
    transition: opacity 260ms ease, transform 360ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

.oc-product-card.is-hidden {
    display: none;
}

.oc-product-image {
    aspect-ratio: 1 / 1;
    background: #f0e9e1;
}

.oc-product-image img {
    object-fit: contain;
    padding: 18px;
}

.oc-product-body {
    min-height: 241px;
}

.oc-product-body h3 {
    font-size: clamp(25px, 2.2vw, 34px);
}

.oc-product-body h3 a::first-letter {
    font-style: italic;
}

.oc-cart-link {
    width: 44px;
    min-height: 44px;
    margin: 0 auto;
    border-radius: 50%;
    padding: 0;
    overflow: hidden;
    color: transparent;
    background: transparent;
    border: 1px solid rgba(0,0,0,0.2);
}

.oc-cart-link::before {
    content: "⌂";
    color: var(--oc-ink);
    font-size: 18px;
    line-height: 1;
}

.oc-editorial {
    position: relative;
    overflow: hidden;
}

.oc-crafted-rings {
    position: absolute;
    z-index: 0;
    left: 50%;
    top: 50%;
    width: min(900px, 92vw);
    aspect-ratio: 1;
    transform: translate(-50%, -50%);
    opacity: 0.72;
    pointer-events: none;
}

.oc-crafted-rings svg {
    width: 100%;
    height: 100%;
    overflow: visible;
}

.oc-ring {
    fill: none;
    stroke: #c5baaf;
    stroke-width: 0.5;
    stroke-dasharray: 4;
    transform-box: fill-box;
    transform-origin: center;
    animation: oc-ring-dash 2s linear infinite;
}

.oc-ring-1 {
    animation: oc-ring-float-1 5s ease-in-out infinite alternate, oc-ring-dash 2s linear infinite;
}

.oc-ring-2 {
    animation: oc-ring-float-2 7s ease-in-out infinite alternate, oc-ring-dash 2s linear infinite;
}

.oc-ring-3 {
    animation: oc-ring-float-3 6s ease-in-out infinite alternate, oc-ring-dash 2s linear infinite;
}

.oc-editorial-copy,
.oc-editorial-media {
    position: relative;
    z-index: 1;
}

.oc-marquee {
    min-height: 110px;
    background: var(--oc-paper);
}

.oc-marquee div {
    animation-duration: 26.7s;
}

.oc-marquee span {
    color: rgba(141, 114, 91, 0.13);
    font-family: var(--oc-serif);
    font-size: clamp(48px, 6.3vw, 80px);
    font-style: normal;
    font-weight: 400;
    line-height: 100px;
    letter-spacing: 0;
    text-transform: lowercase;
}

.oc-marquee span:nth-child(odd) {
    color: rgba(141, 114, 91, 0.13);
    font-style: italic;
}

.oc-latest {
    min-height: 960px;
    background: #020202;
}

.oc-latest h2 {
    font-size: clamp(54px, 5vw, 78px);
}

.oc-latest-images {
    position: absolute;
    inset: auto 0 0;
    display: block;
    opacity: 1;
}

.oc-latest-images::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0,0,0,0) 40%, rgba(0,0,0,0.86) 100%);
    pointer-events: none;
}

.oc-latest-main {
    width: min(980px, 82vw);
    height: 560px !important;
    margin: 0 auto;
    object-fit: cover;
    object-position: center 62%;
    filter: brightness(0.78) contrast(1.08);
}

.oc-latest-float {
    position: absolute;
    right: clamp(22px, 8vw, 118px);
    bottom: 210px;
    width: min(320px, 26vw) !important;
    height: min(260px, 22vw) !important;
    object-fit: cover;
    object-position: center;
    filter: brightness(0.88) contrast(1.08);
    transform: translateY(var(--oc-float-y, 36px)) rotate(6deg);
    transition: transform 120ms linear;
}

@keyframes oc-ring-dash {
    from { stroke-dashoffset: 0; }
    to { stroke-dashoffset: 8; }
}

@keyframes oc-ring-float-1 {
    from { transform: translate(5px, 0); }
    to { transform: translate(5px, -20px); }
}

@keyframes oc-ring-float-2 {
    from { transform: translate(-7px, 0); }
    to { transform: translate(7px, 20px); }
}

@keyframes oc-ring-float-3 {
    from { transform: translate(-10px, 10px); }
    to { transform: translate(10px, -10px); }
}

@media (prefers-reduced-motion: reduce) {
    .oc-marquee div {
        animation: none;
    }

    .oc-reveal {
        opacity: 1;
        transform: none;
        transition: none;
    }
}

@media (max-width: 980px) {
    .oc-brand,
    .oc-intro,
    .oc-editorial,
    .oc-latest,
    .oc-social,
    .oc-newsletter-signup,
    .oc-footer-bottom,
    .oc-product-detail,
    .oc-page-layout {
        grid-template-columns: 1fr;
    }

    .oc-product-grid,
    .oc-archive-grid {
        grid-template-columns: 1fr;
    }

    .oc-collections {
        grid-auto-flow: column;
        grid-auto-columns: 100%;
        gap: 30px;
        width: calc(100% - 40px);
        overflow-x: auto;
        overflow-y: hidden;
        padding-right: 0;
        padding-left: 0;
        scroll-snap-type: x mandatory;
    }

    .oc-section-heading {
        grid-template-columns: 1fr;
        align-items: start;
    }

    .oc-collection-card {
        width: 100%;
        min-height: auto;
    }

    .oc-collection-card a {
        flex-direction: column;
        gap: 30px;
        padding-left: 0;
    }

    .oc-collection-card img {
        width: 100%;
        flex-basis: auto;
        height: auto;
        aspect-ratio: 3 / 4;
        object-fit: cover;
    }

    .oc-collection-card div {
        width: 100%;
        min-height: auto;
        max-width: none;
        padding: 0 20px;
    }

    .oc-collection-card h3 {
        font-size: 32px;
        line-height: 1.3;
    }

    .oc-collection-card p:not(.oc-kicker) {
        margin-bottom: 18px;
    }

    .oc-collection-card span {
        min-height: 47px;
        padding: 10px 25px;
        font-size: 14px;
        line-height: 1.8;
    }

    .oc-collection-tabs {
        justify-content: flex-start;
        margin-bottom: 34px;
        overflow-x: auto;
        scrollbar-width: none;
    }

    .oc-collection-tabs::-webkit-scrollbar {
        display: none;
    }

    .oc-marquee {
        min-height: 86px;
    }

    .oc-marquee span {
        padding: 0 24px;
        font-size: 16px;
    }

    .oc-brand {
        gap: 34px;
        padding-top: 76px;
        padding-bottom: 76px;
    }

    .oc-brand-image {
        height: min(110vw, 520px);
    }

    .oc-editorial {
        padding-top: 76px;
        padding-bottom: 76px;
    }

    .oc-latest {
        min-height: 760px;
    }

    .oc-latest-images {
        grid-template-columns: 1fr 1fr;
    }

    .oc-latest-images img,
    .oc-latest-images img + img {
        height: 320px;
    }

    .oc-newsletter-signup {
        min-height: 210px;
        align-content: center;
        gap: 18px;
        padding: 36px 0;
    }

    .oc-footer-main {
        min-height: auto;
        padding-top: 70px;
        padding-bottom: 42px;
    }

    .oc-footer-columns {
        grid-template-columns: 1fr 1fr;
    }

    .oc-footer-bottom nav {
        justify-content: flex-start;
    }
}

@media (max-width: 640px) {
    .oc-header {
        padding: 20px 18px;
    }

    .oc-header.is-scrolled {
        padding-top: 14px;
        padding-bottom: 14px;
    }

    .oc-logo {
        font-size: 24px;
    }

    .oc-actions {
        gap: 10px;
        font-size: 18px;
    }

    .oc-hotline-link {
        min-height: 36px;
        padding: 8px 10px;
    }

    .oc-hotline-link span {
        display: none;
    }

    .oc-hotline-link strong {
        font-size: 11px;
        letter-spacing: 0.2px;
    }

    .oc-menu-button {
        width: 38px;
        height: 24px;
    }

    .oc-menu-button[aria-expanded="true"] span:nth-child(1) {
        transform: translateY(11px) rotate(20deg);
    }

    .oc-menu-button[aria-expanded="true"] span:nth-child(3) {
        transform: translateY(-11px) rotate(-20deg);
    }

    .oc-hero {
        min-height: 760px;
        padding: 0 18px;
    }

    .oc-hero-product {
        top: 50%;
        width: min(760px, 138vw);
        transform: translate(-50%, -30%);
        background-position: 70% 55%;
        background-size: 142% auto;
    }

    .oc-hero h1 {
        font-size: clamp(44px, 13.2vw, 58px);
        line-height: 0.86;
    }

    .oc-hero h1 span {
        white-space: normal;
    }

    .oc-hero h1 em {
        font-size: 0.5em;
    }

    .oc-hero-heading {
        padding-top: 132px;
    }

    .oc-hero-copy {
        left: 22px;
        right: 22px;
        bottom: 130px;
        width: auto;
        text-align: center;
        font-size: 15px;
    }

    .oc-hero-cta {
        left: 50%;
        right: auto;
        bottom: 52px;
        min-width: 154px;
        transform: translateX(-50%);
    }

    .oc-section {
        padding-left: 18px;
        padding-right: 18px;
    }

    .oc-collections {
        padding-right: 0;
        padding-left: 0;
    }

    .oc-intro {
        margin-bottom: 30px;
        padding: 60px 20px 0;
    }

    .oc-intro .oc-kicker {
        font-size: 12px;
        line-height: 1.3;
    }

    .oc-intro h2 {
        font-size: 40px;
        line-height: 1.25;
    }

    .oc-editorial-media,
    .oc-latest-images {
        grid-template-columns: 1fr;
    }

    .oc-editorial-media img,
    .oc-editorial-media img:first-child,
    .oc-latest-images img,
    .oc-latest-images img + img,
    .oc-social img {
        height: 420px;
    }

    .oc-footer-columns {
        grid-template-columns: 1fr;
    }

    .oc-newsletter input {
        padding-right: 58px;
        font-size: 16px;
    }

    .oc-newsletter button {
        text-align: right;
    }

    .oc-footer-columns nav,
    .oc-footer-columns > div {
        min-height: auto;
        padding: 10px 0;
    }

    .oc-footer-bottom {
        margin-top: 18px;
    }
}

@media (max-width: 1180px) {
    .oc-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .oc-collection-card a {
        grid-template-columns: minmax(280px, 0.9fr) minmax(280px, 1fr);
        gap: 38px;
    }

    .oc-collection-blank {
        display: none;
    }
}

@media (max-width: 760px) {
    .oc-collections-shell {
        padding-top: 70px;
    }

    .oc-collection-stage {
        width: calc(100vw - 36px);
    }

    .oc-collection-card {
        min-height: auto;
    }

    .oc-collection-card a {
        display: flex;
        min-height: auto;
        flex-direction: column;
        gap: 28px;
    }

    .oc-collection-card img {
        width: 100%;
        height: auto;
        aspect-ratio: 3 / 4;
    }

    .oc-collection-copy {
        width: 100%;
        padding: 0;
        text-align: left;
    }

    .oc-collection-copy h3 {
        font-size: 46px;
    }

    .oc-collection-controls {
        grid-template-columns: 48px 1fr 48px;
        gap: 10px;
    }

    .oc-collection-arrow {
        width: 46px;
        height: 46px;
        font-size: 24px;
    }

    .oc-collection-tabs {
        justify-content: flex-start;
        gap: 22px;
    }

    .oc-model-tabs {
        justify-content: flex-start;
        overflow-x: auto;
        flex-wrap: nowrap;
        scrollbar-width: none;
    }

    .oc-model-tabs::-webkit-scrollbar {
        display: none;
    }

    .oc-product-grid {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .oc-product-body {
        min-height: auto;
    }

    .oc-crafted-rings {
        top: 34%;
        width: 130vw;
    }

    .oc-marquee {
        min-height: 92px;
    }

    .oc-marquee span {
        font-size: 48px;
        line-height: 92px;
    }

    .oc-latest {
        min-height: 760px;
    }

    .oc-latest-main {
        width: 112vw;
        height: 430px !important;
    }

    .oc-latest-float {
        right: 18px;
        bottom: 160px;
        width: 170px !important;
        height: 140px !important;
    }
}

.orologio-clone .oc-products {
    background: #fbf6f1;
}

.orologio-clone .oc-product-grid {
    align-items: stretch;
    gap: clamp(28px, 3vw, 44px);
}

.orologio-clone .oc-product-card {
    display: flex;
    min-width: 0;
    height: 100%;
    flex-direction: column;
    background: #fbf6f1;
    text-align: center;
    transition: transform 420ms cubic-bezier(0.165, 0.84, 0.44, 1), box-shadow 420ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

.orologio-clone .oc-product-card:hover {
    transform: translateY(-8px);
}

.orologio-clone .oc-product-image {
    position: relative;
    display: grid;
    min-height: 0;
    aspect-ratio: 1 / 1.08;
    place-items: center;
    overflow: hidden;
    background: #fff;
}

.orologio-clone .oc-product-image::after {
    content: "";
    position: absolute;
    inset: auto 18% 9% 18%;
    height: 18px;
    border-radius: 50%;
    background: radial-gradient(ellipse, rgba(0,0,0,0.16) 0%, rgba(0,0,0,0) 72%);
    filter: blur(4px);
    opacity: 0.72;
    pointer-events: none;
}

.orologio-clone .oc-product-image img {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    padding: clamp(16px, 2.8vw, 34px);
    filter: contrast(1.04) saturate(1.04);
    transition: transform 520ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

.orologio-clone .oc-product-card:hover .oc-product-image img {
    transform: scale(1.055);
}

.orologio-clone .oc-product-body {
    display: flex;
    min-height: 316px;
    flex: 1;
    flex-direction: column;
    align-items: center;
    padding: 28px clamp(18px, 2vw, 28px) 32px;
}

.orologio-clone .oc-product-eyebrow {
    min-height: 0;
    margin: 0 0 9px;
    color: var(--oc-accent);
    font-size: 11px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.orologio-clone .oc-product-body h3 {
    min-height: 72px;
    margin: 0 0 14px;
    color: var(--oc-ink);
    font-family: var(--oc-serif);
    font-size: clamp(25px, 2vw, 31px);
    font-weight: 400;
    line-height: 1.14;
}

.orologio-clone .oc-product-body h3 a {
    display: -webkit-box;
    overflow: hidden;
    color: inherit;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.orologio-clone .oc-product-body h3 a::first-letter {
    font-style: italic;
}

.orologio-clone .oc-product-benefit {
    display: -webkit-box;
    min-height: 48px;
    margin: 0 0 18px;
    overflow: hidden;
    color: rgba(18,16,13,0.68);
    font-size: 14px;
    line-height: 1.7;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.orologio-clone .oc-price {
    margin: auto 0 18px;
    color: var(--oc-accent);
    font-size: 17px;
    font-weight: 600;
    line-height: 1.3;
}

.orologio-clone .oc-product-card-actions {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: center;
    gap: 12px;
}

.orologio-clone .oc-cart-link {
    display: inline-flex;
    width: auto;
    min-width: 132px;
    min-height: 48px;
    margin: 0;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 999px;
    background: var(--oc-accent);
    color: var(--oc-white);
    padding: 11px 24px;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 0;
    overflow: visible;
    transition: background 260ms ease, transform 260ms ease;
}

.orologio-clone .oc-cart-link::before {
    content: none;
}

.orologio-clone .oc-cart-link:hover {
    background: var(--oc-accent-dark);
    color: var(--oc-white);
    transform: translateY(-2px);
}

.orologio-clone .oc-detail-link {
    display: inline-flex;
    min-height: 48px;
    margin: 0;
    align-items: center;
    color: rgba(18,16,13,0.72);
    font-size: 14px;
    font-weight: 700;
    border-bottom: 1px solid rgba(18,16,13,0.24);
}

.orologio-clone .oc-detail-link:hover {
    color: var(--oc-ink);
}

@media (max-width: 1180px) {
    .orologio-clone .oc-product-body {
        min-height: 286px;
    }
}

@media (max-width: 640px) {
    .orologio-clone .oc-product-grid {
        gap: 34px;
    }

    .orologio-clone .oc-product-image {
        aspect-ratio: 1 / 1;
    }

    .orologio-clone .oc-product-body {
        min-height: auto;
        padding: 24px 18px 28px;
    }

    .orologio-clone .oc-product-body h3 {
        min-height: 0;
        font-size: 28px;
    }

    .orologio-clone .oc-product-card-actions {
        flex-direction: column;
        gap: 8px;
    }

    .orologio-clone .oc-cart-link {
        width: 100%;
    }
}

html.oc-menu-open,
html.oc-menu-open body {
    overflow: hidden;
}

.oc-menu-popup {
    position: fixed;
    z-index: 9998;
    inset: 0;
    display: flex;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
    background: #000;
    color: var(--oc-white);
    transform: translateX(-100%);
    transition: transform 0.5s cubic-bezier(0.165, 0.84, 0.44, 1), visibility 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
    visibility: hidden;
}

.oc-menu-popup.is-open {
    transform: translateX(0);
    visibility: visible;
}

.oc-menu-popup-inner {
    position: relative;
    width: 100%;
    min-height: 100vh;
    overflow-y: auto;
    padding: 32px 0 0;
}

.oc-menu-close {
    position: absolute;
    z-index: 2;
    top: 64px;
    left: 30px;
    display: flex;
    width: 200px;
    height: 60px;
    align-items: center;
    border: 0;
    background: transparent;
    padding: 0;
    color: var(--oc-accent);
    cursor: pointer;
    transition: 0.25s ease-in-out;
}

.oc-menu-close span {
    position: absolute;
    left: 0;
    width: 58px;
    height: 1px;
    background: currentColor;
}

.oc-menu-close span:first-child {
    transform: rotate(18deg);
}

.oc-menu-close span:last-child {
    transform: rotate(-18deg);
}

.oc-menu-columns {
    display: grid;
    grid-template-columns: minmax(260px, 0.9fr) minmax(220px, 0.72fr) minmax(280px, 1fr);
    gap: 20px;
    width: min(1120px, calc(100vw - 60px));
    min-height: 620px;
    align-items: center;
    margin: 124px auto 0;
}

.oc-menu-primary,
.oc-menu-secondary {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.oc-menu-primary a {
    display: block;
    padding: 25.6px 0;
    color: var(--oc-white);
    font-family: var(--oc-serif) !important;
    font-size: 64px;
    font-weight: 400;
    line-height: 32px;
    transition: color 0.25s ease-in-out, transform 0.25s ease-in-out;
}

.oc-menu-primary a.is-active,
.oc-menu-primary a:hover {
    color: var(--oc-accent);
    transform: translateX(8px);
}

.oc-menu-secondary a {
    display: block;
    padding: 12.8px 0;
    color: var(--oc-paper);
    font-family: var(--oc-serif) !important;
    font-size: 32px;
    font-weight: 400;
    line-height: 22.4px;
    transition: color 0.25s ease-in-out, transform 0.25s ease-in-out;
}

.oc-menu-secondary a.is-active,
.oc-menu-secondary a:hover {
    color: var(--oc-accent);
    transform: translateX(6px);
}

.oc-menu-info {
    align-self: end;
    max-width: 360px;
    margin-bottom: 76px;
    color: rgba(255,255,255,0.7);
}

.oc-menu-info h2 {
    margin: 0 0 24px;
    color: var(--oc-paper);
    font-family: var(--oc-serif);
    font-size: 56px;
    font-weight: 400;
    line-height: 1;
}

.oc-menu-info p {
    margin: 0 0 14px;
    color: rgba(255,255,255,0.72);
    font-size: 16px;
    line-height: 1.8;
}

@media (max-width: 900px) {
    .oc-menu-popup-inner {
        padding-top: 24px;
    }

    .oc-menu-close {
        top: 28px;
        left: 24px;
        width: 72px;
    }

    .oc-menu-columns {
        grid-template-columns: 1fr;
        gap: 30px;
        width: calc(100vw - 48px);
        margin-top: 116px;
        padding-bottom: 64px;
    }

    .oc-menu-primary a {
        padding: 16px 0;
        font-size: clamp(46px, 15vw, 64px);
        line-height: 0.9;
    }

    .oc-menu-secondary a {
        padding: 10px 0;
        font-size: 30px;
        line-height: 1;
    }

    .oc-menu-info {
        align-self: start;
        margin-bottom: 0;
    }
}

.orologio-clone .oc-collection-controls {
    right: clamp(20px, 4vw, 52px);
    bottom: 82px;
    left: clamp(430px, 44vw, 620px);
    width: auto;
    grid-template-columns: 58px minmax(260px, 1fr) 58px;
    gap: 22px;
    padding: 0;
    transform: none;
}

.orologio-clone .oc-collection-tabs {
    width: auto;
    min-height: 58px;
    justify-content: center;
    gap: clamp(24px, 3.6vw, 44px);
    margin: 0;
    overflow: visible;
    background: transparent;
}

.orologio-clone .oc-collection-arrow {
    width: 58px;
    height: 58px;
    background: rgba(0, 0, 0, 0.06);
}

@media (max-width: 980px) {
    .orologio-clone .oc-collection-controls {
        right: 20px;
        left: min(420px, 42vw);
        grid-template-columns: 52px minmax(240px, 1fr) 52px;
        gap: 14px;
    }
}

@media (max-width: 760px) {
    .orologio-clone .oc-collection-controls {
        right: 0;
        bottom: 20px;
        left: 0;
        width: 100%;
        grid-template-columns: 46px minmax(0, 1fr) 46px;
        gap: 10px;
        padding: 0 12px;
    }

    .orologio-clone .oc-collection-tabs {
        justify-content: flex-start;
        gap: 22px;
        overflow-x: auto;
    }
}

.orologio-clone .oc-ticker-section {
    position: relative;
    z-index: 1;
    display: block;
    width: 100vw;
    height: 200px;
    min-height: 200px;
    margin: 0 0 -104px calc(50% - 50vw);
    padding: 0;
    overflow: visible;
    background: transparent;
    color: #fbf6f1;
    pointer-events: none;
}

.orologio-clone .oc-ticker-section .ticker-frame,
.orologio-clone .oc-ticker-section .ticker-scale {
    display: flex;
    width: max-content;
    height: 100px;
    overflow: visible;
    white-space: nowrap;
    animation: none;
}

.orologio-clone .oc-ticker-section .ticker-text {
    display: flex;
    width: max-content;
    height: 100px;
    color: #fbf6f1;
    font-family: var(--oc-serif);
    font-size: 80px;
    font-style: normal;
    font-weight: 400;
    line-height: 100px;
    letter-spacing: -3px;
    white-space: nowrap;
    animation: ticker-rtl 26.7s linear infinite;
}

.orologio-clone .oc-ticker-section .ticker-item {
    display: block;
    height: 100px;
    padding: 0 30px;
    color: #fbf6f1;
    font-family: var(--oc-serif);
    font-size: 80px;
    font-style: normal;
    font-weight: 400;
    line-height: 100px;
    letter-spacing: -3px;
    white-space: nowrap;
    animation: none;
}

.orologio-clone .oc-ticker-section .ticker-item span {
    padding: 0;
    color: inherit;
    font: inherit;
    letter-spacing: inherit;
    line-height: inherit;
    white-space: nowrap;
    text-transform: none;
}

.orologio-clone .oc-ticker-section .ticker-item:nth-child(3n),
.orologio-clone .oc-ticker-section .ticker-item:nth-child(3n) span {
    font-style: italic;
}

@media (max-width: 760px) {
    .orologio-clone .oc-ticker-section {
        height: 150px;
        min-height: 150px;
        margin-bottom: -82px;
    }

    .orologio-clone .oc-ticker-section .ticker-frame,
    .orologio-clone .oc-ticker-section .ticker-scale,
    .orologio-clone .oc-ticker-section .ticker-text,
    .orologio-clone .oc-ticker-section .ticker-item {
        height: 86px;
        font-size: 58px;
        line-height: 86px;
        letter-spacing: -2px;
    }
}

.oc-ticker-section {
    position: relative;
    z-index: 1;
    display: block;
    width: 100vw;
    height: 200px;
    min-height: 200px;
    margin: 0 0 -104px calc(50% - 50vw);
    padding: 0;
    overflow: visible;
    background: transparent;
    color: #fbf6f1;
    pointer-events: none;
}

.oc-ticker-section .ticker-frame {
    display: inline-flex;
    width: max-content;
    height: 100px;
    overflow: visible;
    white-space: nowrap;
    animation: none;
}

.oc-ticker-section .ticker-scale {
    display: flex;
    width: max-content;
    height: 100px;
    overflow: visible;
    white-space: nowrap;
    animation: none;
}

.oc-ticker-section .ticker-text {
    display: flex;
    width: max-content;
    height: 100px;
    color: #fbf6f1;
    font-family: var(--oc-serif);
    font-size: 80px;
    font-style: normal;
    font-weight: 400;
    line-height: 100px;
    letter-spacing: -3px;
    white-space: nowrap;
    animation: ticker-rtl 26.7s linear infinite;
    will-change: transform;
}

.oc-ticker-section .ticker-item {
    display: block;
    height: 100px;
    padding: 0 30px;
    color: #fbf6f1;
    font-family: var(--oc-serif);
    font-size: 80px;
    font-style: normal;
    font-weight: 400;
    line-height: 100px;
    letter-spacing: -3px;
    white-space: nowrap;
    animation: none;
}

.oc-ticker-section .ticker-item span {
    display: inline;
    color: inherit;
    font: inherit;
    letter-spacing: inherit;
    line-height: inherit;
    text-transform: none;
}

.oc-ticker-section .ticker-item:nth-child(3n),
.oc-ticker-section .ticker-item:nth-child(3n) span {
    font-style: italic;
}

@keyframes ticker-rtl {
    0% {
        transform: none;
        visibility: visible;
    }

    100% {
        transform: translateX(-100%);
    }
}

@keyframes ticker-ltr {
    0% {
        transform: translateX(-100%);
        visibility: visible;
    }

    100% {
        transform: none;
    }
}

@media (max-width: 760px) {
    .oc-ticker-section {
        height: 150px;
        min-height: 150px;
        margin-bottom: -82px;
    }

    .oc-ticker-section .ticker-frame,
    .oc-ticker-section .ticker-scale,
    .oc-ticker-section .ticker-text,
    .oc-ticker-section .ticker-item {
        height: 86px;
        font-size: 58px;
        line-height: 86px;
        letter-spacing: -2px;
    }

    .oc-ticker-section .ticker-item {
        padding: 0 24px;
    }
}

.orologio-clone .oc-collection-card .oc-collection-copy {
    width: auto;
    min-height: 0;
    max-width: none;
    padding: 0;
}

.orologio-clone .oc-collection-card .oc-collection-blank {
    display: block;
    width: auto;
    min-height: 411px;
    padding: 0;
}

.orologio-clone .oc-collection-card .oc-collection-copy .oc-kicker,
.orologio-clone .oc-collection-card .oc-collection-copy h3,
.orologio-clone .oc-collection-card .oc-collection-copy p {
    width: auto;
}

@media (max-width: 1180px) {
    .orologio-clone .oc-collection-card .oc-collection-blank {
        display: none;
    }
}

.oc-editorial {
    min-height: 760px;
    grid-template-columns: 1fr;
    place-items: center;
    padding-top: clamp(120px, 12vw, 190px);
    padding-bottom: clamp(120px, 12vw, 190px);
    background: var(--oc-white);
    text-align: center;
}

.oc-editorial-copy {
    max-width: min(1040px, 92vw);
    margin: 0 auto;
}

.oc-editorial-copy .oc-kicker {
    margin-bottom: 22px;
}

.oc-editorial-copy h2 {
    max-width: none;
    margin: 0 auto;
    color: #000;
    font-size: clamp(76px, 8.2vw, 132px);
    line-height: 0.92;
    letter-spacing: 0;
    text-transform: uppercase;
}

.oc-editorial-copy h2 em {
    display: inline-block;
    font-size: 0.72em;
    font-style: italic;
    text-transform: lowercase;
}

.oc-editorial-copy p:not(.oc-kicker) {
    max-width: 680px;
    margin: 32px auto 0;
    color: rgba(0,0,0,0.58);
}

.oc-editorial-media {
    display: none;
}

.oc-crafted-rings {
    opacity: 0.55;
}

.oc-marquee {
    position: relative;
    z-index: 1;
    margin-bottom: -58px;
    background: transparent;
    pointer-events: none;
}

.oc-brand {
    position: relative;
    z-index: 2;
    grid-template-columns: minmax(320px, 407px) minmax(360px, 430px);
    gap: clamp(80px, 10vw, 120px);
    padding-top: 130px;
    padding-bottom: 120px;
    background: var(--oc-white);
}

.oc-brand-image {
    order: 1;
    width: 407px;
    max-width: 100%;
    height: 610px;
    object-fit: cover;
}

.oc-brand-copy {
    order: 2;
}

.oc-brand-copy h2 {
    margin-bottom: 28px;
    font-size: clamp(48px, 4.4vw, 64px);
    line-height: 1;
}

.oc-brand-copy p {
    color: #1c1a18;
}

.oc-latest {
    min-height: 1080px;
    align-content: start;
    padding-top: 86px;
}

.oc-latest-copy {
    max-width: 780px;
    margin: 0 auto;
}

.oc-latest h2 {
    max-width: 760px;
    margin: 20px auto 0;
    font-size: clamp(62px, 5.8vw, 92px);
    line-height: 0.9;
}

.oc-latest h3 {
    max-width: 760px;
    font-family: var(--oc-serif);
    font-size: clamp(30px, 3vw, 43px);
    font-weight: 400;
    line-height: 1.18;
}

.oc-latest h3::first-line {
    font-style: italic;
}

.oc-latest .oc-button {
    position: absolute;
    z-index: 4;
    left: 50%;
    bottom: 110px;
    transform: translateX(-50%);
    border-radius: 999px;
}

.oc-latest .oc-button:hover {
    transform: translateX(-50%) translateY(-1px);
}

.oc-latest-main {
    width: min(1120px, 92vw);
    height: 650px !important;
    object-position: center 56%;
}

.oc-latest-float {
    right: clamp(20px, 7vw, 100px);
    bottom: 260px;
    width: min(340px, 27vw) !important;
    height: min(280px, 22vw) !important;
    box-shadow: 0 22px 70px rgba(0,0,0,0.42);
}

@media (max-width: 980px) {
    .oc-brand {
        grid-template-columns: 1fr;
        gap: 42px;
        padding-top: 100px;
        padding-bottom: 90px;
    }

    .oc-brand-image {
        order: 1;
        width: 100%;
        height: min(118vw, 620px);
    }

    .oc-brand-copy {
        order: 2;
    }

    .oc-latest {
        min-height: 840px;
    }
}

@media (max-width: 760px) {
    .oc-editorial {
        min-height: 620px;
        padding-top: 96px;
        padding-bottom: 96px;
    }

    .oc-editorial-copy h2 {
        font-size: clamp(54px, 15vw, 76px);
    }

    .oc-editorial-copy p:not(.oc-kicker) {
        font-size: 16px;
    }

    .oc-marquee {
        margin-bottom: -46px;
    }

    .oc-brand {
        padding-top: 86px;
    }

    .oc-latest {
        min-height: 760px;
        padding-top: 78px;
    }

    .oc-latest h2 {
        font-size: clamp(46px, 13vw, 64px);
    }

    .oc-latest h3 {
        font-size: 28px;
    }

    .oc-latest .oc-button {
        bottom: 72px;
    }

    .oc-latest-main {
        width: 120vw;
        height: 430px !important;
    }

    .oc-latest-float {
        right: 18px;
        bottom: 150px;
        width: 172px !important;
        height: 140px !important;
    }
}

/* Latest model: keep the CTA in the copy flow so it never covers the title. */
.orologio-clone .oc-latest {
    min-height: clamp(860px, 92vw, 1080px);
    display: grid;
    align-content: start;
    justify-items: center;
    padding-top: clamp(84px, 8vw, 118px);
    padding-bottom: clamp(500px, 48vw, 650px);
}

.orologio-clone .oc-latest-copy {
    display: flex;
    width: min(780px, 92vw);
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.orologio-clone .oc-latest h2 {
    margin: 20px auto 0;
}

.orologio-clone .oc-latest h3 {
    margin: clamp(22px, 2.4vw, 30px) auto 0;
}

.orologio-clone .oc-latest .oc-button {
    position: static;
    z-index: 4;
    margin-top: clamp(24px, 3vw, 38px);
    transform: none;
}

.orologio-clone .oc-latest .oc-button:hover {
    transform: translateY(-2px);
}

.orologio-clone .oc-latest-images {
    top: auto;
    bottom: 0;
}

.orologio-clone .oc-latest-main {
    height: clamp(430px, 52vw, 650px) !important;
}

@media (max-width: 760px) {
    .orologio-clone .oc-latest {
        min-height: 780px;
        padding-top: 72px;
        padding-bottom: 390px;
    }

    .orologio-clone .oc-latest h2 {
        font-size: clamp(44px, 12vw, 58px);
        line-height: 0.94;
    }

    .orologio-clone .oc-latest h3 {
        max-width: 340px;
        font-size: clamp(24px, 7vw, 30px);
        line-height: 1.2;
    }

    .orologio-clone .oc-latest .oc-button {
        margin-top: 22px;
    }

    .orologio-clone .oc-latest-main {
        width: 116vw;
        height: 390px !important;
    }

    .orologio-clone .oc-latest-float {
        right: 14px;
        bottom: 126px;
        width: min(172px, 44vw) !important;
        height: min(140px, 36vw) !important;
    }
}

/* Global typography system: one luxury serif for display, one clean sans for UI/body. */
:root {
    --oc-type-display: "Montserrat", Arial, sans-serif;
    --oc-type-body: "Montserrat", Arial, sans-serif;
    --oc-font-body: clamp(15px, 1.02vw, 17px);
    --oc-font-small: 13px;
    --oc-font-ui: 14px;
    --oc-font-lead: clamp(17px, 1.2vw, 19px);
    --oc-font-card-title: clamp(24px, 2vw, 31px);
    --oc-font-section: clamp(52px, 6vw, 86px);
}

body:not(.wp-admin),
body:not(.wp-admin) button,
body:not(.wp-admin) input,
body:not(.wp-admin) select,
body:not(.wp-admin) textarea,
.orologio-clone,
.orologio-clone p,
.orologio-clone li,
.orologio-clone a,
.orologio-clone span,
.woocommerce,
.woocommerce-page {
    font-family: var(--oc-type-body) !important;
    letter-spacing: 0 !important;
}

body:not(.wp-admin) {
    font-size: var(--oc-font-body);
    font-weight: 400 !important;
    line-height: 1.72;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body:not(.wp-admin) *,
body:not(.wp-admin) *::before,
body:not(.wp-admin) *::after {
    font-family: var(--oc-type-body) !important;
}

body:not(.wp-admin) h1,
body:not(.wp-admin) h2,
body:not(.wp-admin) h3,
body:not(.wp-admin) h4,
body:not(.wp-admin) h5,
body:not(.wp-admin) h6,
.orologio-clone .oc-logo,
.orologio-clone .oc-menu-primary a,
.orologio-clone .oc-menu-secondary a,
.orologio-clone .oc-page-content h1,
.orologio-clone .oc-hero h1,
.orologio-clone .oc-intro h2,
.orologio-clone .oc-collection-copy h3,
.orologio-clone .oc-product-body h3,
.orologio-clone .oc-editorial-copy h2,
.orologio-clone .oc-brand-copy h2,
.orologio-clone .oc-latest h2,
.orologio-clone .oc-latest h3,
.orologio-clone .oc-social p,
.orologio-clone .oc-product-title,
.orologio-clone .product_title,
.woocommerce div.product .product_title,
.woocommerce-loop-product__title,
.cross-sells > h2,
.related.products > h2,
.upsells.products > h2 {
    font-family: var(--oc-type-display) !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
    text-wrap: balance;
}

.orologio-clone .oc-kicker,
.orologio-clone .oc-product-eyebrow,
.orologio-clone .oc-collection-tabs span,
.orologio-clone .oc-model-tabs button,
.orologio-clone .oc-text-link,
.orologio-clone .oc-button,
.orologio-clone .oc-cart-link,
.orologio-clone .oc-detail-link,
.orologio-clone .oc-menu-contact,
.orologio-clone .oc-footer,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
    font-family: var(--oc-type-body) !important;
    letter-spacing: 0 !important;
}

.orologio-clone p,
.orologio-clone .oc-page-content,
.orologio-clone .oc-hero-bottom p,
.orologio-clone .oc-intro p,
.orologio-clone .oc-collection-copy p,
.orologio-clone .oc-editorial-copy p:not(.oc-kicker),
.orologio-clone .oc-brand-copy p,
.orologio-clone .oc-product-benefit,
.orologio-clone .oc-product-card p,
.woocommerce div.product .woocommerce-product-details__short-description,
.woocommerce-Tabs-panel,
.woocommerce ul.products li.product .price {
    font-size: var(--oc-font-body) !important;
    line-height: 1.72 !important;
}

.orologio-clone .oc-kicker,
.orologio-clone .oc-product-eyebrow,
.orologio-clone .oc-collection-tabs span,
.orologio-clone .oc-model-tabs button {
    font-size: var(--oc-font-small) !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    text-transform: uppercase;
}

.orologio-clone .oc-button,
.orologio-clone .oc-cart-link,
.orologio-clone .oc-detail-link,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
    font-size: var(--oc-font-ui) !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
}

.orologio-clone .oc-hero h1 {
    font-size: clamp(54px, 8.2vw, 112px) !important;
    line-height: 0.88 !important;
}

.orologio-clone .oc-hero h1 em {
    font-size: 0.62em !important;
    line-height: 0.82 !important;
}

.orologio-clone .oc-intro h2,
.orologio-clone .oc-section-title h2,
.orologio-clone .oc-editorial-copy h2,
.orologio-clone .oc-brand-copy h2,
.cross-sells > h2,
.related.products > h2,
.upsells.products > h2 {
    font-size: var(--oc-font-section) !important;
    line-height: 0.98 !important;
}

.orologio-clone .oc-latest h2 {
    font-size: clamp(52px, 5.9vw, 84px) !important;
    line-height: 0.92 !important;
}

.orologio-clone .oc-latest h3 {
    font-size: clamp(28px, 2.8vw, 40px) !important;
    line-height: 1.18 !important;
}

.orologio-clone .oc-collection-copy h3 {
    font-size: clamp(52px, 5.8vw, 78px) !important;
    line-height: 0.98 !important;
}

.orologio-clone .oc-product-body h3,
.woocommerce-loop-product__title {
    font-family: var(--oc-type-body) !important;
    font-size: clamp(20px, 1.55vw, 24px) !important;
    font-weight: 600 !important;
    line-height: 1.28 !important;
    text-transform: none !important;
}

.orologio-clone .oc-product-body h3 a,
.orologio-clone .oc-product-body h3 a::first-letter,
.woocommerce-loop-product__title,
.woocommerce-loop-product__title::first-letter {
    font-family: var(--oc-type-body) !important;
    font-style: normal !important;
    font-weight: 600 !important;
}

.orologio-clone .oc-marquee span {
    font-family: var(--oc-type-display) !important;
    font-size: clamp(48px, 6.1vw, 80px) !important;
    line-height: 1.08 !important;
    letter-spacing: 0 !important;
}

.orologio-clone .ticker-text,
.orologio-clone .ticker-item,
.orologio-clone .ticker-item span,
.orologio-clone .oc-marquee .ticker-text,
.orologio-clone .oc-marquee .ticker-item {
    letter-spacing: 0 !important;
}

@media (max-width: 760px) {
    :root {
        --oc-font-body: 15px;
        --oc-font-lead: 16px;
        --oc-font-card-title: 26px;
        --oc-font-section: clamp(42px, 12vw, 58px);
    }

    .orologio-clone .oc-hero h1 {
        font-size: clamp(46px, 13vw, 62px) !important;
    }

    .orologio-clone .oc-latest h2 {
        font-size: clamp(44px, 12vw, 58px) !important;
    }

    .orologio-clone .oc-latest h3 {
        font-size: clamp(24px, 7vw, 30px) !important;
    }
}

/* Crafted section: closer to the Orologio demo structure with Parker content. */
.orologio-clone .oc-editorial {
    position: relative;
    display: grid;
    min-height: clamp(820px, 68vw, 980px);
    grid-template-columns: minmax(0, 1fr);
    align-content: start;
    justify-items: center;
    overflow: hidden;
    margin: 0 calc(50% - 50vw);
    padding: clamp(94px, 9vw, 138px) clamp(22px, 5vw, 82px) clamp(76px, 8vw, 120px);
    background: #fff;
    color: #11100f;
    text-align: center;
    border: 0 !important;
    outline: 0;
    box-shadow: none;
}

.orologio-clone .oc-editorial::after {
    content: "";
    position: absolute;
    inset: auto 0 0;
    height: 34%;
    pointer-events: none;
    background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.82) 72%, #fff 100%);
    z-index: 1;
}

.orologio-clone .oc-crafted-rings {
    top: clamp(190px, 24vw, 285px);
    left: 50%;
    width: min(760px, 72vw);
    opacity: 0.56;
    transform: translate(-50%, -50%) rotate(-8deg);
}

.orologio-clone .oc-ring {
    stroke: rgba(197, 186, 175, 0.38);
    stroke-width: 0.55;
    stroke-dasharray: 6 10;
}

.orologio-clone .oc-editorial-copy {
    position: relative;
    z-index: 2;
    display: grid;
    width: min(1180px, 94vw);
    grid-template-columns: minmax(0, 1fr) minmax(280px, 430px);
    column-gap: clamp(34px, 7vw, 110px);
    row-gap: clamp(24px, 4vw, 52px);
    align-items: end;
    margin: 0 auto;
}

.orologio-clone .oc-editorial-copy .oc-kicker {
    grid-column: 1 / -1;
    margin: 0 0 14px;
    color: rgba(17, 16, 15, 0.74);
}

.orologio-clone .oc-editorial-copy h2 {
    grid-column: 1 / -1;
    max-width: min(1040px, 92vw);
    margin: 0 auto;
    color: #050505;
    font-size: clamp(54px, 7.9vw, 118px) !important;
    font-weight: 400 !important;
    line-height: 0.94 !important;
    letter-spacing: 0 !important;
    text-transform: uppercase;
    text-wrap: balance;
}

.orologio-clone .oc-editorial-copy h2 em {
    display: inline-block;
    font-family: inherit !important;
    font-size: 0.74em;
    font-style: italic !important;
    font-weight: 400 !important;
    line-height: 0.9;
    text-transform: lowercase;
}

.orologio-clone .oc-editorial-copy p:not(.oc-kicker) {
    grid-column: 1;
    width: min(520px, 100%);
    margin: clamp(24px, 4vw, 56px) 0 0;
    color: rgba(17, 16, 15, 0.66);
    font-size: clamp(15px, 1.05vw, 17px) !important;
    line-height: 1.75 !important;
    text-align: left;
}

.orologio-clone .oc-editorial-media {
    position: relative;
    z-index: 2;
    display: grid;
    width: min(760px, 88vw);
    grid-template-columns: minmax(190px, 0.82fr) minmax(240px, 1fr);
    gap: clamp(14px, 2vw, 26px);
    align-items: end;
    justify-self: end;
    margin-top: clamp(-420px, -24vw, -230px);
}

.orologio-clone .oc-editorial-media img {
    width: 100%;
    height: clamp(320px, 35vw, 520px);
    object-fit: cover;
    object-position: center;
    box-shadow: 0 24px 64px rgba(17, 16, 15, 0.09);
}

.orologio-clone .oc-editorial-media img:first-child {
    height: clamp(260px, 28vw, 430px);
    transform: translateY(48px);
}

@media (max-width: 980px) {
    .orologio-clone .oc-editorial {
        min-height: auto;
        padding-top: 84px;
        padding-bottom: 86px;
    }

    .orologio-clone .oc-editorial-copy {
        grid-template-columns: 1fr;
        row-gap: 34px;
    }

    .orologio-clone .oc-editorial-copy p:not(.oc-kicker) {
        margin: 18px auto 0;
        text-align: center;
    }

    .orologio-clone .oc-editorial-media {
        justify-self: center;
        margin-top: 8px;
    }
}

@media (max-width: 640px) {
    .orologio-clone .oc-editorial {
        padding: 72px 18px 74px;
    }

    .orologio-clone .oc-crafted-rings {
        top: 190px;
        width: 130vw;
    }

    .orologio-clone .oc-editorial-copy h2 {
        font-size: clamp(42px, 12vw, 60px) !important;
        line-height: 0.98 !important;
    }

    .orologio-clone .oc-editorial-media {
        width: 100%;
        grid-template-columns: 1fr;
    }

    .orologio-clone .oc-editorial-media img,
    .orologio-clone .oc-editorial-media img:first-child {
        height: 310px;
        transform: none;
    }
}

/* Orologio-style orbit lines: subtle dashed ellipses reused across key sections. */
.orologio-clone .oc-collections-shell,
.orologio-clone .oc-editorial,
.orologio-clone .oc-brand,
.orologio-clone .oc-latest,
.oc-footer-main {
    position: relative;
    overflow: hidden;
}

.orologio-clone .oc-collections-shell > :not(.oc-orbit),
.orologio-clone .oc-editorial > :not(.oc-orbit),
.orologio-clone .oc-brand > :not(.oc-orbit),
.orologio-clone .oc-latest > :not(.oc-orbit),
.oc-footer-main > :not(.oc-orbit) {
    position: relative;
    z-index: 2;
}

.oc-orbit {
    position: absolute;
    z-index: 0;
    width: min(860px, 78vw);
    aspect-ratio: 720 / 520;
    color: #c5baaf;
    opacity: 0.34;
    pointer-events: none;
    transform: translate3d(0, 0, 0);
}

.oc-orbit svg {
    width: 100%;
    height: 100%;
    overflow: visible;
    animation: oc-orbit-spin 44s linear infinite;
    transform-origin: 50% 50%;
}

.oc-orbit-ellipse {
    fill: none;
    stroke: currentColor;
    stroke-width: 0.58;
    stroke-dasharray: 4 9;
    stroke-linecap: round;
    transform-box: fill-box;
    transform-origin: center;
    animation: oc-orbit-dash 3.2s linear infinite;
}

.oc-orbit-ellipse-a {
    opacity: 0.72;
}

.oc-orbit-ellipse-b {
    opacity: 0.52;
    transform: rotate(14deg);
    animation-duration: 4.1s;
}

.oc-orbit-ellipse-c {
    opacity: 0.38;
    transform: rotate(-18deg);
    animation-duration: 5s;
}

.oc-orbit-collections {
    top: clamp(120px, 13vw, 185px);
    right: clamp(-260px, -14vw, -120px);
    width: min(780px, 72vw);
    opacity: 0.18;
}

.oc-orbit-editorial {
    top: clamp(180px, 23vw, 285px);
    left: 50%;
    width: min(820px, 76vw);
    opacity: 0.44;
    transform: translateX(-50%) rotate(-8deg);
}

.oc-orbit-brand {
    top: clamp(40px, 6vw, 90px);
    left: clamp(-250px, -13vw, -110px);
    width: min(780px, 70vw);
    opacity: 0.18;
    transform: rotate(10deg);
}

.oc-orbit-latest {
    right: clamp(-260px, -12vw, -120px);
    bottom: clamp(160px, 16vw, 260px);
    width: min(820px, 74vw);
    color: #9d8066;
    opacity: 0.2;
}

.oc-orbit-footer {
    top: clamp(42px, 7vw, 90px);
    right: clamp(-260px, -11vw, -120px);
    width: min(820px, 72vw);
    color: #9d8066;
    opacity: 0.18;
}

@keyframes oc-orbit-spin {
    to {
        transform: rotate(360deg);
    }
}

@keyframes oc-orbit-dash {
    from {
        stroke-dashoffset: 0;
    }

    to {
        stroke-dashoffset: 26;
    }
}

@media (prefers-reduced-motion: reduce) {
    .oc-orbit svg,
    .oc-orbit-ellipse {
        animation: none;
    }
}

@media (max-width: 760px) {
    .oc-orbit {
        width: 118vw;
        opacity: 0.22;
    }

    .oc-orbit-collections {
        top: 90px;
        right: -58vw;
    }

    .oc-orbit-editorial {
        top: 178px;
        width: 138vw;
    }

    .oc-orbit-brand {
        top: 36px;
        left: -70vw;
    }

    .oc-orbit-latest {
        right: -62vw;
        bottom: 300px;
    }

    .oc-orbit-footer {
        top: 54px;
        right: -72vw;
        opacity: 0.16;
    }
}

/* Homepage stabilization: keep late legacy rules from breaking responsive layouts. */
.orologio-clone {
    width: 100%;
    max-width: 100%;
    overflow-x: clip;
}

.orologio-clone > .oc-section {
    margin-bottom: 0 !important;
}

.orologio-clone .oc-ticker-section,
.orologio-clone .oc-ticker-section .ticker-frame,
.orologio-clone .oc-ticker-section .ticker-scale {
    background: #fff;
}

.orologio-clone .oc-ticker-section,
.orologio-clone .oc-ticker-section .ticker-text,
.orologio-clone .oc-ticker-section .ticker-item,
.orologio-clone .oc-ticker-section .ticker-item span {
    color: rgba(141, 114, 91, 0.15);
}

.orologio-clone button:focus-visible,
.orologio-clone a:focus-visible {
    outline: 2px solid #9d8068;
    outline-offset: 4px;
}

@media (min-width: 761px) {
    .orologio-clone .oc-collection-controls {
        bottom: -58px;
    }
}

@media (max-width: 760px) {
    .orologio-clone .oc-collections-shell {
        padding: 64px 18px 58px;
    }

    .orologio-clone .oc-collection-stage,
    .orologio-clone .oc-collection-viewport {
        width: 100%;
        margin: 0;
    }

    .orologio-clone .oc-collections-heading {
        min-height: 0;
        margin-bottom: 34px;
    }

    .orologio-clone .oc-collections-heading .oc-kicker {
        font-size: 13px;
        line-height: 1.35;
    }

    .orologio-clone .oc-collections-heading h2 {
        margin-top: 9px;
        font-size: clamp(38px, 10vw, 52px);
        line-height: 1.04;
    }

    .orologio-clone .oc-collection-card,
    .orologio-clone .oc-collection-card a {
        width: 100%;
        min-height: 0;
    }

    .orologio-clone .oc-collection-card a {
        gap: 0;
    }

    .orologio-clone .oc-collection-card img {
        width: 100%;
        height: clamp(330px, 72vw, 430px);
        aspect-ratio: auto;
        object-fit: cover;
        object-position: center;
    }

    .orologio-clone .oc-collection-card .oc-collection-copy {
        width: 100%;
        padding: 28px 4px 0;
    }

    .orologio-clone .oc-collection-copy .oc-kicker {
        margin-bottom: 10px;
    }

    .orologio-clone .oc-collection-copy h3 {
        margin-bottom: 18px;
        font-size: clamp(38px, 10vw, 52px) !important;
        line-height: 1.02 !important;
    }

    .orologio-clone .oc-collection-copy p:not(.oc-kicker) {
        margin-bottom: 22px;
        line-height: 1.65 !important;
    }

    .orologio-clone .oc-collection-copy span {
        min-height: 48px;
        padding: 11px 24px;
    }

    .orologio-clone .oc-collection-controls {
        position: static;
        width: 100%;
        grid-template-columns: 48px minmax(0, 1fr) 48px;
        gap: 10px;
        margin-top: 28px;
        padding: 0;
        transform: none;
    }

    .orologio-clone .oc-collection-tabs {
        min-width: 0;
        min-height: 48px;
        justify-content: flex-start;
        gap: 22px;
        margin: 0;
        overflow-x: auto;
        overscroll-behavior-inline: contain;
        scroll-snap-type: inline proximity;
    }

    .orologio-clone .oc-collection-tabs button {
        flex: 0 0 auto;
        scroll-snap-align: start;
        white-space: nowrap;
    }

    .orologio-clone .oc-collection-arrow {
        width: 48px;
        height: 48px;
    }

    .orologio-clone .oc-products {
        padding-top: 72px;
        padding-bottom: 82px;
    }

    .orologio-clone .oc-products .oc-section-heading {
        margin-bottom: 34px;
    }

    .orologio-clone .oc-products .oc-section-heading h2 {
        max-width: 100%;
        font-size: clamp(38px, 10vw, 54px) !important;
        line-height: 1.05 !important;
    }

    .orologio-clone .oc-model-tabs {
        gap: 22px;
        margin-bottom: 34px;
        padding-bottom: 4px;
        overscroll-behavior-inline: contain;
    }

    .orologio-clone .oc-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 28px 16px;
    }

    .orologio-clone .oc-product-image {
        aspect-ratio: 1 / 1.06;
    }

    .orologio-clone .oc-product-image img {
        padding: clamp(12px, 3vw, 20px);
    }

    .orologio-clone .oc-product-body {
        min-height: 304px;
        padding: 20px 14px 22px;
    }

    .orologio-clone .oc-product-body h3 {
        min-height: 48px;
        margin-bottom: 10px;
        font-size: clamp(17px, 3.5vw, 21px) !important;
        line-height: 1.3 !important;
    }

    .orologio-clone .oc-product-benefit {
        min-height: 42px;
        margin-bottom: 14px;
        font-size: 13px !important;
        line-height: 1.55 !important;
    }

    .orologio-clone .oc-price {
        margin-bottom: 14px;
        font-size: 15px;
    }

    .orologio-clone .oc-product-card-actions {
        flex-direction: column;
        gap: 10px;
    }

    .orologio-clone .oc-cart-link {
        width: 100%;
        min-width: 0;
        min-height: 46px;
        padding: 10px 14px;
    }

    .orologio-clone .oc-detail-link {
        min-height: 34px;
    }

    .orologio-clone .oc-editorial {
        width: 100%;
        margin-right: 0;
        margin-left: 0;
        padding: 76px 18px 80px;
    }

    .orologio-clone .oc-editorial-copy {
        width: 100%;
        row-gap: 26px;
    }

    .orologio-clone .oc-editorial-copy h2 {
        max-width: 100%;
        font-size: clamp(40px, 10.5vw, 56px) !important;
        line-height: 1.02 !important;
    }

    .orologio-clone .oc-editorial-copy p:not(.oc-kicker) {
        max-width: 540px;
        margin-top: 8px;
    }

    .orologio-clone .oc-editorial-media {
        gap: 14px;
        margin-top: 12px;
    }

    .orologio-clone .oc-editorial-media img,
    .orologio-clone .oc-editorial-media img:first-child {
        height: clamp(270px, 70vw, 360px);
    }

    .orologio-clone .oc-ticker-section {
        height: 116px;
        min-height: 116px;
        margin-bottom: -54px;
        overflow: hidden;
    }

    .orologio-clone .oc-ticker-section .ticker-frame,
    .orologio-clone .oc-ticker-section .ticker-scale,
    .orologio-clone .oc-ticker-section .ticker-text,
    .orologio-clone .oc-ticker-section .ticker-item {
        height: 74px;
        font-size: 46px !important;
        line-height: 74px !important;
    }

    .orologio-clone .oc-brand {
        gap: 36px;
        padding-top: 82px;
        padding-bottom: 78px;
    }

    .orologio-clone .oc-brand-image {
        height: clamp(390px, 92vw, 520px);
        object-position: center;
    }

    .orologio-clone .oc-brand-copy h2 {
        margin-bottom: 20px;
        font-size: clamp(38px, 10vw, 52px) !important;
        line-height: 1.04 !important;
    }

    .orologio-clone .oc-latest {
        min-height: 820px;
        padding-top: 74px;
        padding-bottom: 384px;
    }

    .orologio-clone .oc-latest-copy {
        width: 100%;
    }

    .orologio-clone .oc-latest h2 {
        max-width: 100%;
        font-size: clamp(40px, 10.5vw, 56px) !important;
        line-height: 0.98 !important;
    }

    .orologio-clone .oc-latest h3 {
        max-width: 520px;
        font-size: clamp(22px, 5vw, 28px) !important;
    }

    .orologio-clone .oc-social {
        gap: 34px;
        padding-top: 72px;
        padding-bottom: 72px;
    }
}

@media (max-width: 479px) {
    .orologio-clone .oc-product-grid {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    .orologio-clone .oc-product-body {
        min-height: 0;
        padding: 24px 18px 28px;
    }

    .orologio-clone .oc-product-body h3 {
        min-height: 0;
        font-size: 21px !important;
    }

    .orologio-clone .oc-product-card-actions {
        width: min(260px, 100%);
    }
}

/* Single product: Orologio product layout adapted to Parker WooCommerce data. */
body.single-product {
    background: #fff;
}

body.single-product .oc-single-page {
    overflow-x: clip;
    background: #fff;
}

body.single-product .oc-header {
    background: #050505;
    color: #fff;
}

body.single-product .oc-subhero,
body.single-product .oc-product-detail,
body.single-product .oc-description {
    display: none !important;
}

.oc-single-product {
    display: grid;
    width: min(1160px, calc(100% - 48px));
    grid-template-columns: minmax(0, 713px) minmax(0, 447px);
    align-items: start;
    margin: 0 auto;
    padding-top: 167px;
}

.oc-single-gallery {
    position: relative;
    min-width: 0;
    background: #fff;
}

.oc-single-gallery-stage {
    display: grid;
    width: 100%;
    aspect-ratio: 1;
    place-items: center;
    overflow: hidden;
    background: #fff;
}

.oc-single-main-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    transition: opacity 260ms ease, transform 700ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

.oc-single-gallery:hover .oc-single-main-image {
    transform: scale(1.025);
}

.oc-single-thumbnails {
    position: absolute;
    bottom: 22px;
    left: 22px;
    z-index: 3;
    display: flex;
    gap: 10px;
}

.oc-single-thumbnails button {
    display: grid;
    width: 62px;
    height: 62px;
    place-items: center;
    overflow: hidden;
    border: 1px solid rgba(17, 16, 15, 0.16);
    background: rgba(255, 255, 255, 0.92);
    padding: 4px;
    cursor: pointer;
    opacity: 0.62;
    transition: opacity 220ms ease, border-color 220ms ease;
}

.oc-single-thumbnails button.is-active,
.oc-single-thumbnails button:hover {
    border-color: #8d725b;
    opacity: 1;
}

.oc-single-thumbnails img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.oc-single-summary {
    position: relative;
    z-index: 2;
    min-width: 0;
    min-height: 985px;
    padding: 70px;
    background: #fbf6f1;
}

.oc-single-eyebrow {
    margin: 0 0 16px;
    color: #8d725b;
    font-size: 13px !important;
    font-weight: 700;
    line-height: 1.35 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase;
}

.oc-single-summary h1 {
    margin: 0;
    color: #11100f;
    font-family: var(--oc-type-display) !important;
    font-size: clamp(46px, 4.45vw, 64px) !important;
    font-weight: 400 !important;
    line-height: 1.04 !important;
    overflow-wrap: normal;
    text-wrap: balance;
}

.oc-single-short {
    display: -webkit-box;
    margin: 30px 0 28px;
    overflow: hidden;
    color: rgba(17, 16, 15, 0.72);
    font-size: 16px !important;
    line-height: 1.65 !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.oc-single-price {
    margin: 0 0 18px;
    color: #8d725b;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 2px;
}

.oc-single-price del {
    margin-right: 8px;
    color: rgba(17, 16, 15, 0.42);
    font-size: 0.84em;
}

.oc-single-price ins {
    background: transparent;
    text-decoration: none;
}

.oc-single-cart {
    margin-bottom: 62px;
}

.oc-single-cart form.cart {
    display: grid !important;
    min-height: 61px;
    grid-template-columns: minmax(100px, 1fr) 153px;
    gap: 0 !important;
    align-items: stretch;
    margin: 0 !important;
}

.oc-single-cart .quantity {
    display: grid !important;
    width: auto !important;
    min-width: 0;
    height: 61px !important;
    grid-template-columns: 42px minmax(0, 1fr) 42px;
    margin: 0 !important;
}

.oc-single-cart .quantity .minus,
.oc-single-cart .quantity .plus {
    position: static !important;
    display: inline-flex !important;
    width: 42px !important;
    height: 61px !important;
    min-height: 61px !important;
    align-items: center;
    justify-content: center;
    border: 0 !important;
    border-bottom: 1px solid #11100f !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #11100f !important;
    font-size: 18px;
    text-decoration: none;
}

.oc-single-cart .quantity .qty {
    width: 100% !important;
    height: 61px !important;
    min-height: 61px !important;
    margin: 0 !important;
    border: 0 !important;
    border-bottom: 1px solid #11100f !important;
    border-radius: 0 !important;
    background: transparent !important;
    padding: 16px 4px !important;
    color: #11100f;
    font-size: 17px;
    text-align: center;
    box-shadow: none !important;
}

.oc-single-cart .stock {
    margin: 0 0 18px;
    color: rgba(17, 16, 15, 0.62);
    font-size: 13px !important;
    line-height: 1.5 !important;
}

.oc-single-cart .single_add_to_cart_button {
    display: inline-flex !important;
    width: 153px !important;
    min-width: 153px;
    height: 61px !important;
    min-height: 61px !important;
    align-items: center;
    justify-content: center;
    margin: 0 !important;
    border: 1px solid #8d725b !important;
    border-radius: 999px !important;
    background: #8d725b !important;
    padding: 14px 24px !important;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    white-space: nowrap;
    transition: background 0.6s cubic-bezier(0.165, 0.84, 0.44, 1), transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.oc-single-cart .single_add_to_cart_button:hover {
    background: #11100f !important;
    transform: translateY(-2px);
}

.oc-single-tablist {
    display: grid;
    grid-template-columns: 1fr 1fr;
    margin: 0 0 -1px;
}

.oc-single-tablist button {
    min-width: 0;
    min-height: 60px;
    border: 1px solid rgba(17, 16, 15, 0.18);
    background: transparent;
    padding: 14px 10px;
    color: rgba(17, 16, 15, 0.58);
    font-size: 11px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 1px;
    text-transform: uppercase;
    cursor: pointer;
}

.oc-single-tablist button + button {
    border-left: 0;
}

.oc-single-tablist button.is-active {
    color: #11100f;
    background: rgba(255, 255, 255, 0.22);
}

.oc-single-tab-panel {
    min-height: 229px;
    border: 1px solid rgba(17, 16, 15, 0.18);
}

.oc-single-tab-panel[hidden] {
    display: none;
}

.oc-single-tab-panel dl,
.oc-single-tab-panel p {
    margin: 0;
}

.oc-single-tab-panel dl > div {
    display: grid;
    min-height: 56px;
    grid-template-columns: minmax(100px, 1fr) minmax(80px, 1fr);
    gap: 14px;
    align-items: center;
    padding: 10px 12px;
    border-bottom: 1px solid rgba(17, 16, 15, 0.14);
}

.oc-single-tab-panel dl > div:last-child {
    border-bottom: 0;
}

.oc-single-tab-panel dt {
    color: #11100f;
    font-size: 10px;
    font-weight: 700;
    line-height: 1.35;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.oc-single-tab-panel dd {
    margin: 0;
    color: rgba(17, 16, 15, 0.72);
    font-size: 12px;
    line-height: 1.45;
    text-align: right;
    overflow-wrap: anywhere;
}

.oc-single-tab-panel > p {
    padding: 28px 20px;
    color: rgba(17, 16, 15, 0.68);
    font-size: 14px !important;
    line-height: 1.7 !important;
}

.oc-single-category {
    margin: 28px 0 0;
    color: rgba(17, 16, 15, 0.56);
    font-size: 13px !important;
    line-height: 1.5 !important;
}

.oc-single-category span {
    color: #8d725b;
}

.oc-product-story {
    display: flex;
    width: min(1160px, calc(100% - 48px));
    min-height: 668px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin: 60px auto 0;
    padding: 70px 0 100px;
    background: #fff;
    text-align: center;
}

.oc-product-story h2 {
    max-width: 820px;
    margin: 18px auto 34px;
    color: #11100f;
    font-family: var(--oc-type-display) !important;
    font-size: clamp(54px, 6.4vw, 92px) !important;
    font-weight: 400 !important;
    line-height: 0.98 !important;
    text-transform: uppercase;
    text-wrap: balance;
}

.oc-product-story h2 em {
    font: inherit;
    font-size: 0.7em;
    font-style: italic;
    text-transform: lowercase;
    white-space: nowrap;
}

.oc-product-story > p:not(.oc-kicker) {
    max-width: 800px;
    margin: 0 auto;
    color: rgba(17, 16, 15, 0.66);
    font-size: 17px !important;
    line-height: 1.8 !important;
}

.oc-product-story-links {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px 34px;
    margin-top: 36px;
}

.oc-product-story-links a,
.oc-product-story-links span {
    color: #11100f;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.4;
    text-transform: uppercase;
    border-bottom: 1px solid rgba(17, 16, 15, 0.32);
}

.oc-product-specifications {
    width: min(1160px, calc(100% - 48px));
    margin: 0 auto 100px;
    padding: 76px 46px 70px;
    background: #fbf6f1;
}

.oc-product-specifications > header {
    max-width: 800px;
    margin: 0 auto 64px;
    text-align: center;
}

.oc-product-specifications h2 {
    margin: 15px 0 0;
    color: #11100f;
    font-size: clamp(44px, 4.7vw, 68px) !important;
    font-weight: 400 !important;
    line-height: 1.02 !important;
    text-wrap: balance;
}

.oc-spec-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
    border-top: 1px solid rgba(17, 16, 15, 0.18);
    border-left: 1px solid rgba(17, 16, 15, 0.18);
}

.oc-spec-grid article {
    min-width: 0;
    border-right: 1px solid rgba(17, 16, 15, 0.18);
    border-bottom: 1px solid rgba(17, 16, 15, 0.18);
}

.oc-spec-grid h3 {
    margin: 0;
    padding: 22px 18px;
    color: #11100f;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    letter-spacing: 1px !important;
    text-transform: uppercase;
    border-bottom: 1px solid rgba(17, 16, 15, 0.18);
}

.oc-spec-grid dl {
    margin: 0;
}

.oc-spec-grid dl > div {
    min-height: 76px;
    padding: 16px 18px;
    border-bottom: 1px solid rgba(17, 16, 15, 0.13);
}

.oc-spec-grid dl > div:last-child {
    border-bottom: 0;
}

.oc-spec-grid dt {
    margin-bottom: 6px;
    color: rgba(17, 16, 15, 0.54);
    font-size: 10px;
    font-weight: 700;
    line-height: 1.35;
    text-transform: uppercase;
}

.oc-spec-grid dd {
    margin: 0;
    color: #11100f;
    font-size: 14px;
    line-height: 1.5;
}

.oc-full-description {
    margin-top: 36px;
    border-top: 1px solid rgba(17, 16, 15, 0.18);
}

.oc-full-description summary {
    position: relative;
    padding: 24px 42px 24px 0;
    color: #11100f;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.4;
    text-transform: uppercase;
    cursor: pointer;
    list-style: none;
}

.oc-full-description summary::-webkit-details-marker {
    display: none;
}

.oc-full-description summary::after {
    content: "+";
    position: absolute;
    top: 50%;
    right: 4px;
    font-size: 24px;
    font-weight: 300;
    transform: translateY(-50%);
}

.oc-full-description[open] summary::after {
    content: "−";
}

.oc-full-description-content {
    max-width: 900px;
    padding: 12px 0 40px;
    color: rgba(17, 16, 15, 0.72);
}

.oc-full-description-content img {
    max-width: 100%;
    height: auto;
}

/* Product long description: editorial reading rhythm and clear heading scale. */
body.single-product .oc-full-description {
    margin-top: 42px;
    border-top: 1px solid rgba(17, 16, 15, 0.2);
    border-bottom: 1px solid rgba(17, 16, 15, 0.12);
}

body.single-product .oc-full-description summary {
    display: flex;
    min-height: 72px;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 22px 54px 22px 0;
    color: #11100f;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 1.5px;
    line-height: 1.35;
    text-transform: uppercase;
}

body.single-product .oc-full-description summary::after {
    right: 8px;
    width: 34px;
    height: 34px;
    border: 1px solid rgba(17, 16, 15, 0.22);
    color: #9d8066;
    display: grid;
    place-items: center;
    font-size: 22px;
    line-height: 1;
    transform: translateY(-50%);
}

body.single-product .oc-full-description-content {
    width: min(860px, 100%);
    max-width: 860px;
    margin: 0 auto;
    padding: 34px 0 58px;
    color: rgba(17, 16, 15, 0.72);
    font-size: 16px;
    line-height: 1.86;
}

body.single-product .oc-full-description-content > *:first-child {
    margin-top: 0 !important;
}

body.single-product .oc-full-description-content > *:last-child {
    margin-bottom: 0 !important;
}

body.single-product .oc-full-description-content h1,
body.single-product .oc-full-description-content h2,
body.single-product .oc-full-description-content h3,
body.single-product .oc-full-description-content h4 {
    max-width: 780px;
    margin: 42px auto 16px;
    color: #11100f;
    font-family: Georgia, "Times New Roman", serif !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    line-height: 1.14 !important;
    text-wrap: balance;
}

body.single-product .oc-full-description-content h1,
body.single-product .oc-full-description-content h2 {
    font-size: clamp(34px, 3.3vw, 50px) !important;
}

body.single-product .oc-full-description-content h3 {
    font-size: clamp(26px, 2.35vw, 36px) !important;
}

body.single-product .oc-full-description-content h4 {
    font-size: clamp(21px, 1.8vw, 28px) !important;
}

body.single-product .oc-full-description-content p {
    max-width: 760px;
    margin: 0 auto 18px;
    color: rgba(17, 16, 15, 0.72);
}

body.single-product .oc-full-description-content ul,
body.single-product .oc-full-description-content ol {
    max-width: 760px;
    margin: 18px auto 26px;
    padding-left: 24px;
    color: rgba(17, 16, 15, 0.72);
}

body.single-product .oc-full-description-content li {
    margin-bottom: 8px;
    line-height: 1.78;
}

body.single-product .oc-full-description-content strong,
body.single-product .oc-full-description-content b {
    color: #11100f;
    font-weight: 600;
}

body.single-product .oc-full-description-content a {
    border-bottom: 1px solid rgba(157, 128, 102, 0.48);
    color: #9d8066;
}

body.single-product .oc-full-description-content blockquote {
    max-width: 760px;
    margin: 34px auto;
    border-left: 1px solid #9d8066;
    padding: 4px 0 4px 24px;
    color: rgba(17, 16, 15, 0.7);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(22px, 2vw, 30px);
    line-height: 1.38;
}

body.single-product .oc-full-description-content table {
    width: min(860px, 100%);
    margin: 30px auto;
    border-collapse: collapse;
    color: rgba(17, 16, 15, 0.72);
    font-size: 14px;
}

body.single-product .oc-full-description-content th,
body.single-product .oc-full-description-content td {
    border: 1px solid rgba(17, 16, 15, 0.14);
    padding: 14px 16px;
    text-align: left;
    vertical-align: top;
}

body.single-product .oc-full-description-content th {
    color: #11100f;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase;
}

body.single-product .oc-full-description-content img {
    display: block;
    max-width: min(860px, 100%);
    height: auto;
    margin: 34px auto;
}

.oc-single-related {
    width: min(1160px, calc(100% - 48px));
    margin: 0 auto !important;
    padding: 0 0 110px !important;
    background: #fff !important;
}

.oc-single-related > .oc-kicker {
    margin: 0 0 10px;
}

.oc-single-related > h2 {
    margin: 0 0 48px;
    color: #11100f;
    font-size: clamp(42px, 4.6vw, 66px) !important;
    font-weight: 400 !important;
    line-height: 1.05 !important;
}

.oc-single-related > .related.products > h2 {
    display: none;
}

body.single-product .oc-single-related ul.products {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 54px;
    margin: 0 !important;
}

body.single-product .oc-single-related ul.products::before,
body.single-product .oc-single-related ul.products::after {
    display: none !important;
}

body.single-product .oc-single-related ul.products li.product {
    display: flex;
    width: auto !important;
    min-width: 0;
    height: 100%;
    flex-direction: column;
    margin: 0 !important;
    background: #fbf6f1;
    text-align: center;
}

body.single-product .oc-single-related ul.products li.product:nth-child(n+4) {
    display: none !important;
}

body.single-product .oc-single-related ul.products li.product img {
    width: 100%;
    aspect-ratio: 1;
    margin: 0 !important;
    background: #fff;
    object-fit: contain;
    padding: 18px;
    transition: transform 500ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

body.single-product .oc-single-related ul.products li.product:hover img {
    transform: scale(1.04);
}

body.single-product .oc-single-related .woocommerce-loop-product__title {
    display: -webkit-box;
    min-height: 58px;
    max-height: 78px;
    margin: 0 !important;
    overflow: hidden;
    padding: 24px 22px 8px !important;
    color: #11100f;
    font-size: 20px !important;
    line-height: 1.35 !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

body.single-product .oc-single-related ul.products li.product .price {
    margin: 0;
    padding: 0 22px 20px;
    color: #8d725b;
    font-size: 16px !important;
}

body.single-product .oc-single-related ul.products li.product .button {
    width: fit-content;
    min-height: 46px;
    margin: auto auto 28px !important;
    border-radius: 999px;
    background: #8d725b;
    padding: 12px 24px;
    color: #fff;
}

@media (max-width: 980px) {
    .oc-single-product {
        grid-template-columns: minmax(0, 1.2fr) minmax(360px, 0.8fr);
    }

    .oc-single-summary {
        padding: 54px 40px;
    }

    .oc-single-summary h1 {
        font-size: 44px !important;
    }
}

@media (max-width: 760px) {
    .oc-single-product {
        width: calc(100% - 36px);
        grid-template-columns: 1fr;
        padding-top: 132px;
    }

    .oc-single-summary {
        min-height: 0;
        padding: 54px 28px 58px;
    }

    .oc-single-summary h1 {
        font-size: clamp(38px, 10.5vw, 48px) !important;
        line-height: 1.08 !important;
    }

    .oc-single-short {
        margin-top: 26px;
    }

    .oc-single-cart {
        margin-bottom: 54px;
    }

    .oc-single-cart form.cart {
        grid-template-columns: minmax(0, 1fr) minmax(122px, 1fr);
    }

    .oc-single-cart .single_add_to_cart_button {
        width: 100% !important;
        min-width: 0;
        padding-right: 14px !important;
        padding-left: 14px !important;
    }

    .oc-single-tablist button {
        font-size: 10px;
    }

    .oc-product-story {
        width: 100%;
        min-height: 640px;
        margin-top: 0;
        padding: 82px 20px 88px;
    }

    .oc-product-story h2 {
        font-size: clamp(40px, 11vw, 54px) !important;
        line-height: 1.02 !important;
    }

    .oc-product-story > p:not(.oc-kicker) {
        font-size: 15px !important;
    }

    .oc-product-story-links {
        flex-direction: column;
        align-items: center;
    }

    .oc-product-specifications {
        width: calc(100% - 36px);
        margin-bottom: 82px;
        padding: 60px 22px 48px;
    }

    .oc-product-specifications > header {
        margin-bottom: 44px;
    }

    .oc-product-specifications h2 {
        font-size: clamp(38px, 10vw, 50px) !important;
    }

    .oc-spec-grid {
        grid-template-columns: 1fr;
    }

    .oc-spec-grid article + article {
        border-top: 0;
    }

    .oc-single-related {
        width: calc(100% - 36px);
        padding-bottom: 84px !important;
    }

    .oc-single-related > h2 {
        margin-bottom: 36px;
        font-size: clamp(38px, 10vw, 50px) !important;
    }

    body.single-product .oc-single-related ul.products {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    body.single-product .oc-single-related .woocommerce-loop-product__title {
        min-height: 0;
    }
}

/* Single product conversion polish: balance gallery/summary and remove dead vertical space. */
body.single-product .oc-single-product {
    grid-template-columns: minmax(0, 52%) minmax(390px, 48%);
    gap: 0;
    align-items: start;
    padding-top: 140px;
}

body.single-product .oc-single-gallery {
    position: sticky;
    top: 92px;
    display: grid;
    grid-template-columns: minmax(180px, 0.38fr) minmax(0, 0.62fr);
    gap: 16px;
    align-items: stretch;
}

body.single-product .oc-single-gallery-stage {
    order: 2;
    grid-column: 2;
    aspect-ratio: 4 / 5;
    min-height: 0;
    background:
        radial-gradient(circle at 50% 48%, rgba(157, 128, 102, 0.08), transparent 38%),
        #fff;
}

body.single-product .oc-single-gallery > .pp-gallery-video {
    order: 1;
    grid-column: 1;
    display: block;
    align-self: start;
    margin: 0;
    border: 0;
    background: #050505;
    padding: 0;
}

body.single-product .oc-single-gallery > .pp-gallery-video .pp-gallery-video-frame {
    max-width: none;
    height: auto;
    min-height: 0;
    aspect-ratio: 9 / 16;
}

body.single-product .oc-single-gallery > .pp-gallery-video .pp-gallery-video-caption {
    position: absolute;
    right: 14px;
    bottom: 14px;
    left: 14px;
    z-index: 2;
    pointer-events: none;
}

body.single-product .oc-single-gallery > .pp-gallery-video .pp-gallery-video-caption strong {
    color: #fff;
    text-shadow: 0 1px 8px rgba(0, 0, 0, 0.52);
}

body.single-product .oc-single-gallery > .pp-gallery-video .pp-eyebrow {
    color: rgba(255, 255, 255, 0.72) !important;
}

body.single-product .oc-single-thumbnails {
    position: static;
    order: 3;
    grid-column: 1 / -1;
    display: flex;
    gap: 10px;
    margin-top: 12px;
    overflow-x: auto;
    padding-bottom: 2px;
}

body.single-product .oc-single-thumbnails button {
    flex: 0 0 68px;
    width: 68px;
    height: 68px;
}

body.single-product .oc-single-assurance {
    order: 4;
    grid-column: 1 / -1;
}

body.single-product .oc-single-main-image {
    cursor: zoom-in;
}

.oc-product-zoom-open {
    overflow: hidden;
}

.oc-product-zoom {
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: grid;
    place-items: center;
    background: rgba(5, 5, 5, 0.88);
    padding: clamp(18px, 4vw, 52px);
    opacity: 0;
    pointer-events: none;
    transition: opacity 220ms ease;
}

.oc-product-zoom.is-open {
    opacity: 1;
    pointer-events: auto;
}

.oc-product-zoom__stage {
    display: grid;
    width: min(1120px, 100%);
    height: min(82vh, 860px);
    place-items: center;
    overflow: hidden;
    background:
        radial-gradient(circle at 50% 45%, rgba(157, 128, 102, 0.12), transparent 42%),
        #101010;
}

.oc-product-zoom__stage img {
    display: block;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    transform: scale(0.96);
    transition: transform 320ms cubic-bezier(0.2, 0.72, 0.16, 1);
}

.oc-product-zoom.is-open .oc-product-zoom__stage img {
    transform: scale(1);
}

.oc-product-zoom__close {
    position: fixed;
    top: 22px;
    right: 22px;
    z-index: 2;
    display: inline-grid;
    width: 44px;
    height: 44px;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, 0.26);
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
    font-size: 28px;
    line-height: 1;
    cursor: pointer;
    transition: background 180ms ease, transform 180ms ease;
}

.oc-product-zoom__close:hover {
    background: rgba(255, 255, 255, 0.18);
    transform: scale(1.04);
}

body.single-product .oc-single-assurance {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1px;
    margin-top: 18px;
    background: rgba(17, 16, 15, 0.12);
}

body.single-product .oc-single-assurance article {
    min-width: 0;
    background: #fbf6f1;
    padding: 16px 14px 14px;
}

body.single-product .oc-single-assurance span {
    display: block;
    margin-bottom: 12px;
    color: #8d725b;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.4px;
}

body.single-product .oc-single-assurance strong {
    display: block;
    margin-bottom: 8px;
    color: #11100f;
    font-size: 13px;
    line-height: 1.35;
}

body.single-product .oc-single-assurance p {
    margin: 0;
    color: rgba(17, 16, 15, 0.62);
    font-size: 11px !important;
    line-height: 1.55 !important;
}

body.single-product .oc-single-summary {
    min-height: 0;
    padding: clamp(30px, 3.6vw, 48px);
    background: #fbf6f1;
}

body.single-product .oc-single-summary h1 {
    font-size: clamp(34px, 3.45vw, 52px) !important;
    line-height: 1.08 !important;
}

body.single-product .oc-single-short {
    margin: 20px 0 18px;
    font-size: 14px !important;
    line-height: 1.58 !important;
    -webkit-line-clamp: 2;
}

body.single-product .oc-single-price {
    margin-bottom: 14px;
}

body.single-product .oc-single-cart {
    margin-bottom: 18px;
}

body.single-product #pp-add-to-cart {
    display: none !important;
}

body.single-product .oc-single-cart .pp-personalizer {
    margin: 18px 0 18px;
    border: 1px solid rgba(17, 16, 15, 0.12);
    background: rgba(255, 255, 255, 0.42);
    padding: 18px;
}

body.single-product .oc-single-cart .pp-personalizer-heading {
    margin-bottom: 14px;
}

body.single-product .oc-single-cart .pp-personalizer h3 {
    font-size: 16px !important;
}

body.single-product .oc-single-cart .pp-note {
    margin-top: 12px !important;
}

body.single-product .oc-single-cart form.cart {
    grid-template-columns: minmax(132px, 1fr) minmax(172px, auto);
}

body.single-product .oc-single-cart .single_add_to_cart_button {
    width: 172px !important;
    min-width: 172px;
    font-size: 12px !important;
    letter-spacing: 0.3px;
}

body.single-product .oc-single-tabs {
    margin-top: 22px;
}

body.single-product .oc-single-tab-panel {
    min-height: 0;
}

body.single-product .oc-single-tab-panel dl > div {
    min-height: 48px;
}

body.single-product .oc-single-category {
    margin-top: 20px;
}

body.single-product .oc-single-meta-panel {
    display: grid;
    grid-column: 1 / -1;
    grid-template-columns: minmax(0, 1fr) minmax(260px, 0.34fr);
    gap: 24px;
    align-items: start;
    margin-top: 24px;
}

body.single-product .oc-single-meta-panel .oc-single-tabs {
    margin-top: 0;
}

body.single-product .oc-single-meta-panel .oc-single-tab-panel dl {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

body.single-product .oc-single-meta-panel .oc-single-tab-panel dl > div {
    min-height: 62px;
    border-right: 1px solid rgba(17, 16, 15, 0.14);
    border-bottom: 0;
}

body.single-product .oc-product-story {
    min-height: 520px;
    margin-top: 60px;
    padding-top: 92px;
    padding-bottom: 92px;
}

body.single-product .oc-product-story h2 {
    font-size: clamp(54px, 6.6vw, 96px) !important;
}

body.single-product .oc-product-specifications {
    margin-top: 0;
    margin-bottom: 88px;
    padding-top: 86px;
    padding-bottom: 72px;
}

body.single-product .oc-single-related {
    padding-top: 72px !important;
}

body.single-product .oc-single-meta-panel .oc-single-tab-panel dl > div:last-child {
    border-right: 0;
}

body.single-product .oc-single-meta-panel .oc-single-category {
    margin: 0;
    border: 1px solid rgba(17, 16, 15, 0.14);
    background: #fbf6f1;
    padding: 22px;
}

@media (max-width: 980px) {
    body.single-product .oc-single-product {
        grid-template-columns: minmax(0, 48%) minmax(340px, 52%);
        padding-top: 126px;
    }

    body.single-product .oc-single-summary {
        padding: 34px 30px;
    }

    body.single-product .oc-single-summary h1 {
        font-size: 34px !important;
    }
}

@media (max-width: 760px) {
    body.single-product .oc-single-product {
        grid-template-columns: 1fr;
        padding-top: 118px;
    }

    body.single-product .oc-single-gallery {
        position: relative;
        top: auto;
        display: grid;
        grid-template-columns: 1fr;
        gap: 14px;
    }

    body.single-product .oc-single-gallery-stage {
        grid-column: 1;
        aspect-ratio: 1 / 1.05;
    }

    body.single-product .oc-single-gallery > .pp-gallery-video {
        grid-column: 1;
        width: min(220px, 74vw);
        justify-self: center;
    }

    body.single-product .oc-single-gallery > .pp-gallery-video .pp-gallery-video-frame {
        min-height: 0;
    }

    body.single-product .oc-single-thumbnails {
        grid-column: 1;
        margin-top: 0;
    }

    body.single-product .oc-single-assurance {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        margin-top: 14px;
    }

    body.single-product .oc-single-assurance article {
        padding: 13px 10px;
    }

    body.single-product .oc-single-assurance span {
        margin-bottom: 7px;
    }

    body.single-product .oc-single-assurance strong {
        margin-bottom: 0;
        font-size: 11px;
    }

    body.single-product .oc-single-assurance p {
        display: none;
    }

    body.single-product .oc-single-summary {
        padding: 32px 22px 38px;
    }

    body.single-product .oc-single-cart .pp-personalizer {
        padding: 16px;
    }

    body.single-product .oc-single-cart form.cart {
        grid-template-columns: 1fr;
        gap: 12px !important;
    }

    body.single-product .oc-single-cart .single_add_to_cart_button {
        width: 100% !important;
        min-width: 0;
    }

    body.single-product .oc-single-meta-panel {
        grid-template-columns: 1fr;
        margin-top: 18px;
    }

    body.single-product .oc-single-meta-panel .oc-single-tab-panel dl {
        grid-template-columns: 1fr;
    }

    body.single-product .oc-single-meta-panel .oc-single-tab-panel dl > div {
        min-height: 52px;
        border-right: 0;
        border-bottom: 1px solid rgba(17, 16, 15, 0.14);
    }

    body.single-product .oc-product-story {
        min-height: 500px;
        padding-top: 72px;
        padding-bottom: 76px;
    }

    body.single-product .oc-product-story h2 {
        font-size: clamp(34px, 9.4vw, 46px) !important;
    }

    body.single-product .oc-product-specifications {
        margin-bottom: 60px;
        padding-top: 50px;
        padding-bottom: 44px;
    }

    body.single-product .oc-single-related {
        padding-top: 54px !important;
    }
}

/* Product hero v2: media first, product image center, purchase panel right. */
body.single-product .oc-single-product {
    width: min(1320px, calc(100% - 72px));
    grid-template-columns: minmax(260px, 310px) minmax(320px, 390px) minmax(390px, 1fr);
    grid-template-rows: auto auto auto auto;
    column-gap: clamp(28px, 4vw, 58px);
    row-gap: 24px;
    padding-top: 118px;
}

body.single-product .oc-single-gallery {
    display: contents;
}

body.single-product .oc-single-gallery > .pp-gallery-video {
    grid-column: 1;
    grid-row: 1;
    width: 100%;
    align-self: start;
    border-radius: 8px;
    box-shadow: 0 16px 46px rgba(17, 16, 15, 0.08);
}

body.single-product .oc-single-gallery > .pp-gallery-video .pp-gallery-video-frame {
    width: 100%;
    max-width: none;
    aspect-ratio: 9 / 16;
}

body.single-product .oc-single-gallery-stage {
    grid-column: 2;
    grid-row: 1 / span 2;
    align-self: stretch;
    aspect-ratio: auto;
    min-height: 580px;
    border-radius: 8px;
}

body.single-product .oc-single-main-image {
    padding: 18px;
}

body.single-product .oc-single-thumbnails {
    grid-column: 1;
    grid-row: 2;
    margin-top: 0;
    padding: 0;
}

body.single-product .oc-single-thumbnails button {
    width: 74px;
    height: 74px;
    flex-basis: 74px;
    border-radius: 6px;
}

body.single-product .oc-single-summary {
    grid-column: 3;
    grid-row: 1 / span 2;
    align-self: start;
    border-radius: 8px;
    background: linear-gradient(135deg, #fffaf5 0%, #fbf1e8 100%);
    padding: clamp(30px, 3.2vw, 46px);
}

body.single-product .oc-single-summary h1 {
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: clamp(42px, 3.8vw, 58px) !important;
    font-weight: 400 !important;
    line-height: 1.04 !important;
}

body.single-product .oc-single-price {
    color: #9d7344;
    font-size: 24px;
    letter-spacing: 0;
}

body.single-product .pp-quick-order {
    border-color: rgba(157, 115, 68, 0.34);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.46);
    padding: 22px;
}

body.single-product .pp-quick-order-button {
    background: linear-gradient(90deg, #9b7041, #bd9658);
    border-color: transparent;
}

body.single-product .oc-single-assurance {
    grid-column: 1 / -1;
    grid-row: 3;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
    margin-top: 0;
    overflow: hidden;
    border-radius: 8px;
    background: linear-gradient(135deg, #fffaf5 0%, #fbf1e8 100%);
}

body.single-product .oc-single-assurance article {
    display: grid;
    min-height: 112px;
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 14px;
    align-items: center;
    border-right: 1px solid rgba(157, 115, 68, 0.14);
    background: transparent;
    padding: 22px 26px;
}

body.single-product .oc-single-assurance article:last-child {
    border-right: 0;
}

body.single-product .oc-single-assurance span {
    display: grid;
    width: 44px;
    height: 44px;
    place-items: center;
    margin: 0;
    border-radius: 50%;
    background: rgba(157, 115, 68, 0.12);
    color: #9d7344;
}

body.single-product .oc-single-assurance strong,
body.single-product .oc-single-assurance p {
    grid-column: 2;
}

body.single-product .oc-single-assurance strong {
    margin: 0 0 5px;
}

body.single-product .oc-single-meta-panel {
    grid-row: 4;
}

@media (max-width: 1100px) {
    body.single-product .oc-single-product {
        grid-template-columns: minmax(230px, 0.85fr) minmax(280px, 1fr);
    }

    body.single-product .oc-single-gallery > .pp-gallery-video {
        grid-column: 1;
        grid-row: 1;
    }

    body.single-product .oc-single-gallery-stage {
        grid-column: 2;
        grid-row: 1 / span 2;
        min-height: 520px;
    }

    body.single-product .oc-single-thumbnails {
        grid-column: 1;
        grid-row: 2;
    }

    body.single-product .oc-single-summary {
        grid-column: 1 / -1;
        grid-row: 3;
    }

    body.single-product .oc-single-assurance {
        grid-row: 4;
    }

    body.single-product .oc-single-meta-panel {
        grid-row: 5;
    }
}

@media (max-width: 760px) {
    body.single-product .oc-single-product {
        width: calc(100% - 36px);
        grid-template-columns: 1fr;
        row-gap: 16px;
        padding-top: 112px;
    }

    body.single-product .oc-single-gallery > .pp-gallery-video,
    body.single-product .oc-single-gallery-stage,
    body.single-product .oc-single-thumbnails,
    body.single-product .oc-single-summary,
    body.single-product .oc-single-assurance,
    body.single-product .oc-single-meta-panel {
        grid-column: 1;
        grid-row: auto;
    }

    body.single-product .oc-single-gallery > .pp-gallery-video {
        grid-row: 1;
        width: min(265px, 76vw);
        justify-self: center;
    }

    body.single-product .oc-single-gallery-stage {
        grid-row: 2;
        min-height: 390px;
        aspect-ratio: 1 / 1.08;
    }

    body.single-product .oc-single-thumbnails {
        grid-row: 3;
    }

    body.single-product .oc-single-summary {
        grid-row: 4;
        padding: 28px 22px;
    }

    body.single-product .oc-single-summary h1 {
        font-size: clamp(38px, 11vw, 50px) !important;
    }

    body.single-product .oc-single-assurance {
        grid-row: 5;
        grid-template-columns: 1fr;
    }

    body.single-product .oc-single-assurance article {
        min-height: 78px;
        border-right: 0;
        border-bottom: 1px solid rgba(157, 115, 68, 0.14);
        padding: 16px;
    }

    body.single-product .oc-single-assurance article:last-child {
        border-bottom: 0;
    }

    body.single-product .oc-single-assurance p {
        display: block;
    }
}

/* Product hero v3: two columns, autoplay video first, product media and purchase panel second. */
body.single-product .oc-single-product {
    width: min(1320px, calc(100% - 72px));
    grid-template-columns: minmax(300px, 34%) minmax(0, 1fr);
    grid-template-rows: auto auto auto;
    column-gap: clamp(34px, 5vw, 72px);
    row-gap: 24px;
    align-items: start;
    padding-top: 118px;
}

body.single-product .oc-single-gallery {
    display: contents;
}

body.single-product .oc-single-gallery > .pp-gallery-video {
    grid-column: 1;
    grid-row: 1;
    width: min(390px, 100%);
    justify-self: start;
    margin: 0;
    border: 0;
    border-radius: 8px;
    background: transparent;
    padding: 0;
    box-shadow: 0 18px 46px rgba(17, 16, 15, 0.1);
}

body.single-product .oc-single-gallery > .pp-gallery-video .pp-gallery-video-frame {
    width: 100%;
    max-width: none;
    aspect-ratio: 9 / 16;
    border-radius: 8px;
}

body.single-product .oc-single-gallery > .pp-gallery-video .pp-gallery-video-poster {
    display: none;
}

body.single-product .oc-single-gallery-stage {
    display: flex;
    grid-column: 2;
    grid-row: 1;
    align-items: center;
    align-self: start;
    justify-content: center;
    min-height: 0;
    aspect-ratio: 16 / 11;
    overflow: visible;
    border-radius: 8px;
    background:
        radial-gradient(circle at 50% 48%, rgba(157, 128, 102, 0.08), transparent 38%),
        #fff;
}

body.single-product .oc-single-main-image {
    box-sizing: border-box;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: min(100%, 520px);
    padding: clamp(16px, 2.2vw, 30px);
    object-fit: contain;
    object-position: center;
    transform: none !important;
}

body.single-product .oc-single-gallery:hover .oc-single-main-image {
    transform: none !important;
}

body.single-product .oc-single-thumbnails {
    grid-column: 2;
    grid-row: 2;
    display: flex;
    gap: 10px;
    margin: -4px 0 0;
    padding: 0;
}

body.single-product .oc-single-thumbnails button {
    width: 74px;
    height: 74px;
    flex: 0 0 74px;
    border-radius: 6px;
}

body.single-product .oc-single-summary {
    grid-column: 2;
    grid-row: 3;
    align-self: start;
    min-height: 0;
    border-radius: 8px;
    background: linear-gradient(135deg, #fffaf5 0%, #fbf1e8 100%);
    padding: clamp(30px, 3.2vw, 46px);
}

body.single-product .oc-single-summary h1 {
    font-family: var(--oc-type-display, Georgia, serif) !important;
    font-size: clamp(42px, 3.8vw, 58px) !important;
    font-weight: 400 !important;
    line-height: 1.04 !important;
}

body.single-product .oc-single-assurance {
    grid-column: 1 / -1;
    grid-row: 4;
}

body.single-product .oc-single-meta-panel {
    grid-column: 1 / -1;
    grid-row: 5;
}

body.single-product .oc-product-zoom__stage {
    overflow: visible;
    width: min(1180px, calc(100vw - 32px));
    height: min(88vh, 900px);
}

body.single-product .oc-product-zoom__stage img {
    width: auto;
    height: auto;
    max-width: calc(100vw - 48px);
    max-height: calc(88vh - 28px);
    object-fit: contain;
}

@media (max-width: 980px) {
    body.single-product .oc-single-product {
        width: min(100% - 40px, 920px);
        grid-template-columns: minmax(230px, 34%) minmax(0, 1fr);
        column-gap: 26px;
        padding-top: 112px;
    }

    body.single-product .oc-single-gallery > .pp-gallery-video {
        width: min(300px, 100%);
    }

    body.single-product .oc-single-summary h1 {
        font-size: clamp(34px, 4.4vw, 46px) !important;
    }
}

@media (max-width: 760px) {
    body.single-product .oc-single-product {
        width: calc(100% - 36px);
        grid-template-columns: 1fr;
        row-gap: 16px;
        padding-top: 112px;
    }

    body.single-product .oc-single-gallery > .pp-gallery-video,
    body.single-product .oc-single-gallery-stage,
    body.single-product .oc-single-thumbnails,
    body.single-product .oc-single-summary,
    body.single-product .oc-single-assurance,
    body.single-product .oc-single-meta-panel {
        grid-column: 1;
    }

    body.single-product .oc-single-gallery > .pp-gallery-video {
        grid-row: 1;
        width: min(265px, 76vw);
        justify-self: center;
    }

    body.single-product .oc-single-gallery-stage {
        grid-row: 2;
        aspect-ratio: 1 / 1.08;
    }

    body.single-product .oc-single-thumbnails {
        grid-row: 3;
        margin-top: 0;
    }

    body.single-product .oc-single-summary {
        grid-row: 4;
        padding: 28px 22px;
    }

    body.single-product .oc-single-assurance {
        grid-row: 5;
    }

    body.single-product .oc-single-meta-panel {
        grid-row: 6;
    }
}

/* Product hero v4: media gallery left, product summary right. */
body.single-product .oc-single-product {
    width: min(1320px, calc(100% - 72px));
    grid-template-columns: minmax(560px, 58%) minmax(380px, 42%);
    grid-template-rows: auto auto auto;
    column-gap: clamp(32px, 4.5vw, 64px);
    row-gap: 24px;
    align-items: start;
    padding-top: 118px;
}

body.single-product .oc-single-gallery {
    display: grid;
    grid-column: 1;
    grid-row: 1;
    grid-template-columns: 96px minmax(0, 1fr);
    grid-template-rows: auto auto;
    gap: 18px;
    align-items: start;
}

body.single-product .oc-single-thumbnails {
    grid-column: 1;
    grid-row: 1 / span 2;
    display: flex;
    max-height: 560px;
    flex-direction: column;
    gap: 12px;
    margin: 0;
    overflow: auto;
    padding: 0;
}

body.single-product .oc-single-thumbnails button {
    width: 92px;
    height: 92px;
    flex: 0 0 92px;
    border-radius: 6px;
}

body.single-product .oc-single-gallery > .pp-gallery-video {
    grid-column: 2;
    grid-row: 1;
    width: 100%;
    justify-self: stretch;
    margin: 0;
    border: 0;
    border-radius: 8px;
    background: #050505;
    padding: 0;
    box-shadow: 0 18px 46px rgba(17, 16, 15, 0.1);
}

body.single-product .oc-single-gallery > .pp-gallery-video .pp-gallery-video-frame {
    width: 100%;
    max-width: none;
    aspect-ratio: 1 / 1;
    border-radius: 8px;
}

body.single-product .oc-single-gallery > .pp-gallery-video .pp-gallery-video-poster {
    display: none;
}

body.single-product .oc-single-gallery-stage {
    display: none;
    grid-column: 2;
    grid-row: 2;
    align-items: center;
    justify-content: center;
    min-height: 220px;
    aspect-ratio: 16 / 5;
    overflow: visible;
    border-radius: 8px;
    background:
        radial-gradient(circle at 50% 48%, rgba(157, 128, 102, 0.08), transparent 38%),
        #fff;
}

body.single-product .oc-single-main-image {
    box-sizing: border-box;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    padding: clamp(12px, 1.5vw, 22px);
    object-fit: contain;
    object-position: center;
    transform: none !important;
}

body.single-product .oc-single-gallery:hover .oc-single-main-image {
    transform: none !important;
}

body.single-product .oc-single-summary {
    grid-column: 2;
    grid-row: 1;
    align-self: start;
    min-height: 0;
    border-radius: 8px;
    background: linear-gradient(135deg, #fffaf5 0%, #fbf1e8 100%);
    padding: clamp(30px, 3.2vw, 46px);
}

body.single-product .oc-single-summary h1 {
    font-family: var(--oc-type-display, Georgia, serif) !important;
    font-size: clamp(42px, 3.8vw, 58px) !important;
    font-weight: 400 !important;
    line-height: 1.04 !important;
}

body.single-product .oc-single-gallery > .oc-single-assurance {
    grid-column: 1 / -1;
    grid-row: 2;
    margin-top: 0;
}

body.single-product .oc-single-product > .oc-single-assurance {
    grid-column: 2;
    grid-row: 2;
}

body.single-product .oc-single-meta-panel {
    grid-column: 1 / -1;
    grid-row: 3;
}

body.single-product .oc-single-meta-panel {
    display: none !important;
}

body.single-product .oc-single-gallery > .oc-single-assurance {
    min-height: 132px;
}

body.single-product .oc-single-gallery > .oc-single-assurance article {
    min-height: 132px;
    padding: 18px 20px;
}

body.single-product .oc-single-gallery > .oc-single-assurance span {
    width: 38px;
    height: 38px;
}

body.single-product .oc-single-gallery > .oc-single-assurance p {
    font-size: 11px;
    line-height: 1.5;
}

body.single-product .oc-single-product {
    grid-template-rows: auto;
    row-gap: 0;
    padding-bottom: 12px;
}

body.single-product .oc-product-story {
    margin-top: 0 !important;
    padding-top: 28px;
}

/* No-video fallback: promote the product image to the primary media slot. */
body.single-product .oc-single-gallery:not(:has(.pp-gallery-video)) .oc-single-gallery-stage {
    display: flex;
    grid-column: 2;
    grid-row: 1;
    align-items: center;
    justify-content: center;
    min-height: 538px;
    aspect-ratio: 1 / 1;
    overflow: visible;
}

body.single-product .oc-single-gallery:not(:has(.pp-gallery-video)) .oc-single-main-image {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 538px;
    object-fit: contain;
}

body.single-product .oc-single-gallery:not(:has(.pp-gallery-video)) > .oc-single-assurance {
    grid-column: 1 / -1;
    grid-row: 2;
}

@media (max-width: 760px) {
    body.single-product .oc-single-gallery:not(:has(.pp-gallery-video)) .oc-single-gallery-stage {
        grid-column: 1;
        grid-row: 1;
        min-height: 0;
        aspect-ratio: 1 / 1.05;
    }

    body.single-product .oc-single-gallery:not(:has(.pp-gallery-video)) .oc-single-main-image {
        max-height: 100%;
    }

    body.single-product .oc-single-gallery:not(:has(.pp-gallery-video)) .oc-single-thumbnails {
        grid-column: 1;
        grid-row: 2;
    }

    body.single-product .oc-single-gallery:not(:has(.pp-gallery-video)) > .oc-single-assurance {
        grid-column: 1;
        grid-row: 3;
    }
}

/* Orologio editorial treatment: flat surfaces, fine rules, restrained typography. */
body.single-product .oc-single-gallery > .pp-gallery-video,
body.single-product .oc-single-gallery > .pp-gallery-video .pp-gallery-video-frame {
    border-radius: 0;
    box-shadow: none;
}

body.single-product .oc-single-thumbnails button {
    border: 1px solid rgba(17, 16, 15, 0.18);
    border-radius: 0;
    background: #fff;
    opacity: 0.72;
}

body.single-product .oc-single-thumbnails button.is-active,
body.single-product .oc-single-thumbnails button:hover {
    border-color: #11100f;
    opacity: 1;
}

body.single-product .oc-single-summary {
    border: 0;
    border-left: 1px solid #c5baaf;
    border-radius: 0;
    background: #f7f3ef;
    padding: clamp(34px, 3.6vw, 52px);
}

body.single-product .oc-single-summary h1 {
    max-width: 10ch;
    margin-bottom: 24px;
    font-family: var(--oc-type-display, Georgia, serif) !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
}

html body.single-product .orologio-clone .oc-single-summary h1 {
    font-family: Georgia, "Times New Roman", serif !important;
}

body.single-product .oc-single-short {
    margin: 0 0 24px;
    color: rgba(17, 16, 15, 0.66);
    line-height: 1.7 !important;
}

body.single-product .oc-single-price {
    margin-bottom: 24px;
    color: #9d8066;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 26px;
    font-weight: 400;
}

body.single-product .oc-single-cart .stock {
    display: block !important;
    min-height: 0;
    margin: 0 0 24px;
    border: 0;
    border-radius: 0;
    background: transparent;
    padding: 0 0 14px;
    color: rgba(17, 16, 15, 0.58);
    font-size: 10px !important;
    font-weight: 600;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

body.single-product .pp-quick-order {
    display: flex;
    flex-direction: column;
    margin: 24px 0 0;
    border: 0;
    border-top: 1px solid #c5baaf;
    border-bottom: 1px solid #c5baaf;
    border-radius: 0;
    background: transparent;
    padding: 26px 0;
}

body.single-product .pp-quick-order-copy {
    display: contents;
}

body.single-product .pp-quick-order-copy .pp-eyebrow {
    order: 1;
}

body.single-product .pp-quick-order-copy h2 {
    order: 2;
    margin-bottom: 10px;
    font-family: var(--oc-type-body, Montserrat, Arial, sans-serif) !important;
    font-size: 21px !important;
    font-weight: 500 !important;
    line-height: 1.36 !important;
    max-width: 24ch;
    letter-spacing: 0 !important;
    text-wrap: balance;
    word-break: keep-all;
    overflow-wrap: normal;
    hyphens: none;
}

body.single-product .pp-quick-order-copy p:last-child {
    order: 4;
    margin-top: 18px;
    max-width: 42ch;
    color: rgba(17, 16, 15, 0.58);
    line-height: 1.65 !important;
}

body.single-product .pp-quick-order-actions {
    order: 3;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
    margin-top: 10px;
}

body.single-product .pp-quick-order-button,
body.single-product .pp-quick-order-call {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 0 24px;
    border-radius: 0;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    transition: background-color 220ms ease, color 220ms ease, border-color 220ms ease;
}

body.single-product .pp-quick-order-button {
    border: 1px solid #11100f;
    background: #11100f;
    color: #fff !important;
}

body.single-product .pp-quick-order-button:hover {
    border-color: #11100f;
    background: transparent;
    color: #11100f !important;
    transform: none;
}

.pp-quick-order-open {
    overflow: hidden;
}

body.single-product .pp-quick-order-call {
    margin-left: 0;
    border: 1px solid #c5baaf;
    color: #11100f !important;
    text-decoration: none;
}

body.single-product .pp-quick-order-modal {
    position: fixed;
    z-index: 2147483000;
    inset: 0;
    display: grid;
    place-items: center;
    padding: 24px;
    pointer-events: none;
    opacity: 0;
    transition: opacity 220ms ease;
}

body.single-product .pp-quick-order-modal.is-open {
    pointer-events: auto;
    opacity: 1;
}

body.single-product .pp-quick-order-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.72);
}

body.single-product .pp-quick-order-dialog {
    position: relative;
    width: min(760px, 100%);
    max-height: calc(100vh - 48px);
    overflow: auto;
    border: 1px solid #c5baaf;
    background: #fbf6f1;
    padding: clamp(28px, 4vw, 48px);
    color: #11100f;
    transform: translateY(18px);
    transition: transform 260ms ease;
}

body.single-product .pp-quick-order-modal.is-open .pp-quick-order-dialog {
    transform: translateY(0);
}

body.single-product .pp-quick-order-close {
    position: absolute;
    top: 14px;
    right: 14px;
    width: 42px;
    height: 42px;
    border: 1px solid #c5baaf;
    background: transparent;
    color: #11100f;
    font-size: 28px;
    line-height: 1;
    cursor: pointer;
}

body.single-product .pp-quick-order-head {
    margin-bottom: 26px;
}

body.single-product .pp-quick-order-head h2 {
    margin: 6px 0 8px;
    font-family: var(--oc-type-body, Montserrat, Arial, sans-serif) !important;
    font-size: clamp(28px, 3.3vw, 42px) !important;
    font-weight: 500 !important;
    line-height: 1.14 !important;
    letter-spacing: 0 !important;
    text-wrap: balance;
}

body.single-product .pp-quick-order-head p:last-child {
    margin: 0;
    color: rgba(17, 16, 15, 0.62);
}

body.single-product .pp-quick-order-form {
    display: grid;
    gap: 16px;
}

body.single-product .pp-quick-order-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

body.single-product .pp-quick-order-form label {
    display: grid;
    gap: 8px;
    margin: 0;
}

body.single-product .pp-quick-order-form label span {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

body.single-product .pp-quick-order-form input,
body.single-product .pp-quick-order-form textarea {
    width: 100%;
    border: 1px solid #c5baaf;
    border-radius: 0;
    background: #fff;
    padding: 13px 14px;
    color: #11100f;
    font: inherit;
}

body.single-product .pp-quick-order-form textarea {
    min-height: 116px;
    resize: vertical;
}

body.single-product .pp-quick-order-form input:focus,
body.single-product .pp-quick-order-form textarea:focus {
    outline: 1px solid #9d8066;
    outline-offset: 2px;
}

body.single-product .pp-quick-order-summary {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px 18px;
    border-top: 1px solid #c5baaf;
    border-bottom: 1px solid #c5baaf;
    padding: 16px 0;
}

body.single-product .pp-quick-order-summary span {
    color: rgba(17, 16, 15, 0.58);
    font-size: 12px;
    text-transform: uppercase;
}

body.single-product .pp-quick-order-summary strong {
    text-align: right;
}

body.single-product .pp-quick-order-submit {
    min-height: 52px;
    border: 1px solid #11100f;
    border-radius: 0;
    background: #11100f;
    color: #fff;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    cursor: pointer;
}

body.single-product .pp-quick-order-submit:disabled {
    cursor: wait;
    opacity: 0.62;
}

body.single-product .pp-quick-order-status {
    min-height: 22px;
    margin: 0;
    color: rgba(17, 16, 15, 0.72);
    font-size: 13px !important;
    line-height: 1.5 !important;
}

body.single-product .pp-quick-order-status.is-success {
    color: #27663a;
}

body.single-product .pp-quick-order-status.is-error {
    color: #9d2b24;
}

body.single-product .oc-single-gallery > .oc-single-assurance {
    border-top: 1px solid #c5baaf;
    border-bottom: 1px solid #c5baaf;
    border-radius: 0;
    background: transparent;
}

body.single-product .oc-single-gallery > .oc-single-assurance article {
    grid-template-columns: 30px minmax(0, 1fr);
    border-right: 1px solid #c5baaf;
    background: transparent;
    padding: 24px 20px;
}

body.single-product .oc-single-gallery > .oc-single-assurance article:last-child {
    border-right: 0;
}

body.single-product .oc-single-gallery > .oc-single-assurance span {
    display: block;
    width: auto;
    height: auto;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #9d8066;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 12px;
    line-height: 1;
}

body.single-product .oc-single-gallery > .oc-single-assurance strong {
    margin-bottom: 8px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.2px;
}

body.single-product .oc-single-gallery > .oc-single-assurance p {
    color: rgba(17, 16, 15, 0.56);
    font-size: 10px;
    line-height: 1.6;
}

@media (max-width: 760px) {
    body.single-product .pp-quick-order-actions,
    body.single-product .pp-quick-order-grid,
    body.single-product .pp-quick-order-summary {
        grid-template-columns: 1fr;
    }

    body.single-product .pp-quick-order-call {
        margin: 10px 0 0;
        width: 100%;
    }

    body.single-product .pp-quick-order-button {
        width: 100%;
    }

    body.single-product .pp-quick-order-dialog {
        padding: 30px 20px;
        max-height: calc(100dvh - 28px);
    }

    body.single-product .pp-quick-order-summary strong {
        text-align: left;
    }

    body.single-product .oc-single-summary {
        border-left: 0;
        border-top: 1px solid #c5baaf;
        padding: 32px 0 36px;
    }

    body.single-product .oc-single-gallery > .oc-single-assurance article {
        border-right: 0;
        border-bottom: 1px solid #c5baaf;
    }

    body.single-product .oc-single-gallery > .oc-single-assurance article:last-child {
        border-bottom: 0;
    }
}

body.single-product .oc-product-breadcrumb {
    width: min(1320px, calc(100% - 72px));
    margin: 0 auto;
    border-bottom: 1px solid rgba(197, 186, 175, 0.72);
    padding: 112px 0 16px;
}

body.single-product .oc-product-breadcrumb ol {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}

body.single-product .oc-product-breadcrumb li {
    display: inline-flex;
    min-width: 0;
    align-items: center;
    gap: 10px;
    color: rgba(17, 16, 15, 0.48);
    font-size: 10px;
    font-weight: 500;
    line-height: 1.4;
    text-transform: uppercase;
}

body.single-product .oc-product-breadcrumb li:not(:last-child)::after {
    width: 18px;
    height: 1px;
    background: #c5baaf;
    content: "";
}

body.single-product .oc-product-breadcrumb a {
    color: rgba(17, 16, 15, 0.58);
    text-decoration: none;
    transition: color 180ms ease;
}

body.single-product .oc-product-breadcrumb a:hover {
    color: #11100f;
}

body.single-product .oc-product-breadcrumb [aria-current="page"] {
    overflow: hidden;
    color: #11100f;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.single-product .oc-product-breadcrumb + .oc-single-product {
    padding-top: 36px;
}

@media (max-width: 760px) {
    body.single-product .oc-product-breadcrumb {
        width: calc(100% - 36px);
        overflow: hidden;
        padding-top: 92px;
    }

    body.single-product .oc-product-breadcrumb ol {
        overflow-x: auto;
        padding-bottom: 4px;
        scrollbar-width: none;
    }

    body.single-product .oc-product-breadcrumb ol::-webkit-scrollbar {
        display: none;
    }

    body.single-product .oc-product-breadcrumb li {
        flex: 0 0 auto;
    }

    body.single-product .oc-product-breadcrumb + .oc-single-product {
        padding-top: 24px;
    }
}

/* Product conversion pass: keep quick-order CTAs inside the first viewport. */
body.single-product .oc-product-breadcrumb + .oc-single-product .oc-single-summary {
    padding: clamp(26px, 2.9vw, 38px);
}

body.single-product .oc-product-breadcrumb + .oc-single-product .oc-single-summary h1 {
    margin-bottom: 18px;
    font-size: clamp(38px, 3.35vw, 50px) !important;
    line-height: 1.03 !important;
}

body.single-product .oc-product-breadcrumb + .oc-single-product .oc-single-short {
    margin-bottom: 18px;
    line-height: 1.55 !important;
}

body.single-product .oc-product-breadcrumb + .oc-single-product .oc-single-price {
    margin-bottom: 18px;
    font-size: 25px;
}

body.single-product .oc-product-breadcrumb + .oc-single-product .pp-quick-order {
    margin-top: 18px;
    padding: 20px 0;
}

body.single-product .oc-product-breadcrumb + .oc-single-product .pp-quick-order-copy h2 {
    margin-bottom: 8px;
    font-size: 20px !important;
    line-height: 1.32 !important;
}

body.single-product .oc-product-breadcrumb + .oc-single-product .pp-quick-order-copy p:last-child {
    margin-top: 14px;
    line-height: 1.55 !important;
}

@media (max-width: 760px) {
    body.single-product .oc-product-breadcrumb + .oc-single-product .oc-single-summary {
        padding: 28px 22px;
    }

    body.single-product .oc-product-breadcrumb + .oc-single-product .pp-quick-order {
        padding: 22px 0;
    }
}

/* Orologio catalog: editorial intro, quiet toolbar, tall three-column product grid. */
body.tax-product_cat .oc-archive-page,
body.post-type-archive-product .oc-archive-page {
    background: #fff;
}

.oc-archive-breadcrumb {
    width: min(1340px, calc(100% - 72px));
    margin: 0 auto;
    padding-top: 112px;
}

.oc-archive-breadcrumb ol {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.oc-archive-breadcrumb li {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: rgba(17, 16, 15, 0.46);
    font-size: 10px;
    font-weight: 500;
    line-height: 1.4;
    text-transform: uppercase;
}

.oc-archive-breadcrumb li:not(:last-child)::after {
    width: 18px;
    height: 1px;
    background: #c5baaf;
    content: "";
}

.oc-archive-breadcrumb a {
    color: rgba(17, 16, 15, 0.58);
    text-decoration: none;
}

.oc-archive-breadcrumb a:hover,
.oc-archive-breadcrumb [aria-current="page"] {
    color: #11100f;
}

.oc-category-intro {
    width: min(1340px, calc(100% - 72px));
    margin: 0 auto;
    border-bottom: 1px solid #c5baaf;
    padding: 50px 0 72px;
    text-align: center;
}

.oc-category-kicker {
    margin: 0 0 14px;
    color: #9d8066;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.3;
    text-transform: uppercase;
}

.oc-category-intro h1 {
    margin: 0;
    color: #11100f;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: clamp(48px, 6vw, 82px) !important;
    font-weight: 400 !important;
    line-height: 1.04 !important;
}

.oc-category-intro > p:last-child {
    max-width: 720px;
    margin: 24px auto 0;
    color: rgba(17, 16, 15, 0.62);
    font-size: 14px;
    line-height: 1.75;
}

.oc-category-intro-content {
    max-width: 860px;
    margin: 28px auto 0;
    color: rgba(17, 16, 15, 0.66);
    font-size: 15px;
    line-height: 1.85;
}

.oc-category-intro-content > *:first-child {
    margin-top: 0;
}

.oc-category-intro-content > *:last-child {
    margin-bottom: 0;
}

.oc-category-intro-content p {
    margin: 0 0 16px;
}

.oc-category-intro-content ul,
.oc-category-intro-content ol {
    margin: 16px auto 0;
    padding-left: 24px;
    text-align: left;
}

.oc-category-intro-content h2,
.oc-category-intro-content h3 {
    margin: 26px 0 12px;
    color: #11100f;
    font-family: Georgia, "Times New Roman", serif !important;
    font-weight: 400 !important;
    line-height: 1.16 !important;
}

.oc-category-intro-content h2 {
    font-size: clamp(28px, 2.8vw, 40px) !important;
}

.oc-category-intro-content h3 {
    font-size: clamp(22px, 2.1vw, 30px) !important;
}

.oc-archive-products {
    width: min(1340px, calc(100% - 72px));
    margin: 0 auto;
    padding: 38px 0 112px;
}

.oc-archive-toolbar {
    display: flex;
    min-height: 54px;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 34px;
}

.oc-archive-toolbar .woocommerce-result-count,
.oc-archive-toolbar .woocommerce-ordering {
    float: none;
    margin: 0;
}

.oc-archive-toolbar .woocommerce-result-count {
    color: rgba(17, 16, 15, 0.7);
    font-size: 12px;
}

.oc-archive-toolbar .woocommerce-ordering select {
    min-width: 210px;
    height: 48px;
    border: 1px solid #c5baaf;
    border-radius: 0;
    background: #fff;
    padding: 0 40px 0 16px;
    color: #11100f;
    font-family: Montserrat, Arial, sans-serif;
    font-size: 11px;
    box-shadow: none;
}

.oc-archive-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 76px 54px;
}

.oc-archive-page .oc-product-card {
    min-width: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    text-align: center;
}

.oc-archive-page .oc-product-image {
    display: grid;
    width: 100%;
    aspect-ratio: 8 / 11;
    place-items: center;
    overflow: hidden;
    background: #f7f3ef;
}

.oc-archive-page .oc-product-image img {
    display: block;
    width: 100%;
    height: 100%;
    padding: clamp(34px, 4vw, 58px);
    object-fit: contain;
    object-position: center;
    transform: none;
    transition: transform 600ms cubic-bezier(0.2, 0.72, 0.16, 1);
}

.oc-archive-page .oc-product-card:hover .oc-product-image img {
    transform: scale(1.025);
}

.oc-archive-page .oc-product-body {
    display: flex;
    min-height: 250px;
    flex-direction: column;
    align-items: stretch;
    padding: 24px 8px 0;
}

.oc-archive-page .oc-product-body h2 {
    display: -webkit-box;
    min-height: 58px;
    margin: 0;
    overflow: hidden;
    color: #11100f;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: clamp(21px, 2vw, 28px) !important;
    font-weight: 400 !important;
    line-height: 1.12 !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.oc-archive-page .oc-product-body h2 a {
    color: inherit;
    text-decoration: none;
}

.oc-archive-page .oc-product-body > p {
    display: -webkit-box;
    min-height: 44px;
    margin: 12px 0 18px;
    overflow: hidden;
    color: rgba(17, 16, 15, 0.58);
    font-size: 11px;
    line-height: 1.55;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.oc-archive-page .oc-price {
    margin: 0 0 18px;
    color: #11100f;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 19px;
    font-weight: 400;
}

.oc-archive-page .oc-price del {
    margin-right: 8px;
    color: rgba(17, 16, 15, 0.4);
    font-size: 0.8em;
}

.oc-archive-page .oc-price ins {
    background: transparent;
    text-decoration: none;
}

.oc-archive-page .oc-cart-link {
    display: inline-flex;
    width: 100%;
    min-height: 54px;
    align-items: center;
    justify-content: center;
    margin-top: auto;
    border: 0;
    border-top: 1px solid #c5baaf;
    border-radius: 0;
    background: transparent;
    padding: 14px;
    color: #9d8066 !important;
    font-size: 11px;
    font-weight: 500;
    line-height: 1.2;
    text-decoration: none;
    text-transform: uppercase;
    transition: background-color 200ms ease, color 200ms ease;
}

.oc-archive-page .oc-cart-link::before {
    display: none;
}

.oc-archive-page .oc-cart-link:hover,
.oc-archive-page .oc-cart-link.added {
    background: #11100f;
    color: #fff !important;
    transform: none;
}

.oc-pagination {
    margin-top: 76px;
}

.oc-pagination .page-numbers {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    margin: 0;
    padding: 0;
    border: 0;
}

.oc-pagination .page-numbers li {
    border: 0;
}

.oc-pagination .page-numbers a,
.oc-pagination .page-numbers span {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border: 1px solid transparent;
    color: #11100f;
    font-size: 11px;
    text-decoration: none;
}

.oc-pagination .page-numbers .current {
    border-color: #11100f;
}

@media (max-width: 980px) {
    .oc-archive-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 58px 30px;
    }
}

@media (max-width: 760px) {
    .oc-archive-breadcrumb,
    .oc-category-intro,
    .oc-archive-products {
        width: calc(100% - 36px);
    }

    .oc-archive-breadcrumb {
        overflow: hidden;
        padding-top: 92px;
    }

    .oc-archive-breadcrumb ol {
        overflow-x: auto;
        white-space: nowrap;
        scrollbar-width: none;
    }

    .oc-category-intro {
        padding: 34px 0 46px;
        text-align: left;
    }

    .oc-category-intro h1 {
        font-size: clamp(42px, 12vw, 58px) !important;
    }

    .oc-category-intro > p:last-child {
        margin-top: 18px;
    }

    .oc-category-intro-content {
        margin-top: 20px;
        font-size: 14px;
        line-height: 1.75;
    }

    .oc-archive-products {
        padding-top: 24px;
    }

    .oc-archive-toolbar {
        display: grid;
        grid-template-columns: 1fr;
        gap: 14px;
        margin-bottom: 24px;
    }

    .oc-archive-toolbar .woocommerce-ordering,
    .oc-archive-toolbar .woocommerce-ordering select {
        width: 100%;
    }

    .oc-archive-grid {
        grid-template-columns: 1fr;
        gap: 48px;
    }

    .oc-archive-page .oc-product-image {
        aspect-ratio: 4 / 5;
    }

    .oc-archive-page .oc-product-body {
        min-height: 230px;
    }
}

@media (max-width: 1100px) {
    body.single-product .oc-single-product {
        width: min(100% - 40px, 960px);
        grid-template-columns: minmax(0, 1fr);
    }

    body.single-product .oc-single-gallery,
    body.single-product .oc-single-summary,
    body.single-product .oc-single-assurance,
    body.single-product .oc-single-meta-panel {
        grid-column: 1;
    }

    body.single-product .oc-single-gallery {
        grid-row: 1;
    }

    body.single-product .oc-single-summary {
        grid-row: 2;
    }

    body.single-product .oc-single-assurance {
        grid-row: 3;
    }

    body.single-product .oc-single-meta-panel {
        grid-row: 4;
    }
}

@media (max-width: 760px) {
    body.single-product .oc-single-product {
        width: calc(100% - 36px);
        padding-top: 112px;
    }

    body.single-product .oc-single-gallery {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    body.single-product .oc-single-gallery > .pp-gallery-video {
        grid-column: 1;
        grid-row: 1;
    }

    body.single-product .oc-single-gallery > .pp-gallery-video .pp-gallery-video-frame {
        aspect-ratio: 9 / 16;
    }

    body.single-product .oc-single-thumbnails {
        grid-column: 1;
        grid-row: 2;
        max-height: none;
        flex-direction: row;
    }

    body.single-product .oc-single-gallery > .oc-single-assurance {
        grid-column: 1;
        grid-row: 3;
    }

    body.single-product .oc-single-summary {
        padding: 28px 22px;
    }
}

/* Archive fidelity pass: lock the Orologio palette and editorial type hierarchy. */
html body.tax-product_cat .orologio-clone.oc-archive-page .oc-category-intro h1,
html body.post-type-archive-product .orologio-clone.oc-archive-page .oc-category-intro h1 {
    font-family: Georgia, "Times New Roman", serif !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
}

html body.tax-product_cat .orologio-clone.oc-archive-page .oc-archive-products,
html body.post-type-archive-product .orologio-clone.oc-archive-page .oc-archive-products {
    background: #fff !important;
}

.oc-archive-page .oc-product-image img {
    mix-blend-mode: multiply;
}

.oc-archive-page .oc-archive-toolbar .woocommerce-ordering select {
    appearance: auto;
    background-image: none;
}

.oc-category-bottom {
    width: min(1120px, calc(100% - 72px));
    margin: 0 auto;
    border-top: 1px solid #c5baaf;
    background: #fff;
    color: #11100f;
    padding: clamp(68px, 7vw, 110px) 0 clamp(80px, 8vw, 124px);
}

.oc-category-bottom-heading {
    max-width: 760px;
    margin: 0 auto 38px;
    text-align: center;
}

.oc-category-bottom-heading h2 {
    margin: 0;
    color: #11100f;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: clamp(40px, 4.8vw, 68px) !important;
    font-weight: 400 !important;
    line-height: 1.06 !important;
    letter-spacing: 0 !important;
}

.oc-category-bottom-content {
    position: relative;
    max-height: 700px;
    overflow: hidden;
    color: rgba(17, 16, 15, 0.72);
    font-size: 15px;
    line-height: 1.9;
    transition: max-height 360ms ease;
}

.oc-category-bottom-content::after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 170px;
    background: linear-gradient(180deg, rgba(255,255,255,0) 0%, #fff 76%);
    content: "";
    pointer-events: none;
    transition: opacity 220ms ease;
}

.oc-category-bottom.is-expanded .oc-category-bottom-content {
    max-height: none;
}

.oc-category-bottom.is-expanded .oc-category-bottom-content::after,
.oc-category-bottom:not(.is-collapsible) .oc-category-bottom-content::after {
    opacity: 0;
}

.oc-category-bottom-content > *:first-child {
    margin-top: 0;
}

.oc-category-bottom-content > *:last-child {
    margin-bottom: 0;
}

.oc-category-bottom-content h2,
.oc-category-bottom-content h3,
.oc-category-bottom-content h4 {
    margin: 42px 0 16px;
    color: #11100f;
    font-family: Georgia, "Times New Roman", serif !important;
    font-weight: 400 !important;
    line-height: 1.15 !important;
}

.oc-category-bottom-content h2 {
    font-size: clamp(30px, 3vw, 44px) !important;
}

.oc-category-bottom-content h3 {
    font-size: clamp(24px, 2.2vw, 32px) !important;
}

.oc-category-bottom-content p,
.oc-category-bottom-content li {
    color: rgba(17, 16, 15, 0.72);
}

.oc-category-bottom-content p {
    margin: 0 0 18px;
}

.oc-category-bottom-content ul,
.oc-category-bottom-content ol {
    margin: 18px 0 24px;
    padding-left: 24px;
}

.oc-category-bottom-content a {
    border-bottom: 1px solid rgba(157, 128, 102, 0.54);
    color: #9d8066;
}

.oc-category-bottom-content img {
    height: auto;
    margin: 34px auto;
}

.oc-category-bottom-toggle {
    display: flex;
    width: fit-content;
    min-width: 160px;
    min-height: 48px;
    align-items: center;
    justify-content: center;
    margin: 38px auto 0;
    border: 1px solid #9d8066;
    border-radius: 0;
    background: #9d8066;
    padding: 14px 28px;
    color: #fff;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 1.6px;
    line-height: 1.2;
    text-transform: uppercase;
    cursor: pointer;
    box-shadow: 0 16px 34px rgba(157, 128, 102, 0.18);
    transition: background-color 220ms ease, border-color 220ms ease, color 220ms ease, transform 220ms ease, box-shadow 220ms ease;
}

.oc-category-bottom-toggle:hover,
.oc-category-bottom-toggle:focus-visible {
    border-color: #11100f;
    background: #11100f;
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 20px 42px rgba(17, 16, 15, 0.18);
}

.oc-category-bottom-toggle:focus-visible {
    outline: 2px solid rgba(157, 128, 102, 0.36);
    outline-offset: 4px;
}

.oc-category-bottom-toggle [data-close-label],
.oc-category-bottom.is-expanded .oc-category-bottom-toggle [data-open-label] {
    display: none;
}

.oc-category-bottom.is-expanded .oc-category-bottom-toggle [data-close-label] {
    display: inline;
}

.oc-category-bottom:not(.is-collapsible) .oc-category-bottom-toggle {
    display: none;
}

@media (max-width: 760px) {
    html body.tax-product_cat .orologio-clone.oc-archive-page .oc-category-intro h1,
    html body.post-type-archive-product .orologio-clone.oc-archive-page .oc-category-intro h1 {
        font-size: clamp(42px, 12vw, 58px) !important;
        line-height: 1.02 !important;
    }

    .oc-archive-page .oc-product-image img {
        padding: 30px;
    }

    .oc-category-bottom {
        width: calc(100% - 36px);
        padding-top: 54px;
    }

    .oc-category-bottom-heading {
        margin-bottom: 28px;
        text-align: left;
    }

    .oc-category-bottom-content {
        max-height: 700px;
        font-size: 14px;
        line-height: 1.8;
    }
}

html body:not(.wp-admin) .orologio-clone.oc-archive-page .oc-category-bottom-heading h2,
html body:not(.wp-admin) .orologio-clone.oc-archive-page .oc-category-bottom-content h2,
html body:not(.wp-admin) .orologio-clone.oc-archive-page .oc-category-bottom-content h3,
html body:not(.wp-admin) .orologio-clone.oc-archive-page .oc-category-bottom-content h4 {
    font-family: Georgia, "Times New Roman", serif !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
}

@media (max-width: 760px) {
    html body.tax-product_cat .orologio-clone.oc-archive-page .oc-archive-grid,
    html body.post-type-archive-product .orologio-clone.oc-archive-page .oc-archive-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 34px 14px !important;
    }

    html body.tax-product_cat .orologio-clone.oc-archive-page .oc-product-image,
    html body.post-type-archive-product .orologio-clone.oc-archive-page .oc-product-image {
        aspect-ratio: 1 / 1.22 !important;
    }

    html body.tax-product_cat .orologio-clone.oc-archive-page .oc-product-image img,
    html body.post-type-archive-product .orologio-clone.oc-archive-page .oc-product-image img {
        padding: 18px !important;
    }

    html body.tax-product_cat .orologio-clone.oc-archive-page .oc-product-body,
    html body.post-type-archive-product .orologio-clone.oc-archive-page .oc-product-body {
        min-height: 188px !important;
        padding: 16px 0 0 !important;
    }

    html body.tax-product_cat .orologio-clone.oc-archive-page .oc-product-body h2,
    html body.post-type-archive-product .orologio-clone.oc-archive-page .oc-product-body h2 {
        min-height: 44px !important;
        font-size: 16px !important;
        line-height: 1.18 !important;
    }

    html body.tax-product_cat .orologio-clone.oc-archive-page .oc-product-body > p,
    html body.post-type-archive-product .orologio-clone.oc-archive-page .oc-product-body > p {
        min-height: 34px !important;
        margin: 8px 0 12px !important;
        font-size: 10px !important;
        line-height: 1.5 !important;
    }

    html body.tax-product_cat .orologio-clone.oc-archive-page .oc-price,
    html body.post-type-archive-product .orologio-clone.oc-archive-page .oc-price {
        margin-bottom: 12px !important;
        font-size: 15px !important;
    }

    html body.tax-product_cat .orologio-clone.oc-archive-page .oc-cart-link,
    html body.post-type-archive-product .orologio-clone.oc-archive-page .oc-cart-link {
        min-height: 42px !important;
        padding: 10px 4px !important;
        font-size: 9px !important;
        letter-spacing: 0.8px !important;
    }
}

/* Category archive: match Orologio subheader and keep the black header fixed site-wide. */
html body.orologio-clone-active .oc-header,
html body.orologio-clone-active .oc-header.is-scrolled {
    min-height: 96px;
    background: #030303 !important;
    color: #fff !important;
    backdrop-filter: none !important;
}

html body.orologio-clone-active .oc-header {
    padding-top: 30px;
    padding-bottom: 30px;
}

html body.orologio-clone-active .oc-header.is-scrolled {
    padding-top: 30px;
    padding-bottom: 30px;
}

html body.tax-product_cat .orologio-clone.oc-archive-page .oc-archive-breadcrumb,
html body.post-type-archive-product .orologio-clone.oc-archive-page .oc-archive-breadcrumb {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    white-space: nowrap;
}

html body.tax-product_cat .orologio-clone.oc-archive-page .oc-category-intro,
html body.post-type-archive-product .orologio-clone.oc-archive-page .oc-category-intro {
    display: flex;
    width: 100% !important;
    min-height: 398px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin: 0;
    border-bottom: 0;
    background: #fbf6f1;
    padding: 156px clamp(24px, 5vw, 72px) 72px;
    text-align: center;
}

html body.tax-product_cat .orologio-clone.oc-archive-page .oc-category-kicker,
html body.post-type-archive-product .orologio-clone.oc-archive-page .oc-category-kicker {
    color: rgba(17, 16, 15, 0.62);
}

html body.tax-product_cat .orologio-clone.oc-archive-page .oc-category-intro h1,
html body.post-type-archive-product .orologio-clone.oc-archive-page .oc-category-intro h1 {
    max-width: 980px;
    color: #11100f;
    font-size: clamp(58px, 5.8vw, 76px) !important;
    line-height: 1.08 !important;
}

html body.tax-product_cat .orologio-clone.oc-archive-page .oc-category-intro-content,
html body.post-type-archive-product .orologio-clone.oc-archive-page .oc-category-intro-content {
    max-width: 820px;
    margin-top: 22px;
    color: rgba(17, 16, 15, 0.66);
}

html body.tax-product_cat .orologio-clone.oc-archive-page .oc-archive-products,
html body.post-type-archive-product .orologio-clone.oc-archive-page .oc-archive-products {
    padding-top: 92px;
}

@media (max-width: 760px) {
    html body.orologio-clone-active .oc-header,
    html body.orologio-clone-active .oc-header.is-scrolled {
        min-height: 74px;
        padding-top: 20px;
        padding-bottom: 20px;
    }

    html body.tax-product_cat .orologio-clone.oc-archive-page .oc-category-intro,
    html body.post-type-archive-product .orologio-clone.oc-archive-page .oc-category-intro {
        min-height: 330px;
        padding: 118px 18px 56px;
        text-align: center;
    }

    html body.tax-product_cat .orologio-clone.oc-archive-page .oc-category-intro h1,
    html body.post-type-archive-product .orologio-clone.oc-archive-page .oc-category-intro h1 {
        font-size: clamp(44px, 13vw, 58px) !important;
    }

    html body.tax-product_cat .orologio-clone.oc-archive-page .oc-category-intro-content,
    html body.post-type-archive-product .orologio-clone.oc-archive-page .oc-category-intro-content {
        margin-top: 18px;
        text-align: center;
    }

    html body.tax-product_cat .orologio-clone.oc-archive-page .oc-archive-products,
    html body.post-type-archive-product .orologio-clone.oc-archive-page .oc-archive-products {
        padding-top: 38px;
    }

    body.single-product .oc-full-description {
        margin-top: 34px;
    }

    body.single-product .oc-full-description summary {
        min-height: 64px;
        padding: 18px 48px 18px 0;
        font-size: 11px;
        letter-spacing: 1.1px;
    }

    body.single-product .oc-full-description-content {
        padding: 28px 0 44px;
        font-size: 14px;
        line-height: 1.78;
    }

    body.single-product .oc-full-description-content h1,
    body.single-product .oc-full-description-content h2 {
        margin-top: 34px;
        font-size: clamp(28px, 8.8vw, 38px) !important;
    }

    body.single-product .oc-full-description-content h3 {
        font-size: clamp(23px, 7vw, 30px) !important;
    }

    body.single-product .oc-full-description-content table {
        display: block;
        overflow-x: auto;
        white-space: nowrap;
    }
}

/* Final mega-menu override: placed last so old clone rules cannot reintroduce collisions. */
body:not(.wp-admin) .oc-menu-popup {
    background:
        radial-gradient(circle at 78% 18%, rgba(157, 128, 102, 0.18), transparent 30%),
        linear-gradient(135deg, #030303 0%, #071018 48%, #020202 100%) !important;
    color: var(--oc-paper);
}

body:not(.wp-admin) .oc-menu-popup::before {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(45deg, rgba(157, 128, 102, 0.08) 25%, transparent 25%, transparent 75%, rgba(157, 128, 102, 0.08) 75%),
        linear-gradient(45deg, rgba(157, 128, 102, 0.08) 25%, transparent 25%, transparent 75%, rgba(157, 128, 102, 0.08) 75%);
    background-position: 0 0, 18px 18px;
    background-size: 36px 36px;
    content: "";
    opacity: 0.08;
    pointer-events: none;
}

body:not(.wp-admin) .oc-menu-popup-inner {
    position: relative;
    padding: clamp(26px, 3vw, 38px) clamp(22px, 4vw, 52px) clamp(42px, 5vw, 72px) !important;
}

body:not(.wp-admin) .oc-menu-close {
    top: clamp(30px, 4vw, 52px) !important;
    left: clamp(26px, 4vw, 52px) !important;
    width: clamp(58px, 5.5vw, 74px) !important;
    opacity: 0.78;
}

body:not(.wp-admin) .oc-menu-columns {
    display: grid !important;
    width: min(1180px, calc(100vw - clamp(44px, 8vw, 120px))) !important;
    min-height: calc(100vh - 180px) !important;
    grid-template-columns: minmax(280px, 1.08fr) minmax(230px, 0.72fr) minmax(310px, 0.9fr) !important;
    gap: clamp(34px, 6vw, 86px) !important;
    align-items: center !important;
    margin: clamp(104px, 12vh, 148px) auto 0 !important;
}

body:not(.wp-admin) .oc-menu-primary,
body:not(.wp-admin) .oc-menu-secondary {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: clamp(10px, 1.4vw, 18px) !important;
}

body:not(.wp-admin) .oc-menu-primary a,
body:not(.wp-admin) .oc-menu-secondary a {
    position: relative;
    display: inline-flex !important;
    width: fit-content;
    max-width: 100%;
    padding: 0 !important;
    font-family: var(--oc-sans) !important;
    letter-spacing: 0 !important;
    text-decoration: none;
    text-wrap: balance;
    transition: color 0.28s ease, opacity 0.28s ease, transform 0.28s ease;
}

body:not(.wp-admin) .oc-menu-primary a {
    color: rgba(251, 246, 241, 0.92) !important;
    font-size: clamp(44px, 5.4vw, 74px) !important;
    font-weight: 300 !important;
    line-height: 0.96 !important;
}

body:not(.wp-admin) .oc-menu-secondary a {
    color: rgba(251, 246, 241, 0.66) !important;
    font-size: clamp(22px, 2.3vw, 34px) !important;
    font-weight: 300 !important;
    line-height: 1.16 !important;
}

body:not(.wp-admin) .oc-menu-primary a::after,
body:not(.wp-admin) .oc-menu-secondary a::after {
    position: absolute;
    right: 0;
    bottom: -0.18em;
    left: 0;
    height: 1px;
    background: currentColor;
    content: "";
    opacity: 0;
    transform: scaleX(0);
    transform-origin: left;
    transition: opacity 0.28s ease, transform 0.28s ease;
}

body:not(.wp-admin) .oc-menu-primary a.is-active,
body:not(.wp-admin) .oc-menu-primary a:hover,
body:not(.wp-admin) .oc-menu-secondary a.is-active,
body:not(.wp-admin) .oc-menu-secondary a:hover {
    color: var(--oc-accent) !important;
    transform: translateX(10px) !important;
}

body:not(.wp-admin) .oc-menu-primary a.is-active::after,
body:not(.wp-admin) .oc-menu-primary a:hover::after,
body:not(.wp-admin) .oc-menu-secondary a.is-active::after,
body:not(.wp-admin) .oc-menu-secondary a:hover::after {
    opacity: 0.65;
    transform: scaleX(1);
}

body:not(.wp-admin) .oc-menu-info {
    align-self: center !important;
    max-width: 430px !important;
    margin: 0 !important;
    padding-left: clamp(28px, 4vw, 54px) !important;
    border-left: 1px solid rgba(157, 128, 102, 0.32);
}

body:not(.wp-admin) .oc-menu-info h2 {
    margin: 0 0 24px !important;
    color: rgba(251, 246, 241, 0.94) !important;
    font-family: var(--oc-sans) !important;
    font-size: clamp(42px, 4vw, 58px) !important;
    font-weight: 300 !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
}

body:not(.wp-admin) .oc-menu-info p {
    max-width: 360px;
    margin: 0 0 14px !important;
    color: rgba(251, 246, 241, 0.62) !important;
    font-size: clamp(14px, 1.15vw, 16px) !important;
    line-height: 1.75 !important;
}

@media (max-width: 980px) {
    body:not(.wp-admin) .oc-menu-columns {
        width: min(720px, calc(100vw - 48px)) !important;
        min-height: auto !important;
        grid-template-columns: 1fr !important;
        gap: 34px !important;
        align-items: start !important;
        margin-top: 112px !important;
    }

    body:not(.wp-admin) .oc-menu-primary a {
        font-size: clamp(36px, 11.5vw, 58px) !important;
        line-height: 1.02 !important;
    }

    body:not(.wp-admin) .oc-menu-secondary a {
        font-size: clamp(20px, 6vw, 28px) !important;
        line-height: 1.18 !important;
    }

    body:not(.wp-admin) .oc-menu-info {
        max-width: none !important;
        padding-top: 28px !important;
        padding-left: 0 !important;
        border-top: 1px solid rgba(157, 128, 102, 0.28);
        border-left: 0;
    }
}

@media (max-width: 520px) {
    body:not(.wp-admin) .oc-menu-popup-inner {
        padding-right: 18px !important;
        padding-left: 18px !important;
    }

    body:not(.wp-admin) .oc-menu-columns {
        width: 100% !important;
        margin-top: 94px !important;
    }

    body:not(.wp-admin) .oc-menu-primary a {
        font-size: clamp(34px, 10.8vw, 48px) !important;
    }
}

/* Footer brand alignment. */
body:not(.wp-admin) .oc-footer-main > h3,
body:not(.wp-admin) .oc-newsletter h3 {
    width: min(980px, calc(100% - 40px)) !important;
    margin-right: auto !important;
    margin-left: auto !important;
    text-align: center !important;
}

body:not(.wp-admin) .oc-footer-main .oc-footer-intro {
    max-width: 620px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    text-align: center !important;
}

/* Make Orologio ellipse ornaments visible enough to read as intentional UI. */
body:not(.wp-admin) .oc-orbit {
    z-index: 1 !important;
    color: #b7a796 !important;
    opacity: 0.48 !important;
    mix-blend-mode: multiply;
}

body:not(.wp-admin) .oc-orbit svg {
    filter: none;
}

body:not(.wp-admin) .oc-orbit-ellipse {
    stroke-width: 0.86 !important;
    stroke-dasharray: 5 9 !important;
}

body:not(.wp-admin) .oc-orbit-collections {
    top: clamp(84px, 10vw, 145px) !important;
    right: clamp(-120px, -5vw, -48px) !important;
    opacity: 0.34 !important;
}

body:not(.wp-admin) .oc-hero > :not(.oc-orbit) {
    position: relative;
    z-index: 2;
}

body:not(.wp-admin) .oc-orbit-hero {
    top: clamp(220px, 27vw, 360px) !important;
    left: 50% !important;
    z-index: 1 !important;
    width: min(980px, 88vw) !important;
    color: #9d8066 !important;
    opacity: 0.42 !important;
    mix-blend-mode: normal;
    transform: translateX(-50%) rotate(-7deg);
}

body:not(.wp-admin) .oc-orbit-editorial {
    opacity: 0.58 !important;
}

body:not(.wp-admin) .oc-orbit-brand {
    left: clamp(-95px, -4vw, -32px) !important;
    opacity: 0.32 !important;
}

body:not(.wp-admin) .oc-orbit-latest,
body:not(.wp-admin) .oc-orbit-footer {
    color: #9d8066 !important;
    opacity: 0.36 !important;
    mix-blend-mode: normal;
}

body:not(.wp-admin) .oc-orbit-footer {
    right: clamp(-120px, -5vw, -42px) !important;
}

@media (max-width: 760px) {
    body:not(.wp-admin) .oc-orbit {
        opacity: 0.4 !important;
    }

    body:not(.wp-admin) .oc-orbit-collections,
    body:not(.wp-admin) .oc-orbit-hero,
    body:not(.wp-admin) .oc-orbit-brand,
    body:not(.wp-admin) .oc-orbit-latest,
    body:not(.wp-admin) .oc-orbit-footer {
        right: -42vw !important;
    }

    body:not(.wp-admin) .oc-orbit-hero {
        top: 260px !important;
        left: 50% !important;
        right: auto !important;
        width: 128vw !important;
        opacity: 0.32 !important;
    }
}

/* Home product cards: match category/archive product UI language. */
body:not(.wp-admin) .orologio-clone .oc-products {
    background: #fff !important;
}

body:not(.wp-admin) .orologio-clone .oc-products .oc-product-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: clamp(42px, 4.8vw, 76px) clamp(22px, 4vw, 54px) !important;
}

body:not(.wp-admin) .orologio-clone .oc-products .oc-product-card {
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: none;
}

body:not(.wp-admin) .orologio-clone .oc-products .oc-product-card:hover {
    transform: none !important;
}

body:not(.wp-admin) .orologio-clone .oc-products .oc-product-image {
    aspect-ratio: 8 / 11 !important;
    background: #f7f3ef !important;
    box-shadow: none !important;
}

body:not(.wp-admin) .orologio-clone .oc-products .oc-product-image img {
    width: 100% !important;
    height: 100% !important;
    padding: clamp(30px, 3.8vw, 56px) !important;
    object-fit: contain !important;
    object-position: center !important;
    mix-blend-mode: multiply;
    transform: none !important;
}

body:not(.wp-admin) .orologio-clone .oc-products .oc-product-card:hover .oc-product-image img {
    transform: scale(1.025) !important;
}

body:not(.wp-admin) .orologio-clone .oc-products .oc-product-body {
    min-height: 0 !important;
    padding: 24px 8px 0 !important;
}

body:not(.wp-admin) .orologio-clone .oc-products .oc-product-eyebrow {
    display: none !important;
}

body:not(.wp-admin) .orologio-clone .oc-products .oc-product-body h3 {
    display: -webkit-box;
    min-height: 58px;
    margin: 0 !important;
    overflow: hidden;
    color: #11100f;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: clamp(21px, 2vw, 28px) !important;
    font-weight: 400 !important;
    line-height: 1.12 !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

body:not(.wp-admin) .orologio-clone .oc-products .oc-product-body h3 a {
    color: inherit;
    text-decoration: none;
}

body:not(.wp-admin) .orologio-clone .oc-products .oc-product-benefit {
    display: -webkit-box;
    min-height: 44px;
    margin: 12px 0 18px !important;
    overflow: hidden;
    color: rgba(17, 16, 15, 0.58) !important;
    font-size: 11px !important;
    line-height: 1.55 !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

body:not(.wp-admin) .orologio-clone .oc-products .oc-price {
    margin: 0 0 18px !important;
    color: #11100f !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 19px !important;
    font-weight: 400 !important;
}

body:not(.wp-admin) .orologio-clone .oc-products .oc-product-card-actions {
    display: grid !important;
    justify-items: center;
    gap: 10px !important;
}

body:not(.wp-admin) .orologio-clone .oc-products .oc-cart-link {
    min-width: 158px !important;
    border: 1px solid #9d8066 !important;
    border-radius: 999px !important;
    background: transparent !important;
    color: #11100f !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase;
}

body:not(.wp-admin) .orologio-clone .oc-products .oc-cart-link:hover {
    background: #9d8066 !important;
    color: #fff !important;
}

body:not(.wp-admin) .orologio-clone .oc-products .oc-detail-link {
    display: none !important;
}

@media (max-width: 980px) {
    body:not(.wp-admin) .orologio-clone .oc-products .oc-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 34px 18px !important;
    }
}

@media (max-width: 479px) {
    body:not(.wp-admin) .orologio-clone .oc-products .oc-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 30px 14px !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-products .oc-product-image img {
        padding: 20px !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-products .oc-product-body {
        padding-top: 16px !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-products .oc-product-body h3 {
        min-height: 46px;
        font-size: clamp(16px, 4.8vw, 20px) !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-products .oc-product-benefit {
        min-height: 36px;
        margin-bottom: 14px !important;
        font-size: 10px !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-products .oc-cart-link {
        min-width: 0 !important;
        width: 100% !important;
        padding: 10px 12px !important;
        font-size: 9px !important;
    }
}

/* Latest signature section: separate staged images so they do not collide. */
body:not(.wp-admin) .orologio-clone .oc-latest {
    display: grid !important;
    min-height: clamp(980px, 82vw, 1180px) !important;
    align-content: start !important;
    justify-items: center !important;
    overflow: hidden !important;
    padding: clamp(92px, 8vw, 124px) clamp(20px, 5vw, 72px) clamp(72px, 7vw, 110px) !important;
    background: #020202 !important;
    text-align: center !important;
}

body:not(.wp-admin) .orologio-clone .oc-latest-copy {
    position: relative !important;
    z-index: 4 !important;
    display: flex !important;
    width: min(780px, 92vw) !important;
    flex-direction: column !important;
    align-items: center !important;
    margin: 0 auto clamp(64px, 7vw, 106px) !important;
}

body:not(.wp-admin) .orologio-clone .oc-latest .oc-button {
    position: static !important;
    margin-top: clamp(24px, 3vw, 36px) !important;
    transform: none !important;
}

body:not(.wp-admin) .orologio-clone .oc-latest .oc-button:hover {
    transform: translateY(-2px) !important;
}

body:not(.wp-admin) .orologio-clone .oc-latest-images {
    position: relative !important;
    inset: auto !important;
    z-index: 2 !important;
    display: grid !important;
    width: min(1060px, 92vw) !important;
    min-height: clamp(430px, 43vw, 620px) !important;
    grid-template-columns: minmax(0, 1fr) minmax(180px, 0.34fr) !important;
    gap: clamp(22px, 3.2vw, 44px) !important;
    align-items: end !important;
    margin: 0 auto !important;
    opacity: 1 !important;
    pointer-events: auto !important;
}

body:not(.wp-admin) .orologio-clone .oc-latest-images::after {
    content: none !important;
}

body:not(.wp-admin) .orologio-clone .oc-latest-main,
body:not(.wp-admin) .orologio-clone .oc-latest-float {
    position: relative !important;
    inset: auto !important;
    display: block !important;
    width: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    filter: brightness(0.88) contrast(1.04) !important;
}

body:not(.wp-admin) .orologio-clone .oc-latest-main {
    height: clamp(430px, 43vw, 620px) !important;
    border: 0 !important;
}

body:not(.wp-admin) .orologio-clone .oc-latest-float {
    align-self: center !important;
    height: clamp(220px, 22vw, 310px) !important;
    box-shadow: 0 26px 74px rgba(0, 0, 0, 0.44) !important;
    transform: none !important;
}

body:not(.wp-admin) .orologio-clone .oc-orbit-latest {
    right: auto !important;
    bottom: clamp(210px, 22vw, 330px) !important;
    left: 50% !important;
    width: min(980px, 82vw) !important;
    opacity: 0.28 !important;
    transform: translateX(-50%) rotate(-7deg);
}

@media (max-width: 900px) {
    body:not(.wp-admin) .orologio-clone .oc-latest {
        min-height: auto !important;
        padding-bottom: 72px !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-latest-copy {
        margin-bottom: 48px !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-latest-images {
        width: min(680px, 92vw) !important;
        min-height: auto !important;
        grid-template-columns: 1fr !important;
        gap: 18px !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-latest-main {
        height: min(68vw, 470px) !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-latest-float {
        justify-self: end !important;
        width: min(270px, 52vw) !important;
        height: min(190px, 38vw) !important;
        margin-top: 0 !important;
        transform: none !important;
    }
}

@media (max-width: 520px) {
    body:not(.wp-admin) .orologio-clone .oc-latest {
        padding-top: 72px !important;
        padding-right: 18px !important;
        padding-left: 18px !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-latest-main {
        height: 360px !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-latest-float {
        width: min(190px, 56vw) !important;
        height: 132px !important;
        margin-top: 0 !important;
    }
}

/* Hero orbit correction: keep the Orologio ellipse centered and decorative. */
body:not(.wp-admin) .orologio-clone .oc-hero {
    isolation: isolate;
}

body:not(.wp-admin) .orologio-clone .oc-hero::after {
    z-index: 3;
}

body:not(.wp-admin) .orologio-clone .oc-hero > :not(.oc-orbit) {
    z-index: 4;
}

body:not(.wp-admin) .orologio-clone .oc-hero .oc-hero-product {
    z-index: 2;
}

body:not(.wp-admin) .orologio-clone .oc-orbit-hero {
    top: 42% !important;
    right: auto !important;
    bottom: auto !important;
    left: 50% !important;
    z-index: 1 !important;
    width: min(1280px, 94vw) !important;
    max-width: none !important;
    color: #9d8066 !important;
    opacity: 0.24 !important;
    mix-blend-mode: normal !important;
    transform: translate(-50%, -50%) rotate(-7deg) !important;
}

body:not(.wp-admin) .orologio-clone .oc-orbit-hero svg {
    animation-duration: 56s;
}

@media (max-width: 760px) {
    body:not(.wp-admin) .orologio-clone .oc-orbit-hero {
        top: 43% !important;
        right: auto !important;
        left: 50% !important;
        width: min(760px, 128vw) !important;
        opacity: 0.2 !important;
        transform: translate(-50%, -50%) rotate(-7deg) !important;
    }
}

/* Rollback: remove all ellipse/orbit decorations from the storefront. */
body:not(.wp-admin) .oc-orbit,
body:not(.wp-admin) .orologio-clone .oc-orbit,
body:not(.wp-admin) .oc-footer-main .oc-orbit {
    display: none !important;
}

/* Hero layout rollback: keep title readable and product image visible. */
body:not(.wp-admin) .orologio-clone .oc-hero {
    min-height: 100svh !important;
    padding-right: clamp(18px, 5vw, 88px) !important;
    padding-left: clamp(18px, 5vw, 88px) !important;
}

body:not(.wp-admin) .orologio-clone .oc-hero-product {
    top: 55% !important;
    left: 50% !important;
    z-index: 1 !important;
    width: min(1120px, 82vw) !important;
    aspect-ratio: 16 / 9 !important;
    background: var(--oc-hero-image) center center / contain no-repeat !important;
    filter: brightness(1.1) contrast(1.08) saturate(1.04) !important;
    transform: translate(-50%, -42%) !important;
}

body:not(.wp-admin) .orologio-clone .oc-hero-heading {
    z-index: 4 !important;
    width: min(760px, 92vw) !important;
    max-width: 760px !important;
    padding-top: clamp(124px, 13vh, 156px) !important;
}

body:not(.wp-admin) .orologio-clone .oc-hero h1 {
    width: 100% !important;
    max-width: 760px !important;
    overflow: visible !important;
    color: #fff !important;
    font-size: clamp(46px, 5.2vw, 78px) !important;
    line-height: 0.92 !important;
    text-align: center !important;
}

body:not(.wp-admin) .orologio-clone .oc-hero h1 span {
    display: block !important;
    white-space: normal !important;
}

body:not(.wp-admin) .orologio-clone .oc-hero h1 em {
    font-size: 0.58em !important;
    line-height: 0.9 !important;
}

body:not(.wp-admin) .orologio-clone .oc-hero-copy {
    z-index: 4 !important;
    bottom: clamp(46px, 7vh, 82px) !important;
    left: clamp(22px, 16vw, 260px) !important;
    width: min(430px, calc(100vw - 44px)) !important;
    color: rgba(255, 255, 255, 0.82) !important;
}

body:not(.wp-admin) .orologio-clone .oc-hero-cta {
    z-index: 4 !important;
    right: clamp(22px, 16vw, 260px) !important;
    bottom: clamp(44px, 6.7vh, 78px) !important;
}

@media (max-width: 760px) {
    body:not(.wp-admin) .orologio-clone .oc-hero {
        min-height: 780px !important;
        padding-right: 18px !important;
        padding-left: 18px !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-hero-product {
        top: 53% !important;
        width: 112vw !important;
        transform: translate(-50%, -38%) !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-hero-heading {
        width: min(460px, 92vw) !important;
        padding-top: 118px !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-hero h1 {
        font-size: clamp(38px, 10.5vw, 54px) !important;
        line-height: 0.98 !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-hero-copy,
    body:not(.wp-admin) .orologio-clone .oc-hero-cta {
        right: auto !important;
        left: 50% !important;
        width: min(420px, calc(100vw - 36px)) !important;
        text-align: center !important;
        transform: translateX(-50%) !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-hero-copy {
        bottom: 112px !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-hero-cta {
        bottom: 44px !important;
        width: auto !important;
    }
}

/* Hero v2: clean fixed staging, independent from old hero child rules. */
body:not(.wp-admin) .orologio-clone .oc-hero-v2 {
    position: relative !important;
    display: grid !important;
    min-height: 100svh !important;
    grid-template-rows: auto 1fr auto !important;
    align-items: center !important;
    overflow: hidden !important;
    padding: clamp(108px, 12vh, 148px) clamp(22px, 5vw, 92px) clamp(46px, 7vh, 82px) !important;
    background: #000 !important;
    isolation: isolate !important;
}

body:not(.wp-admin) .orologio-clone .oc-hero-v2::after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 2 !important;
    pointer-events: none !important;
    background:
        radial-gradient(ellipse at 50% 52%, rgba(0,0,0,0) 0%, rgba(0,0,0,0.08) 38%, rgba(0,0,0,0.62) 78%, rgba(0,0,0,0.96) 100%),
        linear-gradient(180deg, rgba(0,0,0,0.76) 0%, rgba(0,0,0,0.14) 32%, rgba(0,0,0,0.18) 68%, rgba(0,0,0,0.86) 100%) !important;
}

body:not(.wp-admin) .orologio-clone .oc-hero-v2-media {
    position: absolute !important;
    inset: clamp(74px, 9vh, 104px) 0 clamp(108px, 14vh, 148px) !important;
    z-index: 1 !important;
    background-image: var(--oc-hero-image) !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: min(1120px, 82vw) auto !important;
    filter: brightness(1.12) contrast(1.08) saturate(1.05) !important;
}

body:not(.wp-admin) .orologio-clone .oc-hero-v2-heading {
    position: relative !important;
    z-index: 4 !important;
    width: min(760px, 92vw) !important;
    justify-self: center !important;
    margin: 0 auto !important;
    padding: 0 !important;
    text-align: center !important;
}

body:not(.wp-admin) .orologio-clone .oc-hero-v2-heading .oc-kicker {
    margin-bottom: 14px !important;
    color: rgba(255, 255, 255, 0.9) !important;
}

body:not(.wp-admin) .orologio-clone .oc-hero-v2 h1 {
    width: 100% !important;
    max-width: 760px !important;
    margin: 0 auto !important;
    overflow: visible !important;
    color: #fff !important;
    font-size: clamp(48px, 5.1vw, 78px) !important;
    line-height: 0.92 !important;
    text-align: center !important;
}

body:not(.wp-admin) .orologio-clone .oc-hero-v2 h1 span {
    display: block !important;
    white-space: normal !important;
}

body:not(.wp-admin) .orologio-clone .oc-hero-v2 h1 em {
    color: var(--oc-accent) !important;
    font-size: 0.58em !important;
    font-style: italic !important;
    line-height: 0.9 !important;
}

body:not(.wp-admin) .orologio-clone .oc-hero-v2-bottom {
    position: relative !important;
    z-index: 4 !important;
    display: grid !important;
    width: min(880px, 100%) !important;
    grid-template-columns: minmax(0, 430px) auto !important;
    justify-content: space-between !important;
    align-items: end !important;
    gap: 28px !important;
    justify-self: center !important;
    margin-top: clamp(340px, 38vh, 460px) !important;
}

body:not(.wp-admin) .orologio-clone .oc-hero-v2-bottom p {
    max-width: 430px !important;
    margin: 0 !important;
    color: rgba(255, 255, 255, 0.82) !important;
    font-size: 15px !important;
    line-height: 1.62 !important;
}

body:not(.wp-admin) .orologio-clone .oc-hero-v2-bottom .oc-button {
    min-width: 174px !important;
    white-space: nowrap !important;
}

@media (max-width: 900px) {
    body:not(.wp-admin) .orologio-clone .oc-hero-v2 {
        min-height: 820px !important;
        padding-top: 112px !important;
        padding-bottom: 42px !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-hero-v2-media {
        inset: 150px 0 154px !important;
        background-size: 118vw auto !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-hero-v2 h1 {
        font-size: clamp(40px, 11vw, 58px) !important;
        line-height: 0.98 !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-hero-v2-bottom {
        width: min(460px, 92vw) !important;
        grid-template-columns: 1fr !important;
        justify-items: center !important;
        margin-top: 380px !important;
        text-align: center !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-hero-v2-bottom p {
        max-width: 420px !important;
    }
}

/* Latest signature image stage: keep floating preview inside the viewport. */
body:not(.wp-admin) .orologio-clone .oc-latest-images {
    position: relative !important;
    display: block !important;
    width: min(900px, calc(100vw - 96px)) !important;
    min-height: clamp(430px, 43vw, 600px) !important;
    margin-right: auto !important;
    margin-left: auto !important;
    overflow: visible !important;
}

body:not(.wp-admin) .orologio-clone .oc-latest-main {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: clamp(430px, 43vw, 600px) !important;
    object-fit: cover !important;
    object-position: center !important;
}

body:not(.wp-admin) .orologio-clone .oc-latest-float {
    position: absolute !important;
    right: clamp(18px, 3.2vw, 42px) !important;
    bottom: clamp(22px, 4vw, 58px) !important;
    left: auto !important;
    z-index: 3 !important;
    width: min(250px, 24vw) !important;
    min-width: 178px !important;
    height: auto !important;
    aspect-ratio: 4 / 3 !important;
    object-fit: cover !important;
    object-position: center !important;
    box-shadow: 0 28px 76px rgba(0, 0, 0, 0.52) !important;
    transform: translateY(var(--oc-float-y, 0px)) rotate(2deg) !important;
    transform-origin: center !important;
}

@media (max-width: 900px) {
    body:not(.wp-admin) .orologio-clone .oc-latest-images {
        width: min(680px, calc(100vw - 40px)) !important;
        min-height: 430px !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-latest-main {
        height: 430px !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-latest-float {
        right: 18px !important;
        bottom: 18px !important;
        width: min(210px, 46vw) !important;
        min-width: 0 !important;
    }
}

/* Editorial crafted section: clean Orologio rhythm without image overlap. */
body:not(.wp-admin) .orologio-clone .oc-editorial {
    display: grid !important;
    min-height: auto !important;
    align-items: start !important;
    justify-items: center !important;
    overflow: hidden !important;
    margin-right: calc(50% - 50vw) !important;
    margin-left: calc(50% - 50vw) !important;
    padding: clamp(96px, 9vw, 138px) clamp(22px, 5vw, 82px) clamp(78px, 8vw, 118px) !important;
    background: #fff !important;
    color: #11100f !important;
    text-align: center !important;
}

body:not(.wp-admin) .orologio-clone .oc-editorial::after {
    content: none !important;
}

body:not(.wp-admin) .orologio-clone .oc-editorial-copy {
    display: grid !important;
    width: min(1040px, 94vw) !important;
    grid-template-columns: 1fr !important;
    justify-items: center !important;
    gap: 0 !important;
    margin: 0 auto !important;
    text-align: center !important;
}

body:not(.wp-admin) .orologio-clone .oc-editorial-copy .oc-kicker {
    margin: 0 0 18px !important;
    color: #9d8066 !important;
}

body:not(.wp-admin) .orologio-clone .oc-editorial-copy h2 {
    max-width: 980px !important;
    margin: 0 auto !important;
    color: #11100f !important;
    font-size: clamp(48px, 7vw, 92px) !important;
    line-height: 0.98 !important;
    text-align: center !important;
}

body:not(.wp-admin) .orologio-clone .oc-editorial-copy h2 em {
    color: #9d8066 !important;
    font-size: 0.72em !important;
    font-style: italic !important;
}

body:not(.wp-admin) .orologio-clone .oc-editorial-copy p:not(.oc-kicker) {
    width: min(720px, 92vw) !important;
    margin: clamp(24px, 3vw, 36px) auto 0 !important;
    color: rgba(17, 16, 15, 0.66) !important;
    font-size: 16px !important;
    line-height: 1.72 !important;
    text-align: center !important;
}

body:not(.wp-admin) .orologio-clone .oc-editorial-media {
    position: relative !important;
    display: grid !important;
    width: min(960px, 92vw) !important;
    grid-template-columns: minmax(0, 0.86fr) minmax(0, 1fr) !important;
    gap: clamp(18px, 2.8vw, 34px) !important;
    align-items: end !important;
    justify-self: center !important;
    margin: clamp(46px, 5vw, 72px) auto 0 !important;
}

body:not(.wp-admin) .orologio-clone .oc-editorial-media img,
body:not(.wp-admin) .orologio-clone .oc-editorial-media img:first-child {
    display: block !important;
    width: 100% !important;
    height: clamp(320px, 34vw, 500px) !important;
    object-fit: cover !important;
    object-position: center !important;
    transform: none !important;
    box-shadow: none !important;
}

body:not(.wp-admin) .orologio-clone .oc-editorial-media img:first-child {
    height: clamp(280px, 30vw, 430px) !important;
}

@media (max-width: 760px) {
    body:not(.wp-admin) .orologio-clone .oc-editorial {
        padding: 76px 18px 78px !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-editorial-copy h2 {
        font-size: clamp(36px, 11vw, 54px) !important;
        line-height: 1.04 !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-editorial-copy p:not(.oc-kicker) {
        font-size: 15px !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-editorial-media {
        width: min(430px, 92vw) !important;
        grid-template-columns: 1fr !important;
        margin-top: 34px !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-editorial-media img,
    body:not(.wp-admin) .orologio-clone .oc-editorial-media img:first-child {
        height: 300px !important;
    }
}

/* Latest signature compact pass: remove large main visual, keep one refined accent. */
body:not(.wp-admin) .orologio-clone .oc-latest {
    display: grid !important;
    min-height: auto !important;
    grid-template-columns: minmax(0, 620px) minmax(260px, 420px) !important;
    align-items: center !important;
    justify-content: center !important;
    gap: clamp(34px, 6vw, 88px) !important;
    padding: clamp(86px, 8vw, 118px) clamp(24px, 6vw, 96px) !important;
    background: #020202 !important;
    text-align: left !important;
}

body:not(.wp-admin) .orologio-clone .oc-latest-copy {
    width: auto !important;
    max-width: 620px !important;
    align-items: flex-start !important;
    margin: 0 !important;
    text-align: left !important;
}

body:not(.wp-admin) .orologio-clone .oc-latest-copy .oc-kicker {
    color: rgba(255, 255, 255, 0.82) !important;
}

body:not(.wp-admin) .orologio-clone .oc-latest h2 {
    max-width: 620px !important;
    margin: 0 !important;
    color: #fff !important;
    font-size: clamp(50px, 6vw, 84px) !important;
    line-height: 0.94 !important;
    text-align: left !important;
}

body:not(.wp-admin) .orologio-clone .oc-latest h3 {
    max-width: 560px !important;
    margin-top: 20px !important;
    color: rgba(255, 255, 255, 0.82) !important;
    font-size: clamp(22px, 2.4vw, 32px) !important;
    line-height: 1.22 !important;
    text-align: left !important;
}

body:not(.wp-admin) .orologio-clone .oc-latest-images {
    display: block !important;
    width: min(420px, 32vw) !important;
    min-width: 260px !important;
    min-height: 0 !important;
    margin: 0 !important;
    justify-self: end !important;
}

body:not(.wp-admin) .orologio-clone .oc-latest-main {
    display: none !important;
}

body:not(.wp-admin) .orologio-clone .oc-latest-float {
    position: relative !important;
    inset: auto !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    aspect-ratio: 4 / 3 !important;
    object-fit: cover !important;
    object-position: center !important;
    box-shadow: none !important;
    transform: translateY(var(--oc-float-y, 0px)) !important;
}

@media (max-width: 900px) {
    body:not(.wp-admin) .orologio-clone .oc-latest {
        grid-template-columns: 1fr !important;
        justify-items: center !important;
        padding: 78px 20px !important;
        text-align: center !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-latest-copy {
        align-items: center !important;
        text-align: center !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-latest h2,
    body:not(.wp-admin) .orologio-clone .oc-latest h3 {
        text-align: center !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-latest-images {
        width: min(360px, 82vw) !important;
        min-width: 0 !important;
        justify-self: center !important;
    }
}

/* Mega menu readability pass: calmer scale and balanced columns. */
body:not(.wp-admin) .oc-menu-popup-inner {
    width: min(1180px, calc(100vw - 72px)) !important;
    padding: clamp(88px, 12vh, 124px) 0 clamp(58px, 8vh, 84px) !important;
}

body:not(.wp-admin) .oc-menu-columns {
    display: grid !important;
    grid-template-columns: minmax(260px, 0.82fr) minmax(220px, 0.58fr) minmax(300px, 0.78fr) !important;
    align-items: center !important;
    gap: clamp(48px, 7vw, 92px) !important;
}

body:not(.wp-admin) .oc-menu-primary {
    max-width: 390px !important;
}

body:not(.wp-admin) .oc-menu-primary a {
    display: block !important;
    width: fit-content !important;
    max-width: 11.5ch !important;
    padding: 4px 0 8px !important;
    color: rgba(222, 235, 248, 0.82) !important;
    font-size: clamp(40px, 4.35vw, 62px) !important;
    font-weight: 300 !important;
    line-height: 0.98 !important;
    letter-spacing: 0 !important;
    text-wrap: balance !important;
}

body:not(.wp-admin) .oc-menu-secondary {
    max-width: 260px !important;
}

body:not(.wp-admin) .oc-menu-secondary a {
    padding: 7px 0 !important;
    font-size: clamp(22px, 2.3vw, 32px) !important;
    font-weight: 300 !important;
    line-height: 1.15 !important;
}

body:not(.wp-admin) .oc-menu-brand {
    max-width: 340px !important;
}

body:not(.wp-admin) .oc-menu-brand h2 {
    font-size: clamp(34px, 3.8vw, 52px) !important;
    line-height: 1 !important;
}

body:not(.wp-admin) .oc-menu-brand p {
    font-size: 14px !important;
    line-height: 1.65 !important;
}

@media (max-width: 900px) {
    body:not(.wp-admin) .oc-menu-popup-inner {
        width: min(720px, calc(100vw - 44px)) !important;
        padding-top: 82px !important;
    }

    body:not(.wp-admin) .oc-menu-columns {
        grid-template-columns: 1fr !important;
        align-items: start !important;
        gap: 34px !important;
    }

    body:not(.wp-admin) .oc-menu-primary a {
        max-width: 13ch !important;
        font-size: clamp(34px, 10vw, 48px) !important;
        line-height: 1.02 !important;
    }

body:not(.wp-admin) .oc-menu-secondary a {
        font-size: clamp(20px, 6vw, 27px) !important;
    }
}

/* About/history page: Orologio history-inspired Parker storytelling. */
body:not(.wp-admin) .orologio-clone .oc-history-intro {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 420px);
    gap: clamp(32px, 7vw, 108px);
    align-items: end;
    padding: clamp(92px, 9vw, 142px) clamp(24px, 6vw, 92px) clamp(66px, 7vw, 104px);
    background: #fff;
    color: #11100f;
}

body:not(.wp-admin) .orologio-clone .oc-history-heading h2 {
    max-width: 900px;
    margin: 0;
    font-family: var(--oc-type-display, Georgia, serif) !important;
    font-size: clamp(58px, 8vw, 116px) !important;
    font-weight: 400 !important;
    line-height: 0.96 !important;
    text-transform: uppercase;
}

body:not(.wp-admin) .orologio-clone .oc-history-heading h2 em {
    color: #9d8066;
    font-style: italic;
    text-transform: lowercase;
}

body:not(.wp-admin) .orologio-clone .oc-history-lead {
    display: grid;
    gap: 18px;
    color: rgba(17, 16, 15, 0.66);
    font-size: 16px;
    line-height: 1.74;
}

body:not(.wp-admin) .orologio-clone .oc-history-portrait,
body:not(.wp-admin) .orologio-clone .oc-history-gift {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 0.8fr);
    gap: clamp(34px, 6vw, 92px);
    align-items: center;
    padding: clamp(76px, 8vw, 118px) clamp(24px, 6vw, 92px);
    background: #f8f3ee;
}

body:not(.wp-admin) .orologio-clone .oc-history-portrait img,
body:not(.wp-admin) .orologio-clone .oc-history-gift img {
    width: 100%;
    height: clamp(420px, 42vw, 620px);
    object-fit: cover;
    object-position: center;
}

body:not(.wp-admin) .orologio-clone .oc-history-portrait h2,
body:not(.wp-admin) .orologio-clone .oc-history-gift h2,
body:not(.wp-admin) .orologio-clone .oc-history-timeline header h2 {
    margin: 0 0 22px;
    font-family: var(--oc-type-display, Georgia, serif) !important;
    font-size: clamp(42px, 5vw, 72px) !important;
    font-weight: 400 !important;
    line-height: 1.02 !important;
}

body:not(.wp-admin) .orologio-clone .oc-history-portrait p:not(.oc-kicker),
body:not(.wp-admin) .orologio-clone .oc-history-gift p {
    max-width: 560px;
    color: rgba(17, 16, 15, 0.66);
    line-height: 1.74;
}

body:not(.wp-admin) .orologio-clone .oc-history-timeline {
    padding: clamp(84px, 8vw, 124px) clamp(24px, 6vw, 92px);
    background: #fff;
}

body:not(.wp-admin) .orologio-clone .oc-history-timeline header {
    max-width: 760px;
    margin: 0 auto clamp(46px, 5vw, 72px);
    text-align: center;
}

body:not(.wp-admin) .orologio-clone .oc-history-years,
body:not(.wp-admin) .orologio-clone .oc-history-values {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    border-top: 1px solid #d8ccc2;
    border-left: 1px solid #d8ccc2;
}

body:not(.wp-admin) .orologio-clone .oc-history-years article,
body:not(.wp-admin) .orologio-clone .oc-history-values article {
    min-height: 260px;
    border-right: 1px solid #d8ccc2;
    border-bottom: 1px solid #d8ccc2;
    padding: clamp(26px, 3vw, 42px);
}

body:not(.wp-admin) .orologio-clone .oc-history-years span,
body:not(.wp-admin) .orologio-clone .oc-history-values span {
    display: block;
    margin-bottom: 34px;
    color: #9d8066;
    font-family: var(--oc-type-display, Georgia, serif) !important;
    font-size: 34px;
}

body:not(.wp-admin) .orologio-clone .oc-history-years h3,
body:not(.wp-admin) .orologio-clone .oc-history-values h3 {
    margin: 0 0 14px;
    font-size: 22px;
}

body:not(.wp-admin) .orologio-clone .oc-history-years p,
body:not(.wp-admin) .orologio-clone .oc-history-values p {
    color: rgba(17, 16, 15, 0.62);
    line-height: 1.68;
}

body:not(.wp-admin) .orologio-clone .oc-history-gift {
    grid-template-columns: minmax(320px, 0.78fr) minmax(0, 1fr);
    background: #050505;
    color: #fff;
}

body:not(.wp-admin) .orologio-clone .oc-history-gift p {
    color: rgba(255, 255, 255, 0.72);
}

body:not(.wp-admin) .orologio-clone .oc-history-gift .oc-button {
    margin-top: 18px;
}

body:not(.wp-admin) .orologio-clone .oc-history-values {
    margin: 0 clamp(24px, 6vw, 92px) clamp(82px, 8vw, 120px);
    background: #fff;
}

@media (max-width: 860px) {
    body:not(.wp-admin) .orologio-clone .oc-history-intro,
    body:not(.wp-admin) .orologio-clone .oc-history-portrait,
    body:not(.wp-admin) .orologio-clone .oc-history-gift {
        grid-template-columns: 1fr;
    }

    body:not(.wp-admin) .orologio-clone .oc-history-years,
    body:not(.wp-admin) .orologio-clone .oc-history-values {
        grid-template-columns: 1fr;
    }

    body:not(.wp-admin) .orologio-clone .oc-history-heading h2 {
        font-size: clamp(42px, 12vw, 64px) !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-history-portrait img,
    body:not(.wp-admin) .orologio-clone .oc-history-gift img {
        height: 360px;
    }
}

/* History page restart - section 1 only, cloned from Orologio History rhythm. */
body:not(.wp-admin) .orologio-clone .oc-history-hero-section {
    min-height: calc(100svh - 92px);
    padding: clamp(82px, 9vw, 126px) clamp(22px, 4.6vw, 70px) clamp(58px, 6vw, 90px);
    background:
        linear-gradient(180deg, rgba(0, 0, 0, 0.72) 0%, rgba(0, 0, 0, 0.28) 42%, rgba(0, 0, 0, 0.88) 100%),
        linear-gradient(90deg, rgba(0, 0, 0, 0.74) 0%, rgba(0, 0, 0, 0.18) 48%, rgba(0, 0, 0, 0.52) 100%),
        url("/wp-content/uploads/parker-duofold-hero.jpg") center / cover no-repeat;
    color: #fff;
    overflow: hidden;
}

body:not(.wp-admin) .orologio-clone .oc-history-hero-inner {
    display: grid;
    width: min(1220px, 100%);
    min-height: 100%;
    margin: 0 auto;
    grid-template-rows: auto 1fr;
    gap: clamp(34px, 4vw, 58px);
}

body:not(.wp-admin) .orologio-clone .oc-history-hero-title {
    text-align: center;
}

body:not(.wp-admin) .orologio-clone .oc-history-hero-title p {
    margin: 0 0 14px;
    color: rgba(255, 255, 255, 0.82);
    font-size: 12px !important;
    font-weight: 700;
    letter-spacing: 0.16em;
    line-height: 1.2;
    text-transform: uppercase;
}

body:not(.wp-admin) .orologio-clone .oc-history-hero-title h1 {
    margin: 0;
    color: #fff;
    font-family: var(--oc-type-display, Georgia, serif) !important;
    font-size: clamp(68px, 8.2vw, 116px) !important;
    font-weight: 400 !important;
    line-height: 0.92 !important;
    letter-spacing: 0 !important;
}

body:not(.wp-admin) .orologio-clone .oc-history-hero-title h1 em {
    font-style: italic;
    font-size: 0.72em;
    text-transform: none;
}

body:not(.wp-admin) .orologio-clone .oc-history-quote-stage {
    position: relative;
    display: grid;
    min-height: clamp(300px, 32vw, 460px);
    grid-template-columns: minmax(0, 1fr) minmax(260px, 360px);
    align-items: start;
    gap: clamp(26px, 4vw, 64px);
}

body:not(.wp-admin) .orologio-clone .oc-history-quote-bg {
    position: absolute;
    inset: 0 0 auto;
    height: 100%;
    background: transparent;
    z-index: 0;
}

body:not(.wp-admin) .orologio-clone .oc-history-quote {
    position: relative;
    z-index: 1;
    align-self: start;
    max-width: 760px;
    padding-left: clamp(0px, 2vw, 28px);
}

body:not(.wp-admin) .orologio-clone .oc-history-quote h2 {
    margin: 0;
    color: #fff;
    font-family: var(--oc-type-display, Georgia, serif) !important;
    font-size: clamp(34px, 4.2vw, 58px) !important;
    font-weight: 400 !important;
    line-height: 1.08 !important;
    letter-spacing: 0 !important;
}

body:not(.wp-admin) .orologio-clone .oc-history-quote h2 em {
    font-style: italic;
    font-size: 0.82em;
}

body:not(.wp-admin) .orologio-clone .oc-history-founder {
    position: relative;
    z-index: 1;
    align-self: start;
    padding-top: clamp(8px, 3vw, 34px);
    padding-bottom: 0;
    text-align: left;
}

body:not(.wp-admin) .orologio-clone .oc-history-signature {
    margin-bottom: 16px;
    color: #fff;
    font-family: var(--oc-type-display, Georgia, serif) !important;
    font-size: clamp(34px, 3.8vw, 54px);
    line-height: 1;
}

body:not(.wp-admin) .orologio-clone .oc-history-founder p {
    max-width: 280px;
    margin: 0;
    color: rgba(255, 255, 255, 0.66);
    font-size: 13px !important;
    font-weight: 600;
    letter-spacing: 0.08em;
    line-height: 1.5;
    text-transform: uppercase;
}

@media (max-width: 860px) {
    body:not(.wp-admin) .orologio-clone .oc-history-hero-section {
        min-height: auto;
        padding-top: 82px;
    }

    body:not(.wp-admin) .orologio-clone .oc-history-quote-stage {
        min-height: auto;
        grid-template-columns: 1fr;
    }

    body:not(.wp-admin) .orologio-clone .oc-history-quote-bg {
        height: 58%;
    }

    body:not(.wp-admin) .orologio-clone .oc-history-hero-title h1 {
        font-size: clamp(58px, 17vw, 82px) !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-history-quote h2 {
        font-size: clamp(36px, 11vw, 56px) !important;
    }

    body:not(.wp-admin) .orologio-clone .oc-history-founder {
        padding-bottom: 0;
        text-align: center;
    }

    body:not(.wp-admin) .orologio-clone .oc-history-founder p {
        margin-right: auto;
        margin-left: auto;
    }
}

/* Orologio History clone - remaining sections for Parker about page. */
body:not(.wp-admin) .orologio-clone .oc-history-section {
    position: relative;
    overflow: hidden;
}

body:not(.wp-admin) .orologio-clone .oc-history-intro-cta {
    padding: clamp(82px, 9vw, 138px) clamp(22px, 4vw, 64px);
    background: #fbf6f1;
    color: #111;
}

body:not(.wp-admin) .orologio-clone .oc-history-intro-inner {
    display: grid;
    width: min(1160px, 100%);
    margin: 0 auto;
    grid-template-columns: minmax(280px, 0.82fr) minmax(340px, 0.9fr);
    align-items: start;
    gap: clamp(44px, 8vw, 130px);
}

body:not(.wp-admin) .orologio-clone .oc-history-intro-copy {
    padding-top: clamp(10px, 5vw, 84px);
}

body:not(.wp-admin) .orologio-clone .oc-history-intro-copy p {
    max-width: 470px;
    margin: 0 0 34px;
    color: rgba(17, 17, 17, 0.72);
    font-size: clamp(17px, 1.45vw, 22px) !important;
    line-height: 1.72 !important;
}

body:not(.wp-admin) .orologio-clone .oc-history-text-link {
    display: inline-flex;
    color: #111;
    font-size: 12px !important;
    font-weight: 800;
    letter-spacing: 0.18em;
    line-height: 1;
    text-decoration: none;
    text-transform: uppercase;
    border-bottom: 1px solid currentColor;
    padding-bottom: 10px;
}

body:not(.wp-admin) .orologio-clone .oc-history-intro-media {
    margin: 0;
}

body:not(.wp-admin) .orologio-clone .oc-history-intro-media img {
    display: block;
    width: 100%;
    aspect-ratio: 0.72;
    object-fit: cover;
    object-position: center;
}

body:not(.wp-admin) .orologio-clone .oc-history-family {
    background: #fff;
    color: #0b2035;
    padding: clamp(84px, 9vw, 142px) 0 clamp(72px, 8vw, 118px);
}

body:not(.wp-admin) .orologio-clone .oc-history-family-head {
    width: min(1160px, calc(100% - 44px));
    margin: 0 auto clamp(42px, 6vw, 86px);
    text-align: center;
}

body:not(.wp-admin) .orologio-clone .oc-history-family-head p,
body:not(.wp-admin) .orologio-clone .oc-history-timeline-head p,
body:not(.wp-admin) .orologio-clone .oc-history-today-copy > p:first-child,
body:not(.wp-admin) .orologio-clone .oc-history-video-caption p {
    margin: 0 0 16px;
    font-size: 12px !important;
    font-weight: 800;
    letter-spacing: 0.18em;
    line-height: 1.2;
    text-transform: uppercase;
}

body:not(.wp-admin) .orologio-clone .oc-history-family-head h2,
body:not(.wp-admin) .orologio-clone .oc-history-timeline-head h2,
body:not(.wp-admin) .orologio-clone .oc-history-today-copy h2,
body:not(.wp-admin) .orologio-clone .oc-history-video-caption h2 {
    margin: 0;
    font-family: var(--oc-type-display, Georgia, serif) !important;
    font-size: clamp(54px, 8vw, 118px) !important;
    font-weight: 400 !important;
    line-height: 0.95 !important;
    letter-spacing: 0 !important;
}

body:not(.wp-admin) .orologio-clone .oc-history-family-head em,
body:not(.wp-admin) .orologio-clone .oc-history-family-band em,
body:not(.wp-admin) .orologio-clone .oc-history-timeline-head em,
body:not(.wp-admin) .orologio-clone .oc-history-today-copy em {
    font-style: italic;
    font-size: 0.78em;
}

body:not(.wp-admin) .orologio-clone .oc-history-family-band {
    display: grid;
    min-height: clamp(270px, 31vw, 430px);
    place-items: center;
    margin: 0 0 clamp(52px, 7vw, 96px);
    background: #fff;
    text-align: center;
}

body:not(.wp-admin) .orologio-clone .oc-history-family-band h3 {
    width: min(980px, calc(100% - 36px));
    margin: 0;
    font-family: var(--oc-type-display, Georgia, serif) !important;
    font-size: clamp(42px, 6.5vw, 96px) !important;
    font-weight: 400 !important;
    line-height: 1.04 !important;
    letter-spacing: 0 !important;
}

body:not(.wp-admin) .orologio-clone .oc-history-family-gallery {
    display: grid;
    width: min(1160px, calc(100% - 44px));
    margin: 0 auto;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(20px, 3vw, 42px);
}

body:not(.wp-admin) .orologio-clone .oc-history-family-gallery article {
    margin: 0;
}

body:not(.wp-admin) .orologio-clone .oc-history-family-gallery img {
    display: block;
    width: 100%;
    aspect-ratio: 0.64;
    object-fit: cover;
    object-position: center;
}

body:not(.wp-admin) .orologio-clone .oc-history-family-gallery span {
    display: block;
    margin-top: 18px;
    color: #0b2035;
    font-size: 12px !important;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-align: center;
    text-transform: uppercase;
}

body:not(.wp-admin) .orologio-clone .oc-history-timeline-section {
    padding: clamp(86px, 9vw, 146px) clamp(22px, 4vw, 64px);
    background: #fbf6f1;
    color: #111;
}

body:not(.wp-admin) .orologio-clone .oc-history-timeline-head {
    width: min(1120px, 100%);
    margin: 0 auto clamp(48px, 6vw, 92px);
    text-align: center;
}

body:not(.wp-admin) .orologio-clone .oc-history-timeline-head h3 {
    width: min(820px, 100%);
    margin: 28px auto 0;
    color: rgba(17, 17, 17, 0.68);
    font-family: var(--oc-type-body, inherit) !important;
    font-size: clamp(19px, 2vw, 30px) !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
}

body:not(.wp-admin) .orologio-clone .oc-history-timeline-rail {
    display: grid;
    width: min(1180px, 100%);
    margin: 0 auto;
    grid-template-columns: repeat(4, minmax(260px, 1fr));
    gap: 0;
    overflow-x: auto;
    border-top: 1px solid rgba(17, 17, 17, 0.16);
    border-left: 1px solid rgba(17, 17, 17, 0.16);
    scrollbar-width: thin;
}

body:not(.wp-admin) .orologio-clone .oc-history-timeline-card {
    min-width: 260px;
    border-right: 1px solid rgba(17, 17, 17, 0.16);
    border-bottom: 1px solid rgba(17, 17, 17, 0.16);
    background: rgba(255, 255, 255, 0.28);
}

body:not(.wp-admin) .orologio-clone .oc-history-timeline-card figure {
    margin: 0;
    background: #efe8df;
}

body:not(.wp-admin) .orologio-clone .oc-history-timeline-card img {
    display: block;
    width: 100%;
    aspect-ratio: 1.05;
    object-fit: cover;
    object-position: center;
    filter: saturate(0.9);
}

body:not(.wp-admin) .orologio-clone .oc-history-timeline-card div {
    padding: clamp(22px, 3vw, 34px);
}

body:not(.wp-admin) .orologio-clone .oc-history-timeline-card span {
    display: block;
    margin-bottom: 16px;
    color: #a17a4d;
    font-family: var(--oc-type-display, Georgia, serif) !important;
    font-size: clamp(28px, 3vw, 44px);
    line-height: 1;
}

body:not(.wp-admin) .orologio-clone .oc-history-timeline-card h4 {
    margin: 0 0 14px;
    color: #111;
    font-size: 14px !important;
    font-weight: 800;
    letter-spacing: 0.12em;
    line-height: 1.35;
    text-transform: uppercase;
}

body:not(.wp-admin) .orologio-clone .oc-history-timeline-card p {
    margin: 0;
    color: rgba(17, 17, 17, 0.66);
    font-size: 14px !important;
    line-height: 1.72 !important;
}

body:not(.wp-admin) .orologio-clone .oc-history-today {
    display: grid;
    min-height: 760px;
    padding: clamp(86px, 8vw, 132px) clamp(22px, 4vw, 64px);
    grid-template-columns: minmax(0, 0.78fr) minmax(320px, 0.9fr);
    align-items: center;
    gap: clamp(42px, 8vw, 120px);
    background: #000;
    color: #fff;
}

body:not(.wp-admin) .orologio-clone .oc-history-today-copy {
    justify-self: end;
    max-width: 620px;
}

body:not(.wp-admin) .orologio-clone .oc-history-today-copy h2 {
    color: #fff;
}

body:not(.wp-admin) .orologio-clone .oc-history-today-copy p:last-child {
    max-width: 520px;
    margin: 28px 0 0;
    color: rgba(255, 255, 255, 0.72);
    font-size: clamp(17px, 1.45vw, 22px) !important;
    line-height: 1.72 !important;
}

body:not(.wp-admin) .orologio-clone .oc-history-today-media img {
    display: block;
    width: 100%;
    max-height: 650px;
    object-fit: cover;
    object-position: center;
}

body:not(.wp-admin) .orologio-clone .oc-history-video {
    padding: clamp(82px, 9vw, 140px) clamp(22px, 4vw, 64px);
    background: #000;
}

body:not(.wp-admin) .orologio-clone .oc-history-video-frame {
    position: relative;
    width: min(1180px, 100%);
    margin: 0 auto;
    overflow: hidden;
    background: #090909;
}

body:not(.wp-admin) .orologio-clone .oc-history-video-frame img {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 8.2;
    object-fit: cover;
    object-position: center;
    opacity: 0.86;
}

body:not(.wp-admin) .orologio-clone .oc-history-video-frame::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.72), rgba(0, 0, 0, 0.12) 52%, rgba(0, 0, 0, 0.72));
}

body:not(.wp-admin) .orologio-clone .oc-history-video-caption {
    position: absolute;
    z-index: 1;
    left: clamp(26px, 5vw, 78px);
    bottom: clamp(26px, 5vw, 78px);
    color: #fff;
}

body:not(.wp-admin) .orologio-clone .oc-history-video-caption h2 {
    max-width: 620px;
    color: #fff;
    font-size: clamp(42px, 6vw, 88px) !important;
}

@media (max-width: 1024px) {
    body:not(.wp-admin) .orologio-clone .oc-history-timeline-rail {
        grid-template-columns: repeat(4, minmax(300px, 1fr));
    }

    body:not(.wp-admin) .orologio-clone .oc-history-today {
        min-height: auto;
        grid-template-columns: 1fr;
    }

    body:not(.wp-admin) .orologio-clone .oc-history-today-copy {
        justify-self: start;
    }
}

@media (max-width: 760px) {
    body:not(.wp-admin) .orologio-clone .oc-history-intro-inner,
    body:not(.wp-admin) .orologio-clone .oc-history-family-gallery {
        grid-template-columns: 1fr;
    }

    body:not(.wp-admin) .orologio-clone .oc-history-intro-copy {
        padding-top: 0;
    }

    body:not(.wp-admin) .orologio-clone .oc-history-family-gallery img {
        aspect-ratio: 1 / 1.08;
    }

    body:not(.wp-admin) .orologio-clone .oc-history-video-frame img {
        aspect-ratio: 4 / 5;
    }
}

/* Mega menu stability pass: prevent viewport overflow and keep columns readable. */
body:not(.wp-admin) .oc-menu-popup {
    width: 100vw !important;
    max-width: 100vw !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
}

body:not(.wp-admin) .oc-menu-popup-inner {
    width: 100% !important;
    max-width: none !important;
    min-height: 100svh !important;
    padding: clamp(34px, 5vw, 70px) clamp(24px, 5vw, 82px) !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
}

body:not(.wp-admin) .oc-menu-columns {
    display: grid !important;
    width: min(1280px, 100%) !important;
    margin: 0 auto !important;
    grid-template-columns: minmax(260px, 0.95fr) minmax(210px, 0.58fr) minmax(260px, 0.78fr) !important;
    align-items: center !important;
    gap: clamp(32px, 5vw, 82px) !important;
    overflow: visible !important;
}

body:not(.wp-admin) .oc-menu-primary,
body:not(.wp-admin) .oc-menu-secondary {
    min-width: 0 !important;
}

body:not(.wp-admin) .oc-menu-primary a {
    display: block !important;
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    color: rgba(225, 239, 255, 0.88) !important;
    font-size: clamp(42px, 4.15vw, 66px) !important;
    font-weight: 300 !important;
    line-height: 0.98 !important;
    letter-spacing: 0 !important;
}

body:not(.wp-admin) .oc-menu-secondary a {
    display: block !important;
    max-width: 100% !important;
    color: rgba(225, 239, 255, 0.72) !important;
    font-size: clamp(24px, 2.05vw, 34px) !important;
    line-height: 1.14 !important;
}

body:not(.wp-admin) .oc-menu-info {
    min-width: 0 !important;
    max-width: 340px !important;
    color: rgba(225, 239, 255, 0.74) !important;
}

body:not(.wp-admin) .oc-menu-info h2 {
    color: #fff !important;
    font-size: clamp(34px, 3.2vw, 52px) !important;
    line-height: 1.04 !important;
}

body:not(.wp-admin) .oc-menu-info p {
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
}

/* Product media pass: stabilize no-video galleries and keep the pen visible above the fold. */
body.single-product .oc-single-gallery:not(:has(.pp-gallery-video)) {
    grid-template-rows: clamp(430px, 38vw, 480px) auto !important;
    align-items: start !important;
}

body.single-product .oc-single-gallery:not(:has(.pp-gallery-video)) .oc-single-gallery-stage {
    min-height: clamp(430px, 38vw, 480px) !important;
    height: clamp(430px, 38vw, 480px) !important;
    background:
        radial-gradient(circle at 50% 50%, rgba(157, 128, 102, 0.08), transparent 40%),
        #fff !important;
}

body.single-product .oc-single-gallery:not(:has(.pp-gallery-video)) .oc-single-main-image {
    max-height: min(100%, 468px) !important;
    padding: clamp(8px, 1.1vw, 16px) !important;
    object-fit: contain !important;
}

body.single-product .oc-single-gallery:not(:has(.pp-gallery-video)) .oc-single-thumbnails {
    align-self: start !important;
}

body.single-product .oc-single-gallery:not(:has(.pp-gallery-video)) .oc-single-thumbnails button {
    width: 82px !important;
    height: 82px !important;
    flex-basis: 82px !important;
}

body.single-product .oc-single-gallery:not(:has(.pp-gallery-video)) > .oc-single-assurance {
    min-height: 118px !important;
}

body.single-product .oc-single-gallery:not(:has(.pp-gallery-video)) > .oc-single-assurance article {
    min-height: 118px !important;
    padding: 18px 18px !important;
}

/* Product video pass: show review media first without reintroducing image clutter. */
body.single-product .oc-single-gallery:has(.pp-gallery-video) {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: auto auto auto !important;
    justify-items: center !important;
}

body.single-product .oc-single-gallery:has(.pp-gallery-video) > .pp-gallery-video {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: min(360px, 100%) !important;
    margin: 0 auto !important;
    background: #050505 !important;
}

body.single-product .oc-single-gallery:has(.pp-gallery-video) > .pp-gallery-video .pp-gallery-video-frame {
    position: relative !important;
    width: 100% !important;
    aspect-ratio: 9 / 16 !important;
    overflow: hidden !important;
    background: #050505 !important;
}

body.single-product .oc-single-gallery:has(.pp-gallery-video) > .pp-gallery-video iframe {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    border: 0 !important;
}

body.single-product .oc-single-gallery:has(.pp-gallery-video) > .pp-gallery-video .pp-gallery-video-caption {
    display: none !important;
}

body.single-product .oc-single-gallery:has(.pp-gallery-video) .oc-single-gallery-stage {
    display: none !important;
}

body.single-product .oc-single-gallery:has(.pp-gallery-video) .oc-single-thumbnails {
    grid-column: 1 !important;
    grid-row: 2 !important;
    display: flex !important;
    width: min(360px, 100%) !important;
    max-height: none !important;
    flex-direction: row !important;
    gap: 10px !important;
    justify-content: flex-start !important;
    margin: 14px auto 0 !important;
    overflow-x: auto !important;
    scrollbar-width: none !important;
}

body.single-product .oc-single-gallery:has(.pp-gallery-video) .oc-single-thumbnails::-webkit-scrollbar {
    display: none !important;
}

body.single-product .oc-single-gallery:has(.pp-gallery-video) .oc-single-thumbnails button {
    width: 72px !important;
    height: 72px !important;
    flex: 0 0 72px !important;
}

body.single-product .oc-single-gallery:has(.pp-gallery-video) > .oc-single-assurance {
    grid-column: 1 !important;
    grid-row: 3 !important;
    width: 100% !important;
    margin-top: 18px !important;
}

@media (max-width: 760px) {
    body.single-product .oc-single-gallery:has(.pp-gallery-video) > .pp-gallery-video,
    body.single-product .oc-single-gallery:has(.pp-gallery-video) .oc-single-thumbnails {
        width: min(315px, 100%) !important;
    }

    body.single-product .oc-single-gallery:has(.pp-gallery-video) > .oc-single-assurance {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }

    body.single-product .oc-single-gallery:has(.pp-gallery-video) > .oc-single-assurance article {
        display: block !important;
        min-height: 86px !important;
        padding: 14px 10px !important;
        border-right: 1px solid #c5baaf !important;
        border-bottom: 0 !important;
    }

    body.single-product .oc-single-gallery:has(.pp-gallery-video) > .oc-single-assurance article:last-child {
        border-right: 0 !important;
    }

    body.single-product .oc-single-gallery:has(.pp-gallery-video) > .oc-single-assurance p {
        display: none !important;
    }
}

/* Product related pass: match archive product density and keep mobile in two columns. */
body.single-product .oc-single-related {
    padding-top: clamp(54px, 6vw, 82px) !important;
}

body.single-product .oc-single-related ul.products li.product {
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.single-product .oc-single-related ul.products li.product img {
    aspect-ratio: 8 / 11 !important;
    background: #f7f3ef !important;
    padding: clamp(18px, 2.3vw, 28px) !important;
}

body.single-product .oc-single-related .woocommerce-loop-product__title {
    display: -webkit-box !important;
    min-height: 0 !important;
    max-height: none !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    padding: 20px 6px 8px !important;
    font-family: var(--oc-type-body, Montserrat, Arial, sans-serif) !important;
    font-size: clamp(14px, 1.25vw, 18px) !important;
    font-weight: 500 !important;
    line-height: 1.32 !important;
}

body.single-product .oc-single-related ul.products li.product .price {
    padding: 0 6px 16px !important;
    font-family: var(--oc-type-body, Montserrat, Arial, sans-serif) !important;
    font-size: 14px !important;
}

body.single-product .oc-single-related ul.products li.product .button {
    min-height: 42px !important;
    margin-bottom: 0 !important;
    border: 1px solid #9d8066 !important;
    border-radius: 0 !important;
    background: transparent !important;
    padding: 11px 18px !important;
    color: #11100f !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
}

body.single-product .oc-single-related ul.products li.product .button:hover {
    background: #11100f !important;
    border-color: #11100f !important;
    color: #fff !important;
}

/* Product specs pass: compact semantic definition lists on mobile. */
@media (max-width: 760px) {
    body.single-product .oc-product-specifications {
        width: calc(100% - 36px) !important;
        margin-bottom: 58px !important;
        padding: 44px 20px 34px !important;
    }

    body.single-product .oc-product-specifications > header {
        margin-bottom: 30px !important;
    }

    body.single-product .oc-product-specifications h2 {
        font-size: clamp(32px, 8.4vw, 40px) !important;
        line-height: 1.08 !important;
    }

    body.single-product .oc-spec-grid h3 {
        padding: 16px 14px !important;
        font-size: 12px !important;
    }

    body.single-product .oc-spec-grid dl > div {
        display: grid !important;
        min-height: 0 !important;
        grid-template-columns: minmax(94px, 0.42fr) minmax(0, 1fr);
        gap: 12px;
        align-items: start;
        padding: 13px 14px !important;
    }

    body.single-product .oc-spec-grid dt {
        margin: 0 !important;
        font-size: 9px !important;
        line-height: 1.35 !important;
    }

    body.single-product .oc-spec-grid dd {
        font-size: 13px !important;
        line-height: 1.45 !important;
    }

    body.single-product .oc-full-description {
        margin-top: 24px !important;
    }
}

@media (max-width: 760px) {
    body.single-product .oc-single-related {
        width: calc(100% - 36px) !important;
        padding: 58px 0 76px !important;
    }

    body.single-product .oc-single-related > h2 {
        margin-bottom: 28px !important;
        font-size: clamp(34px, 9vw, 46px) !important;
        line-height: 1.05 !important;
    }

    body.single-product .oc-single-related ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 32px 14px !important;
    }

    body.single-product .oc-single-related ul.products li.product img {
        padding: 18px !important;
    }

    body.single-product .oc-single-related .woocommerce-loop-product__title {
        padding-top: 14px !important;
        font-size: 13px !important;
        line-height: 1.3 !important;
    }

    body.single-product .oc-single-related ul.products li.product .price {
        padding-bottom: 12px !important;
        font-size: 12px !important;
    }

    body.single-product .oc-single-related ul.products li.product .button {
        width: 100% !important;
        min-height: 40px !important;
        padding: 10px 8px !important;
        white-space: normal !important;
    }
}

@media (max-width: 760px) {
    body.single-product .oc-single-gallery:not(:has(.pp-gallery-video)) {
        grid-template-rows: auto !important;
    }

    body.single-product .oc-single-gallery:not(:has(.pp-gallery-video)) .oc-single-gallery-stage {
        height: auto !important;
        min-height: 0 !important;
        aspect-ratio: 1 / 1.12 !important;
    }

    body.single-product .oc-single-gallery:not(:has(.pp-gallery-video)) .oc-single-main-image {
        max-height: 100% !important;
    }

    body.single-product .oc-single-gallery:not(:has(.pp-gallery-video)) .oc-single-thumbnails button {
        width: 74px !important;
        height: 74px !important;
        flex-basis: 74px !important;
    }

    body.single-product .oc-single-gallery:not(:has(.pp-gallery-video)) > .oc-single-assurance {
        display: grid !important;
        min-height: 0 !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }

    body.single-product .oc-single-gallery:not(:has(.pp-gallery-video)) > .oc-single-assurance article {
        display: block !important;
        min-height: 86px !important;
        padding: 14px 10px !important;
        border-right: 1px solid #c5baaf !important;
        border-bottom: 0 !important;
    }

    body.single-product .oc-single-gallery:not(:has(.pp-gallery-video)) > .oc-single-assurance article:last-child {
        border-right: 0 !important;
    }

    body.single-product .oc-single-gallery:not(:has(.pp-gallery-video)) > .oc-single-assurance span {
        margin-bottom: 10px !important;
        font-size: 10px !important;
    }

    body.single-product .oc-single-gallery:not(:has(.pp-gallery-video)) > .oc-single-assurance strong {
        margin: 0 !important;
        font-size: 11px !important;
        line-height: 1.25 !important;
    }

    body.single-product .oc-single-gallery:not(:has(.pp-gallery-video)) > .oc-single-assurance p {
        display: none !important;
    }
}

@media (max-width: 980px) {
    body:not(.wp-admin) .oc-menu-popup-inner {
        padding: 82px 24px 42px !important;
    }

    body:not(.wp-admin) .oc-menu-columns {
        grid-template-columns: 1fr !important;
        align-items: start !important;
        gap: 34px !important;
    }

    body:not(.wp-admin) .oc-menu-primary a {
        font-size: clamp(32px, 11vw, 58px) !important;
        line-height: 1.02 !important;
    }

    body:not(.wp-admin) .oc-menu-secondary a {
        font-size: clamp(21px, 7vw, 30px) !important;
    }

    body:not(.wp-admin) .oc-menu-info {
        max-width: 100% !important;
        padding-top: 28px !important;
        border-top: 1px solid rgba(255, 255, 255, 0.18) !important;
    }
}

/* Footer mobile pass: tighter Orologio-style closing section. */
body:not(.wp-admin) .oc-newsletter-signup form {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    border: 1px solid rgba(157, 128, 102, 0.36);
    background: rgba(255, 255, 255, 0.45);
}

body:not(.wp-admin) .oc-newsletter-signup input {
    height: 58px !important;
    border: 0 !important;
    padding: 0 18px !important;
}

body:not(.wp-admin) .oc-newsletter-signup button {
    position: static !important;
    height: 58px;
    min-width: 86px;
    transform: none !important;
    background: #9d8066 !important;
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
}

body:not(.wp-admin) .oc-footer-main {
    min-height: auto !important;
}

body:not(.wp-admin) .oc-footer-main::before {
    background-image:
        url("../images/generated/parker-footer-watermark.png"),
        linear-gradient(45deg, rgba(157, 128, 102, 0.055) 25%, transparent 25%, transparent 75%, rgba(157, 128, 102, 0.055) 75%),
        linear-gradient(45deg, rgba(157, 128, 102, 0.055) 25%, transparent 25%, transparent 75%, rgba(157, 128, 102, 0.055) 75%) !important;
    background-position:
        calc(100% - clamp(34px, 10vw, 160px)) 48%,
        0 0,
        18px 18px !important;
    background-repeat: no-repeat, repeat, repeat !important;
    background-size:
        min(460px, 36vw) auto,
        36px 36px,
        36px 36px !important;
    opacity: 0.42 !important;
    filter: blur(0.35px);
}

body:not(.wp-admin) .oc-footer-columns nav,
body:not(.wp-admin) .oc-footer-columns > div {
    min-height: 0 !important;
}

@media (max-width: 760px) {
    body:not(.wp-admin) .oc-newsletter-signup {
        min-height: 0 !important;
        width: calc(100% - 36px) !important;
        gap: 20px !important;
        padding: 34px 0 30px !important;
    }

    body:not(.wp-admin) .oc-newsletter h2 {
        max-width: 320px;
        font-family: var(--oc-type-body) !important;
        font-size: clamp(28px, 8.2vw, 34px) !important;
        font-weight: 500 !important;
        line-height: 1.12 !important;
        letter-spacing: 0 !important;
    }

    body:not(.wp-admin) .oc-newsletter-signup form {
        width: 100%;
    }

    body:not(.wp-admin) .oc-newsletter-signup input {
        min-width: 0;
        font-size: 14px !important;
    }

    body:not(.wp-admin) .oc-newsletter-signup button {
        min-width: 76px;
        padding: 0 14px !important;
    }

    body:not(.wp-admin) .oc-footer-main {
        padding: 50px 0 32px !important;
    }

    body:not(.wp-admin) .oc-footer-main::before {
        background-position:
            center 58%,
            0 0,
            18px 18px !important;
        background-size:
            min(440px, 118vw) auto,
            36px 36px,
            36px 36px !important;
        opacity: 0.32 !important;
        filter: blur(0.55px);
    }

    body:not(.wp-admin) .oc-footer-main > h3,
    body:not(.wp-admin) .oc-newsletter h3 {
        width: calc(100% - 36px) !important;
        margin-bottom: 16px !important;
        font-family: var(--oc-type-body) !important;
        font-size: clamp(43px, 12.4vw, 54px) !important;
        font-weight: 400 !important;
        line-height: 1 !important;
        letter-spacing: 0 !important;
    }

    body:not(.wp-admin) .oc-footer-main .oc-footer-intro {
        width: calc(100% - 54px) !important;
        margin-bottom: 42px !important;
        font-size: 14px !important;
        line-height: 1.75 !important;
    }

    body:not(.wp-admin) .oc-footer-columns {
        width: calc(100% - 36px) !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 28px 22px !important;
    }

    body:not(.wp-admin) .oc-footer-columns nav,
    body:not(.wp-admin) .oc-footer-columns > div {
        gap: 10px !important;
        padding: 0 !important;
    }

    body:not(.wp-admin) .oc-footer-columns h4 {
        margin-bottom: 8px !important;
        font-size: 11px !important;
        letter-spacing: 0.1em !important;
    }

    body:not(.wp-admin) .oc-footer-columns a,
    body:not(.wp-admin) .oc-footer-columns p {
        width: auto !important;
        font-size: 14px !important;
        line-height: 1.65 !important;
    }

    body:not(.wp-admin) .oc-footer-bottom {
        width: calc(100% - 36px) !important;
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 18px !important;
        margin-top: 36px !important;
        padding-top: 22px !important;
        font-size: 13px !important;
        text-align: center !important;
    }

    body:not(.wp-admin) .oc-footer-bottom nav {
        justify-content: center !important;
        gap: 12px 18px !important;
    }

    body:not(.wp-admin) .oc-footer-bottom a {
        font-size: 13px !important;
    }
}

@media (max-width: 420px) {
    body:not(.wp-admin) .oc-footer-columns {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 26px 18px !important;
    }

    body:not(.wp-admin) .oc-footer-columns > div:last-child {
        grid-column: 1 / -1 !important;
    }
}

/* Related products mobile carousel: two visible cards, remaining products slide. */
@media (max-width: 760px) {
    body.single-product .oc-single-related {
        width: 100% !important;
        overflow: hidden !important;
        padding-right: 0 !important;
        padding-left: 18px !important;
    }

    body.single-product .oc-single-related > .oc-kicker,
    body.single-product .oc-single-related > h2 {
        width: calc(100% - 36px) !important;
        margin-right: 18px !important;
        margin-left: 0 !important;
    }

    body.single-product .oc-single-related ul.products {
        display: flex !important;
        grid-template-columns: none !important;
        gap: 14px !important;
        width: auto !important;
        margin: 0 !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        padding: 0 18px 18px 0 !important;
        scroll-padding-left: 0;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
    }

    body.single-product .oc-single-related ul.products::-webkit-scrollbar {
        height: 4px;
    }

    body.single-product .oc-single-related ul.products::-webkit-scrollbar-track {
        background: #f1ece7;
    }

    body.single-product .oc-single-related ul.products::-webkit-scrollbar-thumb {
        background: #9d8066;
    }

    body.single-product .oc-single-related ul.products li.product,
    body.single-product .oc-single-related ul.products li.product:nth-child(n+4) {
        display: flex !important;
        flex: 0 0 calc((100vw - 50px) / 2) !important;
        width: calc((100vw - 50px) / 2) !important;
        min-width: 0 !important;
        min-height: 336px !important;
        justify-content: flex-start !important;
        scroll-snap-align: start;
    }

    body.single-product .oc-single-related ul.products li.product a.woocommerce-LoopProduct-link {
        display: flex !important;
        flex: 0 0 auto !important;
        flex-direction: column !important;
    }

    body.single-product .oc-single-related ul.products li.product img {
        height: 178px !important;
        object-fit: contain !important;
    }

    body.single-product .oc-single-related .woocommerce-loop-product__title {
        display: block !important;
        min-height: 68px !important;
        max-height: none !important;
        overflow: visible !important;
        -webkit-line-clamp: unset !important;
        -webkit-box-orient: initial !important;
        padding: 14px 4px 4px !important;
        font-size: 12.5px !important;
        line-height: 1.35 !important;
        text-wrap: balance;
    }

    body.single-product .oc-single-related ul.products li.product .price {
        display: flex !important;
        min-height: 24px !important;
        align-items: center !important;
        justify-content: center !important;
        margin-top: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 8px !important;
    }

    body.single-product .oc-single-related ul.products li.product .button {
        margin-top: 6px !important;
        font-size: 9px !important;
        letter-spacing: 0.06em !important;
    }
}
