/* ============ ARDIZIA design tokens (from claude.ai/design project) ============ */
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@400;500;600;700&family=Golos+Text:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap');
:root{
  --font-display:'Oswald','Arial Narrow',sans-serif;
  --font-body:'Golos Text','Helvetica Neue',Arial,sans-serif;
  --font-mono:'JetBrains Mono','Courier New',monospace;

  /* base — brand */
  --ard-coral:#F2544A; --ard-coral-600:#DE4238; --ard-coral-700:#C43D35; --ard-coral-100:#FCE5E3;
  --ard-ink-900:#1B2836; --ard-ink:#263849; --ard-ink-700:#33485C; --ard-ink-600:#41586E;
  --ard-ink-500:#5D7286; --ard-ink-400:#7E90A1; --ard-ink-300:#A3B1BE; --ard-ink-200:#C9D2DA;
  --ard-ink-100:#E2E7EB; --ard-ink-50:#EFF2F4;
  --ard-paper:#F3F2F2; --ard-white:#FFFFFF;
  --ard-success:oklch(0.62 0.11 158); --ard-warning:oklch(0.62 0.11 72); --ard-danger:#C43D35;
  /* aliases */
  --surface-page:var(--ard-paper); --surface-card:var(--ard-white);
  --surface-sunken:var(--ard-ink-50); --surface-inverse:var(--ard-ink);
  --text-heading:var(--ard-ink-900); --text-body:var(--ard-ink-700); --text-muted:var(--ard-ink-500);
  --text-inverse:var(--ard-paper); --text-on-accent:#FFFFFF;
  --accent:var(--ard-coral); --accent-hover:var(--ard-coral-600); --accent-active:var(--ard-coral-700);
  --link:var(--ard-coral-700); --link-hover:var(--ard-coral-600);
  --border:var(--ard-ink-200); --border-strong:var(--ard-ink); --border-hairline:var(--ard-ink-100);
  --focus-ring:0 0 0 2px var(--surface-card),0 0 0 4px var(--ard-coral);

  --text-xs:12px; --text-sm:14px; --text-base:16px; --text-lg:18px; --text-xl:22px;
  --text-2xl:28px; --text-3xl:36px; --text-4xl:48px; --text-5xl:64px;
  --leading-tight:1.1; --leading-snug:1.3; --leading-body:1.55;
  --tracking-display:0.02em; --tracking-caps:0.08em;
  --weight-regular:400; --weight-medium:500; --weight-semibold:600; --weight-bold:700;

  --space-1:4px; --space-2:8px; --space-3:12px; --space-4:16px; --space-5:20px; --space-6:24px;
  --space-8:32px; --space-10:40px; --space-12:48px; --space-16:64px; --space-20:80px; --space-24:96px;
  --container-max:1200px; --container-pad:24px;
  --radius-0:0px; --chamfer:10px; --chamfer-sm:6px;

  --shadow-overlay:0 12px 32px rgba(27,40,54,0.18);
  --shadow-toast:0 6px 20px rgba(27,40,54,0.16);
  --ease-out:cubic-bezier(0.2,0.7,0.3,1);
  --dur-fast:120ms; --dur:180ms;
}
/* signature chamfer — two cut corners echo the octagonal badge */
.ard-chamfer{clip-path:polygon(var(--chamfer) 0,100% 0,100% calc(100% - var(--chamfer)),calc(100% - var(--chamfer)) 100%,0 100%,0 var(--chamfer));}
.ard-chamfer-sm{clip-path:polygon(var(--chamfer-sm) 0,100% 0,100% calc(100% - var(--chamfer-sm)),calc(100% - var(--chamfer-sm)) 100%,0 100%,0 var(--chamfer-sm));}

