/* Duke access: the split-screen composition and typing moment follow the supplied reference. */
.duke-account-access .duke-account-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;width:100%;max-width:none;margin:0;padding:24px;min-height:100svh;align-items:stretch;background:#fff;color:#171717}
.duke-account-signed-out #brx-header,.duke-account-signed-out #brx-footer{display:none}
.duke-account-signed-out #brx-content{padding:0;min-height:100svh}
.duke-account-access .duke-auth-form-side{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;padding:96px 32px 72px}
.duke-account-access .duke-auth-brand{position:absolute;top:20px;left:24px;display:block;width:132px;line-height:0}
.duke-account-access .duke-auth-wordmark{display:block;width:100%;height:auto;filter:brightness(0)}
.duke-account-access .duke-auth-form-stack{display:flex;flex-direction:column;width:100%;max-width:400px;gap:36px}
.duke-account-access .duke-account-intro{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;width:100%;max-width:none}
.duke-account-access .duke-account-heading{font:500 32px/1.15 'Instrument Sans',Arial,sans-serif;letter-spacing:-.025em;max-width:none;margin:0;text-wrap:balance}
.duke-account-access .duke-account-description{font-size:15px;line-height:1.5;color:#646464;max-width:36ch;margin:0;text-wrap:balance}
.duke-account-access .duke-auth-store-link{display:flex;justify-content:center;position:absolute;bottom:20px;left:0;width:100%;text-align:center;color:#171717;font-size:14px;text-decoration:underline;text-underline-offset:4px}
.duke-account-access .duke-account-panel{width:100%;padding:0;min-width:0}
.duke-account-access .duke-account-panel .woocommerce{display:block!important;width:100%}
.duke-account-access .duke-account-panel form,.duke-account-access .duke-account-panel .woocommerce form.woocommerce-form{display:block;width:100%;max-width:none;text-align:left;border:0!important;border-radius:0;margin:0;padding:0!important;line-height:1.5;gap:0}
.duke-account-access .duke-account-panel .form-row{width:100%;float:none;padding:0;margin:0 0 20px}
.duke-account-access .duke-account-panel label{display:block;font-size:14px;line-height:1.4;font-weight:500;margin:0 0 8px;color:#171717}
.duke-account-access .duke-account-panel input.input-text,.duke-account-access .duke-account-panel input[type=email],.duke-account-access .duke-account-panel input[type=password],.duke-account-access .duke-account-panel input[type=text]{width:100%;height:48px;min-height:48px;padding:12px 14px;border:1px solid #d6d6d3;border-radius:8px;background:#fff;box-shadow:none;font:400 15px/1.5 'Instrument Sans',Arial,sans-serif;color:#171717;caret-color:#171717;transition:border-color .18s}
.duke-account-access .duke-account-panel input::placeholder{color:#646464;opacity:1}
.duke-account-access :is(input,button,a,select):focus-visible{outline:2px solid #171717;outline-offset:4px}
.duke-account-access .duke-account-panel input:focus{border-color:#171717}
.duke-account-access .duke-account-panel .password-input{display:block;position:relative}
.duke-account-access .duke-account-panel .password-input input{padding-right:56px}
.duke-account-access .duke-account-field-heading{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px}
.duke-account-access .duke-account-field-heading label{margin:0}
.duke-account-access .duke-account-field-heading a{font-size:13px;line-height:1.4;text-underline-offset:4px}
.duke-account-access .duke-account-field-heading a:hover{text-decoration:underline}
.duke-account-access .duke-account-options{display:flex;align-items:center;gap:16px;margin:0 0 22px;padding-top:14px;font-size:14px}
.duke-account-access .duke-account-options label{display:flex;align-items:center;gap:8px;margin:0;font-size:14px;font-weight:400;cursor:pointer}
.duke-account-access .duke-account-options input{accent-color:#171717;width:16px;height:16px}
.duke-account-access .duke-account-panel :is(button.button,a.button){display:flex;justify-content:center;align-items:center;gap:12px;width:100%;height:48px;min-height:48px;padding:12px 22px;border:1px solid #171717;border-radius:999px;background:#171717;color:#fff;font:500 15px/1.35 'Instrument Sans',Arial,sans-serif;text-align:center;text-decoration:none;cursor:pointer;transition:background-color .2s,color .2s}
.duke-account-access .duke-account-panel button.button:hover,.duke-account-access .duke-account-panel a.button:hover{background:#363636;color:#fff}
.duke-account-access .duke-account-panel button.button:disabled{cursor:not-allowed;opacity:.5}
.duke-account-access .duke-account-switch{margin:28px 0 0;padding:0;border:0;font-size:14px;line-height:1.6;text-align:center;color:#646464}
.duke-account-access .duke-account-switch a{display:inline;color:#171717;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px;white-space:nowrap}
.duke-account-access .duke-field-help,.duke-account-access .woocommerce-password-hint{display:block;font-size:13px;line-height:1.5;color:#646464;margin-top:8px}
.duke-account-access .woocommerce-password-strength{margin-top:10px;font-size:13px;padding:8px 12px;border-radius:6px;background:#f4f4f2;color:#171717}
.duke-account-access .woocommerce-privacy-policy-text{font-size:13px;line-height:1.6;color:#646464;margin:0 0 22px}
.duke-account-access .woocommerce-privacy-policy-text p{margin:0}
.duke-account-access .duke-account-panel .woocommerce-notices-wrapper:empty{display:none}
.duke-account-access .duke-account-panel :is(.woocommerce-error,.woocommerce-message,.woocommerce-info){background:#f4f4f2;border:0;border-radius:8px;padding:16px;margin:0 0 24px;color:#171717;font-size:14px;line-height:1.5;list-style:none}
.duke-account-access .duke-account-panel :is(.woocommerce-error,.woocommerce-message,.woocommerce-info)::before{display:none}
.duke-account-access .duke-account-panel .woocommerce-error a{display:inline;text-decoration:underline;text-underline-offset:4px}
.duke-account-access .duke-account-social .nsl-container{padding:0!important}
.duke-account-access .duke-account-social .nsl-container-buttons{width:100%!important;display:block!important;padding:0!important}
.duke-account-access .duke-account-social .nsl-container-buttons>a{display:block;width:100%;margin:0!important}
.duke-account-access .duke-account-social .nsl-button{height:48px;min-height:48px;border-radius:999px!important;box-shadow:none!important;border:1px solid #d6d6d3!important;justify-content:center}
.duke-account-access .duke-account-social .nsl-button-label-container{font-family:inherit!important;flex:none!important;font-size:15px!important}
.duke-account-access .duke-account-or{display:flex;align-items:center;gap:14px;margin:24px 0;color:#646464;font-size:13px}
.duke-account-access .duke-account-or::before,.duke-account-access .duke-account-or::after{content:'';height:1px;background:#d6d6d3;flex:1}
.duke-account-access .duke-account-panel :is(.show-password-input,.duke-password-toggle){position:absolute;right:2px;top:50%;transform:translateY(-50%);width:44px;height:44px;margin:0;padding:0;border:0;background:transparent;color:#171717;cursor:pointer;border-radius:6px}
.duke-account-access .duke-account-panel :is(.show-password-input,.duke-password-toggle){display:flex;align-items:center;justify-content:center}
.duke-account-access .duke-account-panel :is(.show-password-input,.duke-password-toggle)::after{content:none}
.duke-account-access :is(.show-password-input,.duke-password-toggle) svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.duke-account-access :is(.show-password-input,.duke-password-toggle) .duke-password-strike{display:none}
.duke-account-access :is(.show-password-input,.duke-password-toggle).display-password .duke-password-strike{display:block}
.duke-account-access .duke-account-panel .woocommerce-ResetPassword>p:first-child{font-size:14px;line-height:1.6;margin:0 0 24px;color:#646464}
.duke-account-access .duke-account-back{display:block;margin-top:28px;font-size:14px;text-align:center;text-decoration:underline;text-underline-offset:4px}
.duke-account-access .duke-account-visual{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;min-height:600px;border-radius:16px;background:#e8ebec;isolation:isolate}
.duke-account-access .duke-auth-photo{position:absolute;inset:0;z-index:-1;width:100%;height:100%;object-fit:cover;object-position:65% center}
.duke-account-access .duke-auth-callout{display:flex;align-items:center;justify-content:space-between;gap:20px;width:min(408px,calc(100% - 64px));min-height:72px;padding:12px 16px 12px 24px;border-radius:999px;background:#fff;color:#171717;box-shadow:0 8px 30px rgb(0 0 0 / .12);font-size:18px;line-height:1.4}
.duke-account-access .duke-auth-phrases{display:block;min-width:0;white-space:nowrap;font-size:18px;line-height:1.4}
.duke-account-access .duke-auth-phrase{display:none}
.duke-account-access .duke-auth-phrase:first-child{display:inline}
.duke-account-access .duke-auth-typing{display:inline}
.duke-account-access .duke-auth-typing::after{content:'';display:inline-block;margin-left:2px;width:1px;height:1em;vertical-align:-.12em;background:currentColor;animation:duke-auth-caret 1s steps(1,end) infinite}
.duke-account-access .duke-auth-visual-paused .duke-auth-typing::after{animation:none;opacity:0}
.duke-account-access .duke-auth-arrow{width:40px;height:40px;padding:11px;border-radius:50%;background:#171717;stroke:#fff;color:#fff;flex:none}
.duke-account-access .duke-auth-arrow path{stroke:#fff}
.duke-account-access ::selection{background:#171717;color:#fff}
@keyframes duke-auth-caret{0%,45%{opacity:1}46%,100%{opacity:0}}
.duke-account-signed-in .duke-account-shell{grid-template-columns:1fr;gap:42px;max-width:1440px}
.duke-account-signed-in .duke-account-heading{max-width:none}
.duke-account-signed-in .duke-account-description{max-width:none}
.duke-account-signed-in .duke-account-intro{gap:16px;max-width:none}
.duke-account-signed-in .duke-account-panel .woocommerce{display:grid!important;grid-template-columns:240px minmax(0,1fr);gap:clamp(40px,6vw,90px)}
.duke-account-signed-in .duke-account-panel .woocommerce-notices-wrapper{grid-column:1/-1}
.duke-account-signed-in .duke-account-panel .woocommerce-MyAccount-navigation,.duke-account-signed-in .duke-account-panel .woocommerce-MyAccount-content{float:none;width:100%;min-width:0;background:transparent}
.duke-account-signed-in .duke-account-panel .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;background:transparent}
.duke-account-signed-in .duke-account-panel .woocommerce-MyAccount-navigation li{margin:0;padding:0;background:transparent;border:0}
.duke-account-signed-in .duke-account-panel .woocommerce-MyAccount-navigation a{display:block;padding:15px 0;border-bottom:1px solid #d9d9d6;font-size:15px;line-height:1.5}
.duke-account-signed-in .woocommerce-MyAccount-navigation .is-active a{font-weight:500;border-color:#171717}
.duke-account-signed-in .woocommerce-MyAccount-content{font-size:16px;line-height:1.6}
.duke-account-signed-in .woocommerce-MyAccount-content>p{max-width:65ch;margin:0 0 24px}
.duke-account-signed-in .woocommerce-MyAccount-content>p a{text-decoration:underline;text-underline-offset:4px}
.duke-account-signed-in .woocommerce-MyAccount-content h2{font-size:28px;font-weight:500;margin:0 0 20px}
.duke-account-signed-in .woocommerce-MyAccount-content h3{font-size:20px;font-weight:500;margin:28px 0 18px}
.duke-account-signed-in .woocommerce-MyAccount-content table{font-size:14px;width:100%;border-collapse:collapse}
.duke-account-signed-in .woocommerce-MyAccount-content th,.duke-account-signed-in .woocommerce-MyAccount-content td{padding:14px 10px;text-align:left;border-bottom:1px solid #d9d9d6}
.duke-account-signed-in .duke-account-panel button.button{max-width:360px}
.duke-account-signed-in .woocommerce-MyAccount-content .woocommerce-info .button{max-width:220px;margin:12px 0 0}
.duke-account-signed-in .duke-account-shell{min-height:650px;padding:72px var(--gutter) 96px;margin:auto}
.duke-account-signed-in .duke-auth-form-side{padding:0;display:block}
.duke-account-signed-in .duke-auth-form-stack{max-width:none;gap:42px}
.duke-account-signed-in .duke-account-intro{align-items:flex-start;text-align:left}
.duke-account-signed-in .duke-account-heading{font-size:48px}
.duke-account-signed-in :is(.duke-account-visual,.duke-auth-brand,.duke-auth-store-link){display:none}
@media(max-width:899px){
 .duke-account-access .duke-account-shell{grid-template-columns:1fr;gap:0;padding:24px;min-height:100svh}
 .duke-account-access .duke-auth-form-side{padding:100px 0 72px;min-height:calc(100svh - 48px)}
 .duke-account-access .duke-auth-brand{left:0;top:8px;width:120px}
 .duke-account-access .duke-auth-form-stack{max-width:400px;gap:32px}
 .duke-account-access .duke-account-heading{font-size:30px}
 .duke-account-access .duke-account-description{max-width:31ch}
 .duke-account-access .duke-account-visual{display:none}
 .duke-account-access .duke-auth-store-link{bottom:8px}
 .duke-account-access .duke-account-field-heading a{font-size:12px}
 .duke-account-signed-in .duke-account-shell{padding:40px var(--gutter) 64px;min-height:0}
 .duke-account-signed-in .duke-auth-form-side{padding:0;min-height:0}
 .duke-account-signed-in .duke-auth-form-stack{max-width:none}
 .duke-account-signed-in .duke-account-panel .woocommerce{grid-template-columns:1fr;gap:32px}
 .duke-account-signed-in .woocommerce-MyAccount-navigation ul{display:flex;flex-wrap:wrap;gap:0 20px;border-bottom:1px solid #d9d9d6}
 .duke-account-signed-in .duke-account-panel .woocommerce-MyAccount-navigation a{border-bottom:0;font-size:14px}
 .duke-account-signed-in .woocommerce-MyAccount-navigation .is-active a{border-bottom:1px solid #171717}
 .duke-account-signed-in .duke-account-panel .woocommerce-MyAccount-content{overflow-wrap:anywhere}
 .duke-account-signed-in .woocommerce-MyAccount-content table{table-layout:fixed}
}
@media(prefers-reduced-motion:reduce){.duke-account-access .duke-account-panel :is(input,button,a){transition:none}.duke-account-access .duke-auth-typing::after{animation:none;display:none}}
