/* Compact shared navigation. Native details keep menus usable by keyboard and touch. */
/* Above the sticky planner navigation (z-index:20), including its open menu. */
.service-header.compact-header{gap:12px;position:relative;z-index:30}
.service-header .compact-service-nav{display:flex!important;align-items:center;justify-content:flex-end;gap:10px;width:auto;font:14px/1.4 system-ui,sans-serif}
.compact-service-nav .compact-menu{position:relative;min-width:0;margin:0}
.compact-service-nav summary{box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:44px;padding:10px 14px;border:1px solid #d4dacf;border-radius:12px;background:#fffaf8;color:#344031;cursor:pointer;list-style:none;font-weight:600}
.compact-service-nav summary::-webkit-details-marker{display:none}
.compact-service-nav summary:after{content:'⌄';font-size:18px;line-height:1}
.compact-service-nav details[open] summary{border-color:#53664b}
.compact-service-nav .compact-menu-panel{position:absolute;z-index:50;top:calc(100% + 8px);right:0;min-width:220px;padding:7px;border:1px solid #dedfd5;border-radius:14px;background:white;box-shadow:0 12px 35px #343d3420}
.service-header .compact-service-nav .compact-menu-panel a,.service-header .compact-service-nav .compact-menu-panel button{position:static!important;box-sizing:border-box;display:flex!important;width:100%!important;max-width:none!important;min-height:44px;justify-content:flex-start;text-align:left;padding:11px 12px;font:14px/1.4 system-ui,sans-serif;border:0;border-radius:8px;white-space:normal;color:#344031;background:transparent;grid-column:auto;grid-row:auto}
.service-header .compact-service-nav .compact-menu-panel a:hover,.service-header .compact-service-nav .compact-menu-panel button:hover{background:#f6e8e7}
.service-header .compact-service-nav .compact-menu-panel .service-current{background:#eef1e7;font-weight:700}
.compact-service-nav :is(summary,a,button):focus-visible{outline:3px solid #b8798b;outline-offset:2px}
.portal-entry-grid{gap:12px}.portal-entry-grid .portal-entry-card{position:relative;display:flex;flex-direction:column;padding:20px;border-radius:16px;background:#fff;margin:0;min-width:0}
.portal-entry-grid .portal-entry-card>span{font-size:26px;line-height:1.2;margin-bottom:10px}
.portal-entry-grid .portal-entry-card h3{font:650 19px/1.3 system-ui,sans-serif;margin:0 0 8px}
.portal-entry-grid .portal-entry-card p{font-size:14px;line-height:1.5;margin:0 0 14px;color:#697267;flex:1}
.portal-entry-grid .portal-entry-card .primary-link{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:10px 14px;font:600 14px/1.4 system-ui,sans-serif;border-radius:10px;white-space:normal;overflow-wrap:anywhere;min-width:0}
@media(max-width:1023px){
 .service-header.compact-header{display:flex;flex-direction:column;padding:8px 16px 12px;gap:6px}
 .service-header.compact-header .service-brand{margin:0 auto}
 .service-header .compact-service-nav{display:grid!important;grid-template-columns:minmax(0,1fr) auto;width:100%;gap:10px}
 .compact-service-nav .compact-services summary{font-size:14px}
 .compact-service-nav .compact-account summary{font-size:13px}
 .compact-service-nav .compact-services .compact-menu-panel{right:auto;left:0;max-width:calc(100vw - 32px)}
}
@media(max-width:760px){
 .portal-entry-grid{gap:10px}
 .portal-entry-grid .portal-entry-card{padding:15px;border-radius:14px}
 .portal-entry-grid .portal-entry-card h3{font-size:16px}
 .portal-entry-grid .portal-entry-card p{font-size:13px;line-height:1.45;margin-bottom:12px}
 .portal-entry-grid .portal-entry-card .primary-link{font-size:13px;padding:9px 11px}
 [aria-labelledby=portal-entry-title]{margin-top:26px}
 #portal-entry-title{font-size:28px;line-height:1.2;margin-bottom:16px}
}
@media(max-width:340px){.compact-service-nav summary{padding:10px;gap:8px}.portal-entry-grid .portal-entry-card{padding:12px}}
@media print{.service-header.compact-header{display:none!important}}
.service-header .compact-service-nav .compact-menu-panel .demo{position:static!important;width:auto!important;max-width:none!important;margin:0;padding:8px 12px;font-size:13px;grid-column:auto;grid-row:auto}
.service-header .compact-service-nav .compact-menu-panel .demo button{position:static!important;width:100%!important;max-width:none!important;min-height:44px;font:14px/1.4 system-ui,sans-serif}

/* Draw chevrons with borders so they do not depend on a font glyph. */
.compact-service-nav summary:after{content:"";width:7px;height:7px;display:block;flex:0 0 7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin:0 2px 4px 0}
/* Long account menus remain scrollable on short screens and at larger text sizes. */
.compact-service-nav .compact-menu-panel{max-height:50vh;max-height:50dvh;overflow-y:auto;overscroll-behavior:contain}

/* One active-state language across the four planning services. */
.compact-service-nav .compact-services .current-service{border-color:#53664b;box-shadow:inset 4px 0 #53664b;background:#eef1e7}
.service-header .compact-service-nav .compact-menu-panel a.service-current{background:#53664b;color:#fff;font-weight:700}
.service-header .compact-service-nav .compact-menu-panel a.service-current:after{content:'✓';margin-left:auto}
body .local-service-nav{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}
body :is(.local-service-nav,.tabs.main-areas,.tabs.subtools,#nav.grouped-nav) :is(button,a):not(#planner-menu-toggle){background:#fffaf8;color:#344031;border:1px solid #87947e;box-shadow:none;text-decoration:none;min-height:44px;border-radius:12px}
body .local-service-nav>*{box-sizing:border-box;flex:1 1 180px;padding:12px 16px;text-align:center;font:600 15px/1.4 system-ui,sans-serif}
body :is(.local-service-nav,.tabs.main-areas,.tabs.subtools,#nav.grouped-nav) :is(button,a):is([aria-current="page"],.active){background:#53664b;color:#fff;border-color:#53664b;font-weight:700}
body :is(.local-service-nav,.tabs.main-areas,.tabs.subtools,#nav.grouped-nav) :is(button,a):hover{outline:2px solid #87947e;outline-offset:1px}
body :is(.local-service-nav,.tabs.main-areas,.tabs.subtools,#nav.grouped-nav) :is(button,a):focus-visible{outline:3px solid #b8798b;outline-offset:3px}
body .location-path{display:flex;align-items:center;flex-wrap:wrap;gap:8px;color:#53664b;font:14px/1.5 system-ui,sans-serif;margin:16px 0;padding:10px 0}
body .location-path :is(button,a){background:transparent;color:#344031;border:0;padding:6px 0;min-height:44px;text-decoration:underline;font:inherit;box-shadow:none}
body .location-path strong{font-weight:700;color:#344031}
@media(max-width:600px){body .local-service-nav>*{flex-basis:calc(50% - 10px);min-width:0}body .local-service-nav{gap:8px}}
body .min-bakning>.location-path{border:0;margin:12px 0;padding:0;align-items:center}
body .min-bakning>.location-path button{flex:0 1 auto;background:transparent;color:#344031;border:0;padding:6px 0;text-align:left;text-decoration:underline}
body .min-bakning>.location-path button:hover{background:#eef1e7}
/* Shared arrangement: four visible choices and one expandable tools row. */
body .service-section-menu.local-service-nav,body .wedding-primary.local-service-nav,body .min-bakning .mb-workspace-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-items:stretch;width:100%;margin:20px 0 0;padding:0 0 16px;border-bottom:1px solid #dedfd5}
body .service-section-menu.local-service-nav>button,body .wedding-primary.local-service-nav>button{display:flex;align-items:center;justify-content:center;min-width:0;min-height:44px;margin:0;padding:12px 16px;text-align:center;white-space:normal;font:600 15px/1.5 system-ui,sans-serif}
body .local-service-nav>.service-tools-menu,body .min-bakning .mb-tools-menu{grid-column:1/-1;display:block;padding:0;margin:0;border:0;background:transparent}
body .local-service-nav>.service-tools-menu>summary,body .min-bakning .mb-tools-menu>summary{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;box-sizing:border-box;padding:12px 16px;border:1px solid #dedfd5;border-radius:12px;background:white;color:#344031;list-style:none;text-align:center;font:600 15px/1.5 system-ui,sans-serif;cursor:pointer}
body .service-tools-menu>summary::-webkit-details-marker{display:none}
body .service-tools-menu>summary:before{content:'▸';font-size:14px}body .service-tools-menu[open]>summary:before{content:'▾'}
body .service-tools-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px 0 0}
body .service-tools-items :is(button,a){display:flex;align-items:center;justify-content:center;padding:10px 12px;text-align:center;white-space:normal;font:14px/1.5 system-ui,sans-serif}
body .mn-layout:not([data-near-section=overview]){grid-template-columns:minmax(0,1fr)}
body .mn-layout>[hidden]{display:none!important}
body .shell:has(#nav.service-section-menu){display:block;max-width:1080px}
body .shell>aside:has(#nav.service-section-menu){position:static;z-index:auto;border:0;background:transparent;padding:24px 44px 0}
body .shell>aside:has(#nav.service-section-menu)>.label{display:none}
body #nav.service-section-menu{display:block;width:100%;max-width:none;overflow:visible}
body #nav.service-section-menu .wedding-primary{margin:0}
body #nav.service-section-menu #planner-menu-panel{display:block;position:static;max-width:none;max-height:none;padding:14px 0 0;overflow:visible;border:0;box-shadow:none}
body #nav.service-section-menu .nav-group-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 0 12px}
body #nav.service-section-menu .nav-group>summary{justify-content:flex-start;font-size:14px}
body #nav.service-section-menu .nav-group>summary:after{content:'⌄';transform:none}
body #nav.service-section-menu .nav-group>summary:before{content:none}
body #nav.service-section-menu .wedding-primary>.active{background:#53664b;color:white}
body #context-switch .service-section-menu{margin-bottom:16px}
@media(max-width:760px){body .shell>aside:has(#nav.service-section-menu){padding:24px 18px 0}}
@media print{body .local-service-nav{display:none!important}}

/* S39: all four service destinations remain directly visible, also on mobile. */
.service-header .compact-service-nav{flex-wrap:wrap;width:100%;justify-content:flex-start}
.service-header .compact-service-nav .visible-services{display:flex;flex-wrap:wrap;gap:8px;flex:1 1 auto}
.service-header .compact-service-nav .visible-services>a{display:flex!important;align-items:center;justify-content:center;box-sizing:border-box;min-height:44px;padding:9px 12px;border:1px solid #87947e;border-radius:12px;background:#fff;color:#344031;font:600 14px/1.4 system-ui,sans-serif;text-decoration:none;white-space:normal}
.service-header .compact-service-nav .visible-services>a.service-current{border-color:#53664b;box-shadow:inset 0 -3px #53664b;background:#fff;color:#344031}
.service-header .compact-service-nav .visible-services>a.service-current:after{content:'✓';margin-left:8px}
.service-header .compact-service-nav .legacy-account-control{display:none!important}
@media(max-width:1023px){.service-header .compact-service-nav{display:flex!important}.service-header .compact-service-nav .visible-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;flex-basis:100%}.compact-service-nav .compact-account{margin-left:auto}}

/* S39/S43: account choices are direct links and buttons, without a dropdown. */
.service-header .compact-service-nav .compact-account>.compact-menu-panel{position:static;display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0;padding:0;max-height:none;overflow:visible;border:0;box-shadow:none;background:transparent}
.service-header .compact-service-nav .compact-account>.compact-menu-panel :is(a,button){width:auto!important;display:inline-flex!important;border:1px solid #87947e;background:white;min-height:44px}
.service-header .compact-service-nav .compact-account>.compact-menu-panel [hidden]{display:none!important}
.service-header .compact-service-nav .compact-account>.compact-menu-panel .legacy-account-control{display:none!important}
