*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
:root{
  --ink:#1A1A1A;
  --ink-soft:#5C5C5C;
  --ink-faint:#9E9E9E;
  --bg:#F8F6F2;
  --bg-warm:#F2EDE5;
  --bg-card:#EDE6DC;
  --dark:#181512;
  --gold:#B08D57;
  --gold-light:#C9A96E;
  --gold-pale:#E8DDD0;
  --border:#E0D9D0;
  --border-dark:rgba(255,255,255,0.06);
}
body{font-family:'DM Sans',sans-serif;background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;}

/* ── NAV ── */
nav{
  position:sticky;top:0;z-index:200;height:68px;
  display:flex;align-items:center;justify-content:space-between;
  padding:0 4rem;
  background:rgba(248,246,242,0.96);backdrop-filter:blur(16px);
  border-bottom:0.5px solid var(--border);
}
.nav-left{display:flex;align-items:center;gap:1rem;}
.logo{display:flex;align-items:baseline;gap:10px;text-decoration:none;}
.logo-word{font-family:'Jost',sans-serif;font-weight:400;font-size:22px;letter-spacing:7px;text-transform:uppercase;color:var(--ink);}
.logo-by{font-family:'DM Serif Display',serif;font-style:italic;font-size:14px;color:var(--gold);}
.nav-by{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:var(--ink-faint);padding-left:1rem;border-left:0.5px solid var(--border);}
.nav-links{display:flex;gap:2.25rem;}
.nav-links a{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--ink-faint);text-decoration:none;transition:color .2s;}
.nav-links a:hover{color:var(--ink);}
.nav-btn{font-family:'DM Sans',sans-serif;font-size:10px;letter-spacing:2px;text-transform:uppercase;font-weight:500;padding:10px 22px;border:0.5px solid var(--ink);background:transparent;color:var(--ink);cursor:pointer;transition:all .25s;}
.nav-btn:hover{background:var(--ink);color:var(--bg);}

/* ── HERO ── */
.hero{display:grid;grid-template-columns:1fr 1fr;min-height:82vh;}
.hero-left{
  display:flex;flex-direction:column;justify-content:flex-start;
  padding:5rem 4rem 4rem;background:var(--bg);position:relative;
}
.hero-identity{
  display:inline-flex;align-items:center;gap:10px;
  background:var(--bg-warm);border:0.5px solid var(--border);
  padding:8px 16px;width:fit-content;margin-bottom:2rem;
}
.hero-identity-dot{width:6px;height:6px;background:var(--gold);border-radius:50%;}
.hero-identity-text{font-size:10px;letter-spacing:2.5px;text-transform:uppercase;color:var(--gold);font-weight:500;}
h1{font-family:'DM Serif Display',serif;font-size:58px;line-height:1.06;letter-spacing:-1.5px;color:var(--ink);margin-bottom:0.75rem;font-weight:400;}
h1 em,h2 em{font-style:italic;color:var(--gold);}
h2{font-family:'DM Serif Display',serif;font-size:40px;line-height:1.15;color:var(--ink);font-weight:400;}
.hero-name-tag{
  font-family:'Caveat',cursive;font-size:22px;color:var(--gold);
  margin-bottom:1.5rem;opacity:0.85;
}
.hero-sub{font-size:15px;line-height:1.85;color:var(--ink-soft);max-width:390px;margin-bottom:2.75rem;font-weight:300;}
.hero-sub strong{color:var(--ink);font-weight:500;}
.hero-actions{display:flex;align-items:center;gap:2.5rem;margin-bottom:3.5rem;}
.btn-fill{font-family:'DM Sans',sans-serif;font-size:10px;letter-spacing:2px;text-transform:uppercase;font-weight:500;padding:15px 30px;background:var(--ink);color:var(--bg);border:none;cursor:pointer;transition:background .25s;}
.btn-fill:hover{background:#333;}
.btn-link{font-family:'DM Sans',sans-serif;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--ink);background:none;border:none;border-bottom:1px solid var(--ink);padding-bottom:3px;cursor:pointer;text-decoration:none;transition:all .2s;display:inline-block;}
.btn-link:hover{color:var(--gold);border-color:var(--gold);}
.hero-stats{display:flex;gap:3rem;padding-top:2.5rem;border-top:0.5px solid var(--border);}
.stat-num{font-family:'DM Serif Display',serif;font-size:24px;color:var(--ink);display:block;margin-bottom:4px;}
.stat-lbl{font-size:9px;letter-spacing:2.5px;text-transform:uppercase;color:var(--gold);}
.hero-right{position:relative;overflow:hidden;background:var(--bg-warm);}
.hero-right img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block;}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(to right,rgba(242,237,229,0.2) 0%,transparent 35%);}
.hero-aside{position:absolute;bottom:2.5rem;right:2rem;writing-mode:vertical-rl;font-size:9px;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,0.45);}
.hero-badge{
  position:absolute;bottom:2.5rem;left:2.5rem;
  background:rgba(248,246,242,0.95);backdrop-filter:blur(8px);
  padding:12px 16px;border-left:2px solid var(--gold);
}
.hero-badge span{font-family:'Caveat',cursive;font-size:16px;color:var(--ink);display:block;line-height:1.3;}
.hero-badge small{font-size:9px;letter-spacing:1.5px;text-transform:uppercase;color:var(--gold);}

