﻿
:root {
  --ink: #100c04;
  --ink-2: #1a1208;
  --parchment: #f0e8d0;
  --parchment-2: #e8dcc0;
  --gold: #c9a84c;
  --gold-2: #dfc06a;
  --gold-pale: #f5e9c0;
  --crimson: #6e1828;
  --sepia: #5a3e22;
  --navy: #0f1e32;
  --smoke: rgba(16,12,4,0.7);
  --trans-gold: rgba(201,168,76,0.15);
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;font-size:16px;}
body {
  background:var(--ink);
  color:var(--parchment);
  font-family:'Cormorant Garamond',serif;
  overflow-x:hidden;
  cursor:none;
}
.img-placeholder {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}
#cursor-dot {
  position:fixed;z-index:99999;pointer-events:none;
  width:8px;height:8px;border-radius:50%;
  background:var(--gold);
  transform:translate(-50%,-50%);
  transition:width .25s,height .25s,opacity .25s;
  mix-blend-mode:difference;
}
#cursor-ring {
  position:fixed;z-index:99998;pointer-events:none;
  width:36px;height:36px;border-radius:50%;
  border:1px solid rgba(201,168,76,0.6);
  transform:translate(-50%,-50%);
  transition:width .4s cubic-bezier(.2,1,.3,1),height .4s cubic-bezier(.2,1,.3,1),transform .08s linear;
}
body.hover-state #cursor-dot{width:4px;height:4px;opacity:.6;}
body.hover-state #cursor-ring{width:56px;height:56px;border-color:var(--gold);}
#noise {
  position:fixed;inset:0;z-index:9997;pointer-events:none;
  opacity:0.028;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-size:256px 256px;
}
#nav {
  position:fixed;top:0;left:0;right:0;z-index:5000;
  padding:1.8rem 4rem;
  display:flex;align-items:center;justify-content:space-between;
  transition:all .5s ease;
}
#nav.solid {
  background:rgba(16,12,4,0.97);
  backdrop-filter:blur(20px);
  padding:1rem 4rem;
  border-bottom:1px solid rgba(201,168,76,0.12);
}
.nav-logo {
  color:var(--gold);
  text-decoration:none;
  text-transform:uppercase;
  display:flex;
  align-items:center;
  gap:1rem;
}
.nav-logo-mark {
  position:relative;
  width:68px;
  aspect-ratio:1;
  display:grid;
  place-items:center;
  flex-shrink:0;
}
.nav-logo-mark::before {
  content:'';
  position:absolute;
  inset:7px;
  border-radius:50%;
  border:1px solid rgba(201,168,76,0.18);
  background:linear-gradient(145deg, rgba(245,233,192,0.025), rgba(16,12,4,0.04));
}
.nav-logo-mark img {
  position:relative;
  width:100%;
  height:100%;
  object-fit:contain;
  opacity:.98;
}
.nav-logo-copy {
  display:flex;
  flex-direction:column;
  gap:.15rem;
}
.nav-logo-name {
  font-family:'Cinzel',serif;
  font-size:.98rem;
  letter-spacing:.28em;
  line-height:1;
  color:var(--gold-pale);
}
.nav-logo-tagline {
  font-family:'Cormorant Garamond',serif;
  font-size:.8rem;
  font-style:italic;
  letter-spacing:.14em;
  text-transform:none;
  color:rgba(240,232,208,.72);
}
.nav-links {
  display:flex;gap:2.8rem;list-style:none;
}
.nav-links a {
  font-family:'Cinzel',serif;
  font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;
  color:rgba(240,232,208,.65);text-decoration:none;
  position:relative;transition:color .3s;
}
.nav-links a::after {
  content:'';position:absolute;bottom:-4px;left:0;width:0;height:1px;
  background:var(--gold);transition:width .35s ease;
}
.nav-links a:hover,
.nav-links a.active {color:var(--gold);}
.nav-links a:hover::after,
.nav-links a.active::after{width:100%;}
.nav-cta {
  font-family:'Cinzel',serif;
  font-size:.58rem;letter-spacing:.2em;text-transform:uppercase;
  background:transparent;border:1px solid var(--gold);
  color:var(--gold);padding:.65rem 1.5rem;text-decoration:none;
  transition:all .3s;
}
.nav-cta:hover{background:var(--gold);color:var(--ink);}
.nav-toggle{
  display:none;
  width:44px;
  height:44px;
  margin-left:auto;
  border:1px solid rgba(201,168,76,.35);
  background:rgba(16,12,4,.7);
  color:var(--gold);
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:4px;
  cursor:none;
}
.nav-toggle span{
  display:block;
  width:18px;
  height:1px;
  background:currentColor;
  transition:transform .25s ease,opacity .25s ease;
}
#nav.open .nav-toggle span:nth-child(1){transform:translateY(5px) rotate(45deg);}
#nav.open .nav-toggle span:nth-child(2){opacity:0;}
#nav.open .nav-toggle span:nth-child(3){transform:translateY(-5px) rotate(-45deg);}
.page {
  display:none;min-height:100vh;
  animation:pageIn .8s cubic-bezier(.25,.46,.45,.94) forwards;
}
.page.active{display:block;}
@keyframes pageIn{
  from{opacity:0;transform:translateY(16px);}
  to{opacity:1;transform:none;}
}
.video-hero {
  position:relative;height:100vh;
  display:flex;align-items:center;justify-content:center;
  overflow:hidden;
}
.page-hero {
  align-items:flex-start;
  padding-top:6rem;
  min-height:calc(55vh + 6rem);
}
.video-bg {
  position:absolute;inset:0;z-index:0;
}
.video-bg video {
  width:100%;height:100%;object-fit:cover;
}
.video-bg canvas {
  position:absolute;inset:0;width:100%;height:100%;
}
.video-overlay {
  position:absolute;inset:0;
  background:linear-gradient(
    135deg,
    rgba(16,12,4,.85) 0%,
    rgba(16,12,4,.5) 50%,
    rgba(16,12,4,.75) 100%
  );
  z-index:1;
}
.video-overlay-bottom {
  position:absolute;bottom:0;left:0;right:0;height:200px;
  background:linear-gradient(0deg,var(--ink) 0%,transparent 100%);
  z-index:2;
}
.hero-content {
  position:relative;z-index:3;
  text-align:center;max-width:900px;
  padding:6rem 2rem 4rem;
}
.page-hero-content {
  padding-top:0;
  padding-bottom:3rem;
}
.page-hero-kicker {
  margin-top:0;
}
.about-media-frame {
  background:linear-gradient(135deg,var(--sepia),var(--ink));
  aspect-ratio:5 / 4;
  min-height:420px;
  border:1px solid rgba(90,62,34,.22);
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  overflow:hidden;
  box-shadow:0 28px 70px rgba(16,12,4,.18);
}
.about-media-frame::after {
  content:'';
  position:absolute;
  inset:1rem;
  border:1px solid rgba(240,232,208,.08);
  pointer-events:none;
  z-index:3;
}
.about-media-image {
  object-fit:cover;
  object-position:center 42%;
  transform:scale(1.03);
  filter:saturate(.9) contrast(1.02);
}
.about-media-label {
  position:absolute;
  bottom:1.5rem;
  left:1.5rem;
  font-family:'Cinzel',serif;
  font-size:.55rem;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:rgba(240,232,208,.55);
  z-index:4;
}
.about-media-accent {
  position:absolute;
  top:-20px;
  right:-20px;
  width:120px;
  height:120px;
  border:1px solid rgba(90,62,34,.3);
  pointer-events:none;
}
.eyebrow {
  font-family:'Cinzel',serif;
  font-size:.58rem;letter-spacing:.5em;text-transform:uppercase;
  color:var(--gold);margin-bottom:1.5rem;
  display:flex;align-items:center;gap:1rem;justify-content:center;
}
.eyebrow::before,.eyebrow::after{
  content:'';width:40px;height:1px;background:var(--gold);opacity:.5;
}
.eyebrow.left{justify-content:flex-start;}
.eyebrow.left::before{display:none;}
.display-title {
  font-family:'Cinzel',serif;
  font-size:clamp(3rem,7vw,6.5rem);
  font-weight:400;line-height:1.05;
  color:var(--parchment);
}
.display-title em {
  font-family:'Cormorant Garamond',serif;
  font-style:italic;font-weight:300;
  color:var(--gold);
}
.page-title {
  font-family:'Cinzel',serif;
  font-size:clamp(2rem,4.5vw,4rem);
  font-weight:400;line-height:1.15;
  color:var(--parchment);
}
.page-title em {
  font-family:'Cormorant Garamond',serif;
  font-style:italic;color:var(--gold);
}
.section-title {
  font-family:'Cinzel',serif;
  font-size:clamp(1.5rem,3vw,2.8rem);
  font-weight:400;line-height:1.2;
}
.section-title em {
  font-family:'Cormorant Garamond',serif;
  font-style:italic;color:var(--gold-2);
}
.gold-divider {
  display:flex;align-items:center;gap:1rem;
  margin:2rem auto;width:fit-content;
}
.gold-divider span{width:60px;height:1px;background:linear-gradient(90deg,transparent,var(--gold));}
.gold-divider span:last-child{background:linear-gradient(90deg,var(--gold),transparent);}
.gold-divider i{width:6px;height:6px;background:var(--gold);transform:rotate(45deg);display:block;}
.btn-gold {
  display:inline-flex;align-items:center;gap:.8rem;
  font-family:'Cinzel',serif;
  font-size:.6rem;letter-spacing:.25em;text-transform:uppercase;
  background:var(--gold);color:var(--ink);
  padding:1rem 2.5rem;text-decoration:none;border:none;
  transition:all .35s ease;position:relative;overflow:hidden;
  cursor:none;
}
.btn-gold::before {
  content:'';position:absolute;inset:0;
  background:var(--gold-2);transform:scaleX(0);transform-origin:left;
  transition:transform .35s ease;z-index:0;
}
.btn-gold:hover::before{transform:scaleX(1);}
.btn-gold span{position:relative;z-index:1;}
.btn-ghost {
  display:inline-flex;align-items:center;gap:.8rem;
  font-family:'Cinzel',serif;
  font-size:.6rem;letter-spacing:.25em;text-transform:uppercase;
  background:transparent;color:var(--parchment);
  padding:1rem 2.5rem;text-decoration:none;border:1px solid rgba(201,168,76,.4);
  transition:all .35s ease;cursor:none;
}
.btn-ghost:hover{border-color:var(--gold);color:var(--gold);}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .9s ease,transform .9s ease;}
.reveal.in{opacity:1;transform:none;}
.reveal-left{opacity:0;transform:translateX(-30px);transition:opacity .9s ease,transform .9s ease;}
.reveal-left.in{opacity:1;transform:none;}
.reveal-right{opacity:0;transform:translateX(30px);transition:opacity .9s ease,transform .9s ease;}
.reveal-right.in{opacity:1;transform:none;}
.d1{transition-delay:.1s!important;}
.d2{transition-delay:.2s!important;}
.d3{transition-delay:.3s!important;}
.d4{transition-delay:.4s!important;}
.d5{transition-delay:.5s!important;}
.marquee-bar{
  background:var(--gold);padding:.75rem 0;overflow:hidden;
}
.marquee-track{
  display:flex;gap:2.5rem;white-space:nowrap;
  animation:marquee 28s linear infinite;
}
.marquee-item{
  font-family:'Cinzel',serif;font-size:.6rem;
  letter-spacing:.25em;text-transform:uppercase;
  color:var(--ink);font-weight:600;flex-shrink:0;
  display:flex;align-items:center;gap:1.2rem;
}
.marquee-item::after{content:'\2726';opacity:.4;font-size:.5rem;}
@keyframes marquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}
.section{padding:7rem 4rem;}
.section-inner{max-width:1200px;margin:0 auto;}
.section-dark{background:var(--ink-2);}
.section-parchment{background:var(--parchment);color:var(--ink);}
.section-parchment .eyebrow{color:var(--sepia);}
.section-parchment .eyebrow::before,
.section-parchment .eyebrow::after{background:var(--sepia);}
.section-parchment .page-title em,
.section-parchment .section-title em{color:var(--crimson);}
.section-parchment .gold-divider span{background:linear-gradient(90deg,transparent,var(--sepia));}
.section-parchment .gold-divider span:last-child{background:linear-gradient(90deg,var(--sepia),transparent);}
.section-parchment .gold-divider i{background:var(--sepia);}
.section-mid{background:#0d0a03;}
#home-canvas {
  position:absolute;inset:0;z-index:1;
}
.home-hero .video-overlay{
  background:linear-gradient(
    135deg,
    rgba(16,12,4,.9) 0%,
    rgba(16,12,4,.6) 60%,
    rgba(110,24,40,.4) 100%
  );
}
.hero-badge {
  display:inline-flex;align-items:center;gap:.8rem;
  border:1px solid rgba(201,168,76,.3);
  padding:.5rem 1.4rem;margin-bottom:2rem;
}
.hero-badge span{font-family:'Cinzel',serif;font-size:.55rem;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);}
.hero-buttons{display:flex;gap:1.2rem;justify-content:center;margin-top:2.5rem;flex-wrap:wrap;}
.home-stats {
  position:absolute;bottom:5rem;left:4rem;z-index:3;
  display:flex;gap:3rem;
}
.h-stat{border-left:1px solid rgba(201,168,76,.3);padding-left:1.2rem;}
.h-stat-num{
  font-family:'Cinzel',serif;font-size:1.8rem;
  color:var(--gold);line-height:1;
}
.h-stat-label{font-size:.75rem;font-style:italic;color:rgba(240,232,208,.5);margin-top:.3rem;}
.features-strip {
  display:grid;grid-template-columns:repeat(4,1fr);
  border-top:1px solid rgba(201,168,76,.1);
}
.feature-cell {
  padding:3rem 2.5rem;
  border-right:1px solid rgba(201,168,76,.1);
  transition:background .4s;
}
.feature-cell:last-child{border-right:none;}
.feature-cell:hover{background:rgba(201,168,76,.04);}
.feature-icon{font-size:2rem;margin-bottom:1.2rem;display:block;}
.feature-title{
  font-family:'Cinzel',serif;
  font-size:.78rem;letter-spacing:.08em;
  color:var(--parchment);margin-bottom:.7rem;text-transform:uppercase;
}
.feature-text{
  font-size:.95rem;font-style:italic;
  color:rgba(240,232,208,.5);line-height:1.7;
}
.editorial-split {
  display:grid;grid-template-columns:1fr 1fr;
  min-height:600px;
}
.ed-image {
  position:relative;overflow:hidden;
  background:linear-gradient(135deg,#1e0e00,#0a0600);
}
.ed-image-inner {
  position:absolute;inset:0;
  display:flex;align-items:center;justify-content:center;
}
.ed-image-inner canvas{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  z-index:1;
  opacity:.28;
}
.atelier-portrait {
  position:absolute;
  inset:1.25rem 1.25rem 0;
  width:calc(100% - 2.5rem);
  height:calc(100% - 1.25rem);
  object-fit:contain;
  object-position:center top;
  z-index:2;
}
.ed-image canvas{width:100%;height:100%;}
.ed-text {
  background:var(--parchment);color:var(--ink);
  padding:5rem 4rem;display:flex;flex-direction:column;justify-content:center;
}
.ed-text .eyebrow{color:var(--sepia);}
.ed-text .eyebrow::before,.ed-text .eyebrow::after{background:var(--sepia);}
.ed-text p{font-size:1.1rem;font-style:italic;line-height:1.9;color:#3a2810;margin-top:1rem;}
.ed-text .btn-gold{margin-top:2rem;align-self:flex-start;}
.story-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:5rem;
  align-items:center;
}
.about-canvas{position:absolute;inset:0;z-index:1;}
.timeline {
  position:relative;max-width:900px;margin:0 auto;
  padding:2rem 0;
}
.timeline::before{
  content:'';position:absolute;top:0;bottom:0;left:50%;
  width:1px;background:linear-gradient(180deg,transparent,var(--gold),transparent);
  transform:translateX(-50%);
}
.timeline-item {
  display:grid;grid-template-columns:1fr 60px 1fr;
  gap:1rem;margin-bottom:3rem;align-items:start;
}
.timeline-item:nth-child(odd) .tl-content{grid-column:1;text-align:right;}
.timeline-item:nth-child(odd) .tl-empty{grid-column:2;}
.timeline-item:nth-child(odd) .tl-content + div{grid-column:3;}
.timeline-dot {
  width:14px;height:14px;border-radius:50%;
  background:var(--gold);border:2px solid var(--ink);
  margin:0 auto;position:relative;top:.3rem;
  box-shadow:0 0 0 4px rgba(201,168,76,.2);
}
.tl-content h3{
  font-family:'Cinzel',serif;font-size:.85rem;
  letter-spacing:.08em;color:var(--gold);
  margin-bottom:.5rem;text-transform:uppercase;
}
.tl-content p{font-size:.95rem;font-style:italic;color:rgba(240,232,208,.6);line-height:1.7;}
.values-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:4rem;
}
.support-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1.5rem;
}
.value-card{
  border:1px solid rgba(201,168,76,.15);padding:2.5rem 2rem;
  position:relative;overflow:hidden;transition:border-color .4s,transform .4s;
}
.value-card::before{
  content:'';position:absolute;top:0;left:0;right:0;height:2px;
  background:var(--gold);transform:scaleX(0);transition:transform .4s;
}
.value-card:hover{border-color:rgba(201,168,76,.4);transform:translateY(-4px);}
.value-card:hover::before{transform:scaleX(1);}
.value-card h3{
  font-family:'Cinzel',serif;font-size:.8rem;
  letter-spacing:.1em;color:var(--parchment);
  text-transform:uppercase;margin-bottom:.8rem;
}
.value-card p{font-size:.95rem;font-style:italic;color:rgba(240,232,208,.55);line-height:1.7;}
.products-canvas{position:absolute;inset:0;z-index:1;}
.filter-bar{
  display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center;
  margin-bottom:3.5rem;
}
.filter-btn{
  font-family:'Cinzel',serif;
  font-size:.58rem;letter-spacing:.18em;text-transform:uppercase;
  background:transparent;border:1px solid rgba(201,168,76,.25);
  color:rgba(240,232,208,.5);padding:.65rem 1.5rem;
  transition:all .3s;cursor:none;
}
.filter-btn.on{background:var(--gold);color:var(--ink);border-color:var(--gold);}
.filter-btn:hover:not(.on){border-color:var(--gold);color:var(--gold);}
.products-masonry{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1.2rem;max-width:1200px;margin:0 auto;
}
.product-card{
  background:#140f05;
  border:1px solid rgba(201,168,76,.08);
  overflow:hidden;cursor:none;
  transition:border-color .4s,transform .4s;
  position:relative;
}
.product-card:hover{border-color:rgba(201,168,76,.35);transform:translateY(-5px);}
.product-card[style*="display:none"]{display:none!important;}
.pc-visual{
  position:relative;overflow:hidden;
  background:linear-gradient(135deg,#1e1408,#0a0804);
  height:260px; 
}
.pc-visual .img-placeholder {
  object-fit: contain;
  padding: 1rem;
  transition: transform .45s ease;
}
.product-card:hover .pc-visual .img-placeholder{transform:scale(1.1);}
.pc-pattern{
  position:absolute;inset:0;
  opacity:.08;
  background-image:repeating-linear-gradient(45deg,
    transparent,transparent 6px,
    rgba(201,168,76,.4) 6px,rgba(201,168,76,.4) 7px
  );
}
.pc-badge{
  position:absolute;top:1rem;left:1rem;
  font-family:'Cinzel',serif;font-size:.5rem;letter-spacing:.2em;text-transform:uppercase;
  background:var(--gold);color:var(--ink);padding:.3rem .8rem;z-index:3;
}
.pc-icon{
  position:absolute;top:50%;left:50%;
  transform:translate(-50%,-50%);
  font-size:3.5rem;opacity:.12;pointer-events:none;
}
.pc-overlay{
  position:absolute;inset:0;
  background:rgba(16,12,4,.85);
  display:flex;flex-direction:column;justify-content:center;align-items:center;
  gap:1rem;padding:2rem;
  opacity:0;transition:none;
  z-index:4;
  pointer-events:none;
  display:none;
}
.product-card:hover .pc-overlay{opacity:0;}
.pc-overlay p{font-size:.95rem;font-style:italic;color:rgba(240,232,208,.8);text-align:center;line-height:1.7;}
.pc-overlay a{
  font-family:'Cinzel',serif;font-size:.55rem;letter-spacing:.2em;text-transform:uppercase;
  border:1px solid var(--gold);color:var(--gold);padding:.5rem 1.2rem;
  text-decoration:none;transition:all .3s;cursor:none;
}
.pc-overlay a:hover{background:var(--gold);color:var(--ink);}
.pc-info{padding:1.5rem;}
.pc-name{
  font-family:'Cinzel',serif;font-size:.85rem;
  letter-spacing:.06em;color:var(--parchment);margin-bottom:.4rem;
}
.pc-meta{
  font-size:.85rem;font-style:italic;color:rgba(240,232,208,.4);
}
.pc-tags{display:flex;gap:.4rem;margin-top:.8rem;flex-wrap:wrap;}
.pc-tag{
  font-family:'Cinzel',serif;font-size:.45rem;letter-spacing:.15em;text-transform:uppercase;
  color:var(--gold);border:1px solid rgba(201,168,76,.3);padding:.2rem .55rem;
}
.mfg-canvas{position:absolute;inset:0;z-index:1;}
.process-flow{
  display:flex;flex-direction:column;gap:0;
  max-width:1100px;margin:0 auto;
}
.process-step{
  display:grid;grid-template-columns:100px 2px 1fr;
  gap:0 2rem;align-items:stretch;
  padding:3rem 0;position:relative;
}
.ps-number{
  font-family:'Cinzel',serif;
  font-size:4rem;font-weight:300;
  color:rgba(201,168,76,.15);
  text-align:right;line-height:1;
  padding-right:2rem;
  border-right:none;
}
.ps-line{
  width:2px;
  background:linear-gradient(180deg,var(--gold),rgba(201,168,76,.1));
  position:relative;
}
.ps-dot{
  position:absolute;top:1.5rem;left:50%;transform:translateX(-50%);
  width:12px;height:12px;border-radius:50%;background:var(--gold);
  border:2px solid var(--ink);box-shadow:0 0 0 4px rgba(201,168,76,.15);
}
.ps-content{padding-left:2.5rem;padding-top:.2rem;}
.ps-content h3{
  font-family:'Cinzel',serif;font-size:1rem;
  letter-spacing:.06em;color:var(--parchment);
  margin-bottom:.8rem;text-transform:uppercase;
}
.ps-content p{
  font-size:1rem;font-style:italic;
  color:rgba(240,232,208,.6);line-height:1.8;
}
.ps-chips{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:1rem;}
.ps-chip{
  font-family:'Cinzel',serif;font-size:.5rem;letter-spacing:.15em;text-transform:uppercase;
  background:rgba(201,168,76,.08);border:1px solid rgba(201,168,76,.2);
  color:var(--gold);padding:.3rem .8rem;
}
.process-step:last-child .ps-line{background:linear-gradient(180deg,rgba(201,168,76,.1),transparent);}
.qc-callout{
  background:linear-gradient(135deg,rgba(110,24,40,.3),rgba(110,24,40,.1));
  border:1px solid rgba(110,24,40,.5);
  border-left:3px solid var(--crimson);
  padding:2.5rem 3rem;margin:4rem auto;max-width:1100px;
  display:grid;grid-template-columns:60px 1fr;gap:2rem;align-items:center;
}
.qc-icon{font-size:2.5rem;text-align:center;}
.qc-callout h3{font-family:'Cinzel',serif;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;color:var(--gold);margin-bottom:.5rem;}
.qc-callout p{font-size:.95rem;font-style:italic;color:rgba(240,232,208,.65);line-height:1.7;}
.custom-canvas{position:absolute;inset:0;z-index:1;}
.how-it-works{
  display:grid;grid-template-columns:repeat(4,1fr);gap:0;
  border:1px solid rgba(201,168,76,.12);margin:4rem 0;
}
.hiw-step{
  padding:3rem 2rem;border-right:1px solid rgba(201,168,76,.12);
  text-align:center;position:relative;transition:background .3s;
}
.hiw-step:last-child{border-right:none;}
.hiw-step:hover{background:rgba(201,168,76,.03);}
.hiw-num{
  font-family:'Cinzel',serif;font-size:3rem;font-weight:300;
  color:rgba(201,168,76,.12);line-height:1;margin-bottom:1rem;
}
.hiw-icon{font-size:2rem;margin-bottom:1rem;display:block;}
.hiw-title{
  font-family:'Cinzel',serif;font-size:.75rem;letter-spacing:.1em;
  text-transform:uppercase;color:var(--parchment);margin-bottom:.7rem;
}
.hiw-text{font-size:.9rem;font-style:italic;color:rgba(240,232,208,.5);line-height:1.6;}
.hiw-arrow{
  position:absolute;top:50%;right:-1px;
  transform:translateY(-50%);
  font-size:.7rem;color:var(--gold);opacity:.4;
}
.hiw-step:last-child .hiw-arrow{display:none;}
.custom-form-section{
  display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start;
  max-width:1100px;margin:0 auto;
}
.custom-info h2{font-family:'Cinzel',serif;font-size:1.8rem;font-weight:400;margin-bottom:1.5rem;}
.custom-info h2 em{font-family:'Cormorant Garamond',serif;font-style:italic;color:var(--gold);}
.custom-info p{font-size:1rem;font-style:italic;color:rgba(240,232,208,.6);line-height:1.8;margin-bottom:1rem;}
.custom-capabilities{list-style:none;margin-top:1.5rem;}
.custom-capabilities li{
  display:flex;align-items:center;gap:.8rem;
  padding:.7rem 0;border-bottom:1px solid rgba(201,168,76,.08);
  font-size:.9rem;font-style:italic;color:rgba(240,232,208,.65);
}
.custom-capabilities li::before{content:'\2726';color:var(--gold);font-size:.5rem;flex-shrink:0;}
.contact-canvas{position:absolute;inset:0;z-index:1;}
.contact-layout{
  display:grid;grid-template-columns:1fr 1fr;gap:6rem;
  max-width:1100px;margin:0 auto;align-items:start;
}
.contact-info p{
  font-size:1rem;font-style:italic;color:rgba(240,232,208,.65);
  line-height:1.9;margin-top:1rem;
}
.contact-details{margin-top:2.5rem;}
.cd-item{
  display:flex;align-items:flex-start;gap:1.2rem;
  padding:1.2rem 0;border-bottom:1px solid rgba(201,168,76,.08);
}
.cd-icon{
  width:40px;height:40px;flex-shrink:0;
  border:1px solid rgba(201,168,76,.3);
  display:flex;align-items:center;justify-content:center;
  font-size:1rem;color:var(--gold);
}
.cd-label{
  font-family:'Cinzel',serif;font-size:.5rem;letter-spacing:.2em;text-transform:uppercase;
  color:var(--gold);margin-bottom:.3rem;
}
.cd-value{font-size:.95rem;color:var(--parchment);}
.contact-form{background:rgba(255,255,255,.02);border:1px solid rgba(201,168,76,.1);padding:3rem;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;}
.fg{margin-bottom:1.5rem;}
.fg label{
  display:block;font-family:'Cinzel',serif;
  font-size:.52rem;letter-spacing:.2em;text-transform:uppercase;
  color:var(--gold);margin-bottom:.5rem;
}
.fg input,.fg textarea,.fg select{
  width:100%;background:rgba(201,168,76,.04);
  border:1px solid rgba(201,168,76,.18);
  border-bottom:1px solid rgba(201,168,76,.35);
  color:var(--parchment);
  padding:.9rem 1rem;
  font-family:'Cormorant Garamond',serif;
  font-size:1rem;font-style:italic;
  outline:none;transition:border-color .3s,background .3s;
  appearance:none;
}
.fg input:focus,.fg textarea:focus,.fg select:focus{
  border-color:var(--gold);background:rgba(201,168,76,.06);
}
.fg textarea{height:100px;resize:none;}
.fg select option{background:var(--ink-2);}
.form-submit{
  width:100%;font-family:'Cinzel',serif;
  font-size:.6rem;letter-spacing:.25em;text-transform:uppercase;
  background:var(--gold);color:var(--ink);border:none;
  padding:1.1rem;transition:all .3s;cursor:none;
  position:relative;overflow:hidden;
}
.form-submit::before{
  content:'';position:absolute;inset:0;background:var(--gold-2);
  transform:scaleX(0);transform-origin:left;transition:transform .4s ease;
}
.form-submit:hover::before{transform:scaleX(1);}
.form-submit span{position:relative;z-index:1;}
.site-footer{
  background:#08060200;
  background:var(--ink);
  border-top:1px solid rgba(201,168,76,.1);
  padding:4rem 4rem 2rem;
}
.footer-grid{
  max-width:1200px;margin:0 auto;
  display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:3rem;
  padding-bottom:3rem;border-bottom:1px solid rgba(201,168,76,.1);
}
.f-brand{
  font-family:'Cinzel',serif;font-size:1.1rem;
  color:var(--gold);letter-spacing:.2em;margin-bottom:.5rem;
}
.f-sub{font-size:.85rem;font-style:italic;color:rgba(240,232,208,.35);margin-bottom:1.5rem;line-height:1.6;}
.f-social{display:flex;gap:.6rem;}
.f-soc{
  width:32px;height:32px;border:1px solid rgba(201,168,76,.25);
  display:flex;align-items:center;justify-content:center;
  font-size:.7rem;color:var(--gold);text-decoration:none;
  transition:all .3s;cursor:none;
}
.f-soc:hover{background:var(--gold);color:var(--ink);}
.f-col h4{
  font-family:'Cinzel',serif;font-size:.55rem;letter-spacing:.2em;text-transform:uppercase;
  color:var(--gold);margin-bottom:1rem;
}
.f-col ul{list-style:none;}
.f-col ul li{margin-bottom:.6rem;}
.f-col ul li a{
  font-size:.88rem;font-style:italic;cursor:none;
  color:rgba(240,232,208,.4);text-decoration:none;transition:color .3s;
}
.f-col ul li a:hover{color:var(--gold);}
.footer-bottom{
  max-width:1200px;margin:2rem auto 0;
  display:flex;justify-content:space-between;align-items:center;
}
.footer-copy{
  font-family:'Cinzel',serif;font-size:.5rem;letter-spacing:.15em;text-transform:uppercase;
  color:rgba(240,232,208,.2);
}
.social-links{
  display:flex;
  gap:1rem;
  justify-content:center;
  flex-wrap:wrap;
}
canvas.bg-canvas{display:block;width:100%;height:100%;}
@media(max-width:900px){
  body.menu-open{overflow:hidden;}
  #nav{
    padding:1rem 1.25rem;
    flex-wrap:wrap;
    gap:.85rem 1rem;
    align-items:center;
  }
  #nav.open{
    background:rgba(16,12,4,.97);
    backdrop-filter:blur(20px);
    border-bottom:1px solid rgba(201,168,76,.12);
  }
  #nav.solid{padding:.85rem 1.25rem;}
  .nav-toggle{display:inline-flex;}
  .nav-links{
    display:none;
    order:3;
    width:100%;
    flex-direction:column;
    gap:0;
    list-style:none;
    background:rgba(16,12,4,.98);
    border:1px solid rgba(201,168,76,.14);
    box-shadow:0 20px 44px rgba(0,0,0,.32);
  }
  #nav.open .nav-links{display:flex;}
  .nav-links li{width:100%;}
  .nav-links a{
    display:block;
    padding:1rem 1.2rem;
    font-size:.66rem;
    letter-spacing:.2em;
    border-bottom:1px solid rgba(201,168,76,.08);
  }
  .nav-links li:last-child a{border-bottom:none;}
  .nav-links a::after{display:none;}
  .nav-cta{
    display:none;
    order:4;
    width:100%;
    justify-content:center;
    text-align:center;
    padding:1rem 1.2rem;
  }
  #nav.open .nav-cta{display:inline-flex;}
  .nav-logo{gap:.8rem;}
  .nav-logo-mark{width:52px;}
  .nav-logo-name{font-size:.78rem;letter-spacing:.22em;}
  .nav-logo-tagline{font-size:.68rem;letter-spacing:.08em;}
  .hero-content{
    max-width:100%;
    padding:7rem 1.5rem 3rem;
  }
  .hero-badge{
    padding:.45rem 1rem;
    gap:.6rem;
  }
  .hero-badge span{font-size:.5rem;letter-spacing:.22em;}
  .gold-divider{gap:.75rem;margin:1.5rem auto;}
  .gold-divider span{width:42px;}
  .atelier-portrait{
    inset:1rem 1rem 0;
    width:calc(100% - 2rem);
    height:calc(100% - 1rem);
  }
  .section{padding:5rem 1.5rem;}
  .editorial-split,.contact-layout,.custom-form-section,.story-grid{grid-template-columns:1fr;}
  .editorial-split{min-height:auto;}
  .ed-text{padding:3.5rem 2rem;}
  .support-grid,.values-grid{grid-template-columns:1fr;}
  .products-masonry{grid-template-columns:repeat(2,minmax(0,1fr));}
  .how-it-works{grid-template-columns:1fr 1fr;}
  .features-strip{grid-template-columns:1fr 1fr;}
  .footer-grid{grid-template-columns:1fr;gap:2rem;}
  .footer-bottom{flex-direction:column;align-items:flex-start;gap:.85rem;}
  .home-stats{display:none;}
  .form-row{grid-template-columns:1fr;}
  .page-hero{
    height:auto!important;
    padding-top:5.5rem;
    min-height:32rem;
  }
  .page-hero-kicker{
    margin-top:0;
  }
  .page-hero-content{
    padding-top:0;
    padding-bottom:2.5rem;
  }
  .process-step{
    grid-template-columns:64px 2px 1fr;
    gap:0 1rem;
    padding:2.2rem 0;
  }
  .ps-number{
    font-size:2.8rem;
    padding-right:1rem;
  }
  .ps-content{padding-left:1.25rem;}
  .qc-callout{
    grid-template-columns:1fr;
    gap:1rem;
    padding:2rem;
    margin:3rem auto;
  }
  .contact-form{padding:2rem;}
  .about-media-frame{
    min-height:340px;
    aspect-ratio:4 / 3;
  }
  .about-media-accent{
    width:96px;
    height:96px;
    top:-14px;
    right:-14px;
  }
}
@media(max-width:640px){
  #nav{padding:.85rem .95rem;}
  #nav.solid{padding:.75rem .95rem;}
  .nav-logo-mark{width:44px;}
  .nav-logo-name{font-size:.68rem;letter-spacing:.16em;}
  .nav-logo-tagline{display:none;}
  .hero-content{padding:6.4rem 1rem 2.25rem;}
  .hero-badge{
    flex-wrap:wrap;
    justify-content:center;
    margin-bottom:1.5rem;
  }
  .hero-badge i{display:none!important;}
  .display-title{font-size:clamp(2.4rem,13vw,3.6rem);}
  .page-title{font-size:clamp(1.8rem,10vw,2.6rem);}
  .section-title{font-size:clamp(1.35rem,8vw,2rem);}
  .eyebrow{
    gap:.6rem;
    font-size:.52rem;
    letter-spacing:.28em;
  }
  .eyebrow::before,.eyebrow::after{width:20px;}
  .btn-gold,.btn-ghost{
    width:100%;
    justify-content:center;
    padding:.95rem 1.2rem;
    letter-spacing:.18em;
  }
  .hero-buttons{
    flex-direction:column;
    align-items:stretch;
    gap:.9rem;
  }
  .marquee-item{
    font-size:.52rem;
    letter-spacing:.18em;
    gap:.9rem;
  }
  .section{padding:4rem 1rem;}
  .feature-cell{
    padding:2rem 1.25rem;
    border-right:none;
    border-bottom:1px solid rgba(201,168,76,.1);
  }
  .features-strip{grid-template-columns:1fr;}
  .feature-cell:last-child{border-bottom:none;}
  .ed-image{min-height:420px;}
  .ed-text{padding:3rem 1.25rem;}
  .ed-text p{font-size:1rem;line-height:1.75;}
  .story-grid,.contact-layout,.custom-form-section{gap:1.75rem;}
  .values-grid,.support-grid{
    grid-template-columns:1fr;
    gap:1rem;
    margin-top:2rem;
  }
  .value-card{padding:1.8rem 1.25rem;}
  .filter-bar{
    justify-content:flex-start;
    flex-wrap:nowrap;
    overflow-x:auto;
    padding-bottom:.4rem;
    margin-bottom:2rem;
    -webkit-overflow-scrolling:touch;
  }
  .filter-btn{
    flex:0 0 auto;
    white-space:nowrap;
    padding:.7rem 1rem;
  }
  .products-masonry{grid-template-columns:1fr;gap:1rem;}
  .pc-visual{height:240px;}
  .pc-info{padding:1.2rem;}
  .pc-name{font-size:.78rem;}
  .pc-meta{font-size:.92rem;line-height:1.55;}
  .process-step{
    grid-template-columns:48px 2px 1fr;
    gap:0 .8rem;
    padding:1.8rem 0;
  }
  .ps-number{
    font-size:2rem;
    padding-right:.5rem;
  }
  .ps-content{
    padding-left:.7rem;
    padding-top:0;
  }
  .ps-content h3{font-size:.8rem;}
  .ps-content p{font-size:.95rem;line-height:1.7;}
  .ps-chips{margin-top:.8rem;}
  .qc-callout{padding:1.5rem 1.25rem;}
  .how-it-works{grid-template-columns:1fr;}
  .hiw-step{
    padding:2rem 1.25rem;
    border-right:none;
    border-bottom:1px solid rgba(201,168,76,.12);
  }
  .hiw-step:last-child{border-bottom:none;}
  .hiw-arrow{display:none;}
  .custom-info h2,.contact-info h2{font-size:1.5rem;}
  .contact-form{padding:1.5rem 1rem;}
  .site-footer{padding:3rem 1rem 1.5rem;}
  .footer-bottom{gap:.65rem;}
  .footer-copy{
    font-size:.43rem;
    line-height:1.7;
  }
}
@media(hover:none),(pointer:coarse){
  body{cursor:auto;}
  #cursor-dot,#cursor-ring{display:none;}
  .btn-gold,.btn-ghost,.filter-btn,.product-card,.form-submit,.f-soc,.nav-cta,.nav-toggle,.f-col ul li a{cursor:pointer;}
}

