:root{--bg:#f4f0ea;--paper:#fff;--ink:#171717;--muted:#6f6962;--line:#ddd5cc;--shadow:0 16px 50px rgba(0,0,0,.08);--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif}.hidden{display:none!important}.no-scroll{overflow:hidden}.eyebrow{margin:0 0 10px;font-size:11px;font-weight:700;letter-spacing:.24em;color:#736c64}.site-header{position:sticky;top:0;z-index:40;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:12px 24px;background:rgba(244,240,234,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.brand-btn{border:0;background:transparent;padding:0;cursor:pointer;justify-self:start}.brand-btn img{display:block;width:220px;max-width:34vw;height:auto}.tabs{display:flex;gap:7px;padding:4px;border:1px solid var(--line);border-radius:999px;background:#ece6df}.tab{border:0;background:transparent;border-radius:999px;padding:9px 17px;cursor:pointer;font-weight:700;color:#625d57}.tab.active{background:#fff;color:#111;box-shadow:0 2px 10px rgba(0,0,0,.06)}.cart-btn{justify-self:end;border:0;background:#111;color:#fff;padding:10px 15px;border-radius:999px;cursor:pointer}.cart-btn span{display:inline-grid;place-items:center;background:#fff;color:#111;width:22px;height:22px;border-radius:50%;margin-left:5px;font-size:12px}.landing-view .tabs{display:none}.landing-view .site-header{grid-template-columns:1fr auto 1fr}.landing-view .brand-btn{grid-column:2;justify-self:center}.landing-view .cart-btn{grid-column:3}.landing-page{position:relative;min-height:calc(100svh - 65px);overflow:hidden;isolation:isolate;padding:54px 18px}.landing-bg{position:absolute;inset:0;z-index:-3;width:100%;height:100%;object-fit:cover;object-position:center 48%;filter:contrast(.96) brightness(1.06)}.landing-overlay{position:absolute;inset:0;z-index:-2;background:rgba(244,240,234,.24)}.landing-inner{max-width:720px;margin:0 auto;text-align:center;padding-top:70px}.landing-logo{width:min(430px,80vw);mix-blend-mode:multiply;margin-bottom:24px}.landing-inner h1,.intro h1,.access-card h1{font-family:Baskerville,'Iowan Old Style','Times New Roman',serif;font-weight:400}.landing-inner h1{font-size:clamp(42px,7vw,70px);margin:0 0 34px}.landing-grid{display:grid;grid-template-columns:1fr;gap:14px}.landing-card{min-height:90px;border:1px solid rgba(255,255,255,.52);border-radius:22px;background:rgba(255,255,255,.54);backdrop-filter:blur(9px);font-family:Baskerville,'Iowan Old Style','Times New Roman',serif;font-size:clamp(28px,5vw,36px);cursor:pointer;color:#111;box-shadow:0 10px 32px rgba(0,0,0,.08);transition:.18s}.landing-card:hover{background:rgba(255,255,255,.66);transform:translateY(-2px)}.toolbar{position:sticky;top:65px;z-index:30;display:flex;gap:10px;align-items:center;padding:12px 24px;background:rgba(244,240,234,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.search-wrap{flex:1;max-width:400px}.search-wrap input{width:100%;border:1px solid var(--line);background:#fff;border-radius:999px;padding:10px 14px;font-size:14px}.back-btn,.quiet-btn{white-space:nowrap;border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 12px;cursor:pointer;color:#4e4944}.resources-view .search-wrap{visibility:hidden}.intro{text-align:center;padding:44px 20px 20px}.intro h1{font-size:clamp(38px,5vw,62px);margin:0}.catalog-grid{max-width:1720px;margin:0 auto;padding:14px 26px 70px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 8px 25px rgba(0,0,0,.04);min-width:0}.page-image-wrap{position:relative;aspect-ratio:595/842;background:#eee;cursor:zoom-in;overflow:hidden}.page-image-wrap img{display:block;width:100%;height:100%;object-fit:contain;background:#fff;transition:transform .25s}.page-image-wrap:hover img{transform:scale(1.012)}.page-chip,.price-chip{position:absolute;border-radius:999px;padding:5px 8px;font-size:10px;background:rgba(255,255,255,.9);border:1px solid rgba(0,0,0,.08);backdrop-filter:blur(6px)}.page-chip{left:9px;bottom:9px}.price-chip{right:9px;top:9px;font-weight:800}.card-foot{min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 11px}.style-meta{min-width:0}.style-num{font-size:13px;font-weight:800}.price-meta{font-size:12px;color:var(--muted);margin-top:3px}.add-btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border:1px solid #222;background:#fff;color:#111;border-radius:999px;padding:7px 10px;font-size:11px;cursor:pointer}.add-btn:hover{background:#111;color:#fff}.video-card{background:#111;color:#fff}.video-poster{width:100%;border:0;color:#fff;background:radial-gradient(circle at 50% 36%,#3c3c3c,#0e0e0e 62%);aspect-ratio:595/842;display:flex;flex-direction:column;gap:10px;align-items:center;justify-content:center;cursor:pointer;padding:28px;text-align:center}.video-poster span{font-size:12px;color:#bbb}.play-circle{width:70px;height:70px;border-radius:50%;border:1px solid rgba(255,255,255,.58);display:grid;place-items:center;font-size:29px}.video-card .price-meta{color:#bbb}.video-open{background:#222;border-color:#777;color:#fff}.resource-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:1260px}.resource-thumb{display:flex;aspect-ratio:4/3;background:#eee8df;align-items:center;justify-content:center;overflow:hidden}.resource-thumb img{width:100%;height:100%;object-fit:contain;background:#fff}.resource-foot{padding:15px}.resource-foot h2{font-family:Baskerville,'Times New Roman',serif;font-weight:400;font-size:22px;margin:0 0 14px}.resource-actions{display:flex;gap:8px;flex-wrap:wrap}.empty{text-align:center;padding:60px;color:var(--muted)}.lightbox{position:fixed;inset:0;z-index:100;background:rgba(9,9,9,.95);display:grid;grid-template-columns:58px 1fr 58px;grid-template-rows:minmax(0,1fr) auto;align-items:center}.lightbox-stage{height:100%;min-height:0;display:flex;align-items:center;justify-content:center;padding:18px;overflow:auto}.lightbox-stage img{max-width:100%;max-height:100%;object-fit:contain;box-shadow:0 20px 70px rgba(0,0,0,.5)}.lightbox-video-wrap{position:relative;width:min(78vw,760px);height:min(80vh,920px);background:#000;display:flex;align-items:center;justify-content:center}.lightbox-video-wrap video{width:100%;height:100%;object-fit:contain;background:#000}.video-fallback{position:absolute;inset:0;display:flex;flex-direction:column;gap:10px;align-items:center;justify-content:center;text-align:center;color:#fff;background:radial-gradient(circle at 50% 35%,#333,#0e0e0e 65%);padding:25px}.video-fallback span{max-width:350px;color:#ccc;font-size:13px}.lightbox-nav,.lightbox-close{border:0;background:transparent;color:#fff;cursor:pointer}.lightbox-nav{font-size:46px}.lightbox-close{position:absolute;top:13px;right:16px;z-index:3;font-size:38px}.lightbox-footer{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:14px;min-height:70px;padding:12px 18px;color:#fff;background:#111;border-top:1px solid #333}.dropbox-link,.lightbox-add{border:1px solid #777;border-radius:999px;color:#fff;background:#1c1c1c;padding:8px 12px;text-decoration:none;cursor:pointer;font-size:12px}.modal,.drawer{position:fixed;inset:0;z-index:120;background:rgba(0,0,0,.55);display:flex;align-items:center;justify-content:center;padding:18px}.modal-card{position:relative;width:min(520px,100%);background:#fff;border-radius:22px;padding:28px;box-shadow:var(--shadow)}.modal-card h2{font-family:Baskerville,'Times New Roman',serif;font-size:30px;margin:0 0 4px}.order-price{color:var(--muted);margin-bottom:15px}.modal-card label,.access-card label{display:grid;gap:6px;font-weight:700;font-size:13px;margin:12px 0}.modal-card input,.modal-card textarea,.access-card input{width:100%;border:1px solid var(--line);border-radius:12px;padding:12px;font:inherit;background:rgba(255,255,255,.78)}.modal-x{border:0;background:transparent;font-size:27px;cursor:pointer}.modal-card>.modal-x{position:absolute;right:15px;top:12px}.primary-btn,.secondary-btn{border:0;border-radius:999px;padding:12px 18px;font-weight:700;cursor:pointer}.primary-btn{background:#111;color:#fff}.secondary-btn{background:#ebe5dd;color:#111}.drawer{justify-content:flex-end;padding:0}.drawer>div,.drawer{ }.drawer{background:rgba(0,0,0,.38)}.drawer::before{content:''}.drawer{align-items:stretch}.drawer-head,.drawer-foot{padding:18px 20px;border-bottom:1px solid var(--line)}.drawer-head{display:flex;justify-content:space-between;align-items:flex-start}.drawer-head h2{font-family:Baskerville,'Times New Roman',serif;font-size:32px;margin:0}.drawer #cartItems,.drawer .drawer-head,.drawer .drawer-foot{width:100%}.drawer{display:block;padding-left:calc(100% - min(430px,100%));background:rgba(0,0,0,.45)}.drawer-head,.cart-items,.drawer-foot{background:#fff}.cart-items{min-height:calc(100vh - 220px);overflow:auto;padding:0 20px}.drawer-foot{border-top:1px solid var(--line);border-bottom:0;display:grid;gap:8px}.cart-item{display:flex;justify-content:space-between;gap:10px;padding:15px 0;border-bottom:1px solid var(--line)}.cart-detail{font-size:12px;color:var(--muted);line-height:1.55;margin-top:5px}.remove-item{border:0;background:transparent;color:#9b332d;cursor:pointer}.danger{color:#9b332d}.toast{position:fixed;z-index:200;left:50%;bottom:26px;transform:translateX(-50%);background:#111;color:#fff;border-radius:999px;padding:10px 15px;font-size:13px}.access-gate{position:fixed;inset:0;z-index:300;overflow:auto;display:flex;align-items:center;justify-content:center;padding:28px;isolation:isolate;background:#222}.access-bg{position:fixed;inset:0;z-index:-3;width:100%;height:100%;object-fit:cover;object-position:center 42%}.access-overlay{position:fixed;inset:0;z-index:-2;background:rgba(10,10,10,.22)}.access-card{width:min(500px,100%);border:1px solid rgba(255,255,255,.36);border-radius:26px;background:rgba(255,255,255,.44);backdrop-filter:blur(7px);padding:28px;box-shadow:0 28px 80px rgba(0,0,0,.23)}.login-logo{display:block;width:min(390px,90%);margin:0 auto 24px;mix-blend-mode:multiply}.access-card{text-align:center}.access-card h1{font-size:45px;margin:4px 0 12px}.access-copy{color:#3f3934;line-height:1.5;margin:0 0 24px}.access-card form{text-align:left}.access-error{color:#9d2d25;min-height:20px;font-size:13px;margin-top:8px}.access-submit{width:100%;margin-top:8px}.access-locked{overflow:hidden}@media(max-width:1100px){.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.site-header{grid-template-columns:1fr auto}.tabs{grid-row:2;grid-column:1/-1;justify-self:center}.toolbar{top:114px}}@media(max-width:800px){.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px 12px 60px;gap:12px}.resource-grid{grid-template-columns:1fr}.site-header{padding:10px 12px}.brand-btn img{width:180px;max-width:46vw}.toolbar{top:109px;padding:10px 12px}.back-btn span{display:none}.intro{padding-top:32px}.landing-inner{padding-top:120px}.landing-logo{width:min(340px,76vw)}.landing-card{min-height:80px}.lightbox{grid-template-columns:42px 1fr 42px}.lightbox-stage{padding:10px}.lightbox-footer{font-size:12px;flex-wrap:wrap}.access-gate{padding:18px 12px}.access-card{background:rgba(255,255,255,.38);padding:22px}.access-card h1{font-size:38px}.login-logo{width:min(330px,88%)}.drawer{padding-left:max(0px,calc(100% - 430px))}}@media(max-width:520px){.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.card-foot{padding:8px;min-height:58px}.style-num{font-size:11px}.price-meta{font-size:10px}.add-btn{padding:6px 8px;font-size:10px}.page-chip,.price-chip{font-size:9px}.landing-page{padding:22px 10px}.landing-inner{padding-top:135px}.landing-inner h1{font-size:38px;margin-bottom:20px}.landing-card{min-height:68px;font-size:27px;border-radius:18px;background:rgba(255,255,255,.5)}.site-header{grid-template-columns:1fr auto}.brand-btn img{width:155px}.cart-btn{font-size:11px;padding:8px 10px}.tab{padding:8px 14px}.toolbar{top:103px}.access-bg{object-position:53% center}.access-card{background:rgba(255,255,255,.34);border-color:rgba(255,255,255,.28);backdrop-filter:blur(5px)}.access-card input{background:rgba(255,255,255,.58)}.access-copy{color:#2a2622}.resource-foot h2{font-size:20px}}
/* Reliable photo layering for Safari/iPhone */
.access-gate{background:#d9d2ca!important}
.access-bg{z-index:0!important;pointer-events:none}
.access-overlay{z-index:1!important;pointer-events:none}
.access-card{position:relative!important;z-index:2!important}
.landing-page{background:#d9d2ca!important}
.landing-bg{z-index:0!important;pointer-events:none}
.landing-overlay{z-index:1!important;pointer-events:none}
.landing-inner{position:relative!important;z-index:2!important}



/* Clean landing page: only the two main choices show before a collection is selected */
.landing-view .toolbar,
.landing-view .intro,
.landing-view #grid,
.landing-view #emptyState{
  display:none !important;
}

/* Rebalance the landing layout after removing the heading */
.landing-view .landing-inner{
  padding-top:34px;
}
.landing-view .landing-grid{
  margin-top:26px;
}



/* Veni Veils & Accessories */
.accessory-grid{align-items:start}
.accessory-card{overflow:hidden}
.accessory-gallery{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1px;
  background:#d8d0c7;
}
.accessory-photo{
  position:relative;
  border:0;
  padding:0;
  margin:0;
  background:#fff;
  aspect-ratio:595/842;
  overflow:hidden;
  cursor:zoom-in;
}
.accessory-photo:only-child{grid-column:1/-1}
.accessory-photo img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  background:#fff;
  transition:transform .22s ease;
}
.accessory-photo:hover img{transform:scale(1.015)}
.accessory-photo span{
  position:absolute;
  left:7px;
  bottom:7px;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(0,0,0,.08);
  border-radius:999px;
  padding:4px 7px;
  font-size:9px;
  font-weight:800;
  color:#111;
  backdrop-filter:blur(5px);
}
.accessory-body{padding:14px}
.accessory-heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}
.accessory-heading h2{
  font-family:Baskerville,'Iowan Old Style','Times New Roman',serif;
  font-weight:400;
  font-size:25px;
  line-height:1.05;
  margin:3px 0 0;
}
.accessory-price{
  white-space:nowrap;
  font-size:12px;
  font-weight:800;
  border:1px solid var(--line);
  border-radius:999px;
  padding:6px 8px;
  background:#f7f3ee;
}
.accessory-colors,.shown-with{
  font-size:12px;
  line-height:1.45;
  color:#5f5953;
  margin-top:11px;
}
.dress-chips{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:7px;
}
.dress-chip{
  border:1px solid #d8d0c7;
  background:#fff;
  border-radius:999px;
  padding:6px 8px;
  font-size:10px;
  cursor:pointer;
  color:#282522;
}
.dress-chip:hover{background:#111;color:#fff;border-color:#111}
.price-missing{
  margin-top:9px;
  font-size:10px;
  line-height:1.35;
  color:#8a5a45;
}
.accessory-add{
  width:100%;
  margin-top:13px;
  padding:10px 12px;
}
.accessories-view .search-wrap{visibility:visible}
@media(max-width:1100px){
  .accessory-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .tab{padding-left:13px;padding-right:13px;font-size:12px}
}
@media(max-width:800px){
  .accessory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tabs{max-width:100%;overflow-x:auto;justify-content:flex-start;scrollbar-width:none}
  .tabs::-webkit-scrollbar{display:none}
  .tab{white-space:nowrap}
}
@media(max-width:520px){
  .accessory-grid{grid-template-columns:1fr}
  .accessory-heading h2{font-size:24px}
  .accessory-photo{aspect-ratio:595/720}
}

/* Zoom sequence page-pair fix */
#lightboxCaption{
  line-height:1.45;
}

.zoom-subcaption{
  display:inline-block;
  margin-top:4px;
  font-size:11px;
  color:#756e67;
}


/* Coordinating accessory pricing on the main Bridal Gowns lookbook */
.dress-accessory-pricing{
  margin-top:9px;
  padding-top:8px;
  border-top:1px solid rgba(38,31,27,.10);
  min-width:0;
}
.dress-accessory-label{
  margin-bottom:4px;
  font-size:9px;
  line-height:1.2;
  letter-spacing:.11em;
  text-transform:uppercase;
  font-weight:800;
  color:#7a7169;
}
.dress-accessory-line{
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  gap:8px;
  font-size:10px;
  line-height:1.35;
  color:#4f4944;
}
.dress-accessory-line + .dress-accessory-line{margin-top:3px}
.dress-accessory-line span:first-child{
  min-width:0;
  overflow-wrap:anywhere;
}
.dress-accessory-line span:last-child{
  flex:0 0 auto;
  font-weight:700;
  color:#26221f;
}
.zoom-accessory-pricing{
  display:inline-block;
  margin-top:5px;
  font-size:11px;
  line-height:1.45;
  color:#6e655f;
}
@media(max-width:520px){
  .dress-accessory-line{
    font-size:10px;
  }
}
