/* Coastal Calm — pages styles. Loaded after coastal.css.
   Scope: account pages, content/policy pages, contact, store detail, quiz, blog.
   Everything is scoped under .c-pg (page wrapper added in the page views)
   or under .c-phero (shared page hero partial: includes/coastal-pages/hero). */

/* =====================================================================
   PAGE HERO
   ===================================================================== */
.c-phero { background: var(--c-sand); border-bottom: 1px solid var(--c-sand-line); padding: 34px 0 54px; }
.c-phero--seafoam { background: var(--c-seafoam); border-bottom-color: #d3e3e3; }
.c-phero--shell { background: var(--c-shell); }
.c-phero .c-phero__crumbs { background: transparent !important; padding: 0 !important; border: 0 !important; }
.c-phero__crumbs { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; font-size: 13px; color: var(--c-muted); margin-bottom: 30px; }
.c-phero__crumbs a { color: var(--c-muted) !important; font-weight: 500; }
.c-phero__crumbs a:hover { color: var(--c-ocean) !important; }
.c-phero__crumbs span[aria-current] { color: var(--c-ink); font-weight: 600; }
.c-phero .c-eyebrow { margin-bottom: 14px; }
body .c-phero .c-phero__title { font-size: 52px; line-height: 1.08; margin: 0; max-width: 820px; color: var(--c-ink); }
.c-phero__lead { font-size: 18px; line-height: 1.6; color: var(--c-text); max-width: 620px; margin: 18px 0 0; }
.c-phero--center, .c-phero--center .c-phero__title, .c-phero--center .c-phero__lead { text-align: center !important; }
.c-phero--center .c-phero__crumbs { justify-content: center; }
.c-phero--center .c-eyebrow { justify-content: center; }
body .c-phero--center .c-phero__title, body .c-phero--center .c-phero__lead { margin-left: auto; margin-right: auto; }
@media (max-width: 991px) {
    .c-phero { padding: 24px 0 40px; }
    .c-phero__crumbs { margin-bottom: 22px; }
    body .c-phero .c-phero__title { font-size: 38px; }
    .c-phero__lead { font-size: 16px; }
}
@media (max-width: 575px) { body .c-phero .c-phero__title { font-size: 32px; } }

/* =====================================================================
   SHARED PAGE PRIMITIVES
   ===================================================================== */
.c-pg { background: var(--c-shell); color: var(--c-ink); }
.c-pg__body { padding: 56px 0 96px; }
.c-pg__body--tight { padding-top: 40px; }
.c-pg .c-card { background: #fff; border: 1px solid var(--c-sand-line); border-radius: 24px; padding: 36px; box-shadow: none; }
.c-pg .c-btn--block { width: 100%; }
.c-pg .c-btn i { font-size: 14px; }
.c-pg .form-label, .c-pg label { display: block; font-size: 14px; font-weight: 600; color: var(--c-ink); margin-bottom: 8px; }
.c-pg .form-control { font-size: 15px; padding: 10px 16px; }
.c-pg .form-control::placeholder { color: #93a0a6; opacity: 1; }
.c-pg textarea.form-control { min-height: 140px; padding-top: 14px; resize: vertical; }
.c-pg .text-danger, .c-pg small.errors { color: var(--c-coral) !important; font-size: 13px; }
.c-field { margin-bottom: 20px; }
.c-field__row { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; }
.c-field__row label { margin-bottom: 8px; }
.c-field-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0 16px; }
@media (max-width: 575px) {
    .c-field-grid { grid-template-columns: 1fr; }
    .c-pg .c-card { padding: 24px 20px; border-radius: 20px; }
    .c-pg__body { padding: 36px 0 64px; }
}

/* Long-form copy: 720px measure */
.c-prose { max-width: 720px; margin: 0 auto; font-size: 17px; line-height: 1.75; color: var(--c-text); }
.c-prose > :first-child { margin-top: 0; }
.c-prose p { margin: 0 0 18px; }
body .c-prose h2 { font-size: 28px; line-height: 1.25; margin: 48px 0 14px; color: var(--c-ink); }
body .c-prose h3 { font-size: 22px; line-height: 1.3; margin: 36px 0 12px; color: var(--c-ink); }
.c-prose h4 { font-size: 17px; font-weight: 700; color: var(--c-ink); margin: 28px 0 8px; }
.c-prose ul, .c-prose ol { padding-left: 22px; margin: 0 0 18px; }
.c-prose li { margin-bottom: 8px; }
.c-prose li::marker { color: var(--c-ocean); }
.c-prose a { color: var(--c-ocean); text-decoration: underline; text-underline-offset: 3px; text-decoration-color: rgba(176, 38, 10, .35); }
.c-prose a:hover { color: var(--c-ink); text-decoration-color: currentColor; }
.c-prose strong { color: var(--c-ink); }
.c-prose .c-prose__meta { display: inline-flex; gap: 8px; align-items: center; font-size: 14px; color: var(--c-muted); background: #fff; border: 1px solid var(--c-sand-line); border-radius: 999px; padding: 6px 14px; margin-bottom: 28px; }
.c-prose__note { background: var(--c-seafoam); border-radius: 20px; padding: 24px 28px; margin: 36px 0 0; font-size: 15px; line-height: 1.65; color: var(--c-ink); }
.c-prose__note p:last-child { margin-bottom: 0; }
@media (max-width: 575px) { .c-prose { font-size: 16px; } body .c-prose h2 { font-size: 24px; margin-top: 38px; } }

/* =====================================================================
   SIGN IN / REGISTER
   ===================================================================== */
.c-pg--login .c-auth-social { max-width: 1040px; margin: 0 auto 32px; text-align: center; }
.c-pg--login .c-auth-social__label { display: block; font-size: 14px; font-weight: 600; color: var(--c-muted); margin-bottom: 14px; }
.c-pg--login .c-auth-social__btns { display: flex; justify-content: center; gap: 12px; flex-wrap: wrap; }
.c-pg--login .c-auth-social__btns .c-btn { min-width: 200px; background: #fff; border-color: #d9cfbf; padding: 13px 24px; font-size: 15px; }
.c-pg--login .c-auth-social__btns .c-btn:hover { background: var(--c-navy); border-color: var(--c-navy); }
.c-pg--login .c-auth-divider { display: flex; align-items: center; gap: 16px; margin: 32px auto 0; max-width: 460px; color: var(--c-muted); font-size: 13px; letter-spacing: .06em; text-transform: uppercase; font-weight: 600; }
.c-pg--login .c-auth-divider::before, .c-pg--login .c-auth-divider::after { content: ''; flex: 1; height: 1px; background: var(--c-sand-line); }
.c-pg--login .c-auth-grid { display: grid; grid-template-columns: 1fr 1.15fr; gap: 28px; max-width: 1040px; margin: 0 auto; align-items: start; }
.c-pg--login .c-auth-card { padding: 40px; }
.c-pg--login .c-auth-card .c-eyebrow { margin-bottom: 8px; }
body .c-pg--login .c-auth-card__title { font-size: 32px; margin: 0 0 26px; }
.c-pg--login .c-auth-card__forgot { font-size: 13px; font-weight: 600; color: var(--c-ocean) !important; }
.c-pg--login .c-auth-card__forgot:hover { color: var(--c-ink) !important; text-decoration: underline; }
.c-pg--login .c-auth-card .c-btn--block { margin-top: 6px; }
.c-pg--login .c-auth-perks { list-style: none; margin: 30px 0 0; padding: 24px 0 0; border-top: 1px solid var(--c-sand-line); }
.c-pg--login .c-auth-perks li { position: relative; padding-left: 28px; margin-bottom: 10px; font-size: 14px; color: var(--c-text); }
.c-pg--login .c-auth-perks li::before { content: ''; position: absolute; left: 0; top: 3px; width: 16px; height: 16px; border-radius: 50%; background: var(--c-seafoam) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 8.2l2.2 2.2 4.8-4.8' fill='none' stroke='%231f5f7a' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat; }
@media (max-width: 991px) {
    .c-pg--login .c-auth-grid { grid-template-columns: 1fr; max-width: 560px; }
    .c-pg--login .c-auth-card { padding: 28px 22px; }
}

/* =====================================================================
   ACCOUNT AREA (profile, orders, order detail, wishlist)
   ===================================================================== */
.c-pg .c-btn--sm { padding: 10px 18px; font-size: 14px; }
.c-acct { display: grid; grid-template-columns: 280px minmax(0, 1fr); gap: 32px; align-items: start; }
.c-acct__nav { position: sticky; top: 150px; background: #fff; border: 1px solid var(--c-sand-line); border-radius: 24px; padding: 20px; }
.c-acct__who { display: flex; align-items: center; gap: 12px; padding: 4px 6px 18px; margin-bottom: 12px; border-bottom: 1px solid var(--c-sand-line); min-width: 0; }
.c-acct__avatar { width: 44px; height: 44px; border-radius: 50%; background: var(--c-seafoam); color: var(--c-ocean); display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; }
.c-acct__who-text { display: flex; flex-direction: column; min-width: 0; }
.c-acct__who-text strong { font-size: 15px; color: var(--c-ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.c-acct__who-text span { font-size: 13px; color: var(--c-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.c-acct__who-text strong:empty::before { content: 'My account'; }

/* side menu (includes/side-menu) - shared by every account page */
.c-pg .list-group { display: flex; flex-direction: column; gap: 2px; margin: 0; padding: 0; border: 0; border-radius: 0; }
.c-pg .list-group-item { background: transparent !important; border: 0 !important; padding: 0 !important; margin: 0 !important; border-radius: 0 !important; }
.c-pg .list-group-item:not(:has(a)) { display: none; }
.c-pg .list-group-item .nav-link {
    display: flex; align-items: center; gap: 12px; padding: 11px 14px !important;
    border-radius: 999px; font-size: 15px; font-weight: 500; color: var(--c-ink) !important;
    background: transparent; transition: background .2s, color .2s;
}
.c-pg .list-group-item .nav-link i { width: 18px; text-align: center; font-size: 14px; color: var(--c-muted); transition: color .2s; }
.c-pg .list-group-item .nav-link:hover { background: var(--c-shell); color: var(--c-ocean) !important; }
.c-pg .list-group-item .nav-link:hover i { color: var(--c-ocean); }
.c-pg .list-group-item .nav-link.log_out { color: var(--c-coral) !important; margin-top: 6px; }
.c-pg .list-group-item .nav-link.log_out i { color: var(--c-coral); }
.c-pg .list-group-item .nav-link.log_out:hover { background: #fbeeec; }
/* active pill per page */
.c-acct--profile .list-group a[href$="/profile"],
.c-acct--wishlist .list-group a[href$="/wishlist"],
.c-acct--orders .list-group a[href$="/orders"],
.c-pg--notifications .list-group a[href$="/notifications"],
.c-pg--points .list-group a[href$="/points"],
.c-pg--wallet .list-group a[href$="/wallet"],
.c-pg--shipping-address .list-group a[href$="/shipping-address"],
.c-pg--change-password .list-group a[href$="/change-password"] { background: var(--c-navy) !important; color: #fff !important; font-weight: 600; }
.c-acct--profile .list-group a[href$="/profile"] i,
.c-acct--wishlist .list-group a[href$="/wishlist"] i,
.c-acct--orders .list-group a[href$="/orders"] i,
.c-pg--notifications .list-group a[href$="/notifications"] i,
.c-pg--points .list-group a[href$="/points"] i,
.c-pg--wallet .list-group a[href$="/wallet"] i,
.c-pg--shipping-address .list-group a[href$="/shipping-address"] i,
.c-pg--change-password .list-group a[href$="/change-password"] i { color: var(--c-gold) !important; }

.c-acct__main { min-width: 0; }
.c-acct__head { display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; margin-bottom: 26px; flex-wrap: wrap; }
.c-acct__head--pad { padding: 32px 32px 0; }
body .c-acct__title { font-size: 30px; margin: 0 0 6px; line-height: 1.2; }
.c-acct__sub { margin: 0; color: var(--c-muted); font-size: 15px; }
.c-acct__sub span:empty { display: none; }
.c-acct__actions { display: flex; gap: 12px; margin-top: 8px; padding-top: 24px; border-top: 1px solid var(--c-sand-line); }
.c-pg .invalid-feedback { color: var(--c-coral); font-size: 13px; }
.c-pg .c-card--flush { padding: 0; overflow: hidden; }

/* orders table */
.c-table-wrap { overflow-x: auto; padding: 0 16px 16px; }
.c-pg .c-table { margin: 0; min-width: 640px; border-collapse: separate; border-spacing: 0; }
.c-pg .c-table thead tr { border: 0; }
.c-pg .c-table thead th {
    background: var(--c-shell); border: 0 !important; color: var(--c-muted);
    font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; padding: 14px 16px;
}
.c-pg .c-table thead th:first-child { border-radius: 999px 0 0 999px; }
.c-pg .c-table thead th:last-child { border-radius: 0 999px 999px 0; }
.c-pg .c-table tbody td { border: 0 !important; border-bottom: 1px solid var(--c-sand-line) !important; padding: 18px 16px; font-size: 15px; color: var(--c-ink); align-items: center; display: flex; flex-wrap: wrap; gap: 6px; }
.c-pg .c-table tbody tr:last-child td { border-bottom: 0 !important; }
.c-pg .c-table .order-no { font-weight: 700; color: var(--c-ink); }
.c-pg .c-table .order-amount { font-family: var(--c-serif); font-size: 17px; color: var(--c-ink); }
.c-pg .c-table .order-status { font-weight: 600; }
.c-pg .c-table .order-status .btn { font-size: 12px !important; padding: 5px 12px !important; line-height: 1.2; }
.c-pg .c-table .order-detail a { font-weight: 600; color: var(--c-ocean); }
.c-pg .c-table .order-detail a::after { content: ' \2192'; }
.c-pg .c-table tbody:empty::after {
    content: 'No orders yet. When you place an order it will show up here.';
    display: block; padding: 40px 16px; text-align: center; color: var(--c-muted); font-size: 15px;
}

/* wishlist */
.c-wish-list { display: flex; flex-direction: column; gap: 16px; }
.c-wish-list:empty { background: #fff; border: 1px dashed #d9cfbf; border-radius: 24px; padding: 56px 24px; text-align: center; }
.c-wish-list:empty::before { content: 'Your wishlist is empty. Tap the heart on any product to save it here.'; color: var(--c-muted); font-size: 15px; }
.c-pg .c-wish { display: grid !important; grid-template-columns: 140px minmax(0, 1fr); gap: 24px; align-items: center; background: #fff; border: 1px solid var(--c-sand-line); border-radius: 24px; padding: 18px; margin: 0; transition: box-shadow .2s; }
.c-pg .c-wish:hover { box-shadow: var(--c-shadow); }
.c-wish__img { background: var(--c-sand); border-radius: 16px; aspect-ratio: 1; overflow: hidden; display: flex; align-items: center; justify-content: center; }
.c-wish__img img { width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; }
.c-wish__body { display: flex; justify-content: space-between; align-items: center; gap: 24px; flex-wrap: wrap; }
.c-wish__info { flex: 1 1 260px; min-width: 0; }
.c-wish__info h3 { font-family: var(--c-sans) !important; font-size: 18px !important; font-weight: 600 !important; margin: 0 0 6px; line-height: 1.35; }
.c-wish__info h3 a { color: var(--c-ink) !important; }
.c-wish__info h3 a:hover { color: var(--c-ocean) !important; }
.c-wish__info p { color: var(--c-muted); font-size: 14px; margin: 0 0 8px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.c-wish__info p:empty { display: none; }
.c-wish__info .price { font-family: var(--c-serif); font-size: 20px; color: var(--c-ink); }
.c-wish__info .price span { font-family: var(--c-serif); }
.c-wish__actions { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.c-pg .item-quantity { display: inline-flex !important; align-items: center; width: auto !important; border: 1px solid var(--c-sand-line); border-radius: 999px; background: #fff; padding: 3px; flex-wrap: nowrap; }
.c-pg .item-quantity .form-control { width: 44px !important; min-height: 36px !important; border: 0 !important; text-align: center; padding: 0 !important; background: transparent; font-weight: 600; box-shadow: none !important; order: 2; }
.c-pg .item-quantity .input-group-btn { display: contents; }
.c-pg .item-quantity .btn { width: 34px; height: 34px; padding: 0 !important; border-radius: 50% !important; background: var(--c-shell) !important; border: 0 !important; color: var(--c-ink) !important; font-size: 11px; display: inline-flex; align-items: center; justify-content: center; }
.c-pg .item-quantity .quantity-left-minus { order: 1; }
.c-pg .item-quantity .quantity-right-plus { order: 3; }
.c-pg .item-quantity .btn:hover { background: var(--c-seafoam) !important; }
.c-wish__actions .share a { font-size: 14px; font-weight: 600; color: var(--c-muted) !important; }
.c-wish__actions .share a:hover { color: var(--c-coral) !important; }

/* order detail */
.c-acct--order-detail .c-acct__main > .row { margin-left: -10px; margin-right: -10px; }
.c-acct--order-detail .c-acct__main > .row > [class*="col-"] { padding: 10px; display: flex; flex-direction: column; }
.c-acct--order-detail .c-acct__main > .row > [class*="col-"] > .heading { background: #fff; border: 1px solid var(--c-sand-line); border-bottom: 0; border-radius: 20px 20px 0 0; padding: 20px 22px 0; margin: 0; }
.c-acct--order-detail .heading h2 { font-family: var(--c-sans) !important; font-size: 12px !important; font-weight: 700 !important; letter-spacing: .1em; text-transform: uppercase; color: var(--c-ocean) !important; margin: 0; }
.c-acct--order-detail .heading h2 small { font-size: inherit; font-weight: inherit; color: inherit; }
.c-acct--order-detail .heading hr { display: none; }
.c-acct--order-detail .c-acct__main > .row > [class*="col-"] > .table { background: #fff; border: 1px solid var(--c-sand-line); border-top: 0; border-radius: 0 0 20px 20px; margin: 0; flex: 1; }
.c-acct--order-detail .table td, .c-acct--order-detail .table th { border: 0 !important; padding: 10px 22px; font-size: 15px; color: var(--c-ink); }
.c-acct--order-detail .table.order-id tbody tr:first-child td { padding-top: 14px; }
.c-acct--order-detail .table.order-id tbody tr:last-child td { padding-bottom: 20px; }
.c-acct--order-detail .table .underline { text-decoration: none; font-weight: 600; }
.c-acct--order-detail .order-status { font-weight: 700; color: var(--c-ocean); }
.c-acct--order-detail .c-acct__main > .table.items { background: #fff; border: 1px solid var(--c-sand-line); border-radius: 20px; overflow: hidden; margin: 10px 0 16px; }
.c-acct--order-detail .table.items thead th { background: var(--c-shell); color: var(--c-muted); font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; padding: 14px 16px; }
.c-acct--order-detail .table.items tbody td { border-top: 1px solid var(--c-sand-line) !important; padding: 16px; align-items: center; display: flex; }
.c-acct--order-detail .table.items .order-image { border-radius: 12px; background: var(--c-sand); }
.c-acct--order-detail .c-acct__main > .table.order-id { background: #fff; border: 1px solid var(--c-sand-line); border-radius: 20px; margin: 0 0 16px auto; max-width: 440px; }
.c-acct--order-detail .c-acct__main > .table.order-id td.col-7 { display: none; }
.c-acct--order-detail .c-acct__main > .table.order-id tr { display: flex; justify-content: space-between; }
.c-acct--order-detail .c-acct__main > .table.order-id td { flex: 1 1 auto; max-width: none; }
.c-acct--order-detail .c-acct__main > .table.order-id .right { text-align: right; }
.c-acct--order-detail .c-acct__main > .table.order-id tr:last-child { border-top: 1px solid var(--c-sand-line); }
.c-acct--order-detail .c-acct__main > .table.order-id .order-total { font-family: var(--c-serif); font-size: 20px; color: var(--c-ink); }
.c-acct--order-detail .comments-area { background: #fff; border: 1px solid var(--c-sand-line); border-radius: 20px; padding: 24px; }
.c-acct--order-detail .comments-area #saveComments { margin-top: 12px !important; }

@media (max-width: 991px) {
    .c-acct { grid-template-columns: 1fr; gap: 20px; }
    .c-acct__nav { position: static; padding: 14px; }
    .c-acct__nav .list-group { flex-direction: row; overflow-x: auto; gap: 6px; padding-bottom: 4px; scrollbar-width: none; }
    .c-acct__nav .list-group-item .nav-link { white-space: nowrap; border: 1px solid var(--c-sand-line); background: #fff; }
    .c-acct__nav .list-group-item .nav-link.log_out { margin-top: 0; }
    .c-acct__head--pad { padding: 24px 20px 0; }
    body .c-acct__title { font-size: 26px; }
}
@media (max-width: 575px) {
    .c-pg .c-wish { grid-template-columns: 96px minmax(0, 1fr); gap: 14px; padding: 14px; }
    .c-wish__body { gap: 12px; }
}

/* legacy account pages (change password, addresses, points, wallet, notifications) */
.c-pg--legacy { padding-bottom: 80px; }
.c-pg--legacy nav[aria-label="breadcrumb"] { background: var(--c-seafoam) !important; padding: 28px 0 !important; margin-bottom: 40px; border-bottom: 1px solid #d3e3e3; }
.c-pg--legacy nav[aria-label="breadcrumb"] .breadcrumb { background: transparent !important; padding: 0 !important; margin: 0; font-size: 13px; }
.c-pg--legacy nav[aria-label="breadcrumb"] .breadcrumb-item a { color: var(--c-muted) !important; }
.c-pg--legacy nav[aria-label="breadcrumb"] .breadcrumb-item.active { color: var(--c-ink) !important; font-weight: 600; }
.c-pg--legacy .heading h2 { font-size: 26px !important; margin-bottom: 4px; }
.c-pg--legacy .heading hr { border-color: var(--c-sand-line); margin: 12px 0 22px; }
.c-pg--legacy .col-lg-3 .list-group { background: #fff; border: 1px solid var(--c-sand-line); border-radius: 24px; padding: 14px; }
.c-pg--legacy .col-lg-9 form, .c-pg--legacy .col-lg-9 .table { background: #fff; border: 1px solid var(--c-sand-line); border-radius: 20px; padding: 24px; }
.c-pg--legacy .table td, .c-pg--legacy .table th { border-color: var(--c-sand-line) !important; }

/* =====================================================================
   TRACK ORDER
   ===================================================================== */
.c-pg--track .c-track { max-width: 880px; margin: 0 auto; padding: 40px 44px; }
.c-pg--track .c-track__label { font-size: 14px; }
.c-pg--track .c-track__form { display: flex; flex-wrap: nowrap; gap: 10px; background: var(--c-shell); border: 1px solid var(--c-sand-line); border-radius: 999px; padding: 6px; margin-bottom: 40px; }
.c-pg--track .c-track__form:focus-within { border-color: var(--c-ocean); box-shadow: 0 0 0 3px rgba(176, 38, 10, .12); }
.c-pg--track .c-track__form .form-control { border: 0 !important; background: transparent !important; box-shadow: none !important; font-size: 16px; padding-left: 18px; border-radius: 999px !important; }
.c-pg--track .c-track__form .c-btn { padding: 12px 30px; border-radius: 999px !important; flex-shrink: 0; }
.c-pg--track .c-track__steps { margin: 0 0 8px; position: relative; flex-wrap: nowrap; }
.c-pg--track .tracking-step { position: relative; text-align: center; padding: 0 4px; z-index: 0; }
.c-pg--track .tracking-step::before { content: ''; position: absolute; height: 3px; background: var(--c-sand-line); top: 19px; left: 50%; width: 100%; z-index: -1; transition: background .5s; }
.c-pg--track .tracking-step:last-child::before { display: none; }
.c-pg--track .tracking-step.active::before { background: var(--c-ocean); }
.c-pg--track .tracking-icon { width: 40px; height: 40px; border-radius: 50%; margin: 0 auto 12px; display: flex; align-items: center; justify-content: center; background: #fff; border: 2px solid var(--c-sand-line); color: #c9bfae; transition: background .4s, border-color .4s, color .4s; }
.c-pg--track .tracking-step.active .tracking-icon { background: var(--c-navy); border-color: var(--c-navy); color: #fff; }
.c-pg--track .tracking-step p { font-size: 14px; font-weight: 600; color: var(--c-muted); margin: 0; }
.c-pg--track .tracking-step.active p { color: var(--c-ink); }
.c-pg--track .c-track__help { margin: 32px 0 0; padding-top: 24px; border-top: 1px solid var(--c-sand-line); text-align: center; color: var(--c-muted); font-size: 15px; }
.c-pg--track .c-track__help a { font-weight: 600; }
@media (max-width: 767px) {
    .c-pg--track .c-track { padding: 26px 20px; }
    .c-pg--track .c-track__steps { flex-wrap: wrap; row-gap: 20px; }
    .c-pg--track .tracking-step { flex: 0 0 33.333%; max-width: 33.333%; }
    .c-pg--track .tracking-step:nth-child(3)::before { display: none; }
    .c-pg--track .tracking-step p { font-size: 13px; }
}

/* =====================================================================
   ABOUT
   ===================================================================== */
.c-about-split { display: grid; grid-template-columns: 1.05fr 1fr; gap: 64px; align-items: center; }
.c-about-split__img { border-radius: 24px; overflow: hidden; background: var(--c-sand); aspect-ratio: 5 / 4; }
.c-about-split__img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.c-about-split__copy .c-eyebrow { margin-bottom: 12px; }
body .c-about-split__copy h2 { font-size: 40px; line-height: 1.12; margin: 0 0 20px; }
.c-about-split__copy p { font-size: 17px; line-height: 1.7; color: var(--c-text); margin: 0 0 16px; }
.c-about-split__cta { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 28px; }
.c-about-values { margin-top: 96px; }
.c-about-values .c-eyebrow { margin-bottom: 10px; }
.c-about-values__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.c-about-value { background: #fff; border: 1px solid var(--c-sand-line); border-radius: 24px; padding: 28px 26px; display: flex; flex-direction: column; transition: box-shadow .2s, transform .2s; }
.c-about-value:hover { box-shadow: var(--c-shadow); transform: translateY(-2px); }
.c-about-value__icon { width: 52px; height: 52px; border-radius: 50%; background: var(--c-seafoam); color: var(--c-ocean); display: inline-flex; align-items: center; justify-content: center; margin-bottom: 20px; }
body .c-about-value h3 { font-size: 21px; margin: 0 0 10px; line-height: 1.25; }
.c-about-value p { color: var(--c-text); font-size: 15px; line-height: 1.6; margin: 0 0 18px; flex: 1; }
.c-about-value a { font-weight: 600; font-size: 14px; }
.c-about-value a::after { content: ' \2192'; }
.c-about-band { margin-top: 96px; background: var(--c-navy); color: #e9e2d4; border-radius: 28px; padding: 52px 56px; display: flex; align-items: center; justify-content: space-between; gap: 32px; flex-wrap: wrap; }
.c-about-band .c-eyebrow { color: var(--c-gold); margin-bottom: 10px; }
body .c-about-band h2 { color: #fff; font-size: 38px; margin: 0 0 10px; }
.c-about-band p { margin: 0; font-size: 16px; color: #cfd8dc; max-width: 620px; }
.c-about-band p a { color: #fff; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 1100px) { .c-about-values__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 991px) {
    .c-about-split { grid-template-columns: 1fr; gap: 32px; }
    body .c-about-split__copy h2 { font-size: 30px; }
    .c-about-values, .c-about-band { margin-top: 64px; }
    .c-about-band { padding: 36px 26px; }
    body .c-about-band h2 { font-size: 30px; }
}
@media (max-width: 575px) { .c-about-values__grid { grid-template-columns: 1fr; } }

/* =====================================================================
   CONTACT
   ===================================================================== */
.c-contact { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); gap: 32px; align-items: start; }
.c-pg--contact .c-contact__form { padding: 44px; }
body .c-contact__title { font-size: 32px; margin: 0 0 6px; }
.c-contact__sub { color: var(--c-muted); margin: 0 0 28px; font-size: 15px; }
.c-pg--contact .input-group { display: block; }
.c-pg--contact .input-group .form-control { width: 100%; border-radius: var(--c-radius-sm) !important; }
.c-contact__info { display: flex; flex-direction: column; gap: 20px; }
.c-contact__panel { background: var(--c-seafoam); border-radius: 24px; padding: 30px; }
.c-contact__panel .c-eyebrow { margin-bottom: 18px; }
.c-contact__list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 18px; }
.c-contact__list li { display: flex; align-items: flex-start; gap: 14px; }
.c-contact__icon { width: 42px; height: 42px; border-radius: 50%; background: #fff; color: var(--c-ocean); display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; }
.c-contact__list li > div { display: flex; flex-direction: column; min-width: 0; padding-top: 2px; }
.c-contact__list small { font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--c-muted); margin-bottom: 2px; }
.c-contact__list a, .c-contact__list span { font-size: 16px; font-weight: 600; color: var(--c-ink) !important; overflow-wrap: anywhere; }
.c-contact__list a:hover { color: var(--c-ocean) !important; }
.c-contact__showroom { background: #fff; border: 1px solid var(--c-sand-line); border-radius: 24px; overflow: hidden; }
.c-contact__showroom img { width: 100%; aspect-ratio: 16 / 8; object-fit: cover; display: block; }
.c-contact__showroom-body { padding: 24px 26px 26px; }
body .c-contact__showroom-body h3 { font-size: 22px; margin: 0 0 8px; }
.c-contact__showroom-body p { color: var(--c-text); font-size: 15px; margin: 0 0 16px; }
.c-contact__links { display: flex; flex-wrap: wrap; gap: 8px; }
.c-contact__links a { background: #fff; border: 1px solid var(--c-sand-line); border-radius: 999px; padding: 9px 16px; font-size: 14px; font-weight: 600; color: var(--c-ink) !important; }
.c-contact__links a:hover { border-color: var(--c-navy); color: var(--c-navy) !important; }
@media (max-width: 991px) {
    .c-contact { grid-template-columns: 1fr; }
    .c-pg--contact .c-contact__form { padding: 28px 22px; }
}

/* =====================================================================
   POLICY / GUARANTEE / REFUND
   ===================================================================== */
.c-guarantee-hl { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; max-width: 1000px; margin: 0 auto 64px; }
.c-guarantee-hl__item { background: #fff; border: 1px solid var(--c-sand-line); border-radius: 24px; padding: 28px; text-align: center; }
.c-guarantee-hl__item strong { display: block; font-size: 40px; line-height: 1.1; color: var(--c-ink); margin-bottom: 8px; font-weight: 400 !important; }
.c-guarantee-hl__item span { color: var(--c-text); font-size: 15px; }
.c-prose__cta { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 36px; }
.c-prose__cta .c-btn { text-decoration: none; }
.c-prose .c-btn--dark, .c-prose .c-btn--dark:hover { color: #fff !important; }
@media (max-width: 767px) {
    .c-guarantee-hl { grid-template-columns: 1fr; gap: 12px; margin-bottom: 44px; }
    .c-guarantee-hl__item { padding: 20px; }
    .c-guarantee-hl__item strong { font-size: 32px; }
}

/* =====================================================================
   DELIVERY / SHIPMENT
   ===================================================================== */
.c-ship-track { display: flex; align-items: center; justify-content: space-between; gap: 20px; flex-wrap: wrap; background: #fff; border: 1px solid var(--c-sand-line); border-radius: 24px; padding: 24px 28px; margin-bottom: 22px; }
.c-ship-track strong { display: block; font-size: 18px; color: var(--c-ink); }
.c-ship-track span { color: var(--c-muted); font-size: 15px; }
.c-ship-jump { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 64px; }
.c-ship-jump a { border: 1px solid var(--c-sand-line); background: transparent; border-radius: 999px; padding: 8px 16px; font-size: 14px; font-weight: 600; color: var(--c-ink) !important; }
.c-ship-jump a:hover { background: var(--c-navy); border-color: var(--c-navy); color: #fff !important; }
.c-ship { display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: center; margin-bottom: 80px; scroll-margin-top: 160px; }
.c-ship--flip .c-ship__img { order: 2; }
.c-ship__img { border-radius: 24px; overflow: hidden; background: var(--c-sand); aspect-ratio: 4 / 3; }
.c-ship__img--art { background: var(--c-seafoam); color: var(--c-ocean); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 18px; }
.c-ship__img--art span { font-family: var(--c-serif); font-size: 22px; color: var(--c-ink); text-align: center; padding: 0 24px; }
.c-ship__img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.c-ship__body .c-eyebrow { margin-bottom: 10px; }
body .c-ship__body h2 { font-size: 36px; line-height: 1.15; margin: 0 0 16px; }
.c-ship__body p, .c-ship-card p { font-size: 16px; line-height: 1.7; color: var(--c-text); margin: 0 0 18px; }
.c-ship__body h4, .c-ship-card h4 { font-size: 13px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--c-ink); margin: 24px 0 12px; }
.c-ship__list { list-style: none; margin: 0; padding: 0; }
.c-ship__list li { position: relative; padding-left: 30px; margin-bottom: 10px; font-size: 15px; line-height: 1.6; color: var(--c-text); }
.c-ship__list li::before { content: ''; position: absolute; left: 0; top: 3px; width: 18px; height: 18px; border-radius: 50%; background: var(--c-seafoam) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 8.2l2.2 2.2 4.8-4.8' fill='none' stroke='%231f5f7a' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/18px no-repeat; }
.c-ship__steps { list-style: none; counter-reset: cstep; margin: 0; padding: 0; }
.c-ship__steps li { counter-increment: cstep; position: relative; padding-left: 44px; margin-bottom: 14px; font-size: 15px; line-height: 1.6; color: var(--c-text); min-height: 30px; }
.c-ship__steps li::before { content: counter(cstep); position: absolute; left: 0; top: -2px; width: 30px; height: 30px; border-radius: 50%; background: var(--c-navy); color: #fff; font-size: 14px; font-weight: 700; display: flex; align-items: center; justify-content: center; }
.c-ship-band { display: flex; align-items: center; justify-content: space-between; gap: 32px; flex-wrap: wrap; background: var(--c-navy); border-radius: 28px; padding: 48px 56px; margin-bottom: 96px; scroll-margin-top: 160px; }
.c-ship-band .c-eyebrow { color: var(--c-gold); margin-bottom: 10px; }
body .c-ship-band h2 { color: #fff; font-size: 34px; margin: 0 0 10px; }
.c-ship-band p { color: #cfd8dc; margin: 0; max-width: 640px; font-size: 16px; line-height: 1.65; }
.c-ship-more .c-eyebrow { margin-bottom: 10px; }
.c-ship-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.c-pg .c-ship-card { padding: 36px; scroll-margin-top: 160px; }
body .c-ship-card h3 { font-size: 26px; margin: 0 0 14px; }
@media (max-width: 991px) {
    .c-ship { grid-template-columns: 1fr; gap: 26px; margin-bottom: 56px; }
    .c-ship--flip .c-ship__img { order: 0; }
    body .c-ship__body h2 { font-size: 28px; }
    .c-ship-band { padding: 32px 24px; margin-bottom: 64px; }
    body .c-ship-band h2 { font-size: 28px; }
    .c-ship-cards { grid-template-columns: 1fr; }
    .c-ship-jump { margin-bottom: 44px; }
}

/* =====================================================================
   CAREERS / HIRING FORM (replaces the legacy inline :root + maroon styles)
   ===================================================================== */
.c-pg--hiring .c-hiring { max-width: 880px; margin: 0 auto; padding: 44px; }
.c-hiring__intro { margin-bottom: 30px; }
body .c-hiring__intro h2 { font-size: 30px; margin: 0 0 6px; }
.c-hiring__intro p { color: var(--c-muted); margin: 0; font-size: 15px; }
.c-req, .c-pg--hiring label.required::after { color: var(--c-coral); }
.c-pg--hiring label.required::after { content: '*'; margin-left: 4px; }
.c-pg--hiring .form-section { margin-bottom: 34px; padding-bottom: 8px; }
.c-pg--hiring .section-title { display: flex; align-items: center; gap: 12px; font-family: var(--c-serif) !important; font-size: 22px; color: var(--c-ink); padding-bottom: 14px; margin-bottom: 22px; border-bottom: 1px solid var(--c-sand-line); }
.c-pg--hiring .section-title i { width: 38px; height: 38px; border-radius: 50%; background: var(--c-seafoam); color: var(--c-ocean); display: inline-flex; align-items: center; justify-content: center; font-size: 15px; }
.c-pg--hiring .form-group { margin-bottom: 20px; }
.c-pg--hiring .form-row { display: flex; gap: 20px; margin: 0 0 20px; }
.c-pg--hiring .form-row .form-group { flex: 1; margin-bottom: 0; }
.c-pg--hiring .input-group { position: relative; display: block; }
.c-pg--hiring .input-group > i { position: absolute; left: 16px; top: 50%; transform: translateY(-50%); color: #93a0a6; font-size: 14px; z-index: 4; pointer-events: none; }
.c-pg--hiring .input-group .form-control { width: 100%; padding-left: 42px; border-radius: var(--c-radius-sm) !important; }
.c-pg--hiring textarea.form-control { min-height: 120px; }
.c-pg--hiring .file-upload { position: relative; overflow: hidden; margin-top: 4px; }
.c-pg--hiring .file-upload-input { position: absolute; inset: 0; opacity: 0; cursor: pointer; width: 100%; height: 100%; }
.c-pg--hiring .file-upload-label { display: flex; align-items: center; justify-content: center; gap: 10px; padding: 26px 16px; margin: 0; background: var(--c-shell); border: 1.5px dashed #d2c7b5; border-radius: 16px; font-weight: 600; color: var(--c-ink); cursor: pointer; transition: background .2s, border-color .2s; }
.c-pg--hiring .file-upload:hover .file-upload-label { background: var(--c-seafoam); border-color: var(--c-ocean); }
.c-pg--hiring .file-name { margin-top: 8px; font-size: 14px; color: var(--c-muted); text-align: center; }
.c-pg--hiring #submitBtn { margin-top: 6px; }
.c-pg--hiring .alert { border-radius: 16px; padding: 16px 18px; margin: 20px 0 0; font-size: 15px; }
.c-pg--hiring .alert-success { background: var(--c-seafoam); color: var(--c-ink); border: 1px solid #c9dcdc; }
.c-pg--hiring .alert-error { background: #fbeeec; color: var(--c-coral-dark); border: 1px solid #f0d2ce; }
.c-pg--hiring .alert ul { margin: 8px 0 0; padding-left: 20px; }
@media (max-width: 767px) {
    .c-pg--hiring .c-hiring { padding: 26px 20px; }
    .c-pg--hiring .form-row { flex-direction: column; gap: 0; margin-bottom: 0; }
    .c-pg--hiring .form-row .form-group { margin-bottom: 20px; }
}

/* =====================================================================
   SLEEP QUIZ (material-bootstrap-wizard re-skin)
   ===================================================================== */
.c-pg--quiz .wizard-container { max-width: 1120px; margin: 0 auto; padding: 0; }
.c-pg--quiz .wizard-card { background: #fff !important; border: 1px solid var(--c-sand-line); border-radius: 28px !important; box-shadow: none !important; padding: 28px 36px 32px; min-height: 0; }
.c-pg--quiz .wizard-navigation { margin-bottom: 28px; }
.c-pg--quiz .wizard-navigation .nav-pills { background: var(--c-shell) !important; border-radius: 999px; padding: 6px !important; position: relative; }
.c-pg--quiz .wizard-card .moving-tab { background: var(--c-navy) !important; box-shadow: none !important; border-radius: 999px !important; font-family: var(--c-sans) !important; font-weight: 600 !important; font-size: 11px !important; letter-spacing: .02em; white-space: nowrap; top: 0 !important; padding: 11px 6px !important; }
.c-pg--quiz .tab-content { background: transparent !important; padding: 0 !important; }
.c-pg--quiz .tab-pane { background: transparent !important; }
.c-pg--quiz .tab-pane > .info-text, .c-pg--quiz .info-text { font-family: var(--c-serif) !important; font-weight: 400 !important; font-size: 32px !important; color: var(--c-ink) !important; text-align: center; margin: 8px 0 28px !important; line-height: 1.2; }
.c-pg--quiz .wizard-card .choice { margin-top: 0; margin-bottom: 20px; background: #fff; border: 1.5px solid var(--c-sand-line); border-radius: 20px; padding: 22px 14px 16px; transition: border-color .2s, box-shadow .2s, background .2s, transform .2s; }
.c-pg--quiz .wizard-card .choice:hover { border-color: var(--c-ocean); box-shadow: var(--c-shadow); transform: translateY(-2px); }
.c-pg--quiz .wizard-card .choice.active { border-color: var(--c-navy); background: var(--c-seafoam); box-shadow: 0 0 0 1px var(--c-navy); }
.c-pg--quiz .wizard-card .choice .icon { border: 0 !important; width: auto !important; height: auto !important; border-radius: 0 !important; margin: 0 auto 12px !important; background: transparent; color: var(--c-ocean) !important; }
.c-pg--quiz .wizard-card .choice .icon img { box-shadow: 0 0 0 4px var(--c-shell); }
.c-pg--quiz .wizard-card .choice.active .icon img { box-shadow: 0 0 0 4px #fff; }
.c-pg--quiz .wizard-card .choice .icon-box { border: 1.5px solid var(--c-sand-line) !important; border-radius: 999px !important; color: var(--c-ink) !important; font-weight: 600; padding: 12px 10px !important; }
.c-pg--quiz .wizard-card .choice.active .icon-box { border-color: var(--c-navy) !important; background: #fff; }
.c-pg--quiz .wizard-card .choice h6 { font-family: var(--c-sans) !important; font-size: 15px !important; font-weight: 700 !important; color: var(--c-ink); text-transform: none; letter-spacing: 0; margin: 0; }
.c-pg--quiz .wizard-card .choice::after { content: ''; position: absolute; }
.c-pg--quiz .wizard-card .card { background: var(--c-sand) !important; border: 0 !important; border-radius: 20px !important; box-shadow: none !important; height: fit-content; }
.c-pg--quiz .wizard-card .card .card-body { padding: 26px; }
.c-pg--quiz .wizard-card .card-title { font-family: var(--c-serif) !important; font-weight: 400 !important; font-size: 20px; color: var(--c-ink); margin-bottom: 10px; }
.c-pg--quiz .wizard-card .card-text { color: var(--c-text); font-size: 15px; line-height: 1.65; }
.c-pg--quiz .wizard-footer { border-top: 1px solid var(--c-sand-line); margin-top: 20px; padding-top: 24px; }
.c-pg--quiz .wizard-footer .btn { border-radius: 999px !important; padding: 13px 34px !important; font-size: 15px !important; font-weight: 600 !important; text-transform: none; letter-spacing: 0; box-shadow: none !important; min-width: 140px; }
.c-pg--quiz .wizard-footer .btn-next, .c-pg--quiz .wizard-footer .btn-finish { background: var(--c-navy) !important; border: 1.5px solid var(--c-navy) !important; color: #fff !important; }
.c-pg--quiz .wizard-footer .btn-next:hover, .c-pg--quiz .wizard-footer .btn-finish:hover { background: var(--c-ocean) !important; border-color: var(--c-ocean) !important; }
.c-pg--quiz .wizard-footer .btn-previous { background: transparent !important; border: 1.5px solid var(--c-navy) !important; color: var(--c-navy) !important; }
.c-pg--quiz .wizard-footer .btn-previous:hover { background: var(--c-navy) !important; color: #fff !important; }
@media (max-width: 767px) {
    .c-pg--quiz .wizard-card { padding: 18px 14px 22px; border-radius: 22px !important; }
    .c-pg--quiz .tab-pane > .info-text, .c-pg--quiz .info-text { font-size: 24px !important; }
    .c-pg--quiz .wizard-footer .btn { min-width: 0; padding: 12px 22px !important; }
}

/* =====================================================================
   BLOG LIST
   ===================================================================== */
.c-pg--blog .blog-area > .row { flex-direction: row-reverse; }
.c-pg--blog .blog-menu .category-div, .c-pg--blog-detail .blog-menu .category-div { background: #fff; border: 1px solid var(--c-sand-line); border-radius: 24px; padding: 22px; margin-bottom: 20px; }
.c-pg--blog .blog-menu .category-div:empty, .c-pg--blog .blog-menu .category-div:not(:has(*)), .c-pg--blog-detail .blog-menu .category-div:empty, .c-pg--blog-detail .blog-menu .category-div:not(:has(*)) { display: none; }
.c-pg--blog .category-list .main-manu, .c-pg--blog-detail .category-list .main-manu { display: flex; align-items: center; gap: 12px; padding: 8px 10px; border-radius: 999px; color: var(--c-ink) !important; font-weight: 600; font-size: 15px; }
.c-pg--blog .category-list .main-manu:hover, .c-pg--blog-detail .category-list .main-manu:hover { background: var(--c-shell); color: var(--c-ocean) !important; }
.c-pg--blog .category-list .main-manu img, .c-pg--blog-detail .category-list .main-manu img { width: 36px; height: 36px; border-radius: 50%; object-fit: cover; background: var(--c-sand); }
.c-pg--blog .featured-blog .media, .c-pg--blog-detail .featured-blog .media { display: flex; gap: 14px; align-items: center; padding: 10px 0; border-bottom: 1px solid var(--c-sand-line); }
.c-pg--blog .featured-blog .media:last-child, .c-pg--blog-detail .featured-blog .media:last-child { border-bottom: 0; }
.c-pg--blog .featured-blog .media-img img, .c-pg--blog-detail .featured-blog .media-img img { width: 64px; height: 64px; border-radius: 14px; object-fit: cover; background: var(--c-sand); }
.c-pg--blog .featured-blog h5, .c-pg--blog-detail .featured-blog h5 { font-size: 15px; font-weight: 600; color: var(--c-ink); margin: 0 0 4px; line-height: 1.35; }
.c-pg--blog .featured-blog .post-date, .c-pg--blog .featured-blog .post-date a, .c-pg--blog-detail .featured-blog .post-date, .c-pg--blog-detail .featured-blog .post-date a { font-size: 13px; color: var(--c-muted) !important; }
.c-pg--blog .socials, .c-pg--blog-detail .socials { display: flex; gap: 10px; list-style: none; margin: 0; padding: 0; }
.c-pg--blog .socials a, .c-pg--blog-detail .socials a { width: 40px; height: 40px; border-radius: 50%; border: 1px solid var(--c-sand-line); display: inline-flex; align-items: center; justify-content: center; color: var(--c-ink) !important; font-size: 17px; }
.c-pg--blog .socials a:hover, .c-pg--blog-detail .socials a:hover { background: var(--c-navy); color: #fff !important; }
.c-pg--blog .blogs_div { row-gap: 24px; }
.c-pg--blog .blogs_div:empty::before { content: 'New articles are on the way. Check back soon.'; display: block; width: 100%; margin: 0 15px; padding: 56px 24px; text-align: center; color: var(--c-muted); background: #fff; border: 1px dashed #d9cfbf; border-radius: 24px; }
.c-pg .c-blog-card { background: #fff; border: 1px solid var(--c-sand-line); border-radius: 24px; overflow: hidden; height: 100%; display: flex; flex-direction: column; margin: 0 !important; transition: box-shadow .2s, transform .2s; }
.c-pg .c-blog-card:hover { box-shadow: var(--c-shadow); transform: translateY(-2px); }
.c-blog-card__media { position: relative; background: var(--c-sand); aspect-ratio: 16 / 10; overflow: hidden; margin: 0 !important; }
.c-blog-card__media a { display: block; height: 100%; }
.c-blog-card__media img { width: 100% !important; height: 100% !important; object-fit: cover; border: 0 !important; border-radius: 0 !important; padding: 0 !important; background: transparent !important; transition: transform .4s; }
.c-pg .c-blog-card:hover .c-blog-card__media img { transform: scale(1.03); }
.c-blog-card__media .date-tag { position: absolute; top: 14px; left: 14px; z-index: 2; background: #fff !important; color: var(--c-ink) !important; font-size: 12px !important; }
.c-blog-card__media .date-tag:empty { display: none; }
.c-blog-card__body { padding: 22px 24px 24px; display: flex; flex-direction: column; flex: 1; }
.c-blog-card__body .tag { font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--c-ocean); margin-bottom: 8px; }
.c-blog-card__body h5 { font-family: var(--c-serif) !important; font-weight: 400 !important; font-size: 22px; line-height: 1.25; margin: 0 0 10px; }
.c-blog-card__body h5 a { color: var(--c-ink) !important; }
.c-blog-card__body h5 a:hover { color: var(--c-ocean) !important; }
.c-blog-card__body p { color: var(--c-text); font-size: 15px; line-height: 1.6; margin: 0 0 16px; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.c-blog-card__body .blink { margin-top: auto; }
.c-blog-card__body .blink a { font-weight: 600; font-size: 14px; color: var(--c-ink) !important; }
.c-blog-card__body .blink a::after { content: ' \2192'; }
.c-pg--blog .pagination { display: flex; align-items: center; justify-content: space-between !important; flex-wrap: wrap; gap: 12px; margin-top: 32px; color: var(--c-muted); font-size: 14px; }
.c-pg--blog .pagination .loader-page { list-style: none; margin: 0; padding: 0; display: flex; justify-content: flex-end; }
.c-pg--blog .pagination .load-more-products { padding: 12px 28px !important; }
@media (max-width: 991px) { .c-pg--blog .blog-area > .row { flex-direction: column-reverse; } .c-pg--blog .blog-menu { margin-top: 32px; } }

/* =====================================================================
   STORE DETAIL
   ===================================================================== */
.c-sd { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: 28px; align-items: start; }
.c-sd__main { display: flex; flex-direction: column; gap: 24px; min-width: 0; }
.c-sd__side { display: flex; flex-direction: column; gap: 24px; position: sticky; top: 150px; }
body .c-sd__h { font-size: 26px; margin: 0 0 20px; line-height: 1.2; }
.c-sd__h sup { font-size: .5em; }
.c-sd__rows { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-bottom: 26px; }
.c-pg--store .contact-item { display: flex; gap: 14px; align-items: flex-start; }
.c-pg--store .contact-icon { width: 44px; height: 44px; border-radius: 50%; background: var(--c-seafoam); color: var(--c-ocean); display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; }
.c-pg--store .contact-details { font-size: 16px; line-height: 1.55; color: var(--c-text); min-width: 0; }
.c-pg--store .contact-details strong { font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--c-muted); }
.c-pg--store .contact-details a { font-weight: 600; font-size: 17px; color: var(--c-ink) !important; }
.c-pg--store .contact-details p { margin: 0; }
.c-pg--store .action-buttons { display: flex; gap: 12px; flex-wrap: wrap; padding-top: 22px; border-top: 1px solid var(--c-sand-line); }
.c-sd__map { border-radius: 24px; overflow: hidden; border: 1px solid var(--c-sand-line); background: var(--c-seafoam); aspect-ratio: 16 / 9; }
.c-sd__map iframe { width: 100%; height: 100%; border: 0; display: block; }
.c-sd__gallery { border-radius: 24px; overflow: hidden; background: var(--c-sand); }
.c-sd__gallery img { width: 100%; display: block; aspect-ratio: 16 / 10; object-fit: cover; }
.c-hours { width: 100%; border-collapse: collapse; }
.c-hours th, .c-hours td { padding: 12px 0; border-bottom: 1px solid var(--c-sand-line); font-size: 15px; }
.c-hours tr:last-child th, .c-hours tr:last-child td { border-bottom: 0; }
.c-hours th { font-weight: 500; color: var(--c-ink); }
.c-hours td { text-align: right; color: var(--c-text); font-variant-numeric: tabular-nums; white-space: nowrap; }
.c-hours tr.is-today th, .c-hours tr.is-today td { font-weight: 700; color: var(--c-ink); }
.c-hours tr.is-today th, .c-hours tr.is-today td { background: var(--c-seafoam); }
.c-hours tr.is-today th { border-radius: 12px 0 0 12px; padding-left: 12px; }
.c-hours tr.is-today td { border-radius: 0 12px 12px 0; padding-right: 12px; }
.c-hours__today { display: inline-block; margin-left: 8px; background: var(--c-navy); color: #fff; border-radius: 999px; font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; padding: 3px 9px; vertical-align: 1px; }
.c-sd__perks { background: var(--c-navy); border-radius: 24px; padding: 30px; color: #e9e2d4; }
.c-sd__perks .c-eyebrow { color: var(--c-gold); margin-bottom: 10px; }
body .c-sd__perks .c-sd__h { color: #fff; font-size: 24px; }
.c-sd__perks .features-grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 12px 16px; }
.c-sd__perks .feature-item { display: flex; align-items: center; gap: 10px; font-size: 15px; font-weight: 500; color: #fff; }
.c-sd__perks .feature-icon { width: 28px; height: 28px; border-radius: 50%; background: rgba(233, 199, 154, .16); color: var(--c-gold); display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; }
.c-pg--store .scroll-reveal { opacity: 1; transform: none; }
@media (max-width: 991px) {
    .c-sd { grid-template-columns: 1fr; }
    .c-sd__side { position: static; }
}
@media (max-width: 575px) {
    .c-sd__rows { grid-template-columns: 1fr; }
    .c-sd__perks .features-grid { grid-template-columns: 1fr; }
    .c-sd__map { aspect-ratio: 4 / 3; }
}

/* legacy theme floats/paints account forms; neutralise inside the new cards */
.c-pg--account form, .c-pg--account .table { float: none !important; }
.c-acct--profile #profileForm { background: transparent !important; padding: 0 !important; width: 100%; }
.c-acct--profile #profileForm .select-control::before { display: none; }
.c-acct--profile #profileForm .input-group.date { display: block; }
.c-acct--profile #profileForm .input-group.date .form-control { width: 100%; border-radius: var(--c-radius-sm) !important; }
.c-acct--profile #profileForm .c-btn { float: none !important; }

/* blog article */
.c-pg--blog-detail .c-phero__title:empty::before { content: ' a0'; }
.c-pg--blog-detail .blog-detail { background: #fff; border: 1px solid var(--c-sand-line); border-radius: 24px; padding: 36px 40px; font-size: 17px; line-height: 1.75; color: var(--c-text); }
.c-pg--blog-detail .blog-detail:empty { min-height: 320px; }
.c-pg--blog-detail .blog-detail img { max-width: 100%; height: auto; border-radius: 18px; }
.c-pg--blog-detail .blog-detail h2, .c-pg--blog-detail .blog-detail h3 { margin: 32px 0 12px; }
.c-pg--blog-detail .blog-detail p { margin: 0 0 18px; }
@media (max-width: 767px) { .c-pg--blog-detail .blog-detail { padding: 22px 18px; font-size: 16px; } }

/* the quiz view loads material-bootstrap-wizard.css, whose global .form-control rules squash the header search */
body:has(.c-pg--quiz) .c-header__search .search-input { margin: 0 !important; background-image: none !important; width: 100% !important; flex: 1 1 auto; min-width: 0; height: auto !important; padding: 0 !important; }

/* blog cards: legacy theme centres and fades these */
.c-pg .c-blog-card__body { text-align: left !important; }
.c-pg .c-blog-card__body h5 a { font-family: var(--c-serif) !important; font-weight: 400 !important; }
.c-pg .c-blog-card__body .blink a { opacity: 1 !important; }
