:root {
    --dc-display: "Droomcamp Literata", Georgia, serif;
    --dc-navy: #102f43;
    --dc-paper: #fbfaf3;
    --dc-rule: #d9d4c7;
    --dc-brass: #b58d46;
    --dc-product-sand: #f4f0e7;
}
.wp-site-blocks main h1,
.wp-site-blocks .dc-home h1,
.wp-site-blocks .dc-home h2,
.wp-site-blocks main :is(.dc-guide-intro, .dc-products-intro, .dc-deal-card, .dc-winter-details, .dc-editorial-intro) h2 {
    font-family: var(--dc-display);
    font-weight: 400;
    line-height: 1.12;
    letter-spacing: -.035em;
    text-wrap: balance;
}
.wp-site-blocks main h1 { overflow-wrap: break-word; }
.wp-site-blocks .dc-home-hero h1 { margin: .28em 0 .45em; }
.wp-site-blocks .dc-home-hero .dc-season-deal {
    display: flow-root;
    border: 1px solid var(--dc-rule);
    border-top: 2px solid var(--dc-brass);
    border-radius: 3px;
    background: var(--dc-product-sand);
    padding: clamp(1.1rem, 2.4vw, 2rem);
}
.wp-site-blocks .dc-season-deal h2 { font-size: clamp(1.45rem, 2.5vw, 2.05rem); }
.dc-set-photos {
    float: right;
    margin: -.1rem -.2rem .5rem .6rem;
    display: flex;
    align-items: flex-end;
    gap: 2px;
}
.dc-set-photos img { width: clamp(32px, 4vw, 54px); height: clamp(50px, 6vw, 78px); object-fit: contain; }
.dc-season-deal .dc-actions { clear: both; }
.wp-site-blocks main :is(.dc-product-tile, .dc-deal-card, .dc-job-grid article) {
    border: 1px solid var(--dc-rule);
    border-radius: 4px;
}
.wp-site-blocks main .dc-job-grid article { background: #fffefa; }
.wp-site-blocks main .dc-product-tile,
.wp-site-blocks main .dc-deal-card,
.wp-site-blocks main li.wc-block-product,
.wp-site-blocks main li.wc-block-product .wc-block-components-product-image,
.wp-site-blocks main .dc-product-visual,
.wp-site-blocks main .woocommerce-product-gallery__image {
    background: var(--dc-product-sand);
}
.wp-site-blocks main .dc-product-copy { border-top: 0; }
.wp-site-blocks main :is(.dc-product-visual, .dc-deal-card, .dc-season-deal, .wc-block-components-product-image, .woocommerce-product-gallery__image) {
    isolation: isolate;
}
/* Keep the light studio backdrop level with the card at every image size. */
.wp-site-blocks main :is(.dc-product-visual, .dc-deal-products, .dc-set-photos, .wc-block-components-product-image, .woocommerce-product-gallery__image) img[src*="profa-clean-"] {
    mix-blend-mode: darken;
}
.wp-site-blocks main .dc-product-visual img { padding: clamp(6px, 1.1vw, 13px); }
.wp-site-blocks .dc-product-position { display: none; }
.wp-site-blocks main li.wc-block-product .wp-block-post-title { line-height: 1.35; }
.wp-site-blocks .dc-job-grid article { border-top: 2px solid var(--dc-brass); }
.wp-site-blocks .dc-deal-card :is(.dc-deal-price, .dc-deal-products) { margin-block: 1rem; }
.wp-site-blocks .dc-deal-card .dc-deal-products a { text-underline-offset: 3px; }
.wp-site-blocks main .dc-product-button,
.wp-site-blocks main .dc-cta:not(.dc-cta-outline),
.wp-site-blocks main .dc-deal-card button {
    color: #fff!important;
    background: var(--dc-navy);
    border: 1px solid var(--dc-navy);
    border-radius: 4px;
}
.wp-site-blocks main :is(.dc-product-button, .dc-cta:not(.dc-cta-outline), .dc-deal-card button):hover {
    color: #fff!important;
    background: #244859;
}
.wp-site-blocks :is(.dc-product-button, .dc-cta, .dc-mobile-account, .dc-tax-control button):focus-visible {
    outline: 2px solid var(--dc-navy);
    outline-offset: 3px;
}
@media screen and (max-width: 600px) {
    header .wp-block-group:has(> .dc-mobile-account) {
        flex-wrap: nowrap!important;
        gap: clamp(2px, 1.2vw, 8px)!important;
    }
    header .wp-block-group:has(> .dc-mobile-account) > figure { flex: 1 1 auto; min-width: 0; }
    header .wp-block-group:has(> .dc-mobile-account) > figure img { max-width: min(100%, 140px); }
    header .wp-block-group:has(> .dc-mobile-account) > nav { margin-inline: auto 0; }
    header .wp-block-group:has(> .dc-mobile-account) > .wc-block-mini-cart { order: 4; }
    header .wp-block-group > a.dc-mobile-account {
        order: 3;
        flex: 0 0 44px;
        position: relative;
        width: 44px;
        min-height: 44px;
        justify-content: center;
        border: 0;
        margin: 0;
        padding: 0;
        background: transparent;
        color: var(--dc-navy)!important;
    }
    header .wp-block-group > .dc-mobile-account:is(:hover,:focus-visible) { background: #eeece1; }
    header .dc-mobile-account svg { width: 23px; height: 23px; flex-basis: 23px; }
    header .dc-mobile-account > span:not(.dc-mobile-account-arrow) {
        position: absolute; width: 1px; height: 1px; clip-path: inset(50%); overflow: hidden; white-space: nowrap;
    }
    header .dc-mobile-account-arrow { display: none; }
    body .dc-offer-nav { padding: .32rem .65rem; gap: .1rem .85rem; font-size: .76rem; }
    body .dc-offer-nav a { text-underline-offset: .2em; }
    .wp-site-blocks .dc-tax-top:has(.dc-shipping-promise) {
        background: var(--dc-paper);
        color: var(--dc-navy);
        border-block: 1px solid var(--dc-rule);
        padding: .2rem max(4%, 12px);
        column-gap: .5rem;
        row-gap: 0;
        flex-wrap: nowrap;
        min-height: 44px;
    }
    .wp-site-blocks .dc-tax-top .dc-shipping-promise { flex: 1 1 auto; font-size: .76rem; line-height: 1.35; font-weight: 600; }
    .wp-site-blocks .dc-tax-control { flex: 0 0 auto; gap: 2px; }
    .wp-site-blocks .dc-tax-control > span { display: none; }
    .wp-site-blocks .dc-tax-control button {
        min-width: 44px; min-height: 40px;
        padding: .2rem .36rem;
        border: 0;
        border-radius: 0;
        border-bottom: 2px solid transparent;
        background: transparent;
        color: #405568;
        font-size: .72rem;
        white-space: nowrap;
    }
    .wp-site-blocks .dc-tax-control button[aria-pressed="true"] { background: transparent; border-bottom-color: var(--dc-brass); color: var(--dc-navy); font-weight: 750; }
    .wp-site-blocks .dc-home h1 { font-size: clamp(2.15rem, 9.5vw, 3.3rem); }
    .wp-site-blocks .dc-home-hero { gap: 1rem; }
    body .dc-whatsapp-float {
        background: var(--dc-navy);
        color: #fff!important;
        border: 1px solid #d8c28f;
        min-height: 46px;
        padding: 7px 13px;
        box-shadow: 0 2px 9px #102f431c;
        gap: 7px;
        font-size: 14px;
    }
    body .dc-whatsapp-float svg { width: 22px; height: 22px; flex-basis: 22px; }
    .wp-site-blocks .dc-season-deal h2 { text-align: left; }
}

/* The panorama includes a wordmark at the edge; keep the complete original. */
.wp-site-blocks main .dc-home .dc-home-opening .dc-home-panorama img {
    aspect-ratio: auto;
    height: auto!important;
    object-fit: contain;
}
@media (min-width: 721px) {
    .wp-site-blocks main .dc-home .dc-home-opening h1 { font-size: clamp(2.6rem, 4.05vw, 3.55rem); }
    .wp-site-blocks main .dc-home > .dc-season-deal { grid-template-columns: minmax(0,1.5fr) minmax(12rem,.8fr) auto; }
    .wp-site-blocks main .dc-home > .dc-season-deal h2 { grid-column: 1; grid-row: 1; }
    .wp-site-blocks main .dc-home > .dc-season-deal p:first-of-type { grid-column: 1; grid-row: 2; }
    .wp-site-blocks main .dc-home > .dc-season-deal p:last-of-type { grid-column: 2; grid-row: 1; }
    .wp-site-blocks main .dc-home > .dc-season-deal .dc-actions { grid-column: 2; grid-row: 2; justify-self: start; }
    .wp-site-blocks main .dc-home > .dc-season-deal .dc-set-photos { grid-column: 3; grid-row: 1 / 3; }
}
@media (max-width: 720px) {
    .wp-site-blocks main .dc-home-opening > div:first-child:has(> .dc-hero-shop) { display: contents; }
    .wp-site-blocks main .dc-home-opening:has(.dc-hero-shop) .dc-eyebrow { grid-row: 1; margin: 0; }
    .wp-site-blocks main .dc-home-opening:has(.dc-hero-shop) h1 { grid-row: 2; margin: 0; }
    .wp-site-blocks main .dc-home-opening:has(.dc-hero-shop) .dc-home-panorama { grid-row: 3; }
    .wp-site-blocks main .dc-home-opening .dc-hero-shop { grid-row: 4; justify-self: start; }
}