body{margin:0;font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-body);color:var(--text-body);background:var(--surface-page);-webkit-font-smoothing:antialiased;}
h1,h2,h3{font-family:var(--font-display);color:var(--text-heading);line-height:var(--leading-tight);letter-spacing:var(--tracking-display);text-transform:uppercase;margin:0;}
a{color:var(--link);text-decoration:none;transition:color var(--dur-fast) var(--ease-out);}
a:hover{color:var(--link-hover);}
::selection{background:var(--ard-coral);color:#fff;}
*{box-sizing:border-box;}
img{max-width:100%;}

/* ============ components (from components/*) ============ */
.ard-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--font-body);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:0.06em;border:none;cursor:pointer;background:none;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out);white-space:nowrap;}
.ard-btn:focus-visible{outline:none;box-shadow:var(--focus-ring);}
.ard-btn-sm{height:36px;padding:0 16px;font-size:12px;}
.ard-btn-md{height:44px;padding:0 24px;font-size:13px;}
.ard-btn-lg{height:52px;padding:0 32px;font-size:14px;}
.ard-btn-primary{background:var(--accent);color:var(--text-on-accent);clip-path:polygon(var(--chamfer-sm) 0,100% 0,100% calc(100% - var(--chamfer-sm)),calc(100% - var(--chamfer-sm)) 100%,0 100%,0 var(--chamfer-sm));}
.ard-btn-primary:hover:not(:disabled){background:var(--accent-hover);}
.ard-btn-primary:active:not(:disabled){background:var(--accent-active);}
.ard-btn-primary:disabled{background:var(--ard-ink-200);color:var(--ard-ink-400);cursor:not-allowed;}
.ard-btn-secondary{border:2px solid var(--border-strong);color:var(--ard-ink);background:transparent;}
.ard-btn-secondary:hover:not(:disabled){background:var(--ard-ink);color:var(--text-inverse);}
.ard-btn-secondary:active:not(:disabled){background:var(--ard-ink-900);}
.ard-btn-ghost{color:var(--ard-ink-700);padding-left:8px;padding-right:8px;}
.ard-btn-ghost:hover:not(:disabled){color:var(--accent-active);}
.ard-btn-inverse{background:var(--ard-paper);color:var(--ard-ink);clip-path:polygon(var(--chamfer-sm) 0,100% 0,100% calc(100% - var(--chamfer-sm)),calc(100% - var(--chamfer-sm)) 100%,0 100%,0 var(--chamfer-sm));}
.ard-btn-inverse:hover:not(:disabled){background:#fff;}

.ard-field{display:flex;flex-direction:column;gap:6px;font-family:var(--font-body);}
.ard-field-label{font-size:13px;font-weight:var(--weight-medium);color:var(--ard-ink);}
.ard-field-label .req{color:var(--ard-coral-700);}
.ard-input-wrap{display:flex;align-items:stretch;background:var(--surface-card);border:1px solid var(--border);transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out);}
.ard-input-wrap:focus-within{border-color:var(--border-strong);box-shadow:var(--focus-ring);}
.ard-input{flex:1;min-width:0;border:none;outline:none;background:none;height:42px;padding:0 12px;font:inherit;font-size:15px;color:var(--text-body);}
.ard-input::placeholder{color:var(--ard-ink-400);}
.ard-input-unit{display:flex;align-items:center;padding:0 12px;font-family:var(--font-mono);font-size:13px;color:var(--text-muted);background:var(--surface-sunken);border-left:1px solid var(--border-hairline);}
.ard-field-hint{font-size:12px;color:var(--text-muted);}
.ard-select-wrap{position:relative;display:flex;background:var(--surface-card);border:1px solid var(--border);transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out);}
.ard-select-wrap:focus-within{border-color:var(--border-strong);box-shadow:var(--focus-ring);}
.ard-select{appearance:none;flex:1;border:none;outline:none;background:none;height:42px;padding:0 36px 0 12px;font:inherit;font-size:15px;color:var(--text-body);cursor:pointer;}
.ard-select-chev{position:absolute;right:12px;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--ard-ink-500);font-size:11px;}
.ard-check{display:inline-flex;align-items:flex-start;gap:10px;cursor:pointer;font-family:var(--font-body);font-size:15px;color:var(--text-body);position:relative;}
.ard-check input{position:absolute;opacity:0;width:0;height:0;}
.ard-check-box{flex:none;width:20px;height:20px;border:1px solid var(--ard-ink-300);background:var(--surface-card);display:inline-flex;align-items:center;justify-content:center;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out);margin-top:1px;}
.ard-check-box svg{opacity:0;transition:opacity var(--dur-fast) var(--ease-out);}
.ard-check input:checked + .ard-check-box{background:var(--ard-ink);border-color:var(--ard-ink);}
.ard-check input:checked + .ard-check-box svg{opacity:1;}
.ard-check input:focus-visible + .ard-check-box{box-shadow:var(--focus-ring);}
.ard-check:hover .ard-check-box{border-color:var(--border-strong);}

