:root { --blue:#273A60; --ink:#10141C; --graphite:#303642; --line:#E4E9EF; --mist:#F4F6F8; --green:#2F6B45; --white:#FFF; }
    * { box-sizing:border-box; }
    html { scroll-behavior:smooth; }
    body { margin:0; color:var(--ink); background:var(--white); font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; line-height:1.5; }
    img { display:block; max-width:100%; }
    a { color:inherit; text-decoration:none; }
    a:focus-visible,button:focus-visible { outline:3px solid rgba(39,58,96,.42); outline-offset:3px; }
    .skip-link { position:fixed; left:16px; top:12px; z-index:100; transform:translateY(-150%); padding:11px 15px; border-radius:6px; background:var(--ink); color:#fff; font-weight:800; transition:transform .2s ease; }
    .skip-link:focus { transform:translateY(0); }
    .sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
    .shell { width:min(1160px,calc(100% - 32px)); margin:0 auto; }
    .topbar { position:sticky; top:0; z-index:30; border-bottom:1px solid var(--line); background:rgba(255,255,255,.94); backdrop-filter:blur(18px); }
    .nav { min-height:78px; display:flex; align-items:center; justify-content:space-between; gap:20px; }
    .logo { width:178px; height:58px; object-fit:contain; object-position:left center; }
    .nav-actions { display:flex; align-items:center; gap:10px; }
    .back-link { min-height:44px; display:inline-flex; align-items:center; padding:10px 12px; border-radius:6px; color:var(--blue); font-size:14px; font-weight:800; }
    .back-link:hover { background:var(--mist); }
    .btn { min-height:46px; display:inline-flex; align-items:center; justify-content:center; padding:12px 18px; border-radius:6px; border:1px solid var(--blue); background:var(--blue); color:#fff; font-size:14px; font-weight:900; transition:transform .2s ease,background .2s ease; }
    .btn:hover { transform:translateY(-1px); background:#1F304F; }
    .btn.secondary { background:#fff; color:var(--blue); border-color:rgba(39,58,96,.24); }
    .breadcrumb { padding-top:30px; color:rgba(48,54,66,.64); font-size:13px; font-weight:700; }
    .breadcrumb a:hover { color:var(--blue); }
    .product-layout { display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); gap:54px; align-items:start; padding:28px 0 74px; }
    .gallery { position:sticky; top:108px; }
    .image-stage { aspect-ratio:1/1; display:grid; place-items:center; padding:46px; border:1px solid var(--line); border-radius:8px; background:var(--mist); overflow:hidden; }
    .image-stage img { width:100%; height:100%; object-fit:contain; }
    .thumbnail { width:84px; height:70px; margin-top:12px; padding:8px; border:2px solid var(--blue); border-radius:6px; background:#fff; }
    .thumbnail img { width:100%; height:100%; object-fit:contain; }
    .kicker { margin:0 0 14px; color:var(--green); font-size:12px; font-weight:900; text-transform:uppercase; }
    h1 { margin:0; font-size:48px; line-height:1.06; letter-spacing:0; overflow-wrap:anywhere; }
    .lead { margin:22px 0 0; color:rgba(48,54,66,.78); font-size:18px; line-height:1.75; }
    .actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:28px; }
    .purchase-note { display:flex; flex-wrap:wrap; gap:8px 18px; margin:18px 0 0; padding:0; color:rgba(48,54,66,.68); font-size:13px; font-weight:700; list-style:none; }
    .purchase-note li::before { content:"✓"; margin-right:7px; color:var(--green); font-weight:900; }
    .metrics { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:34px; }
    .metric { min-height:108px; padding:18px; border:1px solid var(--line); border-radius:8px; background:#fff; }
    .metric span { display:block; color:rgba(48,54,66,.62); font-size:12px; line-height:1.45; }
    .metric strong { display:block; margin-top:8px; color:var(--blue); font-size:17px; line-height:1.3; }
    .detail-band { padding:72px 0; background:var(--mist); }
    .detail-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:54px; }
    h2 { margin:0; font-size:32px; line-height:1.15; letter-spacing:0; }
    table { width:100%; margin-top:24px; border-collapse:collapse; background:#fff; border:1px solid var(--line); }
    th,td { padding:16px 18px; border-bottom:1px solid var(--line); text-align:left; vertical-align:top; font-size:14px; line-height:1.5; }
    th { width:54%; color:rgba(48,54,66,.72); font-weight:700; }
    td { color:var(--ink); font-weight:800; }
    .info-block + .info-block { margin-top:38px; }
    .check-list { margin:22px 0 0; padding:0; list-style:none; display:grid; gap:12px; color:rgba(48,54,66,.82); font-size:15px; line-height:1.55; }
    .check-list li { position:relative; padding-left:27px; }
    .check-list li::before { content:"✓"; position:absolute; left:0; color:var(--green); font-weight:900; }
    .related { padding:74px 0 84px; }
    .related-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-top:28px; }
    .related-card { overflow:hidden; border:1px solid var(--line); border-radius:8px; background:#fff; transition:transform .22s ease,box-shadow .22s ease; }
    .related-card:hover { transform:translateY(-3px); box-shadow:0 18px 44px rgba(16,20,28,.09); }
    .related-image { aspect-ratio:4/3; padding:24px; background:var(--mist); }
    .related-image img { width:100%; height:100%; object-fit:contain; }
    .related-copy { padding:20px; }
    .related-copy span { color:var(--green); font-size:11px; font-weight:900; text-transform:uppercase; }
    .related-copy h3 { margin:8px 0 0; font-size:19px; line-height:1.3; }
    .related-copy p { margin:12px 0 0; color:var(--blue); font-size:13px; font-weight:800; }
    footer { padding:42px 0 24px; background:var(--ink); color:#fff; }
    .footer-grid { display:grid; grid-template-columns:1.2fr .8fr; gap:36px; align-items:start; }
    .footer-logo { width:184px; height:auto; padding:8px; border-radius:6px; background:rgba(255,255,255,.96); }
    footer p,footer a { color:rgba(255,255,255,.72); font-size:14px; line-height:1.8; }
    .copyright { margin-top:28px; padding-top:18px; border-top:1px solid rgba(255,255,255,.1); color:rgba(255,255,255,.52); font-size:13px; }
    .mobile-budget { display:none; }
    @media (max-width:860px) {
      .product-layout,.detail-grid { grid-template-columns:1fr; }
      .gallery { position:static; }
      .related-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
      h1 { font-size:40px; }
    }
    @media (max-width:620px) {
      .nav { min-height:70px; }
      .logo { width:142px; height:48px; }
      .nav-actions .btn { display:none; }
      .back-link { padding-inline:6px; }
      .product-layout { gap:30px; padding-bottom:54px; }
      .image-stage { padding:28px; }
      h1 { font-size:34px; }
      .lead { font-size:16px; }
      .actions .btn { width:100%; }
      .metrics,.related-grid,.footer-grid { grid-template-columns:1fr; }
      .detail-band,.related { padding:58px 0; }
      .mobile-budget { position:fixed; right:14px; bottom:max(14px,env(safe-area-inset-bottom)); z-index:40; display:inline-flex; min-height:48px; align-items:center; justify-content:center; padding:12px 16px; border-radius:6px; background:var(--blue); color:#fff; font-size:14px; font-weight:900; box-shadow:0 14px 34px rgba(16,20,28,.24); }
      body { padding-bottom:72px; }
    }
    @media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { scroll-behavior:auto!important; transition-duration:.01ms!important; animation-duration:.01ms!important; animation-iteration-count:1!important; } }