/* ── MARQUEE ── */
.marquee{background:var(--ink);padding:14px 0;overflow:hidden;white-space:nowrap;user-select:none;}
.marquee-track{display:inline-flex;animation:scroll 24s linear infinite;}
.marquee-track:hover{animation-play-state:paused;}
.m-item{font-size:10px;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,0.65);padding:0 1.75rem;}
.m-dot{color:var(--gold);padding:0 .2rem;}
@keyframes scroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* ── SHARED ── */
section{padding:7rem 4rem;}
.eyebrow{font-size:10px;letter-spacing:4px;text-transform:uppercase;color:var(--gold);margin-bottom:1rem;}
.thin-rule{width:32px;height:0.5px;background:var(--gold);margin:1.75rem 0;}
.section-sub{font-size:15px;line-height:1.9;color:var(--ink-soft);max-width:520px;font-weight:300;}
.section-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:3.5rem;}

/* ── APPROACH ── */
.approach{background:var(--bg-warm);padding:6rem 4rem;}
.approach-inner{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:start;}
.approach-body{font-size:15px;color:var(--ink-soft);line-height:1.95;font-weight:300;margin-bottom:2.5rem;}
.approach-pillars{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem 2rem;}
.approach-pillar{border-top:0.5px solid var(--border);padding-top:1rem;}
.approach-pillar-num{font-family:'DM Serif Display',serif;font-size:20px;color:var(--ink);display:block;margin-bottom:4px;}
.approach-pillar-lbl{font-size:9px;letter-spacing:2px;text-transform:uppercase;color:var(--gold);}

/* ── MISSION (keep for safety, now unused) ── */
.mission{display:none;}