.ard-card{background:var(--surface-card);border:1px solid var(--border-hairline);font-family:var(--font-body);display:flex;flex-direction:column;}
.ard-card.hov{transition:border-color var(--dur) var(--ease-out);cursor:pointer;}
.ard-card.hov:hover{border-color:var(--border-strong);}
.ard-card-media{display:block;width:100%;object-fit:cover;background:var(--surface-sunken);}
.ard-card-body{padding:var(--space-6);display:flex;flex-direction:column;gap:8px;flex:1;}
.ard-card-eyebrow{font-family:var(--font-mono);font-size:12px;letter-spacing:0.06em;text-transform:uppercase;color:var(--text-muted);}
.ard-card-title{font-family:var(--font-display);font-size:var(--text-xl);text-transform:uppercase;letter-spacing:var(--tracking-display);color:var(--text-heading);line-height:var(--leading-tight);}
.ard-card.inv{background:var(--surface-inverse);border-color:var(--surface-inverse);}
.ard-card.inv .ard-card-title{color:var(--text-inverse);}
.ard-card.inv .ard-card-body{color:var(--ard-ink-300);}

.ard-badge{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 8px;font-family:var(--font-body);font-size:12px;font-weight:var(--weight-semibold);letter-spacing:0.04em;text-transform:uppercase;}
.ard-badge-neutral{background:var(--surface-sunken);color:var(--ard-ink-600);}
.ard-badge-accent{background:var(--ard-coral-100);color:var(--ard-coral-700);}
.ard-badge-success{background:color-mix(in oklab,var(--ard-success) 14%,white);color:color-mix(in oklab,var(--ard-success) 80%,black);}
.ard-badge-inverse{background:var(--ard-ink);color:var(--text-inverse);}

.ard-tag{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;font-family:var(--font-body);font-size:13px;color:var(--ard-ink-700);background:var(--surface-sunken);clip-path:polygon(var(--chamfer-sm) 0,100% 0,100% calc(100% - var(--chamfer-sm)),calc(100% - var(--chamfer-sm)) 100%,0 100%,0 var(--chamfer-sm));}
.ard-tag.sel{background:var(--ard-ink);color:var(--text-inverse);}
.ard-tag.click{cursor:pointer;transition:background var(--dur-fast) var(--ease-out);}
.ard-tag.click:hover:not(.sel){background:var(--ard-ink-100);}

.ard-tabs{display:flex;gap:4px;border-bottom:1px solid var(--border-hairline);font-family:var(--font-body);flex-wrap:wrap;}
.ard-tab{all:unset;box-sizing:border-box;cursor:pointer;padding:10px 16px 12px;font-size:13px;font-weight:var(--weight-semibold);letter-spacing:0.06em;text-transform:uppercase;color:var(--text-muted);border-bottom:2px solid transparent;margin-bottom:-1px;transition:color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out);}
.ard-tab:hover{color:var(--ard-ink);}
.ard-tab:focus-visible{box-shadow:var(--focus-ring);}
.ard-tab.on{color:var(--ard-ink);border-bottom-color:var(--ard-coral);}

.ard-dialog-back{position:fixed;inset:0;background:rgba(27,40,54,0.6);display:flex;align-items:center;justify-content:center;padding:24px;z-index:100;animation:ardFade var(--dur) var(--ease-out);}
@keyframes ardFade{from{opacity:0}to{opacity:1}}
.ard-dialog{background:var(--surface-card);box-shadow:var(--shadow-overlay);width:100%;max-width:520px;clip-path:polygon(var(--chamfer) 0,100% 0,100% calc(100% - var(--chamfer)),calc(100% - var(--chamfer)) 100%,0 100%,0 var(--chamfer));font-family:var(--font-body);}
.ard-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:24px 24px 0;}
.ard-dialog-title{font-family:var(--font-display);font-size:var(--text-xl);text-transform:uppercase;letter-spacing:var(--tracking-display);color:var(--text-heading);line-height:var(--leading-tight);}
.ard-dialog-x{all:unset;cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:var(--ard-ink-500);font-size:18px;}
.ard-dialog-x:hover{color:var(--ard-ink);}
.ard-dialog-body{padding:12px 24px 24px;font-size:15px;color:var(--text-body);max-height:70vh;overflow:auto;}
.ard-dialog-foot{display:flex;justify-content:flex-end;gap:12px;padding:0 24px 24px;}

