/* VELORA GEM AND JEWELRY — premium purple theme, final layer (Stage 2).
   Every page links this file last, so it only holds what must win the cascade by order:
   the page-specific blocks relocated out of the old shared theme (about, sign-in, cart, detail, contact, filters).
   Tokens, base and components → styles.css · heroes and home page → luxury-theme.css · nav and footer → site-nav.css.
   0 × important flags. Do not add new rules here. */
/* VELORA — page-specific rules that used to live in the shared premium theme.
   Loaded by premium-purple-light.css so the cascade order is unchanged. The owning stage may move
   each block into its own page CSS and then delete it here.
     about.html (Stage 4) · login.html (Stage 4) · shop/account (Stage 4) · stone/detail (Stage 3/4) ·
     contact.html (Stage 4) · listing filters (Stage 3)
   Selectors are deliberately low-specificity so a page stylesheet can override them without !important.
   Mobile-first: 480 / 768 / 1024 / 1280. */

/* shared surface + control treatment used across Stage 3/4/5 pages */
.blogEyebrow,.shopEyebrow,.tgsGalleryEyebrow{color:var(--tgs-violet-600);letter-spacing:.2em}
.muted,.shopMuted{color:var(--muted)}
.shopPanel,.blogCard,.filterPanel,.calcCard{border:1px solid rgba(111,70,199,.16);border-radius:var(--tgs-r-md);background:rgba(255,255,255,.92);box-shadow:var(--tgs-shadow-sm)}
.filterPanel{background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
.shopBtn,.blogFilter{min-height:var(--tgs-tap);border-radius:var(--tgs-r-sm)}
.shopBtn{border:1px solid rgba(111,70,199,.24);background:#fff;color:var(--text);box-shadow:var(--tgs-shadow-sm)}
.shopBtnGold,.authSubmit{border-color:transparent;background:var(--tgs-grad-primary);color:#fff;box-shadow:0 14px 34px rgba(91,33,182,.28)}
.blogCover,.gemVisual.blank{background:linear-gradient(135deg,#F9F6FF,#E8DDFF 48%,#6F46C7)}
input,select,textarea{max-width:100%}
input:not([type=checkbox],[type=radio],[type=range]),select,textarea{border-radius:var(--tgs-r-sm)}
input:focus,select:focus,textarea:focus{border-color:var(--tgs-violet-500);box-shadow:0 0 0 4px rgba(139,92,246,.18)}
.inventoryTop,.shopLine,.filterSummary,.shopLineBody{min-width:0}
.shopLine strong,.shopLineBody strong,.blogCard h2{overflow-wrap:anywhere}
.filterGrid{display:grid;grid-template-columns:minmax(0,1fr);gap:.75rem}
.filterGrid>*{min-width:0}
.filterPanel{padding:.9rem}
@media (min-width:768px){.filterGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.filterPanel{padding:1.4rem}}
@media (min-width:1024px){.filterGrid{grid-template-columns:minmax(11rem,1.5fr) repeat(4,minmax(7.5rem,1fr))}.filterPanel{position:sticky;top:calc(var(--tgs-nav-height) + 1rem)}}

/* ── login / auth (Stage 4) ── */
.authLayout{border-color:rgba(111,70,199,.16);box-shadow:var(--shadow)}
.authVisual{background:#241733}
.authVisual::after{background:linear-gradient(135deg,rgba(33,20,54,.88),rgba(111,70,199,.22) 72%)}
.authVisualCopy,.authVisualCopy h1,.authVisualCopy h1 em,.authVisualCopy p,.authVisualCopy>span,.authVisualFoot{color:#fff;font-weight:600;text-shadow:0 1px 8px rgba(0,0,0,.6)}
.authTabs{background:#F2EBFF}
.authTab.active{color:#4B2B82}
.authFormSide{padding-inline:1rem}
@media (min-width:480px){.authFormSide{padding-inline:1.5rem}}

/* ── cart / account lines (Stage 4) ── */
.shopLineRich{display:grid;grid-template-columns:4.4rem minmax(0,1fr);align-items:center;gap:.9rem}
.shopLineEnd{display:grid;grid-column:2;justify-items:start;gap:.5rem}
.shopThumb{display:grid;place-items:center;width:100%;max-width:5.1rem;aspect-ratio:1;border-radius:.875rem;overflow:hidden;background:#F2EBFF;color:#5B21B6;font-size:.75rem;font-weight:900}
.shopThumb img{width:100%;height:100%;object-fit:cover}
.shopQty{display:inline-grid;grid-template-columns:2.75rem 2.4rem 2.75rem;align-items:center;margin-top:.6rem;border:1px solid var(--line);border-radius:var(--tgs-r-sm);overflow:hidden;background:#fff;width:max-content}
.shopQty button{min-height:2.75rem;border:0;background:#F5F0FF;color:#3B0A7A;font-weight:900}
.shopQty button:disabled{opacity:.45;cursor:not-allowed}
.shopQty span{text-align:center;font-weight:800}
.shopSummary{margin:1.1rem 0;padding:1rem;border:1px solid var(--line);border-radius:1rem;background:#F8F4FF}
.shopSummary>div{display:flex;align-items:center;justify-content:space-between;gap:.9rem}
.shopActionRow{display:flex;flex-wrap:wrap;gap:.6rem}
.tgsFooterSocial,.shopSocial{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.75rem}
@media (min-width:768px){.shopLineRich{grid-template-columns:5.1rem minmax(0,1fr) auto}.shopLineEnd{grid-column:auto;justify-items:end}}

/* ── product / stone detail (Stage 3 + 4) ── */
.detailHero{padding-block:clamp(2.5rem,7vw,5.5rem);background:linear-gradient(135deg,#fff,#F5F0FF);color:var(--text)}
.detailShell{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(1.5rem,5vw,4rem);align-items:start}
.detailShell>*{min-width:0}
.detailGallery{display:grid;gap:.75rem}
.detailMainImage{display:block;width:100%;aspect-ratio:1.08;border-radius:1.5rem;object-fit:cover;background:#EFE7FF;box-shadow:var(--shadow)}
.detailThumbs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem}
.detailThumbs img{width:100%;aspect-ratio:1;border-radius:.875rem;object-fit:cover;border:2px solid transparent;cursor:pointer}
.detailThumbs img.active{border-color:#5B21B6}
.detailInfo{padding:clamp(1.25rem,4vw,2.6rem);border:1px solid var(--line);border-radius:1.5rem;background:#fff;box-shadow:var(--shadow)}
.detailInfo h1{font-size:var(--tgs-step-3);color:var(--text)}
.detailSpecs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;margin:1.4rem 0}
.detailSpec{padding:.8rem;border:1px solid var(--line);border-radius:.875rem;background:#FBF9FF;min-width:0}
.detailSpec span{display:block;color:var(--muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.12em}
.detailSpec strong{display:block;margin-top:.25rem;overflow-wrap:anywhere}
@media (min-width:768px){.detailShell{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}}

/* ── about page (Stage 4) ── */
.brandHeroLogo{max-width:22.5rem;margin-bottom:1.5rem}
.brandTimeline{position:relative;display:grid;gap:1.1rem;margin-top:1.75rem}
.brandTimeline::before{content:"";position:absolute;left:1.1rem;top:.6rem;bottom:.6rem;width:2px;background:#DDD6FE}
.brandStep{position:relative;padding:1.25rem 1.25rem 1.25rem 3.6rem;border:1px solid var(--line);border-radius:1.1rem;background:#fff;box-shadow:var(--shadow)}
.brandStep::before{content:"";position:absolute;left:.6rem;top:1.5rem;width:1.1rem;height:1.1rem;border-radius:50%;background:linear-gradient(135deg,#5B21B6,#D8C7FF);box-shadow:0 0 0 7px #F5F0FF}
.page-about .aboutHero{display:flex;align-items:flex-end;min-height:min(78svh,47.5rem);padding-block:clamp(6rem,13vw,10.5rem) clamp(3.5rem,8vw,6rem);position:relative;isolation:isolate;overflow:hidden;background:#10071F}
.page-about .aboutHeroImage{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1}
.page-about .aboutHero::before{content:"";position:absolute;inset:0;z-index:0;transform:none;background:linear-gradient(90deg,rgba(16,7,31,.94),rgba(25,8,47,.58) 58%,rgba(25,8,47,.12))}
.page-about .aboutHero::after{display:none}
.page-about .aboutHeroContent{position:relative;z-index:1}
.page-about .aboutHero .kicker,.page-about .aboutHero p{color:#fff}
.page-about .aboutHero p{max-width:38.75rem;font-weight:600}
.page-about .aboutManifesto{background:linear-gradient(130deg,#1B1030,#2D1850 58%,#1B1030);color:#fff}
.page-about .aboutManifestoInner{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:clamp(1.75rem,6vw,5rem)}
.page-about .aboutManifesto h2{max-width:40rem;color:#fff;font:500 clamp(2rem,4.2vw,3.5rem)/1.08 var(--tgs-font-head)}
.page-about .aboutManifesto .kicker,.page-about .aboutCraftCopy .kicker,.page-about .aboutClosing .kicker{color:#E9D5FF}
.page-about .aboutPillars{display:grid;grid-template-columns:minmax(0,1fr);gap:.9rem}
.page-about .aboutPillars article{padding:1.1rem .9rem;border-top:1px solid rgba(255,255,255,.35)}
.page-about .aboutPillars h3{margin:0 0 .55rem;color:#fff;font:500 1.3rem var(--tgs-font-head)}
.page-about .aboutPillars p{margin:0;color:rgba(255,255,255,.86);font-size:.875rem;line-height:1.6}
.page-about .aboutSectionIntro{max-width:47.5rem;margin-bottom:1.75rem}
.page-about .aboutSectionIntro h2{margin:.5rem 0 0}
.page-about .aboutChapterGrid{display:grid;grid-template-columns:minmax(0,1fr);gap:1.1rem}
.page-about .aboutChapter{overflow:hidden;border:1px solid var(--line);border-radius:.75rem;background:#fff;box-shadow:var(--shadow)}
.page-about .aboutChapterImageLink{display:block;cursor:zoom-in}
.page-about .aboutChapterImageLink:focus-visible{outline:3px solid var(--purple);outline-offset:-3px}
.page-about .aboutChapter img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.page-about .aboutImageDialog{position:fixed;inset:0;width:min(94%,80rem);max-width:none;max-height:92svh;margin:auto;padding:1.1rem;border:1px solid rgba(233,213,255,.28);border-radius:.75rem;background:#120B1E;color:#fff;box-shadow:0 28px 100px rgba(0,0,0,.55);overflow:visible}
.page-about .aboutImageDialog::backdrop{background:rgba(7,3,15,.86);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.page-about .aboutImageDialog figure{display:grid;place-items:center;gap:.6rem;margin:0;max-height:calc(92svh - 2.25rem)}
.page-about .aboutImageDialog figure img{display:block;width:100%;height:auto;max-height:calc(92svh - 5.6rem);object-fit:contain;border-radius:.25rem}
.page-about .aboutImageDialog figcaption{color:rgba(255,255,255,.82);font-size:.75rem;font-weight:700;letter-spacing:.08em;text-align:center;text-transform:uppercase}
.page-about .aboutImageClose{position:absolute;top:-.9rem;right:-.9rem;display:grid;place-items:center;width:2.75rem;height:2.75rem;padding:0;border:1px solid rgba(255,255,255,.35);border-radius:50%;background:#5B21B6;color:#fff;font-size:1.7rem;line-height:1;box-shadow:0 8px 24px rgba(0,0,0,.4)}
.page-about .aboutImageClose:focus-visible{outline:3px solid #fff;outline-offset:3px}
.page-about .aboutChapter>div{padding:1.4rem}
.page-about .aboutChapter h3{margin:.45rem 0;font:500 1.7rem/1.15 var(--tgs-font-head)}
.page-about .aboutChapter p{margin:0;color:var(--muted);line-height:1.75}
.page-about .aboutJourney{background:linear-gradient(180deg,#F7F2FF,#fff)}
.page-about .brandTimeline{margin-top:0}
.page-about .brandStep{border-radius:.5rem;box-shadow:0 12px 30px rgba(91,33,182,.08)}
.page-about .brandStep h3{font:500 1.4rem/1.2 var(--tgs-font-head)}
.page-about .brandStep p{margin-bottom:0;line-height:1.65}
.page-about .aboutEvidence{background:#fff}
.page-about .aboutEvidenceLayout{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(1.6rem,5vw,4rem);align-items:start}
.page-about .aboutEvidenceLadder{border-top:1px solid var(--line)}
.page-about .aboutEvidenceLadder article{display:grid;grid-template-columns:2.6rem minmax(0,1fr);gap:.9rem;padding:1.1rem 0;border-bottom:1px solid var(--line)}
.page-about .aboutEvidenceLadder article>span,.page-about .aboutPrincipleGrid article>span,.page-about .aboutWorkGrid article>span{color:var(--deep-purple);font-size:.75rem;font-weight:800;letter-spacing:.12em}
.page-about .aboutEvidenceLadder h3{margin:0 0 .3rem;font:600 1.15rem var(--tgs-font-head)}
.page-about .aboutEvidenceLadder p{margin:0;color:var(--muted);line-height:1.7}
.page-about .aboutEvidenceImages{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}
.page-about .aboutEvidenceImages figure{margin:0;overflow:hidden;border-radius:.5rem;background:#19082F}
.page-about .aboutEvidenceImages img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}
.page-about .aboutEvidenceImages figcaption{padding:.7rem .9rem;color:#fff;font-size:.75rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.page-about .aboutProvenance{margin-top:clamp(2.25rem,6vw,4.5rem);padding-top:1.5rem;border-top:1px solid var(--line)}
.page-about .aboutProvenance h3{margin:0 0 1.1rem;font:500 clamp(1.5rem,3vw,2.25rem) var(--tgs-font-head)}
.page-about .aboutProvenance>div{display:grid;grid-template-columns:minmax(0,1fr);gap:1.5rem}
.page-about .aboutProvenance p{margin:0;color:var(--muted);line-height:1.75}
.page-about .aboutProvenance strong{display:block;margin-bottom:.4rem;color:var(--text)}
.page-about .aboutPrinciples{background:#F6F1FF}
.page-about .aboutPrincipleGrid{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem}
.page-about .aboutPrincipleGrid article{padding:1.4rem;border:1px solid rgba(111,70,199,.18);border-radius:.5rem;background:#fff}
.page-about .aboutPrincipleGrid h3{margin:1.1rem 0 .55rem;font:500 1.4rem/1.2 var(--tgs-font-head)}
.page-about .aboutPrincipleGrid p{margin:0;color:var(--muted);line-height:1.7}
.page-about .aboutCraftBanner{display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;background:#19082F;color:#fff}
.page-about .aboutCraftBanner>img{display:block;width:100%;height:100%;min-height:15.6rem;max-height:22.5rem;object-fit:cover}
.page-about .aboutCraftCopy{align-self:center;padding:2rem 1.4rem 2.5rem}
.page-about .aboutCraftCopy h2{margin:.75rem 0;color:#fff;font:500 clamp(2rem,4.5vw,3.6rem)/1.05 var(--tgs-font-head)}
.page-about .aboutCraftCopy h2 em{color:#E9D5FF}
.page-about .aboutCraftCopy p{max-width:31rem;color:rgba(255,255,255,.84);line-height:1.75}
.page-about .aboutQuotes{background:linear-gradient(135deg,#211238,#3B1C63,#211238);color:#fff}
.page-about .aboutQuoteGrid{display:grid;grid-template-columns:minmax(0,1fr);gap:1.4rem}
.page-about .aboutQuoteGrid blockquote{margin:0;padding:.6rem 0 0;border-top:1px solid rgba(255,255,255,.4);font:500 clamp(1.2rem,2.3vw,1.75rem)/1.3 var(--tgs-font-head);color:#fff}
.page-about .aboutWorkGrid{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem}
.page-about .aboutWorkGrid article{padding:1.4rem;border-top:2px solid var(--purple);background:#fff;box-shadow:var(--shadow)}
.page-about .aboutWorkGrid h3{margin:1.1rem 0 .5rem;font:500 1.45rem var(--tgs-font-head)}
.page-about .aboutWorkGrid p{color:var(--muted);line-height:1.65}
.page-about .aboutWorkGrid a{display:flex;justify-content:space-between;align-items:center;gap:.6rem;min-height:var(--tgs-tap);padding-top:.75rem;border-top:1px solid var(--line);color:var(--deep-purple);font-size:.8125rem;font-weight:800}
.page-about .aboutFaq{background:#F7F3FF}
.page-about .aboutFaqLayout{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(1.5rem,6vw,5rem);align-items:start}
.page-about .aboutFaqList{border-top:1px solid var(--line)}
.page-about .aboutFaqList details{padding:1rem 0;border-bottom:1px solid var(--line)}
.page-about .aboutFaqList summary{min-height:var(--tgs-tap);cursor:pointer;color:var(--text);font:600 1.0625rem var(--tgs-font-head)}
.page-about .aboutFaqList p{max-width:45rem;margin:.75rem 0 0;color:var(--muted);line-height:1.7}
.page-about .aboutClosing{padding-block:clamp(3.5rem,8vw,6.25rem);background:linear-gradient(125deg,#19082F,#472078 58%,#210D39);color:#fff;text-align:center}
.page-about .aboutClosing h2{max-width:56rem;margin:.9rem auto;color:#fff;font:500 clamp(2.25rem,5.5vw,4.4rem)/1.05 var(--tgs-font-head)}
.page-about .aboutClosing h2 em{color:#F0DCFF}
.page-about .aboutClosing p{color:rgba(255,255,255,.88);font-weight:600}
.page-about .aboutClosing .actions{justify-content:center;margin-top:1.5rem}

/* ── contact cards (Stage 4) ── */
.contactCards{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem;margin-top:1.4rem}
.contactCard{min-width:0;padding:1.25rem;border:1px solid var(--line);border-radius:1.1rem;background:#fff;box-shadow:var(--shadow)}

@media (min-width:768px){
  .page-about .aboutManifestoInner,.page-about .aboutFaqLayout{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .page-about .aboutFaqLayout{grid-template-columns:minmax(15rem,.75fr) minmax(0,1.25fr)}
  .page-about .aboutPillars,.page-about .aboutPrincipleGrid,.page-about .aboutQuoteGrid,.page-about .aboutWorkGrid,.contactCards{grid-template-columns:repeat(3,minmax(0,1fr))}
  .page-about .aboutChapterGrid,.page-about .aboutProvenance>div,.page-about .aboutCraftBanner{grid-template-columns:repeat(2,minmax(0,1fr))}
  .page-about .aboutEvidenceLayout{grid-template-columns:minmax(0,1.35fr) minmax(16rem,.65fr)}
  .page-about .aboutEvidenceImages{grid-template-columns:minmax(0,1fr)}
  .page-about .aboutChapter img{aspect-ratio:16/9}
  .page-about .aboutCraftBanner>img{min-height:24.4rem;max-height:none}
  .page-about .aboutCraftCopy{padding:clamp(1.75rem,6vw,4.9rem)}
  .page-about .aboutWorkGrid p{min-height:5.2em}
}

