/* 0.6.5: scoped presentation. Families verified against Define's homepage;
   retain the site's own font loading and Divi module settings. */
.dsg-wedding-hub,.dsg-wedding-account{font-family:inherit;color:inherit;box-sizing:border-box}
.dsg-wedding-hub{width:100vw;max-width:none;position:relative;left:50%;transform:translateX(-50%);margin:0 0 44px;background:#fff}
.dsg-hub-heading{text-align:center;padding:44px 24px 32px}
.dsg-hub-heading h1,.dsg-account-panel h1{font-family:ABeeZee,sans-serif;font-size:clamp(28px,4vw,40px);font-weight:400;line-height:1.2;margin:0 0 28px;padding:0}
.dsg-hub-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:24px}
.dsg-hub-button,.dsg-account-panel input[type=submit]{display:inline-block;border:2px solid currentColor;border-radius:0;background:transparent;color:inherit!important;font:inherit;font-size:12px;font-weight:600;line-height:1.5;letter-spacing:.12em;text-transform:uppercase;padding:16px 28px;text-align:center;cursor:pointer}
.dsg-hub-button:hover,.dsg-account-panel input[type=submit]:hover{background:#262626;color:#fff!important;border-color:#262626}
.dsg-wedding-hub .dsg-featured-index-grid,.dsg-account-collections .dsg-featured-index-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 20px}
.dsg-wedding-hub .dsg-featured-index-card,.dsg-account-collections .dsg-featured-index-card{min-width:0;text-align:center;background:none;border:0;box-shadow:none}
.dsg-wedding-hub .dsg-featured-index-card a,.dsg-account-collections .dsg-featured-index-card a{display:block;color:inherit;text-decoration:none}
.dsg-wedding-hub .dsg-featured-index-cover,.dsg-account-collections .dsg-featured-index-cover{overflow:hidden}
.dsg-wedding-hub .dsg-card,.dsg-account-collections .dsg-card{margin:0;padding:0}
.dsg-wedding-hub .dsg-featured-index-card img,.dsg-account-collections .dsg-featured-index-card img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.dsg-wedding-hub .dsg-featured-index-card h3,.dsg-account-collections .dsg-featured-index-card h3{font-family:Raleway,sans-serif;font-size:20px;font-weight:300;line-height:1.4;margin:16px 12px 0;padding:0}
.dsg-account-login{min-height:calc(100svh - 80px);display:flex;align-items:center;justify-content:center;padding:40px 20px;background:transparent}
/* Background belongs to the enclosing Divi section. No unapproved image is fetched. */
.dsg-account-panel{width:min(100%,420px);padding:36px;background:rgba(255,255,255,.95);color:#262626;text-align:center;box-sizing:border-box}
.dsg-account-panel label{display:block;text-align:left;margin:16px 0 6px;font:inherit}
.dsg-account-panel input[type=text],.dsg-account-panel input[type=password]{width:100%;box-sizing:border-box;font:inherit;font-size:16px;border:1px solid #777;padding:12px;background:#fff;color:#262626}
.dsg-account-panel input[type=submit]{width:100%;margin:20px 0 12px}
.dsg-account-panel a{color:inherit;text-decoration:underline}
.dsg-account-collections{max-width:100%;margin:0 auto 40px}
.dsg-account-empty{text-align:center;padding:24px}
.dsg-wedding-hub a:focus-visible,.dsg-wedding-account a:focus-visible,.dsg-wedding-account input:focus-visible{outline:3px solid #1687b0;outline-offset:4px}
@media(max-width:980px){.dsg-wedding-hub .dsg-featured-index-grid,.dsg-account-collections .dsg-featured-index-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.dsg-wedding-hub .dsg-featured-index-grid,.dsg-account-collections .dsg-featured-index-grid{grid-template-columns:1fr;gap:28px}.dsg-hub-heading{padding:32px 16px 28px}.dsg-hub-actions{gap:12px}.dsg-hub-button{padding:14px 18px}.dsg-account-panel{padding:28px 20px}}