.ard-toast{display:flex;gap:12px;align-items:flex-start;background:var(--ard-ink);color:var(--text-inverse);box-shadow:var(--shadow-toast);padding:14px 16px;max-width:380px;font-family:var(--font-body);animation:ardToastIn var(--dur) var(--ease-out);}
@keyframes ardToastIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.ard-toast-mark{flex:none;width:10px;height:10px;margin-top:5px;background:var(--ard-coral);}
.ard-toast-mark.success{background:var(--ard-success);}
.ard-toast-title{font-weight:var(--weight-semibold);font-size:14px;color:#fff;}
.ard-toast-desc{font-size:13px;color:var(--ard-ink-300);margin-top:2px;}
.ard-toast-x{all:unset;cursor:pointer;color:var(--ard-ink-400);font-size:14px;line-height:1;margin-left:auto;padding:2px;}
.ard-toast-x:hover{color:#fff;}
.ard-toast-stack{position:fixed;right:24px;bottom:24px;display:flex;flex-direction:column;gap:10px;z-index:110;}

/* ============ site layout & responsive ============ */
.wrap{max-width:var(--container-max);margin:0 auto;padding:0 var(--container-pad);}
.grid{display:grid;gap:20px;}
.grid-2{grid-template-columns:repeat(2,1fr);}
.grid-3{grid-template-columns:repeat(3,1fr);}
.grid-4{grid-template-columns:repeat(4,1fr);}
.split{display:grid;grid-template-columns:1.05fr 1fr;gap:48px;align-items:center;}
.split-wide{display:grid;grid-template-columns:1.4fr 1fr;gap:48px;align-items:start;}
.mono{font-family:var(--font-mono);}
.spec-table{width:100%;border-collapse:collapse;}
.spec-table td{padding:10px 0;border-bottom:1px solid var(--border-hairline);vertical-align:top;}
.spec-table td:first-child{font-size:14px;color:var(--text-muted);width:45%;padding-right:16px;}
.spec-table td:last-child{font-family:var(--font-mono);font-size:13px;color:var(--ard-ink);}
.price-table{width:100%;border-collapse:collapse;font-size:14px;}
.price-table th{font-family:var(--font-mono);font-size:11px;letter-spacing:0.08em;text-transform:uppercase;color:var(--ard-ink-400);text-align:left;padding:8px 12px 8px 0;border-bottom:1px solid var(--border);font-weight:500;}
.price-table td{padding:10px 12px 10px 0;border-bottom:1px solid var(--border-hairline);}
.price-table td:last-child{font-family:var(--font-mono);font-size:13px;color:var(--ard-ink);white-space:nowrap;}
.nav-desktop{display:flex;gap:24px;flex:1;}
.nav-burger{display:none;}
.header-phone{font-family:var(--font-mono);font-size:14px;color:var(--ard-ink);display:flex;align-items:center;gap:8px;white-space:nowrap;flex-shrink:0;}
.nav-mobile{display:none;}
@media(max-width:1020px){
  .header-phone{display:none;}
}
@media(max-width:880px){
  .nav-desktop{display:none;}
  .nav-burger{display:flex;}
  .nav-mobile.open{display:flex;flex-direction:column;gap:0;background:#fff;border-bottom:1px solid var(--border-hairline);}
  .nav-mobile.open a{padding:14px var(--container-pad);border-top:1px solid var(--border-hairline);font-size:15px;font-weight:500;color:var(--ard-ink-700);cursor:pointer;}
  .split,.split-wide{grid-template-columns:1fr;gap:32px;}
  .grid-4{grid-template-columns:repeat(2,1fr);}
  .grid-3{grid-template-columns:repeat(2,1fr);}
  h1{font-size:var(--text-3xl) !important;}
}
@media(max-width:560px){
  .grid-4,.grid-3,.grid-2{grid-template-columns:1fr;}
  h1{font-size:var(--text-2xl) !important;}
}

.ard-switch{display:inline-flex;align-items:center;gap:10px;cursor:pointer;font-size:15px;color:var(--text-body);position:relative;}
.ard-switch input{position:absolute;opacity:0;width:0;height:0;}
.ard-switch-track{flex:none;width:40px;height:22px;background:var(--ard-ink-200);display:inline-flex;align-items:center;padding:2px;transition:background var(--dur-fast) var(--ease-out);}
.ard-switch-thumb{width:18px;height:18px;background:#fff;transition:transform var(--dur-fast) var(--ease-out);}
.ard-switch input:checked + .ard-switch-track{background:var(--ard-ink);}
.ard-switch input:checked + .ard-switch-track .ard-switch-thumb{transform:translateX(18px);}
.ard-switch input:focus-visible + .ard-switch-track{box-shadow:var(--focus-ring);}
.brand-grid-2{display:grid;grid-template-columns:380px 1fr;gap:48px;align-items:start;}
.brand-row{display:flex;gap:20px;flex-wrap:wrap;}
.brand-row>*{flex:1;min-width:180px;}
@media(max-width:880px){.brand-grid-2{grid-template-columns:1fr;}}
