@import url('../generated/tokens.css');
@font-face{font-family:'DM Serif Display';font-weight:400;font-style:normal;font-display:swap;src:url('../fonts/dm-serif-display-regular.woff2') format('woff2')}
@font-face{font-family:'DM Sans';font-weight:100 1000;font-style:normal;font-display:swap;src:url('../fonts/dm-sans-variable.woff2') format('woff2')}
*,*::before,*::after{box-sizing:border-box}
:root{color:var(--bw-semantic-color-text-primary);background:var(--bw-semantic-color-surface-primary);font-family:var(--bw-semantic-font-body);font-synthesis:none;font-size:100%}
body{margin:0;font-size:var(--bw-semantic-type-body);line-height:var(--bw-semantic-line-height-body)}
button,input,textarea,select{font:inherit;color:inherit}
button,a,input,textarea,select,summary{touch-action:manipulation}
:focus-visible{outline:var(--bw-semantic-focus-width) solid var(--bw-semantic-color-focus);outline-offset:var(--bw-semantic-focus-offset)}
[hidden]{display:none!important}
h1,h2,h3,p,ul,ol{margin-block:0}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-underline-offset:.2em}
a:hover{text-decoration-thickness:.15em}
button{cursor:pointer}
button:disabled{cursor:not-allowed}
.bw-container{width:100%;max-width:var(--bw-semantic-layout-container-max);margin-inline:auto;padding-inline:var(--bw-semantic-layout-gutter-small)}
.bw-section{padding-block:var(--bw-semantic-space-section)}
.bw-quiet{background:var(--bw-semantic-color-surface-quiet)}
.bw-stack>*+*{margin-top:var(--bw-semantic-space-flow)}
.bw-cluster{display:flex;gap:var(--bw-semantic-space-gap);flex-wrap:wrap;align-items:center}
.bw-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--bw-semantic-layout-card-min)),1fr));gap:var(--bw-semantic-space-gap)}
.bw-prose{max-width:var(--bw-semantic-layout-prose-max);overflow-wrap:anywhere}
.bw-display{font-family:var(--bw-semantic-font-display);font-weight:var(--bw-primitive-weight-regular);font-size:clamp(var(--bw-semantic-type-display-small),5vw,var(--bw-semantic-type-display));line-height:var(--bw-semantic-line-height-heading);letter-spacing:-.012em}
.bw-title{font-family:var(--bw-semantic-font-display);font-weight:var(--bw-primitive-weight-regular);font-size:var(--bw-semantic-type-title);line-height:var(--bw-semantic-line-height-heading);overflow-wrap:anywhere}
.bw-heading{font-family:var(--bw-semantic-font-body);font-weight:var(--bw-primitive-weight-semibold);font-size:var(--bw-semantic-type-heading);line-height:var(--bw-semantic-line-height-heading)}
.bw-small{font-size:var(--bw-semantic-type-small)}
.bw-label{display:block;font-weight:var(--bw-primitive-weight-medium)}
.bw-btn{display:inline-flex;justify-content:center;align-items:center;gap:var(--bw-primitive-space-8);min-height:var(--bw-semantic-size-touch);padding:var(--bw-primitive-space-8) var(--bw-primitive-space-24);border:var(--bw-semantic-border-width) solid var(--bw-semantic-color-action-primary);border-radius:var(--bw-semantic-radius-button);background:var(--bw-semantic-color-action-primary);color:var(--bw-semantic-color-text-on-action);font-weight:var(--bw-primitive-weight-semibold);text-decoration:none;line-height:var(--bw-semantic-line-height-control);transition:transform var(--bw-primitive-duration-short) var(--bw-semantic-easing-standard)}
.bw-btn:hover:not(:disabled){text-decoration:underline;text-underline-offset:.2em}
.bw-btn:active:not(:disabled){transform:translateY(var(--bw-semantic-size-press))}
.bw-btn:disabled{opacity:var(--bw-semantic-opacity-disabled)}
.bw-btn--secondary{background:var(--bw-semantic-color-surface-primary);color:var(--bw-semantic-color-text-primary)}
.bw-btn--text{background:transparent;color:var(--bw-semantic-color-text-primary);border-color:transparent;text-decoration:underline}
.bw-btn--icon{padding:var(--bw-primitive-space-8);min-width:var(--bw-semantic-size-touch)}
.bw-btn:focus-visible{outline:var(--bw-semantic-focus-width) solid var(--bw-semantic-color-focus);outline-offset:var(--bw-semantic-focus-offset);box-shadow:0 0 0 var(--bw-semantic-focus-offset) var(--bw-semantic-color-surface-primary)}
.bw-inverse{color:var(--bw-semantic-color-text-on-action);background:var(--bw-semantic-color-action-primary)}
.bw-inverse :focus-visible{outline-color:var(--bw-semantic-color-text-on-action)}
.bw-field{display:grid;gap:var(--bw-primitive-space-8)}
.bw-input{width:100%;min-height:var(--bw-semantic-size-touch);padding:var(--bw-primitive-space-8) var(--bw-primitive-space-16);border:var(--bw-semantic-border-width) solid var(--bw-semantic-color-border-control);border-radius:var(--bw-semantic-radius-field);background:var(--bw-semantic-color-surface-primary);font-size:var(--bw-semantic-type-control)}
textarea.bw-input{min-height:var(--bw-semantic-size-textarea);resize:vertical}
.bw-input[aria-invalid=true]{border-color:var(--bw-semantic-color-feedback-error);border-width:var(--bw-semantic-focus-width)}
.bw-input:disabled{opacity:var(--bw-semantic-opacity-disabled)}
.bw-choice{display:flex;align-items:flex-start;gap:var(--bw-primitive-space-8);padding-block:var(--bw-primitive-space-8);min-height:var(--bw-semantic-size-touch)}
.bw-choice input{width:var(--bw-semantic-size-choice);height:var(--bw-semantic-size-choice);flex:none;accent-color:var(--bw-semantic-color-action-primary)}
fieldset{min-width:0;margin:0;padding:var(--bw-primitive-space-16);border:var(--bw-semantic-border-width) solid var(--bw-semantic-color-border-control);border-radius:var(--bw-semantic-radius-field)}
legend{font-weight:var(--bw-primitive-weight-medium);padding-inline:var(--bw-primitive-space-8)}
.bw-error{color:var(--bw-semantic-color-feedback-error);font-size:var(--bw-semantic-type-small)}
.bw-notice{display:flex;align-items:start;gap:var(--bw-primitive-space-16);padding:var(--bw-primitive-space-16);border-inline-start:var(--bw-semantic-size-notice-border) solid currentColor;background:var(--bw-semantic-color-surface-quiet)}
.bw-notice--success{color:var(--bw-semantic-color-feedback-success)}
.bw-notice--error{color:var(--bw-semantic-color-feedback-error)}
.bw-notice--warning{color:var(--bw-semantic-color-feedback-warning)}
.bw-notice--info{color:var(--bw-semantic-color-feedback-information)}
.bw-card{padding:var(--bw-primitive-space-24);border:var(--bw-semantic-border-width) solid var(--bw-semantic-color-border-quiet);border-radius:var(--bw-semantic-radius-image);background:var(--bw-semantic-color-surface-primary);min-width:0;overflow-wrap:anywhere}
.bw-card img{width:100%;aspect-ratio:var(--bw-semantic-ratio-image);object-fit:cover;border-radius:var(--bw-semantic-radius-image)}
.bw-badge{display:inline-block;border-radius:var(--bw-semantic-radius-field);padding:var(--bw-primitive-space-8) var(--bw-primitive-space-16);background:var(--bw-semantic-color-surface-subtle);font-size:var(--bw-semantic-type-small)}
.bw-rule{border:0;border-top:var(--bw-semantic-border-width) solid var(--bw-semantic-color-border-quiet);margin-block:var(--bw-primitive-space-24)}
.bw-nav{display:flex;gap:var(--bw-primitive-space-24);flex-wrap:wrap;align-items:center}
.bw-nav a{padding-block:var(--bw-primitive-space-8);min-height:var(--bw-semantic-size-touch);display:inline-flex;align-items:center}
.bw-nav [aria-current=page]{font-weight:var(--bw-primitive-weight-semibold);text-decoration-thickness:.15em}
.bw-breadcrumb{display:flex;gap:var(--bw-primitive-space-8);flex-wrap:wrap;list-style:none;padding:0;font-size:var(--bw-semantic-type-small)}
.bw-tabs{display:flex;gap:var(--bw-primitive-space-8);flex-wrap:wrap;border-bottom:var(--bw-semantic-border-width) solid var(--bw-semantic-color-border-quiet);padding-bottom:var(--bw-primitive-space-8)}
.bw-tab{border:var(--bw-semantic-border-width) solid transparent;border-radius:var(--bw-semantic-radius-field);padding:var(--bw-primitive-space-8) var(--bw-primitive-space-16);min-height:var(--bw-semantic-size-touch);background:var(--bw-semantic-color-surface-quiet)}
.bw-tab[aria-selected=true]{background:var(--bw-semantic-color-action-primary);color:var(--bw-semantic-color-text-on-action)}
.bw-panel{padding-block:var(--bw-primitive-space-24)}
.bw-accordion{border-bottom:var(--bw-semantic-border-width) solid var(--bw-semantic-color-border-control)}
.bw-accordion summary,.bw-disclosure summary{cursor:pointer;padding-block:var(--bw-primitive-space-16);min-height:var(--bw-semantic-size-touch);font-weight:var(--bw-primitive-weight-medium)}
.bw-accordion>div{padding-bottom:var(--bw-primitive-space-24);max-width:var(--bw-semantic-layout-prose-max)}
.bw-dialog{border:var(--bw-semantic-border-width) solid var(--bw-semantic-color-border-control);border-radius:var(--bw-semantic-radius-image);padding:var(--bw-primitive-space-32);width:min(calc(100% - var(--bw-primitive-space-32)),var(--bw-semantic-size-dialog));max-height:calc(100% - var(--bw-primitive-space-32));overflow:auto;color:var(--bw-semantic-color-text-primary);background:var(--bw-semantic-color-surface-primary)}
.bw-dialog::backdrop{background:var(--bw-semantic-color-overlay)}
.bw-empty{padding:var(--bw-primitive-space-32);text-align:center;background:var(--bw-semantic-color-surface-quiet)}
.bw-spinner{display:inline-block;width:var(--bw-semantic-size-choice);height:var(--bw-semantic-size-choice);border:var(--bw-semantic-focus-width) solid currentColor;border-right-color:transparent;border-radius:var(--bw-primitive-radius-999);animation:bw-spin var(--bw-semantic-duration-loading) linear infinite;flex:none}
@keyframes bw-spin{to{transform:rotate(360deg)}}
.bw-icon-label{display:flex;gap:var(--bw-primitive-space-16);align-items:center}
.bw-icon-disc{display:grid;place-items:center;width:var(--bw-semantic-size-disc);height:var(--bw-semantic-size-disc);border-radius:var(--bw-primitive-radius-999);background:var(--bw-semantic-color-surface-subtle);flex:none}
.bw-icon-disc img{width:var(--bw-primitive-space-32);height:var(--bw-primitive-space-32)}
.bw-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(min-width:768px){.bw-container{padding-inline:var(--bw-semantic-layout-gutter-large)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:0ms!important;animation:none!important}}
@media(forced-colors:active){.bw-btn,.bw-tab,.bw-input,.bw-card,.bw-notice{border:1px solid CanvasText}.bw-btn:focus-visible{box-shadow:none}.bw-spinner{border-color:CanvasText}}
