
    :root {
      --site-primary: #101B17;
      --site-secondary: #8D8068;
      --site-background: #171C19;
      --site-on-primary: #E8E5DC;
      --site-on-secondary: #111713;
      --site-on-background: #D8D6CE;
      --site-font-body: "Helvetica Neue", Arial, sans-serif;
      --site-font-heading: Georgia, "Times New Roman", serif;
      --site-heading-scale: 1.04;
      --site-spacing-scale: 1;
      --site-radius-scale: 1;
      --site-decoration-opacity: 1;
      --paper: light-dark(#171C19, #111713);
      --surface: light-dark(#202722, #1A211C);
      --ink: light-dark(#E0DED6, #E0DED6);
      --muted: light-dark(#A3A49A, #A3A49A);
      --line: light-dark(#3B443D, #303A33);
      --soft: light-dark(#252D27, #202822);
    }
    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    :focus-visible { outline: 2px solid var(--site-secondary); outline-offset: 4px; }
    body { margin: 0; background: var(--paper); color: var(--ink); font-family: var(--site-font-body); }
    #app { width: 100%; min-height: 100vh; border-radius: 0; background-color: var(--site-background); color: var(--site-on-background); overflow: hidden; }
    a { color: inherit; text-decoration: none; }
    button, input, select, textarea { font: inherit; }
    .wrap { width: min(1180px, calc(100% - 48px)); margin: 0 auto; }
    .announcement { background: var(--site-primary); color: var(--site-on-primary); text-align: center; padding: calc(10px * var(--site-spacing-scale)) 16px; font-size: 10px; letter-spacing: .19em; text-transform: uppercase; }
    header { position: sticky; top: 0; z-index: 10; background: color-mix(in srgb, var(--paper) 94%, transparent); backdrop-filter: blur(16px); border-bottom: 1px solid var(--line); }
    .nav { min-height: 82px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
    .brand { display: flex; align-items: center; gap: 13px; min-width: 220px; }
    .monogram { width: 38px; height: 38px; border: 1px solid var(--site-secondary); color: var(--site-secondary); display: grid; place-items: center; font: 18px var(--site-font-heading); letter-spacing: -.08em; }
    .brand-name { font: 20px var(--site-font-heading); letter-spacing: .13em; color: var(--ink); white-space: nowrap; }
    .brand-sub { display: block; margin-top: 4px; color: var(--muted); font-size: 8px; letter-spacing: .25em; text-transform: uppercase; }
    .nav-links { display: flex; align-items: center; gap: 30px; color: var(--muted); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; }
    .nav-links a:hover, .text-link:hover { color: var(--site-secondary); }
    .nav-cta, .button { display: inline-flex; justify-content: center; align-items: center; gap: 10px; padding: 14px 20px; border: 1px solid var(--site-primary); background: var(--site-primary); color: var(--site-on-primary); font-size: 10px; letter-spacing: .16em; text-transform: uppercase; cursor: pointer; transition: .2s ease; }
    .nav-cta:hover, .button:hover { background: transparent; color: var(--site-on-primary); border-color: var(--site-secondary); }
    .menu-toggle { display: none; border: 0; background: transparent; color: var(--ink); font-size: 24px; }
    .hero { background: var(--site-primary); color: var(--site-on-primary); position: relative; isolation: isolate; }
    .hero:after { content: ""; position: absolute; z-index: -1; width: 520px; height: 520px; border: 1px solid rgba(220,205,171,.10); border-radius: 50%; right: -80px; top: -180px; opacity: .45; box-shadow: 0 0 0 55px rgba(220,205,171,.02), 0 0 0 110px rgba(220,205,171,.015); }
    .hero-inner { min-height: 630px; display: grid; grid-template-columns: 1.1fr .9fr; align-items: center; gap: 64px; padding-top: 76px; padding-bottom: 76px; }
    .eyebrow { color: var(--site-secondary); font-size: 10px; letter-spacing: .28em; text-transform: uppercase; }
    h1, h2, h3, p { margin-top: 0; }
    h1 { font: 400 calc(68px * var(--site-heading-scale))/1.04 var(--site-font-heading); letter-spacing: -.045em; max-width: 650px; margin: 26px 0; }
    .hero-copy { max-width: 440px; color: rgba(247,243,234,.74); font-size: 14px; line-height: 1.9; }
    .hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 24px; margin-top: 34px; }
    .button.light { background: var(--site-secondary); border-color: var(--site-secondary); color: #111713; }
    .button.light:hover { background: transparent; color: var(--site-on-primary); }
    .text-link { font-size: 10px; letter-spacing: .16em; text-transform: uppercase; border-bottom: 1px solid currentColor; padding-bottom: 6px; }
    .hero-art { min-height: 390px; display: grid; place-items: center; position: relative; }
    .art-frame { width: min(100%, 420px); aspect-ratio: 4/5; border: 1px solid rgba(221,205,170,.35); padding: 14px; position: relative; }
    .art-inner { height: 100%; background: linear-gradient(145deg, #27342D, #18231D 55%, #101713); display: grid; place-items: center; position: relative; overflow: hidden; }
    .art-inner:before { content: ""; position: absolute; width: 270px; height: 270px; border: 1px solid rgba(220,205,171,.24); border-radius: 50%; box-shadow: 0 0 0 28px rgba(220,205,171,.035), 0 0 0 56px rgba(220,205,171,.025); }
    .leather-shape { position: relative; width: 230px; height: 100px; border-radius: 50px; background: linear-gradient(180deg, #79583D, #4B3426); transform: rotate(-28deg); box-shadow: 0 24px 35px rgba(0,0,0,.28), inset 0 2px 3px rgba(255,255,255,.18), inset 0 -5px 8px rgba(0,0,0,.3); border: 1px solid #987653; }
    .leather-shape:before { content: ""; position: absolute; inset: 8px 13px; border: 1px dashed rgba(229,207,169,.72); border-radius: 40px; }
    .leather-shape:after { content: "AC"; position: absolute; right: 25px; top: 36px; color: #D4BD91; font: 19px var(--site-font-heading); letter-spacing: -.1em; }
    .art-caption { position: absolute; bottom: 25px; left: 25px; color: rgba(247,243,234,.7); font: italic 13px var(--site-font-heading); letter-spacing: .05em; }
    .hero-index { position: absolute; right: -20px; bottom: 40px; writing-mode: vertical-rl; color: var(--site-secondary); font-size: 9px; letter-spacing: .22em; }
    .trust-strip { border-bottom: 1px solid var(--line); background: var(--surface); }
    .trust-grid { display: grid; grid-template-columns: repeat(3,1fr); }
    .trust-item { padding: 25px 18px; text-align: center; border-right: 1px solid var(--line); }
    .trust-item:last-child { border-right: 0; }
    .trust-item strong { display: block; font: 18px var(--site-font-heading); font-weight: 400; margin-bottom: 7px; }
    .trust-item span { color: var(--muted); font-size: 9px; letter-spacing: .16em; text-transform: uppercase; }
    section { padding: 100px 0; }
    .section-head { display: flex; justify-content: space-between; align-items: end; gap: 30px; margin-bottom: 42px; }
    h2 { font: 400 calc(44px * var(--site-heading-scale))/1.12 var(--site-font-heading); letter-spacing: -.025em; margin: 14px 0 0; }
    .section-intro { color: var(--muted); max-width: 360px; font-size: 13px; line-height: 1.8; margin-bottom: 3px; }
    .products { display: grid; grid-template-columns: repeat(4,1fr); gap: 18px; }
    .catalog-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:16px; margin:0 0 38px; }
    .catalog-card { padding:25px; background:var(--surface); border:1px solid var(--line); }
    .catalog-card h3 { font:24px var(--site-font-heading); font-weight:400; margin:8px 0; }
    .catalog-card p { color:var(--muted); font-size:12px; line-height:1.7; min-height:42px; }
    .catalog-card .kit-button { margin-right:7px; }
    .product-card { background: var(--surface); border: 1px solid var(--line); }
    .product-visual { aspect-ratio: 4/4.5; display: grid; place-items: center; position: relative; overflow: hidden; background: var(--soft); }
    .product-visual:after { content: ""; position: absolute; inset: 14px; border: 1px solid color-mix(in srgb, var(--site-secondary) 45%, transparent); }
    .product-visual.green { background: linear-gradient(145deg,#39463D,#222D26); }
    .product-visual.brown { background: linear-gradient(145deg,#514234,#30271F); }
    .product-visual.burgundy { background: linear-gradient(145deg,#493338,#2D2025); }
    .product-visual.tag { background: linear-gradient(145deg,#45443B,#292A24); }
    .product-object { width: 68%; height: 38px; border-radius: 24px; position: relative; transform: rotate(-28deg); box-shadow: 0 18px 22px rgba(42,35,25,.2), inset 0 2px 3px rgba(255,255,255,.3); }
    .product-object:before { content: ""; position: absolute; inset: 5px 9px; border: 1px dashed rgba(238,221,187,.75); border-radius: 20px; }
    .green .product-object { background: linear-gradient(#315343,#1B352B); border: 1px solid #627B69; }
    .brown .product-object { background: linear-gradient(#805C3E,#4E3527); border: 1px solid #9A795B; }
    .burgundy .product-object { background: linear-gradient(#673B43,#40252C); border: 1px solid #91656B; }
    .tag .product-object { width: 72px; height: 90px; border-radius: 45% 45% 50% 50%; transform: rotate(0); background: linear-gradient(135deg,#B69A68,#80663F); border: 1px solid #D1B989; }
    .tag .product-object:before { inset: 9px; border: 1px solid rgba(247,236,210,.7); border-radius: inherit; }
    .product-label { position: absolute; left: 25px; bottom: 24px; color: rgba(232,229,220,.72); font: italic 12px var(--site-font-heading); z-index: 1; }
    .product-info { padding: 20px; }
    .product-info h3 { font: 21px var(--site-font-heading); font-weight: 400; margin-bottom: 7px; }
    .product-info p { color: var(--muted); font-size: 11px; line-height: 1.6; min-height: 36px; margin-bottom: 14px; }
    .status { color: #8A7656; font-size: 9px; letter-spacing: .16em; text-transform: uppercase; }
    .story { background: var(--site-primary); color: var(--site-on-primary); }
    .story-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 90px; align-items: center; }
    .story-mark { min-height: 390px; display: grid; place-items: center; border: 1px solid rgba(220,205,171,.35); position: relative; }
    .story-mark:before { content: "ASHFORD"; color: rgba(220,205,171,.07); font: 45px var(--site-font-heading); letter-spacing: .16em; transform: rotate(-90deg); position: absolute; }
    .seal { width: 190px; height: 190px; border: 1px solid var(--site-secondary); border-radius: 50%; display: grid; place-items: center; color: var(--site-secondary); font: 58px var(--site-font-heading); letter-spacing: -.13em; position: relative; background: var(--site-primary); }
    .seal:after { content: "EST. 2026  ·  PET GOODS"; position: absolute; bottom: 27px; font: 8px var(--site-font-body); letter-spacing: .2em; }
    .story h2 { color: var(--site-on-primary); max-width: 500px; }
    .story-copy { color: rgba(247,243,234,.72); font-size: 13px; line-height: 2; max-width: 520px; margin: 24px 0 30px; }
    .values { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; margin-top: 35px; }
    .value { border-top: 1px solid rgba(220,205,171,.35); padding-top: 14px; }
    .value strong { display: block; color: var(--site-secondary); font: 18px var(--site-font-heading); font-weight: 400; margin-bottom: 6px; }
    .value span { color: rgba(247,243,234,.65); font-size: 10px; line-height: 1.6; }
    .palette { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; }
    .swatch { min-height: 240px; position: relative; display: flex; align-items: end; padding: 24px; color: #fff; overflow: hidden; }
    .swatch:after { content: ""; position: absolute; inset: 12px; border: 1px solid rgba(255,255,255,.3); }
    .swatch.green-swatch { background: #1C3329; }
    .swatch.brown-swatch { background: #443326; }
    .swatch.wine-swatch { background: #40282E; }
    .swatch span { z-index: 1; font: 22px var(--site-font-heading); }
    .service { background: #151D18; }
    .service-inner { display: grid; grid-template-columns: 1fr 1fr; gap: 70px; align-items: center; }
    .service-panel { background: var(--surface); padding: 42px; border: 1px solid var(--line); }
    .service-panel h3 { font: 27px var(--site-font-heading); font-weight: 400; }
    .service-panel p { color: var(--muted); font-size: 13px; line-height: 1.8; }
    .service-list { list-style: none; padding: 0; margin: 25px 0 0; }
    .service-list li { padding: 13px 0; border-top: 1px solid var(--line); font-size: 12px; }
    .service-list li:before { content: "—"; color: var(--site-secondary); margin-right: 12px; }
    .faq-list { max-width: 800px; margin: 0 auto; border-top: 1px solid var(--line); }
    details { border-bottom: 1px solid var(--line); padding: 22px 0; }
    summary { cursor: pointer; list-style: none; display: flex; justify-content: space-between; gap: 20px; font: 20px var(--site-font-heading); }
    summary::-webkit-details-marker { display: none; }
    summary:after { content: "+"; color: var(--site-secondary); font: 20px var(--site-font-body); }
    details[open] summary:after { content: "−"; }
    details p { color: var(--muted); font-size: 13px; line-height: 1.8; max-width: 680px; margin: 16px 0 0; }
    .contact { background: #101B17; color: var(--site-on-primary); text-align: center; padding: 90px 0; }
    .contact h2 { color: var(--site-on-primary); max-width: 650px; margin: 15px auto 18px; }
    .contact p { color: rgba(247,243,234,.7); font-size: 13px; line-height: 1.8; max-width: 490px; margin: 0 auto 28px; }
    footer { background: #0D1310; color: rgba(232,229,220,.68); padding: 35px 0; }
    .footer-row { display: flex; align-items: center; justify-content: space-between; gap: 25px; }
    .footer-brand { color: var(--site-on-primary); font: 18px var(--site-font-heading); letter-spacing: .12em; }
    .footer-note { font-size: 10px; line-height: 1.7; text-align: right; }
    .mobile-menu { display: none; padding: 0 24px 20px; }
    .mobile-menu a { display: block; padding: 12px 0; border-top: 1px solid var(--line); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; }
    .notice { position: fixed; bottom: 20px; left: 50%; transform: translate(-50%, 20px); background: var(--site-primary); color: var(--site-on-primary); padding: 14px 20px; font-size: 12px; opacity: 0; pointer-events: none; transition: .25s; z-index: 30; max-width: calc(100% - 32px); text-align: center; }
    .notice.show { opacity: 1; transform: translate(-50%,0); }
    .kit-button { display:inline-flex; margin-top:12px; padding:11px 14px; border:1px solid var(--site-secondary); background:transparent; color:var(--ink); font-size:9px; letter-spacing:.13em; text-transform:uppercase; cursor:pointer; }
    .kit-button:hover { background:var(--site-secondary); color:#111713; }
    .kit-backdrop { position:fixed; inset:0; z-index:40; display:none; background:rgba(0,0,0,.66); }
    .kit-backdrop.open { display:block; }
    .kit-drawer { position:fixed; z-index:41; top:0; right:0; width:min(480px,100%); height:100%; overflow:auto; padding:28px; background:#17211B; border-left:1px solid var(--line); transform:translateX(105%); transition:transform .25s ease; color:var(--ink); }
    .kit-drawer.open { transform:translateX(0); }
    .kit-head { display:flex; justify-content:space-between; align-items:center; padding-bottom:16px; border-bottom:1px solid var(--line); }
    .kit-close { border:0; background:none; color:var(--ink); font-size:27px; cursor:pointer; }
    .kit-field { display:grid; gap:7px; margin:16px 0; }
    .kit-field label { color:var(--site-secondary); font-size:9px; letter-spacing:.14em; text-transform:uppercase; }
    .kit-field input,.kit-field select { width:100%; padding:12px; border:1px solid var(--line); background:#101713; color:var(--ink); font:inherit; font-size:12px; }
    .kit-summary { margin:20px 0; padding:15px; border-left:2px solid var(--site-secondary); background:rgba(255,255,255,.035); color:var(--muted); font-size:11px; line-height:1.8; }
    .kit-preview { margin:22px 0 24px; padding:18px; border:1px solid var(--line); background:linear-gradient(145deg,#202923,#141B16); }
    .kit-preview-top { display:flex; justify-content:space-between; gap:12px; color:var(--muted); font-size:9px; letter-spacing:.16em; text-transform:uppercase; }
    .kit-preview-stage { min-height:190px; display:grid; place-items:center; position:relative; overflow:hidden; margin:14px 0 10px; background:radial-gradient(ellipse at center,rgba(141,128,104,.13),transparent 68%); }
    .kit-preview-set { width:100%; display:flex; align-items:center; justify-content:center; gap:20px; }
    .preview-collar { width:132px; height:132px; border:13px solid var(--preview-leather,#244333); border-radius:50%; position:relative; transform:rotate(-18deg); box-shadow:inset 0 0 0 2px rgba(226,208,174,.55),0 16px 25px #0007; }
    .preview-collar:before { content:""; position:absolute; width:22px; height:22px; border-radius:50%; background:var(--preview-metal,#9A8968); border:3px solid #4A4030; right:-13px; top:45px; box-shadow:0 0 0 2px rgba(235,218,183,.45); }
    .preview-lead { width:82px; height:142px; border:10px solid var(--preview-leather,#244333); border-radius:45px; transform:rotate(28deg); box-shadow:inset 0 0 0 2px rgba(226,208,174,.45),0 16px 25px #0007; position:relative; }
    .preview-lead:after { content:""; position:absolute; width:19px; height:19px; border:4px solid var(--preview-metal,#9A8968); border-radius:50%; right:-13px; bottom:4px; }
    .kit-preview-caption { color:var(--muted); font:italic 12px var(--site-font-heading); text-align:center; }
    .kit-preview-note { margin-top:10px; color:var(--site-secondary); font-size:9px; letter-spacing:.1em; text-align:center; text-transform:uppercase; }
    .kit-submit { width:100%; padding:14px; border:1px solid var(--site-secondary); background:var(--site-secondary); color:#111713; font-size:10px; letter-spacing:.13em; text-transform:uppercase; cursor:pointer; }
    .kit-cart-item { padding:16px 0; border-bottom:1px solid var(--line); font-size:12px; line-height:1.8; }
    .kit-cart-item button { margin-top:8px; border:0; background:none; color:var(--site-secondary); cursor:pointer; }
    .skip-link { position: absolute; left: 12px; top: -60px; z-index: 100; padding: 12px 16px; background: var(--site-on-primary); color: var(--site-primary); }
    .skip-link:focus { top: 12px; }
    @media (max-width: 900px) {
      .nav-links { gap: 16px; }
      .hero-inner { gap: 25px; }
      h1 { font-size: calc(52px * var(--site-heading-scale)); }
      .products { grid-template-columns: repeat(2,1fr); }
      .catalog-grid { grid-template-columns:1fr; }
      .story-grid { gap: 45px; }
    }
    @media (max-width: 680px) {
      .wrap { width: min(100% - 36px, 540px); }
      .nav { min-height: 70px; }
      .nav-links, .nav-cta { display: none; }
      .menu-toggle { display: block; }
      .mobile-menu.open { display: block; }
      .brand { min-width: 0; }
      .brand-name { font-size: 17px; }
      .hero-inner { grid-template-columns: 1fr; padding-top: 65px; padding-bottom: 45px; }
      h1 { font-size: calc(47px * var(--site-heading-scale)); }
      .hero-art { min-height: 330px; }
      .art-frame { width: min(82%,330px); }
      .trust-grid { grid-template-columns: 1fr; }
      .trust-item { border-right: 0; border-bottom: 1px solid var(--line); padding: 18px; }
      .trust-item:last-child { border-bottom: 0; }
      section { padding: 70px 0; }
      .section-head { display: block; margin-bottom: 30px; }
      h2 { font-size: calc(36px * var(--site-heading-scale)); }
      .section-intro { margin-top: 16px; }
      .products { gap: 10px; }
      .product-info { padding: 14px; }
      .product-info h3 { font-size: 18px; }
      .product-info p { min-height: 52px; font-size: 10px; }
      .story-grid, .service-inner { grid-template-columns: 1fr; gap: 35px; }
      .story-mark { min-height: 270px; }
      .story-mark:before { font-size: 34px; }
      .seal { width: 150px; height: 150px; font-size: 46px; }
      .values { gap: 16px; }
      .palette { gap: 8px; }
      .swatch { min-height: 160px; padding: 16px; }
      .swatch span { font-size: 16px; }
      .service-panel { padding: 26px; }
      .footer-row { display: block; text-align: center; }
      .footer-note { text-align: center; margin-top: 15px; }
    }
    @media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *:before, *:after { transition-duration: .01ms !important; } }
    .price-calculator{margin:22px 0;padding:20px;background:#F5F7F1;color:#20392B;border:1px solid #D8E1D6}.price-calculator-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:14px}.price-calculator-head strong{font:21px var(--site-font-heading);font-weight:400}.price-calculator-head span{color:#718174;font-size:9px;letter-spacing:.12em;text-transform:uppercase}.price-lines{display:grid;gap:9px;padding:12px 0;border-top:1px solid #D8E1D6;border-bottom:1px solid #D8E1D6}.price-line{display:flex;justify-content:space-between;gap:12px;color:#526457;font-size:11px;line-height:1.5}.price-line strong{color:#20392B;white-space:nowrap;font-weight:600}.price-total{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding-top:14px}.price-total span{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#526457}.price-total strong{font:26px var(--site-font-heading);color:#183D2D}.price-disclaimer{margin:12px 0 0;color:#718174;font-size:9px;line-height:1.65}.kit-cart-price{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid #D5E1D5;color:#526B58;font-size:11px}.kit-cart-price strong{color:#214B36;white-space:nowrap}@media(max-width:520px){.price-calculator{padding:15px}.price-calculator-head{display:block}.price-calculator-head span{display:block;margin-top:5px}}
  

    :root {
      --site-primary: #183D2D;
      --site-secondary: #9A8664;
      --site-background: #F7F7F1;
      --site-on-primary: #F8F7F1;
      --site-on-secondary: #183D2D;
      --site-on-background: #24372D;
      --paper: #F7F7F1;
      --surface: #FFFFFF;
      --ink: #24372D;
      --muted: #718075;
      --line: #DCE4DA;
      --soft: #EAF0E9;
    }
    body, #app { background:#F7F7F1; color:#24372D; }
    header { background:rgba(247,247,241,.96); border-bottom-color:#DCE4DA; }
    .announcement { background:#183D2D; color:#F8F7F1; }
    .brand-name { color:#183D2D; }
    .brand-sub, .nav-links { color:#718075; }
    .monogram { border-color:#52745E; color:#183D2D; }
    .nav-cta, .button { background:#183D2D; border-color:#183D2D; color:#F8F7F1; }
    .nav-cta:hover, .button:hover { background:#28563F; border-color:#28563F; color:#fff; }
    .hero { background:linear-gradient(112deg,#173D2C 0%,#214D38 62%,#2D6046 100%); color:#F8F7F1; }
    .hero:after { border-color:rgba(238,244,234,.22); box-shadow:0 0 0 55px rgba(238,244,234,.045),0 0 0 110px rgba(238,244,234,.025); }
    .hero-copy, .story-copy, .contact p { color:rgba(248,247,241,.82); }
    .eyebrow, .hero-index { color:#C4D4C1; }
    .button.light { background:#F7F7F1; border-color:#F7F7F1; color:#183D2D; }
    .button.light:hover { background:transparent; color:#fff; border-color:#D8E5D7; }
    .art-frame { border-color:rgba(235,242,231,.48); }
    .art-inner { background:linear-gradient(145deg,#456B50,#234833 58%,#183D2D); }
    .art-inner:before { border-color:rgba(236,243,232,.35); box-shadow:0 0 0 28px rgba(236,243,232,.055),0 0 0 56px rgba(236,243,232,.035); }
    .leather-shape { background:linear-gradient(180deg,#315B40,#183D2D); border-color:#6D9274; }
    .leather-shape:before { border-color:rgba(235,242,231,.8); }
    .leather-shape:after { color:#E2D5B7; }
    .art-caption { color:rgba(248,247,241,.82); }
    .trust-strip { background:#E8EFE7; border-color:#D7E2D6; }
    .trust-item { border-color:#D2DED1; }
    .trust-item strong { color:#214B36; }
    section { background:#F7F7F1; }
    #collection { background:#F0F4ED; }
    .catalog-card { background:#FFFFFF; border-color:#D5E1D5; box-shadow:0 8px 26px rgba(24,61,45,.045); }
    .catalog-card:nth-child(2), .catalog-card:nth-child(3) { background:#E5EEE4; }
    .catalog-card h3 { color:#1C432F; }
    .catalog-card p, .section-intro { color:#68796C; }
    .kit-button { border-color:#426B4D; color:#214B36; }
    .kit-button:hover { background:#214B36; color:#fff; }
    .product-card { background:#fff; border-color:#DCE4DA; }
    .product-visual { background:#E8EFE7; }
    .product-visual.green { background:linear-gradient(145deg,#DCE9DA,#B7CDB8); }
    .product-visual.brown { background:linear-gradient(145deg,#E8E1D5,#D6C8B5); }
    .product-visual.burgundy { background:linear-gradient(145deg,#E9DFDF,#D6C3C5); }
    .product-visual.tag { background:linear-gradient(145deg,#E7E9DF,#CFD8CB); }
    .story { background:linear-gradient(115deg,#183D2D,#244F38); color:#F8F7F1; }
    .story-mark { border-color:rgba(232,241,228,.35); }
    .story-mark:before { color:rgba(232,241,228,.10); }
    .seal { background:#214B36; border-color:#B9CBAF; color:#E7EEDC; }
    .value { border-color:rgba(232,241,228,.35); }
    .value strong { color:#D1DEC7; }
    .value span { color:rgba(248,247,241,.76); }
    #palette { background:#F7F7F1; }
    .swatch.green-swatch { background:linear-gradient(145deg,#315B40,#183D2D); }
    .swatch.brown-swatch { background:linear-gradient(145deg,#88745B,#514333); }
    .swatch.wine-swatch { background:linear-gradient(145deg,#78565A,#493238); }
    .service { background:#E8EFE7; }
    .service-panel { background:#fff; border-color:#D4E0D3; }
    .service-panel h3 { color:#214B36; }
    .service-panel p, .service-list li { color:#68796C; }
    .service-list li { border-color:#DCE4DA; }
    .service-list li:before { color:#426B4D; }
    #faq { background:#F7F7F1; }
    .faq-list, details { border-color:#DCE4DA; }
    summary { color:#24412F; }
    summary:after { color:#426B4D; }
    details p { color:#68796C; }
    .contact { background:linear-gradient(115deg,#173D2C,#28583E); color:#F8F7F1; }
    footer { background:#122E22; color:rgba(248,247,241,.76); }
    .footer-brand { color:#F8F7F1; }
    .notice { background:#183D2D; color:#F8F7F1; }
    .kit-backdrop { background:rgba(12,35,23,.55); }
    .kit-drawer { background:#F7F7F1; color:#24372D; border-left:1px solid #DCE4DA; }
    .kit-head { border-color:#DCE4DA; }
    .kit-close { color:#24412F; }
    .kit-field label { color:#426B4D; }
    .kit-field input,.kit-field select { background:#fff; color:#24372D; border-color:#D5E1D5; }
    .kit-summary { background:#EAF0E9; color:#617365; border-left-color:#426B4D; }
    .kit-preview { background:linear-gradient(145deg,#E6EEE4,#F8F8F2); border-color:#D5E1D5; }
    .kit-preview-stage { background:radial-gradient(ellipse at center,rgba(73,119,79,.16),transparent 68%); }
    .kit-preview-caption { color:#526B58; }
    .kit-preview-note { color:#426B4D; }
    .kit-submit { background:#214B36; border-color:#214B36; color:#F8F7F1; }
    .kit-submit:hover { background:#315F43; }
    .kit-cart-item { border-color:#DCE4DA; color:#334B3A; }
    .kit-cart-item button { color:#426B4D; }
    :focus-visible { outline-color:#426B4D; }
    @media (max-width:680px) {
      .mobile-menu { background:#F7F7F1; }
      .mobile-menu a { border-color:#DCE4DA; color:#24412F; }
    }
  

    /* Editorial refresh: a brighter, more product-led first impression. */
    .hero-inner { min-height:660px; grid-template-columns:1fr .92fr; gap:76px; }
    .hero h1 { max-width:610px; font-size:clamp(54px,6.2vw,82px); letter-spacing:-.055em; }
    .hero .eyebrow { color:#D7E4D2; }
    .hero-copy { max-width:470px; font-size:15px; }
    .hero-art { min-height:470px; }
    .art-frame { width:min(100%,450px); aspect-ratio:5/5.6; padding:12px; border-color:rgba(239,245,235,.58); box-shadow:0 28px 70px rgba(8,28,17,.22); }
    .art-inner { background:radial-gradient(ellipse at 50% 42%,#789078 0%,#385C43 42%,#183D2D 100%); }
    .leather-shape { width:260px; height:112px; border-radius:58px; transform:rotate(-31deg); box-shadow:0 28px 38px rgba(0,0,0,.28),inset 0 2px 4px rgba(255,255,255,.24),inset 0 -6px 10px rgba(0,0,0,.28); }
    .leather-shape:before { inset:9px 14px; border-width:1px; }
    .leather-shape:after { right:29px; top:41px; font-size:21px; }
    .hero-actions { gap:28px; }
    .hero .button.light { padding:16px 23px; }
    .trust-item strong { font-size:19px; }
    .catalog-card { min-height:220px; padding:29px; }
    .catalog-card h3 { line-height:1.2; }
    .product-card { overflow:hidden; transition:transform .25s ease,box-shadow .25s ease; }
    .product-card:hover { transform:translateY(-4px); box-shadow:0 18px 38px rgba(24,61,45,.10); }
    .product-visual { isolation:isolate; }
    .product-visual:before { content:""; position:absolute; width:72%; height:72%; border-radius:50%; background:rgba(255,255,255,.24); filter:blur(32px); z-index:-1; }
    .product-object { box-shadow:0 22px 28px rgba(35,42,32,.22),inset 0 2px 3px rgba(255,255,255,.42); }
    .product-info .kit-button { margin-top:2px; }
    .kit-preview { border-radius:2px; }
    .kit-preview-stage { min-height:210px; }
    .kit-submit { min-height:48px; }
    .kit-field label { line-height:1.5; }
    .kit-field input,.kit-field select,.kit-field textarea { min-height:44px; border-radius:0; }
    .kit-cart-item strong { color:#214B36; }
    .product-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:14px; }
    .product-actions .kit-button { margin:0; }
    .product-detail { display:block; margin-top:10px; color:#718075; font-size:10px; line-height:1.6; }
    .product-more { margin-top:14px; border-top:1px solid #DCE4DA; padding-top:11px; }
    .product-more summary { font:10px var(--site-font-body); letter-spacing:.12em; text-transform:uppercase; color:#426B4D; }
    .product-more summary:after { font-size:16px; }
    .product-more p { min-height:0; margin:12px 0 0; color:#68796C; font-size:11px; line-height:1.75; }
    .preview-hardware { position:absolute; width:24px; height:24px; border:5px solid var(--preview-metal,#A28C62); border-radius:7px; right:5px; top:44px; box-shadow:0 1px 4px #0004; }
    .preview-collar:after { content:""; position:absolute; inset:7px; border:1px dashed rgba(242,231,204,.72); border-radius:50%; }
    .preview-lead:before { content:""; position:absolute; width:20px; height:20px; border:4px solid var(--preview-metal,#A28C62); border-radius:50%; left:-13px; top:5px; }
    .preview-tag { display:none; width:68px; height:82px; position:absolute; border:8px solid var(--preview-metal,#A28C62); border-radius:48% 48% 55% 55%; background:var(--preview-leather,#244333); box-shadow:0 16px 25px #0004; }
    .preview-tag:after { content:"AC"; position:absolute; inset:0; display:grid; place-items:center; color:#F2E8D2; font:18px Georgia,serif; }
    .preview-engraving { position:absolute; bottom:8px; left:0; right:0; color:#526B58; font:italic 11px Georgia,serif; text-align:center; }
    .kit-measure-note { padding:12px 14px; background:#EAF0E9; color:#617365; font-size:11px; line-height:1.7; }
    .how-order .order-card { transition:transform .2s ease,box-shadow .2s ease; }
    .how-order .order-card:hover { transform:translateY(-3px); box-shadow:0 12px 28px rgba(24,61,45,.08); }
    @media (max-width:900px) { .hero-inner { gap:38px; } .hero-art { min-height:390px; } }
    @media (max-width:680px) {
      .hero-inner { gap:22px; }
      .hero h1 { font-size:clamp(45px,12vw,58px); }
      .hero-copy { font-size:13px; }
      .hero-art { min-height:340px; }
      .art-frame { width:min(84%,340px); }
      .leather-shape { width:210px; height:88px; }
      .hero-actions { gap:18px; }
      .hero-actions .button { width:100%; }
    }
    .how-order { background:#EAF0E8; }
    .order-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
    .order-card { min-height:210px; padding:25px 22px; background:#fff; border:1px solid #D7E2D6; position:relative; }
    .order-number { display:inline-grid; place-items:center; width:34px; height:34px; border:1px solid #6D8A70; border-radius:50%; color:#214B36; font:15px Georgia,serif; }
    .order-card h3 { margin:23px 0 9px; color:#214B36; font:22px Georgia,serif; font-weight:400; }
    .order-card p { margin:0; color:#68796C; font-size:12px; line-height:1.75; }
    .order-note { margin-top:18px; padding:18px 22px; background:#DDE9DC; border-left:3px solid #315F43; color:#435D49; font-size:12px; line-height:1.8; }
    .catalog-card { transition:transform .2s ease, box-shadow .2s ease; }
    .catalog-card:hover { transform:translateY(-3px); box-shadow:0 14px 32px rgba(24,61,45,.09); }
    .kit-button { transition:background .2s ease, color .2s ease, border-color .2s ease; }
    .kit-drawer { box-shadow:-18px 0 55px rgba(20,45,29,.12); }
    .kit-field input:focus, .kit-field select:focus, .kit-field textarea:focus { outline:2px solid #7B9A7D; outline-offset:1px; }
    .kit-field textarea { width:100%; padding:12px; border:1px solid #D5E1D5; background:#fff; color:#24372D; resize:vertical; font:inherit; font-size:12px; }
    .kit-field input:disabled, .kit-field select:disabled { opacity:.55; cursor:not-allowed; }
    .kit-submit { transition:background .2s ease, transform .2s ease; }
    .kit-submit:hover { transform:translateY(-1px); }
    .kit-cart-item { overflow-wrap:anywhere; }
    .notice { z-index:60; }
    .kit-backdrop { z-index:50; }
    .kit-drawer { z-index:51; }
    @media (max-width:900px) { .order-grid { grid-template-columns:repeat(2,1fr); } }
    @media (max-width:680px) {
      .order-grid { grid-template-columns:1fr; }
      .order-card { min-height:0; padding:22px; }
      .order-card h3 { margin-top:15px; }
      .section-head { align-items:flex-start; flex-direction:column; }
      .hero-inner { min-height:0; padding-top:64px; padding-bottom:56px; }
      .kit-drawer { padding:22px 18px 36px; }
      .kit-drawer { width:100%; max-height:100dvh; padding-bottom:calc(28px + env(safe-area-inset-bottom)); }
      #kitCartButton { right:12px !important; bottom:calc(12px + env(safe-area-inset-bottom)) !important; min-height:44px; padding:12px 15px; box-shadow:0 5px 20px rgba(24,61,45,.18); }
      #kitCartPanel { right:10px !important; bottom:calc(68px + env(safe-area-inset-bottom)) !important; width:calc(100% - 20px) !important; max-height:calc(78dvh - env(safe-area-inset-bottom)) !important; padding:18px !important; }
      .product-more summary { font-size:9px; }
    }
    @media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto !important; transition:none !important; animation:none !important; } }
  
/* ---- fixes & additions ---- */
html{scroll-padding-top:90px}
.kit-field[hidden],.kit-measure-note[hidden],[hidden]{display:none!important}
.kit-field input[readonly]{background:#EAF0E9;color:#214B36}
.cat-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}
.cat-tabs button{padding:12px 18px;border:1px solid #426B4D;background:transparent;color:#214B36;font-size:10px;letter-spacing:.13em;text-transform:uppercase;cursor:pointer}
.cat-tabs button[aria-selected=true]{background:#214B36;color:#fff}
.cat-note{color:#68796C;font-size:12px;line-height:1.7;margin:6px 0 18px}
.catalog-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;margin-bottom:38px}
.kit-cart-price button,.kit-cart-item .kit-cart-price button{margin:0 6px;padding:2px 9px;border:1px solid #426B4D;font-size:14px}
.checkout-box{margin-top:20px;padding-top:18px;border-top:1px solid #D5E1D5;display:grid;gap:12px}
.checkout-box label{display:grid;gap:6px;font-size:10px;color:#426B4D}
.checkout-box input:not([type=checkbox]),.checkout-box select{padding:12px;border:1px solid #D5E1D5;background:#fff;color:#24372D;min-height:44px}
.checkout-box .consent{display:flex;align-items:flex-start;gap:9px;line-height:1.6}
.checkout-box .kit-submit:disabled{opacity:.5;cursor:not-allowed}
.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.preview-engraving{display:block}
#kitCartButton{position:fixed;right:18px;bottom:18px;z-index:45;background:var(--site-primary);color:#F8F7F1}
.kit-submit+.kit-submit{margin-top:10px}
.kit-submit.ghost{background:transparent;color:#214B36}
@media(max-width:560px){.products{grid-template-columns:1fr}.catalog-items{grid-template-columns:1fr}#kitCartButton{right:12px;bottom:calc(12px + env(safe-area-inset-bottom))}.kit-drawer{width:100%}}

.viewer3d{height:300px;margin:18px 0 6px;background:radial-gradient(circle at 50% 40%,#fff,#E6EBE2);border:1px solid #D5E1D5}
.viewer-note{font-size:10px;line-height:1.7;color:#68796C;margin:0 0 14px}
.legal-links{display:block;margin-top:10px;font-size:10px;line-height:2;opacity:.85}.legal-links a{margin-right:4px;text-decoration:underline;text-underline-offset:3px}
.legal-page{max-width:760px;margin:0 auto;padding:48px 22px 80px;color:#24372D;line-height:1.85}.legal-page h1{font:36px Georgia,serif;color:#183D2D;margin:12px 0 28px}.legal-page h2{font:22px Georgia,serif;margin:30px 0 8px;color:#214B36}
.legal-page a{color:#214B36}.legal-top{font-size:10px;letter-spacing:.2em;text-transform:uppercase}.fill{background:#F3E9CC;border-bottom:1px dashed #9A8664;padding:0 4px}
.legal-page table{width:100%;border-collapse:collapse}.legal-page td{padding:12px 8px;border-bottom:1px solid #D5E1D5;vertical-align:top}.legal-note{font-size:12px;color:#68796C;border-left:2px solid #9A8664;padding-left:12px}

.seller-block{font-size:10px;line-height:1.9;opacity:.9;padding:6px 0 30px}.seller-block .fill{background:none;border-bottom:1px dashed #B49B6A;color:#E9E0C8}