/* ── LEARN HUB ── */
.learn{background:var(--bg);}
.learn-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border);margin-top:3.5rem;}
.cat-grid{grid-template-columns:repeat(2,1fr);}
.learn-count{display:inline-block;font-size:8px;letter-spacing:2px;text-transform:uppercase;background:var(--ink);color:var(--bg);padding:3px 10px;margin-bottom:0.75rem;}
.learn-count.soon{background:transparent;color:var(--gold);border:0.5px solid var(--gold);}
.learn-card{
  background:var(--bg);padding:2.25rem 2rem;
  cursor:pointer;transition:background .2s;position:relative;overflow:hidden;
}
.learn-card:hover{background:var(--bg-warm);}
.learn-card::after{
  content:'→';position:absolute;bottom:1.75rem;right:1.75rem;
  font-size:16px;color:var(--gold);opacity:0;transition:opacity .2s,transform .2s;
  transform:translateX(-4px);
}
.learn-card:hover::after{opacity:1;transform:translateX(0);}
.learn-num{font-family:'Caveat',cursive;font-size:38px;color:var(--gold-pale);margin-bottom:0.5rem;line-height:1;}
.learn-tag{font-size:9px;letter-spacing:2.5px;text-transform:uppercase;color:var(--gold);margin-bottom:0.85rem;}
.learn-card h3{font-family:'DM Serif Display',serif;font-size:19px;color:var(--ink);margin-bottom:0.85rem;line-height:1.3;font-weight:400;}
.learn-card p{font-size:13px;color:var(--ink-soft);line-height:1.75;font-weight:300;}
.learn-free{
  display:inline-block;font-size:8px;letter-spacing:2px;text-transform:uppercase;
  background:var(--bg-warm);color:var(--gold);
  padding:3px 10px;margin-bottom:0.75rem;border:0.5px solid var(--border);
}

/* ── ABOUT ── */
.about{background:var(--bg-warm);}
.about-grid{display:grid;grid-template-columns:5fr 7fr;gap:6rem;align-items:start;margin-top:4rem;}
.about-img-wrap{position:relative;aspect-ratio:1/1;overflow:hidden;background:var(--bg-card);}
.about-img-wrap img{width:100%;height:100%;object-fit:contain;object-position:center;display:block;}
.about-badge{position:absolute;top:0;right:0;background:var(--gold);padding:14px 18px;}
.about-badge span{font-family:'DM Serif Display',serif;font-size:20px;color:var(--bg);display:block;line-height:1;}
.about-badge small{font-size:8px;letter-spacing:2px;text-transform:uppercase;color:rgba(248,246,242,0.7);}
.about-sticker{
  position:absolute;bottom:1.5rem;left:1.5rem;
  background:rgba(248,246,242,0.95);backdrop-filter:blur(8px);
  padding:10px 14px;border-left:2px solid var(--gold);
}
.about-sticker span{font-family:'Caveat',cursive;font-size:14px;color:var(--ink);display:block;}
.about-quote{font-family:'DM Serif Display',serif;font-style:italic;font-size:21px;color:var(--ink);line-height:1.6;margin:1.5rem 0;padding-left:1.25rem;border-left:1.5px solid var(--gold-pale);}
.body-p{font-size:14px;color:var(--ink-soft);line-height:1.95;margin-bottom:1.2rem;font-weight:300;}
.about-sig{font-family:'Caveat',cursive;font-size:26px;color:var(--gold);margin:1.75rem 0 0.25rem;}
.about-sig-title{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--ink-faint);}
.pillars{display:flex;gap:2.5rem;margin-top:2.25rem;padding-top:2rem;border-top:0.5px solid var(--border);}
.pillar span{font-family:'DM Serif Display',serif;font-size:22px;color:var(--ink);display:block;margin-bottom:5px;}
.pillar small{font-size:9px;letter-spacing:2px;text-transform:uppercase;color:var(--gold);}

