.asr{--navy:#102b45;--teal:#098598;--text:#243e53;--muted:#52697b;color:var(--navy);font-family:inherit;background:#f7f9fa}.asr *{box-sizing:border-box}.asr-container{width:min(1120px,calc(100% - 44px));margin:0 auto}.asr h1,.asr h2,.asr h3{font-family:inherit;color:var(--navy);font-weight:750;line-height:1.15;letter-spacing:0;margin:0}.asr h1{font-size:clamp(30px,3.2vw,44px)}.asr h2{font-size:clamp(24px,2.5vw,32px)}.asr h3{font-size:17px}.asr p{font-size:15px;line-height:1.5;color:var(--text);margin:0}.asr .asr-eyebrow{color:#244c68;font-size:12px;letter-spacing:.045em;font-weight:750;margin-bottom:10px}.asr .asr-btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:5px;padding:12px 18px;font-size:13px;font-weight:750;text-decoration:none!important;line-height:1.3;cursor:pointer;text-align:center;min-height:40px}.asr .asr-btn-teal{background:var(--teal);color:white!important}.asr .asr-btn-navy{background:var(--navy);color:white!important}.asr .asr-btn-outline{border-color:#23869b;background:#fff;color:#17465d!important}.asr .asr-btn:hover{filter:brightness(.94)}.asr-hero{padding:43px 0 22px;background:radial-gradient(ellipse 390px 310px at 94% 12%,#d5eef3 0%,#d5eef3 65%,transparent 65%),#f5f8fa}.asr-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:75px}.asr-hero-copy h1{margin-bottom:10px}.asr-hero-copy p{max-width:510px;margin-bottom:12px}.asr-hero-copy .asr-lead{font-size:17px;line-height:1.38}.asr-actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:15px}.asr-hero-panel{background:#fff;border:1px solid #e3e8ec;border-radius:16px;box-shadow:0 9px 28px #14324a12;padding:23px 24px}.asr-hero-panel>strong{font-size:15px}.asr-benefit{display:flex;align-items:center;gap:15px;margin-top:18px}.asr-benefit span{display:flex;align-items:center;justify-content:center;flex:0 0 26px;width:26px;height:26px;border-radius:50%;background:#dff2f5;color:#0b8799;font-weight:800}.asr-benefit p{font-size:14px;line-height:1.4}.asr-reports{padding:24px 0 26px}.asr-report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.asr-report-card{background:#fff;border:1px solid #dfe5e9;border-radius:13px;box-shadow:0 5px 20px #17364b12;padding:22px;min-width:0}.asr-report-card .asr-eyebrow{margin-bottom:4px}.asr-report-card h2{font-size:29px;margin-bottom:13px}.asr-card-middle{display:grid;grid-template-columns:43% 1fr;gap:21px;align-items:start}.asr-cover{background:#f8f9fa;box-shadow:0 2px 9px #16344d25;aspect-ratio:3/4;max-width:205px}.asr-cover img{display:block;width:100%;height:100%;object-fit:cover}.asr-card-details p{font-size:13px;line-height:1.4;margin-bottom:13px}.asr-card-details ul{padding:0;margin:0 0 14px;list-style:none}.asr-card-details li{font-size:12px;color:#183e55;margin:0 0 8px;line-height:1.3;padding-left:20px;position:relative}.asr-card-details li:before{content:'✓';position:absolute;left:0;top:0;background:#098598;color:#fff;width:14px;height:14px;border-radius:50%;font-size:10px;text-align:center;line-height:14px}.asr-card-details small{font-size:11px}.asr-card-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:17px}.asr-card-actions .asr-btn{flex:1 1 175px;padding:10px 8px;font-size:12px}.asr-pending{font-size:12px;color:#587182}.asr-previews{background:#fff;padding:26px 0 30px}.asr-previews h2{margin-bottom:4px}.asr-previews p{font-size:13px;margin-bottom:16px}.asr-preview-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}.asr-preview-grid figure{margin:0;text-align:center}.asr-preview-image{background:#fff;border:1px solid #e4e7e9;border-radius:7px;box-shadow:0 4px 13px #16364a16;overflow:hidden;aspect-ratio:3/4}.asr-preview-image img{display:block;width:100%;height:100%;object-fit:cover}.asr-preview-grid figcaption{font-size:12px;margin-top:9px}.asr-compare-section{padding:28px 0 20px;background:#f7f9fa}.asr-compare-section h2{margin-bottom:12px}.asr-compare-layout{display:grid;grid-template-columns:1.9fr .8fr;gap:22px;align-items:center}.asr-table-scroll{overflow-x:auto}.asr-comparison{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid #d7e0e5;border-radius:9px;overflow:hidden;font-size:12px;line-height:1.35;box-shadow:0 3px 12px #17364a12}.asr-comparison th,.asr-comparison td{padding:9px 11px;text-align:left;border-bottom:1px solid #e1e7ea;border-right:1px solid #e1e7ea;vertical-align:top}.asr-comparison tbody tr:last-child th,.asr-comparison tbody tr:last-child td{border-bottom:0}.asr-comparison thead th{background:#527995;color:#fff}.asr-comparison thead th:nth-child(2){background:#098598}.asr-comparison thead th:nth-child(3){background:#102b45}.asr-comparison tbody th{font-weight:750;width:25%}.asr-selector-card{padding:20px;background:#fff;border:1px solid #e1e7ea;border-radius:13px;box-shadow:0 6px 18px #17364a12}.asr-selector-card h3{font-size:14px;margin-bottom:12px}.asr-selector-card p{font-size:13px;margin-bottom:15px}.asr-selector-card .asr-btn{font-size:11px;padding:11px 12px}.asr-faq-section{background:#fff;padding:23px 0 25px}.asr-faq-section h2{margin-bottom:12px}.asr-faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.asr-faq-grid details{background:#fff;border:1px solid #e1e6e9;border-radius:7px;margin-bottom:7px}.asr-faq-grid summary{cursor:pointer;padding:11px 36px 11px 13px;position:relative;list-style:none;font-size:13px;font-weight:700}.asr-faq-grid summary:after{content:'+';position:absolute;right:14px;font-size:18px;top:7px}.asr-faq-grid details[open] summary:after{content:'−'}.asr-faq-grid details p{padding:0 13px 12px;font-size:13px}.asr-final-cta{padding:12px 0 25px;background:#fff}.asr-final-inner{background:#e5f2f6;border-radius:13px;display:flex;align-items:center;gap:25px;padding:15px 26px}.asr-final-inner .asr-home-icon{font-size:55px;line-height:1;border-right:1px solid #83b0bf;padding-right:24px}.asr-final-inner h2{font-size:21px;margin-bottom:4px}.asr-final-inner p{font-size:12px}.asr-final-inner .asr-btn{margin-left:auto;white-space:nowrap}.asr-modal[hidden]{display:none!important}.asr-modal{position:fixed;inset:3vh 3vw;z-index:999999;background:white;box-shadow:0 0 0 100vmax #000a;display:flex;flex-direction:column;border-radius:10px;overflow:hidden}.asr-modal-head{background:#102c45;color:#fff;display:flex;justify-content:space-between;align-items:center;padding:10px 18px;gap:12px}.asr-modal-head>div{display:flex;align-items:center;gap:16px}.asr-modal-download{color:#fff!important;font-size:13px}.asr-modal-close{background:transparent;border:0;color:#fff;font-size:30px;cursor:pointer}.asr-modal iframe{width:100%;flex:1;border:0}.asr-modal-fallback{font-size:12px!important;padding:4px 15px;margin:0!important}.asr-viewer-open{overflow:hidden}@media(max-width:900px){.asr-hero-grid{gap:25px}.asr-card-middle{grid-template-columns:1fr}.asr-cover{max-width:180px}.asr-preview-grid{grid-template-columns:repeat(3,1fr)}.asr-compare-layout{grid-template-columns:1fr}}@media(max-width:650px){.asr-container{width:calc(100% - 28px)}.asr-hero{padding:38px 0 20px}.asr-hero-grid,.asr-report-grid,.asr-faq-grid{grid-template-columns:1fr}.asr-hero-panel{padding:20px}.asr-report-card{padding:19px}.asr-card-middle{grid-template-columns:39% 1fr;gap:15px}.asr-report-card h2{font-size:25px}.asr-preview-grid{grid-template-columns:repeat(2,1fr)}.asr-final-inner{flex-wrap:wrap;gap:12px}.asr-final-inner .asr-btn{margin-left:0}.asr-final-inner .asr-home-icon{display:none}.asr-modal{inset:1vh 1vw}}@media(max-width:380px){.asr-card-middle{grid-template-columns:1fr}}

/* v1.2 real report imagery and accessible image viewer */
.asr-preview-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.asr-preview-trigger{display:block;width:100%;padding:0;background:transparent;border:0;cursor:zoom-in;color:inherit;text-align:center}.asr-preview-trigger .asr-preview-image{display:block;aspect-ratio:3/4;overflow:hidden;border:1px solid #dce4e8;border-radius:9px;background:white;box-shadow:0 6px 20px #17364b18}.asr-preview-image img{width:100%;height:100%;object-fit:contain}.asr-enlarge{display:block;font-size:12px;color:#0b7f92;padding-top:7px}.asr-preview-grid figcaption{font-size:13px;font-weight:600}.asr-image-modal[hidden]{display:none!important}.asr-image-modal{position:fixed;inset:3vh 5vw;z-index:1000001;background:#f5f8fa;box-shadow:0 0 0 100vmax #000b;display:flex;flex-direction:column;border-radius:10px;overflow:hidden}.asr-image-head{display:flex;align-items:center;justify-content:space-between;padding:9px 17px;background:#102b45;color:white}.asr-image-close{background:none;border:0;color:white;font-size:32px;cursor:pointer}.asr-image-scroll{overflow:auto;flex:1;text-align:center;padding:16px}.asr-image-scroll img{max-width:100%;width:auto;height:auto;box-shadow:0 8px 24px #102b4530}.asr-cover{max-width:225px}.asr-cover img{object-fit:contain;background:white}@media(max-width:650px){.asr-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}@media(max-width:390px){.asr-preview-grid{grid-template-columns:1fr 1fr}}

/* v1.3 visual alignment with approved full-page mockup */
.asr{background:#f6f9fb}.asr-hero{padding:38px 0 14px}.asr-hero-grid{gap:56px}.asr-reports{padding:14px 0 23px}.asr-report-card{padding:19px 20px}.asr-report-card h2{font-weight:800}.asr-cover{aspect-ratio:0.72;max-width:220px}.asr-cover img{object-fit:contain}.asr-card-middle{grid-template-columns:43% 1fr;gap:18px}.asr-card-actions .asr-btn{font-size:12px}.asr-preview-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:13px}.asr-preview-trigger .asr-preview-image{aspect-ratio:0.73}.asr-preview-grid figcaption{font-size:12px;font-weight:500}.asr-previews{padding:24px 0 24px}.asr-compare-section{padding:26px 0 23px}.asr-faq-section{padding:20px 0 18px}.asr-final-cta{padding:12px 0 27px}
@media(max-width:1050px){.asr-preview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.asr-card-middle{grid-template-columns:1fr}.asr-cover{max-width:200px}}
@media(max-width:650px){.asr-hero-grid,.asr-report-grid,.asr-faq-grid{grid-template-columns:1fr}.asr-card-middle{grid-template-columns:40% 1fr}.asr-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.asr-report-card{padding:17px}}

/* v1.4: align all sections, inherit theme font, responsive polish and accessible hover states */
.asr{font-family:inherit!important;font-synthesis:none}
.asr :is(h1,h2,h3,p,a,button,li,td,th,summary,figcaption){font-family:inherit!important}
.asr :is(.asr-hero,.asr-reports,.asr-previews,.asr-compare-section,.asr-faq-section,.asr-final-cta){width:100%;margin:0;padding-left:0;padding-right:0}
.asr .asr-container{width:min(1120px,calc(100% - 44px));max-width:1120px;margin-left:auto;margin-right:auto;padding-left:0;padding-right:0}
.asr .asr-report-grid,.asr .asr-preview-grid,.asr .asr-compare-layout,.asr .asr-faq-grid{width:100%;min-width:0}
.asr .asr-report-card{display:flex;flex-direction:column;min-width:0}
.asr .asr-card-actions{margin-top:auto;padding-top:18px}
.asr .asr-btn{transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease,filter .2s ease;filter:none!important}
.asr .asr-btn-teal:hover,.asr .asr-btn-teal:focus-visible{background:#07697b!important;color:#fff!important;box-shadow:0 5px 16px #09859842;transform:translateY(-2px)}
.asr .asr-btn-navy:hover,.asr .asr-btn-navy:focus-visible{background:#285879!important;color:#fff!important;box-shadow:0 5px 16px #102b4538;transform:translateY(-2px)}
.asr .asr-btn-outline:hover,.asr .asr-btn-outline:focus-visible{background:#e2f3f6!important;color:#07596a!important;border-color:#087f93!important;box-shadow:0 5px 14px #09859822;transform:translateY(-2px)}
.asr .asr-btn:focus-visible,.asr .asr-preview-trigger:focus-visible,.asr summary:focus-visible{outline:3px solid #f4a340;outline-offset:3px}
.asr .asr-preview-trigger .asr-preview-image{transition:box-shadow .2s ease,transform .2s ease,border-color .2s ease}
.asr .asr-preview-trigger:hover .asr-preview-image,.asr .asr-preview-trigger:focus-visible .asr-preview-image{transform:translateY(-3px);border-color:#098598;box-shadow:0 10px 25px #17364b30}
.asr .asr-preview-trigger:hover .asr-enlarge{color:#064f60;text-decoration:underline}
.asr .asr-faq-grid details:hover{border-color:#9dc6d0;background:#fbfdfe}
.asr .asr-compare-layout{grid-template-columns:minmax(0,2fr) minmax(250px,.85fr)}
.asr .asr-final-inner{width:min(1120px,calc(100% - 44px));max-width:1120px}
.asr .asr-report-card .asr-cover{height:auto;overflow:hidden}
@media(max-width:900px){.asr .asr-compare-layout{grid-template-columns:1fr}.asr .asr-card-middle{grid-template-columns:42% minmax(0,1fr)}}
@media(max-width:650px){.asr .asr-container,.asr .asr-final-inner{width:calc(100% - 28px)}.asr .asr-card-middle{grid-template-columns:40% minmax(0,1fr)}.asr .asr-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.asr .asr-btn,.asr .asr-preview-trigger .asr-preview-image{transition:none!important;transform:none!important}}

/* v1.5: one primary report action; unified section geometry */
.asr{--asr-content-width:1120px;--asr-side-gap:22px}
.asr :is(.asr-hero,.asr-reports,.asr-previews,.asr-compare-section,.asr-faq-section,.asr-final-cta){box-sizing:border-box;width:100%;max-width:none;margin-inline:0;clear:both}
.asr :is(.asr-hero,.asr-reports,.asr-previews,.asr-compare-section,.asr-faq-section,.asr-final-cta) > .asr-container{box-sizing:border-box;width:calc(100% - 2 * var(--asr-side-gap));max-width:var(--asr-content-width);margin-inline:auto;padding-inline:0}
.asr .asr-final-cta > .asr-final-inner{box-sizing:border-box;width:calc(100% - 2 * var(--asr-side-gap));max-width:var(--asr-content-width);margin-inline:auto}
.asr .asr-compare-layout{display:grid;grid-template-columns:minmax(0,2.05fr) minmax(260px,.85fr);gap:22px;align-items:center}
.asr .asr-table-scroll,.asr .asr-selector-card{min-width:0}
.asr .asr-card-actions{display:block}
.asr .asr-card-actions .asr-btn{display:flex;width:100%;max-width:none;min-height:43px;font-size:13px}
.asr .asr-card-actions .asr-pending{display:block}
.asr .asr-faq-section,.asr .asr-previews{background:#fff}
.asr .asr-compare-section{background:#f6f9fb}
@media(max-width:900px){.asr .asr-compare-layout{grid-template-columns:minmax(0,1fr)}}
@media(max-width:650px){.asr{--asr-side-gap:14px}}

/* v1.5.1: make the comparison block align with adjacent full-width panels */
.asr .asr-compare-section{background:#fff}
.asr .asr-compare-section > .asr-container{width:calc(100% - 2 * var(--asr-side-gap));max-width:var(--asr-content-width);margin-inline:auto}
.asr .asr-compare-layout{display:grid;width:100%;grid-template-columns:minmax(0,2fr) minmax(0,.85fr);gap:22px;align-items:stretch}
.asr .asr-table-scroll{width:100%;min-width:0}
.asr .asr-comparison{width:100%;table-layout:auto}
.asr .asr-selector-card{width:100%;height:100%;display:flex;flex-direction:column;justify-content:center}
@media(max-width:900px){.asr .asr-compare-layout{grid-template-columns:minmax(0,1fr)}.asr .asr-selector-card{height:auto}}

/* v1.5.2: give hero and report cards the same wider alignment as every section */
.asr{--asr-content-width:1180px;--asr-side-gap:24px}
.asr :is(.asr-hero,.asr-reports,.asr-previews,.asr-compare-section,.asr-faq-section,.asr-final-cta) > .asr-container,
.asr .asr-final-cta > .asr-final-inner{width:calc(100% - 2 * var(--asr-side-gap));max-width:var(--asr-content-width);margin-left:auto;margin-right:auto}
.asr .asr-report-grid{gap:20px}
.asr .asr-hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:46px}
.asr .asr-selector-card{height:auto;align-self:center;justify-content:flex-start}
@media(max-width:900px){.asr .asr-hero-grid{gap:24px}}
@media(max-width:650px){.asr{--asr-side-gap:14px}.asr .asr-hero-grid{grid-template-columns:1fr}.asr .asr-report-grid{gap:16px}}

/* v1.5.3 — expand the upper hero and report-card row to reduce the
   visible outer gutters, without altering the lower section alignment. */
@media (min-width: 901px) {
  .asr .asr-hero > .asr-container,
  .asr .asr-reports > .asr-container {
    width: calc(100% - 24px);
    max-width: 1228px;
    margin-left: auto;
    margin-right: auto;
  }
  .asr .asr-report-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
  }
}

/* v1.5.4 — separate the three middle sections visually, without changing their contents.
   Each section has its own bounded panel; neutral gutters remain visible between them. */
.asr{background:#f4f7f9}
.asr .asr-previews, .asr .asr-compare-section, .asr .asr-faq-section{
  box-sizing:border-box;
  width:calc(100% - 2 * var(--asr-side-gap));
  max-width:var(--asr-content-width);
  margin:0 auto 18px;
  border:1px solid #e3e9ed;
  border-radius:12px;
  box-shadow:0 5px 18px rgba(16,43,69,.045);
  overflow:visible;
}
.asr .asr-previews{background:#fff;padding:29px 0 31px}
.asr .asr-compare-section{background:#edf3f6;padding:29px 0 31px}
.asr .asr-faq-section{background:#fff;padding:29px 0 31px}
.asr .asr-previews > .asr-container,
.asr .asr-compare-section > .asr-container,
.asr .asr-faq-section > .asr-container{
  box-sizing:border-box;
  width:calc(100% - 52px);
  max-width:none;
  margin-inline:auto;
  padding:0;
}
.asr .asr-compare-layout{align-items:center}
.asr .asr-selector-card{align-self:center;height:auto;min-height:0}
.asr .asr-final-cta{background:#f4f7f9;padding-top:3px}
@media(max-width:650px){
  .asr .asr-previews,.asr .asr-compare-section,.asr .asr-faq-section{margin-bottom:13px;border-radius:9px}
  .asr .asr-previews > .asr-container,.asr .asr-compare-section > .asr-container,.asr .asr-faq-section > .asr-container{width:calc(100% - 28px)}
  .asr .asr-previews,.asr .asr-compare-section,.asr .asr-faq-section{padding-block:22px}
}

/* v1.5.5: align the outside edges of the upper cards and hero with the
   bordered preview/comparison/FAQ panels, overriding the v1.5.3 expansion. */
@media (min-width: 901px) {
  .asr .asr-hero > .asr-container,
  .asr .asr-reports > .asr-container {
    box-sizing: border-box;
    width: calc(100% - 2 * var(--asr-side-gap));
    max-width: var(--asr-content-width);
    margin-inline: auto;
  }
}

/* v1.5.6: comfortable inner gutters in the final quotation banner. */
.asr .asr-final-inner {
  padding: 22px 34px;
  column-gap: 24px;
}
.asr .asr-final-inner .asr-home-icon {
  flex: 0 0 auto;
  padding-right: 24px;
}
.asr .asr-final-inner .asr-btn {
  margin-left: auto;
  margin-right: 0;
  flex-shrink: 0;
}
@media (max-width: 650px) {
  .asr .asr-final-inner { padding: 22px 20px; row-gap: 15px; }
  .asr .asr-final-inner .asr-btn { margin-left: 0; }
}

/* v1.5.8: Override the section container's zero inline padding specifically
   for the final CTA, so the icon and button have genuine inner gutters. */
.asr .asr-final-cta > .asr-container.asr-final-inner {
  padding: 22px 46px;
  gap: 26px;
}
.asr .asr-final-cta .asr-home-icon {
  margin-left: 0;
  padding-right: 25px;
}
.asr .asr-final-cta .asr-btn {
  margin-right: 0;
}
@media (max-width: 650px) {
  .asr .asr-final-cta > .asr-container.asr-final-inner {
    padding: 20px 24px;
    gap: 14px;
  }
}

/* v1.6.0: correct the actual hero grid gap rather than adding margins. */
@media (min-width: 901px) {
  .asr .asr-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    column-gap: 10px;
    align-items: start;
  }
  .asr .asr-hero-panel { margin: 0; align-self: start; }
}
@media (min-width: 651px) and (max-width: 900px) {
  .asr .asr-hero-grid { column-gap: 14px; align-items: start; }
  .asr .asr-hero-panel { margin: 0; }
}
@media (max-width: 650px) {
  .asr .asr-hero-grid { row-gap: 18px; }
  .asr .asr-hero-panel { margin: 0; }
}

/* v1.6.1: background decoration ONLY. Extend the full straight top edge
   of the pale-blue accent to the bottom of the site's navigation.
   Do not reposition the hero text, white panel or report cards. */
.asr .asr-hero {
  position: relative;
  isolation: isolate;
  overflow: visible;
  background: #f5f8fa;
}
.asr .asr-hero::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: -50px;
  right: 0;
  width: 260px;
  height: 240px;
  background: #d5eef3;
  border-radius: 0 0 0 65%;
  pointer-events: none;
}
.asr .asr-hero > .asr-container { position: relative; z-index: 1; }
@media (max-width: 650px) {
  .asr .asr-hero::before { width: 38%; height: 175px; }
}

/* v1.6.2: Fill the 50px grey strip between navigation and the hero.
   Extend only the background, keeping the content and cards in place. */
.asr { position: relative; isolation: isolate; overflow: visible; }
.asr::before {
  content: "";
  position: absolute;
  left: 0; right: 0; top: -50px; height: 50px;
  background: #f5f8fa;
  pointer-events: none;
  z-index: -1;
}

/* v1.6.3: scale down the decorative accent only; top stays flush with header. */
