/* V125 – mobile-first responsive and accessibility foundation. */
@font-face{font-family:Armata;src:url('/assets/armata-regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
:root{
  --pa-space-1:.25rem;--pa-space-2:.5rem;--pa-space-3:.75rem;--pa-space-4:1rem;--pa-space-5:1.5rem;--pa-space-6:2rem;--pa-space-7:3rem;
  --pa-radius-sm:.5rem;--pa-radius-md:.875rem;--pa-radius-lg:1.25rem;
  --pa-target:2.75rem;--pa-content:78rem;--pa-measure:72ch;
  --pa-focus:#005fcc;--pa-error:#8b1e16;--pa-error-bg:#fff2f0;--pa-success:#185c2e;--pa-success-bg:#edf6ef;
  --pa-link:#132018;--pa-disabled:#686e69;
  color-scheme:light;
}
html{box-sizing:border-box;scroll-behavior:smooth;text-size-adjust:100%;-webkit-text-size-adjust:100%;overflow-x:hidden}
*,*::before,*::after{box-sizing:inherit}
body{max-width:100%;overflow-x:hidden;overflow-wrap:anywhere}
img,svg,video,canvas,iframe{max-width:100%}
img{height:auto}
main{min-width:0}
p,li,dd{max-width:var(--pa-measure)}
a{color:var(--pa-link);text-underline-offset:.18em;text-decoration-thickness:.08em}
a:hover{text-decoration-thickness:.13em}
button,input,select,textarea{font:inherit}
button,[type=button],[type=submit],[type=reset],a.btn,.admin-primary,.admin-secondary,.icon-btn,.menu-btn,[role=button]{min-block-size:var(--pa-target)}
button,[type=button],[type=submit],[type=reset],a.btn,.admin-primary,.admin-secondary,[role=button]{min-inline-size:var(--pa-target)}
input:not([type=checkbox]):not([type=radio]):not([type=color]),select,textarea{min-block-size:var(--pa-target);max-inline-size:100%;font-size:max(1rem,16px)}
textarea{resize:vertical}
button:disabled,[aria-disabled=true],input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;opacity:.68}
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:.2rem solid var(--pa-focus)!important;outline-offset:.18rem!important;box-shadow:none!important}
:where(a,button,input,select,textarea,summary,[tabindex]):focus:not(:focus-visible){outline:none}
.pa-skip-link{position:fixed;z-index:100000;inset-block-start:.5rem;inset-inline-start:.5rem;transform:translateY(-180%);padding:.75rem 1rem;background:#fff;color:#111;border:.18rem solid var(--pa-focus);border-radius:.5rem;font-weight:700}
.pa-skip-link:focus{transform:none}
.pa-visually-hidden{position:absolute!important;inline-size:1px!important;block-size:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
[hidden]{display:none!important}
[aria-busy=true]{cursor:progress}
[role=status],[role=alert],.form-error,.field-error{overflow-wrap:anywhere}
.form-error,.field-error,.pa-a11y-error{color:var(--pa-error);background:var(--pa-error-bg);border-inline-start:.25rem solid currentColor;padding:.75rem 1rem}
.pa-success{color:var(--pa-success);background:var(--pa-success-bg);border-inline-start:.25rem solid currentColor;padding:.75rem 1rem}
.pa-error-summary{margin-block:1rem;padding:1rem;border:.125rem solid var(--pa-error);border-radius:var(--pa-radius-sm);background:var(--pa-error-bg);color:var(--pa-error)}
.pa-error-summary:focus{outline:.2rem solid var(--pa-focus);outline-offset:.18rem}

/* Dialogs, drawers and overlays retain context and never exceed the viewport. */
:where(.modal,.admin-modal,.search-layer,.mobile-menu,.filter-drawer,[role=dialog]){max-inline-size:100%;max-block-size:100dvh;overscroll-behavior:contain}
:where(.modal-card,.admin-modal-card,.modal-content,.search-panel,[role=dialog]>.panel){inline-size:min(100% - 1rem,48rem);max-block-size:calc(100dvh - 1rem);overflow:auto;margin:auto}
body.pa-dialog-open{overflow:hidden;touch-action:none}
.mobile-menu[aria-hidden=false],.filter-drawer[aria-hidden=false]{visibility:visible}

/* Tables keep their semantic table structure and gain an intentional scroll region. */
.pa-table-scroll{max-inline-size:100%;overflow:auto;overscroll-behavior-inline:contain;border-radius:var(--pa-radius-sm)}
.pa-table-scroll:focus{outline:.2rem solid var(--pa-focus);outline-offset:.18rem}
table{max-inline-size:100%;border-collapse:collapse}
th{text-align:start}
th,td{vertical-align:top;overflow-wrap:anywhere}

/* Storefront reflow and safe areas. */
.site-header,.announcement{padding-inline:max(var(--pa-space-4),env(safe-area-inset-left)) max(var(--pa-space-4),env(safe-area-inset-right))}
.mobile-menu,.filter-drawer,.app-bottom-nav{padding-block-end:max(var(--pa-space-4),env(safe-area-inset-bottom))}
.site-header{min-inline-size:0}
.header-actions{flex-shrink:0}
.brand{min-inline-size:0}
.brand-main,.brand-sub{overflow-wrap:normal;word-break:normal}
.hero-content,.section-head,.editorial-hero,.product-detail,.cart-layout,.checkout-layout,.account-layout{min-inline-size:0}
.hero h1,.editorial-hero h1,.product-title,h1{font-size:clamp(2rem,8vw,5.5rem);line-height:1.04}
h2{font-size:clamp(1.45rem,5vw,3.5rem);line-height:1.12}
.products-grid,.collections-grid,.knowledge-grid,.archive-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr))}
.product-card,.collection-card,.knowledge-entry-card{min-inline-size:0}
.product-card a,.collection-card a{display:block}
.sticky-buy,.mobile-purchase-bar{padding-block-end:max(var(--pa-space-3),env(safe-area-inset-bottom))}
.owner-content-blocks{display:grid;gap:clamp(1.5rem,5vw,4rem);inline-size:min(100% - 2rem,var(--pa-content));margin-inline:auto;padding-block:clamp(2rem,6vw,6rem)}
.owner-content-block{display:grid;gap:clamp(1rem,4vw,3rem);align-items:center;padding:clamp(1rem,4vw,3rem);border-radius:var(--radius-ui,var(--pa-radius-lg))}
.owner-content-block[data-layout=split]{grid-template-columns:repeat(2,minmax(0,1fr))}
.owner-content-block[data-layout=narrow]{max-inline-size:52rem;margin-inline:auto}
.owner-content-block[data-layout=wide]{inline-size:100%}
.owner-content-block[data-align=center]{text-align:center;justify-items:center}
.owner-content-block[data-align=end]{text-align:end;justify-items:end}
.owner-content-block[data-background=paper]{background:var(--paper,#faf9f5)}
.owner-content-block[data-background=soft]{background:color-mix(in srgb,var(--bg,#f3f1eb) 72%,var(--paper,#fff))}
.owner-content-block[data-background=deep]{background:var(--deep,#132018);color:var(--paper,#faf9f5)}
.owner-content-block[data-background=deep] a{color:inherit}
.owner-content-block figure{margin:0;min-inline-size:0}
.owner-content-block img,.owner-content-block video{display:block;inline-size:100%;border-radius:calc(var(--radius-ui,var(--pa-radius-lg)) * .72)}
.owner-content-copy{white-space:normal}
@media (max-width:40rem){.owner-content-block[data-layout=split]{grid-template-columns:1fr}.owner-content-block[data-visibility=desktop]{display:none}}
@media (min-width:40.01rem){.owner-content-block[data-visibility=mobile]{display:none}}

/* Admin: a usable mobile shell, not a compressed desktop canvas. */
.admin-topbar{padding-inline:max(var(--pa-space-3),env(safe-area-inset-left)) max(var(--pa-space-3),env(safe-area-inset-right))}
.pa-admin-menu-toggle{display:none;align-items:center;justify-content:center;gap:.5rem;border:1px solid currentColor;background:transparent;border-radius:var(--pa-radius-sm);padding:.5rem .75rem}
.admin-main,.admin-content,#adminView{min-inline-size:0}
.admin-panel,.commerce-kpis>*,.site-builder-status>*{min-inline-size:0}
.admin-panel-head,.site-builder-toolbar,.site-builder-hero-actions,.modal-actions{flex-wrap:wrap;gap:var(--pa-space-3)}
.admin-panel-head>*{min-inline-size:0}
.admin-panel-head h2{overflow-wrap:anywhere}
.site-builder-grid,.form-grid-2,.form-grid-3{grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr))}
.site-builder-layout{grid-template-columns:minmax(0,1fr) minmax(16rem,24rem)}
.site-theme-colors{grid-template-columns:repeat(auto-fit,minmax(min(100%,11rem),1fr))}
.site-builder-form label{min-inline-size:0}

/* Self-service preview and deterministic assistant. */
.site-a11y-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-block:1rem}
.site-a11y-summary article{padding:1rem;border:1px solid color-mix(in srgb,currentColor 20%,transparent);border-radius:var(--pa-radius-md);background:var(--paper,#fff)}
.site-a11y-summary strong{display:block;font-size:1.55rem}
.site-a11y-results{display:grid;gap:.5rem;list-style:none;padding:0;margin:1rem 0}
.site-a11y-results li{max-width:none;padding:.75rem 1rem;border-inline-start:.3rem solid #6b716c;background:color-mix(in srgb,var(--paper,#fff) 90%,#777 10%)}
.site-a11y-results li[data-severity=blocker]{border-color:var(--pa-error);background:var(--pa-error-bg);color:var(--pa-error)}
.site-a11y-results li[data-severity=warning]{border-color:#8a5a00;background:#fff7df;color:#553700}
.site-a11y-results small{display:block;margin-block-start:.25rem}
.site-device-preview{display:grid;gap:.75rem}
.site-device-toolbar{display:flex;flex-wrap:wrap;gap:.5rem}
.site-device-toolbar button[aria-pressed=true]{background:var(--deep,#132018);color:var(--paper,#fff)}
.site-device-canvas{display:grid;justify-items:center;overflow:auto;padding:1rem;background:#d9d9d5;border-radius:var(--pa-radius-md)}
.site-device-frame{display:block;inline-size:100%;block-size:42rem;border:0;background:#fff;box-shadow:0 .5rem 2rem #0002;transition:inline-size .2s ease}
.site-device-frame[data-device=mobile]{inline-size:min(100%,390px)}
.site-device-frame[data-device=tablet]{inline-size:min(100%,768px)}
.site-device-frame[data-device=desktop]{inline-size:min(100%,1280px)}
.site-content-blocks{display:grid;gap:1rem}
.site-content-block{padding:1rem;border:1px solid color-mix(in srgb,currentColor 18%,transparent);border-radius:var(--pa-radius-md);background:var(--paper,#fff)}
.site-content-block-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-block-end:1rem}
.site-content-block-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));gap:.75rem}
.site-content-block-grid .span2{grid-column:1/-1}

@media (max-width:70rem){
  .site-builder-layout{grid-template-columns:1fr}
  .site-builder-layout>aside{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:1rem}
}
@media (max-width:56rem){
  :root{--pa-target:3rem}
  .pa-admin-menu-toggle{display:inline-flex;position:fixed;z-index:9998;inset-block-start:max(.5rem,env(safe-area-inset-top));inset-inline-start:max(.5rem,env(safe-area-inset-left));background:var(--paper,#fff);color:var(--ink,#171a17);box-shadow:0 .25rem 1rem #0002}
  .admin-sidebar{position:fixed!important;z-index:9999!important;inset:0 auto 0 0!important;inline-size:min(88vw,22rem)!important;max-block-size:100dvh;overflow:auto;transform:translateX(-105%);transition:transform .2s ease;box-shadow:0 0 2rem #0005;padding-block-end:max(1rem,env(safe-area-inset-bottom))}
  .admin-sidebar.pa-open{transform:none}
  .admin-shell,.admin-main{margin-inline-start:0!important;padding-inline:clamp(.75rem,3vw,1.5rem)!important;inline-size:100%!important}
  .admin-topbar{padding-inline-start:4.25rem!important;min-block-size:4rem}
  .commerce-kpis,.site-builder-status{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .site-a11y-summary{grid-template-columns:1fr}
  .modal-actions>*{flex:1 1 12rem}
}
@media (max-width:40rem){
  .announcement{font-size:.72rem;gap:.4rem;justify-content:center;text-align:center}
  .announcement i{display:none}
  .brand-sub{display:none}
  .hero-cta,.section-head,.footer-bottom,.admin-panel-head,.site-builder-toolbar,.site-builder-hero-actions{align-items:stretch;flex-direction:column}
  .hero-cta>*{inline-size:100%;text-align:center}
  .commerce-kpis,.site-builder-status{grid-template-columns:1fr!important}
  .site-builder-section-body,.admin-panel{padding-inline:.75rem!important}
  .site-device-canvas{padding:.5rem}
  .site-device-frame{block-size:36rem}
  .admin-modal,.modal{padding:.5rem!important}
}
@media (max-width:20rem){
  :root{--pa-space-4:.75rem}
  .header-actions{gap:.125rem}
  .icon-btn,.menu-btn{min-inline-size:2.75rem}
}
@media (forced-colors:active){
  :where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid Highlight!important}
  .form-error,.field-error,.pa-a11y-error,.pa-success{border:2px solid CanvasText}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
@media print{
  .pa-skip-link,.pa-admin-menu-toggle,.mobile-menu,.site-device-preview{display:none!important}
}