/* ── CATALOG ── */
.catalog{background:var(--bg);}
.catalog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3.5rem;}
.prod-card{background:var(--bg-warm);transition:transform .3s;}
.prod-card:hover{transform:translateY(-6px);}
.prod-img{aspect-ratio:1;overflow:hidden;position:relative;background:var(--gold-pale);}
.prod-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s;}
.prod-card:hover .prod-img img{transform:scale(1.05);}
.prod-badge{position:absolute;top:0;left:0;background:var(--ink);color:var(--bg);font-size:8px;letter-spacing:2px;text-transform:uppercase;padding:5px 11px;}
.prod-info{padding:1.5rem 1.25rem 1.4rem;}
.prod-name{font-family:'DM Serif Display',serif;font-size:18px;color:var(--ink);margin-bottom:0.5rem;font-weight:400;}
.prod-story{font-size:12px;color:var(--ink-soft);line-height:1.65;margin-bottom:0.35rem;font-weight:300;}
.prod-craft{font-family:'Caveat',cursive;font-size:14px;color:var(--gold);margin-bottom:1rem;}
.prod-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:0.5px solid var(--border);}
.prod-price{font-size:13px;color:var(--ink);font-weight:500;}
.prod-por{font-size:11px;color:var(--ink-faint);font-weight:300;font-style:italic;}
.prod-cta{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:var(--gold);border-bottom:0.5px solid var(--gold);text-decoration:none;padding-bottom:1px;transition:opacity .2s;cursor:pointer;}
.prod-cta:hover{opacity:.7;}

/* ── CATALOG FILTERS (added) ── */
.catalog-filters{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:2.5rem;}
.filter-chip{
  font-family:'DM Sans',sans-serif;font-size:10px;letter-spacing:2px;text-transform:uppercase;font-weight:500;
  padding:9px 18px;border:0.5px solid var(--border);background:transparent;color:var(--ink-soft);
  cursor:pointer;transition:all .2s;
}
.filter-chip:hover{border-color:var(--gold);color:var(--ink);}
.filter-chip.active{background:var(--ink);color:var(--bg);border-color:var(--ink);}
.catalog-empty{grid-column:1/-1;text-align:center;color:var(--ink-faint);font-weight:300;padding:3rem 0;}

/* ── BEHIND THE CRAFT ── */
.craft{background:var(--bg-warm);}
.craft-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center;margin-top:4rem;}
.craft-imgs{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
.craft-img{overflow:hidden;background:var(--bg-card);}
.craft-img img{width:100%;aspect-ratio:1;object-fit:cover;display:block;transition:transform .5s;}
.craft-img:hover img{transform:scale(1.04);}
.craft-img-main{grid-column:1/-1;overflow:hidden;background:var(--bg-card);}
.craft-img-main img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;transition:transform .5s;}
.craft-img-main:hover img{transform:scale(1.03);}
.craft-caption{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:var(--ink-faint);padding:6px 0 0;font-weight:300;}
.craft-pull{font-family:'DM Serif Display',serif;font-style:italic;font-size:22px;color:var(--ink);line-height:1.55;margin:1.75rem 0;}

