/* The existing diamond, assembled once from its four facets. */
.brand-mark { width:53px; height:53px; flex-shrink:0; color:var(--forest,#1e4739); overflow:visible; }
.brand-mark path { fill:currentColor; transform-box:fill-box; transform-origin:center; }
@media (prefers-reduced-motion:no-preference) {
  .brand-mark.is-assembling .mark-facet { animation:almaz-facet-in 1000ms cubic-bezier(.22,1,.36,1) both; }
  .brand-mark .facet-nw { --facet-x:-5px; --facet-y:-5px; }
  .brand-mark .facet-ne { --facet-x:5px; --facet-y:-5px; animation-delay:90ms !important; }
  .brand-mark .facet-se { --facet-x:5px; --facet-y:5px; animation-delay:180ms !important; }
  .brand-mark .facet-sw { --facet-x:-5px; --facet-y:5px; animation-delay:270ms !important; }
  .brand-mark.is-assembling .mark-core { animation:almaz-core-in 700ms 300ms cubic-bezier(.22,1,.36,1) both; }
  @keyframes almaz-facet-in { from { opacity:0; transform:translate(var(--facet-x),var(--facet-y)); } to { opacity:1; transform:none; } }
  @keyframes almaz-core-in { from { opacity:0; transform:scale(.82); } to { opacity:1; transform:none; } }
}
.security-section { background:#f5f7f3; }
.security-section .section-heading { align-items:flex-end; }
.security-layout { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); border:1px solid #d4dfd6; }
.security-map { min-width:0; background:#173e31; color:#fff; display:flex; flex-direction:column; }
.security-map-heading,.security-map-footer { display:flex; justify-content:space-between; gap:20px; padding:26px 30px; font-size:.8125rem; line-height:1.5; color:#b8ccc0; }
.security-map-heading { letter-spacing:.13em; border-bottom:1px solid #ffffff1c; }
.security-map-heading span:last-child { font-variant-numeric:tabular-nums; letter-spacing:.04em; }
.security-map-footer { margin-top:auto; border-top:1px solid #ffffff1c; padding-block:20px; font-size:.875rem; }
.security-map-footer span:last-child { text-align:right; color:#96b3a1; }
.security-drawing { position:relative; aspect-ratio:800/570; margin-block:auto; }
.security-blueprint { display:block; width:100%; height:100%; }
.security-points { position:absolute; inset:0; }
.security-point { position:absolute; left:var(--point-x); top:var(--point-y); transform:translate(-50%,-50%); width:46px; height:46px; border:1px solid #bed0bf; border-radius:50%; padding:0; color:#fff; background:#173e31; font:500 1rem var(--display,sans-serif); cursor:pointer; z-index:1; }
.security-point>span:first-child { position:relative; z-index:1; }
.security-point::before { content:""; position:absolute; inset:-7px; border:1px solid #dfc893; border-radius:50%; opacity:0; transform:scale(.82); }
.security-point[aria-pressed=true] { background:#e8d5ac; color:#173e31; border-color:#e8d5ac; z-index:2; }
.security-point[aria-pressed=true]::before { opacity:.65; transform:scale(1); }
.security-point-label { position:absolute; top:calc(100% + 13px); left:50%; transform:translateX(-50%); white-space:nowrap; font-size:.8125rem; line-height:1.25; font-weight:400; color:#dfebe1; padding:3px 5px; background:#173e31; }
.security-point:focus-visible { outline:3px solid #fff; outline-offset:4px; }
.security-zone { opacity:.3; }
.security-zone.is-active { opacity:1; }
.security-info { min-width:0; background:#fff; padding:38px 38px 32px; display:flex; flex-direction:column; }
.security-story .security-chapter { display:block; color:#76917e; font-size:.875rem; letter-spacing:.08em; font-variant-numeric:tabular-nums; margin-bottom:35px; }
.security-story .eyebrow { font-size:.75rem; letter-spacing:.09em; margin-bottom:15px; color:#5f7768; }
.security-story h3 { font-size:clamp(1.8rem,2.65vw,2.7rem); line-height:1.08; letter-spacing:-.03em; margin:0 0 24px; }
.security-story>p:not(.eyebrow) { color:var(--muted,#596a5f); font-size:1rem; line-height:1.7; }
.security-story ul { list-style:none; padding:0; margin:25px 0 28px; font-size:.9375rem; line-height:1.5; }
.security-story li { border-top:1px solid #e0e7df; padding:12px 0 12px 21px; position:relative; }
.security-story li::before { content:""; position:absolute; left:1px; top:21px; width:5px; height:5px; background:#6f8d74; transform:rotate(45deg); }
.security-story>p.security-camera-note { font-size:.875rem; margin-top:-12px; }
.security-cta { margin-top:auto; padding-top:23px; border-top:1px solid #d4dfd6; width:100%; justify-content:space-between; min-height:50px; font-size:.9375rem; }
.security-cta:focus-visible { outline:2px solid var(--forest); outline-offset:5px; }
.security-caption { font-size:.875rem; line-height:1.6; color:var(--muted); margin-top:18px; max-width:790px; }
/* Without JavaScript, each explanation remains readable. */
.security-layout:not([data-enhanced]) .security-points { display:none; }
.security-layout:not([data-enhanced]) .security-map-footer span:first-child { visibility:hidden; }
.security-layout:not([data-enhanced]) .security-story+.security-story { padding-top:32px; border-top:1px solid #d4dfd6; }
.security-layout[data-enhanced] .security-stories { display:grid; }
.security-layout[data-enhanced] .security-story { grid-area:1/1; }
.security-layout[data-enhanced] .security-story[hidden] { display:block !important; visibility:hidden; pointer-events:none; }
@media (prefers-reduced-motion:no-preference) {
  .security-zone { transition:opacity 400ms ease; }
  .security-point::before { transition:transform 350ms ease,opacity 350ms ease; }
  .security-story:not([hidden]) { animation:almaz-story-in 380ms cubic-bezier(.22,1,.36,1); }
  @keyframes almaz-story-in { from { opacity:0; transform:translateY(9px); } to { opacity:1; transform:none; } }
}
@media (hover:hover) { .security-point:hover::before { opacity:.65; transform:scale(1); } }
@media (max-width:1250px) { .brand-mark { width:46px; height:46px; } .security-info { padding:30px 26px; } .security-story .security-chapter { margin-bottom:25px; } }
@media (max-width:1000px) { .security-layout { grid-template-columns:1.1fr 1fr; } .security-map-heading,.security-map-footer { padding-inline:20px; } .security-story h3 { font-size:2rem; } .security-point-label { font-size:.75rem; } }
@media (max-width:800px) { .brand-mark { width:43px; height:43px; } .security-layout { grid-template-columns:1fr; } .security-drawing { max-height:480px; } .security-info { padding:30px; } .security-story h3 { font-size:2.3rem; } .security-story .security-chapter { margin-bottom:22px; } .security-point-label { font-size:.875rem; } .security-map-footer { padding-block:16px; } }
@media (max-width:520px) { .brand-mark { width:40px; height:40px; } .security-drawing { aspect-ratio:1.15; } .security-blueprint { position:absolute; inset:0; } .security-map-heading { padding:20px; font-size:.75rem; } .security-map-footer { display:block; padding:16px 20px; } .security-map-footer span:last-child { display:block; text-align:left; margin-top:5px; font-size:.75rem; } .security-info { padding:28px 22px; } .security-story h3 { font-size:2.05rem; } .security-point { width:44px; height:44px; } .security-point-label { font-size:.75rem; top:calc(100% + 9px); } .security-point[data-plan-select=territory] .security-point-label { left:auto; right:-10px; transform:none; } .security-caption { font-size:.875rem; } }
@media (prefers-reduced-motion:reduce) { .brand-mark path,.security-story,.security-zone,.security-point::before { animation:none !important; transition:none !important; } }
@media print { .security-layout { display:block; } .security-layout[data-enhanced] .security-story[hidden] { visibility:visible; } .security-layout[data-enhanced] .security-stories { display:block; } .security-points,.security-cta { display:none; } }
