/* extra-a: features, enterprise, security, fair-use pages */
.aw-stickbar{position:sticky;top:68px;z-index:60;padding:10px var(--gut);background:rgba(247,245,243,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.aw-stickbar .aw-anchor-nav{max-width:var(--max);margin:0 auto}
[id].aw-sec,[id].aw-sub{scroll-margin-top:130px}

/* chain diagram */
.aw-chain{display:grid;gap:10px;margin:0;padding:0;list-style:none}
@media(min-width:900px){.aw-chain{grid-template-columns:repeat(6,1fr);gap:22px}}
.aw-chain li{position:relative;background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 16px 14px;font-size:14px;color:var(--muted);line-height:1.4}
.aw-chain li b{display:block;font:600 15.5px/1.3 var(--sans);color:var(--ink);margin-bottom:3px}
.aw-chain li a{color:inherit;text-decoration:none;display:block}
@media(min-width:900px){.aw-chain li:not(:last-child)::after{content:"";position:absolute;right:-17px;top:50%;width:12px;height:12px;border-top:2px solid var(--purple);border-right:2px solid var(--purple);transform:translateY(-50%) rotate(45deg)}}

/* trace diagram: a sentence, its figure, its source */
.aw-trace{display:grid;gap:10px}
.aw-trace .row{display:grid;gap:4px;padding:14px 16px;border-radius:12px;background:#fff;border:1px solid var(--line);font-size:14.5px}
.aw-trace .row small{font:700 11px/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--purple)}
.aw-trace .row.src{border-style:dashed;background:var(--bg)}
.aw-trace .join{width:2px;height:14px;background:var(--purple);margin:-4px 0 -4px 24px;opacity:.5}

/* calculator groups */
.aw-calcgroups{display:grid;gap:14px}
@media(min-width:720px){.aw-calcgroups{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1100px){.aw-calcgroups{grid-template-columns:repeat(3,1fr)}}
.aw-calcgroups .aw-card{padding:22px}
.aw-calcgroups h4{margin-bottom:6px}
.aw-calcgroups p{font-size:14.5px;color:var(--muted);margin:0}

/* roadmap strip */
.aw-roadmap{display:grid;gap:14px;padding:22px;border-radius:var(--r);border:1px dashed var(--line-2);background:#fff}
@media(min-width:800px){.aw-roadmap{grid-template-columns:auto 1fr 1fr;align-items:center;gap:28px}}
.aw-roadmap h4{margin:0 0 4px}
.aw-roadmap p{margin:0;font-size:14.5px;color:var(--muted)}

/* layers: Scale inside Enterprise */
.aw-layer{border:2px solid var(--violet);border-radius:var(--r-lg);padding:22px;background:#fff}
.aw-layer>.lab{display:inline-block;font:700 12px/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--violet);margin-bottom:12px}
.aw-layer .inner{border:2px dashed var(--line-2);border-radius:var(--r);padding:18px;background:var(--bg);margin-bottom:16px}
.aw-layer .inner .lab{display:block;font:700 12px/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.aw-layer ul{margin:0;padding:0;list-style:none;display:grid;gap:8px;font-size:15px}
.aw-layer li{display:flex;gap:10px}

/* status cards (security) */
.aw-status{display:grid;gap:14px}
@media(min-width:720px){.aw-status{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1100px){.aw-status{grid-template-columns:repeat(4,1fr)}}
.aw-status .aw-card{padding:22px}
.aw-status .aw-card h4{margin:10px 0 4px}
.aw-status .aw-card p{margin:0;font-size:14.5px;color:var(--muted)}
.aw-fact{display:grid;gap:0;margin:0;padding:0;list-style:none}
.aw-fact li{display:grid;gap:2px;padding:12px 0;border-bottom:1px dashed var(--line);font-size:15.5px}
.aw-fact li b{font-weight:600;color:var(--ink)}
.aw-fact li span{color:var(--muted);font-size:14.5px}
.aw-fact li:last-child{border:0}

/* policy summary */
.aw-policy-sum{display:grid;gap:14px}
@media(min-width:720px){.aw-policy-sum{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1100px){.aw-policy-sum{grid-template-columns:repeat(4,1fr)}}
.aw-policy-sum .aw-card{padding:22px}
.aw-policy-sum b{display:block;font:500 clamp(28px,3vw,38px)/1.05 var(--serif);color:var(--violet);margin-bottom:8px}
.aw-policy-sum p{margin:0;font-size:14.5px;color:var(--muted)}

.aw-ondark{color:#cfcbe0}
.aw-ondark-fine{color:#9b98ad}
.aw-dim{color:var(--ink-2)!important}

/* ===== v3 premium pass: pricing, enterprise, security, about (worker A) ===== */

/* shared: light hairline list */
.aw-hair{list-style:none;margin:0;padding:0}
.aw-hair>li{display:grid;gap:8px;padding:22px 0;border-top:1px solid var(--line)}
.aw-hair>li:last-child{border-bottom:1px solid var(--line)}
@media(min-width:700px){.aw-hair>li{grid-template-columns:minmax(0,.85fr) minmax(0,1.25fr);gap:32px;align-items:baseline}}
.aw-hair>li>b{font:500 22px/1.25 var(--serif);color:var(--violet);display:flex;align-items:center;gap:12px}
.aw-hair>li>span,.aw-hair>li>p{color:var(--muted);font-size:15.5px;line-height:1.55;margin:0}
.aw-hair>li>b .m{flex:0 0 40px;width:40px;height:40px;border-radius:12px;background:var(--lilac);color:var(--violet);display:grid;place-items:center}
.aw-hair>li>b .m svg{width:19px;height:19px}
.aw-hair ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:15px;color:var(--muted);line-height:1.5}
.aw-hair ul li{position:relative;padding-left:18px}
.aw-hair ul li::before{content:"";position:absolute;left:0;top:.62em;width:6px;height:6px;border-radius:50%;background:var(--purple);opacity:.7}
.aw-sec.white .aw-hair>li,.aw-sec.white .aw-hair>li:last-child{border-color:var(--line)}

/* shared: closing photo band sub line */
.aw-endcap-sub{color:#e6e1f6;font-size:clamp(17px,1.6vw,20px);margin:-8px 0 28px}

/* pricing: premium plan cards */
.aw-hero-plans{padding:48px 0 56px}
@media(min-width:1000px){.aw-hero-plans{padding:72px 0 80px}}
.aw-hero-plans h1{font-size:clamp(38px,4.6vw,60px);letter-spacing:-.02em;text-wrap:balance;max-width:14em;margin-left:auto;margin-right:auto}
.aw-hero-plans .aw-head{margin-bottom:34px}
.aw-hero-plans .aw-lede{max-width:30em}
.aw-plans.prem{gap:22px;margin-top:36px}
@media(min-width:900px){.aw-plans.prem{grid-template-columns:1fr 1.12fr 1fr;align-items:stretch}}
.aw-plans.prem .aw-plan{border-radius:28px;padding:34px 30px 30px;border-color:var(--line);box-shadow:var(--sh-1)}
@media(min-width:1000px){.aw-plans.prem .aw-plan{padding:40px 36px 34px}}
.aw-plans.prem .aw-plan.hl{border:1.5px solid var(--violet);background:linear-gradient(180deg,#f1ecff 0,#fff 230px);box-shadow:var(--sh-3)}
.aw-plan-ico{width:44px;height:44px;border-radius:13px;background:var(--lilac);color:var(--violet);display:grid;place-items:center;margin-bottom:6px}
.aw-plan-ico svg{width:20px;height:20px}
.aw-plans.prem .aw-plan.hl .aw-plan-ico{background:var(--violet);color:#fff}
.aw-plans.prem .aw-plan .flag{top:22px;left:auto;right:26px;max-width:calc(100% - 104px);text-align:right}
.aw-plans.prem .aw-plan h3{font-size:34px;margin:8px 0 8px}
.aw-plans.prem .aw-plan .for{min-height:0;margin-bottom:6px}
.aw-plans.prem .aw-price{align-items:baseline;margin:22px 0 6px;padding-top:22px;border-top:1px solid var(--line)}
.aw-plans.prem .aw-price .amt{font:500 clamp(54px,5vw,68px)/1 var(--serif);letter-spacing:-.02em;color:var(--violet);font-variant-numeric:lining-nums}
.aw-plans.prem .aw-price .amt.q{font-size:clamp(44px,4.4vw,56px)}
.aw-plans.prem .aw-price-sub{min-height:0;margin-bottom:0}
.aw-plans.prem .aw-plan .aw-btn{margin:22px 0 24px}
.aw-plans.prem .aw-plan ul{border-top:1px solid var(--line);padding-top:10px}
.aw-plans.prem .aw-plan li{font-size:15px;color:var(--ink-2)}
.aw-plans.prem .aw-plan li.h{color:var(--ink);padding-top:12px}
.aw-plans.prem .aw-plan .foot{border-top:1px solid var(--line);margin-top:22px;padding-top:18px}
.aw-wl{margin-top:auto;padding-top:22px}
.aw-wl .logos{display:flex;align-items:center;gap:14px;margin-bottom:10px}
.aw-wl .logos img{height:24px;width:auto}
.aw-wl p{margin:0;padding:14px 16px;border-radius:14px;background:var(--lilac);color:var(--violet-2);font-size:14.5px;line-height:1.5}
.aw-plans.prem .aw-plan ul+.aw-wl{margin-top:22px}
.aw-badges-band .aw-badges-link{margin-top:26px}
.aw-table td .aw-tick{display:inline-grid;width:22px;height:22px;flex:none;vertical-align:middle}

/* enterprise: floating card over the hero photo */
.aw-stage .aw-decide{position:relative;z-index:2;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--sh-3);padding:22px 24px;width:calc(100% - 24px);margin:-64px 0 0 12px}
@media(min-width:600px){.aw-stage .aw-decide{width:min(380px,82%);margin:-120px 0 0 auto}}
@media(min-width:1000px){.aw-stage .aw-decide{margin:-170px -24px 0 auto}}
.aw-decide h4{margin-bottom:8px}
.aw-decide .aw-list li{padding:5px 0;font-size:15px}
/* enterprise: the three options */
.aw-ent-opts{list-style:none;margin:30px 0 32px;padding:0}
.aw-ent-opts li{display:grid;grid-template-columns:52px minmax(0,1fr);gap:4px 18px;align-items:start;padding:22px 0;border-top:1px solid rgba(255,255,255,.14)}
.aw-ent-opts li:last-child{border-bottom:1px solid rgba(255,255,255,.14)}
.aw-ent-opts .m{width:52px;height:52px;border-radius:14px;background:rgba(255,255,255,.1);color:#fff;display:grid;place-items:center}
.aw-ent-opts .m svg{width:22px;height:22px}
.aw-ent-opts .m.logos{display:flex;flex-direction:column;gap:4px;align-items:center;justify-content:center;background:#fff}
.aw-ent-opts .m.logos img{width:22px;height:auto}
.aw-ent-opts b{display:block;font:500 22px/1.25 var(--serif);color:#fff;margin-bottom:4px}
.aw-ent-opts span:not(.m){color:#bdb6d6;font-size:15.5px;line-height:1.5}
.aw-ent-opts em{grid-column:2;font:600 12.5px/1 var(--sans);font-style:normal;letter-spacing:.04em;color:#c4b2ff;margin-top:6px}
.aw-ent .aw-ent-copy h2{font-size:clamp(34px,3.6vw,48px)}
@media(min-width:1000px){.aw-ent .aw-ent-photo{aspect-ratio:4/5}}
/* The 16:9 office photo in a portrait box: keep the people on the left in frame. */
.aw-ent-photo img[src*="aw-office-floor"]{object-position:12% 50%}
/* enterprise: rollout rows */
.aw-steps-rich{margin:0;padding:0;list-style:none}
.aw-steps-rich li{grid-template-columns:110px minmax(0,1fr);gap:16px;padding:20px 0}
.aw-steps-rich li h4{margin:0 0 4px}
.aw-steps-rich li p{margin:0;font-size:15px;color:var(--muted)}
@media(max-width:599px){.aw-steps-rich li{grid-template-columns:1fr;gap:4px}}
/* plain hairline list */
.aw-plainlist{list-style:none;margin:10px 0 0;padding:0}
.aw-plainlist li{padding:15px 0;border-top:1px solid var(--line);font:500 20px/1.3 var(--serif);color:var(--ink-2)}
.aw-plainlist li:last-child{border-bottom:1px solid var(--line)}
.aw-seal-lg{width:88px;height:88px;margin-bottom:22px}

/* security: trust board (hero) */
.aw-trustboard{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media(min-width:1000px){.aw-trustboard{gap:16px}}
.aw-trustboard li{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:22px 20px 20px;border-radius:22px;background:#fff;border:1px solid var(--line);box-shadow:var(--sh-1);min-width:0}
@media(min-width:1000px){.aw-trustboard li{padding:28px 26px 24px}}
.aw-trustboard li>*{max-width:100%}
.aw-trustboard .seal{width:64px;height:64px;margin-bottom:14px}
.aw-trustboard .flag{width:52px;height:52px;margin:6px 0 20px;border-radius:50%;box-shadow:0 0 0 1px var(--line)}
.aw-trustboard .pair{display:flex;align-items:center;gap:10px;height:64px;margin-bottom:14px}
.aw-trustboard .pair img{width:auto;height:34px}
.aw-trustboard .glyph{width:64px;height:64px;border-radius:18px;background:var(--lilac);color:var(--violet);display:grid;place-items:center;margin-bottom:14px}
.aw-trustboard .glyph svg{width:28px;height:28px}
.aw-trustboard b{font:650 16.5px/1.3 var(--sans);color:var(--ink)}
.aw-trustboard li>span:last-child{font-size:14px;line-height:1.45;color:var(--muted)}
@media(max-width:599px){
  .aw-trustboard li{padding:18px 16px}
  .aw-trustboard .seal,.aw-trustboard .glyph,.aw-trustboard .pair{width:auto;height:52px}
  .aw-trustboard .seal{width:52px}.aw-trustboard .glyph{width:52px;border-radius:15px}
  .aw-trustboard .pair img{height:28px}
  .aw-trustboard .flag{width:42px;height:42px;margin:5px 0 17px}
  .aw-trustboard b{font-size:15px}
}
/* security: hosting logos */
.aw-hosts{display:flex;align-items:center;gap:22px;margin:26px 0 22px;padding:18px 22px;border-radius:18px;background:#fff;border:1px solid var(--line);width:fit-content;max-width:100%}
.aw-hosts img{height:34px;width:auto}
.aw-hosts .flag{width:38px;height:38px;border-radius:50%;box-shadow:0 0 0 1px var(--line)}
/* security: hairline rows with seals */
.aw-hair-marks>li>b .seal{flex:0 0 44px;width:44px;height:44px}
.aw-hair strong{color:var(--ink-2);font-weight:600}

/* about */
.aw-about-hero{padding:48px 0 72px}
@media(min-width:1000px){.aw-about-hero{padding:80px 0 104px}}
.aw-center-a{text-align:center;max-width:880px;margin:0 auto 44px}
.aw-center-a h1{font-size:clamp(38px,4.6vw,60px);letter-spacing:-.02em;text-wrap:balance}
.aw-center-a .aw-lede{margin:0 auto 28px;max-width:26em}
.aw-center-a .aw-btns{justify-content:center;margin:0}
.aw-family{position:relative;margin:0;border-radius:28px;overflow:hidden;box-shadow:var(--sh-3);background:var(--bg-2)}
.aw-family img{display:block;width:100%;height:auto;aspect-ratio:1650/1052;object-fit:cover}
.aw-family figcaption{position:absolute;left:18px;bottom:18px;padding:9px 16px;border-radius:999px;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font:600 14px/1.2 var(--sans);color:var(--violet)}
@media(min-width:900px){.aw-family figcaption{left:28px;bottom:28px;font-size:15px;padding:11px 20px}}
.aw-people-copy p{color:var(--ink-2)}
.aw-people-copy h2{text-wrap:balance}
.aw-team2{display:grid;gap:44px}
@media(min-width:800px){.aw-team2{grid-template-columns:repeat(2,minmax(0,1fr));gap:56px}}
.aw-person2 figure{margin:0 0 22px;border-radius:24px;overflow:hidden;aspect-ratio:4/3;background:var(--lilac)}
.aw-person2 figure img{width:100%;height:100%;object-fit:cover;object-position:50% 25%;display:block}
.aw-person2 .role{font:600 13px/1.3 var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--purple);margin:0 0 6px}
.aw-person2 h3{font-size:clamp(28px,3vw,36px);margin:0 0 10px}
.aw-person2 p:not(.role){color:var(--ink-2);font-size:16.5px;max-width:34em}
.aw-backers.aw-backers-row{justify-content:center;margin-top:72px}
.aw-marks.aw-marks-2{gap:30px 56px;margin-top:0}
@media(min-width:900px){.aw-marks.aw-marks-2{grid-template-columns:repeat(2,minmax(0,1fr))}}
.aw-about-where{display:grid;gap:28px;padding-top:36px;border-top:1px solid var(--line)}
@media(min-width:800px){.aw-about-where{grid-template-columns:repeat(2,minmax(0,1fr));gap:56px}}
.aw-about-where>div{display:flex;gap:18px;align-items:flex-start}
.aw-about-where .flag{width:44px;height:44px;border-radius:50%;box-shadow:0 0 0 1px var(--line);flex:none}
.aw-about-where .m{width:44px;height:44px;border-radius:12px;background:var(--lilac);color:var(--violet);display:grid;place-items:center;flex:none}
.aw-about-where .m svg{width:20px;height:20px}
.aw-about-where h4{margin:0 0 4px}
.aw-about-where p{margin:0}
.aw-endcap .aw-onphoto{color:#fff;text-decoration-color:rgba(255,255,255,.5)}
/* plan table: swipe hint and sticky feature column on small screens */
.aw-swipe{display:none}
@media(max-width:760px){
  .aw-swipe{display:flex;align-items:center;gap:8px;margin:-8px 0 12px;font:600 13px/1.3 var(--sans);color:var(--muted)}
  .aw-swipe::after{content:"";width:28px;height:1.5px;background:currentColor;opacity:.5;box-shadow:6px 0 0 -0px transparent}
  .aw-table-sticky tbody th[scope=row],.aw-table-sticky thead th:first-child{position:sticky;left:0;z-index:1;background:#fff;box-shadow:1px 0 0 var(--line)}
  .aw-table-sticky tr.grp th{position:sticky;left:0}
}
.aw-table-sticky:focus-visible{outline:2px solid var(--purple);outline-offset:3px}
/* trust centre: buyer summary */
.aw-sumtable{min-width:0}
.aw-sumtable th[scope=row]{width:34%;font-size:15px}
.aw-sumtable td{text-align:left;font-size:15px;color:var(--ink-2)}
@media(max-width:600px){.aw-sumtable tr{display:grid}.aw-sumtable th[scope=row]{width:auto;border-bottom:0;padding-bottom:2px}.aw-sumtable td{padding-top:0}}
/* Sticky cells inside a scrolling table can leak into the page width before the reveal runs. */
.aw-table-wrap{contain:paint}

/* Plan cards line up row by row: icon, name, line, price, note, button, then .aw-plan-body.
   Six header rows plus the body make span 7. Add an in-flow child before the body and
   both counts must change, or the rows stop lining up. The .flag badge is absolute. */
.aw-plan-body{display:flex;flex-direction:column}
@media(min-width:900px){
  .aw-plans.prem{grid-template-rows:repeat(6,auto) 1fr;row-gap:0}
  .aw-plans.prem .aw-plan{display:grid;grid-row:span 7;grid-template-rows:subgrid;row-gap:0}
}
