:root {
  color-scheme: light;
  --paper: #f7f8f9;
  --surface: #ffffff;
  --ink: #10181d;
  --muted: #637079;
  --faint: #89949a;
  --line: #dce2e5;
  --line-strong: #b7c2c8;
  --navy: #183b4b;
  --navy-deep: #102c39;
  --blue-soft: #e9f0f3;
  --orange: #eb731d;
  --green: #267354;
  --shadow: 0 24px 70px rgb(19 44 55 / .10);
  font-family: "Aptos", "Segoe UI", Arial, sans-serif;
}
:root[data-theme="dark"] {
  color-scheme: dark;
  --paper: #0f1518;
  --surface: #171f23;
  --ink: #f3f6f7;
  --muted: #a7b1b6;
  --faint: #7d898f;
  --line: #2c383e;
  --line-strong: #52636c;
  --navy: #8ab2c3;
  --navy-deep: #d7e8ef;
  --blue-soft: #203039;
  --shadow: 0 24px 70px rgb(0 0 0 / .28);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); font-size: 16px; line-height: 1.55; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
.announcement-bar { min-height: 30px; display: flex; justify-content: center; gap: clamp(18px, 4vw, 56px); align-items: center; padding: 5px 20px; background: var(--navy-deep); color: #dce9ee; font-size: .7rem; letter-spacing: .035em; }
.announcement-bar a { color: #fff; font-weight: 750; }
.site-header { position: sticky; top: 0; z-index: 20; height: 72px; border-bottom: 1px solid var(--line); background: color-mix(in srgb, var(--surface) 95%, transparent); backdrop-filter: blur(18px); }
.site-header-inner { width: min(100%, 1500px); height: 100%; margin: auto; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 34px; padding: 0 clamp(20px, 5vw, 72px); }
.site-brand { display: flex; align-items: center; gap: 10px; letter-spacing: .035em; line-height: .9; }
.site-brand > span:last-child { display: grid; grid-template-columns: auto auto; align-items: end; gap: 5px; }
.site-brand strong { font-size: .85rem; }
.site-brand small { color: var(--orange); font-size: .85rem; font-weight: 850; }
.brand-mark { display: grid; place-items: center; width: 37px; height: 37px; overflow: hidden; border-radius: 6px; background: #17242b; }
.brand-mark img { width: 31px; height: 31px; object-fit: contain; }
.site-nav { justify-self: center; display: flex; align-items: center; gap: 26px; }
.site-nav > a, .nav-menu-button { position: relative; padding: 24px 0 22px; border: 0; background: transparent; color: var(--muted); font-size: .88rem; font-weight: 650; cursor: pointer; }
.site-nav > a:hover, .site-nav > a[aria-current="page"], .nav-menu-button:hover, .nav-menu.open .nav-menu-button { color: var(--ink); }
.site-nav > a[aria-current="page"]::after { content: ""; position: absolute; right: 0; bottom: -1px; left: 0; height: 2px; background: var(--navy); }
.nav-menu { position: relative; }
.nav-menu-button { display: flex; align-items: center; gap: 6px; }
.nav-menu-button span { font-size: .72rem; transition: transform .18s ease; }
.nav-menu.open .nav-menu-button span { transform: rotate(180deg); }
.nav-dropdown { position: absolute; top: calc(100% - 1px); left: -24px; display: none; width: min(380px, 88vw); padding: 10px; border: 1px solid var(--line); background: var(--surface); box-shadow: var(--shadow); }
.nav-dropdown-right { right: -24px; left: auto; }
.nav-menu.open .nav-dropdown { display: grid; }
.nav-dropdown a { display: grid; grid-template-columns: 34px 1fr; gap: 1px 12px; padding: 14px; border-radius: 4px; }
.nav-dropdown a:hover { background: var(--blue-soft); }
.nav-dropdown a > span { grid-row: 1 / 3; color: var(--faint); font: 700 .69rem/1.6 ui-monospace, monospace; }
.nav-dropdown a strong { font-size: .9rem; }
.nav-dropdown a small { color: var(--muted); font-size: .78rem; }
.header-actions { display: flex; align-items: center; gap: 8px; }
.theme-button, .nav-toggle { min-height: 38px; border: 1px solid var(--line); border-radius: 5px; background: var(--surface); color: var(--ink); cursor: pointer; }
.theme-button { width: 38px; }
.nav-toggle { display: none; padding: 7px 11px; }
.account-link { padding: 9px 14px; border-radius: 5px; background: var(--navy-deep); color: #fff; font-size: .86rem; font-weight: 750; }
:root[data-theme="dark"] .account-link { background: #d9e8ee; color: #10232c; }
.eyebrow { margin: 0 0 12px; color: var(--navy); font-size: .72rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.home-hero { min-height: 720px; display: grid; grid-template-columns: minmax(0, 1fr); align-content: center; padding: clamp(70px, 10vw, 140px) clamp(24px, 7vw, 112px) 0; border-bottom: 1px solid var(--line); background: linear-gradient(180deg,var(--surface) 0 78%,var(--blue-soft) 78%); }
.hero-copy { width: min(100%, 1500px); margin: auto; display: flex; flex-direction: column; align-items: center; text-align: center; }
.hero-copy h1, .page-heading h1, .plaque-landing h1, .auth-context h1 { max-width: 850px; margin: 0; font-size: clamp(3.1rem, 7vw, 7.1rem); font-weight: 620; letter-spacing: -.065em; line-height: .88; }
.hero-lede { max-width: 720px; margin: 28px 0 0; color: var(--muted); font-size: 1.08rem; line-height: 1.72; }
.hero-copy .button-row { justify-content: center; }
.button-row { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 34px; }
.button { display: inline-flex; min-height: 45px; align-items: center; justify-content: center; padding: 11px 17px; border: 1px solid transparent; border-radius: 5px; font-weight: 760; cursor: pointer; }
.button.primary { background: var(--navy-deep); color: #fff; }
:root[data-theme="dark"] .button.primary { background: #d9e8ee; color: #10232c; }
.button.secondary { border-color: var(--line); background: var(--surface); }
.button.text-button { color: var(--navy); padding-inline: 8px; }
.button.full { width: 100%; }
.button:disabled, .google-button:disabled { cursor: not-allowed; opacity: .48; }
.hero-facts { width: min(100%, 1500px); display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; margin: 0 auto; padding: 20px 0 24px; border-top: 1px solid var(--line-strong); }
.hero-facts div { padding: 0 22px; border-right: 1px solid var(--line-strong); text-align: center; }
.hero-facts div:last-child { border-right: 0; }
.hero-facts dt { color: var(--faint); font-size: .73rem; text-transform: uppercase; letter-spacing: .08em; }
.hero-facts dd { margin: 4px 0 0; font-size: .9rem; font-weight: 700; }
.hero-shop-links { width: min(100%, 1180px); display: grid; grid-template-columns: repeat(3,1fr); margin: clamp(64px,8vw,104px) auto 0; border: 1px solid var(--line-strong); border-bottom: 0; background: var(--surface); box-shadow: 0 22px 60px rgb(19 44 55 / .07); }
.hero-shop-links a { display: grid; grid-template-columns: auto 1fr auto; grid-template-rows: auto auto; gap: 0 16px; align-items: center; min-height: 112px; padding: 24px 28px; border-right: 1px solid var(--line); }
.hero-shop-links a:last-child { border-right: 0; }
.hero-shop-links span { grid-row: 1 / 3; color: var(--faint); font: 700 .7rem/1 ui-monospace,monospace; }
.hero-shop-links strong { font-size: 1rem; }
.hero-shop-links small { color: var(--muted); font-size: .78rem; }
.hero-shop-links b { grid-column: 3; grid-row: 1 / 3; color: var(--navy); transition: transform .2s ease; }
.hero-shop-links a:hover { background: var(--blue-soft); }
.hero-shop-links a:hover b { transform: translateX(4px); }
.shop-directory { display: flex; flex-direction: column; justify-content: space-between; gap: 70px; padding: clamp(54px, 7vw, 100px); border-left: 1px solid var(--line); background: var(--blue-soft); }
.shop-directory h2 { max-width: 590px; margin: 0; font-size: clamp(2.25rem, 4vw, 4.5rem); font-weight: 620; letter-spacing: -.055em; line-height: .96; }
.shop-directory > div:first-child > p:last-child { max-width: 520px; margin: 24px 0 0; color: var(--muted); }
.directory-links { border-top: 1px solid var(--line-strong); }
.directory-links a { display: grid; grid-template-columns: .55fr 1fr auto; gap: 18px; align-items: center; min-height: 72px; border-bottom: 1px solid var(--line-strong); }
.directory-links span { color: var(--muted); font-size: .78rem; text-transform: uppercase; letter-spacing: .07em; }
.directory-links strong { font-size: .94rem; }
.directory-links b { color: var(--navy); font-size: 1.2rem; transition: transform .2s ease; }
.directory-links a:hover b { transform: translate(3px, -2px); }
.plaque-feature { position: relative; display: grid; place-items: center; min-height: 600px; overflow: hidden; padding: 74px; background: #e8edef; }
:root[data-theme="dark"] .plaque-feature { background: #111a1f; }
:root[data-theme="dark"] .feature-number { color: #a8bac2; }
:root[data-theme="dark"] .feature-caption { color: #e5edf0; }
:root[data-theme="dark"] .feature-caption small { color: #9caeb6; }
.plaque-feature::after { content: ""; position: absolute; inset: 8%; border: 1px solid rgb(23 54 68 / .16); pointer-events: none; }
.plaque-feature img { width: min(78%, 560px); height: 64vh; max-height: 640px; object-fit: contain; filter: drop-shadow(0 30px 30px rgb(21 35 41 / .18)); transition: transform .35s ease; }
.plaque-feature:hover img { transform: translateY(-8px); }
.feature-number { position: absolute; top: 30px; left: 34px; color: #4c5b62; font: 700 .72rem/1 ui-monospace, monospace; letter-spacing: .08em; }
.feature-caption { position: absolute; right: 34px; bottom: 28px; left: 34px; display: flex; justify-content: space-between; gap: 20px; color: #20323b; }
.feature-caption small { color: #617178; }
.product-section { padding: 110px clamp(24px, 7vw, 112px); }
.section-intro { display: grid; grid-template-columns: .5fr 1fr .8fr; align-items: end; gap: 40px; margin-bottom: 50px; }
.section-intro h2, .process-band h2, .local-section h2 { margin: 0; font-size: clamp(2.1rem, 4vw, 4.3rem); font-weight: 620; letter-spacing: -.05em; line-height: .98; }
.section-intro > p:last-child { margin: 0; color: var(--muted); }
.product-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.home-product-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.product-card { min-width: 0; }
.product-visual { display: grid; place-items: center; aspect-ratio: 1 / 1; overflow: hidden; background: var(--surface); border: 1px solid var(--line); }
.product-visual img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s ease; }
.product-card:hover img { transform: scale(1.025); }
.product-card-featured .product-visual { background: var(--blue-soft); }
.product-card-featured .product-visual img { object-fit: contain; padding: 8%; }
.product-placeholder { background: linear-gradient(145deg, var(--blue-soft), var(--surface)); }
.product-placeholder span { color: var(--line-strong); font: 400 clamp(4rem, 10vw, 9rem)/1 ui-monospace, monospace; }
.product-info { display: grid; grid-template-columns: 1fr auto; gap: 3px 20px; padding-top: 15px; }
.product-info p { grid-column: 1 / -1; margin: 0; color: var(--faint); font-size: .72rem; text-transform: uppercase; letter-spacing: .09em; }
.product-info h3 { margin: 0; font-size: 1rem; }
.product-info span { color: var(--muted); font-size: .88rem; }
.product-quick-links { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 14px; margin-top: 9px; }
.product-quick-links a { color: var(--navy); font-size: .82rem; font-weight: 750; }
.service-callout { display: flex; justify-content: space-between; align-items: center; gap: 30px; margin-top: 50px; padding: 30px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.service-callout span:first-child { display: grid; gap: 4px; }
.service-callout small { color: var(--faint); font-size: .72rem; font-weight: 750; letter-spacing: .09em; text-transform: uppercase; }
.service-callout strong { font-size: clamp(1.35rem, 2.4vw, 2.15rem); letter-spacing: -.035em; }
.service-callout > span:last-child { color: var(--navy); font-weight: 760; }
.process-band { display: grid; grid-template-columns: .8fr 1.2fr; gap: 90px; padding: 100px clamp(24px, 7vw, 112px); background: var(--navy-deep); color: #fff; }
.process-band .eyebrow { color: #9dc2d2; }
.process-band ol { margin: 0; padding: 0; list-style: none; border-top: 1px solid rgb(255 255 255 / .22); }
.process-band li { display: grid; grid-template-columns: 50px .65fr 1fr; gap: 20px; padding: 24px 0; border-bottom: 1px solid rgb(255 255 255 / .22); }
.process-band li span { color: #9dc2d2; font: 700 .78rem/1.5 ui-monospace, monospace; }
.process-band li p { margin: 0; color: #bdcdd4; }
.page-shell { max-width: 1500px; min-height: 70vh; margin: auto; padding: 94px clamp(24px, 7vw, 112px) 120px; }
.narrow-page { max-width: 1180px; }
.page-heading { max-width: 930px; margin-bottom: 65px; }
.page-heading h1 { font-size: clamp(3rem, 6vw, 6rem); }
.page-heading > p:last-child { max-width: 720px; margin: 28px 0 0; color: var(--muted); font-size: 1.05rem; }
.catalog-grid { display: grid; gap: 20px; }
.catalog-card { display: grid; grid-template-columns: minmax(420px, .95fr) 1fr; min-height: 460px; border-top: 1px solid var(--line); padding-top: 22px; }
.catalog-hero-image { display: block; min-height: 420px; overflow: hidden; background: var(--surface); }
.catalog-hero-image img { display: block; width: 100%; height: 100%; min-height: 420px; object-fit: cover; transition: transform .3s ease; }
.catalog-hero-image:hover img { transform: scale(1.02); }
.plaque-catalog-image { display: grid; place-items: center; background: var(--blue-soft); }
.plaque-catalog-image img { object-fit: contain; padding: 7%; }
.catalog-copy { display: flex; flex-direction: column; padding: 28px 0 18px clamp(34px, 6vw, 90px); }
.card-kicker { margin: 0; color: var(--navy); font-size: .75rem; font-weight: 800; text-transform: uppercase; letter-spacing: .12em; }
.catalog-card h2 { margin: 10px 0; font-size: clamp(1.9rem, 4vw, 3.5rem); font-weight: 630; letter-spacing: -.04em; }
.catalog-copy > p:not(.card-kicker):not(.catalog-price):not(.checkout-note) { max-width: 600px; color: var(--muted); }
.catalog-price { margin: auto 0 18px; padding-top: 28px; font-size: 1.2rem; font-weight: 800; }
.listing-actions { display: flex; flex-wrap: wrap; gap: 9px; }
.checkout-note { margin: 14px 0 0; color: var(--faint); font-size: .78rem; }
.marketplace-section { display: grid; grid-template-columns: .9fr 1.1fr; gap: 80px; margin-top: 100px; padding: 70px; border: 1px solid var(--line); background: var(--blue-soft); color: var(--ink); }
.marketplace-section h2, .product-service-panel h2, .bulk-teaser h2, .capacity-panel h2, .quote-action h2 { margin: 0; font-size: clamp(2rem, 4vw, 3.8rem); font-weight: 620; letter-spacing: -.05em; line-height: 1; }
.marketplace-section > div:first-child > p:last-child { max-width: 580px; color: var(--muted); }
.marketplace-links { border-top: 1px solid var(--line-strong); }
.marketplace-links a { display: flex; justify-content: space-between; gap: 30px; padding: 25px 0; border-bottom: 1px solid var(--line-strong); }
.marketplace-links strong { color: var(--ink); }
.marketplace-links span { color: var(--navy); font-weight: 700; }
.product-service-panel { display: flex; justify-content: space-between; align-items: end; gap: 50px; padding: 85px 0 0; }
.product-service-panel h2 { max-width: 700px; }
.plaque-landing { min-height: 680px; display: grid; grid-template-columns: 1fr 1fr; gap: 70px; align-items: center; padding: 90px clamp(24px, 7vw, 112px); background: var(--surface); }
.plaque-landing h1 { font-size: clamp(3.3rem, 6vw, 6.4rem); }
.plaque-landing > div:first-child > p:last-of-type { max-width: 670px; color: var(--muted); font-size: 1.08rem; }
.plaque-stack { position: relative; height: 520px; background: var(--blue-soft); }
.plaque-stack img { position: absolute; width: 58%; height: 82%; object-fit: contain; filter: drop-shadow(0 26px 24px rgb(18 36 45 / .18)); }
.plaque-stack img:first-child { right: 8%; bottom: 4%; z-index: 2; }
.plaque-stack img:last-child { top: 4%; left: 6%; transform: rotate(-5deg) scale(.87); opacity: .9; }
.numbered-grid { display: grid; grid-template-columns: repeat(4, 1fr); padding: 0 clamp(24px, 7vw, 112px) 100px; background: var(--surface); }
.numbered-grid article { padding: 28px; border: 1px solid var(--line); border-right: 0; }
.numbered-grid article:last-child { border-right: 1px solid var(--line); }
.numbered-grid span { color: var(--navy); font: 700 .75rem/1 ui-monospace, monospace; }
.numbered-grid h2 { margin: 36px 0 8px; font-size: 1.35rem; }
.numbered-grid p { margin: 0; color: var(--muted); }
.local-section { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: end; padding: 90px clamp(24px, 7vw, 112px); }
.local-section > p { margin: 0; color: var(--muted); font-size: 1.08rem; }
.inquiry-panel { display: flex; justify-content: space-between; align-items: center; gap: 50px; padding: 36px; border: 1px solid var(--line); background: var(--surface); }
.inquiry-panel h2 { margin: 0 0 8px; }
.inquiry-panel p { max-width: 670px; margin: 0; color: var(--muted); }
.inquiry-actions { display: flex; flex-direction: column; gap: 9px; min-width: 235px; }
.bulk-teaser { display: flex; align-items: end; justify-content: space-between; gap: 50px; margin-top: 26px; padding: 42px; border: 1px solid var(--line); background: var(--blue-soft); }
.bulk-teaser p:last-child { max-width: 630px; margin-bottom: 0; color: var(--muted); }
.bulk-page { max-width: 1280px; }
.capacity-panel { display: grid; grid-template-columns: 1.1fr .9fr; gap: 80px; padding: clamp(38px, 6vw, 80px); border: 1px solid var(--line); background: var(--surface); }
.status-label { display: inline-flex; margin-bottom: 30px; padding: 7px 10px; border: 1px solid var(--line-strong); border-radius: 999px; color: var(--navy); font-size: .74rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.capacity-panel > div:first-child > p { max-width: 650px; color: var(--muted); }
.quote-checklist { align-self: end; border-top: 1px solid var(--line); }
.quote-checklist { display: grid; grid-template-columns: 44px 1fr; }
.quote-checklist > span, .quote-checklist > p { margin: 0; padding: 20px 0; border-bottom: 1px solid var(--line); }
.quote-checklist > span { color: var(--navy); font: 700 .76rem/1.6 ui-monospace, monospace; }
.quote-checklist p { display: grid; gap: 3px; }
.quote-checklist small { color: var(--muted); }
.quote-action { display: flex; align-items: end; justify-content: space-between; gap: 50px; padding-top: 55px; }
.quote-action h2 { max-width: 710px; }
.contact-list { border-top: 1px solid var(--line); }
.contact-list a { display: grid; grid-template-columns: .55fr 1fr 1fr; gap: 24px; padding: 24px 0; border-bottom: 1px solid var(--line); }
.contact-list span { color: var(--faint); font-size: .78rem; text-transform: uppercase; letter-spacing: .08em; }
.contact-list strong { color: var(--navy); }
.contact-list small { color: var(--muted); font-size: .9rem; }
.about-hero { display: grid; grid-template-columns: 1fr .8fr; gap: clamp(50px, 9vw, 150px); align-items: end; padding: 120px clamp(24px, 7vw, 112px); border-bottom: 1px solid var(--line); background: var(--surface); }
.about-hero h1 { max-width: 820px; margin: 0; font-size: clamp(3.5rem, 7vw, 7.6rem); font-weight: 620; letter-spacing: -.065em; line-height: .88; }
.about-intro { padding-top: 60px; border-top: 1px solid var(--line); }
.about-intro p { margin: 0 0 20px; color: var(--muted); font-size: 1.06rem; line-height: 1.75; }
.brand-principles { display: grid; grid-template-columns: repeat(3, 1fr); padding: 0 clamp(24px, 7vw, 112px); background: var(--surface); }
.brand-principles article { padding: 54px 38px 62px 0; border-right: 1px solid var(--line); }
.brand-principles article + article { padding-left: 38px; }
.brand-principles article:last-child { border-right: 0; }
.brand-principles span { color: var(--navy); font: 700 .74rem/1 ui-monospace, monospace; }
.brand-principles h2 { margin: 45px 0 10px; font-size: 1.55rem; letter-spacing: -.025em; }
.brand-principles p { margin: 0; color: var(--muted); }
.team-section { display: grid; grid-template-columns: .8fr 1fr; gap: 22px; padding: 110px clamp(24px, 7vw, 112px); }
.team-heading { grid-column: 1 / -1; display: grid; grid-template-columns: .5fr 1fr .8fr; gap: 40px; align-items: end; margin-bottom: 28px; }
.team-heading h2 { margin: 0; font-size: clamp(2.4rem, 5vw, 5rem); font-weight: 620; letter-spacing: -.055em; line-height: .95; }
.team-heading > p:last-child { margin: 0; color: var(--muted); }
.founder-card, .team-coming-soon { min-height: 330px; padding: 38px; border: 1px solid var(--line); background: var(--surface); }
.founder-card { display: grid; grid-template-columns: 100px 1fr; gap: 30px; align-items: end; }
.founder-monogram { align-self: start; display: grid; place-items: center; width: 100px; height: 100px; background: var(--navy-deep); color: #fff; font-size: 1.4rem; font-weight: 800; letter-spacing: .04em; }
.founder-card h3 { margin: 7px 0 10px; font-size: 2rem; letter-spacing: -.035em; }
.founder-card p:last-child, .team-coming-soon p { color: var(--muted); }
.team-coming-soon { display: flex; flex-direction: column; justify-content: flex-end; background: var(--blue-soft); }
.team-coming-soon > span { margin-bottom: auto; color: var(--navy); font-size: .75rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.team-coming-soon strong { font-size: clamp(1.7rem, 3vw, 2.7rem); letter-spacing: -.04em; line-height: 1; }
.inquiry-page { max-width: 1380px; }
.inquiry-layout { display: grid; grid-template-columns: minmax(260px, .62fr) minmax(560px, 1.38fr); gap: clamp(35px, 7vw, 100px); align-items: start; }
.inquiry-context { position: sticky; top: 110px; padding-top: 28px; border-top: 1px solid var(--line-strong); }
.inquiry-context h2 { margin: 0 0 20px; font-size: clamp(2rem, 3.5vw, 3.4rem); font-weight: 620; letter-spacing: -.045em; line-height: 1; }
.inquiry-context > p:not(.eyebrow), .inquiry-context li { color: var(--muted); }
.inquiry-context ul { margin: 26px 0; padding: 0; list-style: none; border-top: 1px solid var(--line); }
.inquiry-context li { padding: 12px 0; border-bottom: 1px solid var(--line); }
.inquiry-context a { color: var(--navy); font-weight: 750; }
.request-form { padding: clamp(28px, 5vw, 58px); border: 1px solid var(--line); background: var(--surface); box-shadow: 0 20px 60px rgb(19 44 55 / .06); }
.form-heading { margin-bottom: 35px; }
.form-heading h2 { margin: 0; font-size: clamp(2rem, 4vw, 3.7rem); font-weight: 620; letter-spacing: -.05em; line-height: 1; }
.form-heading > p:last-child { margin: 12px 0 0; color: var(--muted); }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 19px 16px; }
.request-form label { display: grid; gap: 7px; color: var(--muted); font-size: .84rem; font-weight: 700; }
.request-form input, .request-form select, .request-form textarea { width: 100%; min-height: 47px; padding: 11px 12px; border: 1px solid var(--line-strong); border-radius: 4px; outline: 0; background: var(--surface); color: var(--ink); }
.request-form textarea { min-height: 150px; resize: vertical; line-height: 1.55; }
.request-form input:focus, .request-form select:focus, .request-form textarea:focus { border-color: var(--navy); box-shadow: 0 0 0 3px color-mix(in srgb, var(--navy) 12%, transparent); }
.full-field { grid-column: 1 / -1; }
.consent-line { display: flex !important; grid-template-columns: auto 1fr; align-items: flex-start; gap: 10px !important; margin-top: 22px; }
.consent-line input { flex: none; width: 18px; min-height: 18px; margin-top: 2px; }
.form-submit { width: 100%; margin-top: 24px; border: 0; }
.form-footnote { margin: 13px 0 0; color: var(--faint); font-size: .78rem; }
.form-honeypot { position: absolute !important; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.form-notice { display: grid; gap: 3px; margin: -10px 0 28px; padding: 15px 17px; border-left: 3px solid var(--green); background: color-mix(in srgb, var(--green) 10%, var(--surface)); }
.form-notice span { color: var(--muted); font-size: .88rem; }
.form-notice.error { border-color: #a94442; background: color-mix(in srgb, #a94442 9%, var(--surface)); }
.bulk-form-layout { margin-top: 78px; }
.auth-shell { min-height: calc(100vh - 72px); display: grid; grid-template-columns: 1fr minmax(430px, .72fr); }
.auth-context { display: flex; flex-direction: column; justify-content: space-between; min-height: 700px; padding: 48px clamp(28px, 7vw, 110px) 90px; background: var(--navy-deep); color: #fff; }
.auth-context > a { color: #b9ccd4; }
.auth-context h1 { font-size: clamp(3rem, 5vw, 5.5rem); }
.auth-context div > p:last-child { max-width: 610px; color: #b9ccd4; }
.auth-context .eyebrow { color: #9dc2d2; }
.auth-card { width: min(100%, 520px); align-self: center; justify-self: center; padding: 45px; }
.auth-tabs { display: grid; grid-template-columns: 1fr 1fr; margin-bottom: 28px; border-bottom: 1px solid var(--line); }
.auth-tabs button { padding: 12px 6px; border: 0; border-bottom: 2px solid transparent; background: transparent; color: var(--muted); font-weight: 750; cursor: pointer; }
.auth-tabs button.active { border-color: var(--navy); color: var(--ink); }
.google-button { width: 100%; min-height: 47px; border: 1px solid var(--line); border-radius: 5px; background: var(--surface); color: var(--ink); font-weight: 750; cursor: pointer; }
.google-button span { margin-right: 9px; color: #4285f4; }
.auth-divider { display: flex; align-items: center; gap: 12px; margin: 22px 0; color: var(--faint); font-size: .78rem; }
.auth-divider::before, .auth-divider::after { content: ""; flex: 1; border-top: 1px solid var(--line); }
.auth-card label { display: grid; gap: 7px; margin-bottom: 16px; color: var(--muted); font-size: .82rem; font-weight: 700; }
.auth-card input:not([type="checkbox"]) { width: 100%; min-height: 46px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 5px; background: var(--surface); color: var(--ink); }
.auth-card label small { color: var(--faint); font-weight: 400; }
.form-line { display: flex; justify-content: space-between; align-items: center; margin-bottom: 18px; }
.form-line .check-line { display: flex; grid-template-columns: auto 1fr; margin: 0; }
.text-action { border: 0; background: transparent; color: var(--navy); cursor: pointer; }
.auth-note { margin: 25px 0 0; color: var(--faint); font-size: .78rem; }
.auth-message { margin-bottom: 18px; padding: 11px 13px; border-left: 3px solid var(--navy); background: var(--blue-soft); font-size: .86rem; }
.auth-message[data-type="error"] { border-color: #a94442; }
.auth-message[data-type="success"] { border-color: var(--green); }
.portal-shell, .admin-shell { min-height: calc(100vh - 72px); display: grid; grid-template-columns: 260px 1fr; }
.portal-nav, .admin-sidebar { padding: 30px 20px; border-right: 1px solid var(--line); background: var(--surface); }
.portal-name { margin: 0 12px 26px; font-weight: 800; }
.portal-nav nav, .admin-sidebar nav { display: grid; gap: 3px; }
.portal-nav a, .admin-sidebar nav a { padding: 10px 12px; border-radius: 5px; color: var(--muted); font-size: .88rem; font-weight: 650; }
.portal-nav a.active, .admin-sidebar nav a.active { background: var(--blue-soft); color: var(--ink); }
.portal-content, .admin-content { display: grid; place-items: center; padding: 50px; }
.portal-gate, .admin-gate { max-width: 610px; padding: 46px; border: 1px solid var(--line); background: var(--surface); box-shadow: var(--shadow); }
.portal-gate h1, .admin-gate h1 { margin: 0; font-size: clamp(2rem, 4vw, 3.5rem); line-height: 1; letter-spacing: -.045em; }
.portal-gate > p:not(.eyebrow), .admin-gate > p:not(.eyebrow) { color: var(--muted); }
.admin-title { display: flex; align-items: center; gap: 11px; margin: 0 7px 30px; }
.admin-title div { display: grid; }
.admin-title small { color: var(--faint); font-size: .72rem; }
.admin-gate small { display: block; margin-top: 18px; color: var(--faint); }
.secure-icon { display: grid; place-items: center; width: 42px; height: 42px; margin-bottom: 28px; border-radius: 50%; background: var(--blue-soft); color: var(--navy); font-size: 1.3rem; }
.site-footer { display: grid; grid-template-columns: 1fr auto auto; gap: 70px; padding: 55px clamp(24px, 7vw, 112px); border-top: 1px solid var(--line); background: var(--surface); }
.footer-brand { font-weight: 850; }
.site-footer p, .footer-meta { color: var(--muted); font-size: .82rem; }
.footer-links { display: grid; grid-template-columns: 1fr 1fr; gap: 7px 24px; font-size: .86rem; }
.footer-meta { display: grid; align-content: start; gap: 7px; text-align: right; }
@media (max-width: 1000px) {
  .home-hero, .plaque-landing, .auth-shell { grid-template-columns: 1fr; }
  .home-hero { min-height: auto; }
  .hero-copy { min-height: 500px; }
  .hero-shop-links { grid-template-columns: 1fr; }
  .hero-shop-links a { border-right: 0; border-bottom: 1px solid var(--line); }
  .hero-shop-links a:last-child { border-bottom: 0; }
  .shop-directory { border-top: 1px solid var(--line); border-left: 0; }
  .plaque-feature { min-height: 620px; }
  .section-intro { grid-template-columns: 1fr; }
  .product-grid, .home-product-grid { grid-template-columns: 1fr 1fr; }
  .catalog-card { grid-template-columns: 1fr; }
  .catalog-copy { min-height: 410px; padding-left: 0; }
  .marketplace-section, .capacity-panel { grid-template-columns: 1fr; }
  .about-hero { grid-template-columns: 1fr; align-items: start; }
  .about-intro { padding-top: 35px; }
  .team-heading { grid-template-columns: 1fr; }
  .inquiry-layout { grid-template-columns: 1fr; }
  .inquiry-context { position: static; }
  .process-band { grid-template-columns: 1fr; gap: 50px; }
  .numbered-grid { grid-template-columns: 1fr 1fr; }
  .numbered-grid article:nth-child(2) { border-right: 1px solid var(--line); }
  .auth-context { min-height: 520px; }
  .auth-card { padding-block: 70px; }
}
@media (max-width: 760px) {
  .announcement-bar { justify-content: center; }
  .announcement-bar span:nth-child(2), .announcement-bar a { display: none; }
  .site-header-inner { grid-template-columns: auto auto 1fr; gap: 10px; padding-inline: 16px; }
  .nav-toggle { display: block; }
  .site-nav { position: absolute; top: 72px; right: 0; left: 0; display: none; align-items: stretch; gap: 0; padding: 8px 16px 18px; border-bottom: 1px solid var(--line); background: var(--surface); }
  .site-nav.open { display: grid; }
  .site-nav > a, .nav-menu-button { width: 100%; justify-content: space-between; padding: 13px 5px; text-align: left; }
  .site-nav > a[aria-current="page"]::after { display: none; }
  .nav-dropdown, .nav-dropdown-right { position: static; width: 100%; padding: 3px 0 10px 12px; border: 0; box-shadow: none; }
  .nav-dropdown a { padding: 11px; }
  .header-actions { justify-self: end; }
  .home-hero { padding: 54px 18px 0; background: linear-gradient(180deg,var(--surface) 0 82%,var(--blue-soft) 82%); }
  .hero-copy { min-height: 460px; padding: 36px 6px; }
  .hero-copy h1 { font-size: clamp(3.3rem, 17vw, 5.5rem); }
  .hero-facts { grid-template-columns: 1fr; }
  .hero-facts div { display: grid; grid-template-columns: 1fr 1fr; border-right: 0; border-bottom: 1px solid var(--line); padding: 12px 0; text-align:left; }
  .hero-shop-links { margin-top: 38px; }
  .hero-shop-links a { min-height: 92px; padding: 18px; }
  .plaque-feature { min-height: 500px; padding: 40px; }
  .plaque-feature img { width: 95%; height: 55vh; }
  .product-section { padding-block: 75px; }
  .product-grid, .home-product-grid { grid-template-columns: 1fr; }
  .shop-directory { padding: 50px 24px; }
  .directory-links a { grid-template-columns: 1fr auto; }
  .directory-links span { grid-column: 1 / -1; padding-top: 16px; }
  .directory-links strong { padding-bottom: 16px; }
  .directory-links b { grid-column: 2; grid-row: 2; padding-bottom: 16px; }
  .service-callout, .product-service-panel, .bulk-teaser, .quote-action { align-items: stretch; flex-direction: column; }
  .process-band li { grid-template-columns: 42px 1fr; }
  .process-band li p { grid-column: 2; }
  .catalog-card { grid-template-columns: 1fr; }
  .catalog-hero-image, .catalog-hero-image img { min-height: 0; aspect-ratio: 4 / 3; }
  .catalog-copy { min-height: 390px; }
  .marketplace-section { margin-top: 65px; padding: 42px 24px; }
  .marketplace-links a { flex-direction: column; gap: 4px; }
  .plaque-landing { padding-block: 70px; }
  .plaque-stack { height: 390px; }
  .numbered-grid, .local-section { grid-template-columns: 1fr; }
  .numbered-grid article { border-right: 1px solid var(--line); border-bottom: 0; }
  .numbered-grid article:last-child { border-bottom: 1px solid var(--line); }
  .local-section { gap: 24px; }
  .inquiry-panel { align-items: stretch; flex-direction: column; }
  .contact-list a { grid-template-columns: 1fr; gap: 4px; }
  .about-hero { padding-block: 80px; }
  .brand-principles, .team-section { grid-template-columns: 1fr; }
  .brand-principles article, .brand-principles article + article { padding: 38px 0; border-right: 0; border-bottom: 1px solid var(--line); }
  .team-heading { grid-column: auto; }
  .founder-card { grid-template-columns: 1fr; }
  .form-grid { grid-template-columns: 1fr; }
  .full-field { grid-column: auto; }
  .request-form { padding: 26px 20px; }
  .auth-context { min-height: 470px; padding: 35px 24px 65px; }
  .auth-card { padding: 45px 24px; }
  .portal-shell, .admin-shell { grid-template-columns: 1fr; }
  .portal-nav, .admin-sidebar { display: none; }
  .portal-content, .admin-content { padding: 24px; }
  .portal-gate, .admin-gate { padding: 30px; }
  .site-footer { grid-template-columns: 1fr; gap: 28px; }
  .footer-meta { text-align: left; }
}

/* Update 05: plaque-first storefront + account foundation */
.home-hero-with-visual { align-content: start; padding-top: clamp(62px,8vw,105px); }
.home-hero-with-visual .hero-copy { min-height: 390px; justify-content: center; }
.hero-workshop { position: relative; width: min(100%,1500px); height: clamp(300px,35vw,530px); margin: 38px auto 0; overflow: hidden; border: 1px solid var(--line-strong); background: #dfe5e8; }
.hero-workshop-main { position: absolute; inset: 0; }
.hero-workshop-main::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgb(13 27 34 / .14),transparent 55%); }
.hero-workshop-main img { width:100%; height:100%; object-fit:cover; object-position:center 55%; filter:saturate(.82) contrast(.96); }
.hero-workshop-plaque { position:absolute; right:5%; bottom:7%; width:min(25%,330px); height:72%; padding:18px; border:1px solid rgb(255 255 255 / .58); background:rgb(244 247 248 / .9); box-shadow:0 24px 60px rgb(10 30 40 / .24); backdrop-filter:blur(8px); }
.hero-workshop-plaque img { width:100%; height:100%; object-fit:contain; }
.hero-workshop-caption { position:absolute; left:28px; bottom:24px; display:flex; gap:8px; flex-wrap:wrap; }
.hero-workshop-caption span { padding:8px 11px; background:rgb(255 255 255 / .9); color:#18333f; font-size:.72rem; font-weight:800; letter-spacing:.02em; }
.plaque-primary-section { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr); min-height:720px; border-bottom:1px solid var(--line); background:var(--surface); }
.plaque-primary-visual { position:relative; display:grid; place-items:center; min-height:720px; padding:70px; overflow:hidden; background:var(--blue-soft); }
.plaque-primary-visual::after { content:""; position:absolute; inset:7%; border:1px solid var(--line-strong); pointer-events:none; }
.plaque-primary-visual img { width:min(78%,570px); height:600px; object-fit:contain; filter:drop-shadow(0 30px 30px rgb(21 35 41 / .16)); }
.plaque-primary-visual > span { position:absolute; left:26px; bottom:22px; color:var(--faint); font-size:.72rem; }
.plaque-primary-copy { display:flex; flex-direction:column; justify-content:center; padding:80px clamp(34px,6vw,100px); }
.plaque-primary-copy h2, .business-showcase-coming h2, .plaque-pricing h2 { margin:0; font-size:clamp(2.8rem,5vw,5.5rem); letter-spacing:-.055em; line-height:.94; }
.plaque-primary-lede { max-width:620px; color:var(--muted); font-size:1.05rem; line-height:1.7; }
.plaque-price-block { display:grid; grid-template-columns:auto 1fr; align-items:end; column-gap:13px; width:max-content; margin:20px 0 24px; padding:18px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.plaque-price-block span { grid-column:1/-1; color:var(--faint); font-size:.75rem; text-transform:uppercase; letter-spacing:.08em; }
.plaque-price-block strong { font-size:3rem; line-height:1; letter-spacing:-.05em; }
.plaque-price-block small { color:var(--muted); padding-bottom:4px; }
.plaque-feature-list { display:grid; gap:9px; margin:0 0 28px; padding:0; list-style:none; color:var(--muted); }
.plaque-feature-list li::before { content:"✓"; margin-right:10px; color:var(--green); font-weight:900; }
.business-showcase-coming { padding:110px clamp(24px,7vw,112px); border-bottom:1px solid var(--line); background:var(--surface-2); }
.business-showcase-grid { display:grid; grid-template-columns:repeat(3,1fr); margin-top:54px; border-top:1px solid var(--line-strong); border-left:1px solid var(--line-strong); }
.business-showcase-grid article { min-height:260px; padding:30px; border-right:1px solid var(--line-strong); border-bottom:1px solid var(--line-strong); }
.business-showcase-grid span { color:var(--faint); font:700 .72rem/1 ui-monospace,monospace; }
.business-showcase-grid strong { display:block; margin:85px 0 10px; font-size:1.25rem; }
.business-showcase-grid p { margin:0; color:var(--muted); line-height:1.6; }
.plaque-inline-price { display:flex; align-items:baseline; gap:12px; margin:26px 0 0; }
.plaque-inline-price strong { font-size:1.65rem; }
.plaque-inline-price span { color:var(--muted); }
.plaque-pricing { padding:100px clamp(24px,7vw,112px); border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:var(--surface-2); }
.pricing-grid { display:grid; grid-template-columns:repeat(3,1fr); margin-top:48px; border:1px solid var(--line-strong); }
.pricing-card { display:flex; flex-direction:column; min-height:390px; padding:34px; border-right:1px solid var(--line-strong); background:var(--surface); }
.pricing-card:last-child { border-right:0; }
.pricing-card > p:first-child { margin:0 0 34px; color:var(--muted); font-weight:750; }
.pricing-card > strong { font-size:3.4rem; letter-spacing:-.055em; }
.pricing-card > span { margin:13px 0 36px; color:var(--muted); line-height:1.65; }
.pricing-card .button { margin-top:auto; align-self:flex-start; }
.primary-price { box-shadow:inset 0 3px 0 var(--navy); }
.customer-communications { display:grid; grid-template-columns:.8fr 1.2fr; gap:80px; padding:80px clamp(24px,7vw,112px); border-bottom:1px solid var(--line); background:var(--surface); }
.customer-communications h2 { margin:0; font-size:clamp(2.1rem,4vw,4rem); line-height:1; letter-spacing:-.045em; }
.customer-communications > div:last-child { color:var(--muted); line-height:1.7; }
.header-signout { border:0; background:transparent; color:var(--muted); font:inherit; font-size:.78rem; cursor:pointer; }
.portal-dashboard, .admin-dashboard-placeholder { width:min(100%,1050px); }
.portal-dashboard h1, .admin-dashboard-placeholder h1 { margin:0; font-size:clamp(2.5rem,5vw,5rem); letter-spacing:-.055em; line-height:.95; }
.account-overview-grid, .admin-next-grid { display:grid; grid-template-columns:repeat(3,1fr); margin-top:42px; border:1px solid var(--line); }
.account-overview-grid article, .admin-next-grid article { min-height:190px; padding:26px; border-right:1px solid var(--line); }
.account-overview-grid article:last-child, .admin-next-grid article:last-child { border-right:0; }
.account-overview-grid span { color:var(--faint); font-size:.75rem; text-transform:uppercase; letter-spacing:.08em; }
.account-overview-grid strong, .admin-next-grid strong { display:block; margin:42px 0 9px; }
.account-overview-grid p, .admin-dashboard-placeholder > p:not(.eyebrow), .admin-next-grid span { color:var(--muted); line-height:1.55; }
.portal-alert { margin:24px 0; padding:13px 15px; border-left:3px solid #a94442; background:color-mix(in srgb,#a94442 8%,var(--surface)); }
.auth-reset-intro { color:var(--muted); }
@media (max-width:1000px) {
  .plaque-primary-section { grid-template-columns:1fr; }
  .plaque-primary-visual { min-height:580px; }
  .business-showcase-grid, .pricing-grid { grid-template-columns:1fr; }
  .business-showcase-grid article, .pricing-card { border-right:0; }
  .pricing-card { border-bottom:1px solid var(--line-strong); }
  .pricing-card:last-child { border-bottom:0; }
  .customer-communications { grid-template-columns:1fr; gap:28px; }
}
@media (max-width:760px) {
  .home-hero-with-visual .hero-copy { min-height:400px; }
  .hero-workshop { height:360px; }
  .hero-workshop-plaque { width:38%; height:64%; }
  .hero-workshop-caption { left:14px; bottom:12px; right:14px; }
  .plaque-primary-visual { min-height:440px; padding:35px; }
  .plaque-primary-visual img { height:390px; width:92%; }
  .plaque-primary-copy { padding:64px 24px; }
  .business-showcase-coming, .plaque-pricing { padding-block:72px; }
  .account-overview-grid, .admin-next-grid { grid-template-columns:1fr; }
  .account-overview-grid article, .admin-next-grid article { border-right:0; border-bottom:1px solid var(--line); }
  .account-overview-grid article:last-child, .admin-next-grid article:last-child { border-bottom:0; }
}
.legal-page { padding: 90px clamp(24px,7vw,112px) 120px; background:var(--surface); }
.legal-heading { max-width:900px; margin-bottom:65px; }
.legal-heading h1 { margin:0; font-size:clamp(3rem,6vw,6rem); letter-spacing:-.06em; line-height:.92; }
.legal-heading > p:last-child { max-width:720px; color:var(--muted); line-height:1.65; }
.legal-content { max-width:980px; border-top:1px solid var(--line-strong); }
.legal-content section { display:grid; grid-template-columns:minmax(210px,.42fr) 1fr; gap:50px; padding:32px 0; border-bottom:1px solid var(--line); }
.legal-content h2 { margin:0; font-size:1.05rem; }
.legal-content p { margin:0; color:var(--muted); line-height:1.75; }
@media (max-width:760px) { .legal-content section { grid-template-columns:1fr; gap:12px; } }
.form-line-end { justify-content:flex-end; }


/* Update 07: cleaner home hero, compact plaque pricing, complete legal footer */
.home-hero { min-height: 610px; padding-bottom: clamp(70px,10vw,130px); background:var(--surface); }
.hero-copy { max-width: 1050px; }
.plaque-pricing { padding-block: clamp(72px,8vw,105px); }
.pricing-heading { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(320px,.7fr); align-items:end; gap:70px; max-width:1320px; margin:0 auto 42px; }
.pricing-heading h2 { max-width:780px; margin:0; font-size:clamp(2.5rem,4.6vw,4.8rem); letter-spacing:-.052em; line-height:.96; }
.pricing-heading > p { max-width:540px; margin:0; color:var(--muted); line-height:1.7; }
.pricing-grid { max-width:1320px; margin:0 auto; }
.site-footer { display:grid; grid-template-columns:minmax(220px,.7fr) minmax(560px,1.5fr); gap:70px 90px; padding:64px clamp(24px,7vw,112px) 28px; }
.footer-brand-column p { max-width:320px; }
.footer-contact { margin-top:18px; }
.footer-contact a { color:var(--muted); }
.footer-nav-groups { display:grid; grid-template-columns:repeat(3,minmax(150px,1fr)); gap:42px; }
.footer-nav-groups > div { display:grid; align-content:start; gap:10px; }
.footer-nav-groups strong { margin-bottom:7px; font-size:.78rem; letter-spacing:.08em; text-transform:uppercase; }
.footer-nav-groups a { color:var(--muted); font-size:.84rem; }
.footer-nav-groups a:hover, .footer-contact a:hover { color:var(--ink); }
.footer-bottom { grid-column:1/-1; display:flex; justify-content:space-between; gap:24px; padding-top:24px; border-top:1px solid var(--line); color:var(--muted); font-size:.78rem; }
.legal-updated { margin-top:14px !important; color:var(--faint) !important; font-size:.78rem; }
.legal-content a { color:var(--navy); text-decoration:underline; text-underline-offset:2px; }
@media (max-width:900px) {
  .pricing-heading { grid-template-columns:1fr; gap:18px; }
  .site-footer { grid-template-columns:1fr; gap:36px; }
  .footer-nav-groups { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:600px) {
  .home-hero { min-height:auto; padding-top:70px; padding-bottom:70px; }
  .footer-nav-groups { grid-template-columns:1fr 1fr; gap:30px 22px; }
  .footer-bottom { flex-direction:column; }
}

/* Update 08: plaque benefits, combined pricing, and cleaner product emphasis */
.plaque-benefits { padding:clamp(78px,9vw,120px) clamp(24px,7vw,112px); border-bottom:1px solid var(--line); background:var(--surface); }
.benefits-heading { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(320px,.72fr); gap:26px 72px; max-width:1320px; margin:0 auto 46px; align-items:end; }
.benefits-heading .eyebrow { grid-column:1/-1; margin-bottom:0; }
.benefits-heading h2 { max-width:820px; margin:0; font-size:clamp(2.6rem,4.7vw,4.9rem); letter-spacing:-.052em; line-height:.97; }
.benefits-heading > p:last-child { max-width:560px; margin:0; color:var(--muted); line-height:1.72; }
.benefits-grid { display:grid; grid-template-columns:repeat(4,1fr); max-width:1320px; margin:0 auto; border-top:1px solid var(--line-strong); border-left:1px solid var(--line-strong); }
.benefits-grid article { min-height:285px; padding:28px; border-right:1px solid var(--line-strong); border-bottom:1px solid var(--line-strong); }
.benefits-grid article > span { color:var(--faint); font:700 .72rem/1 ui-monospace,monospace; }
.benefits-grid h3 { margin:78px 0 10px; font-size:1.2rem; }
.benefits-grid p { margin:0; color:var(--muted); line-height:1.65; }
.pricing-grid-combined { grid-template-columns:minmax(0,2fr) minmax(300px,1fr); }
.pricing-card-standard { min-height:410px; }
.standard-price-options { display:grid; grid-template-columns:1fr 1fr; gap:0; margin:0 0 22px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.standard-price-options > div { display:grid; align-content:start; gap:8px; padding:24px 28px 24px 0; }
.standard-price-options > div + div { padding-left:28px; border-left:1px solid var(--line); }
.standard-price-options span { color:var(--muted); font-weight:750; }
.standard-price-options strong { font-size:3.4rem; letter-spacing:-.055em; line-height:1; }
.standard-price-options small { max-width:280px; color:var(--muted); line-height:1.5; }
.pricing-card-note { max-width:650px; margin:0 0 28px !important; color:var(--muted) !important; font-weight:400 !important; line-height:1.65; }
.pricing-card-quote { border-right:0; }
@media (max-width:1000px) {
  .benefits-heading { grid-template-columns:1fr; gap:18px; }
  .benefits-heading .eyebrow { grid-column:auto; }
  .benefits-grid { grid-template-columns:1fr 1fr; }
  .pricing-grid-combined { grid-template-columns:1fr; }
  .pricing-card-standard { border-right:0; }
}
@media (max-width:620px) {
  .benefits-grid { grid-template-columns:1fr; }
  .standard-price-options { grid-template-columns:1fr; }
  .standard-price-options > div { padding:20px 0; }
  .standard-price-options > div + div { padding-left:0; border-left:0; border-top:1px solid var(--line); }
}


/* Update 09: tighter homepage editorial layout */
.section-intro { grid-template-columns:minmax(360px,.9fr) minmax(360px,1fr); align-items:end; max-width:1320px; }
.section-intro > div { min-width:0; }
.section-intro h2 { max-width:760px; text-wrap:balance; }
.section-intro > p:last-child { max-width:680px; justify-self:end; }
.business-showcase-coming .section-intro h2 { font-size:clamp(2.6rem,4.6vw,4.9rem); }
.product-section .section-intro h2 { font-size:clamp(2.6rem,4.4vw,4.8rem); }
.custom-work-home { display:grid; grid-template-columns:minmax(320px,.85fr) minmax(360px,1fr); gap:clamp(50px,8vw,130px); align-items:end; padding:100px clamp(24px,7vw,112px); border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:var(--surface); }
.custom-work-home h2 { margin:0; max-width:720px; font-size:clamp(2.8rem,5vw,5.4rem); line-height:.95; letter-spacing:-.055em; text-wrap:balance; }
.custom-work-home-copy { max-width:680px; }
.custom-work-home-copy p { margin:0 0 28px; color:var(--muted); font-size:1.05rem; line-height:1.75; }
@media(max-width:900px){ .section-intro,.custom-work-home { grid-template-columns:1fr; } .section-intro > p:last-child { justify-self:start; } }


/* Axis account + admin live data */
.portal-content,.admin-content{place-items:start;align-content:start}.portal-dashboard,.admin-dashboard{width:min(100%,1180px);margin:0 auto}.portal-section{margin-top:54px}.admin-section-heading{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:30px}.admin-section-heading h1,.admin-section-heading h2{margin:0;letter-spacing:-.045em}.admin-section-heading h1{font-size:clamp(2.5rem,5vw,4.8rem);line-height:.95}.admin-section-heading h2{font-size:clamp(1.8rem,3vw,2.8rem)}.admin-section-heading>p{max-width:580px;color:var(--muted)}.admin-user{color:var(--muted);font-size:.86rem}.admin-stat-grid{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--line);background:var(--surface)}.admin-stat{display:grid;min-height:160px;padding:22px;border-right:1px solid var(--line);color:var(--ink)}.admin-stat:last-child{border-right:0}.admin-stat span,.admin-stat small{color:var(--muted);font-size:.78rem}.admin-stat strong{margin:auto 0 4px;font-size:2.4rem;letter-spacing:-.05em}.admin-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:24px}.admin-panel{padding:24px;border:1px solid var(--line);background:var(--surface)}.admin-panel h2{margin:0 0 18px;font-size:1.15rem}.admin-full-panel{width:100%}.admin-data-list,.account-list,.team-list{display:grid}.admin-data-row,.account-list-row,.team-row{display:grid;align-items:center;gap:14px;padding:14px 0;border-top:1px solid var(--line)}.admin-data-row{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));font-size:.82rem}.admin-data-row .primary-cell{font-weight:750}.account-list-row{grid-template-columns:1fr auto;color:var(--ink)}.account-list-row span,.team-row>div{display:grid;gap:4px}.account-list-row small,.team-row small{color:var(--muted)}.team-row{grid-template-columns:minmax(260px,1fr) minmax(280px,.8fr)}.team-row>div:last-child{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}.team-row select{min-height:38px;padding:0 10px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink)}.role-badge{padding:5px 8px;background:var(--blue-soft);font-size:.7rem;font-weight:800;letter-spacing:.05em}.button.compact{min-height:38px;padding:8px 12px}.empty-state{margin:0;padding:24px 0;color:var(--muted)}.admin-loading{max-width:700px}.admin-loading h1{margin:0;font-size:clamp(2.5rem,5vw,5rem);letter-spacing:-.055em}
@media(max-width:1000px){.admin-stat-grid{grid-template-columns:repeat(2,1fr)}.admin-stat{border-bottom:1px solid var(--line)}.admin-columns{grid-template-columns:1fr}.team-row{grid-template-columns:1fr}.team-row>div:last-child{justify-content:flex-start}}@media(max-width:620px){.admin-stat-grid{grid-template-columns:1fr}.admin-stat{border-right:0}.admin-section-heading{display:grid;align-items:start}.portal-content,.admin-content{padding:24px}.team-row select{width:100%}}

/* Update 12: functional customer account */
.portal-nav nav{display:grid}.portal-nav nav button{appearance:none;width:100%;padding:12px 10px;border:0;border-left:2px solid transparent;background:transparent;color:var(--muted);font:inherit;font-size:.88rem;font-weight:700;text-align:left;cursor:pointer}.portal-nav nav button:hover{color:var(--ink);background:var(--blue-soft)}.portal-nav nav button.active{border-left-color:var(--navy-deep);color:var(--ink);background:var(--blue-soft)}
.account-stack{margin-top:20px}.account-form-panel{margin-top:24px}.account-form{display:grid;gap:18px;max-width:760px}.account-form label{display:grid;gap:7px;font-size:.82rem;font-weight:700}.account-form input{min-height:44px;padding:10px 12px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font:inherit}.account-form input:disabled{opacity:.7}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid .wide{grid-column:1/-1}.check-row{display:flex!important;align-items:flex-start;gap:10px!important;font-weight:600!important}.check-row input{min-height:0;width:17px;height:17px;margin-top:2px}.form-status,.form-help{margin:0;color:var(--muted);font-size:.82rem}.address-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.address-card{padding:22px;border:1px solid var(--line);background:var(--surface)}.address-card>div{display:flex;align-items:center;justify-content:space-between;gap:14px}.address-card p{color:var(--muted);line-height:1.55}@media(max-width:760px){.form-grid,.address-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}}

/* Account security, admin access, and marketing additions */
.portal-nav .portal-admin-link{display:block;margin-top:14px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;font-weight:700;text-decoration:none;color:var(--text);background:var(--surface)}
.portal-nav .portal-admin-link[hidden]{display:none}
.portal-nav .portal-admin-link:hover{background:var(--surface-2)}
.admin-account-callout{display:flex;align-items:center;justify-content:space-between;gap:24px}
.admin-account-callout h2{margin:.15rem 0 .35rem}
.security-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.mfa-setup{display:grid;grid-template-columns:180px 1fr;gap:24px;align-items:start;margin-top:16px}
.mfa-setup img{width:180px;height:180px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px}
.mfa-setup code{display:inline-block;max-width:100%;overflow-wrap:anywhere;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface-2)}
.marketing-audience{display:grid;gap:10px;max-height:520px;overflow:auto}
.marketing-recipient{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}
.marketing-recipient span{display:flex;flex-direction:column;gap:2px}
.marketing-recipient small{color:var(--muted)}
.account-form textarea{width:100%;resize:vertical}
@media (max-width:720px){.admin-account-callout,.security-heading,.marketing-recipient{align-items:flex-start;flex-direction:column}.mfa-setup{grid-template-columns:1fr}.mfa-setup img{width:160px;height:160px}}

/* Axis Admin standalone application */
.admin-app-body{margin:0;background:var(--bg);color:var(--ink);min-height:100vh;overflow-x:hidden}
.admin-app{min-height:100vh;display:grid;grid-template-columns:252px minmax(0,1fr)}
.admin-app-sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;border-right:1px solid var(--line);background:var(--surface);padding:18px 14px 16px;z-index:30}
.admin-app-brand{display:flex;align-items:center;gap:10px;padding:8px 8px 18px;border-bottom:1px solid var(--line);margin-bottom:12px}
.admin-app-brand .brand-mark{width:34px;height:34px}.admin-app-brand>div{display:grid;gap:1px}.admin-app-brand strong{font-size:.95rem}.admin-app-brand small{color:var(--muted);font-size:.72rem}
.admin-app-nav{display:grid;gap:2px;overflow:auto;padding-right:3px}.admin-app-nav a{display:block;padding:9px 10px;border-radius:5px;color:var(--muted);font-size:.82rem;font-weight:680}.admin-app-nav a:hover{background:var(--surface-2);color:var(--ink)}.admin-app-nav a.active{background:var(--blue-soft);color:var(--ink)}.admin-app-nav a[hidden]{display:none}
.admin-nav-label{margin:13px 10px 5px;color:var(--muted);font-size:.62rem;letter-spacing:.11em;text-transform:uppercase;font-weight:800}
.admin-sidebar-footer{margin-top:auto;padding:14px 8px 2px;border-top:1px solid var(--line);display:grid;gap:9px}.admin-sidebar-footer>div{display:grid}.admin-sidebar-footer strong{font-size:.78rem}.admin-sidebar-footer small{color:var(--muted);font-size:.68rem}.admin-signout{border:0;background:transparent;color:var(--muted);padding:0;text-align:left;font:inherit;font-size:.75rem;cursor:pointer}.admin-signout:hover{color:var(--ink)}
.admin-app-main{min-width:0;display:flex;flex-direction:column}.admin-app-topbar{height:52px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface) 94%,transparent);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:20;backdrop-filter:blur(10px)}.admin-app-topbar>div{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:.72rem}.admin-security-dot{width:7px;height:7px;border-radius:50%;background:#2d9b67}.admin-top-email{font-size:.72rem;color:var(--muted)}.admin-mobile-menu{display:none;border:0;background:transparent;color:var(--ink);font-size:1.2rem}
.admin-app-content{width:100%;padding:36px clamp(22px,4vw,56px) 80px}.admin-page-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin:0 auto 28px;max-width:1380px}.admin-page-heading h1{margin:.1rem 0 .5rem;font-size:clamp(2.2rem,4vw,4rem);line-height:.95;letter-spacing:-.055em}.admin-page-heading p:not(.eyebrow){margin:0;max-width:720px;color:var(--muted)}.admin-heading-actions{display:flex;gap:10px;flex-wrap:wrap}
.admin-app-content>.admin-stat-grid,.admin-app-content>.admin-work-grid,.admin-app-content>.admin-panel,.admin-app-content>.admin-columns,.admin-app-content>.admin-create-drawer{max-width:1380px;margin-left:auto;margin-right:auto}
.admin-stat-grid-six{grid-template-columns:repeat(6,1fr)}.admin-stat-grid-three{grid-template-columns:repeat(3,1fr);margin-bottom:24px}.admin-stat-grid-three .admin-stat:nth-child(3n){border-right:0}
.admin-work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:22px}.admin-columns-two{grid-template-columns:repeat(2,minmax(0,1fr))}
.admin-toolbar{display:flex;gap:10px;margin-bottom:12px}.admin-toolbar .admin-search{flex:1;min-width:200px}.admin-toolbar input,.admin-toolbar select,.admin-record-editor input,.admin-record-editor select,.admin-record-editor textarea,.admin-inline-form input,.admin-inline-form select,.admin-inline-form textarea{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);min-height:40px;padding:9px 10px;border-radius:4px;font:inherit;font-size:.82rem}.admin-record-editor textarea,.admin-inline-form textarea{resize:vertical}
.admin-record-list{display:grid}.admin-record{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;padding:18px 2px;border-top:1px solid var(--line);align-items:center}.admin-record-main{display:grid;gap:4px;min-width:0}.admin-record-main strong{font-size:.92rem}.admin-record-main span,.admin-record-main small{color:var(--muted);font-size:.76rem;overflow-wrap:anywhere}.admin-record-meta{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;font-size:.78rem}.admin-record-meta small{color:var(--muted)}.admin-record-expand{grid-template-columns:minmax(0,1fr) auto}.admin-record-editor{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(150px,1fr)) auto;gap:10px;padding:14px;background:var(--surface-2);border:1px solid var(--line)}.admin-record-editor label,.admin-inline-form label{display:grid;gap:5px;color:var(--muted);font-size:.7rem;font-weight:700}.admin-record-editor .wide,.admin-inline-form .wide{grid-column:1/-1}
.status-chip,.warning-chip{display:inline-flex;align-items:center;padding:5px 8px;border-radius:999px;background:var(--blue-soft);font-size:.65rem;font-weight:800;white-space:nowrap}.warning-chip{background:rgba(186,123,32,.14);color:#8f5f17}
.admin-create-drawer{display:none;margin-bottom:20px;padding:20px;border:1px solid var(--line);background:var(--surface)}.admin-create-drawer.is-open{display:block}.admin-form-title{margin-bottom:14px}.admin-form-title h2{margin:0}.admin-form-title p{margin:.25rem 0 0;color:var(--muted)}.admin-inline-form{display:grid;gap:12px}.admin-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.admin-inline-row{grid-template-columns:repeat(4,minmax(150px,1fr)) auto;align-items:end}.admin-inline-row .form-status{grid-column:1/-1}.admin-form-note{padding:12px;background:var(--surface-2);color:var(--muted);font-size:.78rem}.check-label{display:flex!important;grid-auto-flow:column;justify-content:start;align-items:center}.check-label input{min-height:auto;width:auto}
.metric-breakdown{display:grid}.metric-breakdown>div{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-top:1px solid var(--line)}.metric-breakdown span{color:var(--muted);font-size:.78rem}.metric-breakdown strong{font-size:1rem}
.admin-loading{margin:80px auto;max-width:900px}.admin-loading h1{margin:.1rem 0;font-size:clamp(2.5rem,5vw,5rem)}
@media(max-width:1200px){.admin-stat-grid-six{grid-template-columns:repeat(3,1fr)}.admin-stat-grid-six .admin-stat:nth-child(3n){border-right:0}.admin-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-inline-row{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:850px){.admin-app{grid-template-columns:1fr}.admin-app-sidebar{position:fixed;left:-270px;width:252px;transition:left .18s ease;box-shadow:0 0 40px rgba(0,0,0,.15)}.admin-nav-open .admin-app-sidebar{left:0}.admin-mobile-menu{display:block}.admin-app-topbar{justify-content:flex-start;gap:18px}.admin-top-email{margin-left:auto}.admin-work-grid,.admin-columns-two{grid-template-columns:1fr}.admin-record{grid-template-columns:1fr}.admin-record-meta{justify-content:flex-start}.admin-record-editor{grid-template-columns:1fr 1fr}.admin-page-heading{align-items:start;flex-direction:column}.admin-stat-grid-six,.admin-stat-grid-three{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.admin-app-content{padding:26px 16px 60px}.admin-app-topbar{padding:0 16px}.admin-stat-grid-six,.admin-stat-grid-three{grid-template-columns:1fr}.admin-stat{border-right:0}.admin-form-grid,.admin-record-editor,.admin-inline-row{grid-template-columns:1fr}.admin-toolbar{flex-direction:column}.admin-top-email{display:none}}

/* Update 16: Sales CRM, training, research, incentives */
.sales-tabs{display:flex;gap:.45rem;flex-wrap:wrap;margin:.9rem 0 1rem}.sales-tabs button{border:1px solid var(--line,#d9e0e5);background:transparent;border-radius:8px;padding:.55rem .8rem;font:inherit;cursor:pointer}.sales-tabs button.active{background:var(--ink,#102735);color:#fff;border-color:var(--ink,#102735)}
.sales-incentive-card{display:flex;justify-content:space-between;align-items:center;gap:2rem}.sales-incentive-card h2{margin:.15rem 0 .35rem}.goal-progress{min-width:220px}.goal-progress>strong{display:block;font-size:1.45rem;margin-bottom:.45rem}.goal-progress>div{height:9px;border-radius:99px;background:#e7ecef;overflow:hidden}.goal-progress>div>span{display:block;height:100%;background:currentColor;border-radius:inherit}
.business-record .admin-record-editor{grid-template-columns:repeat(3,minmax(0,1fr))}.business-record .precall-research{grid-column:1/-1;border:1px solid var(--line,#d9e0e5);padding:1rem;border-radius:10px;background:rgba(15,39,53,.025)}.business-record .precall-research h3{margin:0}.business-record .precall-research p{margin:.25rem 0 .8rem}.business-timeline{border-top:1px solid var(--line,#d9e0e5);padding-top:1rem}.business-timeline>div{display:grid;grid-template-columns:minmax(160px,1fr) auto;gap:.2rem 1rem;padding:.55rem 0;border-bottom:1px solid var(--line,#e7ecef)}.business-timeline p{grid-column:1/-1;margin:0;color:var(--muted,#5d6b73)}
.training-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-bottom:1rem}.training-card>div:first-child{display:flex;gap:1rem}.training-step{display:grid;place-items:center;flex:0 0 34px;height:34px;border:1px solid var(--line,#d9e0e5);border-radius:50%;font-weight:700}.training-card h2{margin:0 0 .35rem}.training-card p{margin:0}.training-card-actions{display:flex;gap:.65rem;align-items:center;justify-content:flex-end;margin-top:1rem}.training-document{max-width:980px}.cheat-sheet h2{margin-top:1.5rem}.cheat-sheet li{margin:.55rem 0;line-height:1.55}.training-complete-box{margin-top:2rem;border-top:1px solid var(--line,#d9e0e5);padding-top:1rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.training-quiz fieldset{border:1px solid var(--line,#d9e0e5);border-radius:10px;padding:1rem;margin:0 0 1rem}.training-quiz legend{font-weight:700;padding:0 .35rem}.training-quiz label{display:block;margin:.55rem 0}.portal-success{border-left:3px solid #2d8a5b;background:rgba(45,138,91,.08);padding:1rem 1.1rem;margin-bottom:1rem}.portal-success strong{display:block;margin-bottom:.2rem}
@media(max-width:900px){.training-grid{grid-template-columns:1fr}.sales-incentive-card{align-items:flex-start;flex-direction:column}.goal-progress{min-width:0;width:100%}.business-record .admin-record-editor{grid-template-columns:1fr}}

/* Update 22: plaque review workspace */
.admin-plaque-record{align-items:start}
.admin-plaque-record>.plaque-review-detail{grid-column:1/-1;border:1px solid var(--line);background:var(--surface-2);margin-top:2px;padding:18px}
.plaque-review-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:18px}
.plaque-review-preview,.plaque-review-info{min-width:0}
.plaque-review-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:12px}
.plaque-review-section-heading h2,.plaque-info-block h2{margin:2px 0 0;font-size:1.15rem}
.plaque-preview-stage{min-height:420px;border:1px solid var(--line);background:linear-gradient(to bottom,var(--surface) 0 76%,var(--surface-2) 76% 100%);overflow:hidden}
.plaque-preview-stage canvas{display:block;width:100%;height:420px;cursor:grab}
.plaque-preview-stage canvas.is-dragging{cursor:grabbing}
.plaque-preview-status{margin:9px 0 0;color:var(--muted);font-size:.76rem}
.plaque-review-info{display:grid;gap:14px;align-content:start}
.plaque-info-block{border:1px solid var(--line);background:var(--surface);padding:18px}
.plaque-info-block dl{display:grid;margin:14px 0 0}
.plaque-info-block dl>div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:12px;padding:9px 0;border-top:1px solid var(--line)}
.plaque-info-block dt{color:var(--muted);font-size:.72rem;font-weight:750}
.plaque-info-block dd{margin:0;font-size:.8rem;overflow-wrap:anywhere}
.plaque-file-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.plaque-file-actions .button{min-width:130px}
@media(max-width:1000px){.plaque-review-grid{grid-template-columns:1fr}.plaque-preview-stage,.plaque-preview-stage canvas{height:360px;min-height:360px}}
@media(max-width:560px){.admin-plaque-record>.plaque-review-detail{padding:12px}.plaque-info-block dl>div{grid-template-columns:1fr;gap:3px}.plaque-file-actions .button{width:100%}}

/* Update 23: production submission, customer record, owner sales preview */
.submitted-screen{padding:72px 24px}.submission-confirmation{max-width:760px;margin:0 auto;text-align:center}.submission-check{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;margin:0 auto 20px;background:var(--accent-soft,#e8f0f3);font-size:32px;font-weight:800}.submission-confirmation h1{margin:.35rem 0 1rem}.submission-reference{margin:24px 0}.submission-actions{justify-content:center;flex-wrap:wrap}.admin-view-switch[hidden]{display:none!important}.admin-view-switch{display:flex;align-items:center;border:1px solid var(--line,#d9e0e4);border-radius:10px;padding:3px;gap:2px}.admin-view-switch a{padding:7px 10px;border-radius:7px;text-decoration:none;font-size:12px;font-weight:700;color:inherit}.admin-view-switch a.active{background:var(--ink,#10212b);color:white}.customer-admin-details{grid-column:1/-1;border-top:1px solid var(--line,#d9e0e4);padding-top:12px}.customer-admin-details summary{cursor:pointer;font-weight:700}.customer-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:16px}.customer-detail-grid section{min-width:0}.customer-detail-grid dl,.plaque-info-block dl{display:grid;gap:8px}.customer-detail-grid dl div,.plaque-info-block dl div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:10px}.customer-detail-grid dt,.plaque-info-block dt{color:var(--muted,#60717c);font-size:12px}.customer-detail-grid dd,.plaque-info-block dd{margin:0;overflow-wrap:anywhere}@media(max-width:800px){.customer-detail-grid{grid-template-columns:1fr}.admin-view-switch{order:3;width:100%}.admin-app-topbar{flex-wrap:wrap}}
.guided-call-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.8fr);gap:20px}.guided-script blockquote{font-size:1.25rem;line-height:1.55;margin:14px 0 22px;padding:18px;border-left:4px solid currentColor;background:var(--panel-soft,#f5f7f8)}.what-to-say-label{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.guided-call-actions{display:flex;flex-wrap:wrap;gap:10px}.guided-lead-panel dl{display:grid;gap:8px}.guided-lead-panel dl div{display:grid;grid-template-columns:110px 1fr;gap:10px}.guided-lead-panel dt{font-size:12px;color:var(--muted,#60717c)}.guided-lead-panel dd{margin:0}.guided-lead-panel label{display:grid;gap:6px;margin-top:12px}@media(max-width:900px){.guided-call-layout{grid-template-columns:1fr}}
.call-timer{display:inline-flex;align-items:center;justify-content:center;min-width:72px;padding:.65rem .8rem;border:1px solid var(--line,#d9e0e5);border-radius:8px;font-variant-numeric:tabular-nums;font-weight:800}.call-stage{display:flex;align-items:center;justify-content:space-between;gap:1rem}.guided-pricing-card{display:grid;gap:.35rem;padding:1rem;border:1px solid var(--line,#d9e0e5);background:var(--surface-2,#f6f8fa);margin-bottom:1.2rem}.guided-note-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.business-form-section{padding:1rem 0;border-top:1px solid var(--line,#d9e0e5)}.business-form-section:first-of-type{border-top:0}.business-form-section h3{margin:.1rem 0 .8rem}.duplicate-warning{padding:.9rem 1rem;margin:.75rem 0;border:1px solid #d6a84b;background:rgba(214,168,75,.1);border-radius:8px}.duplicate-warning p{margin:.4rem 0}.duplicate-warning small{color:var(--muted,#60717c)}@media(max-width:650px){.guided-note-grid{grid-template-columns:1fr}.call-stage{align-items:flex-start;flex-direction:column}}

/* Update 24 — sequential sales training + visible locks */
.admin-app-nav a{display:flex;align-items:center;justify-content:space-between;gap:8px}
.admin-app-nav a.admin-nav-locked{opacity:.62;cursor:not-allowed;background:var(--surface-2)}
.admin-app-nav a.admin-nav-locked:hover{color:var(--muted);background:var(--surface-2)}
.admin-nav-lock{font-size:.78rem;line-height:1}
.training-card-locked{opacity:.68}
.locked-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .55rem;border:1px solid var(--line,#d9e0e5);border-radius:999px;color:var(--muted,#60717c);font-size:.78rem;font-weight:750}
.training-sequence-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:0 0 1rem}
.training-sequence-summary>div{border:1px solid var(--line,#d9e0e5);border-radius:10px;padding:1rem;background:var(--panel,#fff);display:grid;gap:.2rem}
.training-sequence-summary strong{font-size:1.35rem}.training-sequence-summary span{color:var(--muted,#60717c);font-size:.85rem}
.training-reference-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.training-reference-link{display:grid;gap:.2rem;padding:.9rem;border:1px solid var(--line,#d9e0e5);border-radius:8px}.training-reference-link:hover{background:var(--surface-2)}.training-reference-link span{font-size:.82rem;color:var(--muted,#60717c)}
.training-locked-panel{text-align:center;max-width:680px}.training-big-lock{font-size:2.25rem;margin-bottom:.5rem}.practice-choice-list{display:grid;gap:.7rem;margin-top:1rem}.practice-choice{text-align:left;justify-content:flex-start}.practice-feedback{margin-top:1rem}.training-practice-score{display:grid;gap:.1rem;padding:1rem;border:1px solid var(--line,#d9e0e5);border-radius:8px}.training-practice-score strong{font-size:1.5rem}.training-practice-score span{color:var(--muted,#60717c);font-size:.82rem}
.training-override-list{display:grid;gap:.55rem;margin-top:1rem}.training-override-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--line,#d9e0e5);padding:.65rem 0}.training-override-row span{display:grid;gap:.15rem}.training-override-row small{color:var(--muted,#60717c)}.training-admin-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--line,#d9e0e5)}
@media(max-width:700px){.training-sequence-summary,.training-reference-grid{grid-template-columns:1fr}.training-override-row{align-items:flex-start;flex-direction:column}}

/* Update 25 — sequential sales training + call-list workflow */
.training-module-footer{margin-top:2rem;padding-top:1.25rem;border-top:1px solid var(--border,#d9dee7);display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;flex-wrap:wrap}.training-module-footer>div:first-child{min-width:min(340px,100%)}.training-footer-actions{display:flex;gap:.65rem;flex-wrap:wrap;justify-content:flex-end}.training-progress-track{height:8px;background:#e9edf3;border-radius:999px;overflow:hidden;margin:.45rem 0}.training-progress-track span{display:block;height:100%;background:currentColor;border-radius:999px}.module-check{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border,#d9dee7)}.module-quiz,.training-quiz{display:grid;gap:1rem;margin-top:1rem}.module-quiz fieldset,.training-quiz fieldset{border:1px solid var(--border,#d9dee7);border-radius:12px;padding:1rem;display:grid;gap:.65rem}.module-quiz legend,.training-quiz legend{font-weight:700;padding:0 .35rem}.module-quiz label,.training-quiz label{display:flex;align-items:flex-start;gap:.55rem;line-height:1.4}.module-quiz .quiz-missed{border-color:#b45309;background:rgba(180,83,9,.06)}.practice-training-shell{max-width:850px}.practice-employee{padding:1rem 1.1rem;border-left:4px solid currentColor;background:rgba(120,130,150,.08);font-size:1.05rem;margin:1rem 0}.practice-choice-list{display:grid;gap:.6rem;margin:1rem 0}.practice-choice-list .button{text-align:left;justify-content:flex-start}.compact-assignment{display:flex;align-items:center;gap:.45rem;font-size:.78rem;color:inherit}.compact-assignment select{min-width:150px}.business-result-heading{padding-top:.4rem;border-top:1px solid var(--border,#d9dee7);margin-top:.25rem}.business-result-heading h3{margin-bottom:.25rem}.business-result-heading p{margin:0;color:var(--muted,#667085)}
@media(max-width:760px){.training-module-footer{align-items:stretch}.training-footer-actions{justify-content:stretch}.training-footer-actions .button{flex:1}.compact-assignment{width:100%;justify-content:flex-end}.compact-assignment select{min-width:0;max-width:180px}}

/* Update 26 — sales handbook phases + rep forms */
.training-phase{margin:1.5rem 0 2rem}.training-phase-heading{margin-bottom:1rem;padding:1rem 1.1rem;border-left:4px solid var(--line-strong,#aab5bf);background:var(--surface-2,#f6f8fa)}.training-phase-heading>span{display:block;font-size:.7rem;font-weight:850;letter-spacing:.14em;color:var(--muted,#60717c)}.training-phase-heading h2{margin:.2rem 0 .35rem}.training-phase-heading p{margin:0;color:var(--muted,#60717c);max-width:900px;line-height:1.6}
.sales-tool-strip{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;padding-top:.8rem;border-top:1px solid var(--line,#d9e0e5)}.sales-tool-strip strong{margin-right:.25rem}.sales-tool-panel{margin-top:1rem}.danger-text{color:#9b2c2c!important}.form-rule-callout{grid-column:1/-1;display:grid;gap:.25rem;padding:.9rem 1rem;border:1px solid var(--line,#d9e0e5);background:var(--surface-2,#f6f8fa)}.form-rule-callout span{color:var(--muted,#60717c);font-size:.82rem;line-height:1.5}.danger-callout{border-color:#d9a8a8;background:rgba(155,44,44,.05)}.price-preview{grid-column:1/-1;padding:.75rem 1rem;border:1px dashed var(--line-strong,#aab5bf);font-weight:700}.guided-quick-tools{margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--line,#d9e0e5)}.guided-quick-tools>div{display:flex;gap:.45rem;flex-wrap:wrap;margin-top:.65rem}
@media(max-width:700px){.sales-tool-strip{align-items:stretch}.sales-tool-strip .button{width:100%}.guided-quick-tools>div .button{flex:1 1 44%}}

/* Update 27: training navigation diagrams + guided-call pricing reminder */
.training-ui-map{margin:18px 0 24px;border:1px solid var(--line,#d9e0e7);border-radius:14px;overflow:hidden;background:var(--surface,#fff)}
.training-ui-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-bottom:1px solid var(--line,#d9e0e7);background:rgba(127,145,165,.08);font-size:.88rem}
.training-ui-caption span{color:var(--muted,#637083)}
.training-ui-shell{padding:14px}
.training-ui-top,.training-ui-record{display:flex;align-items:center;justify-content:space-between;gap:12px}
.training-ui-brand{font-weight:800;letter-spacing:.02em}
.training-ui-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.training-ui-tab,.training-ui-tools span{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 10px;border:1px solid var(--line,#d9e0e7);border-radius:9px;background:var(--surface,#fff);font-size:.84rem}
.training-ui-record{padding:12px;border:1px solid var(--line,#d9e0e7);border-radius:10px;background:rgba(127,145,165,.04)}
.training-ui-record div{display:grid;gap:2px}.training-ui-record small{color:var(--muted,#637083)}
.training-ui-action{border:1px solid var(--line,#d9e0e7);border-radius:9px;padding:8px 11px;background:var(--surface,#fff);font:inherit;font-weight:700}
.training-ui-tools{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.training-ui-map .is-highlighted{outline:3px solid #f1b84b;outline-offset:2px;background:#fff7df;border-color:#d89b25;box-shadow:0 0 0 1px rgba(216,155,37,.18)}
.guided-pricing-card{display:grid;gap:5px;margin-bottom:16px;padding:12px 13px;border:1px solid var(--line,#d9e0e7);border-radius:12px;background:rgba(127,145,165,.07)}
.guided-pricing-card strong{font-size:.95rem}.guided-pricing-card small{color:var(--muted,#637083);line-height:1.35}
@media (max-width:640px){.training-ui-top,.training-ui-record,.training-ui-caption{align-items:flex-start;flex-direction:column}.training-ui-action{width:100%}.training-ui-tab{flex:1 1 45%}}

/* Compact Sales records + admin bulk controls */
.business-record{padding:12px 2px}.business-record .admin-record-main{gap:2px}.business-record .admin-record-main strong{font-size:.95rem}.business-record .admin-record-meta{gap:7px}.business-record .admin-record-editor[hidden]{display:none!important}
.business-record .business-edit-section{padding:12px;border:1px solid var(--line);background:var(--surface);border-radius:6px}.business-edit-section h3{margin:0 0 10px}.business-edit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.business-record-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.admin-record-select{display:flex;align-items:center;justify-content:center}.admin-record-select input{width:17px;height:17px;margin:0}.admin-plaque-record,.production-record{grid-template-columns:auto minmax(0,1fr) auto}.admin-plaque-record>.plaque-review-detail,.production-record>.admin-record-editor{grid-column:1/-1}
.admin-bulk-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px;padding:10px 12px;border:1px solid var(--line);background:var(--surface-2)}.admin-bulk-bar .bulk-check{display:flex;align-items:center;gap:7px;font-size:.78rem;font-weight:700}.admin-bulk-bar .bulk-check input{width:16px;height:16px;margin:0}.admin-bulk-bar>span{color:var(--muted);font-size:.76rem}.admin-bulk-bar select{min-height:34px;padding:6px 9px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink)}
@media(max-width:850px){.business-edit-grid{grid-template-columns:1fr 1fr}.admin-plaque-record,.production-record{grid-template-columns:auto 1fr}.admin-plaque-record>.admin-record-meta,.production-record>.admin-record-meta{grid-column:2}.admin-bulk-bar{align-items:stretch}.admin-bulk-bar .button,.admin-bulk-bar select{width:100%}}
@media(max-width:560px){.business-edit-grid{grid-template-columns:1fr}}

/* Sales CRM interaction logging */
.contact-method-chip{display:inline-flex;align-items:center;border:1px solid var(--line,#d9e0e5);background:var(--surface-2,#f6f8fa);border-radius:999px;padding:.28rem .55rem;font-size:.72rem;font-weight:700;white-space:nowrap}
.crm-interaction-modal[hidden]{display:none!important}.crm-interaction-modal{position:fixed;inset:0;z-index:1000;background:rgba(4,12,18,.48);display:grid;place-items:center;padding:24px;backdrop-filter:blur(3px)}
.crm-interaction-dialog{width:min(760px,100%);max-height:min(850px,calc(100vh - 48px));overflow:auto;background:var(--surface,#fff);color:var(--text,#17212a);border:1px solid var(--line,#d9e0e5);box-shadow:0 24px 70px rgba(0,0,0,.22);border-radius:12px;padding:22px}
.crm-interaction-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:16px;border-bottom:1px solid var(--line,#d9e0e5)}.crm-interaction-heading h2{margin:.15rem 0 .3rem}.crm-interaction-heading p:last-child{margin:0;color:var(--muted,#60717c)}
.interaction-business-banner{margin:16px 0 4px;padding:10px 12px;border:1px solid var(--line,#d9e0e5);background:var(--surface-2,#f6f8fa);border-radius:7px}
.interaction-checks{display:grid;align-content:start;gap:8px;padding-top:24px}.interaction-checks .check-label{margin:0}
.interaction-form-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:8px;padding-top:16px;border-top:1px solid var(--line,#d9e0e5)}.interaction-form-footer>div{display:flex;gap:8px}.interaction-form-footer .form-status{margin:0}
@media(max-width:650px){.crm-interaction-modal{padding:10px}.crm-interaction-dialog{max-height:calc(100vh - 20px);padding:16px}.crm-interaction-heading,.interaction-form-footer{align-items:stretch;flex-direction:column}.interaction-form-footer>div{display:grid;grid-template-columns:1fr 1fr}.interaction-checks{padding-top:0}}

/* Launch operations: custom-order references, product galleries, tracking */
.custom-order-details{color:var(--muted);line-height:1.6}.custom-order-details p{margin:.35rem 0}.custom-order-references{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;margin-top:14px}.custom-order-reference{display:grid;gap:6px;text-decoration:none}.custom-order-reference img{width:100%;aspect-ratio:1;object-fit:cover;border:1px solid var(--line);border-radius:8px;background:#eef1f2}.custom-order-reference span{font-size:.72rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-product-thumbs{display:flex;gap:8px;flex-wrap:wrap}.admin-product-thumbs img{width:78px;height:78px;object-fit:cover;border:1px solid var(--line);border-radius:7px}.account-order-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.account-order-card footer{gap:14px}.account-order-card footer>p{flex:1;min-width:220px}

/* Launch workflow controls */
.admin-product-gallery-editor{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px;margin-top:10px}
.admin-product-thumb-card{border:1px solid var(--border,#d9dde3);border-radius:12px;padding:8px;background:var(--surface,#fff);display:grid;gap:8px}
.admin-product-thumb-card img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:8px;background:#f3f4f6}
.admin-product-thumb-card>div{display:flex;gap:5px;flex-wrap:wrap}
.admin-product-thumb-card small{font-size:.75rem;color:var(--muted,#667085)}
.product-gallery-raw{display:none!important}
.admin-static-field{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border:1px solid var(--border,#d9dde3);border-radius:10px;background:var(--surface-soft,#f7f8fa)}
.admin-static-field>span,.admin-static-field>small{font-size:.75rem;color:var(--muted,#667085)}
.compact-heading{margin-bottom:4px}
