:root {--cream:#FAF7F2; --cream-mid:#F5EFE5; --cream-dark:#EDE4D6; --white:#FEFCF8; --gold:#C9A96E; --gold-light:#DEC28E; --gold-pale:#F2E5CC; --gold-deep:#8B6F3F; --gold-ink:#735831; --gold-bronze:#5C4A28; --charcoal:#2A2420; --text-primary:#1E1A17; --text-body:#2D2622; --text-sub:#4A3D32; --text-muted:#6B5949; --footer-bg-from:#F5EFE5; --footer-bg-to:#EFE7D9; --fs-xs:13px; --fs-sm:14.5px; --fs-base:17.5px; --fs-md:21px; --fs-lg:28px; --fs-xl:clamp(34px,5.2vw,56px); --fs-2xl:clamp(48px,6.6vw,82px); --ls-tight:-0.012em; --ls-snug:0.005em; --ls-wide:0.06em; --ls-wider:0.12em; --ls-widest:0.22em; --lh-tight:1.15; --lh-snug:1.28; --lh-base:1.65; --lh-loose:1.78; --sp-section:clamp(64px,8vw,104px); --sp-section-tight:clamp(44px,6vw,72px); --transition:all 0.3s cubic-bezier(0.25,0.46,0.45,0.94); --ease:cubic-bezier(0.25,0.46,0.45,0.94);}
*,*::before,*::after {margin:0;padding:0;box-sizing:border-box;}
html {scroll-behavior:smooth;scroll-padding-top:140px;-webkit-text-size-adjust:100%;}
body {font-family:'Nunito Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:var(--cream);color:var(--text-body);font-size:var(--fs-base);line-height:var(--lh-base);letter-spacing:0.005em;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:"liga","kern","calt";}
a:focus-visible,button:focus-visible {outline:2px solid var(--gold-deep);outline-offset:3px;border-radius:2px;}
.skip-link {position:absolute;top:-100px;left:0;background:var(--charcoal);color:var(--cream);padding:14px 22px;z-index:10000;text-decoration:none;font-size:var(--fs-sm);font-weight:700;}
.visually-hidden {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
img,svg,video {max-width:100%;height:auto;}
kbd {display:inline-block;padding:2px 6px;border:1px solid rgba(115,88,49,.30);border-radius:3px;font-size:11px;font-family:'Nunito Sans',sans-serif;background:var(--cream-mid);color:var(--text-sub);}
.breadcrumb {background:var(--cream-mid);border-bottom:1px solid rgba(115,88,49,.14);}
.breadcrumb-inner {max-width:1440px;margin:0 auto;padding:14px 40px;display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-muted);font-weight:500;}
.breadcrumb-inner a {color:var(--text-muted);text-decoration:none;transition:color .2s;}
.breadcrumb-inner .sep {color:var(--gold-deep);font-size:12px;}
.breadcrumb-inner .current {color:var(--text-sub);font-weight:600;}
.store-hero {position:relative; overflow:hidden; border-bottom:1px solid rgba(115,88,49,.18);}
.store-hero::before {content:''; position:absolute; top:0; left:0; right:0; height:3px; z-index:2; background:linear-gradient(90deg,transparent 0%,var(--gold-deep) 12%,var(--gold) 50%,var(--gold-deep) 88%,transparent 100%);}
.store-hero-inner {display:grid; grid-template-columns:1.15fr 0.85fr; min-height:540px;}
.store-hero-text {background:var(--cream-dark); padding:clamp(64px,8vw,108px) 40px clamp(64px,8vw,108px) clamp(40px,5vw,72px); display:flex; flex-direction:column; justify-content:center; position:relative;}
.store-hero-text::before {content:''; position:absolute; top:10%; bottom:10%; left:0; width:1px; background:linear-gradient(180deg,transparent 0%,var(--gold) 20%,var(--gold) 80%,transparent 100%);}
.section-eyebrow {display:block;font-size:13px;letter-spacing:var(--ls-widest);text-transform:uppercase;color:var(--gold-ink);font-weight:700;margin-bottom:20px;}
.hero-page-title {font-family:'Cormorant Garamond', serif; font-size:clamp(48px,6vw,80px); font-weight:500; color:var(--text-primary); line-height:1.0; letter-spacing:var(--ls-tight); margin-bottom:28px;}
.hero-page-title i.i-italic {font-style:italic;font-weight:400;color:var(--text-sub);}
.hero-bio {font-size:18px; color:var(--text-body); line-height:1.78; max-width:420px; margin-bottom:40px;}
.hero-ornament {display:flex;align-items:center;gap:12px;margin-bottom:32px;}
.hero-ornament-diamond {width:7px;height:7px;background:var(--gold-deep);transform:rotate(45deg);}
.hero-ornament-line {width:56px;height:1px;background:linear-gradient(90deg,var(--gold-deep) 0%,transparent 100%);}
.store-hero-photo {background:var(--cream-mid); padding:clamp(28px,3.2vw,52px); display:flex; align-items:center; justify-content:center; position:relative; overflow:hidden;}
.hero-photo-frame {position:relative; width:100%; max-width:820px; aspect-ratio:3 / 2; padding:14px; background:var(--white); border:1px solid rgba(115,88,49,.22); box-shadow:0 30px 60px -28px rgba(42,36,32,.42), 0 6px 20px -10px rgba(42,36,32,.18);}
.hero-photo-frame::after {content:''; position:absolute; inset:14px; border:1px solid var(--gold); pointer-events:none; z-index:2;}
.hero-photo-frame img {display:block; width:100%; height:100%; object-fit:cover; object-position:center;}
.btn-shop-primary {display:inline-flex; align-items:center; gap:14px; background:var(--charcoal); color:var(--cream); font-family:'Nunito Sans',sans-serif; font-size:13px; font-weight:700; letter-spacing:var(--ls-widest); text-transform:uppercase; padding:18px 40px; text-decoration:none; border:1.5px solid var(--charcoal); transition:var(--transition); cursor:pointer;}
.btn-shop-primary::after {content:'→';font-weight:400;font-size:16px;transition:transform .2s;}
.btn-shop-primary:hover {background:transparent;color:var(--charcoal);border-color:var(--charcoal);}
.btn-shop-primary:hover::after {transform:translateX(4px);}
.brands-section {padding:var(--sp-section) 40px; background:var(--cream); border-bottom:1px solid rgba(115,88,49,.12);}
.brands-inner {max-width:1240px; margin:0 auto;}
.brands-header {text-align:center; margin-bottom:56px;}
.section-title {font-family:'Cormorant Garamond', serif;font-size:var(--fs-xl);font-weight:500;color:var(--text-primary);line-height:1.1;letter-spacing:var(--ls-tight);margin-bottom:18px;}
.section-title i.i-italic {font-style:italic;font-weight:400;color:var(--text-sub);}
.brands-lede {font-size:18px;color:var(--text-body);line-height:1.7;max-width:580px;margin:0 auto;}
.brands-grid {display:grid; grid-template-columns:repeat(3,1fr); gap:2px;}
.brand-card {background:var(--white); padding:44px 38px; border:1px solid rgba(115,88,49,.14); position:relative; transition:var(--transition);}
.brand-card::before {content:''; position:absolute; top:0; left:0; right:0; height:2px; background:linear-gradient(90deg,var(--gold-pale),var(--gold-deep),var(--gold-pale)); opacity:0; transition:opacity .3s;}
.brand-card:hover {background:var(--cream-mid);}
.brand-card:hover::before {opacity:1;}
.brand-card-num {display:block; font-family:'Cormorant Garamond', serif; font-size:64px; font-weight:400; color:var(--gold-pale); line-height:.9; margin-bottom:18px; letter-spacing:-.02em;}
.brand-card-name {font-family:'Cormorant Garamond', serif; font-size:28px; font-weight:500; color:var(--text-primary); line-height:1.15; letter-spacing:var(--ls-tight); margin-bottom:14px;}
.brand-card-desc {font-size:15.5px; color:var(--text-body); line-height:1.75;}
.brand-card-tag {display:inline-block; margin-top:20px; font-size:11px; font-weight:700; letter-spacing:var(--ls-widest); text-transform:uppercase; color:var(--gold-ink); padding:6px 12px; border:1px solid rgba(115,88,49,.22); background:var(--cream-mid);}
.guidance-section {padding:var(--sp-section) 40px; background:var(--cream-mid); border-top:1px solid rgba(115,88,49,.12); border-bottom:1px solid rgba(115,88,49,.12);}
.guidance-inner {max-width:1240px; margin:0 auto; display:grid; grid-template-columns:1fr 1fr; gap:72px; align-items:start;}
.guidance-lhs {}
.guidance-title {font-family:'Cormorant Garamond', serif; font-size:clamp(34px,4.2vw,52px); font-weight:500; color:var(--text-primary); line-height:1.1; letter-spacing:var(--ls-tight); margin-bottom:22px;}
.guidance-title i.i-italic {font-style:italic;font-weight:400;color:var(--text-sub);}
.guidance-lede {font-size:17.5px; color:var(--text-body); line-height:1.75; margin-bottom:28px;}
.guidance-ornament {display:flex;align-items:center;gap:12px;margin-bottom:28px;}
.guidance-ornament-diamond {width:7px;height:7px;background:var(--gold-deep);transform:rotate(45deg);}
.guidance-ornament-line {flex:1;max-width:72px;height:1px;background:linear-gradient(90deg,var(--gold-deep) 0%,transparent 100%);}
.guidance-note {font-size:15px; color:var(--text-sub); line-height:1.7; font-style:italic; padding:20px 24px; border-left:3px solid var(--gold-deep); background:var(--cream-dark);}
.guidance-list {list-style:none; display:flex; flex-direction:column; gap:0;}
.guidance-list li {display:flex; align-items:flex-start; gap:16px; padding:16px 0; border-bottom:1px solid rgba(115,88,49,.14); font-size:16.5px; color:var(--text-body); line-height:1.6;}
.guidance-list li:first-child {border-top:1px solid rgba(115,88,49,.14);}
.guidance-list-icon {flex-shrink:0; width:28px; height:28px; background:var(--charcoal); color:var(--cream); border-radius:50%; display:flex; align-items:center; justify-content:center; margin-top:2px;}
.guidance-list-icon svg {width:13px; height:13px;}
.guidance-list-text strong {color:var(--text-primary); font-weight:700; display:block; margin-bottom:2px; font-size:15px; letter-spacing:.005em;}
.categories-section {padding:var(--sp-section) 40px; background:var(--cream); border-bottom:1px solid rgba(115,88,49,.12);}
.categories-inner {max-width:1240px; margin:0 auto;}
.categories-header {margin-bottom:52px;}
.categories-grid {display:grid; grid-template-columns:repeat(3,1fr); gap:16px;}
.category-card {display:flex; align-items:center; gap:18px; padding:22px 26px; background:var(--white); border:1px solid rgba(115,88,49,.16); text-decoration:none; transition:var(--transition); position:relative; overflow:hidden;}
.category-card::after {content:'→'; position:absolute; right:22px; top:50%; transform:translateY(-50%) translateX(0); font-size:16px; color:var(--gold-deep); opacity:0; transition:all .25s;}
.category-card:hover {background:var(--cream-mid); border-color:var(--gold-deep); transform:translateX(4px);}
.category-card:hover::after {opacity:1; transform:translateY(-50%) translateX(0);}
.category-icon {flex-shrink:0; width:44px; height:44px; background:var(--cream-dark); border:1px solid rgba(115,88,49,.22); display:flex; align-items:center; justify-content:center; color:var(--gold-deep);}
.category-icon svg {width:20px; height:20px;}
.category-label {font-size:15px; font-weight:700; color:var(--text-primary); letter-spacing:.005em; line-height:1.3;}
.category-sub {display:block; font-size:12.5px; color:var(--text-muted); font-weight:500; margin-top:3px;}
.shop-section {padding:var(--sp-section) 40px;background:var(--cream-mid);border-top:1px solid rgba(115,88,49,.12);border-bottom:1px solid rgba(115,88,49,.12);}
.shop-inner {max-width:1280px;margin:0 auto;}
.shop-header {text-align:center;max-width:680px;margin:0 auto 44px;}
.shop-lede {font-size:var(--fs-base);color:var(--text-body);line-height:var(--lh-loose);margin-top:14px;}
.shop-filters {display:flex;flex-direction:column;gap:18px;margin-bottom:40px;padding-bottom:34px;border-bottom:1px solid rgba(115,88,49,.14);}
.filter-group {display:flex;flex-wrap:wrap;align-items:center;gap:10px;}
.filter-label {flex-shrink:0;font-size:11px;letter-spacing:var(--ls-widest);text-transform:uppercase;color:var(--gold-ink);font-weight:700;margin-right:6px;min-width:108px;}
.chip {appearance:none;-webkit-appearance:none;font:inherit;cursor:pointer;background:var(--white);border:1px solid rgba(115,88,49,.26);color:var(--text-sub);font-size:13px;font-weight:600;letter-spacing:.02em;padding:9px 18px;border-radius:999px;transition:var(--transition);line-height:1;}
.chip:hover {border-color:var(--gold);color:var(--text-primary);}
.chip.is-active {background:var(--charcoal);border-color:var(--charcoal);color:var(--cream);}
.shop-grid {display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
.product-card {display:flex;flex-direction:column;background:var(--white);border:1px solid rgba(115,88,49,.16);transition:var(--transition);}
.product-card:hover {box-shadow:0 24px 48px -28px rgba(42,36,32,.34);transform:translateY(-3px);}
.product-card[hidden] {display:none;}
.product-thumb {position:relative;aspect-ratio:4/5;background:linear-gradient(150deg,var(--cream) 0%,var(--cream-dark) 100%);display:flex;align-items:center;justify-content:center;overflow:hidden;border-bottom:1px solid rgba(115,88,49,.12);}
.product-thumb::after {content:attr(data-monogram);font-family:'Cormorant Garamond',serif;font-size:64px;font-weight:500;color:rgba(115,88,49,.16);letter-spacing:.04em;}
.product-thumb img {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.product-body {display:flex;flex-direction:column;gap:8px;padding:20px 20px 22px;flex:1;}
.product-brand {font-size:10.5px;letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--gold-ink);font-weight:700;}
.product-name {font-family:'Cormorant Garamond',serif;font-size:21px;font-weight:500;color:var(--text-primary);line-height:1.2;}
.product-cat {font-size:12.5px;color:var(--text-muted);font-weight:500;}
.product-cta {margin-top:auto;display:inline-flex;align-items:center;gap:8px;padding-top:12px;font-size:12px;font-weight:700;letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--charcoal);text-decoration:none;transition:gap .2s,color .2s;}
.product-cta::after {content:'→';font-weight:400;}
.product-cta:hover {color:var(--gold-ink);gap:12px;}
.shop-empty {grid-column:1/-1;text-align:center;padding:48px 20px;color:var(--text-muted);font-size:var(--fs-base);}
.shop-note {margin-top:32px;font-size:13px;color:var(--text-muted);text-align:center;line-height:1.6;}
.shop-pagination {display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap;margin-top:44px;}
.page-btn {min-width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;padding:0 12px;background:var(--white);border:1px solid rgba(115,88,49,.26);color:var(--text-sub);font-family:'Nunito Sans',sans-serif;font-size:14px;font-weight:600;cursor:pointer;transition:var(--transition);appearance:none;-webkit-appearance:none;}
.page-btn:hover:not(:disabled):not(.is-active) {border-color:var(--gold);color:var(--text-primary);}
.page-btn.is-active {background:var(--charcoal);border-color:var(--charcoal);color:var(--cream);cursor:default;}
.page-btn:disabled {opacity:.35;cursor:not-allowed;}
.page-ellipsis {min-width:24px;text-align:center;color:var(--text-muted);font-weight:600;user-select:none;}
.shop-allcta {display:flex;justify-content:center;margin-top:28px;}
.shop-allcta a {display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700;letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--charcoal);text-decoration:none;border-bottom:1.5px solid var(--gold);padding-bottom:4px;transition:var(--transition);}
.shop-allcta a::after {content:'→';font-weight:400;transition:transform .2s;}
.shop-allcta a:hover {color:var(--gold-ink);}
.shop-allcta a:hover::after {transform:translateX(4px);}
.gift-band {padding:var(--sp-section-tight) 40px;background:var(--cream);}
.gift-band-inner {max-width:1160px;margin:0 auto;display:grid;grid-template-columns:1.05fr 1fr;align-items:stretch;border:1px solid rgba(115,88,49,.2);background:var(--white);overflow:hidden;}
.gift-band-media {position:relative;aspect-ratio:3/2;align-self:start;background:linear-gradient(150deg,var(--gold-pale) 0%,var(--cream-dark) 100%);}
.gift-band-media img {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:2;}
.photo-ph {position:absolute;inset:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:1.5px dashed rgba(115,88,49,.4);color:var(--gold-ink);text-align:center;padding:16px;}
.photo-ph svg {width:42px;height:42px;opacity:.7;}
.photo-ph-label {font-family:'Cormorant Garamond',serif;font-size:20px;font-weight:500;color:var(--text-sub);}
.photo-ph-spec {font-size:11px;letter-spacing:var(--ls-wider);text-transform:uppercase;font-weight:700;color:var(--gold-ink);opacity:.8;}
.gift-band-body {padding:clamp(36px,4vw,60px) clamp(32px,4vw,56px);display:flex;flex-direction:column;justify-content:center;}
.gift-band-eyebrow {font-size:11px;letter-spacing:var(--ls-widest);text-transform:uppercase;color:var(--gold-ink);font-weight:700;margin-bottom:16px;}
.gift-band-title {font-family:'Cormorant Garamond',serif;font-size:clamp(30px,3.4vw,44px);font-weight:500;color:var(--text-primary);line-height:1.12;letter-spacing:var(--ls-tight);margin-bottom:18px;}
.gift-band-title i.i-italic {font-style:italic;font-weight:400;color:var(--text-sub);}
.gift-band-text {font-size:var(--fs-base);color:var(--text-body);line-height:var(--lh-loose);margin-bottom:30px;max-width:46ch;}
.compliance-section {padding:clamp(44px,6vw,72px) 40px; background:var(--cream-mid); border-top:1px solid rgba(115,88,49,.14); border-bottom:1px solid rgba(115,88,49,.14);}
.compliance-inner {max-width:860px; margin:0 auto; display:flex; gap:32px; align-items:flex-start;}
.compliance-icon-wrap {flex-shrink:0; width:52px; height:52px; border:1.5px solid rgba(115,88,49,.30); display:flex; align-items:center; justify-content:center; color:var(--gold-deep); background:var(--cream-dark);}
.compliance-icon-wrap svg {width:22px; height:22px;}
.compliance-body {}
.compliance-label {display:block; font-size:11.5px; letter-spacing:var(--ls-widest); text-transform:uppercase; color:var(--gold-ink); font-weight:700; margin-bottom:14px;}
.compliance-body p {font-size:16px; color:var(--text-body); line-height:1.75; margin-bottom:12px;}
.compliance-body p:last-child {margin-bottom:0;}
.compliance-body a {color:var(--gold-ink); text-decoration:none; border-bottom:1px solid rgba(115,88,49,.35); font-weight:600; transition:color .2s;}
.compliance-body a:hover {color:var(--charcoal);}
.cta-section {background:var(--cream-dark); padding:var(--sp-section) 40px; border-top:1px solid rgba(115,88,49,.20); text-align:center;}
.cta-inner {max-width:680px;margin:0 auto;}
.cta-ornament {display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:28px;}
.cta-ornament-line {width:48px;height:1px;background:linear-gradient(90deg,transparent,var(--gold));}
.cta-ornament-line.right {background:linear-gradient(90deg,var(--gold),transparent);}
.cta-ornament-diamond {width:6px;height:6px;background:var(--gold-deep);transform:rotate(45deg);}
.cta-eyebrow {display:block;font-size:11.5px;letter-spacing:var(--ls-widest);text-transform:uppercase;color:var(--gold-ink);font-weight:700;margin-bottom:20px;}
.cta-title {font-family:'Cormorant Garamond', serif;font-size:clamp(34px,4.5vw,54px);font-weight:500;color:var(--text-primary);line-height:1.1;letter-spacing:var(--ls-tight);margin-bottom:16px;}
.cta-title i.i-italic {font-style:italic;font-weight:400;color:var(--text-sub);}
.cta-sub {font-size:17px;color:var(--text-body);line-height:1.7;margin-bottom:36px;}
.cta-actions {display:flex;justify-content:center;gap:14px;flex-wrap:wrap;}
.btn-primary {display:inline-block;background:var(--charcoal);color:var(--cream);font-size:var(--fs-sm);font-weight:700;letter-spacing:var(--ls-wide);text-transform:uppercase;padding:16px 36px;text-decoration:none;border:1.5px solid var(--charcoal);transition:var(--transition);}
.btn-primary:hover {background:transparent;color:var(--charcoal);}
.btn-secondary {display:inline-block;background:transparent;color:var(--charcoal);font-size:var(--fs-sm);font-weight:700;letter-spacing:var(--ls-wide);text-transform:uppercase;padding:16px 36px;text-decoration:none;border:1.5px solid rgba(42,36,32,.50);transition:var(--transition);}
.btn-secondary:hover {background:var(--charcoal);color:var(--cream);border-color:var(--charcoal);}
.site-footer-dark {position:relative;background:linear-gradient(180deg,var(--footer-bg-from) 0%,var(--footer-bg-to) 100%);color:var(--charcoal);}
.site-footer-dark::before {content:'';display:block;height:4px;background:linear-gradient(90deg,transparent 0%,var(--gold-deep) 12%,var(--gold) 50%,var(--gold-deep) 88%,transparent 100%);}
.footer-dark-inner {max-width:1440px;margin:0 auto;padding:76px 40px 0;}
.footer-dark-top {display:flex;justify-content:space-between;align-items:center;padding-bottom:38px;border-bottom:1px solid rgba(42,36,32,.20);margin-bottom:48px;flex-wrap:wrap;gap:24px;}
.footer-dark-logo {text-decoration:none;display:inline-block;}
.footer-dark-wordmark {font-family:'Cormorant Garamond', serif;font-size:32px;font-weight:500;letter-spacing:.16em;color:var(--charcoal);display:block;text-transform:uppercase;line-height:1.05;}
.footer-dark-subline {font-size:11.5px;letter-spacing:var(--ls-widest);color:var(--gold-ink);text-transform:uppercase;display:block;margin-top:10px;font-weight:700;}
.footer-social {display:flex;align-items:center;gap:14px;}
.footer-social-label {font-size:11.5px;letter-spacing:var(--ls-widest);text-transform:uppercase;color:var(--gold-ink);font-weight:700;margin-right:6px;}
.footer-social-link {display:flex;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid rgba(42,36,32,.5);color:var(--charcoal);text-decoration:none;transition:all .25s;background:rgba(254,252,248,.4);}
.footer-social-link:hover {border-color:var(--charcoal);color:var(--cream);background:var(--charcoal);transform:translateY(-2px);}
.footer-dark-cols {display:grid;grid-template-columns:repeat(4,1fr);gap:28px 36px;padding-bottom:48px;border-bottom:1px solid rgba(42,36,32,.20);}
.footer-dark-heading {font-family:'Cormorant Garamond', serif;font-size:19px;font-weight:600;color:var(--charcoal);margin-bottom:22px;letter-spacing:.01em;padding-bottom:14px;position:relative;}
.footer-dark-heading::after {content:'';position:absolute;left:0;bottom:0;width:32px;height:1.5px;background:var(--gold-deep);}
.footer-dark-col a {color:var(--charcoal);text-decoration:none;font-size:14.5px;font-weight:600;transition:all .2s;line-height:1.5;letter-spacing:.005em;padding-left:0;}
.footer-dark-col a:hover {color:var(--gold-ink);padding-left:6px;}
.footer-dark-contact-line {margin-bottom:18px;line-height:1.55;}
.footer-dark-contact-line a {color:var(--charcoal);text-decoration:none;transition:color .2s;font-weight:600;font-size:15px;letter-spacing:.01em;}
.footer-dark-label {display:block;color:var(--gold-ink);font-weight:700;font-size:12.5px;letter-spacing:var(--ls-widest);text-transform:uppercase;margin-bottom:7px;line-height:1.2;}
.footer-dark-value {display:block;color:var(--charcoal);font-size:15px;font-weight:600;line-height:1.55;letter-spacing:.01em;}
.footer-dark-hours {font-size:15px;color:var(--charcoal);line-height:1.85;margin-top:18px;font-weight:600;padding-top:18px;border-top:1px solid rgba(42,36,32,.20);}
.footer-dark-hours strong {display:block;color:var(--gold-ink);font-weight:700;font-size:12.5px;letter-spacing:var(--ls-widest);text-transform:uppercase;margin-bottom:10px;line-height:1.2;}
.footer-dark-bottom {display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:24px;padding:34px 0 40px;}
.footer-dark-legal {flex:1;min-width:280px;max-width:820px;}
.footer-dark-copy {font-size:13.5px;color:var(--text-body);line-height:1.7;letter-spacing:.01em;font-weight:500;}
.footer-policy-row {list-style:none;display:flex;flex-wrap:wrap;align-items:center;margin:0;padding:0;margin-top:16px;padding-top:16px;border-top:1px solid rgba(42,36,32,.18);}
.footer-policy-row li {display:flex;align-items:center;line-height:1;}
.footer-policy-row li:not(:last-child)::after {content:'·';margin:0 12px;color:var(--gold-deep);font-weight:700;font-size:14px;}
.footer-policy-row a {font-size:11.5px;letter-spacing:var(--ls-wider);text-transform:uppercase;font-weight:700;color:var(--charcoal);text-decoration:none;transition:color .2s;}
.footer-dark-actions {display:flex;gap:8px;flex-wrap:wrap;}
.footer-action-link {display:inline-flex;align-items:center;gap:9px;padding:12px 22px;background:rgba(254,252,248,.65);border:1px solid rgba(42,36,32,.4);color:var(--charcoal);text-decoration:none;font-size:12px;font-weight:700;letter-spacing:var(--ls-wider);text-transform:uppercase;transition:all .25s;}
.footer-action-link:hover {background:var(--charcoal);border-color:var(--charcoal);color:var(--cream);}
.store-dir {padding:var(--sp-section) 40px;background:var(--cream-mid);border-top:1px solid rgba(115,88,49,.12);border-bottom:1px solid rgba(115,88,49,.12);}
.store-dir-inner {max-width:1120px;margin:0 auto;}
.store-dir-header {text-align:center;margin-bottom:clamp(40px,5vw,64px);}
.store-dir-header .shop-lede {max-width:620px;margin:18px auto 0;}
.store-dir-cols {display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,88px);}
.store-dir-eyebrow {display:block;font-size:12.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-ink);margin-bottom:6px;padding-bottom:16px;border-bottom:1px solid rgba(115,88,49,.22);}
.store-list {list-style:none;margin:0;padding:0;}
.store-list li {border-bottom:1px solid rgba(115,88,49,.14);}
.store-list a {display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 4px;text-decoration:none;transition:color .25s,padding .25s;}
.store-list-main {display:flex;flex-direction:column;gap:3px;min-width:0;}
.store-list-name {font-family:'Cormorant Garamond',serif;font-size:23px;font-weight:500;line-height:1.1;color:var(--text-primary);transition:color .25s;}
.store-list-sub {font-size:13px;font-weight:400;letter-spacing:.01em;color:var(--text-muted);}
.store-list a::after {content:'\2192';font-size:17px;color:var(--gold);opacity:0;transform:translateX(-6px);transition:opacity .25s,transform .25s;flex-shrink:0;}
.store-list a:hover {padding-left:10px;}
.store-list a:hover .store-list-name {color:var(--gold-ink);}
.store-list a:hover::after {opacity:1;transform:translateX(0);}
.store-list a:focus-visible {outline:2px solid var(--gold-deep);outline-offset:3px;}
.store-dir-cta {display:flex;justify-content:center;margin-top:clamp(40px,5vw,64px);}
.store-dir-cta a {display:inline-flex;align-items:center;gap:10px;background:var(--charcoal);color:var(--cream);font-size:var(--fs-sm);font-weight:700;letter-spacing:var(--ls-wide);text-transform:uppercase;padding:16px 36px;text-decoration:none;border:1.5px solid var(--charcoal);transition:var(--transition);}
.store-dir-cta a::after {content:'\2192';font-weight:400;transition:transform .2s;}
.store-dir-cta a:hover {background:transparent;color:var(--charcoal);}
.store-dir-cta a:hover::after {transform:translateX(4px);}
.contact-hours-mini {margin-top:28px;font-size:13.5px;color:var(--text-muted);letter-spacing:.01em;line-height:1.7;}
.contact-hours-mini .chm-label {display:block;font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-ink);margin-bottom:5px;}
.contact-title {font-family:'Cormorant Garamond', Georgia, 'Times New Roman', serif; font-size:clamp(42px, 5.2vw, 64px); font-weight:500; color:var(--text-primary); line-height:1.05; margin-bottom:20px; letter-spacing:var(--ls-tight);}
.form-card-title {font-family:'Cormorant Garamond', Georgia, 'Times New Roman', serif; font-size:30px; font-weight:500; color:var(--text-primary); margin-bottom:36px; letter-spacing:var(--ls-tight);}
.form-success h3 {font-family:'Cormorant Garamond', Georgia, 'Times New Roman', serif; font-size:28px; font-weight:500; color:var(--charcoal); margin-bottom:12px; letter-spacing:var(--ls-tight);}
.bdh-ai-summary {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.tpl-banner {background:var(--charcoal);color:rgba(250,247,242,.82);font-size:12px; letter-spacing:var(--ls-wide);text-align:center;padding:9px 16px;font-weight:600;}
.tpl-banner b {color:var(--gold-light);}
.crumb {max-width:1240px;margin:0 auto;padding:22px 40px 0;font-size:12.5px; letter-spacing:.03em;color:var(--text-muted);}
.crumb .crumb a:hover {color:var(--gold-ink);}
.crumb .sep {color:var(--gold);margin:0 8px;}
.pdp {max-width:1240px;margin:0 auto;padding:34px 40px 80px; display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:64px;align-items:start;}
.gal {position:sticky;top:28px;}
.gal-main {aspect-ratio:4/5;border:1px solid var(--line);background: linear-gradient(150deg,var(--cream) 0%,var(--cream-dark) 100%); display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;}
.gal-main::after {content:attr(data-monogram);font-family:var(--serif);font-size:120px; font-weight:500;color:rgba(115,88,49,.14);letter-spacing:.04em;}
.gal-tag {position:absolute;top:16px;left:16px;background:var(--white);color:var(--gold-ink); font-size:10px;font-weight:700;letter-spacing:var(--ls-wider);text-transform:uppercase; padding:7px 12px;border:1px solid var(--line);}
.gal-thumbs {display:flex;gap:12px;margin-top:14px;}
.gal-thumb {width:84px;height:104px;border:1px solid var(--line);background: linear-gradient(150deg,var(--cream) 0%,var(--cream-dark) 100%);cursor:pointer; display:flex;align-items:center;justify-content:center;transition:border-color .2s;}
.gal-thumb::after {content:attr(data-monogram);font-family:var(--serif);font-size:30px; color:rgba(115,88,49,.22);}
.gal-thumb.is-active {border-color:var(--gold);}
.sum-brand {font-size:11px;font-weight:700;letter-spacing:var(--ls-wider); text-transform:uppercase;color:var(--gold-ink);}
.sum-title {font-family:var(--serif);font-size:clamp(32px,4vw,44px);font-weight:500; color:var(--text-primary);line-height:1.12;margin:10px 0 6px;}
.sum-price {font-family:var(--serif);font-size:28px;font-weight:500;color:var(--charcoal); margin:14px 0 4px;}
.sum-price small {font-family:var(--sans);font-size:12px;font-weight:600;color:var(--text-muted); letter-spacing:.04em;margin-left:8px;}
.sum-orn {width:48px;height:1px;background:linear-gradient(90deg,var(--gold) 0%,transparent 100%); margin:18px 0;}
.sum-excerpt {font-size:15.5px;line-height:1.75;color:var(--text-body);}
.sum-stock {display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700; letter-spacing:var(--ls-wide);text-transform:uppercase;color:#4f7a52;margin:22px 0 0;}
.sum-stock::before {content:'';width:7px;height:7px;border-radius:50%;background:#6aa06d;}
.cart-row {display:flex;gap:14px;align-items:stretch;margin:20px 0 8px;flex-wrap:wrap;}
.qty {display:inline-flex;align-items:center;border:1px solid var(--line);background:var(--white);}
.qty button {width:46px;height:54px;background:none;border:none;font-size:20px;color:var(--text-muted); cursor:pointer;font-family:var(--serif);}
.qty button:hover {color:var(--gold-ink);}
.qty input {width:48px;height:54px;border:none;text-align:center;font-family:var(--sans); font-size:16px;font-weight:600;color:var(--charcoal);background:transparent;-moz-appearance:textfield;}
.qty input::-webkit-outer-spin-button,.qty input::-webkit-inner-spin-button {-webkit-appearance:none;margin:0;}
.btn-cart {flex:1;min-width:200px;height:54px;background:var(--charcoal);color:var(--cream); border:1px solid var(--charcoal);font-family:var(--sans);font-size:12.5px;font-weight:700; letter-spacing:var(--ls-wider);text-transform:uppercase;cursor:pointer;display:inline-flex; align-items:center;justify-content:center;gap:10px;transition:background .2s,color .2s;}
.btn-cart::after {content:'\2192';font-weight:400;transition:transform .2s;}
.btn-cart:hover {background:transparent;color:var(--charcoal);}
.btn-cart:hover::after {transform:translateX(4px);}
.sum-met .sum-meta b {color:var(--text-body);font-weight:700;}
.suit {margin-top:22px;padding:16px 18px;background:var(--cream-mid);border-left:3px solid var(--gold); font-size:13px;line-height:1.7;color:var(--text-body);}
.suit strong {display:block;font-size:10.5px;letter-spacing:var(--ls-wider);text-transform:uppercase; color:var(--gold-ink);font-weight:700;margin-bottom:6px;}
.tabs {max-width:1240px;margin:0 auto;padding:0 40px 70px;}
.tab-nav {display:flex;gap:36px;border-bottom:1px solid var(--line);}
.tab-btn {background:none;border:none;padding:16px 0;font-family:var(--sans);font-size:12px; font-weight:700;letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--text-muted); cursor:pointer;position:relative;}
.tab-btn.is-active {color:var(--charcoal);}
.tab-btn.is-active::after {content:'';position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--gold);}
.tab-panel {display:none;padding:30px 0;max-width:760px;font-size:15.5px;line-height:1.8;color:var(--text-body);}
.tab-panel.is-active {display:block;}
.tab-panel h3 {font-family:var(--serif);font-size:24px;font-weight:500;color:var(--text-primary);margin-bottom:12px;}
.tab-panel p {margin-bottom:14px;}
.spec {width:100%;border-collapse:collapse;font-size:14px;}
.spec th,.spec td {text-align:left;padding:12px 14px;border:1px solid var(--line);}
.spec th {background:var(--cream-mid);font-weight:700;color:var(--text-primary);width:170px;}
.rel {background:var(--cream-mid);border-top:1px solid var(--line);padding:64px 40px;}
.rel-inner {max-width:1240px;margin:0 auto;}
.rel-head {text-align:center;margin-bottom:40px;}
.rel-eyebrow {font-size:11px;font-weight:700;letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--gold-ink);}
.rel-title {font-family:var(--serif);font-size:34px;font-weight:500;color:var(--text-primary);margin-top:8px;}
.rel-grid {display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
.pc {background:var(--white);border:1px solid var(--line);display:flex;flex-direction:column; transition:transform .2s,box-shadow .2s;}
.pc:hover {transform:translateY(-3px);box-shadow:0 24px 48px -28px rgba(42,36,32,.34);}
.pc-thumb {aspect-ratio:4/5;background:linear-gradient(150deg,var(--cream) 0%,var(--cream-dark) 100%); display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--line);}
.pc-thumb::after {content:attr(data-monogram);font-family:var(--serif);font-size:52px;color:rgba(115,88,49,.16);}
.pc- .pc-brand {font-size:10px;font-weight:700;letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--gold-ink);}
.pc-name {font-family:var(--serif);font-size:19px;font-weight:500;color:var(--text-primary);line-height:1.2;}
.pc-price {font-family:var(--serif);font-size:18px;color:var(--charcoal);}
.pc-ct .pc-cta::after {content:'\2192';font-weight:400;}
@media(prefers-reduced-motion:reduce) {
  *,*::before,*::after {animation-duration:.01ms!important;transition-duration:.01ms!important;}
}
@media(max-width:1200px) {
  .footer-dark-cols {grid-template-columns:repeat(3,1fr);}
}
@media(max-width:1024px) {
  .store-hero-inner {grid-template-columns:1fr;}
  .store-hero-text {padding:52px 40px;}
  .store-hero-text::before {display:none;}
  .store-hero-photo {padding:40px;}
  .hero-bio {max-width:none;}
  .brands-grid {grid-template-columns:repeat(2,1fr);}
  .guidance-inner {grid-template-columns:1fr;gap:44px;}
  .categories-grid {grid-template-columns:repeat(2,1fr);}
  .shop-grid {grid-template-columns:repeat(3,1fr);}
  .gift-band-inner {grid-template-columns:1fr;}
  .gift-band-media {align-self:stretch;}
}
@media(max-width:900px) {
  body[data-nav-open="true"] {overflow:hidden;position:fixed;width:100%;}
  .store-hero-text {padding:44px 22px;}
  .store-hero-photo {padding:28px 22px;}
  .brands-section,.guidance-section,.categories-section,.compliance-section,.cta-section {padding:52px 22px;}
  .shop-section,.gift-band {padding:52px 22px;}
  .shop-grid {grid-template-columns:repeat(2,1fr);gap:16px;}
  .filter-label {min-width:100%;margin-bottom:2px;}
  .breadcrumb-inner {padding:14px 22px;}
  .footer-dark-inner {padding:62px 22px 0;}
  .footer-dark-cols {grid-template-columns:repeat(2,1fr);}
  .footer-dark-bottom {flex-direction:column;}
  .compliance-inner {flex-direction:column;gap:20px;}
}
@media(max-width:640px) {
  .brands-grid {grid-template-columns:1fr;}
  .categories-grid {grid-template-columns:1fr;}
  .cta-actions {flex-direction:column;align-items:stretch;}
  .btn-primary,.btn-secondary {text-align:center;}
  .store-hero-photo {padding:22px;}
  .product-name {font-size:19px;}
}
@media(max-width:600px) {
  .footer-dark-cols {grid-template-columns:1fr;}
  .footer-dark-top {flex-direction:column;align-items:flex-start;}
  .footer-policy-row {flex-direction:column;align-items:flex-start;}
  .footer-policy-row li:not(:last-child)::after {display:none;}
  .footer-policy-row li {padding:8px 0;width:100%;border-bottom:1px solid rgba(42,36,32,.10);}
  .footer-policy-row li:last-child {border-bottom:none;}
  .footer-dark-actions {width:100%;flex-direction:column;}
  .footer-action-link {width:100%;justify-content:center;}
}
@supports(padding:env(safe-area-inset-left)) {
  .header-inner,.nav-inner,.breadcrumb-inner,.footer-dark-inner {padding-left:max(env(safe-area-inset-left),14px);padding-right:max(env(safe-area-inset-right),14px);}
}
@media(max-width:768px) {
  .store-dir {padding:52px 22px;}
  .store-dir-cols {grid-template-columns:1fr;gap:40px;}
  .store-list-name {font-size:21px;}
  /* Hero: no mobile o <source> carrega o crop RETRATO (1080x1350 = 4:5), mas a
     moldura ficava travada em 3/2 (paisagem), entao a foto era cortada numa
     faixa horizontal (pedido cliente 4 ago 2026 — "imagem nao exibe certo no
     mobile"). Aqui a moldura passa a 4/5 p/ combinar com o crop retrato. */
  .hero-photo-frame {aspect-ratio:4 / 5; max-width:440px; margin-left:auto; margin-right:auto;}
}
@media (max-width:480px) {
  .contact-section {padding:60px 16px;}
  .contact-title {font-size:clamp(34px, 8.8vw, 46px);}
  .contact-lede {font-size:16.5px;}
  .contact-form-wrap {padding:32px 22px;}
  .form-card-title {font-size:24px; margin-bottom:28px;}
  .form-label {font-size:10.5px; letter-spacing:0.16em;}
  .form-input {font-size:16px;}
}
@media (max-width:980px) {
  .pdp {grid-template-columns:1fr;gap:36px;padding:26px 22px 60px;}
  .gal {position:static;}
  .rel-grid {grid-template-columns:repeat(2,1fr);}
}
@media (max-width:560px) {
  .rel-grid {grid-template-columns:1fr;}
  .tab-nav {gap:22px;}
}
/* cards de marca como links (paginas /brand/) + chip SEMPRE alinhado na base */
a.brand-card { display:flex; flex-direction:column; text-decoration:none; color:inherit; }
a.brand-card .brand-card-tag { margin-top:auto; align-self:flex-start; }
a.brand-card .brand-card-desc { margin-bottom:20px; }
