/* Shared materials for the Francestle chocolate gallery. */
:root {
    --gallery-espresso: #241711;
    --gallery-cocoa: #40281d;
    --gallery-champagne: #ead097;
    --gallery-paper: #fffbf3;
    --gallery-rule: #dac08e;
}

.storefront .announcement {
    background: linear-gradient(105deg, #392319, #573620 52%, #382219);
    border-bottom: 1px solid #b7863280;
    color: #f5dfb3;
    letter-spacing: .07em;
}
.storefront .announcement a { color: #f5dfb3; }
.storefront .announcement a:hover { color: #fff7df; }
.storefront .site-header {
    background: #fcf8ef;
    border-bottom-color: #c59a4a55;
    box-shadow: 0 10px 24px -24px #28170dc2;
}
.site-header .site-nav a[aria-current] {
    color: #815619;
    font-weight: 650;
}
.site-header .site-nav a::after { height: 2px; }
.site-header .selection-trigger:hover,
.site-header .header-search:hover { color: #815619; }
.storefront .button {
    transition: background-color .22s var(--ease), border-color .22s var(--ease),
        color .22s var(--ease), box-shadow .22s var(--ease), transform .22s var(--ease);
}
.storefront .button .icon { transition: transform .22s var(--ease); }
.storefront .button:focus-visible .icon { transform: translateX(3px); }
@media (hover: hover) {
    .storefront .button:hover .icon { transform: translateX(3px); }
}
.storefront .journey-note {
    position: relative;
    margin-block: clamp(30px, 5vw, 70px);
    padding: clamp(26px, 4vw, 53px);
    background: radial-gradient(ellipse at 100% 0%, #ead0974d, transparent 62%), var(--gallery-paper);
    border: 1px solid var(--gallery-rule);
    box-shadow: 0 24px 52px -47px #50301d98;
}
.storefront .journey-note::before {
    position: absolute;
    top: -1px;
    left: clamp(26px, 4vw, 53px);
    width: 58px;
    height: 2px;
    background: #a9782c;
    content: '';
}
.storefront .site-footer {
    border-top: 1px solid #d6ac61;
    background: radial-gradient(ellipse at 80% 0%, #6e482c61, transparent 54%),
        linear-gradient(115deg, var(--gallery-espresso), #352217);
}
.site-footer::before {
    position: absolute;
    top: -1px;
    left: 50%;
    width: min(360px, 54vw);
    height: 1px;
    background: linear-gradient(90deg, transparent, #ffdda1, transparent);
    transform: translateX(-50%);
    content: '';
}
.site-footer .footer-main {
    grid-template-columns: minmax(0, 1.1fr) minmax(0, .75fr) minmax(0, 1fr) minmax(224px, 1fr);
    gap: clamp(24px, 3vw, 44px);
    padding-block: clamp(30px, 4vw, 53px) clamp(30px, 4vw, 48px);
}
.site-footer .footer-main .eyebrow { letter-spacing: .17em; }
.site-footer :focus-visible { outline-color: var(--gallery-champagne); }
.footer-invitation {
    position: relative;
    isolation: isolate;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 26px 44px;
    margin-top: clamp(26px, 4vw, 55px);
    padding: clamp(24px, 3.4vw, 45px);
    overflow: hidden;
    border: 1px solid #d4a95e60;
    border-radius: 6px;
    background: radial-gradient(ellipse at 83% 50%, #99633830, transparent 66%), #392419;
}
.footer-invitation::before {
    position: absolute;
    z-index: -1;
    top: -90px;
    right: 12%;
    width: 280px;
    aspect-ratio: 1;
    border: 1px solid #d4a95e2e;
    border-radius: 50%;
    box-shadow: 0 0 0 26px #d4a95e13, 0 0 0 52px #d4a95e0c;
    pointer-events: none;
    content: '';
}
.footer-invitation-copy .eyebrow {
    margin: 0 0 8px;
    color: var(--gallery-champagne);
    font-size: 10px;
    letter-spacing: .17em;
}
.footer-invitation-copy h2 {
    margin: 0;
    color: #fff5e6;
    font: 400 clamp(35px, 4vw, 57px)/1.08 var(--serif);
    letter-spacing: -.045em;
}
.footer-invitation-copy h2 em { color: var(--gallery-champagne); }
.footer-invitation-description {
    margin: 10px 0 0;
    color: #e7dbc5;
    font-size: 14px;
    line-height: 1.65;
}
.footer-invitation-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 24px;
}
.footer-invitation-actions .button { min-height: 46px; }
.footer-invitation-secondary {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    gap: 9px;
    color: #fff0d4;
    font-size: 13px;
    text-decoration: underline;
    text-decoration-color: #d4a95e9c;
    text-underline-offset: .35em;
}
.footer-invitation-secondary:hover { color: var(--gallery-champagne); }
.footer-invitation-secondary .icon { width: 16px; height: 16px; flex: 0 0 16px; }
.site-footer .footer-main > .footer-identity > p { margin-top: 16px; }
.site-footer .footer-links {
    align-items: stretch;
    gap: 0;
}
.site-footer .footer-links > .eyebrow {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 9px;
}
.site-footer .footer-links > .eyebrow::after {
    width: 22px;
    height: 1px;
    background: #d4a95e80;
    content: '';
}
.site-footer .footer-links > a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 7px;
    min-width: 0;
    min-height: 44px;
    padding: 6px 5px 6px 0;
    border-bottom: 1px solid #d4a95e38;
    color: #fff5e6;
    line-height: 1.35;
}
.site-footer .footer-links > a > span { min-width: 0; }
.site-footer .footer-links > a > .icon {
    width: 14px;
    height: 14px;
    color: #d3ac76;
}
.site-footer .footer-links > a:hover,
.site-footer .footer-links > a:focus-visible {
    border-color: #d4a95ea6;
    background: linear-gradient(90deg, #e7bc7220, transparent);
    color: var(--gallery-champagne);
    text-decoration: none;
}
.site-footer .footer-links > a:focus-visible { outline-offset: -2px; }
@media (prefers-reduced-motion: no-preference) {
    .site-footer .footer-links > a > .icon { transition: transform .2s var(--ease); }
    .site-footer .footer-links > a:hover > .icon { transform: translateX(2px); }
}
.footer-contact .eyebrow {
    display: block;
    margin-bottom: 10px;
}
.footer-contact-link {
    display: flex;
    min-height: 56px;
    align-items: center;
    gap: 10px;
    padding-block: 5px;
    color: #fff5e6;
    font-size: 13px;
    overflow-wrap: anywhere;
}
.footer-contact-link > .icon {
    width: 30px;
    height: 30px;
    flex: 0 0 30px;
    padding: 6px;
    border: 1px solid #d4a95e57;
    border-radius: 3px;
    color: var(--gallery-champagne);
}
.footer-contact-label {
    display: block;
    margin-bottom: 2px;
    color: #e7dbc5;
    font-size: 10px;
    font-weight: 600;
}
.footer-contact-link:hover > span > span:last-child,
.footer-contact-link:focus-visible > span > span:last-child {
    color: var(--gallery-champagne);
    text-decoration: underline;
    text-underline-offset: .25em;
}
.site-footer .footer-bottom {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
}
.footer-utilities {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0 clamp(14px, 2vw, 27px);
    margin-inline-start: auto;
}
.footer-utilities > :is(a, button) {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 44px;
    padding: 0;
    background: transparent;
    color: inherit;
    font: inherit;
}
.footer-utilities > :is(a, button):hover {
    color: var(--gallery-champagne);
    text-decoration: underline;
    text-underline-offset: .27em;
}
.footer-utilities .icon { width: 14px; height: 14px; color: var(--gallery-champagne); }
.footer-utilities > a .icon { transform: rotate(-90deg); }
html:not(.js-ready) .footer-utilities > button { display: none; }
.footer-channels > .eyebrow,
.footer-channel-label { display: block; }
.footer-channels > .eyebrow { margin-bottom: 12px; }
.footer-channel-label {
    color: #e7dbc5;
    font-size: 11px;
    font-weight: 600;
}
.footer-channel-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 9px;
}
.footer-channel-grid a {
    display: flex;
    align-items: center;
    gap: 7px;
    min-height: 44px;
    color: #fff5e6;
    font-size: 12px;
    overflow-wrap: anywhere;
}
.footer-channel-grid .icon {
    width: 15px;
    height: 15px;
    color: var(--gallery-champagne);
}
.footer-brand-mark {
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    background: center / contain no-repeat;
}
/* Platform website icons, embedded so the footer can load them locally. */
/* https://www.xiaohongshu.com/ */
.footer-brand-mark--xiaohongshu {
    background-image: url("data:image/png;base64,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");
}
/* https://shopee.com.my/ */
.footer-brand-mark--shopee {
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGAAAABgCAMAAADVRocKAAAAllBMVEUAAADvUCjvTi7tTS3uTS7uTS3uTS3uTC7tTS3vUCDuTS3vTi7sTS3uTS3vUCrqSirtTSztTSvuTCzuTCzsTC3vUDDvUDDvQDDsTC3tTCztTCzvTC3rTCzuTi7tTizuTSzuTC3tSyvtTSvsTSruTS3vTi7sSi3vTCznUCjqUCrtTC3vUDDrTCzvTS3tTS7vSirvTS3vTC5YNyRoAAAAMnRSTlMAIG+f3+//z68Qv19g3zAwr5+/z1AQIBCgkIBQQM+Av79wcGCwf2BAIDCgMJCfcDBPfytKD8EAAAMHSURBVHgB1diFdqxADIDhzNIETQUWtlB3t/d/uduhOgeYcDfTK9/xCj8eAOYzi2gDiTBOFgaCSxcZfRPnEFaB5CIOmTAZjcgMBLLJNIq3IIicPvH2zk5Z0accAljSu2pRQ68pOGDBIPXQWdZHAtV7yTD1yhocTUI9XoHOLvVaGOiol4DK3vvyPe190GCyGEYdvP9SoSALGxjVoPpMisk6hAkdWZniEhb2QY3Ko7Ar7YKOrFZ5iBuYVJOFsCZD1hF4HJNlVHehE/A4JesM1tPKh3BTPAjy9oNPTda55irgGecBa06iasZKIIguNkZQb8MLJ/8mWrn3nPBO3CsyvM45nX94Cy7pB5z9ycCSghrO0qv/PtDQDzD/fQC+oxnKdnn96mZ/cVuFD2DnPOY2hdhAJ4DkVw4n/80tefHg1u9xCGPuWB1wl59e3UdJdL+4SuGdbyOOBoNpUgtWeoH0IcsNWLuzA8fCtg7eBDEy7pxSBPJ++SMvyobJ48EJ3AqnW8rkpwicrzm0OyngTL5jbaATBhP+g4Ez9ylZ+MNjbeBSuMw6xUCTAgyvalYGltJfNqwICFM/g7UKZnaAHqHXaQIN+eTvf3TLNN9KCrjb8G55izQTCAHXBXyoi3KdAJCAc7Dm7yoeBORE6n5S0waGOHqa/1JUgYtpFn4fxvKFceQJ+MWfjU4R8IuMXDgHEKe+fNq2/pGsCFBshJtsC65bmu37F9l9YWKKAfEmi7qAfMO/lV7DFR8TMu8wP9MHaOWbtc8BAsYX2AfXpX4LggfYu+VPswO87XvvOZZGsjz196EbDzcAUJM6cDhxZ8Y7/2M9wLyhzBMTjO/AYnUADbxxZj12NVgvNAUHAfmRpSluSyTiqt2vxQdOHn4jnpQYGHeFwkh20DS8GE0spInpIh+Mngarn9HvBZj8+H4v/Vr6RUZ+53JgBGZJ9CpGEj3IAZ1h4JiC6v58IAn/ZdzVkoI8MYN/H29AvldoVDB0SwHlMNRg+KvAdROsUNUwqmEKoq1hSlEi6SC3+/DdL7MYp0Fnw6xVAAAAAElFTkSuQmCC");
}
/* https://www.lazada.com/en/about/ */
.footer-brand-mark--lazada {
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAmVBMVEUHF7AJF6cPF3kLF5gOF4EGGL0MF4kGF7gPF3QPGG7////2ciH0aiAOF3vyYiDzGJnxF4vuVx7wF3zrFEPtFFb4gSPvQy/uTCX4LqjvFmr5KsHyXTX0T0/3NpH1P3v5J91FKmn81cT0RGZEF6T7xNjvMjJ8M1D5lr30hVevTzL+7vK0JIT2aZf4qJreaSJ3H4Q0Go2bIcXiaWG6+T0qAAADnklEQVRYw92SCZOaQBCFhyOziKDCeh+IRxAWFff//7l09xwMh8lWmaqk9nHpzLyP182wHy+K/XvA24v6DgD29uKhRaz62XPpn4ZLTZhL64lnw8wIrmfb1D7EG+su/Quy1ElyintmqQk1pec/15/KY0yKg35b2Ww2G95Tc8LSkNNyuV4jwrLM9yovXOkd7KjCUcN6CbPKJQHW+5NhJyeJWY8CX0+EAOpQw/JZ7ZYKsKcQjQV4x/QzmSAIRsWDyVl8nsqdAQCEJUOrNzBMP6sTAGGT6bdYZbLbEUEB9vuT8W5QMVNCQjAEP6gSk1WSJNK/1AAMUQMeDb9MANqWVVUejwKgEkjC8iQBDtzT4VATJGBDANBRAWQPpH08PukEDgIUgiLIBNuNCTASjCdjBDhwMPQ7BAiG5lcYyQTHLfqNHuzX4wn6xyf0WwzuMgG4kJHn+W8TLCcTCcDwDnOQkKrOAeLg+0PZQ+k3ezCOY/RTCQ56MYGlAUAYIUB1cdtKAPZYEARAJKhLUICg/yvs4pX06x5IACYIDEA0EjXcQMfr5ZLAJXSNmyUYANkDAYgi+Ar5hw/6OPt+cvWlzo0EXUCgAVG0Qf+BIE1A/CXAIrqBHVoAAfzjFJVAnN3XEyxg+XwrCOSPIcw17usBF4CgCch9/zafAwLiT9+n0xWArq2vgFZMwPtKkICf75Ac/FPwX1ZtAFgZXJxTgqH5FaIIWkCAC5UA9/OqDeBYAudPegDPHABHHxNAHR+rlSDoHnDwcoYBeKsHqDzHr3i74e/pijYE6GImQD+HEuDRSkAA7ALtJEiQ9G4kmQDlBnUPbgfSZrHIYRsdkuv5PE3OUmYCCiABPL3rBKMR9TBaLObURBRthFWjieVDOCWA8+yuANGI7AsiEAD3wVT1UHSxUj4N4HYhA4xkgBqgE8TyK5TaVQNcrCNQAZoA2omqhEk8efAeAMrLdAndBLqCSrxOA1xxuDjmpoWqIDITEIBqiMsHLHRdZePMFVIMN4t6ErzrBBWtM8R0AIFxXa/o9kAFKOtl7QRSIV7p/clXeLhdsZ6xMMwi2QJzH1SE/yMgxDMcFHIn6QSl3WfvA4TizOoSMH8V2i6eHQoLn8kr6hIyeH1o9y7rAdihbdPqtJCAFAZtW8x1AHZLuIYetmfbGQIyr57rinWHPOM+yLKBLSLhkNcD8Fqq19ETT/yBMzTZFqNZ8+jIFjdb/20czHtR/wFg8KK+AeAXjA2+qvMsXNgAAAAASUVORK5CYII=");
}
.footer-channel-grid a:focus-visible { outline-offset: -2px; }
.footer-social-links a:hover,
.footer-social-links a:focus-visible {
    color: var(--gallery-champagne);
    text-decoration: underline;
    text-underline-offset: .25em;
}
.footer-shop-links {
    margin-top: 8px;
}
.footer-social-links + .footer-channel-label {
    margin-top: 10px;
    padding-top: 12px;
    border-top: 1px solid #d4a95e38;
}
.footer-shop-links a {
    gap: 5px;
    padding-inline: 9px;
    border: 1px solid #d4a95e80;
    border-radius: 3px;
}
.footer-shop-links .icon { margin-left: auto; }
.footer-shop-links a:hover,
.footer-shop-links a:focus-visible {
    border-color: var(--gallery-champagne);
    background: #d4a95e1a;
}
@media (prefers-reduced-motion: no-preference) {
    .footer-channel-grid .icon { transition: transform .2s var(--ease); }
    .footer-social-links a:hover .icon { transform: translateY(-2px); }
    .footer-shop-links a:hover .icon { transform: translateX(2px); }
}
@media (max-width: 980px) {
    .site-footer .footer-main { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .site-footer .footer-main > .footer-identity { grid-column: auto; }
}
@media (max-width: 840px) {
    .footer-invitation { grid-template-columns: 1fr; }
}
@media (max-width: 780px) {
    .site-footer .footer-bottom { display: flex; }
}
@media (max-width: 560px) {
    .footer-invitation { gap: 17px; padding: 22px 18px; }
    .footer-invitation-actions { column-gap: 17px; }
    .site-footer .footer-main { grid-template-columns: minmax(0, 1fr); gap: 23px; }
    .site-footer .footer-links {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        column-gap: 12px;
    }
    .site-footer .footer-links > .eyebrow { grid-column: 1 / -1; }
    .site-footer .footer-main > .footer-identity > p { margin-top: 12px; }
    .site-footer .footer-bottom { gap: 4px; }
    .footer-utilities { width: 100%; justify-content: space-between; }
}
.storefront .dialog-panel,
.storefront .image-zoom-dialog {
    border: 1px solid #c69a57;
    box-shadow: 0 24px 90px #24171173;
}
@media (prefers-reduced-motion: reduce) {
    .storefront .button,
    .storefront .button .icon { transition: none; }
    .storefront .button:hover .icon,
    .storefront .button:focus-visible .icon { transform: none; }
}