/* ── BRIDAL ── */
.bridal{background:var(--dark);padding:7rem 4rem;}
.bridal .eyebrow{color:var(--gold);}
.bridal-grid{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:center;margin-top:4rem;}
.bridal-grid h2{color:#F8F6F2;}
.bridal-sub{font-size:14px;color:rgba(248,246,242,0.45);line-height:1.95;margin:1.75rem 0 2.5rem;font-weight:300;}
.bridal-feats{display:flex;flex-direction:column;gap:1px;}
.bridal-feat{padding:1.75rem 2rem;background:rgba(255,255,255,0.02);border:0.5px solid var(--border-dark);transition:background .2s;}
.bridal-feat:hover{background:rgba(255,255,255,0.04);}
.bridal-feat h3{font-family:'DM Serif Display',serif;font-size:18px;color:rgba(248,246,242,0.88);margin-bottom:.6rem;font-weight:400;}
.bridal-feat p{font-size:13px;color:rgba(248,246,242,0.5);line-height:1.75;font-weight:300;}
.bridal-img-wrap{aspect-ratio:3/4;overflow:hidden;position:relative;cursor:pointer;}
.bridal-img-wrap img{width:100%;height:100%;object-fit:contain;object-position:center center;background:#0a0806;transition:transform .6s ease;}
.bridal-img-wrap:hover img{transform:scale(1.04);}
.bridal-img-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(24,21,18,0.65) 0%,transparent 55%);}
.bridal-img-caption{position:absolute;bottom:2rem;left:2rem;}
.bridal-img-caption span{font-family:'Caveat',cursive;font-size:22px;color:rgba(255,255,255,0.75);}
.bridal-img-tag{position:absolute;top:1.25rem;right:1.25rem;font-size:9px;letter-spacing:2px;text-transform:uppercase;color:#fff;background:rgba(24,21,18,0.55);backdrop-filter:blur(4px);padding:7px 12px;border:0.5px solid rgba(255,255,255,0.2);}

/* ── BRIDAL — quote, feature row, lookbook ── */
.bridal-quote{margin:2rem 0 2.25rem;padding-left:1.25rem;border-left:2px solid var(--gold);font-family:'DM Serif Display',serif;font-style:italic;font-size:16px;line-height:1.6;color:rgba(248,246,242,0.82);}
.bridal-quote cite{display:block;margin-top:.85rem;font-family:'DM Sans',sans-serif;font-style:normal;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--gold);}
.bridal-cta-row{display:flex;gap:1rem;flex-wrap:wrap;}
.bridal-feats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:4rem;}
.bridal-lookbook{margin-top:4rem;}
.bridal-lookbook-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;}
.bridal-lookbook-label{font-size:10px;letter-spacing:3px;text-transform:uppercase;color:var(--gold);}
.bridal-lookbook-all{background:none;border:none;font-family:'DM Sans',sans-serif;font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:rgba(248,246,242,0.5);cursor:pointer;transition:color .2s;}
.bridal-lookbook-all:hover{color:#F8F6F2;}
.bridal-lookbook-strip{display:grid;grid-template-columns:repeat(6,1fr);gap:1rem;}
.lookbook-thumb{position:relative;display:block;padding:0;border:none;background:none;cursor:pointer;overflow:hidden;aspect-ratio:3/4;}
.lookbook-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease;}
.lookbook-thumb:hover img{transform:scale(1.06);}
.lookbook-thumb-cap{position:absolute;left:0;right:0;bottom:0;padding:1.4rem .55rem .55rem;font-size:10px;line-height:1.3;color:#fff;text-align:left;background:linear-gradient(to top,rgba(24,21,18,0.85),transparent);opacity:0;transition:opacity .3s;}
.lookbook-thumb:hover .lookbook-thumb-cap{opacity:1;}

/* ── LIGHTBOX ── */
.lightbox{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;background:rgba(12,10,8,0.94);backdrop-filter:blur(6px);opacity:0;visibility:hidden;transition:opacity .3s;}
.lightbox.open{opacity:1;visibility:visible;}
.lightbox-stage{position:relative;width:100%;max-width:440px;padding:0 1rem;text-align:center;}
.lightbox-img{display:block;margin:0 auto;max-height:74vh;max-width:100%;object-fit:contain;box-shadow:0 24px 70px rgba(0,0,0,0.55);}
.lightbox-cap{margin-top:1.5rem;}
.lightbox-cap b{display:block;font-family:'DM Serif Display',serif;font-weight:400;font-size:19px;color:#F8F6F2;}
.lightbox-cap span{display:block;margin-top:.4rem;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--gold);}
.lightbox-enquire{display:inline-flex;align-items:center;gap:.6rem;margin-top:1.4rem;padding:12px 24px;background:var(--gold);color:var(--bg);font-size:10px;letter-spacing:2px;text-transform:uppercase;font-weight:500;text-decoration:none;transition:opacity .2s;}
.lightbox-enquire:hover{opacity:.85;}
.lightbox-enquire svg{width:16px;height:16px;fill:var(--bg);}
.lightbox-counter{margin-top:1.25rem;font-size:10px;letter-spacing:2px;color:rgba(248,246,242,0.4);}
.lightbox-close{position:absolute;top:1.25rem;right:1.5rem;width:42px;height:42px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,0.06);border:0.5px solid rgba(255,255,255,0.15);color:#fff;font-size:22px;line-height:1;cursor:pointer;transition:background .2s;}
.lightbox-close:hover{background:rgba(255,255,255,0.14);}
.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,0.06);border:0.5px solid rgba(255,255,255,0.15);color:#fff;font-size:26px;line-height:1;cursor:pointer;transition:background .2s;z-index:2;}
.lightbox-nav:hover{background:rgba(255,255,255,0.14);}
.lightbox-nav.prev{left:1.25rem;}
.lightbox-nav.next{right:1.25rem;}
.btn-gold{font-family:'DM Sans',sans-serif;font-size:10px;letter-spacing:2px;text-transform:uppercase;font-weight:500;padding:14px 28px;background:var(--gold);color:var(--bg);border:none;cursor:pointer;transition:opacity .2s;}
.btn-gold:hover{opacity:.85;}
.btn-ghost{font-family:'DM Sans',sans-serif;font-size:10px;letter-spacing:2px;text-transform:uppercase;font-weight:400;padding:14px 28px;background:transparent;color:rgba(248,246,242,0.5);border:0.5px solid rgba(255,255,255,0.1);cursor:pointer;transition:all .2s;text-decoration:none;display:inline-flex;align-items:center;}
.btn-ghost:hover{color:#F8F6F2;border-color:rgba(255,255,255,0.3);}

/* ── TESTIMONIALS ── */
.testi{background:var(--bg);}
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border);margin-top:3.5rem;}
.testi-card{background:var(--bg);padding:2.5rem 2rem;}
.testi-stars{color:var(--gold);font-size:13px;letter-spacing:3px;margin-bottom:1rem;}
.testi-tag{font-size:9px;letter-spacing:2px;text-transform:uppercase;color:var(--gold);background:var(--bg-warm);padding:4px 10px;display:inline-block;margin-bottom:1.25rem;}
.testi-quote{font-family:'DM Serif Display',serif;font-style:italic;font-size:18px;line-height:1.65;color:var(--ink);margin-bottom:1.75rem;font-weight:400;}
.testi-author{padding-top:1.25rem;border-top:0.5px solid var(--border);}
.testi-name{font-size:13px;font-weight:500;color:var(--ink);margin-bottom:3px;}
.testi-city{font-size:11px;color:var(--ink-faint);font-weight:300;}

