/* Shared typography and a simple, catalogue-first storefront. */
:root {
    --default-font: 'Montserrat', sans-serif;
    --bs-body-font-family: 'Montserrat', sans-serif;
    --platform-ink: #242424;
    --platform-green: #292929;
    --platform-paper: #f7f7f7;
    --platform-line: #e6e6e6;
    --platform-muted: #686868;
    --platform-coral: #e76c50;
}
body.platform-app { font-family: 'Montserrat', sans-serif; line-height: 1.6; color-scheme: light; }
.platform-app :is(h1,h2,h3,h4,h5,h6,p,a,label,input,button,select,textarea) { font-family: inherit; }
.platform-app :is(h1,h2,h3,h4) { letter-spacing: -.025em; font-weight: 650; }
.platform-app :is(button,input,select,textarea) { line-height: 1.5; }
.platform-wrap { width: min(1240px, calc(100% - 48px)); }
.storefront-header-row { display: flex; align-items: center; gap: 32px; padding-block: 22px; }
.platform-brand { font-size: 25px; letter-spacing: -1px; }
.storefront-search { flex: 1; display: flex; align-items: center; max-width: 530px; background: #f5f5f5; border: 1px solid #dedede; border-radius: 24px; }
.storefront-search input { width: 100%; min-width: 0; border: 0; background: transparent; padding: 11px 18px; font-size: 13px; color: var(--platform-ink); border-radius: 24px; }
.storefront-search button { border: 0; background: transparent; padding: 10px 17px; color: var(--platform-ink); }
.platform-nav-actions { margin-left: auto; gap: 20px; }
.platform-nav-actions a { font-size: 12px; }
.platform-nav-actions i { font-size: 18px; }
.storefront-navigation { display: flex; gap: 30px; align-items: center; overflow-x: auto; padding-block: 0 15px; }
.storefront-navigation a { flex-shrink: 0; font-size: 12px; font-weight: 500; color: var(--platform-ink); padding-block: 5px; }
.storefront-navigation a[aria-current] { box-shadow: 0 2px var(--platform-coral); }
.storefront-navigation a:hover, .platform-nav-actions a:hover { color: #b84731; }
.storefront-hero { display: grid; grid-template-columns: 1.05fr 1fr; margin-top: 24px; background: #f6e6e0; min-height: 330px; overflow: hidden; }
.storefront-hero-copy { padding: 42px 48px; align-self: center; }
.storefront-hero h1 { font-size: clamp(28px, 3.4vw, 44px); line-height: 1.17; margin-bottom: 16px; }
.storefront-hero p { max-width: 400px; font-size: 15px; line-height: 1.7; margin-bottom: 24px; color: #51423d; }
.storefront-hero-images { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; padding: 24px; align-items: center; min-width: 0; }
.storefront-hero-images img { width: 100%; height: 250px; object-fit: cover; border-radius: 4px; }
.storefront-hero-images .storefront-hero-custom { grid-column: 1 / -1; height: 280px; }
.platform-btn { border-radius: 24px; min-height: 44px; padding: 11px 22px; font-size: 13px; font-weight: 600; gap: 8px; }
.platform-btn:hover { background: #484848; }
.platform-btn-outline:hover, .platform-btn-light:hover { background: #ededed; color: var(--platform-ink) !important; }
.platform-section { padding-block: 36px; }
.platform-section-heading { margin-bottom: 22px; align-items: center; gap: 12px; }
.platform-section h2, .platform-print-callout h2, .platform-final-cta h2 { font-size: 25px; line-height: 1.3; margin-bottom: 8px; }
.platform-section-heading p { font-size: 13px; }
.platform-eyebrow { font-size: 10px; letter-spacing: .08em; margin-bottom: 8px; }
.platform-text-link { font-size: 12px; font-weight: 600; color: var(--platform-ink); }
.storefront-range .platform-section-heading h2 { margin: 0; }
.storefront-category-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 20px; }
.storefront-category-card { position: relative; display: block; aspect-ratio: 4 / 3; overflow: hidden; background: #efebe6; }
.storefront-category-card:nth-child(3n+2) { background: #e2eee9; }
.storefront-category-card:nth-child(3n) { background: #eee3ed; }
.storefront-category-card img { width: 100%; height: 100%; object-fit: contain; padding: 14px 14px 45px; transition: transform .2s ease; }
.storefront-category-card:hover img { transform: scale(1.03); }
.storefront-category-card span { position: absolute; bottom: 16px; left: 50%; transform: translateX(-50%); background: #fff; border-radius: 24px; padding: 8px 15px; font-size: 12px; font-weight: 600; color: var(--platform-ink); white-space: nowrap; max-width: 92%; overflow: hidden; text-overflow: ellipsis; }
.storefront-benefits { display: grid; grid-template-columns: repeat(3,1fr); gap: 30px; padding-block: 20px 30px; border-bottom: 1px solid var(--platform-line); }
.storefront-benefits > div { display: flex; align-items: start; gap: 14px; }
.storefront-benefits i { font-size: 22px; margin-top: 3px; color: #555; }
.storefront-benefits h2 { font-size: 13px; margin-bottom: 6px; }
.storefront-benefits p { font-size: 12px; color: var(--platform-muted); margin: 0; }
.platform-shop-section { background: #fff; }
.platform-shop-grid { gap: 24px 20px; }
.platform-app .product-item { border: 0; border-radius: 0; }
.platform-app .product-item-image { background: #f5f5f5; aspect-ratio: 1; padding: 14px; border-radius: 4px; }
.platform-app .product-item-body { padding: 14px 0 0; }
.platform-app .product-item h2 { font-size: 14px; line-height: 1.5; font-weight: 500; }
.platform-app .product-item h3 { font-size: 14px; font-weight: 600; }
.platform-app .product-item .btn-default { border-radius: 22px; padding: 10px 18px; font-size: 12px; }
.platform-app .btn-default { padding: 12px 22px; font-size: 14px; line-height: 1.5; border-radius: 24px; }
.platform-app .btn-default::before, .platform-app .readmore-btn::before, .platform-arrow { display: none !important; }
.platform-app .readmore-btn { padding-right: 0; font-size: 14px; }
.platform-app .platform-btn::before, .platform-app .platform-text-link::before { content: none; }
.platform-card > a { display: block; aspect-ratio: 1; overflow: hidden; background: #f5f5f5; }
.platform-card > a > img { height: 100% !important; border-radius: 4px !important; }
.platform-card > .p-3 { padding: 14px 0 !important; }
.platform-card h2 { font-size: 16px !important; }
.platform-card p { font-size: 12px; margin-bottom: 8px; }
.platform-card h2 a { color: var(--platform-ink); }
.platform-category-tabs button { padding: 8px 14px; font-size: 12px; }
.platform-empty { background: #fafafa; border-radius: 4px; padding: 24px; }
.platform-empty h3 { font-size: 20px; }
.platform-empty p { font-size: 13px; }
.platform-print-callout { background: #f5f5f5; border-radius: 4px; padding: 32px; gap: 40px; margin-block: 24px; }
.platform-print-callout h2 { color: var(--platform-ink) !important; }
.platform-print-callout p, .platform-print-callout .platform-eyebrow { color: var(--platform-muted); font-size: 13px; }
.platform-print-steps li { color: var(--platform-ink); border-color: #ddd; font-size: 14px; padding-block: 12px; }
.platform-print-steps span { color: var(--platform-muted); }
.platform-print-callout .platform-btn-light { background: #292929; color: #fff !important; border-color: #292929; }
.platform-final-cta { padding-block: 42px; border-top: 1px solid var(--platform-line); }
.platform-final-cta h2 { font-size: 28px; margin-bottom: 20px; }
.platform-footer { background: #f7f7f7; padding-top: 36px; }
.platform-footer-grid { padding-bottom: 28px; }
.platform-page-title { font-size: clamp(28px,4vw,42px); letter-spacing: -.025em; }
.platform-app .page-header h1 { font-size: 34px; }
@media (max-width: 1000px) {
    .storefront-header-row { gap: 20px; flex-wrap: wrap; }
    .storefront-search { order: 3; flex-basis: 100%; max-width: none; }
    .storefront-hero-copy { padding: 32px; }
    .storefront-hero-images { gap: 10px; padding: 16px; }
    .storefront-hero-images img { height: 220px; }
}
@media (max-width: 767px) {
    .platform-wrap { width: calc(100% - 32px); }
    .storefront-header-row { padding-block: 16px; gap: 12px; }
    .platform-brand { font-size: 22px; }
    .platform-nav-actions { order: initial; width: auto; gap: 14px; padding: 0; }
    .platform-nav-actions a { font-size: 11px; }
    .storefront-sell, .storefront-signup { display: none; }
    .storefront-navigation { gap: 22px; padding-bottom: 12px; }
    .storefront-navigation a { font-size: 11px; }
    .storefront-hero { grid-template-columns: 1fr; margin-top: 16px; min-height: 0; }
    .storefront-hero-copy { text-align: center; padding: 26px 22px 18px; }
    .storefront-hero h1 { font-size: 29px; max-width: 420px; margin-inline: auto; }
    .storefront-hero p { font-size: 13px; margin: 0 auto 18px; }
    .storefront-hero .platform-actions { justify-content: center; }
    .storefront-hero-images { padding: 0 22px 22px; max-width: 460px; width: 100%; margin-inline: auto; }
    .storefront-hero-images img { height: 145px; }
    .storefront-hero-images .storefront-hero-custom { height: 180px; }
    .platform-section { padding-block: 28px; }
    .platform-section-heading { flex-direction: row; align-items: center; flex-wrap: wrap; margin-bottom: 18px; }
    .platform-section h2 { font-size: 21px; }
    .platform-section-heading p { font-size: 12px; }
    .storefront-category-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
    .storefront-category-card { aspect-ratio: 4 / 5; }
    .storefront-category-card span { font-size: 10px; padding: 7px 12px; bottom: 12px; }
    .storefront-benefits { gap: 16px; padding-block: 8px 22px; }
    .storefront-benefits > div { display: block; text-align: center; }
    .storefront-benefits i { font-size: 19px; margin-bottom: 10px; }
    .storefront-benefits h2 { font-size: 11px; line-height: 1.4; }
    .storefront-benefits p { font-size: 10px; line-height: 1.6; }
    .platform-app .product-item-body { padding: 12px 0 0; }
    .platform-app .product-item h2 { font-size: 12px; }
    .platform-app .product-item h3 { font-size: 13px; }
    .platform-print-callout { padding: 24px; gap: 18px; }
    .platform-footer-grid { gap: 24px; }
}
@media (prefers-reduced-motion: reduce) { .storefront-category-card img { transition: none; } }
/* Plain breadcrumb separators retain orientation without decorative arrows. */
.platform-app .product-single-breadcrumb-list .breadcrumb li::before {
    content: '/'; background: none; width: auto; height: auto; right: -24px;
    color: var(--platform-muted); font-size: 12px;
}
/* Three editorial hero compositions, managed in the super-admin portal. */
.hero-slider { margin-top:24px; position:relative; }
.hero-slider-stage { border-radius:16px; overflow:hidden; }
.hero-slide {
    --hero-bg:#f2eadd; --hero-ink:#283d32; --hero-accent:#d9704b; --hero-orbit:#e7d7ba;
    background:var(--hero-bg); color:var(--hero-ink); display:grid; grid-template-columns:1fr 1fr;
    min-height:470px; isolation:isolate; overflow:hidden; position:relative;
}
.hero-theme-lavender { --hero-bg:#eae4f4; --hero-ink:#38244d; --hero-accent:#76518b; --hero-orbit:#d9c9e9; }
.hero-theme-forest { --hero-bg:#173e35; --hero-ink:#fff8e8; --hero-accent:#f5c779; --hero-orbit:#245348; }
.hero-slide-copy { padding:64px 0 68px 60px; align-self:center; z-index:2; max-width:580px; }
.hero-slide-eyebrow { display:block; font-size:10px; line-height:1.6; font-weight:650; letter-spacing:.13em; margin-bottom:22px; color:var(--hero-ink); }
.platform-app .hero-slide :is(h1,h2) { color:var(--hero-ink); font-size:clamp(35px,4vw,52px); line-height:1.12; letter-spacing:-.045em; font-weight:750; white-space:pre-line; margin:0 0 22px; overflow-wrap:anywhere; }
.hero-slide-copy p { font-size:14px; line-height:1.8; max-width:370px; margin-bottom:26px; color:var(--hero-ink); opacity:.86; }
.hero-slide-button { display:inline-flex; align-items:center; justify-content:center; min-height:46px; padding:12px 24px; border-radius:26px; background:var(--hero-ink); color:var(--hero-bg); font-size:12px; font-weight:650; transition:transform .2s, box-shadow .2s; }
.hero-slide-button:hover { color:var(--hero-bg); transform:translateY(-2px); box-shadow:0 8px 20px #0002; }
.hero-slide-signature { display:block; margin-top:24px; font-size:10px; letter-spacing:.02em; opacity:.7; }
.hero-slide-art { position:relative; min-height:470px; z-index:1; }
.hero-art-orbit { position:absolute; width:430px; height:430px; border:1px solid var(--hero-accent); border-radius:50%; right:-10px; top:24px; opacity:.38; }
.hero-art-orbit::after { content:''; position:absolute; inset:28px; border-radius:50%; background:var(--hero-orbit); }
.hero-art-word { position:absolute; z-index:0; font-size:100px; font-weight:800; letter-spacing:-.07em; color:var(--hero-ink); opacity:.07; top:6px; right:24px; line-height:1; }
.hero-art-main { position:absolute; width:62%; height:365px; left:10%; top:51px; transform:rotate(-7deg); overflow:hidden; border-radius:130px 130px 12px 12px; box-shadow:0 24px 50px #182c2826; z-index:1; background:#f8f5ef; }
.hero-art-main img, .hero-art-secondary img { width:100%; height:100%; object-fit:cover; display:block; }
.hero-art-secondary { position:absolute; width:37%; height:210px; right:30px; bottom:40px; transform:rotate(10deg); border:8px solid #fff9ed; border-radius:8px; overflow:hidden; box-shadow:0 16px 32px #182c2833; z-index:2; background:#f8f5ef; }
.hero-art-badge { position:absolute; z-index:3; right:40px; top:85px; max-width:170px; padding:13px 18px; border-radius:50px; background:var(--hero-accent); color:#211d19; font-size:10px; font-weight:700; transform:rotate(6deg); box-shadow:0 6px 14px #0001; text-align:center; }
.hero-theme-lavender .hero-art-badge { color:#fff; }
.hero-art-index { position:absolute; bottom:20px; left:18%; color:var(--hero-ink); font-size:9px; letter-spacing:.17em; opacity:.65; }
.hero-theme-lavender .hero-art-main { transform:rotate(5deg); border-radius:12px; width:58%; left:10%; }
.hero-theme-lavender .hero-art-secondary { transform:rotate(-9deg); right:28px; bottom:34px; }
.hero-theme-forest .hero-art-main { border-radius:140px 140px 12px 12px; transform:rotate(-5deg); }
.hero-theme-forest .hero-art-badge { top:66px; right:28px; transform:rotate(-7deg); }
.hero-slider-controls { display:flex; align-items:center; justify-content:space-between; padding:15px 4px 0; }
.hero-slider-dots { display:flex; gap:18px; }
.hero-slider-dots button { display:flex; align-items:center; gap:9px; padding:8px 0; background:none; border:0; color:#888; font-size:10px; font-weight:650; }
.hero-dot-line { display:block; width:30px; height:2px; border-radius:2px; background:#dedede; transition:width .3s, background .3s; }
.hero-slider-dots button[aria-pressed=true] { color:#252525; }
.hero-slider-dots button[aria-pressed=true] .hero-dot-line { background:#252525; width:54px; }
.hero-slider-pause { background:none; border:0; color:#666; font-size:10px; padding:8px; }
.hero-slide:not([hidden]) .hero-slide-copy { animation:hero-copy-in .55s ease both; }
.hero-slide:not([hidden]) .hero-slide-art { animation:hero-art-in .7s ease both; }
@keyframes hero-copy-in { from {opacity:0; transform:translateY(10px);} to {opacity:1; transform:translateY(0);} }
@keyframes hero-art-in { from {opacity:0; transform:translateX(14px);} to {opacity:1; transform:translateX(0);} }
@media(max-width:1000px) {
    .hero-slide { min-height:410px; }
    .hero-slide-copy { padding:42px 0 45px 35px; }
    .platform-app .hero-slide :is(h1,h2) { font-size:39px; }
    .hero-slide-art { min-height:410px; }
    .hero-art-orbit { width:340px; height:340px; top:35px; }
    .hero-art-main { height:310px; top:48px; left:9%; }
    .hero-art-secondary { height:175px; bottom:34px; right:20px; border-width:6px; }
    .hero-art-badge { right:15px; top:69px; padding:10px 14px; max-width:145px; }
}
@media(max-width:767px) {
    .hero-slider { margin-top:16px; }
    .hero-slider-stage { border-radius:12px; }
    .hero-slide { grid-template-columns:1fr; min-height:0; }
    .hero-slide-copy { padding:30px 26px 12px; max-width:none; }
    .hero-slide-eyebrow { font-size:8px; margin-bottom:13px; letter-spacing:.1em; }
    .platform-app .hero-slide :is(h1,h2) { font-size:clamp(29px,7.7vw,40px); margin-bottom:14px; max-width:440px; }
    .hero-slide-copy p { font-size:12px; line-height:1.7; margin-bottom:18px; max-width:400px; }
    .hero-slide-button { min-height:42px; padding:11px 20px; font-size:11px; }
    .hero-slide-signature { display:none; }
    .hero-slide-art { min-height:245px; width:100%; max-width:480px; margin-inline:auto; }
    .hero-art-orbit { width:230px; height:230px; top:8px; right:30px; }
    .hero-art-word { font-size:68px; top:7px; right:23px; }
    .hero-art-main { width:47%; height:210px; left:20%; top:15px; border-radius:90px 90px 8px 8px; }
    .hero-art-secondary { width:29%; height:136px; right:28px; bottom:23px; border-width:5px; }
    .hero-art-badge { top:37px; right:22px; font-size:8px; padding:9px 12px; max-width:135px; }
    .hero-art-index { bottom:7px; left:20%; font-size:7px; }
    .hero-theme-lavender .hero-art-main { width:45%; left:19%; }
    .hero-theme-lavender .hero-art-secondary { right:27px; bottom:23px; }
    .hero-theme-forest .hero-art-badge { top:34px; right:22px; }
    .hero-slider-controls { padding-top:8px; }
    .hero-slider-dots { gap:14px; }
    .hero-dot-line { width:23px; }
    .hero-slider-dots button[aria-pressed=true] .hero-dot-line { width:38px; }
}
@media(prefers-reduced-motion:reduce) {
    .hero-slide:not([hidden]) .hero-slide-copy, .hero-slide:not([hidden]) .hero-slide-art { animation:none; }
    .hero-slide-button, .hero-dot-line { transition:none; }
}
/* Designer banners are displayed as complete images without text overlays or cropping. */
.hero-banner-slide { display:block; background:#F6F5EF; }
.hero-banner-slide a, .hero-banner-slide picture { display:block; }
.hero-banner-slide img { display:block; width:100%; height:auto; }
.platform-app :is(.product-item, .product-item-image, .platform-product-image,
.platform-print-product, .platform-selection-image, .storefront-category-card,
.platform-saved-product-preview, .product-single-image, .product-single-slider,
.product-single-slide, .product-single-slide img) { background:#F6F5EF; }
.platform-app .storefront-category-card:nth-child(n) { background:#F6F5EF; }
.platform-app .product-single-image-box, .platform-app .product-single-image-slider, .platform-app .product-single-image-item { background:#F6F5EF; }

.custom-design-service{color:var(--platform-ink)}.custom-design-service p{font-size:14px;color:var(--platform-muted)}.custom-design-service:hover{border-color:#999}

/* About Customade: a fuller brand story with quiet, product-led imagery. */
.about-hero{display:grid;grid-template-columns:1.12fr 1fr;background:#F6F5EF;margin-top:28px;border-radius:14px;overflow:hidden}
.about-hero-copy{padding:65px 54px;align-self:center}
.platform-app .about-hero h1{font-size:clamp(38px,4.4vw,60px);line-height:1.1;letter-spacing:-.045em;margin-bottom:24px;max-width:540px}
.about-hero-copy>p{font-size:16px;line-height:1.85;max-width:510px;color:#555;margin-bottom:26px}
.about-hero-visual{position:relative;min-height:450px;padding:28px;background:#e6e9df}
.about-hero-visual img{width:100%;height:100%;object-fit:cover;border-radius:100px 100px 8px 8px;max-height:470px}
.about-hero-visual>span{position:absolute;bottom:40px;right:24px;background:#fffaf1;padding:15px 22px;border-radius:8px;font-size:13px;font-weight:650;line-height:1.5;transform:rotate(-5deg)}
.about-story{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;padding-block:72px}
.platform-app .about-story h2,.platform-app .about-section>h2,.platform-app .about-creative h2{font-size:32px;line-height:1.25;max-width:650px;margin-bottom:20px}
.about-story p,.about-creative p{font-size:15px;line-height:1.85;color:#555}
.about-mission{padding:45px 54px;background:#244c3c;border-radius:12px}
.about-mission .platform-eyebrow{color:#cadccc}
.platform-app .about-mission h2{font-size:36px;line-height:1.25;color:#fff8e8;max-width:760px;margin-bottom:18px}
.about-mission p{font-size:15px;line-height:1.85;color:#e1e9e0;max-width:770px;margin:0}
.about-section{padding-block:58px}
.about-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:28px}
.about-card{padding:28px;border:1px solid #e5e5df;border-radius:8px;background:#fff}
.about-card-number{font-size:12px;color:#aa6347;display:block;margin-bottom:25px}
.platform-app .about-card h3{font-size:19px;line-height:1.4;margin-bottom:14px}
.about-card p{font-size:13px;line-height:1.85;color:#666;margin:0}
.about-creative{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center;padding-block:16px}
.about-creative>img{width:100%;max-height:440px;object-fit:cover;border-radius:10px;background:#F6F5EF}
.about-values .about-card{border:0;border-top:2px solid #dedfd6;border-radius:0;padding:25px 0}
.about-process{border-top:1px solid #e5e5df}
.about-process-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px;margin-block:28px 12px}
.about-process-grid>article>span{font-size:11px;color:#9b6149}
.about-process-grid h3{font-size:15px;line-height:1.4;margin:16px 0 10px}
.about-process-grid p{font-size:12px;line-height:1.8;color:#666}
.about-final{background:#F6F5EF;border-radius:12px;text-align:center;padding:48px 30px;margin-bottom:50px}
.platform-app .about-final h2{font-size:34px;margin-bottom:16px}
.about-final>p{max-width:620px;margin:0 auto 22px;font-size:14px;line-height:1.85;color:#555}
.about-final .platform-actions{justify-content:center}
@media(max-width:1000px){.about-hero-copy{padding:36px}.about-story{gap:40px}.about-creative{gap:35px}.about-process-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:767px){
.about-hero{grid-template-columns:1fr;margin-top:16px}.about-hero-copy{padding:30px 24px}.platform-app .about-hero h1{font-size:38px}.about-hero-copy>p{font-size:14px}.about-hero-visual{min-height:0;padding:20px}.about-hero-visual img{height:280px;object-fit:contain;border-radius:8px}.about-hero-visual>span{bottom:30px;font-size:11px}
.about-story{grid-template-columns:1fr;gap:12px;padding-block:36px}.platform-app .about-story h2,.platform-app .about-section>h2,.platform-app .about-creative h2{font-size:27px}
.about-mission{padding:30px 24px}.platform-app .about-mission h2{font-size:28px}.about-mission p{font-size:14px}
.about-section{padding-block:36px}.about-card-grid{grid-template-columns:1fr;gap:14px}.about-card{padding:24px}.about-card-number{margin-bottom:15px}
.about-creative{grid-template-columns:1fr;gap:24px}.about-creative>img{max-height:300px;object-fit:contain}.about-story p,.about-creative p{font-size:14px}
.about-process-grid{grid-template-columns:1fr 1fr;gap:18px}.about-final{padding:32px 24px;margin-bottom:30px}.platform-app .about-final h2{font-size:28px}
}
/* Shared premium footer */
.platform-footer.premium-footer{background:#183a2e;color:#f6f5ef;padding:0;margin-top:32px;border-top:0}
.premium-footer-invitation{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:52px 0 44px;border-bottom:1px solid #ffffff26}
.premium-footer-eyebrow{display:block;color:#d6ba94;font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;margin-bottom:15px}
.platform-app .premium-footer-invitation h2{font-size:clamp(27px,3vw,40px);line-height:1.2;letter-spacing:-.035em;color:#f6f5ef;margin:0 0 14px}
.premium-footer-invitation p{max-width:590px;font-size:14px;line-height:1.8;color:#d2ddd6;margin:0}
.premium-footer .premium-footer-button{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;background:#f6f5ef;color:#183a2e;border:1px solid #f6f5ef;border-radius:7px;padding:16px 23px;font-size:13px;font-weight:650;text-decoration:none;transition:background .2s,color .2s}
.premium-footer .premium-footer-button:hover{background:#e5d6bd;border-color:#e5d6bd;color:#183a2e}
.premium-footer-columns{display:grid;grid-template-columns:1.6fr 1fr .9fr 1.35fr;gap:42px;padding:48px 0}
.premium-footer-wordmark{display:inline-block;color:#f6f5ef;font-size:34px;font-weight:750;letter-spacing:-.06em;text-decoration:none;line-height:1.2}
.premium-footer-wordmark span{color:#db966e}
.premium-footer-wordmark:hover{color:#f6f5ef}
.premium-footer-brand>p{font-size:14px;color:#e3e9e3;margin:20px 0 12px;line-height:1.7}
.premium-footer-brand-note{display:block;max-width:230px;font-size:12px;color:#b9cdc0;line-height:1.85}
.platform-app .premium-footer-columns h3{font-size:12px;font-weight:650;color:#f6f5ef;letter-spacing:.035em;margin:0 0 20px}
.premium-footer-columns nav>a,.premium-footer-contact>a{display:block;width:fit-content;color:#d2ddd6;font-size:12px;line-height:1.6;text-decoration:none;margin-bottom:12px}
.premium-footer-contact>p{font-size:12px;line-height:1.85;color:#b9cdc0;margin:0 0 18px;max-width:280px}
.premium-footer-contact>a{overflow-wrap:anywhere;font-weight:550}
.premium-footer-hours{display:block;color:#b9cdc0;font-size:11px;line-height:1.8;margin-top:18px}
.premium-footer-legal{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid #ffffff26;padding:23px 0 26px;font-size:10px;color:#b9cdc0}
.premium-footer-legal nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px 22px}
.premium-footer-legal a{color:#b9cdc0;text-decoration:none}
.premium-footer-columns a:hover,.premium-footer-legal a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
.premium-footer a:focus-visible{outline:2px solid #e5d6bd;outline-offset:5px;border-radius:3px}
@media(max-width:1000px){.premium-footer-columns{grid-template-columns:1.3fr 1fr;gap:36px}.premium-footer-invitation{gap:28px}.premium-footer-legal{align-items:flex-start}.premium-footer-legal nav{max-width:55%}}
@media(max-width:600px){.platform-footer.premium-footer{margin-top:20px}.premium-footer-invitation{align-items:flex-start;flex-direction:column;padding:36px 0 32px;gap:22px}.premium-footer-invitation p{font-size:13px}.premium-footer-columns{grid-template-columns:1fr 1fr;padding:32px 0;gap:30px 24px}.premium-footer-brand,.premium-footer-contact{grid-column:1/-1}.premium-footer-brand-note{max-width:100%}.premium-footer-wordmark{font-size:32px}.premium-footer-brand>p{margin-top:14px}.premium-footer-contact>p{max-width:100%}.premium-footer-legal{flex-direction:column;gap:16px;line-height:1.8}.premium-footer-legal nav{max-width:100%;justify-content:flex-start;gap:12px 18px}.premium-footer .premium-footer-button{min-height:48px}}
/* Light grey footer palette */
.platform-footer.premium-footer{background:#f7f7f7;color:#202d28}
.premium-footer-invitation,.premium-footer-legal{border-color:#dedfdc}
.premium-footer-eyebrow{color:#6a756c}
.platform-app .premium-footer-invitation h2,.platform-app .premium-footer-columns h3,.premium-footer-wordmark,.premium-footer-wordmark:hover{color:#202d28}
.premium-footer-invitation p,.premium-footer-brand>p,.premium-footer-columns nav>a,.premium-footer-contact>a{color:#525d56}
.premium-footer-brand-note,.premium-footer-contact>p,.premium-footer-hours,.premium-footer-legal,.premium-footer-legal a{color:#606b64}
.premium-footer .premium-footer-button{background:#244c3c;border-color:#244c3c;color:#fff}
.premium-footer .premium-footer-button:hover{background:#183a2e;border-color:#183a2e;color:#fff}
.premium-footer-columns a:hover,.premium-footer-legal a:hover{color:#183a2e}
.premium-footer a:focus-visible{outline-color:#244c3c}