/* Shared service identity: text and shape carry location, alongside colour. */
.service-header{display:flex;flex-wrap:wrap;align-items:center;gap:16px;justify-content:space-between}.service-header .brand{letter-spacing:-.5px;text-decoration:none;color:var(--ink);font:normal 27px Georgia,serif}.service-header .brand small{font:12px/1.4 system-ui,sans-serif;letter-spacing:0;text-transform:none;margin-top:5px;color:var(--muted)}.service-nav[hidden]{display:none!important}.service-nav{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font:14px system-ui,sans-serif}.service-nav a,.service-nav button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:10px 12px;border-radius:9px;text-decoration:none;white-space:normal}.service-nav a[aria-current=location]{font-weight:700;border:1px solid currentColor;background:white}.service-nav .service-current{color:var(--accent)}.wedding-service .service-current{color:var(--rose)}.service-header .demo{background:none;padding:0;max-width:none}.location-path{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font:13px/1.5 system-ui,sans-serif;color:var(--muted);overflow-wrap:anywhere}.location-path a{min-height:44px;display:inline-flex;align-items:center}.location-path strong{color:var(--ink)}.location-path .path-separator{color:var(--muted)}.service-context{max-width:1180px;margin:0 auto;padding:12px 22px 0}.service-context .location-path{margin:0 0 8px}.service-context .event-picker{max-width:460px}.profile-guide{margin:28px 0;padding:22px;border:1px solid var(--line);border-radius:14px;background:white}.profile-guide summary{font-weight:650;cursor:pointer;min-height:44px;display:flex;align-items:center}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:16px}.profile-grid h3{font-size:20px}.profile-grid p{font-size:14px;color:var(--muted)}.profile-grid a{display:inline-flex;align-items:center;min-height:44px}.service-header .brand:focus-visible,.service-nav a:focus-visible{outline:3px solid #b8798b;outline-offset:3px}
@media(max-width:760px){.service-header{padding:14px 18px;gap:10px}.service-header .brand{font-size:24px;width:100%}.service-header .brand small{font-size:12px}.service-header .service-nav{width:100%;display:grid;grid-template-columns:1fr 1fr auto;gap:6px;font-size:12px}.service-header .service-nav a{display:flex!important;padding:9px 7px;min-width:0;text-align:center}.service-header .service-nav .demo button,.service-header .service-nav #account{font-size:12px;padding:9px 10px}.service-context{padding:10px 18px 0}.profile-grid{grid-template-columns:1fr}.profile-guide{padding:18px}.topline:has(.location-path){align-items:flex-start;flex-wrap:wrap;gap:6px}.location-path{font-size:12px;gap:6px}.service-nav[hidden]{display:none!important}}
@media print{.service-context,.profile-guide,.location-path{display:none!important}}

/* Original store artwork, unchanged; a compact shared service lockup. */
.service-brand{display:flex;align-items:center;gap:14px;min-width:0;width:320px;max-width:100%;min-height:70px}
.service-brand .store-logo{display:flex;align-items:center;flex:0 0 98px;min-height:44px;text-decoration:none}
.service-brand .store-logo img{display:block;width:98px;height:auto;object-fit:contain}
.service-header .service-brand .brand{min-width:0;width:auto;padding:5px 0 5px 14px;border-left:1px solid #b82c66;color:var(--ink);font:normal 28px/1.15 Georgia,serif;letter-spacing:-.6px;text-decoration:none}
.service-header .service-brand .brand small{display:block;margin-top:6px;font:11px/1.4 system-ui,sans-serif;letter-spacing:.2px;text-transform:none;color:var(--rose,#83535f)}
.service-brand .store-logo:focus-visible{outline:3px solid #b8798b;outline-offset:4px;border-radius:4px}
@media(max-width:760px){.service-brand{width:260px;max-width:100%;min-height:54px;gap:10px}.service-brand .store-logo{flex-basis:78px}.service-brand .store-logo img{width:78px}.service-header .service-brand .brand{font-size:24px;padding-left:10px;flex:1}.service-header .service-brand .brand small{display:block;font-size:10px;margin-top:5px;line-height:1.4;letter-spacing:0}}

/* Approved hand-lettered wordmark; both marks share the same visual footprint. */
.service-brand{width:278px;gap:18px;min-height:80px}
.service-brand .store-logo{flex-basis:116px;width:116px}
.service-brand .store-logo img{width:116px}
.service-header .service-brand .service-wordmark{position:relative;display:block;flex:0 0 140px;width:140px;height:80px;padding:0;border:0;overflow:hidden}
.service-header .service-brand .service-wordmark:before{content:"";position:absolute;left:0;top:5px;height:70px;width:1px;background:#b82c66;z-index:1}
.service-wordmark img{display:block;position:absolute;width:201px;max-width:none;height:auto;left:-22px;top:-9px}
@media(max-width:760px){.service-brand{width:260px;max-width:100%;min-height:76px;gap:14px}.service-brand .store-logo{flex-basis:106px;width:106px}.service-brand .store-logo img{width:106px}.service-header .service-brand .service-wordmark{flex-basis:132px;width:132px;height:76px}.service-wordmark img{width:188px;left:-20px;top:-8px}.service-header .service-brand .service-wordmark:before{height:65px}}

/* Compact header: logo/account row, then one row of service links on mobile. */
.service-header{padding-top:12px;padding-bottom:12px;gap:10px}
.service-header .service-brand .service-wordmark{height:80px}
.service-wordmark img{width:184px;left:-18px;top:-10px}
@media(max-width:760px){
 .service-header{position:relative;display:flex;align-items:center;padding:9px 14px;gap:5px}
 .service-brand{width:220px;min-height:68px;gap:10px}
 .service-brand .store-logo{flex-basis:96px;width:96px}
 .service-brand .store-logo img{width:96px}
 .service-header .service-brand .service-wordmark{flex-basis:114px;width:114px;height:68px}
 .service-wordmark img{width:151px;left:-15px;top:-8px}
 .service-header .service-brand .service-wordmark:before{top:5px;height:57px}
 .service-header .service-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:5px;font-size:12px;align-items:stretch}
 .service-header .service-nav a{padding:6px 4px;min-height:40px;line-height:1.25;border-radius:8px}
 .service-header .service-nav #account,.service-header .service-nav .demo{position:absolute;right:14px;top:21px;width:78px;max-width:78px;margin:0}
 .service-header .service-nav #account,.service-header .service-nav .demo button{font-size:12px;min-height:40px;padding:6px 8px;border-radius:8px;width:78px;white-space:normal;line-height:1.25}
}
@media(max-width:340px){.service-header{padding-left:10px;padding-right:10px}.service-header .service-nav #account,.service-header .service-nav .demo{right:10px;width:68px;max-width:68px}.service-header .service-nav #account,.service-header .service-nav .demo button{width:68px;padding:6px 4px}}

/* Balance the new mark with the original store logo's softer charcoal. */
.service-wordmark img{opacity:.77}

/* Balance letter scale and constrain every header item to its own column. */
.service-header{box-sizing:border-box;width:100%;max-width:100%;min-width:0}
.service-header .service-nav,.service-header .service-nav>*{min-width:0}
.service-header .service-brand .service-wordmark{height:80px}
.service-wordmark img{width:173px;left:-16px;top:-4px}
@media(max-width:760px){
 .service-header{display:grid;grid-template-columns:minmax(0,1fr) 78px;column-gap:8px;row-gap:5px;position:relative;width:100%;max-width:100%;padding:9px 14px}
 .service-brand{grid-column:1;width:220px;max-width:100%;min-width:0;gap:10px}
 .service-header .service-brand .service-wordmark{flex-basis:114px;width:114px;height:68px}
 .service-wordmark img{width:139px;left:-13px;top:-2px}
 .service-header .service-nav{grid-column:1/-1;width:100%;max-width:100%;min-width:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}
 .service-header .service-nav a{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere;text-align:center;font-size:12px;padding:6px 3px}
 .service-header .service-nav #account,.service-header .service-nav .demo{box-sizing:border-box;right:14px;top:23px;width:78px;max-width:78px}
 .service-header .service-nav #account,.service-header .service-nav .demo button{white-space:normal;min-width:0;max-width:78px}
}
@media(max-width:340px){.service-header{padding:9px 10px;grid-template-columns:minmax(0,1fr) 68px;column-gap:5px}.service-header .service-nav #account,.service-header .service-nav .demo{right:10px;width:68px;max-width:68px}.service-header .service-nav #account,.service-header .service-nav .demo button{max-width:68px}}

/* Center the shared logo pair across the mobile header without overlapping account actions. */
@media(max-width:760px){
 .service-header{grid-template-columns:minmax(0,1fr);justify-items:center}
 .service-header .service-brand{grid-column:1/-1;justify-self:center;margin:0 auto}
 .service-header .service-nav{grid-template-columns:repeat(3,minmax(0,1fr)) 78px}
 .service-header .service-nav #account,.service-header .service-nav .demo{position:static;grid-column:4;grid-row:1;margin:0;align-self:center}
}
@media(max-width:340px){
 .service-header .service-nav{grid-template-columns:repeat(3,minmax(0,1fr)) 68px}
}

/* Mina firanden follows the shop's current logo row and 1023px breakpoint. */
.celebrations-store-header{padding-top:12.5px;padding-bottom:12.5px;background:#f6e8e7;gap:16px}
.celebrations-store-header .service-brand{width:288px;max-width:100%;min-height:80px;gap:16px;flex-shrink:0}
.celebrations-store-header .store-logo{flex:0 0 116px;width:116px}
.celebrations-store-header .store-logo img{width:116px;max-width:116px;max-height:80px;height:auto}
.celebrations-store-header .service-brand .service-wordmark{box-sizing:content-box;flex:0 0 140px;width:140px;height:80px;padding:0 0 0 16px;border-left:1px solid #c22e61;overflow:hidden}
.celebrations-store-header .service-wordmark:before{display:none}
.celebrations-store-header .service-wordmark img{width:173px;left:0;top:-4px;opacity:.77}
@media(max-width:1023px){
 .celebrations-store-header{display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;padding:7px 14px;gap:5px}
 .celebrations-store-header .service-brand{grid-column:1/-1;justify-self:center;margin:0 auto;width:232px;min-height:68px;gap:10px}
 .celebrations-store-header .store-logo{flex:0 0 96px;width:96px}
 .celebrations-store-header .store-logo img{width:96px;max-width:96px;max-height:68px}
 .celebrations-store-header .service-brand .service-wordmark{flex:0 0 114px;width:114px;height:68px;padding-left:10px}
 .celebrations-store-header .service-wordmark img{width:139px;left:-3px;top:-2px}
 .celebrations-store-header .service-nav{display:grid;grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr)) 78px;width:100%;gap:5px;font-size:12px}
 .celebrations-store-header .service-nav a{display:flex;min-width:0;padding:6px 3px;min-height:40px;line-height:1.25;text-align:center}
 .celebrations-store-header .service-nav #account{position:static;grid-column:4;grid-row:1;width:78px;max-width:78px;padding:6px 8px;min-height:40px;font-size:12px;white-space:normal;line-height:1.25}
}
@media(max-width:340px){
 .celebrations-store-header{padding-left:10px;padding-right:10px}
 .celebrations-store-header .service-nav{grid-template-columns:repeat(3,minmax(0,1fr)) 68px}
 .celebrations-store-header .service-nav #account{width:68px;max-width:68px}
}

/* Match the shop DOM: spacing outside the cropped artwork, not inside it. */
.celebrations-store-header .service-brand{width:289px}
.celebrations-store-header .service-brand .service-wordmark{height:80px;overflow:visible}
.celebrations-store-header .store-wordmark-frame{display:block;position:relative;width:140px;height:80px;overflow:hidden}
.celebrations-store-header .store-wordmark-frame img{width:173px;left:-16px;top:-4px}
@media(min-width:1024px){.celebrations-store-header{padding-left:calc((100% - 960px)/2);padding-right:calc((100% - 960px)/2)}}
@media(min-width:1200px){.celebrations-store-header{padding-left:calc((100% - 1136px)/2);padding-right:calc((100% - 1136px)/2)}}
@media(max-width:1023px){
 .celebrations-store-header .service-brand{width:232px}
 .celebrations-store-header .service-brand .service-wordmark{box-sizing:border-box;flex-basis:126px;width:126px;height:68px}
 .celebrations-store-header .store-wordmark-frame{width:114px;height:68px}
 .celebrations-store-header .store-wordmark-frame img{width:139px;left:-13px;top:-2px}
}

/* Keep the shop's 210px desktop logo slot; the artwork itself is 116px. */
@media(min-width:1024px){
 .celebrations-store-header .service-brand{width:383px}
 .celebrations-store-header .store-logo{flex-basis:210px;width:210px;justify-content:flex-start}
}

/* Desktop comparison with the live shop: align divider and second artwork. */
@media(min-width:1024px){
 .celebrations-store-header .service-brand{width:375px}
 .celebrations-store-header .store-logo{flex-basis:202px;width:202px}
 .celebrations-store-header{border-bottom:0}
}

/* Compact shared-service explanation. Keep closed content hidden on mobile too. */
.profile-guide{padding:0;overflow:hidden}
.profile-guide>summary{padding:14px 18px;gap:12px;justify-content:space-between;font-size:15px;line-height:1.4;min-height:48px;box-sizing:border-box;list-style:none}
.profile-guide>summary::-webkit-details-marker{display:none}
.profile-guide>summary::after{content:'+';font-size:22px;font-weight:400;flex-shrink:0}
.profile-guide[open]>summary::after{content:'−'}
.profile-guide:not([open])>.profile-guide-content{display:none}
.profile-guide-content{padding:0 18px 16px}
.profile-guide .profile-intro,.profile-guide .profile-note{font-size:14px;line-height:1.5;color:var(--muted);margin:0 0 12px}
.profile-guide .profile-note{margin:12px 0 0}
.profile-links{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:8px 18px}
.profile-links li{min-width:0;margin:0}
.profile-guide .profile-link{display:grid;grid-template-columns:24px minmax(0,1fr) 16px;align-items:center;gap:9px;width:100%;min-height:64px;padding:8px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;color:var(--ink);font:inherit;text-decoration:none;text-align:left;box-sizing:border-box}
.profile-link strong,.profile-link small{display:block;line-height:1.4}
.profile-link strong{font-size:15px}.profile-link small{font-size:13px;color:var(--muted);margin-top:2px}
.profile-guide summary:focus-visible,.profile-link:focus-visible{outline:3px solid #b8798b;outline-offset:-3px}
@media(max-width:760px){.profile-links{grid-template-columns:1fr}.profile-guide{padding:0;margin:20px 0}.profile-guide>summary{padding:12px 14px}.profile-guide-content{padding:0 14px 14px}}
