.bridal-reference,.bridal-detail{font-size:1rem;line-height:1.65;color:var(--text-primary,#18202b)}
.bridal-reference{margin-block:2.5rem}.bridal-reference-group{border-top:2px solid var(--border-color,#d5dbe4);padding-top:1.5rem;margin-block:2.5rem}.bridal-group-label{display:flex;align-items:center;gap:.6rem;font-size:.95rem;font-weight:700;color:var(--theme-chip-text);margin:0 0 1.3rem}.bridal-group-label .material-symbols-outlined{font-size:1.35rem}
.bridal-reference-block{scroll-margin-top:6rem;max-width:76rem;margin-block:1.5rem 2rem}.bridal-reference-block h2{font-size:clamp(1.35rem,2.1vw,1.85rem);line-height:1.25;margin-block:0 .8rem}.bridal-reference-block p,.bridal-reference-block li{max-width:80ch}.bridal-reference-block ul{padding-left:1.3rem}.bridal-reference-block li+li{margin-top:.55rem}.bridal-reference-links{display:flex;gap:.5rem 1rem;flex-wrap:wrap}.bridal-reference-links a,.bridal-detail a{color:var(--theme-link);text-decoration:underline;text-underline-offset:.18em}.bridal-reference-links a{padding-block:.35rem}
.bridal-toc-group{margin-block:1rem}.bridal-toc-group .bridal-group-label{margin-bottom:.3rem}.bridal-toc-group ul{display:flex;gap:.35rem 1rem;flex-wrap:wrap;list-style:none;padding:0}.bridal-toc-group a{display:inline-block;padding:.45rem .2rem;line-height:1.4}
.bridal-early-contents{margin-block:1.5rem 2rem}.bridal-toc-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem 1.25rem}.bridal-early-contents .bridal-toc-group{margin:0;min-width:0}.bridal-early-contents .bridal-group-label{align-items:flex-start;font-size:.95rem;line-height:1.35}.bridal-early-contents .bridal-group-label a{padding-top:0;min-height:2.75rem}.bridal-early-contents summary{cursor:pointer;padding:.55rem .15rem;font-size:.875rem;min-height:2.75rem}.bridal-early-contents details ul{display:block;margin-block:.25rem .75rem}.bridal-early-contents details a{min-height:2.75rem}.bridal-reference-group{scroll-margin-top:6rem}.bridal-preset-explanation{max-width:75ch;font-size:1rem;line-height:1.6}
@media(max-width:1100px){.bridal-toc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:350px){.bridal-toc-grid{grid-template-columns:1fr}}
.bridal-table-scroll{overflow:auto;max-width:100%;border:1px solid var(--border-color,#d5dbe4);border-radius:.65rem}.bridal-comparison{border-collapse:collapse;width:100%;min-width:32rem;font-size:1rem}.bridal-comparison caption{text-align:left;padding:1rem;font-weight:600}.bridal-comparison th,.bridal-comparison td{padding:.9rem;text-align:left;vertical-align:top;border-top:1px solid var(--border-color,#d5dbe4)}
.bridal-language{display:flex;gap:.1rem;border:1px solid var(--border-color,#cbd0db);border-radius:.6rem;padding:.1rem;align-items:center}.bridal-language a{min-width:2.4rem;min-height:2.65rem;display:flex;align-items:center;justify-content:center;text-decoration:none;color:inherit;font-size:.875rem;font-weight:600;border-radius:.45rem}.bridal-language a[aria-current=page]{background:var(--primary-color,#515ec4);color:#fff}
.bridal-selected,[data-bridal-preset][aria-pressed=true]{outline:2px solid var(--theme-primary);outline-offset:2px}[data-bridal-summary] button,.bridal-action{min-height:44px;padding:.55rem .85rem;border:1px solid var(--btn-ghost-border);border-radius:var(--r-btn);background:var(--btn-ghost-bg);color:var(--btn-ghost-text);cursor:pointer}[data-bridal-summary] li{margin-block:.25rem}[data-remove-group]{margin-left:.3rem;min-width:2.75rem}.bridal-status{font-size:1rem;padding:.8rem 1rem;border-left:3px solid var(--theme-border-strong);background:var(--theme-soft-bg)}
.bridal-ranked-slide{flex:0 0 min(82vw,19rem);scroll-snap-align:start;max-width:19rem}.bridal-ranked-card{height:100%;border:1px solid var(--border-color,#d5dbe4);border-radius:1rem;overflow:hidden;background:var(--surface-color,#fff)}.bridal-ranked-card img{width:100%;height:16rem;object-fit:cover}.bridal-ranked-card [class*=indexCardBody]{padding:1rem}.bridal-ranked-card [class*=indexCardActions]{display:flex;gap:.75rem;flex-wrap:wrap}.bridal-ranked-card a{min-height:2.75rem}.bridal-ranked-card [class*=indexCardTitle]{font-size:1.12rem}[data-bridal-priority]{display:flex;gap:1rem}[hidden]{display:none!important}
.bridal-detail{max-width:78rem;margin:auto;padding:clamp(1rem,3vw,2.5rem)}.bridal-detail h1{font-size:clamp(1.75rem,4vw,2.8rem);line-height:1.15;margin-block:1.5rem}.bridal-detail h2{font-size:1.5rem;line-height:1.25}.bridal-detail section{margin-block:2.5rem;scroll-margin-top:6rem;max-width:76ch}.bridal-detail-hero{display:grid;grid-template-columns:1.25fr .75fr;gap:2rem;align-items:start}.bridal-detail figure{margin:0}.bridal-detail-hero img{display:block;width:100%;height:auto;max-height:42rem;object-fit:contain;border-radius:1rem}.bridal-detail figcaption{font-size:.875rem;padding-top:.5rem}.bridal-action{display:inline-flex;align-items:center;text-decoration:none!important;margin:.6rem 0}.bridal-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.bridal-related-grid article{border-top:1px solid var(--border-color,#d5dbe4);padding-top:1rem}.bridal-related-grid h3{font-size:1.125rem}
@media(max-width:700px){.bridal-detail-hero{grid-template-columns:1fr}.bridal-related-grid{grid-template-columns:1fr}.bridal-reference-group{margin-block:1.8rem}.bridal-language a{min-width:2rem;min-height:2.75rem}.bridal-toc-group ul{display:block}.bridal-toc-group a{min-height:2.75rem}.site-header .header-icons{gap:.3rem}.site-header .brand img{max-width:clamp(85px,23vw,130px)}}
@media(prefers-reduced-motion:reduce){.bridal-reference *{scroll-behavior:auto}}

/* Bridal-owned controls only. Shared header/sidebar/bottom navigation stay owned by the shell. */
#guided-selection fieldset{scroll-margin-top:96px}
@media(max-width:700px){#guided-selection fieldset,#bridal-current-choice{scroll-margin-top:128px}}
.bridal-task-nav,.bridal-choice-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem 1rem}
.bridal-task-nav a,.bridal-choice-actions a{display:inline-flex;align-items:center;min-height:44px;padding:.5rem .7rem;overflow-wrap:anywhere}
.bridal-choice{border-top:1px solid var(--border-color,#d5dbe4);padding-block:1rem;scroll-margin-block:6rem;min-width:0}
.bridal-choice h3{margin-top:0}.bridal-choice img,[data-bridal-suggestion] img{width:96px;height:144px;object-fit:contain;max-width:100%;border-radius:.5rem}
.bridal-choice pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:.9rem;max-width:100%}
.bridal-choice summary,.bridal-method summary{cursor:pointer;padding-block:.65rem;min-height:44px}
.bridal-method{margin-block:1rem;max-width:78ch}.bridal-method p{font-size:1rem;line-height:1.6}
.bridal-preset-choice-label{display:block;font-size:.8rem;font-weight:400}.bridal-image-notice{font-size:.9rem;line-height:1.45;max-width:65ch}
[data-style-id]{scroll-margin-top:6rem}[data-bridal-select][aria-current=true]{outline:2px solid var(--theme-primary);outline-offset:2px}
@media(max-width:700px){
 [data-bridal-option],[data-bridal-select]{min-height:44px!important}
 [class*="WeddingHairstylesPage-module__"][class$="__stickyMobileCta"]{position:static!important;inset:auto!important;width:auto;max-width:100%;margin:1rem 0;z-index:auto}
 .bridal-choice-actions{gap:.4rem}.bridal-choice-actions a{padding-inline:.4rem}.bridal-choice{max-width:100%}
}

.bridal-catalogue-tools{display:flex;flex-wrap:wrap;align-items:end;gap:.8rem 1rem;padding:1rem;margin-block:1rem;border:1px solid var(--border-color,#d5dbe4);border-radius:.8rem;background:var(--surface-color,#fff)}
.bridal-catalogue-tools label{display:grid;gap:.4rem;flex:1 1 15rem;min-width:0;font-size:1rem}
.bridal-catalogue-tools input,.bridal-catalogue-tools select,.bridal-catalogue-tools button{box-sizing:border-box;max-width:100%;min-width:0;min-height:44px;font:inherit;color:var(--form-text);background:var(--form-bg);border:1px solid var(--form-border);border-radius:var(--r-btn);padding:.65rem}
.bridal-catalogue-tools button{cursor:pointer}.bridal-catalogue-tools p{flex-basis:100%;margin:.2rem 0;font-size:1rem}
.bridal-catalogue-tools :focus-visible,[data-bridal-viewport]:focus-visible,[data-bridal-rail]:focus-visible{outline:2px solid var(--theme-link);outline-offset:3px}
.bridal-image-placeholder{display:flex;align-items:center;justify-content:center;min-height:16rem;margin:0;padding:1.5rem;font-size:1rem;line-height:1.5;text-align:center;background:var(--surface-color,#f5f6fa);border:1px dashed var(--border-color,#bcc3d2);border-radius:.7rem}
.bridal-rail-help{font-size:.9rem;line-height:1.5}[data-bridal-rail]:disabled{opacity:.4;cursor:default}

/* R5: local control roles use the shared Chameleon contract.
   Header/language controls remain unchanged for the shared-shell owner.
   Resetting/removing a filter is a reversible secondary action. */
:is(.bridal-action,
  :where(.bridal-detail) a.bridal-action,
  [data-bridal-summary] button,
  .bridal-catalogue-tools button,
  [data-bridal-option],
  [data-bridal-preset],
  [data-bridal-performer-filter],
  [data-bridal-rail],
  .WeddingHairstylesTop100Section-module__r32PKa__indexCardAction,
  .WeddingHairstylesTop100Section-module__r32PKa__bridgeAction,
  .WeddingHairstylesTop100Section-module__r32PKa__ctaSecondary,
  .WeddingHairstylesPage-module__t6nnJq__recommendationSecondaryAction) {
  box-sizing:border-box;min-height:44px;border-radius:var(--r-btn);font-family:var(--font-sans);
  background:var(--btn-ghost-bg);border-color:var(--btn-ghost-border);color:var(--btn-ghost-text);
}
:is(.bridal-action,
  :where(.bridal-detail) a.bridal-action,
  [data-bridal-summary] button,
  .bridal-catalogue-tools button,
  [data-bridal-option],
  [data-bridal-preset],
  [data-bridal-performer-filter],
  [data-bridal-rail],
  .WeddingHairstylesTop100Section-module__r32PKa__indexCardAction,
  .WeddingHairstylesTop100Section-module__r32PKa__bridgeAction,
  .WeddingHairstylesTop100Section-module__r32PKa__ctaSecondary,
  .WeddingHairstylesPage-module__t6nnJq__recommendationSecondaryAction):not(:disabled):not([aria-disabled="true"]):hover {background:var(--btn-ghost-bg-hover);border-color:var(--theme-border-strong);color:var(--btn-ghost-text)}
:is(.bridal-action,
  :where(.bridal-detail) a.bridal-action,
  [data-bridal-summary] button,
  .bridal-catalogue-tools button,
  [data-bridal-option],
  [data-bridal-preset],
  [data-bridal-performer-filter],
  [data-bridal-rail],
  .WeddingHairstylesTop100Section-module__r32PKa__indexCardAction,
  .WeddingHairstylesTop100Section-module__r32PKa__bridgeAction,
  .WeddingHairstylesTop100Section-module__r32PKa__ctaSecondary,
  .WeddingHairstylesPage-module__t6nnJq__recommendationSecondaryAction):not(:disabled):not([aria-disabled="true"]):active {background:var(--btn-ghost-bg-active);border-color:var(--theme-border-strong);color:var(--btn-ghost-text)}
:is(.WeddingHairstylesPage-module__t6nnJq__btnPrimary,
  .WeddingHairstylesTop100Section-module__r32PKa__priorityHandoffButton,
  .WeddingHairstylesPage-module__t6nnJq__recommendationPrimaryAction) {min-height:44px;border-radius:var(--r-btn);font-family:var(--font-sans);background:var(--theme-primary);border-color:var(--theme-primary);color:var(--theme-primary-contrast)}
:is(.WeddingHairstylesPage-module__t6nnJq__btnPrimary,
  .WeddingHairstylesTop100Section-module__r32PKa__priorityHandoffButton,
  .WeddingHairstylesPage-module__t6nnJq__recommendationPrimaryAction):not(:disabled):not([aria-disabled="true"]):hover {background:var(--theme-primary-hover);border-color:var(--theme-primary-hover);color:var(--theme-primary-hover-contrast, var(--theme-primary-contrast));box-shadow:none}
:is(.WeddingHairstylesPage-module__t6nnJq__btnPrimary,
  .WeddingHairstylesTop100Section-module__r32PKa__priorityHandoffButton,
  .WeddingHairstylesPage-module__t6nnJq__recommendationPrimaryAction):not(:disabled):not([aria-disabled="true"]):active {background:var(--theme-primary-active);border-color:var(--theme-primary-active);color:var(--theme-primary-active-contrast, var(--theme-primary-contrast));box-shadow:none}
:is([data-bridal-option], [data-bridal-preset], [data-bridal-performer-filter])[aria-pressed="true"] {background:var(--theme-primary);border-color:var(--theme-primary);color:var(--theme-primary-contrast)}
:is([data-bridal-option], [data-bridal-preset], [data-bridal-performer-filter])[aria-pressed="true"]:not(:disabled):not([aria-disabled="true"]):hover {background:var(--theme-primary-hover);border-color:var(--theme-primary-hover);color:var(--theme-primary-hover-contrast, var(--theme-primary-contrast))}
:is([data-bridal-option], [data-bridal-preset], [data-bridal-performer-filter])[aria-pressed="true"]:not(:disabled):not([aria-disabled="true"]):active {background:var(--theme-primary-active);border-color:var(--theme-primary-active);color:var(--theme-primary-active-contrast, var(--theme-primary-contrast))}
.bridal-action[data-bridal-select][aria-current="true"] {background:var(--theme-soft-bg-strong);border-color:var(--theme-primary)}
.bridal-reference-links a:hover,.bridal-detail a:not(.bridal-action):hover {color:var(--theme-link-hover)}
.bridal-catalogue-tools input,.bridal-catalogue-tools select {font-family:var(--font-sans)}
:is(.bridal-action,
  :where(.bridal-detail) a.bridal-action,
  [data-bridal-summary] button,
  .bridal-catalogue-tools button,
  [data-bridal-option],
  [data-bridal-preset],
  [data-bridal-performer-filter],
  [data-bridal-rail],
  .WeddingHairstylesTop100Section-module__r32PKa__indexCardAction,
  .WeddingHairstylesTop100Section-module__r32PKa__bridgeAction,
  .WeddingHairstylesTop100Section-module__r32PKa__ctaSecondary,
  .WeddingHairstylesPage-module__t6nnJq__recommendationSecondaryAction,
  .WeddingHairstylesPage-module__t6nnJq__btnPrimary,
  .WeddingHairstylesTop100Section-module__r32PKa__priorityHandoffButton,
  .WeddingHairstylesPage-module__t6nnJq__recommendationPrimaryAction,
  .bridal-catalogue-tools input,
  .bridal-catalogue-tools select,
  [data-bridal-viewport],
  .bridal-task-nav a,
  .bridal-choice-actions a,
  .bridal-toc-group a,
  .bridal-reference-links a,
  .bridal-choice summary,
  .bridal-method summary):focus-visible {outline:2px solid var(--theme-link);outline-offset:3px;box-shadow:0 0 0 5px var(--theme-focus-ring)}
:is(.bridal-action,
  :where(.bridal-detail) a.bridal-action,
  [data-bridal-summary] button,
  .bridal-catalogue-tools button,
  [data-bridal-option],
  [data-bridal-preset],
  [data-bridal-performer-filter],
  [data-bridal-rail],
  .WeddingHairstylesTop100Section-module__r32PKa__indexCardAction,
  .WeddingHairstylesTop100Section-module__r32PKa__bridgeAction,
  .WeddingHairstylesTop100Section-module__r32PKa__ctaSecondary,
  .WeddingHairstylesPage-module__t6nnJq__recommendationSecondaryAction,
  .WeddingHairstylesPage-module__t6nnJq__btnPrimary,
  .WeddingHairstylesTop100Section-module__r32PKa__priorityHandoffButton,
  .WeddingHairstylesPage-module__t6nnJq__recommendationPrimaryAction):is(:disabled,[aria-disabled="true"]) {opacity:.55;cursor:default;transform:none;box-shadow:none}
/* Contextual secondary buttons on the existing dark sections keep a neutral role.
   Separate selectors do not raise the specificity of the common control group. */
:is(.WeddingHairstylesPage-module__t6nnJq__trustBridgeActions,.WeddingHairstylesPage-module__t6nnJq__performerRequestActions) .WeddingHairstylesPage-module__t6nnJq__btnSecondary {
  min-height:44px;border-radius:var(--r-btn);font-family:var(--font-sans);
  background:var(--btn-ghost-bg);border-color:var(--btn-ghost-border);color:var(--btn-ghost-text);
}
:is(.WeddingHairstylesPage-module__t6nnJq__trustBridgeActions,.WeddingHairstylesPage-module__t6nnJq__performerRequestActions) .WeddingHairstylesPage-module__t6nnJq__btnSecondary:not(:disabled):not([aria-disabled="true"]):hover {background:var(--btn-ghost-bg-hover);border-color:var(--theme-border-strong);color:var(--btn-ghost-text)}
:is(.WeddingHairstylesPage-module__t6nnJq__trustBridgeActions,.WeddingHairstylesPage-module__t6nnJq__performerRequestActions) .WeddingHairstylesPage-module__t6nnJq__btnSecondary:not(:disabled):not([aria-disabled="true"]):active {background:var(--btn-ghost-bg-active);border-color:var(--theme-border-strong);color:var(--btn-ghost-text)}
:is(.WeddingHairstylesPage-module__t6nnJq__trustBridgeActions,.WeddingHairstylesPage-module__t6nnJq__performerRequestActions) .WeddingHairstylesPage-module__t6nnJq__btnSecondary:focus-visible {outline:2px solid var(--theme-link);outline-offset:3px;box-shadow:0 0 0 5px var(--theme-focus-ring)}
:is(.WeddingHairstylesPage-module__t6nnJq__trustBridgeActions,.WeddingHairstylesPage-module__t6nnJq__performerRequestActions) .WeddingHairstylesPage-module__t6nnJq__btnSecondary:is(:disabled,[aria-disabled="true"]) {opacity:.55;cursor:default;transform:none;box-shadow:none}
[data-bridal-performer-filter] strong {background:var(--theme-chip-bg);color:var(--theme-chip-text)}
[data-bridal-performer-filter][aria-pressed="true"] strong {background:var(--theme-soft-bg-strong);color:var(--theme-chip-text)}
:is(.WeddingHairstylesPage-module__t6nnJq__btnPrimary,.WeddingHairstylesTop100Section-module__r32PKa__priorityHandoffButton,.WeddingHairstylesPage-module__t6nnJq__recommendationPrimaryAction):not(:disabled):not([aria-disabled="true"]):focus-visible {outline:2px solid var(--theme-link);outline-offset:3px;box-shadow:0 0 0 5px var(--theme-focus-ring)}

/* Owned brief action: make the existing inquiry handoff visible without adding chrome. */
#bridal-current-choice .bridal-choice-actions [data-bridal-inquiry] {
  min-height:44px;max-width:100%;box-sizing:border-box;justify-content:center;
  border:1px solid var(--theme-primary);border-radius:var(--r-btn);
  background:var(--theme-primary);color:var(--theme-primary-contrast);
  font-family:var(--font-sans);font-weight:600;line-height:1.35;
  text-align:center;text-decoration:none;
}
#bridal-current-choice .bridal-choice-actions [data-bridal-inquiry]:not([aria-disabled="true"]):hover {
  background:var(--theme-primary-hover);border-color:var(--theme-primary-hover);
  color:var(--theme-primary-hover-contrast,var(--theme-primary-contrast));
}
#bridal-current-choice .bridal-choice-actions [data-bridal-inquiry]:not([aria-disabled="true"]):active {
  background:var(--theme-primary-active);border-color:var(--theme-primary-active);
  color:var(--theme-primary-active-contrast,var(--theme-primary-contrast));
}