/* ── CONSULT ── */
.consult{background:var(--bg-warm);}
.consult-grid{display:grid;grid-template-columns:1fr 1fr;gap:6rem;margin-top:4rem;align-items:start;}
.consult-form{background:var(--bg);padding:2.75rem;}
.f-lbl{font-size:9px;letter-spacing:2px;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:8px;font-weight:500;}
.f-inp{width:100%;padding:11px 0;border:none;border-bottom:0.5px solid var(--border);background:transparent;font-family:'DM Sans',sans-serif;font-size:14px;font-weight:300;color:var(--ink);outline:none;transition:border-color .2s;margin-bottom:1.5rem;}
.f-inp:focus{border-color:var(--gold);}
.f-submit{width:100%;background:var(--ink);color:var(--bg);font-family:'DM Sans',sans-serif;font-size:10px;letter-spacing:2px;text-transform:uppercase;font-weight:500;padding:16px;border:none;cursor:pointer;margin-top:.5rem;transition:background .2s;}
.f-submit:hover{background:#333;}
.f-error{border-color:#c0392b !important;}
.f-note{font-size:11px;color:var(--ink-faint);font-weight:300;margin-top:1rem;text-align:center;line-height:1.6;}
.consult-right p{font-size:15px;color:var(--ink-soft);line-height:1.9;margin-bottom:1.75rem;font-weight:300;}
.consult-note{font-family:'Caveat',cursive;font-size:20px;color:var(--gold);margin-bottom:1.5rem;line-height:1.5;}
.consult-right-col{display:flex;flex-direction:column;justify-content:space-between;}
.wa-wrap{
  display:flex;align-items:center;gap:1rem;
  background:var(--bg);border:0.5px solid var(--border);
  border-left:2px solid #25D366;
  padding:1.25rem 1.5rem;text-decoration:none;transition:background .2s,border-color .2s;
}
.wa-wrap:hover{background:var(--bg-warm);border-left-color:#20b858;}
.wa-circle{width:38px;height:38px;background:#25D366;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.wa-circle svg{width:20px;height:20px;fill:#fff;}
.wa-t b{font-size:13px;font-weight:500;color:var(--ink);display:block;margin-bottom:3px;}
.wa-t small{font-size:11px;color:var(--ink-faint);font-weight:300;}

/* ── FOOTER ── */
footer{background:#0F0D0A;padding:5rem 4rem 2.5rem;}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:3rem;padding-bottom:3rem;border-bottom:0.5px solid rgba(255,255,255,0.04);}
.footer-brand{}
.footer-logo{display:flex;align-items:baseline;gap:10px;margin-bottom:.5rem;}
.footer-logo-word{font-family:'Jost',sans-serif;font-weight:400;font-size:22px;letter-spacing:7px;text-transform:uppercase;color:#fff;}
.footer-logo-by{font-family:'DM Serif Display',serif;font-style:italic;font-size:14px;color:var(--gold);}
.footer-founder{font-family:'Caveat',cursive;font-size:16px;color:rgba(255,255,255,0.3);margin-bottom:1rem;display:block;}
.footer-desc{font-size:13px;color:rgba(255,255,255,0.5);line-height:1.9;max-width:260px;font-weight:300;}
.f-h{font-size:9px;letter-spacing:3px;text-transform:uppercase;color:var(--gold);margin-bottom:1.25rem;}
.f-links{list-style:none;}
.f-links li{margin-bottom:.65rem;}
.f-links a{font-size:13px;color:rgba(255,255,255,0.65);text-decoration:none;font-weight:300;transition:color .2s;}
.f-links a:hover{color:#fff;}
.footer-bottom{padding-top:1.75rem;display:flex;justify-content:space-between;font-size:11px;color:rgba(255,255,255,0.1);font-weight:300;}

/* ── FLOATING WA ── */
.wa-float{position:fixed;bottom:2rem;right:2rem;width:54px;height:54px;background:#25D366;border-radius:50%;display:flex;align-items:center;justify-content:center;text-decoration:none;z-index:999;box-shadow:0 4px 24px rgba(37,211,102,0.28);transition:transform .2s;}
.wa-float:hover{transform:scale(1.08);}
.wa-float svg{width:26px;height:26px;fill:#fff;}

/* ── TOAST (added) ── */
.toast{position:fixed;bottom:2rem;left:50%;transform:translateX(-50%) translateY(120%);
  background:var(--dark);color:#F8F6F2;font-size:13px;font-weight:300;padding:14px 26px;
  border-left:2px solid var(--gold);box-shadow:0 8px 30px rgba(0,0,0,.25);z-index:1000;
  transition:transform .35s ease;max-width:90vw;}
.toast.show{transform:translateX(-50%) translateY(0);}

/* ── WHISPER · soft invitations ── */
.whisper-band{background:var(--bg-warm);border-top:0.5px solid var(--border);border-bottom:0.5px solid var(--border);}
.whisper{max-width:620px;margin:0 auto;text-align:center;padding:3rem 1.5rem;}
.whisper-mark{display:block;color:var(--gold);font-size:11px;letter-spacing:5px;margin-bottom:1.1rem;}
.whisper p{font-family:'DM Serif Display',serif;font-style:italic;font-size:clamp(18px,2.4vw,23px);line-height:1.5;color:var(--ink);margin-bottom:1.25rem;}
.whisper-link{display:inline-block;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--gold);text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:3px;transition:opacity .2s;}
.whisper-link:hover{opacity:.6;}

/* ── RESPONSIVE ── */
@media(max-width:1024px){
  nav{padding:0 1.5rem;}
  .nav-links,.nav-by{display:none;}
  section,.bridal,footer{padding:5rem 1.5rem;}
  .approach{padding:4rem 1.5rem;}
  .hero{grid-template-columns:1fr;}
  .hero-left{padding:2.5rem 1.5rem 1.5rem;order:2;}
  .hero-right{display:block;order:1;max-height:340px;overflow:hidden;}
  .hero-right img{max-height:none;height:340px;object-fit:cover;object-position:center center;}
  h1{font-size:40px;}h2{font-size:30px;}
  .approach-inner{grid-template-columns:1fr;gap:3rem;}
  .mission,.about-grid,.craft-grid,.bridal-grid,.consult-grid{grid-template-columns:1fr;gap:3rem;}
  .learn-grid,.testi-grid{grid-template-columns:1fr;}
  .learn-grid.cat-grid{grid-template-columns:repeat(2,1fr);}
  .learn-grid{margin-top:2rem;}
  .hero-badge{bottom:1.5rem;left:1.5rem;}
  .catalog-grid{grid-template-columns:1fr 1fr;}
  .catalog-filters{gap:.5rem;}
  .footer-grid{grid-template-columns:1fr;gap:2rem;}
  .consult-form{padding:2rem 1.5rem;}
  .bridal-feats{gap:0;}
  .bridal-img-wrap{aspect-ratio:16/10;max-height:62vh;}
  .bridal-lookbook-strip{grid-template-columns:repeat(3,1fr);}
}
@media(max-width:600px){
  nav{padding:0 1.25rem;}
  section,.bridal,footer{padding:4rem 1.25rem;}
  .approach{padding:3.5rem 1.25rem;}
  h1{font-size:30px;letter-spacing:-1px;}h2{font-size:24px;}
  .hide-on-mobile{display:none;}
  .hero-right{max-height:260px;overflow:hidden;}
  .hero-right img{max-height:none;height:260px;object-fit:cover;object-position:center center;}
  .hero-left{padding:1.75rem 1.25rem 1.25rem;}
  .hero-badge{display:none;}
  .hero-sub{font-size:13px;line-height:1.7;max-width:100%;margin-bottom:1.5rem;}
  .btn-link{font-size:12px;padding-bottom:4px;font-weight:500;}
  .catalog-grid{grid-template-columns:1fr 1fr;}
  .hero-actions{flex-direction:row;align-items:center;gap:1.5rem;margin-bottom:2rem;}
  .hero-stats{gap:1.75rem;padding-top:1.5rem;}
  .learn-grid,.learn-grid.cat-grid{grid-template-columns:1fr;}
  .learn-grid{margin-top:1.5rem;}
  .section-header{margin-bottom:1.5rem;flex-direction:column;align-items:flex-start;gap:0.75rem;}
  .whisper{padding:2.25rem 1.25rem;}
  .approach-pillars{grid-template-columns:1fr 1fr;gap:1rem;}
  .pillars{flex-wrap:wrap;gap:1.5rem;}
  .about-img-wrap{max-width:280px;margin:0 auto;}
  .testi-grid{grid-template-columns:1fr;}
  .catalog-filters{gap:.4rem;}
  .filter-chip{padding:7px 13px;font-size:9px;}
  .footer-grid{gap:1.5rem;}
  .wa-wrap{flex-direction:column;gap:1rem;}
  .bridal-feats-row{grid-template-columns:1fr;}
  .bridal-lookbook-strip{grid-template-columns:repeat(2,1fr);}
  .bridal-cta-row .btn-gold,.bridal-cta-row .btn-ghost{flex:1 1 auto;justify-content:center;}
  .lightbox-nav{width:38px;height:38px;font-size:20px;}
  .lightbox-nav.prev{left:.5rem;}.lightbox-nav.next{right:.5rem;}
}
